From b69ce57b65b9aa63c9e5eb708d3576b9072682ef Mon Sep 17 00:00:00 2001 From: Jeremy Penner Date: Tue, 25 Feb 2020 22:12:40 -0500 Subject: [PATCH] lev4 --- end.jim | Bin 60 -> 60 bytes game.jim | Bin 4198 -> 4073 bytes game.jor | 65 ++++++++++++++++++++++++--------------------------- gameboot.jor | 3 ++- jiles.jim | Bin 1575 -> 1575 bytes job.jim | Bin 1149 -> 1149 bytes lev00003.jor | 2 +- lev00004.jim | Bin 0 -> 486 bytes lev00004.jor | 36 ++++++++++++++++++++++++++++ lev00004.map | Bin 0 -> 264 bytes map.jim | Bin 941 -> 1101 bytes map.jor | 10 ++++++++ state.jim | Bin 277 -> 277 bytes 13 files changed, 79 insertions(+), 37 deletions(-) create mode 100755 lev00004.jim create mode 100755 lev00004.jor create mode 100755 lev00004.map diff --git a/end.jim b/end.jim index 7a6019466d90afc5cbd777cc4eea6c8789bb6d18..1238c68f81852eae8ff6d4a27f2252f5f74c51f7 100755 GIT binary patch literal 60 zcmcE13=BALXBJ?<5E#%Ukn3K~ni!Cpm!g-OSimq_--VT(!G)EZ!AJgr<81{ORyH7y M2grL0qaNez)RXrdzFGVjmv4G*Xo(n5Gg9|G+gO9v{<81{ORyH7y L2gq{;@)}tI@5~P! diff --git a/game.jim b/game.jim index f1dae66cb429e96d0efa4fcb3e202c2f4f5b04b6..5e6877432453180847db3ac7da49df34bd48cec2 100755 GIT binary patch literal 4073 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 literal 4198 zcmZWseQ+Dq5r4Mc^G6ifqGK6Ka4ZK?2#H8i211i2cPHKHTRIg5(kd`Smd>^kSrXF8 zc0@C9?IdM94YPX!tdPEmZ+D_OE7T`O3z$kMk3A8k)p~xj}Nlcwo3m01fh*xMo{ zVE_g$n5OrLtz??KMlP2qiG#_U_=~|-k|55OF9R_E=zwTbp8(F?=Xam~isT>&*#i-* zK-kgjlr--~@q~BCZ+1rW9j!15CbeVAas;>cztMZ))ulELnjE+AzMQX->SDdb7( zaH`L!xT7#1%!9_7jlU{uLy%Rady|Z+Iep5jH z0`ScOf5|&X@!SqrD-!i?geUAkCmXECdjY9rMj_KMI7?S!f*tctIj`G1w#Hz;-U7yZ z?SylfR|3pF41QeOzs6ewtuJ}sU477>2}iUg>)ju&LaNFZgQou#^SF z7r|TH?E<&eXxI^V_t6=^m|$)nQXduiINpB%-f1{7wgx?6$~4$RUI!^wbx(2FGgPb= zvK7Fx%YhsRY<2GN1GZDPuw$(ED7_2+VRZ^3y~Wo-@>+TvqJU{oqt^`V2Pk#lG{p#- z0utFD!y1=Qw^C9(d4pQfCP@-r<4Yf(N&AQdxvJ!XlD0V73HMYV5-tahKu=paRPvBg#0~9Uv|d^FyEjEHnp4m;WOGz zU09z~=XaOuYW9)|_LkB_U{Q~-ct?#2YktNtEGl@J=9PAGt0%9GYk6MR|E1VlZmnun z&7w^?nIGYF`t8k-TNZVlMIGYQBNp`P^&KGdOaBE&3b%A!(bGut0t2Pf4Ovbs9`&yM=^(f;j?HkRaymLh747q+a?zRLD-d z!JhPYLg~qBJh2M?C#)Fn>ZA#L6b1~Zv%eQqxV@7z5^8W+H7zU$`B>5xZVbg^S%AO8!m%l z5^#~MHk>PfK^|+q@{DR}Y`uic2Ydd1x1^iH)7fB0Vtr z;E~y-q0QX}bI}sNm>&i0B%dqnwRFL`XzL3>@H(r*Q={fN7sXq%F4RGMYAoSV{eC`x z?F_YBggC4j84cNqtg6?0d{H&2;84~{CL1(0p~N|D1^ISp1xfA5ypUIXaZGu`VA_LtDghz<~2D%^m z2nlyXhp3c_g{)TQCvpE=f1O?sHdtS{6H4j`%o5}2JkSro8O)!ZVeCl;+Zx82jQf_( zqtIs;xbRST4*s#b7;IO#Ye@-m4sacf?QeuvlF@V_3lmGRP#hkH&7*L2I{L8-Jrg#Y z=J&!0_U~|we!Lo~uK{(MHfX(^^CO_0>km8ja8BGuh(7}1eA3QjzcQ$rC2#qA51Vk zvTD#^J0f;6lusA-Hp}*>UD4KA7zJcD6q)It11aMX2TwN`iJDyJ`di>KezDbHKLiPu zTQDawPO!J4YXz;0DNyGZX)4-<`Kguhl4py> zGGaDy;rGS89GSuH2mQF~X-ELB8a*C`88~{=5#y`8()u3u;CbG&Qlkr@S+Haw^i;$Yx+m7r3@C_Q^5+EWiK7uHZVW=0VjqC8kD(2jwB=##h@)aX zlm*eN04btlJ<91RlWQqVVqib2H za!|hGcfs72&J~ttK^;V6jmC@lOuUnTO&Klk(Z<27Y5MqTgDrPcBi3l3M?LAq84qcL zT`B1f1v7oh`7BHyUxL29?c#)8W}VOv!|*o2G!=(AvH4A!R+pv?l}{V{fkS2wTwpos Neut entity.pos! @@ -226,15 +226,6 @@ does> @ objects ! ; dup defining-objects-head ! defining-objects-ptr @ ! ; - 4 const COMP-OFF - 5 const COMP-ON - 9 const DOOR-CLOSED -10 const DOOR-OPENED -11 const SWITCH-OFF -12 const SWITCH-ON -20 const SCAN-OFF -21 const SCAN-ON - : entity>tile ( entity -- tile ) entity>pos world>tile tile ; : entity>tile? ( entity expected - b ) swap entity>tile b@ = ; : responder>tile? ( expected - b ) responder swap entity>tile? ; @@ -245,14 +236,6 @@ does> @ objects ! ; : respondertile! ( tile -- ) responder entity>tile b! invalidate-map ; -: handle-onoff ( ev on off -- ) - rot toggletile else - drop drop drop then then then ; -: statechange? ( ev -- b ) - dup EVACT = over EVDEACT = or swap EVTOG = or ; - var _dorubber : rubber _dorubber @ not _dorubber ! ; : {tileent} _dorubber @ if {duck} else {blank} then ; @@ -261,25 +244,16 @@ var _dorubber : linked-entity responder entity.user @ execute ; -: handle-link ( ev ontile -- ) - swap statechange? if - responder>tile? if EVACT else EVDEACT then - linked-entity swap entity>do - else drop then ; - -: computer-on? ( entity -- b ) COMP-ON entity>tile? ; - -: handle-teleport ( ev -- ) - EVTOUCH = isneut? and COMP-ON responder>tile? and if - linked-entity dup computer-on? if - entity>pos Neut entity.pos! - else drop then - then ; - : create-object blankentity dup link-object ; : create-linked-object blankentity swap , dup link-object ; : listener! ( entity listener ) swap ! ; +: handle-onoff ( ev on off -- ) + rot toggletile else + drop drop drop then then then ; + : entering-door? ( ev -- b ) EVTOUCH = isneut? not and DOOR-OPENED responder>tile? and ; @@ -298,6 +272,15 @@ var _dorubber then then |; listener! ; +: statechange? ( ev -- b ) + dup EVACT = over EVDEACT = or swap EVTOG = or ; + +: handle-link ( ev ontile -- ) + swap statechange? if + responder>tile? if EVACT else EVDEACT then + linked-entity swap entity>do + else drop then ; + : switch create-linked-object :| dup EVTOUCH = isneut? and if move-player then dup EVTOUCH = isrexx? not and if @@ -307,6 +290,16 @@ var _dorubber dup SWITCH-ON SWITCH-OFF handle-onoff SWITCH-ON handle-link |; listener! ; +: computer-on? ( entity -- b ) COMP-ON entity>tile? ; + +: handle-teleport ( ev -- ) + EVTOUCH = isneut? and COMP-ON responder>tile? and if + linked-entity dup computer-on? if + entity>pos Neut entity.pos! + else drop then + then ; + + : computer blankentity swap , dup link-object :| dup EVTOUCH = isjaye? and if responder EVACT entity>do then dup EVTOUCH = isneut? and COMP-ON responder>tile? and if move-player then @@ -340,13 +333,15 @@ var _dorubber : chain-listener ( entity xp -- ) swap dup @ , ! ; immediate : cancel-ev ( ev -- EVNOP ) drop EVNOP ; +: with-gord Gord follow 1 player.state HASGORD f! ; + Gord :noname dup EVTOUCH = isjaye? and player.state HASGORD f@ not and if move-player - 1 player.state HASGORD f! - Gord follow + with-gord then chain-listener ; + :noname reset-level ' mode-move ' tick redefine diff --git a/gameboot.jor b/gameboot.jor index 2c5b8bd..12f1ab3 100755 --- a/gameboot.jor +++ b/gameboot.jor @@ -34,10 +34,11 @@ s" game.jor" loadfile intern lev00001.jor intern lev00002.jor intern lev00003.jor +intern lev00004.jor intern end.jor :noname loadfile ; checkpoint _loadlevel ' _loadlevel ' loadlevel redefine -lev00003.jor loadlevel +lev00004.jor loadlevel diff --git a/jiles.jim b/jiles.jim index 4d353134696d87bbed3c6050b56f302a7b81f63e..5fffb087eff78a4b48720f8b55476f1d82d50c5a 100755 GIT binary patch literal 1575 zcmc&!-)kII6h51|CrRDfY;1SOc9V3A2>szUnYlBYSZHW*h$g|fwl?ZYqiJ^1uDjV? zX1CpBq39x^wo%A~AR2AUogp z-E+?U?zv}X@X!O{&b_x%@z#)atFILbQ>8*FfbLiagsfHwHfaPRRv0SfAXoKs#jHO| zAprZWT@d)wfnT|hEc$-d&nj73ZJRP&i+C7)$y#pE}+F zGPxq^VogNFWg~-~_M%9mX|IWHF>ZZN#{aU~;fOvw2lrYT^YhMLD=MzyxYfY8y%Vy* zWGz{qEcn%`uMQ31VJGOiS*m*3UZEX4d;<8_fIp4H<`<;YJJR?x?a2Ea+bY!T5_gXa z-M6h!i(H`s0IMdO{g!MNt(wVhiq^cD#+$arHB)bN!tk&K`snv0Bn+($5Q~sjv_9H0 z@ov+^EB0=fDP64iQ>9Xn9i(F`pbpj2+%+Y+W*U#t(||ih1KVYX&MKEGoI?-FNXR9@ z{|y|J?RtH7ju#eUrzG2K;Dih}6LYhELElAQK1SxbYwyT4k(Upf`W|W&dwzO$I#=+E zlQWxr){Xd4*6;_ZFX<=+k-Hv;XHPHR>$LV=?91Rfh5ajwRVqb51dqZZ!*PPWu;d_2q|cuz6B~vPHS>zZo`lbw zHk#=2TqT%N9=>w!X*yPJx$7Rj4D-ek4G=%CQ-`DOmtDVhWw6cNN%wI@exq2_jVs0( zuQoFVLNhAkth*3f5{qhz?-+HV^M@&a-Ad!AyC`&x=cooNXGtl?m!lcXyB=rq64%%lNUc2h@t#geR6n{%`u8>!J)ve*j?&*``!()#oU>QG^b+L?N?H9~TYW-(- z)#Q2!8f^nk7~c^Cs{W>0{ln#HyWw<;_Y_}uZ#YrGnz)}{VWovr%=Zv~P4T$m4-&tw z_@R`CNEJU(te@CAo#mW5%P6sp4bC5+_}7*8JZT}=)Y_DGB{f3(dN{H#9hM3mCxqtL zvD-&(n}3_X#6IY1;LWXzQ}c8!GDL+l_)`kaH`Lp`mm0-o9;a^uz+saw%fqoI8@2Do wSl3_Og%s*3pw~{D*w@bna^Vqbhlj@rNrm1f!)(mM-{{R@W537l#`p{O9~*jdumAu6 literal 1575 zcmc&!-)mcS6hH0#p0*fWQ`_WP*JwBK!OpbzS89CN*f2OJtcy;kq%g>u+xEINx!$Cv zOR;Mn2Hl3NP;jtP-yE}r6$Vy2*|g$=60A=uPWm7+rs#vi4beTsbG|n%^Di)v+|TFp zJ?Ha1=leamd!BkC(AF96-`UlS3rqJ2$;C-oNCCyI8bk(*Ox<1K&48t{eI??U2Ajz`qLoqV%XAlTvO?;zzV2?{i_xsD4U(dTjLY zeMZNOWikL*Rk_$6V@<4UC6%jL*G{QPGz=e?RDYwrN&*`}qu+hdt@v7;Sdg@J?b22e zVE9G+thd8he!O50$?VfCh-D26}YWbaMWn^v)p`vbLc@C)5g5u zZw22oTKx5i6TEOXd_|U7!Rtn#p6E>2S^qAo#tT$DpIVLDs~XR${ylt8u_MD1!%o)D zrN=hU**^%&ETLxlm()u^RNa)xv*$05nZteG_N8!;!d^3TMY1T=!yJ+v^L}NDlqu8A zdqpqp6lGWi6>}TB!D-QaHWMv6L&xP1Pya{eF_7|kvk{J_;7;gixXkc%f>Bsyc$nbh z@CCzH2zJ0X44)^s18y*UnP5BIWcVDxUigFI5rTbi&qO$y9C_6xb^w|z$r3qYFF}XZ zOcU*%D0oA%hMm>}^@?S+eCi3DhEvKs4G=%C(+Q7TSG#`fO5uo=r4hPid?neqH7OZq z%+xdD4P!FnnsqijFJ|Qw-&V@P&;Nk(2lXT_S+m0T_=G%Ixkie+eIb;>s+GW6ZAL#S z*$>1TU`GGYi!u2DSEAlXta2@!C0>q60C_wRLT{ZqXWe!r`N#@5Bjc{&rkNX9Ab???5H&W4?IP;7IM-VFdfDqmIt2kLA| zzf0E!^|$VCG4!W^{&s#5<$f-}2`ris%Gyn6PNILPU@nZ_6m&IQ*v;_WFu&pc1t+GB A6951J diff --git a/job.jim b/job.jim index 819887901a5caa7c7bfab65839a7ffb5d9b49471..b9181bc3c2f5bb885628690da9792952bbd67d7e 100755 GIT binary patch literal 1149 zcmZvbPe>F|9LJx|d#onvYONG07!~w~p^)g!%to|k2pToCONZS{U+PPB@1Vz%JL#Gb)`@PxKIk+&7+3)Z7-uwK1zwg|7^JFZc6%_7-Kp6wdseZ;UV)E#-cGB0v%n{K|IB!Z2m5XF88PYMCrPm(g|uHnqeRnNA|_G1W-F+!q; zk_PqZHZ4kdc2{Xoi*HlBDMj_f5@@5!21MV$`a%;qGy@K!?ccA+M;rt*yf@u&l&D?2>`L_qVx!{4NyB{n12A% zr&)m8S5^Qlq$BP49tZs(Kts9#7+XyY&prUTyf`nqx2{a~WTlWUH@o;x>5EW2+jD@o z1yW0!vu2dtICG8FMQSTCr}mPHE&O$0qi6sjU02Ta%&I=k zv$wG7iSZPUI?{Evqb8LSWE5b)SnZBF!2`Ag=UHXPHEnsOQWgFb1Kn4joe0?NlZDh( z?u&x3dm(juM%p)3o&8b+wx@OzVRGDtmVlk-6F&W_hA?!C4@>BoPOVwmOw}|6cr*2A z*F4u+<5<-S91GY62Vh_GY*pKcIjZHNhoGX1u4rAvv==2>qL5Fq-da4KKsBU91wU0s9YW4lu0% literal 1149 zcmZvbPiPZC6vn6B84@jRl4{g~g^G%mc0Kek`{z)IMhXpLB=M3SWZP`*YPxB&yQW<$ zxI!;se8TO)luR19^u2FN%GJ2Uj-?cL_q@s64jD4y*( zz}p6?lXvP$@_|~AKEVu5s{vV2dqrm5u-qtfo&4ab?Zh=TfvPt5*MW`107AT{T>fJ@1(wzXo7l@n#I_J|6FG zyMBjb<;k!v#`y+W(LQLXKs!<`GwvDV{G#2mdG<*P_bsRw`Jb=L#L0Ww}FRM z*W~}T=7HbGbwPSXCy1K|Zj0-qdO%k7<3f?^mOH~`27OCmK{4Nl8oP|GoqUyG4ak4O C`7^Ho diff --git a/lev00003.jor b/lev00003.jor index 811052d..f616ce4 100755 --- a/lev00003.jor +++ b/lev00003.jor @@ -17,7 +17,7 @@ defer c1 ' c1 8 3 computer c3 ' c3 12 11 computer c2 ' c2 5 7 computer _c1 ' _c1 ' c1 redefine -end.jor 0 4 exitdoor dx +lev00004.jor 0 4 exitdoor dx ' dx 0 5 scanner sx 5 2 defrexx Rexx diff --git a/lev00004.jim b/lev00004.jim new file mode 100755 index 0000000000000000000000000000000000000000..a73aeb65237162a37e23b1c48342b32f0e5896ce GIT binary patch literal 486 zcmYk2JxD@f6o!v>zoPA8;3i45MC4CO1c4Y_=m&q!aR~xJQwu^tN=%X<2?}f|s;$Uq zDr#_vh9GjNu^gHVqM?S6LfRUFzT+k7Zs&dAxzD|xzAt+4+)~XzID`fWg3nx;s1czN z;!d!bZNB$OBSfG90J9k8dGOy{hBU5VhG$o6_QDZt;2v)BoRf31De+204<6zf9-{)G zM2=A@aNXMmW$C}fJG{aUh&cx`(S|&g(`GUMOC47 z|Frldg-|reLIqJ&Q)5%OBsxRMMAji6w=ES-!@gY;CeVZezV7PilT{O4@)GiTlb1DE F5WkEmhbI64 literal 0 HcmV?d00001 diff --git a/lev00004.jor b/lev00004.jor new file mode 100755 index 0000000..4ebab06 --- /dev/null +++ b/lev00004.jor @@ -0,0 +1,36 @@ +( L E V 0 0 0 0 4 ) + +objects: O + +15 6 door d1 +11 6 door d2 +10 4 door d3 +end.jor 0 4 exitdoor dx + +15 11 defrexx Rexx + +defer c1-targ +' c1-targ 6 11 computer c1 +' c1 1 2 computer c2 +' c1 7 2 computer c3 + +' d2 12 6 scanner s1 +' d3 7 1 scanner s2 +' dx 0 3 scanner sx + +' c2 13 9 switch b1 +' d2 10 3 switch b2 +' d1 7 6 switch b3 +' c3 13 8 switch b4 + +:noname c2 computer-on? if c2 else c3 then ; ' c1-targ redefine + +:noname + reset-level O + + s" lev00004.map" load-map + 18 4 tile>world Jaye entity.pos! + 19 5 tile>world Neut entity.pos! + with-gord + +; ' onload redefine diff --git a/lev00004.map b/lev00004.map new file mode 100755 index 0000000000000000000000000000000000000000..212f8a2be4a69fde1bec98cbec6fb6bfb8d7a7dd GIT binary patch literal 264 zcmX|*iw?yg2t!?Kn8xg-=HCDR(;+yU2*;|_9*!`zeGtMHfCIYv?1O*zD328j?fxkkCMbA5ny$ zl!!f4K@#>P!DAJLl9Nz82)PtQ(*Ga`Ui73M6c1jU*?e4vd4BW0&oj@ye-KcwB+iD8 zpL%blu%mw8PTMOEvzM3QcLd?3>4y=>3r*pj8G?*$ud?(FyO7NY7K9HIW;@xu$5c2n zRVb`qUrS#bTZQ1O8Jr?%b`1WQ0Vt$X`SHjJ@H0QeMnq0T;3NycYPMKpjxDoh!C;+V z^S;Z>4J*-^$1Fn?Fvw!`Ris3pGj~xry|B*?lMxJ?adQcW$xm}X=SuW5`9Hx9-5RnJ(7#9+tHoQljU%j5$DuUgYi< zMc-cI@~MwQc7T0sh8=o|w{d`NVf;vMQH3K2n}@=uuD7v8Z;rsG2lliUy~|a&U9C1M z_s4ln%uoQCwkNC{`i93zi$38&rLkG7PN(<|{?l>>>4~J8Ck&F)%G!qB#SWKjfpmDz z)8DiSk+-t;K$wTEzBdymUGei8cR%{{tLs(|x3t$t{G+}pt0vN=nLHi3BDCRYc}^3mbPYMiz#BZ|1!>^U!t~iB2VkJ9>I!$uo8keG`Xz z+&FPXpvSu#?hNXh%_icfu?)Vu;z{ot<8<%Dpv$$~X=ph0{?GmlI`r)%2D999lW^}0 zKn3=259iu^th!>v7*7yI_4QnFxs;>A;+nSKU4eobK$h>a4DOSPsX`i$NbDHq&K0Rv z4JN4yH7IqZ@tDf+0A*>sZTh%Kph=r8=~FPv;NxwRSPF@A?&BjxwbgvSnA`ZvE5QtE zno2{jER!Oh#e96GcD=Z?oNrA%(JuV(l+6N}R1bm8QasBS%nE#w;>Oq)r9%A5Ta5Z; z`KB~q^=jda#VT_1I*EB^&R%-~tndq9k>~VE*U@x7R(x0Z2Dj6C7Vj6`UO~#ic$ao diff --git a/map.jor b/map.jor index ea55c79..75b950d 100755 --- a/map.jor +++ b/map.jor @@ -37,6 +37,16 @@ array tileflags here tileflags - 1 - const MAXTILE + 4 const COMP-OFF + 5 const COMP-ON + 9 const DOOR-CLOSED +10 const DOOR-OPENED +11 const SWITCH-OFF +12 const SWITCH-ON +20 const SCAN-OFF +21 const SCAN-ON +23 const REXX-POD + : mapflag? ( x y flag -- b ) >rot tile b@ tileflags + b@ & ; : tick-mapedit diff --git a/state.jim b/state.jim index 62b6aea87a17917643352ea17562f6d75bfb35a0..c26897f3f90a1011e4e4667e7f4c63d1207a7b75 100755 GIT binary patch literal 277 zcmcE1ROS|xykWq}_(OlIJ||;9kiWZbn5Szv!xvEoh9CM|3~oM-?z+zYp?)DiAw~u+ z16GE#oW%5E23au%SpyCTrzAg(p-Z5O#f6oF!Gc-cK!JHSnC-yq!pg`no8<*_BdeAH zJ4A7sB2cZlfeK$EYq$X`Bgixdu!uKMB-?K6hOVr0nD zXJtssNlY(hkQHO7)#re4O7hbfx&*3NTv$06ESTH%6_{s(*$&Jutc(n^Sza(VvUcgS zLlmbe0@Y5}SK(`9-LB8d2r|t9EaD9mIjzsmSe#k{5(J7tbRX7lWW5V?TyjooVi8=1 z0cb8r=BqvzV@7FiVxDeUW@D PBh-Z(