#nop vim: set filetype=tt:; /* 本文件属于 PaoTin++ 的一部分。 PaoTin++ © 2020~2023 的所有版权均由担子炮(dzp ) 享有并保留一切法律权利 你可以在遵照 GPLv3 协议的基础之上使用、修改及重新分发本程序。 */ #func {dirName} { #return @convertDir{name; %1; %2}; }; #func {shortDir} { #return @convertDir{short; %1; %2}; }; #func {longDir} { #return @convertDir{long; %1; %2}; }; #func {reverseDir} { #if { "%1" == "enter{| .*}" } { #return {out}; }; #else { #return @convertDir{reverse; %1; %2}; }; }; #func {reverseCmds} { #local cmds {%0}; #local newCmds {}; #foreach {$cmds} {item} { #if { "$newCmds" == "" } { #local newCmds {@reverseDir{$item}}; }; #else { #format {newCmds} {%s;%s} {@reverseDir{$item}} {$newCmds}; }; }; #return {$newCmds}; }; #var xtt.dir.table { {east} {{name}{正东} {short}{e} {long}{east} {reverse}{west} } {west} {{name}{正西} {short}{w} {long}{west} {reverse}{east} } {south} {{name}{正南} {short}{s} {long}{south} {reverse}{north} } {north} {{name}{正北} {short}{n} {long}{north} {reverse}{south} } {e} {{name}{正东} {short}{e} {long}{east} {reverse}{w} } {w} {{name}{正西} {short}{w} {long}{west} {reverse}{e} } {s} {{name}{正南} {short}{s} {long}{south} {reverse}{n} } {n} {{name}{正北} {short}{n} {long}{north} {reverse}{s} } {northeast} {{name}{东北} {short}{ne} {long}{northeast} {reverse}{southwest}} {southeast} {{name}{东南} {short}{se} {long}{southeast} {reverse}{northwest}} {northwest} {{name}{西北} {short}{nw} {long}{northwest} {reverse}{southeast}} {southwest} {{name}{西南} {short}{sw} {long}{southwest} {reverse}{northeast}} {ne} {{name}{东北} {short}{ne} {long}{northeast} {reverse}{sw} } {se} {{name}{东南} {short}{se} {long}{southeast} {reverse}{nw} } {nw} {{name}{西北} {short}{nw} {long}{northwest} {reverse}{se} } {sw} {{name}{西南} {short}{sw} {long}{southwest} {reverse}{ne} } {up} {{name}{正上} {short}{u} {long}{up} {reverse}{down} } {down} {{name}{正下} {short}{d} {long}{down} {reverse}{up} } {u} {{name}{正上} {short}{u} {long}{up} {reverse}{d} } {d} {{name}{正下} {short}{d} {long}{down} {reverse}{u} } {eastup} {{name}{东上} {short}{eu} {long}{eastup} {reverse}{westdown} } {westup} {{name}{西上} {short}{wu} {long}{westup} {reverse}{eastdown} } {southup} {{name}{南上} {short}{su} {long}{southup} {reverse}{northdown}} {northup} {{name}{北上} {short}{nu} {long}{northup} {reverse}{southdown}} {eu} {{name}{东上} {short}{eu} {long}{eastup} {reverse}{wd} } {wu} {{name}{西上} {short}{wu} {long}{westup} {reverse}{ed} } {su} {{name}{南上} {short}{su} {long}{southup} {reverse}{nd} } {nu} {{name}{北上} {short}{nu} {long}{northup} {reverse}{sd} } {eastdown} {{name}{东下} {short}{ed} {long}{eastdown} {reverse}{westup} } {westdown} {{name}{西下} {short}{wd} {long}{westdown} {reverse}{eastup} } {southdown} {{name}{南下} {short}{sd} {long}{southdown} {reverse}{northup} } {northdown} {{name}{北下} {short}{nd} {long}{northdown} {reverse}{southup} } {ed} {{name}{东下} {short}{ed} {long}{eastdown} {reverse}{wu} } {wd} {{name}{西下} {short}{wd} {long}{westdown} {reverse}{eu} } {sd} {{name}{南下} {short}{sd} {long}{southdown} {reverse}{nu} } {nd} {{name}{北下} {short}{nd} {long}{northdown} {reverse}{su} } {out} {{name}{出去} {short}{out} {long}{out} {reverse}{enter} } {enter} {{name}{进去} {short}{enter} {long}{enter} {reverse}{out} } }; #func {convertDir} { #local field {%1}; #local dir {%2}; #local restricted {%2}; #if { "$dir" == "" } { #return {}; }; #local entry ${xtt.dir.table[$dir]}; #if { "$entry" == "" } { #if { @isTrue{$restricted} } { #return {}; }; #else { #return {$dir}; }; }; #else { #return {$entry[$field]}; }; };