diff options
-rw-r--r-- | doc/script_commands.txt | 13 | ||||
-rw-r--r-- | npc/Changelog.txt | 1 | ||||
-rw-r--r-- | npc/sample/npc_test_duplicate.txt | 29 |
3 files changed, 37 insertions, 6 deletions
diff --git a/doc/script_commands.txt b/doc/script_commands.txt index 9804ecbdc..f564ffc1a 100644 --- a/doc/script_commands.txt +++ b/doc/script_commands.txt @@ -84,6 +84,8 @@ //= Added 'gethominfo' description [Skotlex] //= 3.06.20070910 //= Added info about the new behavior of 'getexp' [ultramage] +//= 3.07.20070915 +//= Fixed 'duplicate' missing the target 'name' parameter! [ultramage] //===== Description ======================================= //= A reference manual for the eAthena scripting language, //= sorted out depending on their functionality. @@ -337,13 +339,12 @@ where we use curly brackets, these do NOT signify an optional parameter. ** Define an NPC duplicate. -<map name>,<x>,<y>,<facing>%TAB%duplicate(<NPC label>)%TAB%<sprite id> -<map name>,<x>,<y>,<facing>%TAB%duplicate(<NPC label>)%TAB%<sprite id>,<triggerX>,<triggerY> +<map name>,<x>,<y>,<facing>%TAB%duplicate(<label>)%TAB%<name>%TAB%<sprite id> +<map name>,<x>,<y>,<facing>%TAB%duplicate(<label>)%TAB%<name>%TAB%<sprite id>,<triggerX>,<triggerY> -This will duplicate an NPC referred to by the label. The duplicate runs the same -code as the NPC it refers to, but may have different location, facing and sprite -ID. Whether it may actually have it's own size of trigger area is unclear at the -moment - if you need that, try it and tell us of the results. +This will duplicate an NPC referred to by 'label'. The duplicate runs the same +code as the source NPC, but has its own name, location, facing, sprite ID and +trigger area (in other words, the duplicate does not 'inherit' any of these). ** Define a 'floating' NPC object. diff --git a/npc/Changelog.txt b/npc/Changelog.txt index a373bd625..477b9b9ab 100644 --- a/npc/Changelog.txt +++ b/npc/Changelog.txt @@ -1,6 +1,7 @@ Date Added ====== 2007/09/15 + * Added npc_test_duplicate.txt to /samples * Corrected some npc/other/ bugs - added missing arena.txt and fortune.txt to npc list - commented out arena.txt and mail.txt since it's not at all done yet diff --git a/npc/sample/npc_test_duplicate.txt b/npc/sample/npc_test_duplicate.txt new file mode 100644 index 000000000..b9e6a4d4c --- /dev/null +++ b/npc/sample/npc_test_duplicate.txt @@ -0,0 +1,29 @@ +// +// This sample script tests: +// * how npc-variables work with duplicated npcs +// * how the trigger area is applied to duplicates +// +// Outcome (r11216 trunk): +// * the variables are _shared_ between all duplicates +// * 'OnInit' loads the middle poring last, for some reason +// * duplicates always override the source npc's trigger area (even 0x0) +// + +- script Test Script -1,1,1,{ + mes "Hi."; + mes "My coords are "+ .map$ +", "+ .x +"/" +.y ; + close; + +OnInit: + getmapxy(.map$, .x, .y, 1); + end; + +OnTouch: + getmapxy(.map$, .x, .y, 1); + emotion e_scissors; + end; +} + +prontera,150,175,4 duplicate(Test Script) Test1 909 +prontera,155,175,4 duplicate(Test Script) Test2 909,2,2 +prontera,160,175,4 duplicate(Test Script) Test3 909,3,3 |