Smart scripts WoTLK

Материал из Uwow
Перейти к навигации Перейти к поиску

SMART_EVENT_UPDATE_IC = 0, // InitialMin, InitialMax, RepeatMin, RepeatMax

   SMART_EVENT_UPDATE_OOC               = 1,       // InitialMin, InitialMax, RepeatMin, RepeatMax
   SMART_EVENT_HEALTH_PCT               = 2,       // HPMin%, HPMax%,  RepeatMin, RepeatMax
   SMART_EVENT_MANA_PCT                 = 3,       // ManaMin%, ManaMax%, RepeatMin, RepeatMax
   SMART_EVENT_AGGRO                    = 4,       // NONE
   SMART_EVENT_KILL                     = 5,       // CooldownMin0, CooldownMax1, playerOnly2, else creature entry3
   SMART_EVENT_DEATH                    = 6,       // NONE
   SMART_EVENT_EVADE                    = 7,       // NONE
   SMART_EVENT_SPELLHIT                 = 8,       // SpellID, School, CooldownMin, CooldownMax
   SMART_EVENT_RANGE                    = 9,       // MinDist, MaxDist, RepeatMin, RepeatMax
   SMART_EVENT_OOC_LOS                  = 10,      // NoHostile, MaxRnage, CooldownMin, CooldownMax
   SMART_EVENT_RESPAWN                  = 11,      // type, MapId, ZoneId
   SMART_EVENT_TARGET_HEALTH_PCT        = 12,      // HPMin%, HPMax%, RepeatMin, RepeatMax
   SMART_EVENT_VICTIM_CASTING           = 13,      // RepeatMin, RepeatMax, spellid
   SMART_EVENT_FRIENDLY_HEALTH          = 14,      // HPDeficit, Radius, RepeatMin, RepeatMax
   SMART_EVENT_FRIENDLY_IS_CC           = 15,      // Radius, RepeatMin, RepeatMax
   SMART_EVENT_FRIENDLY_MISSING_BUFF    = 16,      // SpellId, Radius, RepeatMin, RepeatMax
   SMART_EVENT_SUMMONED_UNIT            = 17,      // CreatureId(0 all), CooldownMin, CooldownMax
   SMART_EVENT_TARGET_MANA_PCT          = 18,      // ManaMin%, ManaMax%, RepeatMin, RepeatMax
   SMART_EVENT_ACCEPTED_QUEST           = 19,      // QuestID(0any)
   SMART_EVENT_REWARD_QUEST             = 20,      // QuestID(0any)
   SMART_EVENT_REACHED_HOME             = 21,      // NONE
   SMART_EVENT_RECEIVE_EMOTE            = 22,      // EmoteId, CooldownMin, CooldownMax, condition, val1, val2, val3
   SMART_EVENT_HAS_AURA                 = 23,      // Param1 = SpellID, Param2 = Stack amount, Param3/4 RepeatMin, RepeatMax
   SMART_EVENT_TARGET_BUFFED            = 24,      // Param1 = SpellID, Param2 = Stack amount, Param3/4 RepeatMin, RepeatMax
   SMART_EVENT_RESET                    = 25,      // Called after combat, when the creature respawn and spawn.
   SMART_EVENT_IC_LOS                   = 26,      // NoHostile, MaxRnage, CooldownMin, CooldownMax
   SMART_EVENT_PASSENGER_BOARDED        = 27,      // CooldownMin, CooldownMax
   SMART_EVENT_PASSENGER_REMOVED        = 28,      // CooldownMin, CooldownMax
   SMART_EVENT_CHARMED                  = 29,      // NONE
   SMART_EVENT_CHARMED_TARGET           = 30,      // NONE
   SMART_EVENT_SPELLHIT_TARGET          = 31,      // SpellID, School, CooldownMin, CooldownMax
   SMART_EVENT_DAMAGED                  = 32,      // MinDmg, MaxDmg, CooldownMin, CooldownMax
   SMART_EVENT_DAMAGED_TARGET           = 33,      // MinDmg, MaxDmg, CooldownMin, CooldownMax
   SMART_EVENT_MOVEMENTINFORM           = 34,      // MovementType(any), PointID
   SMART_EVENT_SUMMON_DESPAWNED         = 35,      // Entry, CooldownMin, CooldownMax
   SMART_EVENT_CORPSE_REMOVED           = 36,      // NONE
   SMART_EVENT_AI_INIT                  = 37,      // NONE
   SMART_EVENT_DATA_SET                 = 38,      // Id, Value, CooldownMin, CooldownMax
   SMART_EVENT_WAYPOINT_START           = 39,      // PointId(0any), pathID(0any)
   SMART_EVENT_WAYPOINT_REACHED         = 40,      // PointId(0any), pathID(0any)
   SMART_EVENT_TRANSPORT_ADDPLAYER      = 41,      // NONE
   SMART_EVENT_TRANSPORT_ADDCREATURE    = 42,      // Entry (0 any)
   SMART_EVENT_TRANSPORT_REMOVE_PLAYER  = 43,      // NONE
   SMART_EVENT_TRANSPORT_RELOCATE       = 44,      // PointId
   SMART_EVENT_INSTANCE_PLAYER_ENTER    = 45,      // Team (0 any), CooldownMin, CooldownMax
   SMART_EVENT_AREATRIGGER_ONTRIGGER    = 46,      // TriggerId(0 any)
   SMART_EVENT_QUEST_ACCEPTED           = 47,      // none
   SMART_EVENT_QUEST_OBJ_COPLETETION    = 48,      // none
   SMART_EVENT_QUEST_COMPLETION         = 49,      // none
   SMART_EVENT_QUEST_REWARDED           = 50,      // none
   SMART_EVENT_QUEST_FAIL               = 51,      // none
   SMART_EVENT_TEXT_OVER                = 52,      // GroupId from creature_text,  creature entry who talks (0 any)
   SMART_EVENT_RECEIVE_HEAL             = 53,      // MinHeal, MaxHeal, CooldownMin, CooldownMax
   SMART_EVENT_JUST_SUMMONED            = 54,      // none
   SMART_EVENT_WAYPOINT_PAUSED          = 55,      // PointId(0any), pathID(0any)
   SMART_EVENT_WAYPOINT_RESUMED         = 56,      // PointId(0any), pathID(0any)
   SMART_EVENT_WAYPOINT_STOPPED         = 57,      // PointId(0any), pathID(0any)
   SMART_EVENT_WAYPOINT_ENDED           = 58,      // PointId(0any), pathID(0any)
   SMART_EVENT_TIMED_EVENT_TRIGGERED    = 59,      // id
   SMART_EVENT_UPDATE                   = 60,      // InitialMin, InitialMax, RepeatMin, RepeatMax
   SMART_EVENT_LINK                     = 61,      // INTERNAL USAGE, no params, used to link together multiple events, does not use any extra resources to iterate event lists needlessly
   SMART_EVENT_GOSSIP_SELECT            = 62,      // menuID, actionID
   SMART_EVENT_JUST_CREATED             = 63,      // none
   SMART_EVENT_GOSSIP_HELLO             = 64,      // none
   SMART_EVENT_FOLLOW_COMPLETED         = 65,      // none
   SMART_EVENT_UNUSED_66                = 66,      // UNUSED
   SMART_EVENT_IS_BEHIND_TARGET         = 67,      // cooldownMin, CooldownMax
   SMART_EVENT_GAME_EVENT_START         = 68,      // game_event.Entry
   SMART_EVENT_GAME_EVENT_END           = 69,      // game_event.Entry
   SMART_EVENT_GO_STATE_CHANGED         = 70,      // go state
   SMART_EVENT_GO_EVENT_INFORM          = 71,      // eventId
   SMART_EVENT_ACTION_DONE              = 72,      // eventId (SharedDefines.EventId)
   SMART_EVENT_ON_SPELLCLICK            = 73,      // clicker (unit)
   SMART_EVENT_FRIENDLY_HEALTH_PCT      = 74,      // minHpPct, maxHpPct, repeatMin, repeatMax
   SMART_EVENT_DISTANCE_CREATURE        = 75,      // guid, entry, distance, repeat
   SMART_EVENT_DISTANCE_GAMEOBJECT      = 76,      // guid, entry, distance, repeat
   SMART_EVENT_COUNTER_SET              = 77,      // id, value, cooldownMin, cooldownMax
   SMART_EVENT_TEMP                     = 78,      // 
   SMART_EVENT_ON_FIND_OBJECT_IN_RANGE  = 79,      // On find nearest object in range. Distance, Type(1 - player, 2 - NPC, 3 - GO), Entry(npcId, goId), RepeatTimer
   SMART_EVENT_END                      = 80





   SMART_ACTION_NONE                               = 0,      // No action
   SMART_ACTION_TALK                               = 1,      // groupID from creature_text, duration to wait before TEXT_OVER event is triggered, use first target from targetlist as invoker, useTalkTarget (0/1) - use target as talk target
   SMART_ACTION_SET_FACTION                        = 2,      // FactionId (or 0 for default)
   SMART_ACTION_MORPH_TO_ENTRY_OR_MODEL            = 3,      // Creature_template entry(param1) OR ModelId (param2) (or 0 for both to demorph)
   SMART_ACTION_SOUND                              = 4,      // SoundId, onlySelf
   SMART_ACTION_PLAY_EMOTE                         = 5,      // EmoteId
   SMART_ACTION_FAIL_QUEST                         = 6,      // QuestID
   SMART_ACTION_ADD_QUEST                          = 7,      // QuestID
   SMART_ACTION_SET_REACT_STATE                    = 8,      // state
   SMART_ACTION_ACTIVATE_GOBJECT                   = 9,      //
   SMART_ACTION_RANDOM_EMOTE                       = 10,     // EmoteId1, EmoteId2, EmoteId3...
   SMART_ACTION_CAST                               = 11,     // SpellId, CastFlags, LimitTargets
   SMART_ACTION_SUMMON_CREATURE                    = 12,     // CreatureID, summonType, duration in ms, attackInvoker, attackScriptOwner
   SMART_ACTION_THREAT_SINGLE_PCT                  = 13,     // Threat%
   SMART_ACTION_THREAT_ALL_PCT                     = 14,     // Threat%
   SMART_ACTION_CALL_AREAEXPLOREDOREVENTHAPPENS    = 15,     // QuestID
   SMART_ACTION_UNUSED_16                          = 16,     // UNUSED
   SMART_ACTION_SET_EMOTE_STATE                    = 17,     // emoteID
   SMART_ACTION_SET_UNIT_FLAG                      = 18,     // Flags (may be more than one field OR'd together), Target
   SMART_ACTION_REMOVE_UNIT_FLAG                   = 19,     // Flags (may be more than one field OR'd together), Target
   SMART_ACTION_AUTO_ATTACK                        = 20,     // AllowAttackState (0 = stop attack, anything else means continue attacking)
   SMART_ACTION_ALLOW_COMBAT_MOVEMENT              = 21,     // AllowCombatMovement (0 = stop combat based movement, anything else continue attacking)
   SMART_ACTION_SET_EVENT_PHASE                    = 22,     // Phase
   SMART_ACTION_INC_EVENT_PHASE                    = 23,     // Value (may be negative to decrement phase, should not be 0)
   SMART_ACTION_EVADE                              = 24,     // No Params
   SMART_ACTION_FLEE_FOR_ASSIST                    = 25,     // With Emote
   SMART_ACTION_CALL_GROUPEVENTHAPPENS             = 26,     // QuestID
   SMART_ACTION_COMBAT_STOP                        = 27,     // 
   SMART_ACTION_REMOVEAURASFROMSPELL               = 28,     // Spellid (0 removes all auras), charges (0 removes aura)
   SMART_ACTION_FOLLOW                             = 29,     // Distance (0 = default), Angle (0 = default), EndCreatureEntry, credit, creditType (0monsterkill, 1event)
   SMART_ACTION_RANDOM_PHASE                       = 30,     // PhaseId1, PhaseId2, PhaseId3...
   SMART_ACTION_RANDOM_PHASE_RANGE                 = 31,     // PhaseMin, PhaseMax
   SMART_ACTION_RESET_GOBJECT                      = 32,     //
   SMART_ACTION_CALL_KILLEDMONSTER                 = 33,     // CreatureId,
   SMART_ACTION_SET_INST_DATA                      = 34,     // Field, Data
   SMART_ACTION_SET_INST_DATA64                    = 35,     // Field,
   SMART_ACTION_UPDATE_TEMPLATE                    = 36,     // Entry, Team, doNotChangeLevel
   SMART_ACTION_DIE                                = 37,     // No Params
   SMART_ACTION_SET_IN_COMBAT_WITH_ZONE            = 38,     // No Params
   SMART_ACTION_CALL_FOR_HELP                      = 39,     // Radius, With Emote
   SMART_ACTION_SET_SHEATH                         = 40,     // Sheath (0-unarmed, 1-melee, 2-ranged)
   SMART_ACTION_FORCE_DESPAWN                      = 41,     // timer
   SMART_ACTION_SET_INVINCIBILITY_HP_LEVEL         = 42,     // MinHpValue(+pct, -flat)
   SMART_ACTION_MOUNT_TO_ENTRY_OR_MODEL            = 43,     // Creature_template entry(param1) OR ModelId (param2) (or 0 for both to dismount)
   SMART_ACTION_SET_INGAME_PHASE_MASK              = 44,     // mask
   SMART_ACTION_SET_DATA                           = 45,     // Field, Data (only creature TODO)
   SMART_ACTION_MOVE_FORWARD                       = 46,     // distance
   SMART_ACTION_SET_VISIBILITY                     = 47,     // on/off
   SMART_ACTION_SET_ACTIVE                         = 48,     // on/off
   SMART_ACTION_ATTACK_START                       = 49,     //
   SMART_ACTION_SUMMON_GO                          = 50,     // GameObjectID, DespawnTime in s
   SMART_ACTION_KILL_UNIT                          = 51,     //
   SMART_ACTION_ACTIVATE_TAXI                      = 52,     // TaxiID
   SMART_ACTION_WP_START                           = 53,     // run/walk, pathID, canRepeat, quest, despawntime, reactState
   SMART_ACTION_WP_PAUSE                           = 54,     // time
   SMART_ACTION_WP_STOP                            = 55,     // despawnTime, quest, fail?
   SMART_ACTION_ADD_ITEM                           = 56,     // itemID, count
   SMART_ACTION_REMOVE_ITEM                        = 57,     // itemID, count
   SMART_ACTION_INSTALL_AI_TEMPLATE                = 58,     // AITemplateID
   SMART_ACTION_SET_RUN                            = 59,     // 0/1
   SMART_ACTION_SET_FLY                            = 60,     // 0/1
   SMART_ACTION_SET_SWIM                           = 61,     // 0/1
   SMART_ACTION_TELEPORT                           = 62,     // mapID,
   SMART_ACTION_SET_COUNTER                        = 63,     // id, value, reset (0/1)
   SMART_ACTION_STORE_TARGET_LIST                  = 64,     // varID,
   SMART_ACTION_WP_RESUME                          = 65,     // none
   SMART_ACTION_SET_ORIENTATION                    = 66,     //
   SMART_ACTION_CREATE_TIMED_EVENT                 = 67,     // id, InitialMin, InitialMax, RepeatMin(only if it repeats), RepeatMax(only if it repeats), chance
   SMART_ACTION_PLAYMOVIE                          = 68,     // entry
   SMART_ACTION_MOVE_TO_POS                        = 69,     // PointId, xyz
   SMART_ACTION_RESPAWN_TARGET                     = 70,     // force / goRespawnTime
   SMART_ACTION_EQUIP                              = 71,     // entry, slotmask slot1, slot2, slot3   , only slots with mask set will be sent to client, bits are 1, 2, 4, leaving mask 0 is defaulted to mask 7 (send all), slots1-3 are only used if no entry is set
   SMART_ACTION_CLOSE_GOSSIP                       = 72,     // none
   SMART_ACTION_TRIGGER_TIMED_EVENT                = 73,     // id(>1)
   SMART_ACTION_REMOVE_TIMED_EVENT                 = 74,     // id(>1)
   SMART_ACTION_ADD_AURA                           = 75,     // spellid,  targets
   SMART_ACTION_OVERRIDE_SCRIPT_BASE_OBJECT        = 76,     // WARNING: CAN CRASH CORE, do not use if you dont know what you are doing
   SMART_ACTION_RESET_SCRIPT_BASE_OBJECT           = 77,     // none
   SMART_ACTION_CALL_SCRIPT_RESET                  = 78,     // none
   SMART_ACTION_SET_RANGED_MOVEMENT                = 79,     // Distance, angle
   SMART_ACTION_CALL_TIMED_ACTIONLIST              = 80,     // ID (overwrites already running actionlist), stop after combat?(0/1), timer update type(0-OOC, 1-IC, 2-ALWAYS)
   SMART_ACTION_SET_NPC_FLAG                       = 81,     // Flags
   SMART_ACTION_ADD_NPC_FLAG                       = 82,     // Flags
   SMART_ACTION_REMOVE_NPC_FLAG                    = 83,     // Flags
   SMART_ACTION_SIMPLE_TALK                        = 84,     // groupID, can be used to make players say groupID, Text_over event is not triggered, whisper can not be used (Target units will say the text)
   SMART_ACTION_INVOKER_CAST                       = 85,     // spellID, castFlags,   if avaliable, last used invoker will cast spellId with castFlags on targets
   SMART_ACTION_CROSS_CAST                         = 86,     // spellID, castFlags, CasterTargetType, CasterTarget param1, CasterTarget param2, CasterTarget param3, ( + the origonal target fields as Destination target),   CasterTargets will cast spellID on all Targets (use with caution if targeting multiple * multiple units)
   SMART_ACTION_CALL_RANDOM_TIMED_ACTIONLIST       = 87,     // script9 ids 1-9
   SMART_ACTION_CALL_RANDOM_RANGE_TIMED_ACTIONLIST = 88,     // script9 id min, max
   SMART_ACTION_RANDOM_MOVE                        = 89,     // maxDist
   SMART_ACTION_SET_UNIT_FIELD_BYTES_1             = 90,     // bytes, target
   SMART_ACTION_REMOVE_UNIT_FIELD_BYTES_1          = 91,     // bytes, target
   SMART_ACTION_INTERRUPT_SPELL                    = 92,
   SMART_ACTION_SEND_GO_CUSTOM_ANIM                = 93,     // anim id
   SMART_ACTION_SET_DYNAMIC_FLAG                   = 94,     // Flags
   SMART_ACTION_ADD_DYNAMIC_FLAG                   = 95,     // Flags
   SMART_ACTION_REMOVE_DYNAMIC_FLAG                = 96,     // Flags
   SMART_ACTION_JUMP_TO_POS                        = 97,     // speedXY, speedZ, selfJump
   SMART_ACTION_SEND_GOSSIP_MENU                   = 98,     // menuId, optionId
   SMART_ACTION_GO_SET_LOOT_STATE                  = 99,     // state
   SMART_ACTION_SEND_TARGET_TO_TARGET              = 100,    // id
   SMART_ACTION_SET_HOME_POS                       = 101,    // SpawnPos
   SMART_ACTION_SET_HEALTH_REGEN                   = 102,    // 0/1
   SMART_ACTION_SET_ROOT                           = 103,    // off/on
   SMART_ACTION_SET_GO_FLAG                        = 104,    // Flags
   SMART_ACTION_ADD_GO_FLAG                        = 105,    // Flags
   SMART_ACTION_REMOVE_GO_FLAG                     = 106,    // Flags
   SMART_ACTION_SUMMON_CREATURE_GROUP              = 107,    // Group, attackInvoker, attackScriptOwner
   SMART_ACTION_SET_POWER                          = 108,    // PowerType, newPower
   SMART_ACTION_ADD_POWER                          = 109,    // PowerType, newPower
   SMART_ACTION_REMOVE_POWER                       = 110,    // PowerType, newPower
   SMART_ACTION_GAME_EVENT_STOP                    = 111,    // GameEventId
   SMART_ACTION_GAME_EVENT_START                   = 112,    // GameEventId
   SMART_ACTION_START_CLOSEST_WAYPOINT             = 113,    // wp1, wp2, wp3, wp4, wp5, wp6, wp7
   SMART_ACTION_RISE_UP                            = 114,    // distance
   SMART_ACTION_RANDOM_SOUND                       = 115,    // soundId1, soundId2, soundId3, soundId4, soundId5, onlySelf
   SMART_ACTION_SET_CORPSE_DELAY                   = 116,    // timer
   SMART_ACTION_DISABLE_EVADE                      = 117,    // 0/1 (1 = disabled, 0 = enabled)
   SMART_ACTION_SET_GO_STATE                       = 118,    // state
   //RESERVED                                      = 119,
   SMART_ACTION_REMOVE_AURAS_BY_TYPE               = 120,    // type
   SMART_ACTION_SET_SIGHT_DIST                     = 121,    // sightDistance
   SMART_ACTION_FLEE                               = 122,    // fleeTime
   SMART_ACTION_ADD_THREAT                         = 123,    // +threat, -threat
   SMART_ACTION_LOAD_EQUIPMENT                     = 124,    // id
   SMART_ACTION_TRIGGER_RANDOM_TIMED_EVENT         = 125,    // id min range, id max range
   SMART_ACTION_REMOVE_ALL_GAMEOBJECTS             = 126,
   SMART_ACTION_STOP_MOTION                        = 127,    // stopMoving, movementExpired
   // uwow actions
   SMART_ACTION_OVERRIDE_LIGHT                     = 128,
   SMART_ACTION_DESPAWN_SUMMONS                    = 129,    // timerMs, byEntry
   SMART_ACTION_SET_CONTROLLED                     = 130,    // state, apply|remove
   SMART_ACTION_MOVE_TO_POS_TARGET                 = 131,    // pointId
   SMART_ACTION_EXIT_VEHICLE                       = 132,    // none
   SMART_ACTION_SET_UNIT_MOVEMENT_FLAGS            = 133,    // flags
   SMART_ACTION_SET_COMBAT_DISTANCE                = 134,    // combatDistance
   SMART_ACTION_SET_CASTER_COMBAT_DIST             = 135,    // followDistance, resetToMax
   //RESERVED                                      = 136,
   //RESERVED                                      = 137,
   //RESERVED                                      = 138,
   //RESERVED                                      = 139,
   //RESERVED                                      = 140,
   SMART_ACTION_SET_HOVER                          = 141,    // 0/1
   SMART_ACTION_ADD_IMMUNITY                       = 142,    // type, id, value
   SMART_ACTION_REMOVE_IMMUNITY                    = 143,    // type, id, value
   SMART_ACTION_FALL                               = 144,    // 
   SMART_ACTION_SET_EVENT_FLAG_RESET               = 145,    // 0/1
   //RESERVED                                      = 146,
   //RESERVED                                      = 147,
   SMART_ACTION_NO_ENVIRONMENT_UPDATE              = 148,
   SMART_ACTION_ZONE_UNDER_ATTACK                  = 149,
   SMART_ACTION_LOAD_GRID                          = 150,
   SMART_ACTION_EJECT_PASSENGER                    = 235,    // Eject passenger by seat Id. SeatId
   SMART_ACTION_END,