📄 transit.ddl
字号:
{*** TRANSITIONS ***} hitms = (($eq ($verb) %1) : (%2 : ($move .ME %2)) ($setg GO TRUE) (%3: (($parm 3))) ) ; synvb = (($eq ($verb) %1) : ($setg Verb %2));road1(ACTION) = ($setv n s e w ne nw se sw u d) (hitms n gard1 0) (hitms s gard5 0) (hitms e road2 0) (hitms w road3 0) (hitms ne gard2 0) (hitms nw gard3 0) (hitms se gard6 0) (hitms sw gard7 0) ;road2(ACTION) = (hitms n gard2 0) (hitms s gard6 0) (hitms e road7 0) (hitms w road1 0) (hitms ne gard2 0) (hitms nw gard1 0) (hitms se gard6 0) (hitms sw gard5 0) ;road3(ACTION) = (hitms n gard3 0) (hitms s gard7 0) (hitms e road1 0) (hitms w road8 entr8) (hitms ne gard1 0) (hitms nw gard3 0) (hitms se gard5 0) (hitms sw gard7 0) ;road4(ACTION) = (hitms n farm1 0) (hitms s road7 0) (hitms e frst1 0) (hitms w gard2 0) (hitms ne frst1 0) (hitms nw gard2 0) (hitms se frst1 0) (hitms sw gard2 0) ;road5(ACTION) = (hitms n road7 0) (hitms s road6 0) (hitms e frst1 0) (hitms w gard6 0) (hitms ne frst1 0) (hitms nw gard6 0) (hitms se frst1 0) (hitms sw gard6 0) ;road6(ACTION) = (hitms n road5 0) (hitms s town1 0) (hitms e frst1 0) (hitms w gard6 0) (hitms ne frst1 0) (hitms nw gard6 0) (hitms se frst1 0) (hitms sw gard6 0) ;road7(ACTION) = (hitms n road4 0) (hitms s road5 0) (hitms e frst1 0) (hitms w road2 0) (hitms ne frst1 0) (hitms nw gard2 0) (hitms se frst1 0) (hitms sw gard6 0) ;road8(ACTION) = ($miss tress tress east8 west8 0 0 0 0 0 0);east8 = ($setg GO TRUE) ( ($eq @HWY8 0) : ($move .ME road3) { ELSE } : (dump8 ($cont road8)) ($setg HWY8 ($minus @HWY8 1)) (get8 ($cont roadx)) (Slook 0 ($loc .ME)) ($setg LOOKP FALSE) );west8 = ($setg GO TRUE) (dump8 ($cont road8)) ($setg HWY8 ($plus @HWY8 1)) (get8 ($cont roadx)) (Slook 0 ($loc .ME)) ($setg LOOKP FALSE);dump8 = (($link %1) : (dump8 ($link %1))) { start at bottom } (($ne %1 .ME) : { Everything else leaves } ($setp %1 RDLOC @HWY8) { Retain its location on HWY 8 } ($move %1 roadx) { Put it in the box } );get8 = ( %1 : (get8 ($link %1)) (($eq ($prop %1 RDLOC) @HWY8) : ($move %1 road8) ) );entr8 = (dump8 ($cont road8)) ($setg HWY8 0) (get8 ($cont roadx));gard1(ACTION) = (hitms n gard4 0) (hitms s road1 0) (hitms e gard2 0) (hitms w gard3 0) ;gard2(ACTION) = (hitms n gard4 0) (hitms s road2 0) (hitms e gard2 0) (hitms w gard1 0) ;gard3(ACTION) = (hitms n gard4 0) (hitms s road3 0) (hitms e gard1 0) (hitms w gard3 0) ;gard4(ACTION) = (hitms n gard4 0) (hitms s gard1 0) (hitms e gard2 0) (hitms w gard3 0) ;gard5(ACTION) = (hitms n road1 0) (hitms s gard8 0) (hitms e gard6 0) (hitms w gard7 0) ;gard6(ACTION) = (hitms n road2 0) (hitms s gard8 0) (hitms e gard6 0) (hitms w gard5 0) ;gard7(ACTION) = (hitms n road3 0) (hitms s gard8 0) (hitms e gard5 0) (hitms w gard7 0) ;gard8(ACTION) = (hitms n gard5 0) (hitms s gard8 0) (hitms e gard6 0) (hitms w gard7 0) ;frst1(ACTION) = (hitms n frst3 0) (hitms s frst1 0) (hitms e frst2 0) (hitms w frst2 0) ;frst2(ACTION) = (hitms n frst1 0) (hitms s frst2 0) (hitms e frst2 0) (hitms w frst1 0) ;frst3(ACTION) = (hitms n frst1 0) (hitms s frst4 0) (hitms e frst2 0) (hitms w frst2 0) ;frst4(ACTION) = (hitms n frst3 0) (hitms s frst2 0) (hitms e frst1 0) (hitms w road7 0) ;farm1 (ACTION) = (synvb enter north) (hitms n farm2 0) (hitms s road4 0) (hitms e farm3 0) (hitms w farm4 0) (hitms ne farm3 0) (hitms nw farm4 0) ;farm2 (ACTION) = (synvb out s) (synvb enter n) (synvb east up) (hitms n farm6 0) (hitms s farm1 0) (hitms up farm7 0) ;farm3 (ACTION) = (hitms n farm5 0) (hitms s farm1 0) (hitms e frst1 0) (hitms nw farm5 0) (hitms sw farm1 0) ;farm4 (ACTION) = (hitms n farm5 0) (hitms s farm1 0) (hitms w gard4 0) (hitms ne farm5 0) (hitms se farm1 0) ;farm5 (ACTION) = (hitms e farm3 0) (hitms w farm4 0) (hitms se farm3 0) (hitms sw farm4 0) ;farm6 (ACTION) = (hitms out farm2 0) (hitms s farm2 0) ;farm7 (ACTION) = (hitms e farm2 0) (hitms d farm2 PanL) ;town1 (ACTION) = (hitms n road6 0) (hitms s town2 0) (hitms e town3 0) (hitms w town4 0) ;town2 (ACTION) = (hitms n town1 0) (hitms e town5 0) (hitms w town6 0) ;town3 (ACTION) = (hitms out town1 0) (hitms w town1 0) ;town4 (ACTION) = (hitms e town1 0) (hitms out town1 0) ;town5 (ACTION) = (hitms w town2 0) (hitms out town2 0) (TWN5x);town6 (ACTION) = (hitms e town2 0) (hitms out town2 0) ;cel01 (ACTION) = (hitms n cel02 0) (hitms s 0 ny) (hitms w cel04 0) (hitms u farm7 0) ;cel02 (ACTION) = (hitms n cel05 0) (hitms s cel01 0) (hitms e 0 ny) ;cel03 (ACTION) = (hitms s cel05 0) (hitms w cel13 0) (hitms ne cel09 0) (hitms d cel09 0) ;cel04 (ACTION) = (synvb down north) (hitms n cel10 0) (hitms e cel01 0) (hitms w cel08 0) ;MV56=($setg Cel6x 5);MV76=($setg Cel6x 7);MV67=( ($and ($ne @Cel6x 7) ($prop dragon AWAKE)): ($say"The ice dragon blocks your attempt to cross!\n\n") : ($move .ME cel07) );MV65=( ($and ($ne @Cel6x 5) ($prop dragon AWAKE)): ($say"The ice dragon blocks your attempt to leave!\n") : ($move .ME cel05) );cel05 (ACTION) = (hitms n cel03 0) (hitms s cel02 0) (hitms ne cel06 MV56) ;cel06 (ACTION) = (hitms e 0 MV67) (hitms w 0 MV65) (($eq ($loc .ME) cel06) {still here}: ($setg LOOKP TRUE) ) ;cel07 (ACTION) = (synvb out west) (hitms w cel06 MV76) ;cel08 (ACTION) = (hitms e cel04 0) (hitms w 0 ny) ;cel09 (ACTION) = (hitms n 0 ny) ;cel10 (ACTION) = (hitms s cel04 0) (hitms d cel11 0) ;cel11 (ACTION) = (hitms e cel12 0) (hitms n 0 ny) ;cel12 (ACTION) = (hitms n cel11 0) (hitms e 0 ny) ;cel13 (ACTION) = (($eq ($verb) down): (($prop cel13 HOLED): ($say "You plunge into the icy waters!\n") ($move .ME cel14) ($exit 1) ) ) (($eq ($verb) drop): (cdrop) (($not ($prop cel13 HOLED)): (($ge ($prop ($dobj) WEIGH) ($prop [red crystal] WEIGH) ): ($say "You have broken the ice! You watch helplessly as ") (($sdisc ($dobj))) ($say "sinks swiftly into the dark and frigid depths.\n") ($setp cel13 HOLED TRUE) ($move hole cel13) ($move ($dobj) .ALL) ($exit 1) {else}: {give him a hint} ($say"The icy floor chips a little, but remains intact.\n") ) ) ($exit 1) ) (hitms e cel03 0) (hitms w 0 ny) ;cel14 (ACTION) = (($eq ($verb) up): (($prop cel13 HOLED): ($say "You pop out through a hole in the ice!\n") ($move .ME cel13) ($exit 1) :{else} ($say "You are blocked by an icy roof above!\n") ) ) (hitms w cel15 0) (($eq ($loc .ME) cel14): { Poor sap didn't move.} ($say"Your breath expires. The last thing you feel is the odd sensationof water filling your lungs. ") (die) );
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -