diff options
Diffstat (limited to 'world/map/npc/commands')
-rw-r--r-- | world/map/npc/commands/_import.txt | 1 | ||||
-rw-r--r-- | world/map/npc/commands/hug.txt | 24 | ||||
-rw-r--r-- | world/map/npc/commands/pullrabbit.txt | 1 |
3 files changed, 26 insertions, 0 deletions
diff --git a/world/map/npc/commands/_import.txt b/world/map/npc/commands/_import.txt index 3cabe0b7..b2fe92a1 100644 --- a/world/map/npc/commands/_import.txt +++ b/world/map/npc/commands/_import.txt @@ -8,3 +8,4 @@ npc: npc/commands/pullrabbit.txt npc: npc/commands/numa.txt npc: npc/commands/destroynpc.txt npc: npc/commands/remotecmd.txt +npc: npc/commands/hug.txt diff --git a/world/map/npc/commands/hug.txt b/world/map/npc/commands/hug.txt new file mode 100644 index 00000000..323e0563 --- /dev/null +++ b/world/map/npc/commands/hug.txt @@ -0,0 +1,24 @@ +-|script|nonmagic-hug|32767 +{ + explode .@name$[0], @args$, "*"; // strip the trailing * + set @target_id, if_then_else(.@name$[0] != "", getcharid(3, .@name$[0]), BL_ID); + if (@target_id < 1 || !(isloggedin(@target_id))) set @target_id, BL_ID; // fallback to self + if (.@name$[0] == "Tree" || .@name$[0] == "tree") set @target_id, .tree_id; + set .@range, if_then_else(@target_id == .tree_id, 3, 6); + if (distance(BL_ID, @target_id) >= .@range) end; + if (gettimetick(2) - @hugspell_time < 3) end; + + set @hugspell_time, gettimetick(2); + misceffect FX_HUG, strcharinfo(0); + if (@target_id != BL_ID) misceffect FX_HUG, @target_id; + + if (@target_id != .tree_id) end; + callfunc "QuestTreeTouch"; + close; + +OnInit: + set .tree_id, getnpcid("#DruidTree0#_M"); + registercmd "*hugs", strnpcinfo(0); // eq: /me hugs (target) + registercmd "*hugs*", strnpcinfo(0); // eq: /me hugs + end; +} diff --git a/world/map/npc/commands/pullrabbit.txt b/world/map/npc/commands/pullrabbit.txt index 022f3753..9c3634a4 100644 --- a/world/map/npc/commands/pullrabbit.txt +++ b/world/map/npc/commands/pullrabbit.txt @@ -21,5 +21,6 @@ L_Inventory: OnInit: registercmd chr(ATCMD_SYMBOL) + "pullrabbit", strnpcinfo(0); + registercmd chr(MAGIC_SYMBOL) + "pullrabbit", strnpcinfo(0); // former pullrabbit invocation end; } |