all repos — soulgrind @ 7caa246483409cc81c22f969a8803ed90d69ecc7

arcade-style rollerblading game in uxntal with xrxs multiplayer

implement 1p/2p menu
Iris Lightshard nilix@nilfm.cc
PGP Signature
-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEkFh6dA+k/6CXFXU4O3+8IhROY5gFAmIPRVgACgkQO3+8IhRO
Y5izDg/8DrhKPByZvHOkH/KAJrbJiC+5ej6GGcTg5snDBhesu6OGKFl6vRXhdOx4
QfCHx00RNTWG4mENo9ti2/MlWEFmK5ntKM3+8vByxhf6+yHLhcMV9ZD07KQSW6/r
zMQRhunNu8GvauYILERTY0qEJo83rL5v1cxn9bAIi/E9t2MyZF9oMeeTae3qykJt
xuWIZzGkNR3NzGv7zswpR1riZn6kMvCcQ+wvsgCTsWtIUKSdj48/UFFzI4saHhLY
D9IrDUu+t0ZsCnyPw4EkiNgtFHlL4Jo4SZBuVPFCgsDnV9yP8L6ZxRncp/W49dp5
iNHCdTmtYrFI7mbxe7IJQqk6uzBjS5R3xgrhqtEXYzM5TeUiUfVahRqBuluUoKUY
VrMmniFsHoNxozoPJnsdvHZavgrwLxjywUbcD/Ls2hw2h3rvQWt84WavXHPuPN+t
VGY+uiKKbkgX/dKDw7nzumEZTHXelgm2wWd9OzsymqlL2LHqsao0COVXyKKNHyXv
dgAqETuqWcyCzcnA+8ziNVO+NhaTQbx6bnPT1jwHabeONG9OO2h8bEmdDNQxfB+n
M9Iay6qJVkCBWTJlfKrxY68OI0wEcZKEgonBCbjeepqtY93RnVVhphe4OIGzAmGD
GPjmEu+QPrVO00Mf01p04IDbWYZonc0UcZb4i9F3+UTtqqLBYk8=
=AJMY
-----END PGP SIGNATURE-----
commit

7caa246483409cc81c22f969a8803ed90d69ecc7

parent

c04c464cba18504079b5086cf01d6d26d03d2c1e

1 files changed, 48 insertions(+), 4 deletions(-)

jump to
M soulgrind.talsoulgrind.tal

@@ -108,14 +108,15 @@ #bc00 .File/length DEO2

;titlescreen .File/read DEO2 - ;fp-xrxs-version .File/name DEO2 - #00f0 .File/length DEO2 + ;file-xrxs-version .File/name DEO2 + #0010 .File/length DEO2 ;buffer .File/read DEO2 .File/success DEI2 #0000 NEQ2 .xrxs STZ + ;main-loop .Screen/vector DEO2 - + ;key-listen-press-start .Controller/vector DEO2 BRK @clear-screen ( -> )

@@ -139,6 +140,26 @@ &y $2

@key-listen-mode-select ( -> ) + .Controller/button DEI + DUP #c0 AND #00 EQU ,&no-left-right JCN + + .state LDZ #01 NEQ ,&no-1p JCN + #02 .state STZ + ,&no-left-right JMP + &no-1p + #01 .state STZ + + &no-left-right + + DUP #09 AND #00 EQU ,&no-confirm JCN + + .state LDZ #01 NEQ ,&no-1p-go JCN + #40 .state STZ + ,&no-confirm JMP + &no-1p-go + #10 .state STZ + &no-confirm + POP BRK @key-listen-1p-game ( -> )

@@ -149,11 +170,13 @@ @key-listen-press-start ( -> )

.Controller/button DEI #08 NEQ ,&no-press-start JCN + ( if xrxs, go to game mode selection ) .xrxs LDZ #00 EQU ,&no-xrxs JCN #01 .state STZ ;key-listen-mode-select .Controller/vector DEO2 BRK + ( if no xrxs, just proceed to single player game ) &no-xrxs #40 .state STZ

@@ -217,8 +240,29 @@ &no-inc-y

#0010 ADD2 ,&while JMP &end POP2 POP2 ( display Single Player/Multiplayer ) + + [ ;txt-1p + .center/x LDZ2 OVR2 ;strlen JSR2 #30 SFT2 #0010 ADD2 SUB2 + .Screen/height DEI2 #0010 SUB2 + #01 ] ;draw-string JSR2 + + [ ;txt-2p + .center/x LDZ2 #0010 ADD2 + .Screen/height DEI2 #0010 SUB2 + #01 ] ;draw-string JSR2 ( display selection arrow ) + + ;arrow .Screen/addr DEO2 + .Screen/height DEI2 #0010 SUB2 .Screen/y DEO2 + .state LDZ #01 NEQ ,&no-1p-arrow JCN + .center/x LDZ2 ;txt-1p ;strlen JSR2 #30 SFT2 #0018 ADD2 SUB2 .Screen/x DEO2 + ,&draw-arrow JMP + &no-1p-arrow + .center/x LDZ2 #0008 ADD2 .Screen/x DEO2 + &draw-arrow + + #01 .Screen/sprite DEO RTN

@@ -292,7 +336,7 @@ DUP #09 GTH ,&above JCN #30 ADD RTN &above #09 SUB #60 ADD RTN

RTN -@blank $10 +@blank [ 0000 0000 0000 0000 ] @buffer $10