more sound effects, FIXED BUG WHERE NEUT VANISHED

This commit is contained in:
Jeremy Penner 2020-04-18 22:12:57 -04:00
parent b852c2bda1
commit 5b5ad34c90
30 changed files with 64 additions and 17 deletions

BIN
boot.jim

Binary file not shown.

BIN
debug.jim

Binary file not shown.

BIN
defs.jim

Binary file not shown.

BIN
end.jim

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
game.jim

Binary file not shown.

View file

@ -124,16 +124,18 @@ var posessed-rexx
defer touch-override ( x y -- b )
: rexx-touch ( x y -- b )
2dup RUBBLE mapflag? isrexx? and if
tile 3 swap b! invalidate-map 0
sfx-garbage
else tile b@ REXX-POD = if
move-player
S posessed-rexx @ entity.dir !
posessed-rexx @ entity>pos Neut entity.pos!
0 posessed-rexx !
1
else 0 then then ;
0 >r isrexx? if
2dup RUBBLE mapflag? if
tile 3 swap b! invalidate-map
sfx-garbage
else tile b@ REXX-POD = if
move-player
S posessed-rexx @ entity.dir !
posessed-rexx @ entity>pos Neut entity.pos!
0 posessed-rexx !
rdrop 1 >r
then then
else drop drop then <r ;
defer on-gord-sit
@ -430,8 +432,12 @@ does>
:| dup EVTOUCH = isjaye? and if responder EVACT entity>do then
dup EVTOUCH = isneut? and COMP-ON responder>tile? and if move-player then
dup EVHACK = if hacked libb say" nothing interesting on this one." then
COMP-OFF responder>tile? swap
dup COMP-ON COMP-OFF handle-onoff
handle-teleport |; listener! ;
handle-teleport
COMP-OFF responder>tile? != if
COMP-OFF responder>tile? if sfx-termoff else sfx-termon then
then |; listener! ;
: scanner create-linked-object
:| dup EVTOUCH = isneut? and if
@ -439,6 +445,7 @@ does>
responder EVACT entity>do
then
dup EVHACK = if
sfx-libb
libb say" that's easy."
responder entity>pos Libb entity.pos!
hacked
@ -457,6 +464,7 @@ does>
move-player
responder posessed-rexx !
-100 -100 Neut entity.pos!
sfx-rexx
then |; listener! ;
0 const unconnected
@ -487,6 +495,7 @@ Gord @ const gord-listener
: chain-gord-listener gord-listener execute ;
:noname
' norm-rexxinst ' rexxinst redefine
HASNEUT player.state !
human-view
0 objects ! 0 ticking-objects ! 0 visible-objects !

BIN
input.jim

Binary file not shown.

BIN
jiles.jim

Binary file not shown.

BIN
job.jim

Binary file not shown.

View file

@ -1,7 +1,7 @@
#include <stdio.h>
#define MEM_SIZE 33792
#define MEM_SIZE 40960
#define STACK_SIZE 64
#define RSTACK_SIZE 64

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -1,5 +1,11 @@
( L E V 0 0 0 0 5 )
202 12 128 192 17 244 0 46 9 241 18 0 instrument glitch-inst
202 10 48 0 83 245 0 10 0 221 6 3 instrument drop-inst
: sfx-glitch glitch-inst 1 loadsfx %F ;
: sfx-dropgarbage :| drop-inst 3 loadsfx %A rest 1 octave ! %A |; SFX send ;
objects: O
lazy 60 over 19 9 timedswitch ts
@ -42,17 +48,21 @@ here rubbletiles - 1 - const MAXRUBBLE
: touch ( x y -- b )
drop 13 <= isrexx? and posessed-rexx @ Rexx = and if
3 glitchlevel !
sfx-glitch
rexx say" PaRiTy ErrRor!!"
noteoff
0 glitchlevel !
1
else
not-picking-up? can-drop-rubble? and isrexx? and if
randomrubble rexx-pos tile b! invalidate-map
sfx-dropgarbage
then 0
then ;
var first-rexx-touch
Rexx :noname
' sick-rexxinst ' rexxinst redefine
dup EVTOUCH = isneut? and first-rexx-touch @ not and if
1 first-rexx-touch !
rexx say" bOSssS..."
@ -61,6 +71,7 @@ Rexx :noname
var first-rexx2-touch
Rexx2 :noname
' norm-rexxinst ' rexxinst redefine
dup EVTOUCH = isneut? and first-rexx2-touch @ not and if
1 first-rexx2-touch !
neut say" REXX UNIT\PERFORM FULL DIAGNOSTIC SCAN"
@ -79,19 +90,25 @@ d2 :noname
move-player
W mr
1 glitchlevel !
:| sick-rexxinst 2 loadsfx 5 sleep
%G 10 sleep %E 10 sleep %C 10 sleep 1 octave ! %G |; SFX send
rexx say" daaAiisSyyy, daAAIIsYY..." hide-footer
2 glitchlevel !
W mr
W mr
:| sick-rexxinst 2 loadsfx
%A rest rest %B rest rest %C rest rest %A rest rest %C rest rest %G |;
SFX send
rexx say" gIVe mE YOur AnSwerR\doOO0OO0o0oooOO..." hide-footer
N mr
N mr
4 glitchlevel !
1 quaking !
sfx-glitch
rexx say" uh oh" hide-footer
Rexx entity>pos world>tile -1 -1 +pos
dup 3 + for dup over 3 + i >rot for i over ( x y )
tile randomrubble swap b! invalidate-map 1 sleep
tile randomrubble swap b! invalidate-map sfx-splode 1 sleep
next drop next drop
-100 -100 Rexx entity.pos!
0 glitchlevel !

