Mercurial > hg > batmud > maputils
view tf/mapship.tf @ 2833:d0e186348cb2 default tip
Add mention of soft level limitation to 'Eightleg woods'.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Sun, 26 May 2024 20:33:53 +0300 |
parents | ad03d8930d4e |
children |
line wrap: on
line source
;; ;; Mapping helper for a ship ;; ;; Report location /def -i prreportloc =\ /send @party report !!PLR: %{plr_x},%{plr_y};map ;;----------------------------------------------------------------------------- ;; Update coordinates /def -i prmyupdate =\ /set plr_moving=0%;\ /if ({1}=~"nw"|{1}=~"northwest") /test plr_y-={2}%;/test plr_x-={2}%;\ /elseif ({1}=~"n"|{1}=~"north") /test plr_y-={2}%;\ /elseif ({1}=~"ne"|{1}=~"northeast") /test plr_y-={2}%;/test plr_x+={2}%;\ /elseif ({1}=~"w"|{1}=~"west") /test plr_x-={2}%;\ /elseif ({1}=~"e"|{1}=~"east") /test plr_x+={2}%;\ /elseif ({1}=~"sw"|{1}=~"southwest") /test plr_y+={2}%;/test plr_x-={2}%;\ /elseif ({1}=~"s"|{1}=~"south") /test plr_y+={2}%;\ /elseif ({1}=~"se"|{1}=~"southeast") /test plr_y+={2}%;/test plr_x+={2}%;\ /endif ;; Update coordinates, move, report location+map /def -i prmymove =\ /test prmyupdate({1},{2})%;/send @%{2} %{1}%;/prreportloc ;; Report location when ship moves /def -i -F -mregexp -t"^The ship sails (.+)\.$" ship_move =\ /test prmyupdate({P1},1)%;/prreportloc /def -i -F -mregexp -t"^[A-Z][a-z]+ tells you 'We've gon' as far towards ([a-z]+) as ask" cruise_done =\ /test prmyupdate({P1},plr_cruise)%;/prreportloc ;; Reset position to 0,0, start a new logfile /def -i preset =\ /echo -p @{BCgreen}Position reset!@{n}%;\ /eval /log mapping.log%;\ /set plr_moving=0%;\ /if ({#} == 2)\ /set plr_x=%{1}%;/set plr_y=%{2}%;\ /else \ /set plr_x=0%;/set plr_y=0%;\ /endif%;\ /prreportloc ;; Report position /def -i pos =\ /echo -p @{BCgreen}Position@{n}: @{BCwhite}%{plr_x},%{plr_y}@{n} /def -i prdocruise =\ /if (plr_moving)\ /echo -p @{BCred}No can do! Movement in progress!@{n}%;\ /else \ /set plr_moving=1%;\ /set plr_cruise=%{1}%;\ /send @cruise %{1} %{2}%;\ /endif /def -i cr = /test prdocruise(7,{1}) /def -i cruise =\ /if ({#} == 2)\ /test prdocruise({1},{2})%;\ /else \ /echo -p @{BCred}Error! /cruise requires 2 arguments!@{n}%;\ /endif ;; Initialize ;/preset