$include $lib/rp $include $lib/alynna lvar target lvar stat lvar value : rpsystem.log[ s:log -- ] { "[%x %X" systime timefmt "." systime_precise tostr "." split swap pop tostr 5 lj "] " log @ "\r" }cat "$MUF/2091.m" fappend pop ; WIZCALL rpsystem.log $libdef rpsystem.log : main var logstat var posneg "=" explode pop dup match dup ok? not if pop .pmatch dup player? not if pop "Invalid target" .tell exit then else swap pop then target ! stat ! value ! command @ "+rp" stringcmp not if target @ stat @ value @ dup "+" instring 1 = if 1 strcut swap "+" instring if 1 posneg ! else -1 posneg ! then atoi posneg @ * target @ stat @ getstatint + then toint dup value ! setstat then command @ "+rpi" stringcmp not if target @ stat @ value @ dup "+" instring 1 = if 1 strcut swap "+" instring if 1 posneg ! else -1 posneg ! then atoi posneg @ * target @ stat @ getstatint + then toint dup value ! setstat then command @ "+rps" stringcmp not if target @ stat @ value @ tostr dup value ! setstat then command @ "+rpf" stringcmp not if target @ stat @ value @ dup "+" instring 1 = if 1 strcut swap "+" instring if 1 posneg ! else -1 posneg ! then strtof posneg @ * target @ stat @ getstatfloat + then tofloat dup value ! setstat then command @ "+rpd" stringcmp not if target @ stat @ value @ todbref dup value ! setstat then command @ "+rpo" stringcmp not if target @ stat @ value @ todbref dup value ! setstat then prog "?" flag? if #55 { "!wc #[RP/+set] " me @ unparseobj " set RP stat [" stat @ "] on " target @ unparseobj " to: " value @ }cat force then { "[RP/+set] " me @ unparseobj " set RP stat [" stat @ "] on " target @ unparseobj " to: " value @ }cat dup tellme rpsystem.log ;