Binary file not shown.

View file

@ -1,4 +1,7 @@
( L E V E L 0 0 0 0 6 )
202 0 0 14 99 119 0 9 0 104 119 0 instrument keyinst
: sfx-key ( n -- ) keyinst loadinst 36 + noteon ;
objects: O
2 const ^1
@ -10,7 +13,7 @@ objects: O
^1 - 1 + dup 10 = if drop 0 then ;
: draw-digit ( x n -- ) code-y swap 48 + text-color @ textc ;
: code-digit ( code x -- code )
wait-for-digit swap code-x + over draw-digit swap 10 * + ;
wait-for-digit dup sfx-key swap code-x + over draw-digit swap 10 * + ;
: read-code ( -- n )
WHITE text-color !
@ -58,10 +61,11 @@ var pady-introduced
pady say" Another strange program!\My, I'm popular today!"
libb say" oh puke. please shut up."
runon pady say" How rud"
hacked sfx-libb
libb say" > /winnuke 182.556.21.74"
pady say" PADYSEC caused a General\Protection Fault in module\MORICON.DLL at 000A:BE3F."
libb say" > /open"
drop EVACT hacked
drop EVACT
then
dup PAD-ON PAD-OFF handle-onoff
PAD-ON handle-link |; listener! ;

BIN
level.jim

Binary file not shown.

BIN
map.jim

Binary file not shown.

View file

@ -28,7 +28,7 @@ array tileflags
( 14:chair-brok ) RUBBLE b,
( 15:bookcase ) 0 b,
( 16:bookcase-broke ) RUBBLE b,
( 17:scattered books ) WALKABLE RUBBLE | b,
( 17:scattered books ) WALKABLE b, ( don't want rexx to explode books )
( 18:plant ) 0 b,
( 19:tipped plant ) RUBBLE b,
( 20:scanner-off ) NEUTABLE ENTITY | b,

Binary file not shown.

Binary file not shown.

BIN
save.sav

Binary file not shown.

BIN
sound.jim

Binary file not shown.

View file

@ -57,6 +57,7 @@ array semitones
: note dup 12 / 8 % swap 12 % cells semitones + @ 440 swap *<ratio ;
: noteon noteoff note freqon ;
: randnoteon rand 12 % noteon ;
: panic 9 -1 for i voice ! noteoff next ; userword
@ -82,6 +83,14 @@ var octave
202 1 4 0 248 190 0 0 39 214 79 0 instrument bink
202 4 37 0 67 52 3 1 80 54 119 0 instrument zoop
202 10 134 129 239 1 0 1 3 152 241 0 instrument doorinst
202 14 245 79 247 182 3 210 18 163 245 0 instrument terminst
202 10 1 9 244 186 3 12 137 181 185 0 instrument norm-rexxinst
202 12 0 208 244 186 3 12 11 181 185 0 instrument sick-rexxinst
202 14 18 0 244 2 3 22 3 244 103 0 instrument splode
202 0 0 15 248 5 1 202 128 205 20 1 instrument libbinst
defer rexxinst
' norm-rexxinst ' rexxinst redefine
task const SFX
SFX :noname activate begin receive execute again ; execute
@ -92,4 +101,12 @@ SFX :noname activate begin receive execute again ; execute
: sfx-confirm bink 6 loadsfx %C rest %E rest %C rest %G rest ;
: sfx-zoop zoop 5 loadsfx %C ;
: sfx-dooropen :| doorinst 4 loadsfx %C rest %E |; SFX send ;
: sfx-doorclose :| doorinst 4 loadsfx %E rest %C |; SFX send ;
: sfx-doorclose :| doorinst 4 loadsfx %E rest %C |; SFX send ;
: term-jingle terminst 3 loadsfx %E rest %F rest %G 6 sleep ;
: sfx-termon :| term-jingle 4 octave ! %C |; SFX send ;
: sfx-termoff :| term-jingle %C |; SFX send ;
: sfx-splode splode 0 loadsfx %C ;
: sfx-rexx
:| rexxinst 2 loadsfx %C rest %G rest %E rest 3 octave ! %C |;
SFX send ;
: sfx-libb :| libbinst 2 loadsfx %D# rest %G# rest %F# rest %G |; SFX send ;

BIN
state.jim

Binary file not shown.

BIN
timer.jim

Binary file not shown.

BIN
title.jim

Binary file not shown.