mirror of
https://github.com/dschmenk/PLASMA.git
synced 2025-03-27 18:35:06 +00:00
Shooting spiderwebs
This commit is contained in:
parent
42888ed95a
commit
e9a1311764
@ -102,7 +102,7 @@ def game(spdrcnt)#0
|
||||
var[14] xspdr, yspdr, ixspdr, iyspdr, hatch
|
||||
var xship, xmissle, attack
|
||||
byte yship, ymissle
|
||||
byte spdrnum, k, xdelta, ydelta, btn0, btn1
|
||||
byte spdrnum, k, xdelta, ydelta, btn0, btn1, webstate
|
||||
|
||||
xship = 140
|
||||
ymissle = 255
|
||||
@ -112,6 +112,7 @@ def game(spdrcnt)#0
|
||||
iyspdr[0] = -1
|
||||
hatch[0] = 1
|
||||
attack = -1
|
||||
webstate = 0
|
||||
spdrnum = spdrcnt - 1
|
||||
for k = 1 to spdrnum
|
||||
spriteAdd(k + 8, spriteDup(sprtEgg))
|
||||
@ -141,11 +142,43 @@ def game(spdrcnt)#0
|
||||
fin
|
||||
if attack == k
|
||||
if yspdr[k] > 160
|
||||
iyspdr[k] = -8 // Retreat
|
||||
//
|
||||
// Iterate through web sequence
|
||||
//
|
||||
when webstate
|
||||
is 10
|
||||
iyspdr[k] = -8 // Retreat
|
||||
yspdr[k] = 160
|
||||
spriteDel(2)
|
||||
spriteDel(3)
|
||||
spriteDel(4)
|
||||
webstate = 0
|
||||
break
|
||||
is 0
|
||||
iyspdr[k] = 0
|
||||
spriteAdd(2, sprtWeb1)
|
||||
spritePosIndex(xspdr[k], 160, 2)
|
||||
webstate = 1
|
||||
break
|
||||
is 1
|
||||
spriteAdd(3, sprtWeb2)
|
||||
spritePosIndex(xspdr[k], 168, 3)
|
||||
webstate = 2
|
||||
break
|
||||
is 2
|
||||
spriteAdd(4, sprtWeb3)
|
||||
spritePosIndex(xspdr[k], 176, 4)
|
||||
webstate = 3
|
||||
otherwise
|
||||
if xship >= xspdr[k] - 10 and xship <= xspdr[k] + 10
|
||||
return
|
||||
fin
|
||||
webstate++
|
||||
wend
|
||||
fin
|
||||
if iyspdr[k] > 0 // Attacking
|
||||
xspdr[k] = xspdr[k] + (xship - xspdr[k]) / 8
|
||||
else // Retreating
|
||||
elsif iyspdr[k] < 0 // Retreating
|
||||
if ixspdr[k] > 0
|
||||
xspdr[k] = xspdr[k] + (160 - yspdr[k]) / 8
|
||||
else
|
||||
@ -198,7 +231,7 @@ def game(spdrcnt)#0
|
||||
spritePosIndex(xmissle, ymissle, 1)
|
||||
for k = 0 to spdrnum
|
||||
if yspdr[k] <> 255
|
||||
if ymissle >= yspdr[k] - 7 and ymissle <= yspdr[k] + 6
|
||||
if ymissle >= yspdr[k] - 15 and ymissle <= yspdr[k] + 5
|
||||
if xmissle >= xspdr[k] - 10 and xmissle <= xspdr[k] + 10
|
||||
//
|
||||
// Hit
|
||||
|
Loading…
x
Reference in New Issue
Block a user