mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-22 18:15:31 +01:00
Merge pull request #12280 from MitchesD/commands
Scripts/Commands: added option to show flags_extra (.npc info)
This commit is contained in:
3
sql/updates/world/2014_06_14_04_world_trinity_string.sql
Normal file
3
sql/updates/world/2014_06_14_04_world_trinity_string.sql
Normal file
@@ -0,0 +1,3 @@
|
||||
DELETE FROM `trinity_string` WHERE `entry`=11009;
|
||||
INSERT INTO `trinity_string` (`entry`, `content_default`) VALUES
|
||||
(11009, 'Flags Extra: %u');
|
||||
@@ -1224,7 +1224,8 @@ enum TrinityStrings
|
||||
LANG_BAN_ACCOUNT_YOUBANNEDMESSAGE_WORLD = 11006,
|
||||
LANG_BAN_ACCOUNT_YOUPERMBANNEDMESSAGE_WORLD = 11007,
|
||||
|
||||
LANG_NPCINFO_INHABIT_TYPE = 11008
|
||||
LANG_NPCINFO_INHABIT_TYPE = 11008,
|
||||
LANG_NPCINFO_FLAGS_EXTRA = 11009
|
||||
|
||||
// NOT RESERVED IDS 12000-1999999999
|
||||
// `db_script_string` table index 2000000000-2000009999 (MIN_DB_SCRIPT_STRING_ID-MAX_DB_SCRIPT_STRING_ID)
|
||||
|
||||
@@ -43,6 +43,7 @@ struct EnumName
|
||||
#define CREATE_NAMED_ENUM(VALUE) { VALUE, STRINGIZE(VALUE) }
|
||||
|
||||
#define NPCFLAG_COUNT 24
|
||||
#define FLAGS_EXTRA_COUNT 16
|
||||
|
||||
EnumName<NPCFlags, int32> const npcFlagTexts[NPCFLAG_COUNT] =
|
||||
{
|
||||
@@ -144,6 +145,26 @@ EnumName<UnitFlags> const unitFlags[MAX_UNIT_FLAGS] =
|
||||
CREATE_NAMED_ENUM(UNIT_FLAG_UNK_31)
|
||||
};
|
||||
|
||||
EnumName<CreatureFlagsExtra> const flagsExtra[FLAGS_EXTRA_COUNT] =
|
||||
{
|
||||
CREATE_NAMED_ENUM(CREATURE_FLAG_EXTRA_INSTANCE_BIND),
|
||||
CREATE_NAMED_ENUM(CREATURE_FLAG_EXTRA_CIVILIAN),
|
||||
CREATE_NAMED_ENUM(CREATURE_FLAG_EXTRA_NO_PARRY),
|
||||
CREATE_NAMED_ENUM(CREATURE_FLAG_EXTRA_NO_PARRY_HASTEN),
|
||||
CREATE_NAMED_ENUM(CREATURE_FLAG_EXTRA_NO_BLOCK),
|
||||
CREATE_NAMED_ENUM(CREATURE_FLAG_EXTRA_NO_CRUSH),
|
||||
CREATE_NAMED_ENUM(CREATURE_FLAG_EXTRA_NO_XP_AT_KILL),
|
||||
CREATE_NAMED_ENUM(CREATURE_FLAG_EXTRA_TRIGGER),
|
||||
CREATE_NAMED_ENUM(CREATURE_FLAG_EXTRA_NO_TAUNT),
|
||||
CREATE_NAMED_ENUM(CREATURE_FLAG_EXTRA_WORLDEVENT),
|
||||
CREATE_NAMED_ENUM(CREATURE_FLAG_EXTRA_GUARD),
|
||||
CREATE_NAMED_ENUM(CREATURE_FLAG_EXTRA_NO_CRIT),
|
||||
CREATE_NAMED_ENUM(CREATURE_FLAG_EXTRA_NO_SKILLGAIN),
|
||||
CREATE_NAMED_ENUM(CREATURE_FLAG_EXTRA_TAUNT_DIMINISH),
|
||||
CREATE_NAMED_ENUM(CREATURE_FLAG_EXTRA_ALL_DIMINISH),
|
||||
CREATE_NAMED_ENUM(CREATURE_FLAG_EXTRA_DUNGEON_BOSS)
|
||||
};
|
||||
|
||||
class npc_commandscript : public CommandScript
|
||||
{
|
||||
public:
|
||||
@@ -730,6 +751,10 @@ public:
|
||||
handler->PSendSysMessage(LANG_NPCINFO_ARMOR, target->GetArmor());
|
||||
handler->PSendSysMessage(LANG_NPCINFO_POSITION, target->GetPositionX(), target->GetPositionY(), target->GetPositionZ());
|
||||
handler->PSendSysMessage(LANG_NPCINFO_AIINFO, target->GetAIName().c_str(), target->GetScriptName().c_str());
|
||||
handler->PSendSysMessage(LANG_NPCINFO_FLAGS_EXTRA, cInfo->flags_extra);
|
||||
for (uint8 i = 0; i < FLAGS_EXTRA_COUNT; ++i)
|
||||
if (cInfo->flags_extra & flagsExtra[i].Value)
|
||||
handler->PSendSysMessage("%s (0x%X)", flagsExtra[i].Name, flagsExtra[i].Value);
|
||||
|
||||
for (uint8 i = 0; i < NPCFLAG_COUNT; i++)
|
||||
if (npcflags & npcFlagTexts[i].Value)
|
||||
|
||||
Reference in New Issue
Block a user