diff options
author | brianluau <brianluau@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2011-04-06 23:49:05 +0000 |
---|---|---|
committer | brianluau <brianluau@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2011-04-06 23:49:05 +0000 |
commit | 93b84b9cb16fb9335269bf486cc4c1f9105b9cd6 (patch) | |
tree | 62e7799afb9e8b4efceb054075e12d3d697daf6a | |
parent | 40e9eb64c3a241da438111827930bafde49813cd (diff) | |
download | hercules-93b84b9cb16fb9335269bf486cc4c1f9105b9cd6.tar.gz hercules-93b84b9cb16fb9335269bf486cc4c1f9105b9cd6.tar.bz2 hercules-93b84b9cb16fb9335269bf486cc4c1f9105b9cd6.tar.xz hercules-93b84b9cb16fb9335269bf486cc4c1f9105b9cd6.zip |
- Changed 'specialeffect' when <send_target> is SELF, it will display the effect to the attached RID (if there is one) instead of the npc. (topic:243842)
- Changed 'movenpc' to accept an optional argument for direction. (topic:206973)
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@14776 54d463be-8e91-2dee-dedb-b68131a5f0ec
-rw-r--r-- | doc/script_commands.txt | 12 | ||||
-rw-r--r-- | src/map/script.c | 14 |
2 files changed, 19 insertions, 7 deletions
diff --git a/doc/script_commands.txt b/doc/script_commands.txt index 978e48183..f9d5c0059 100644 --- a/doc/script_commands.txt +++ b/doc/script_commands.txt @@ -6049,17 +6049,19 @@ sprite based sprite id in 'db/mob-avail.txt' with this. --------------------------------------- -*movenpc <NPC name>,x,y; +*movenpc "<NPC name>",<x>,<y>{,<dir>}; This command looks like the NPCWalkToxy function,but is a little different. -While NPCWalkToXY just makes the NPC 'walk' to the coordinates given -(which sometimes gives problems if the path isn't a straight line without objects), -this command just moves the NPC. It basically warps out and in on the current and given spot. +While NPCWalkToXY just makes the NPC 'walk' to the coordinates given (which +sometimes gives problems if the path isn't a straight line without objects), +this command just moves the NPC. It basically warps out and in on the current +and given spot. Direction can be used to change the NPC's facing direction. Example(s): -//This will move Bugga from it's current position to the coordinates 100,20 (if those coordinates are walkable (legit)). +// This will move Bugga from it's current position to the coordinates 100,20 +// (if those coordinates are walkable (legit)). moveNPC "Bugga",100,20; --------------------------------------- diff --git a/src/map/script.c b/src/map/script.c index 72e99e8ef..4e874b5f0 100644 --- a/src/map/script.c +++ b/src/map/script.c @@ -11438,7 +11438,15 @@ BUILDIN_FUNC(specialeffect) clif_specialeffect(&nd->bl, type, target); } else - clif_specialeffect(bl, type, target); + { + if (target == SELF) { + TBL_PC *sd=script_rid2sd(st); + if (sd) + clif_specialeffect_single(bl,type,sd->fd); + } else { + clif_specialeffect(bl, type, target); + } + } return 0; } @@ -11771,6 +11779,8 @@ BUILDIN_FUNC(movenpc) if ((nd = npc_name2id(npc)) == NULL) return -1; + if (script_hasdata(st,5)) + nd->ud.dir = script_getnum(st,5); npc_movenpc(nd, x, y); return 0; } @@ -15081,7 +15091,7 @@ struct script_function buildin_func[] = { BUILDIN_DEF(mapwarp,"ssii??"), // Added by RoVeRT BUILDIN_DEF(atcommand,"s"), // [MouseJstr] BUILDIN_DEF(charcommand,"s"), // [MouseJstr] - BUILDIN_DEF(movenpc,"sii"), // [MouseJstr] + BUILDIN_DEF(movenpc,"sii?"), // [MouseJstr] BUILDIN_DEF(message,"ss"), // [MouseJstr] BUILDIN_DEF(npctalk,"s"), // [Valaris] BUILDIN_DEF(mobcount,"ss"), |