Core/SAI: Moved event_flags for difficulties to new field Difficulties

Port From (https://github.com/TrinityCore/TrinityCore/commit/b8ce70d528e2489832f4ffd8e6b35560937f6339)
This commit is contained in:
hondacrx
2024-02-02 14:32:13 -05:00
parent 52cd092335
commit 4e06ce4823
4 changed files with 86 additions and 70 deletions
+7 -6
View File
@@ -80,21 +80,22 @@ namespace Framework.Constants
Phase11Bit + Phase12Bit
}
[Flags]
public enum SmartEventFlags
{
NotRepeatable = 0x01, //Event can not repeat
Difficulty0 = 0x02, //Event only occurs in instance difficulty 0
Difficulty1 = 0x04, //Event only occurs in instance difficulty 1
Difficulty2 = 0x08, //Event only occurs in instance difficulty 2
Difficulty3 = 0x10, //Event only occurs in instance difficulty 3
Difficulty0_Deprecated = 0x02, //Event only occurs in instance difficulty 0
Difficulty1_Deprecated = 0x04, //Event only occurs in instance difficulty 1
Difficulty2_Deprecated = 0x08, //Event only occurs in instance difficulty 2
Difficulty3_Deprecated = 0x10, //Event only occurs in instance difficulty 3
Reserved5 = 0x20,
Reserved6 = 0x40,
DebugOnly = 0x80, //Event only occurs in debug build
DontReset = 0x100, //Event will not reset in SmartScript.OnReset()
WhileCharmed = 0x200, //Event occurs even if AI owner is charmed
DifficultyAll = (Difficulty0 | Difficulty1 | Difficulty2 | Difficulty3),
All = (NotRepeatable | DifficultyAll | Reserved5 | Reserved6 | DebugOnly | DontReset | WhileCharmed),
Deprecated = (Difficulty0_Deprecated | Difficulty1_Deprecated | Difficulty2_Deprecated | Difficulty3_Deprecated),
All = (NotRepeatable | Deprecated | Reserved5 | Reserved6 | DebugOnly | DontReset | WhileCharmed),
// Temp flags, used only at runtime, never stored in DB
TempIgnoreChanceRoll = 0x40000000, //Event occurs no matter what roll_chance_i(e.event.event_chance) returns.
@@ -11,7 +11,7 @@ namespace Framework.Database
PrepareStatement(WorldStatements.DEL_LINKED_RESPAWN_MASTER, "DELETE FROM linked_respawn WHERE linkedGuid = ? AND linkType = ?");
PrepareStatement(WorldStatements.REP_LINKED_RESPAWN, "REPLACE INTO linked_respawn (guid, linkedGuid, linkType) VALUES (?, ?, ?)");
PrepareStatement(WorldStatements.SEL_CREATURE_TEXT, "SELECT CreatureID, GroupID, ID, Text, Type, Language, Probability, Emote, Duration, Sound, SoundPlayType, BroadcastTextId, TextRange FROM creature_text");
PrepareStatement(WorldStatements.SEL_SMART_SCRIPTS, "SELECT entryorguid, source_type, id, link, event_type, event_phase_mask, event_chance, event_flags, event_param1, event_param2, event_param3, event_param4, event_param5, event_param_string, action_type, action_param1, action_param2, action_param3, action_param4, action_param5, action_param6, action_param7, target_type, target_param1, target_param2, target_param3, target_param4, target_x, target_y, target_z, target_o FROM smart_scripts ORDER BY entryorguid, source_type, id, link");
PrepareStatement(WorldStatements.SEL_SMART_SCRIPTS, "SELECT entryorguid, source_type, id, link, Difficulties, event_type, event_phase_mask, event_chance, event_flags, event_param1, event_param2, event_param3, event_param4, event_param5, event_param_string, action_type, action_param1, action_param2, action_param3, action_param4, action_param5, action_param6, action_param7, target_type, target_param1, target_param2, target_param3, target_param4, target_x, target_y, target_z, target_o FROM smart_scripts ORDER BY entryorguid, source_type, id, link");
PrepareStatement(WorldStatements.DEL_GAMEOBJECT, "DELETE FROM gameobject WHERE guid = ?");
PrepareStatement(WorldStatements.DEL_EVENT_GAMEOBJECT, "DELETE FROM game_event_gameobject WHERE guid = ?");
PrepareStatement(WorldStatements.INS_GRAVEYARD_ZONE, "INSERT INTO graveyard_zone (ID, GhostZone) VALUES (?, ?)");