mirror of
https://github.com/mangosfour/server.git
synced 2025-12-12 19:37:03 +00:00
[10506] Implement 5 new SCRIPT_COMMAND_*
All commands can only have creature as the affected by command *_SET_ACTIVEOBJECT - switch activeObject state on/off *_SET_FACTION - changes faction *_MORPH_TO_ENTRY_OR_MODEL - changes model to model from creature_template entry or model id explicit *_MOUNT_TO_ENTRY_OR_MODEL - mounts on model from creature_template entry or model id explicit *_SET_RUN - switch walkmode on/off Signed-off-by: NoFantasy <nofantasy@nf.no>
This commit is contained in:
parent
19d028d099
commit
a1fd19b6b3
5 changed files with 549 additions and 88 deletions
|
|
@ -89,90 +89,120 @@ spell_scripts
|
|||
## Each command has different parameters, and are as follows:
|
||||
-- --------------------------
|
||||
|
||||
0 SCRIPT_COMMAND_TALK source = WorldObject, target = any/none
|
||||
* datalong (see enum ChatType for supported CHAT_TYPE_'s)
|
||||
* datalong2 = creature entry (searching for a buddy, closest to source)
|
||||
* datalong3 = creature search radius
|
||||
* data_flags = flag_target_player_as_source = 0x01
|
||||
flag_original_source_as_target = 0x02
|
||||
flag_buddy_as_target = 0x04
|
||||
* dataint = text entry from db_script_string -table. dataint2-dataint4 optionally, for random selection of text
|
||||
0 SCRIPT_COMMAND_TALK source = WorldObject, target = any/none
|
||||
* datalong (see enum ChatType for supported CHAT_TYPE_'s)
|
||||
* datalong2 = creature entry (searching for a buddy, closest to source)
|
||||
* datalong3 = creature search radius
|
||||
* data_flags = flag_target_player_as_source = 0x01
|
||||
flag_original_source_as_target = 0x02
|
||||
flag_buddy_as_target = 0x04
|
||||
* dataint = text entry from db_script_string -table. dataint2-dataint4 optionally, for random selection of text
|
||||
|
||||
1 SCRIPT_COMMAND_EMOTE source = unit
|
||||
* datalong = emote_id
|
||||
1 SCRIPT_COMMAND_EMOTE source = unit
|
||||
* datalong = emote_id
|
||||
|
||||
2 SCRIPT_COMMAND_FIELD_SET source = any
|
||||
* datalong = field_id
|
||||
* datalong2 = field value
|
||||
2 SCRIPT_COMMAND_FIELD_SET source = any
|
||||
* datalong = field_id
|
||||
* datalong2 = field value
|
||||
|
||||
3 SCRIPT_COMMAND_MOVE_TO source = Creature
|
||||
* datalong2 = travel time
|
||||
* x/y/z
|
||||
3 SCRIPT_COMMAND_MOVE_TO source = Creature
|
||||
* datalong2 = travel time
|
||||
* x/y/z
|
||||
|
||||
4 SCRIPT_COMMAND_FLAG_SET source = any
|
||||
* datalong = field_id
|
||||
* datalong2 = bitmask
|
||||
4 SCRIPT_COMMAND_FLAG_SET source = any
|
||||
* datalong = field_id
|
||||
* datalong2 = bitmask
|
||||
|
||||
5 SCRIPT_COMMAND_FLAG_REMOVE source = any
|
||||
* datalong = field_id
|
||||
* datalong2 = bitmask
|
||||
5 SCRIPT_COMMAND_FLAG_REMOVE source = any
|
||||
* datalong = field_id
|
||||
* datalong2 = bitmask
|
||||
|
||||
6 SCRIPT_COMMAND_TELEPORT_TO source or target with Player
|
||||
* datalong = map_id
|
||||
* x/y/z
|
||||
6 SCRIPT_COMMAND_TELEPORT_TO source or target with Player
|
||||
* datalong = map_id
|
||||
* x/y/z
|
||||
|
||||
7 SCRIPT_COMMAND_QUEST_EXPLORED one from source or target must be Player, another GO/Creature
|
||||
* datalong = quest_id
|
||||
* datalong2 = distance or 0
|
||||
7 SCRIPT_COMMAND_QUEST_EXPLORED one from source or target must be Player, another GO/Creature
|
||||
* datalong = quest_id
|
||||
* datalong2 = distance or 0
|
||||
|
||||
8 SCRIPT_COMMAND_KILL_CREDIT source or target with Player
|
||||
* datalong = creature entry
|
||||
* datalong2 = bool (0=personal credit, 1=group credit)
|
||||
8 SCRIPT_COMMAND_KILL_CREDIT source or target with Player
|
||||
* datalong = creature entry
|
||||
* datalong2 = bool (0=personal credit, 1=group credit)
|
||||
|
||||
9 SCRIPT_COMMAND_RESPAWN_GAMEOBJECT source = any (summoner)
|
||||
* datalong=db_guid
|
||||
* datalong2 = despawn_delay
|
||||
9 SCRIPT_COMMAND_RESPAWN_GAMEOBJECT source = any (summoner)
|
||||
* datalong=db_guid
|
||||
* datalong2 = despawn_delay
|
||||
|
||||
10 SCRIPT_COMMAND_TEMP_SUMMON_CREATURE source = any (summoner)
|
||||
* datalong = creature entry
|
||||
* datalong2 = despawn_delay
|
||||
10 SCRIPT_COMMAND_TEMP_SUMMON_CREATURE source = any (summoner)
|
||||
* datalong = creature entry
|
||||
* datalong2 = despawn_delay
|
||||
|
||||
11 SCRIPT_COMMAND_OPEN_DOOR source = unit
|
||||
* datalong = db_guid
|
||||
* datalong2 = reset_delay
|
||||
11 SCRIPT_COMMAND_OPEN_DOOR source = unit
|
||||
* datalong = db_guid
|
||||
* datalong2 = reset_delay
|
||||
|
||||
12 SCRIPT_COMMAND_CLOSE_DOOR source = unit
|
||||
* datalong = db_guid
|
||||
* datalong2 = reset_delay
|
||||
12 SCRIPT_COMMAND_CLOSE_DOOR source = unit
|
||||
* datalong = db_guid
|
||||
* datalong2 = reset_delay
|
||||
|
||||
13 SCRIPT_COMMAND_ACTIVATE_OBJECT source = unit, target=GO
|
||||
13 SCRIPT_COMMAND_ACTIVATE_OBJECT source = unit, target=GO
|
||||
|
||||
14 SCRIPT_COMMAND_REMOVE_AURA source (datalong2!=0) or target (datalong==0) unit
|
||||
* datalong = spell_id
|
||||
* datalong2 = bool source is target of action
|
||||
14 SCRIPT_COMMAND_REMOVE_AURA source (datalong2!=0) or target (datalong==0) unit
|
||||
* datalong = spell_id
|
||||
* datalong2 = bool source is target of action
|
||||
|
||||
15 SCRIPT_COMMAND_CAST_SPELL source/target cast spell at target/source
|
||||
* datalong = spell id
|
||||
* datalong2 = 0: s->t 1: s->s 2: t->t 3: t->s
|
||||
15 SCRIPT_COMMAND_CAST_SPELL source/target cast spell at target/source
|
||||
* datalong = spell id
|
||||
* datalong2 = 0: s->t 1: s->s 2: t->t 3: t->s
|
||||
|
||||
16 SCRIPT_COMMAND_PLAY_SOUND source = any object, target=any/player
|
||||
* datalong = sound_id
|
||||
* datalong2 (bitmask: 0/1=anyone/target, 0/2=with distance dependent, so 1|2 = 3 is target with distance dependent)
|
||||
16 SCRIPT_COMMAND_PLAY_SOUND source = any object, target=any/player
|
||||
* datalong = sound_id
|
||||
* datalong2 (bitmask: 0/1=anyone/target, 0/2=with distance dependent, so 1|2 = 3 is target with distance dependent)
|
||||
|
||||
17 SCRIPT_COMMAND_CREATE_ITEM source or target must be player
|
||||
* datalong = item entry
|
||||
* datalong2 = amount
|
||||
17 SCRIPT_COMMAND_CREATE_ITEM source or target must be player
|
||||
* datalong = item entry
|
||||
* datalong2 = amount
|
||||
|
||||
18 SCRIPT_COMMAND_DESPAWN_SELF source or target must be creature
|
||||
* datalong = despawn delay
|
||||
|
||||
19 SCRIPT_COMMAND_PLAY_MOVIE target can only be a player
|
||||
* datalog = movie id
|
||||
|
||||
20 SCRIPT_COMMAND_MOVEMENT source or target must be creature
|
||||
* datalong = MovementType (0:idle, 1:random or 2:waypoint)
|
||||
* datalong2 = creature entry (searching for a buddy, closest to source)
|
||||
* datalong3 = creature search radius
|
||||
|
||||
21 SCRIPT_COMMAND_SET_ACTIVEOBJECT source=worldobject, target=creature
|
||||
* datalong=bool 0=off, 1=on
|
||||
* datalong2=creature entry
|
||||
* datalong3=search radius
|
||||
|
||||
22 SCRIPT_COMMAND_SET_FACTION source=worldobject, target=creature
|
||||
* datalong=factionId OR 0 to restore original faction from creature_template
|
||||
* datalong2=creature entry
|
||||
* datalong3=search radius
|
||||
|
||||
23 SCRIPT_COMMAND_MORPH_TO_ENTRY_OR_MODEL source=worldobject, target=creature
|
||||
* datalong=creature entry/modelid (depend on data_flags) OR 0 to demorph
|
||||
* datalong2=creature entry
|
||||
* datalong3=search radius
|
||||
* dataflags= 0x01 to use datalong value as modelid explicit
|
||||
|
||||
24 SCRIPT_COMMAND_MOUNT_TO_ENTRY_OR_MODEL source=worldobject, target=creature
|
||||
* datalong=creature entry/modelid (depend on data_flags) OR 0 to dismount
|
||||
* datalong2=creature entry
|
||||
* datalong3=search radius
|
||||
* dataflags= 0x01 to use datalong value as modelid explicit
|
||||
|
||||
25 SCRIPT_COMMAND_SET_RUN source=worldobject, target=creature
|
||||
* datalong= bool 0=off, 1=on
|
||||
* datalong2=creature entry
|
||||
* datalong3=search radius
|
||||
|
||||
18 SCRIPT_COMMAND_DESPAWN_SELF source or target must be creature
|
||||
* datalong = despawn delay
|
||||
|
||||
19 SCRIPT_COMMAND_PLAY_MOVIE target can only be a player
|
||||
* datalog = movie id
|
||||
|
||||
20 SCRIPT_COMMAND_MOVEMENT source or target must be creature
|
||||
* datalong = MovementType (0:idle, 1:random or 2:waypoint)
|
||||
* datalong2 = creature entry (searching for a buddy, closest to source)
|
||||
* datalong3 = creature search radius
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue