mirror of
https://github.com/EQEmu/Server.git
synced 2026-05-16 22:58:34 +00:00
Rename BotGroupSay to RaidGroupSay
This commit is contained in:
+17
-17
@@ -624,14 +624,14 @@ void Bot::ChangeBotRangedWeapons(bool isRanged) {
|
||||
BotAddEquipItem(EQ::invslot::slotPrimary, GetBotItemBySlot(EQ::invslot::slotPrimary));
|
||||
BotAddEquipItem(EQ::invslot::slotSecondary, GetBotItemBySlot(EQ::invslot::slotSecondary));
|
||||
SetAttackTimer();
|
||||
BotGroupSay(this, "My blade is ready");
|
||||
RaidGroupSay(this, "My blade is ready");
|
||||
} else {
|
||||
BotRemoveEquipItem(EQ::invslot::slotPrimary);
|
||||
BotRemoveEquipItem(EQ::invslot::slotSecondary);
|
||||
BotAddEquipItem(EQ::invslot::slotAmmo, GetBotItemBySlot(EQ::invslot::slotAmmo));
|
||||
BotAddEquipItem(EQ::invslot::slotSecondary, GetBotItemBySlot(EQ::invslot::slotRange));
|
||||
SetAttackTimer();
|
||||
BotGroupSay(this, "My blades are sheathed");
|
||||
RaidGroupSay(this, "My blades are sheathed");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1935,7 +1935,7 @@ bool Bot::BotRangedAttack(Mob* other, bool can_double_attack) {
|
||||
if (!ammo || ammo_item->GetCharges() < 1) {
|
||||
if (!GetCombatRoundForAlerts()) {
|
||||
SetCombatRoundForAlerts();
|
||||
BotGroupSay(this, "I do not have any ammo!");
|
||||
RaidGroupSay(this, "I do not have any ammo!");
|
||||
}
|
||||
}
|
||||
return false;
|
||||
@@ -2967,11 +2967,11 @@ bool Bot::TryEvade(Mob* tar) {
|
||||
}
|
||||
|
||||
if (zone->random.Int(0, 260) < (int)GetSkill(EQ::skills::SkillHide)) {
|
||||
BotGroupSay(this, "I have momentarily ducked away from the main combat.");
|
||||
RaidGroupSay(this, "I have momentarily ducked away from the main combat.");
|
||||
RogueEvade(tar);
|
||||
}
|
||||
else {
|
||||
BotGroupSay(this, "My attempts at ducking clear of combat fail.");
|
||||
RaidGroupSay(this, "My attempts at ducking clear of combat fail.");
|
||||
}
|
||||
|
||||
//SendAppearancePacket(AT_Invis, Invisibility::Visible);
|
||||
@@ -3010,11 +3010,11 @@ bool Bot::TryEvade(Mob* tar) {
|
||||
|
||||
if (zone->random.Real(0, 160) > totalfeign) {
|
||||
//SendAppearancePacket(AT_Anim, ANIM_DEATH);
|
||||
BotGroupSay(this, "I have fallen to the ground.");
|
||||
RaidGroupSay(this, "I have fallen to the ground.");
|
||||
SetFeigned(false);
|
||||
}
|
||||
else {
|
||||
BotGroupSay(this, "I have successfully feigned my death.");
|
||||
RaidGroupSay(this, "I have successfully feigned my death.");
|
||||
SetFeigned(true);
|
||||
//SendAppearancePacket(AT_Anim, ANIM_DEATH);
|
||||
}
|
||||
@@ -3544,7 +3544,7 @@ void Bot::BotPullerProcess(Client* bot_owner, Raid* raid) {
|
||||
const auto msg = fmt::format("Pulling {}.", pull_target->GetCleanName());
|
||||
raid->RaidSay(msg.c_str(), GetCleanName(), 0, 100);
|
||||
} else {
|
||||
BotGroupSay(
|
||||
RaidGroupSay(
|
||||
this,
|
||||
fmt::format(
|
||||
"Pulling {}.",
|
||||
@@ -5319,7 +5319,7 @@ void Bot::DoClassAttacks(Mob *target, bool IsRiposte) {
|
||||
|
||||
if (IsTaunting() && target->IsNPC() && taunt_time) {
|
||||
if (GetTarget() && GetTarget()->GetHateTop() && GetTarget()->GetHateTop() != this) {
|
||||
BotGroupSay(
|
||||
RaidGroupSay(
|
||||
this,
|
||||
fmt::format(
|
||||
"Taunting {}.",
|
||||
@@ -6255,7 +6255,7 @@ bool Bot::DoFinishedSpellGroupTarget(uint16 spell_id, Mob* spellTarget, EQ::spel
|
||||
bool isMainGroupMGB = false;
|
||||
|
||||
if (isMainGroupMGB && (GetClass() != Class::Bard)) {
|
||||
BotGroupSay(
|
||||
RaidGroupSay(
|
||||
this,
|
||||
fmt::format(
|
||||
"Casting {} as a Mass Group Buff.",
|
||||
@@ -7906,7 +7906,7 @@ void Bot::SetDefaultBotStance() {
|
||||
_botStance = GetClass() == Class::Warrior ? Stance::Aggressive : Stance::Balanced;
|
||||
}
|
||||
|
||||
void Bot::BotGroupSay(Mob* speaker, const char* msg, ...) {
|
||||
void Bot::RaidGroupSay(Mob* speaker, const char* msg, ...) {
|
||||
char buf[1000];
|
||||
va_list ap;
|
||||
va_start(ap, msg);
|
||||
@@ -7962,7 +7962,7 @@ void Bot::BotGroupSay(Mob* speaker, const char* msg, ...) {
|
||||
|
||||
bool Bot::UseDiscipline(uint32 spell_id, uint32 target) {
|
||||
if (!IsValidSpell(spell_id)) {
|
||||
BotGroupSay(this, "Not a valid spell.");
|
||||
RaidGroupSay(this, "Not a valid spell.");
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -9390,7 +9390,7 @@ void Bot::DoItemClick(const EQ::ItemData *item, uint16 slot_id)
|
||||
|
||||
SetIsUsingItemClick(true);
|
||||
|
||||
BotGroupSay(
|
||||
RaidGroupSay(
|
||||
this,
|
||||
fmt::format(
|
||||
"Attempting to cast [{}] on {}.",
|
||||
@@ -11264,7 +11264,7 @@ bool Bot::AttemptAACastSpell(Mob* tar, uint16 spell_id, AA::Rank* rank) {
|
||||
|
||||
|
||||
if (IsCasting()) {
|
||||
BotGroupSay(
|
||||
RaidGroupSay(
|
||||
this,
|
||||
fmt::format(
|
||||
"Interrupting {}. I have been commanded to try to cast an AA - {} on {}.",
|
||||
@@ -11278,7 +11278,7 @@ bool Bot::AttemptAACastSpell(Mob* tar, uint16 spell_id, AA::Rank* rank) {
|
||||
}
|
||||
|
||||
if (CastSpell(spell_id, tar->GetID())) {
|
||||
BotGroupSay(
|
||||
RaidGroupSay(
|
||||
this,
|
||||
fmt::format(
|
||||
"Casting an AA - {} on {}.",
|
||||
@@ -11381,7 +11381,7 @@ bool Bot::AttemptForcedCastSpell(Mob* tar, uint16 spell_id, bool is_disc) {
|
||||
}
|
||||
|
||||
if (IsCasting()) {
|
||||
BotGroupSay(
|
||||
RaidGroupSay(
|
||||
this,
|
||||
fmt::format(
|
||||
"Interrupting {}. I have been commanded to try to cast {} on {}.",
|
||||
@@ -11397,7 +11397,7 @@ bool Bot::AttemptForcedCastSpell(Mob* tar, uint16 spell_id, bool is_disc) {
|
||||
return false;
|
||||
}
|
||||
|
||||
BotGroupSay(
|
||||
RaidGroupSay(
|
||||
this,
|
||||
fmt::format(
|
||||
"Casting {} on {}.",
|
||||
|
||||
+1
-1
@@ -774,7 +774,7 @@ public:
|
||||
// Static Bot Group Methods
|
||||
static bool AddBotToGroup(Bot* bot, Group* group);
|
||||
static bool RemoveBotFromGroup(Bot* bot, Group* group);
|
||||
static void BotGroupSay(Mob *speaker, const char *msg, ...);
|
||||
static void RaidGroupSay(Mob *speaker, const char *msg, ...);
|
||||
|
||||
// "GET" Class Methods
|
||||
uint32 GetBotID() const { return _botID; }
|
||||
|
||||
@@ -67,7 +67,7 @@ void bot_command_attack(Client *c, const Seperator *sep)
|
||||
}
|
||||
|
||||
if (attacker_count == 1 && first_attacker) {
|
||||
Bot::BotGroupSay(
|
||||
Bot::RaidGroupSay(
|
||||
first_attacker,
|
||||
fmt::format(
|
||||
"Attacking {}.",
|
||||
|
||||
@@ -1136,7 +1136,7 @@ void bot_command_spawn(Client *c, const Seperator *sep)
|
||||
}
|
||||
|
||||
if (!silent_tell && c->GetBotOption(Client::booSpawnMessageSay)) {
|
||||
Bot::BotGroupSay(my_bot, bot_spawn_message[message_index].c_str());
|
||||
Bot::RaidGroupSay(my_bot, bot_spawn_message[message_index].c_str());
|
||||
}
|
||||
else if (!silent_tell && c->GetBotOption(Client::booSpawnMessageTell)) {
|
||||
my_bot->OwnerMessage(bot_spawn_message[message_index]);
|
||||
|
||||
@@ -505,7 +505,7 @@ void bot_command_cast(Client* c, const Seperator* sep)
|
||||
}
|
||||
|
||||
if (IsBotSpellTypeDetrimental(spell_type) && !bot_iter->IsAttackAllowed(new_tar)) {
|
||||
bot_iter->BotGroupSay(
|
||||
bot_iter->RaidGroupSay(
|
||||
bot_iter,
|
||||
fmt::format(
|
||||
"I cannot attack [{}].",
|
||||
|
||||
@@ -175,7 +175,7 @@ void bot_command_depart(Client* c, const Seperator* sep)
|
||||
}
|
||||
}
|
||||
|
||||
Bot::BotGroupSay(
|
||||
Bot::RaidGroupSay(
|
||||
bot_iter,
|
||||
fmt::format(
|
||||
"I can port you to {}.",
|
||||
@@ -211,7 +211,7 @@ void bot_command_depart(Client* c, const Seperator* sep)
|
||||
}
|
||||
|
||||
if (bot_iter->IsCommandedSpell() && bot_iter->IsCasting()) {
|
||||
Bot::BotGroupSay(
|
||||
Bot::RaidGroupSay(
|
||||
bot_iter,
|
||||
fmt::format(
|
||||
"Interrupting {}. I have been commanded to try to cast a [{}] spell, {} on {}.",
|
||||
@@ -234,7 +234,7 @@ void bot_command_depart(Client* c, const Seperator* sep)
|
||||
}
|
||||
|
||||
if (bot_iter->GetClass() != Class::Bard || RuleB(Bots, BardsAnnounceCasts)) {
|
||||
Bot::BotGroupSay(
|
||||
Bot::RaidGroupSay(
|
||||
bot_iter,
|
||||
fmt::format(
|
||||
"Casting {} [{}] on {}.",
|
||||
|
||||
@@ -47,7 +47,7 @@ void bot_command_guard(Client *c, const Seperator *sep)
|
||||
}
|
||||
|
||||
if (sbl.size() == 1) {
|
||||
Bot::BotGroupSay(
|
||||
Bot::RaidGroupSay(
|
||||
sbl.front(),
|
||||
fmt::format(
|
||||
"{}uarding this position.",
|
||||
|
||||
@@ -47,7 +47,7 @@ void bot_command_hold(Client *c, const Seperator *sep)
|
||||
}
|
||||
|
||||
if (sbl.size() == 1) {
|
||||
Bot::BotGroupSay(
|
||||
Bot::RaidGroupSay(
|
||||
sbl.front(),
|
||||
fmt::format(
|
||||
"{}olding my attacks.",
|
||||
|
||||
@@ -74,7 +74,7 @@ void bot_command_pet_remove(Client *c, const Seperator *sep)
|
||||
if (bot_iter->IsBotCharmer()) {
|
||||
bot_iter->SetBotCharmer(false);
|
||||
if (sbl.size() == 1)
|
||||
Bot::BotGroupSay(bot_iter, "Using a summoned pet");
|
||||
Bot::RaidGroupSay(bot_iter, "Using a summoned pet");
|
||||
++summoned_pet;
|
||||
continue;
|
||||
}
|
||||
@@ -86,7 +86,7 @@ void bot_command_pet_remove(Client *c, const Seperator *sep)
|
||||
}
|
||||
bot_iter->SetBotCharmer(true);
|
||||
if (sbl.size() == 1)
|
||||
Bot::BotGroupSay(bot_iter, "Available for Charming");
|
||||
Bot::RaidGroupSay(bot_iter, "Available for Charming");
|
||||
++charmed_pet;
|
||||
}
|
||||
|
||||
|
||||
@@ -24,7 +24,7 @@ void bot_command_pick_lock(Client *c, const Seperator *sep)
|
||||
Bot* my_bot = sbl.front();
|
||||
|
||||
my_bot->InterruptSpell();
|
||||
Bot::BotGroupSay(my_bot, "Attempting to pick the lock.");
|
||||
Bot::RaidGroupSay(my_bot, "Attempting to pick the lock.");
|
||||
|
||||
std::list<Doors*> door_list;
|
||||
entity_list.GetDoorsList(door_list);
|
||||
@@ -51,7 +51,7 @@ void bot_command_pick_lock(Client *c, const Seperator *sep)
|
||||
++open_count;
|
||||
}
|
||||
else {
|
||||
Bot::BotGroupSay(my_bot, "I am not skilled enough for this lock.");
|
||||
Bot::RaidGroupSay(my_bot, "I am not skilled enough for this lock.");
|
||||
}
|
||||
}
|
||||
c->Message(Chat::White, "%i door%s attempted - %i door%s successful", door_count, ((door_count != 1) ? ("s") : ("")), open_count, ((open_count != 1) ? ("s") : ("")));
|
||||
|
||||
@@ -130,7 +130,7 @@ void bot_command_taunt(Client* c, const Seperator* sep)
|
||||
|
||||
bot_iter->SetTaunting(taunt_state);
|
||||
|
||||
Bot::BotGroupSay(
|
||||
Bot::RaidGroupSay(
|
||||
bot_iter,
|
||||
fmt::format(
|
||||
"I am {} taunting.",
|
||||
@@ -154,7 +154,7 @@ void bot_command_taunt(Client* c, const Seperator* sep)
|
||||
|
||||
bot_iter->GetPet()->CastToNPC()->SetTaunting(taunt_state);
|
||||
|
||||
Bot::BotGroupSay(
|
||||
Bot::RaidGroupSay(
|
||||
bot_iter,
|
||||
fmt::format(
|
||||
"My Pet is {} taunting.",
|
||||
|
||||
@@ -67,6 +67,6 @@ void bot_command_track(Client *c, const Seperator *sep)
|
||||
}
|
||||
|
||||
my_bot->InterruptSpell();
|
||||
Bot::BotGroupSay(my_bot, tracking_msg.c_str());
|
||||
Bot::RaidGroupSay(my_bot, tracking_msg.c_str());
|
||||
entity_list.ShowSpawnWindow(c, (c->GetLevel() * base_distance), track_named);
|
||||
}
|
||||
|
||||
+11
-11
@@ -231,7 +231,7 @@ bool Bot::AICastSpell(Mob* tar, uint8 chance, uint16 spell_type, uint16 sub_targ
|
||||
}
|
||||
|
||||
if (IsCommandedSpell() && IsCasting()) {
|
||||
BotGroupSay(
|
||||
RaidGroupSay(
|
||||
this,
|
||||
fmt::format(
|
||||
"Interrupting {}. I have been commanded to try to cast a [{}] spell, {} on {}.",
|
||||
@@ -258,7 +258,7 @@ bool Bot::AICastSpell(Mob* tar, uint8 chance, uint16 spell_type, uint16 sub_targ
|
||||
}
|
||||
|
||||
if (bot_class != Class::Bard || RuleB(Bots, BardsAnnounceCasts)) {
|
||||
BotGroupSay(
|
||||
RaidGroupSay(
|
||||
this,
|
||||
fmt::format(
|
||||
"Casting {} [{}] on {}.",
|
||||
@@ -306,7 +306,7 @@ bool Bot::BotCastMez(Mob* tar, uint8 bot_class, BotSpell& bot_spell, uint16 spel
|
||||
SetCastedSpellType(spell_type);
|
||||
}
|
||||
|
||||
BotGroupSay(
|
||||
RaidGroupSay(
|
||||
this,
|
||||
fmt::format(
|
||||
"Casting {} [{}] on {}.",
|
||||
@@ -342,7 +342,7 @@ bool Bot::BotCastCure(Mob* tar, uint8 bot_class, BotSpell& bot_spell, uint16 spe
|
||||
if (AIDoSpellCast(bot_spell.SpellIndex, tar, bot_spell.ManaCost)) {
|
||||
if (bot_class != Class::Bard || RuleB(Bots, BardsAnnounceCasts)) {
|
||||
if (IsGroupSpell(bot_spell.SpellId)) {
|
||||
BotGroupSay(
|
||||
RaidGroupSay(
|
||||
this,
|
||||
fmt::format(
|
||||
"Curing the group with {}.",
|
||||
@@ -359,7 +359,7 @@ bool Bot::BotCastCure(Mob* tar, uint8 bot_class, BotSpell& bot_spell, uint16 spe
|
||||
}
|
||||
}
|
||||
else {
|
||||
BotGroupSay(
|
||||
RaidGroupSay(
|
||||
this,
|
||||
fmt::format(
|
||||
"Curing {} with {}.",
|
||||
@@ -417,7 +417,7 @@ bool Bot::BotCastPet(Mob* tar, uint8 bot_class, BotSpell& bot_spell, uint16 spel
|
||||
|
||||
if (AIDoSpellCast(bot_spell.SpellIndex, tar, bot_spell.ManaCost)) {
|
||||
SetCastedSpellType(spell_type);
|
||||
BotGroupSay(
|
||||
RaidGroupSay(
|
||||
this,
|
||||
fmt::format(
|
||||
"Summoning a pet [{}].",
|
||||
@@ -474,7 +474,7 @@ bool Bot::BotCastNuke(Mob* tar, uint8 bot_class, BotSpell& bot_spell, uint16 spe
|
||||
SetCastedSpellType(spell_type);
|
||||
|
||||
if (bot_class != Class::Bard || RuleB(Bots, BardsAnnounceCasts)) {
|
||||
BotGroupSay(
|
||||
RaidGroupSay(
|
||||
this,
|
||||
fmt::format(
|
||||
"Casting {} [{}] on {}.",
|
||||
@@ -494,7 +494,7 @@ bool Bot::BotCastNuke(Mob* tar, uint8 bot_class, BotSpell& bot_spell, uint16 spe
|
||||
SetCastedSpellType(spell_type);
|
||||
|
||||
if (bot_class != Class::Bard || RuleB(Bots, BardsAnnounceCasts)) {
|
||||
BotGroupSay(
|
||||
RaidGroupSay(
|
||||
this,
|
||||
fmt::format(
|
||||
"Casting {} [{}] on {}.",
|
||||
@@ -522,7 +522,7 @@ bool Bot::BotCastHeal(Mob* tar, uint8 bot_class, BotSpell& bot_spell, uint16 spe
|
||||
if (AIDoSpellCast(bot_spell.SpellIndex, tar, bot_spell.ManaCost)) {
|
||||
if (bot_class != Class::Bard || RuleB(Bots, BardsAnnounceCasts)) {
|
||||
if (IsGroupSpell(bot_spell.SpellId)) {
|
||||
BotGroupSay(
|
||||
RaidGroupSay(
|
||||
this,
|
||||
fmt::format(
|
||||
"Healing the group with {} [{}].",
|
||||
@@ -543,7 +543,7 @@ bool Bot::BotCastHeal(Mob* tar, uint8 bot_class, BotSpell& bot_spell, uint16 spe
|
||||
|
||||
}
|
||||
else {
|
||||
BotGroupSay(
|
||||
RaidGroupSay(
|
||||
this,
|
||||
fmt::format(
|
||||
"Healing {} with {} [{}].",
|
||||
@@ -882,7 +882,7 @@ bool Bot::AIHealRotation(Mob* tar, bool useFastHeals) {
|
||||
}
|
||||
|
||||
if (castedSpell) {
|
||||
BotGroupSay(
|
||||
RaidGroupSay(
|
||||
this,
|
||||
fmt::format(
|
||||
"Casting {} on {}, please stay in range!",
|
||||
|
||||
+3
-3
@@ -659,9 +659,9 @@ void Lua_Bot::DeleteBot() {
|
||||
self->DeleteBot();
|
||||
}
|
||||
|
||||
void Lua_Bot::BotGroupSay(const char* message) {
|
||||
void Lua_Bot::RaidGroupSay(const char* message) {
|
||||
Lua_Safe_Call_Void();
|
||||
self->BotGroupSay(self, message);
|
||||
self->RaidGroupSay(self, message);
|
||||
}
|
||||
|
||||
luabind::scope lua_register_bot() {
|
||||
@@ -693,7 +693,7 @@ luabind::scope lua_register_bot() {
|
||||
.def("ApplySpellRaid", (void(Lua_Bot::*)(int,int,int,bool))&Lua_Bot::ApplySpellRaid)
|
||||
.def("ApplySpellRaid", (void(Lua_Bot::*)(int,int,int,bool,bool))&Lua_Bot::ApplySpellRaid)
|
||||
.def("ApplySpellRaid", (void(Lua_Bot::*)(int,int,int,bool,bool))&Lua_Bot::ApplySpellRaid)
|
||||
.def("BotGroupSay", (void(Lua_Bot::*)(const char*)) & Lua_Bot::BotGroupSay)
|
||||
.def("RaidGroupSay", (void(Lua_Bot::*)(const char*))&Lua_Bot::RaidGroupSay)
|
||||
.def("Camp", (void(Lua_Bot::*)(void))&Lua_Bot::Camp)
|
||||
.def("Camp", (void(Lua_Bot::*)(bool))&Lua_Bot::Camp)
|
||||
.def("ClearDisciplineReuseTimer", (void(Lua_Bot::*)())&Lua_Bot::ClearDisciplineReuseTimer)
|
||||
|
||||
+1
-1
@@ -46,7 +46,7 @@ public:
|
||||
Lua_Mob GetOwner();
|
||||
int16 HasBotItem(uint32 item_id);
|
||||
void OwnerMessage(std::string message);
|
||||
void BotGroupSay(const char* message);
|
||||
void RaidGroupSay(const char* message);
|
||||
bool ReloadBotDataBuckets();
|
||||
bool ReloadBotOwnerDataBuckets();
|
||||
bool ReloadBotSpells();
|
||||
|
||||
+3
-3
@@ -615,9 +615,9 @@ void Perl_Bot_DeleteBot(Bot* self) // @categories Script Utility
|
||||
self->DeleteBot();
|
||||
}
|
||||
|
||||
void Perl_Bot_BotGroupSay(Bot* self, const char* message) // @categories Script Utility
|
||||
void Perl_Bot_RaidGroupSay(Bot* self, const char* message) // @categories Script Utility
|
||||
{
|
||||
self->BotGroupSay(self, message);
|
||||
self->RaidGroupSay(self, message);
|
||||
}
|
||||
|
||||
void perl_register_bot()
|
||||
@@ -649,7 +649,7 @@ void perl_register_bot()
|
||||
package.add("ApplySpellRaid", (void(*)(Bot*, int, int, int))&Perl_Bot_ApplySpellRaid);
|
||||
package.add("ApplySpellRaid", (void(*)(Bot*, int, int, int, bool))&Perl_Bot_ApplySpellRaid);
|
||||
package.add("ApplySpellRaid", (void(*)(Bot*, int, int, int, bool, bool))&Perl_Bot_ApplySpellRaid);
|
||||
package.add("BotGroupSay", &Perl_Bot_BotGroupSay);
|
||||
package.add("RaidGroupSay", &Perl_Bot_RaidGroupSay);
|
||||
package.add("Camp", (void(*)(Bot*))&Perl_Bot_Camp);
|
||||
package.add("Camp", (void(*)(Bot*, bool))&Perl_Bot_Camp);
|
||||
package.add("ClearDisciplineReuseTimer", (void(*)(Bot*))&Perl_Bot_ClearDisciplineReuseTimer);
|
||||
|
||||
@@ -737,7 +737,7 @@ void Mob::TryBackstab(Mob *other, int ReuseTime) {
|
||||
if (!botpiercer || (botpiercer->ItemType != EQ::item::ItemType1HPiercing)) {
|
||||
if (!CastToBot()->GetCombatRoundForAlerts()) {
|
||||
CastToBot()->SetCombatRoundForAlerts();
|
||||
CastToBot()->BotGroupSay(this, "I can't backstab with this weapon!");
|
||||
CastToBot()->RaidGroupSay(this, "I can't backstab with this weapon!");
|
||||
}
|
||||
|
||||
return;
|
||||
|
||||
Reference in New Issue
Block a user