New weapon "Punch" #68 (replaces Baby Sandhog)

This commit is contained in:
Pecusx
2023-05-30 10:24:45 +02:00
parent 09f05f783e
commit 00adbc4cfc
7 changed files with 70 additions and 61 deletions
Binary file not shown.
+32 -33
View File
@@ -252,7 +252,6 @@ WeaponPriceH ; weapons prices (tables with prices of weapons)
.by >price_Baby_Digger
.by >price_Digger
.by >price_Heavy_Digger
.by >price_Baby_Sandhog
.by >price_Sandhog
.by >price_Heavy_Sandhog
.by >price_Dirt_Clod
@@ -260,6 +259,7 @@ WeaponPriceH ; weapons prices (tables with prices of weapons)
.by >price_Ton_of_Dirt
.by >price_Liquid_Dirt
.by >price_Dirt_Charge
.by >price_Punch
.by >price_Buy_me
.by >price_Laser
.by >price_White_Flag
@@ -301,7 +301,6 @@ WeaponPriceL
.by <price_Baby_Digger
.by <price_Digger
.by <price_Heavy_Digger
.by <price_Baby_Sandhog
.by <price_Sandhog
.by <price_Heavy_Sandhog
.by <price_Dirt_Clod
@@ -309,6 +308,7 @@ WeaponPriceL
.by <price_Ton_of_Dirt
.by <price_Liquid_Dirt
.by <price_Dirt_Charge
.by <price_Punch
.by <price_Buy_me
.by <price_Laser
.by <price_White_Flag
@@ -357,14 +357,14 @@ WeaponUnits
.by 10 ;Baby_Digger ;_19
.by 5 ;Digger ;_20
.by 2 ;Heavy_Digger ;_21
.by 10 ;Baby_Sandhog ;_22
.by 5 ;Sandhog ;_23
.by 2 ;Heavy_Sandhog ;_24
.by 5 ;Dirt_Clod ;_25
.by 3 ;Dirt_Ball ;_26
.by 1 ;Ton_of_Dirt ;_27
.by 4 ;Liquid_Dirt ;_28
.by 2 ;Dirt_Charge ;_29
.by 5 ;Sandhog ;_22
.by 2 ;Heavy_Sandhog ;_23
.by 5 ;Dirt_Clod ;_24
.by 3 ;Dirt_Ball ;_25
.by 1 ;Ton_of_Dirt ;_26
.by 4 ;Liquid_Dirt ;_27
.by 2 ;Dirt_Charge ;_28
.by 10 ;Punch ;_29
.by 1 ;Buy_me ;_30
.by 5 ;Laser ;_31
.by 1 ;White_Flag ;_32
@@ -393,10 +393,10 @@ PurchaseMeTable ;weapons good to be purchased by the robot
; "Baby Roller ","Roller ","Heavy Roller ","Riot Charge "
.by %11001110
; "Riot Blast ","Riot Bomb ","Heavy Riot Bomb ","Baby Digger "
; "Digger ","Heavy Digger ","Baby Sandhog ","Sandhog "
; "Digger ","Heavy Digger ","Sandhog ","Heavy Sandhog "
.by %00000000
; "Heavy Sandhog ","Dirt Clod ","Dirt Ball ","Ton of Dirt "
; "Liquid Dirt ","Dirt Charge ","Buy me! ","Laser "
; "Dirt Clod ","Dirt Ball ","Ton of Dirt ","Liquid Dirt "
; "Dirt Charge ","Punch ","Buy me! ","Laser "
.by %00000000
; "White Flag ","Battery ","Hovercraft ","Parachute "
; "Strong Parachute","Mag Deflector ","Shield ","Heavy Shield "
@@ -414,10 +414,10 @@ PurchaseMeTable2 ;weapons good to be purchased by the robot (Cyborg)
; "Baby Roller ","Roller ","Heavy Roller ","Riot Charge "
.by %01000000
; "Riot Blast ","Riot Bomb ","Heavy Riot Bomb ","Baby Digger "
; "Digger ","Heavy Digger ","Baby Sandhog ","Sandhog "
; "Digger ","Heavy Digger ","Sandhog ","Heavy Sandhog "
.by %00000000
; "Heavy Sandhog ","Dirt Clod ","Dirt Ball ","Ton of Dirt "
; "Liquid Dirt ","Dirt Charge ","Buy me! ","Laser "
; "Dirt Clod ","Dirt Ball ","Ton of Dirt ","Liquid Dirt "
; "Dirt Charge ","Punch ","Buy me! ","Laser "
.by %00000000
; "White Flag ","Battery ","Hovercraft ","Parachute "
; "Strong Parachute","Mag Deflector ","Shield ","Heavy Shield "
@@ -451,14 +451,14 @@ WeaponSymbols
.by $53 ;ind_Baby_Digger ;_19
.by $54 ;ind_Digger ;_20
.by $55 ;ind_Heavy_Digger ;_21
.by $56 ;ind_Baby_Sandhog ;_22
.by $57 ;ind_Sandhog ;_23
.by $58 ;ind_Heavy_Sandhog ;_24
.by $59 ;ind_Dirt_Clod ;_25
.by $5a ;ind_Dirt_Ball ;_26
.by $5b ;ind_Ton_of_Dirt ;_27
.by $60 ;ind_Liquid_Dirt ;_28
.by $7b ;ind_Dirt_Charge ;_29
.by $57 ;ind_Sandhog ;_22
.by $58 ;ind_Heavy_Sandhog ;_23
.by $59 ;ind_Dirt_Clod ;_24
.by $5a ;ind_Dirt_Ball ;_25
.by $5b ;ind_Ton_of_Dirt ;_26
.by $60 ;ind_Liquid_Dirt ;_27
.by $7b ;ind_Dirt_Charge ;_28
.by $56 ;ind_Punch ;_29
.by $1f ;ind_Buy_me ;_30
.by $20 ;ind_Laser ;_31
.by $5f ;ind_White_Flag ;_32
@@ -502,14 +502,14 @@ NamesOfWeapons ;the comment is an index in the tables
dta d"Baby Digger " ; 19
dta d"Digger " ; 20
dta d"Heavy Digger " ; 21
dta d"Baby Sandhog " ; 22
dta d"Sandhog " ; 23
dta d"Heavy Sandhog " ; 24
dta d"Dirt Clod " ; 25
dta d"Dirt Ball " ; 26
dta d"Ton of Dirt " ; 27
dta d"Liquid Dirt " ; 28
dta d"Dirt Charge " ; 29
dta d"Sandhog " ; 22
dta d"Heavy Sandhog " ; 23
dta d"Dirt Clod " ; 24
dta d"Dirt Ball " ; 25
dta d"Ton of Dirt " ; 26
dta d"Liquid Dirt " ; 27
dta d"Dirt Charge " ; 28
dta d"Punch " ; 29
dta d"Best F...g Gifts" ; 30
dta d"Laser " ; 31
;------defensives
@@ -558,7 +558,6 @@ weaponsOfDeath ; weapons used in tank death animations
dta ind_Baby_Digger
dta ind_Digger
dta ind_Heavy_Digger
dta ind_Baby_Sandhog
dta ind_Sandhog
dta ind_Heavy_Sandhog
dta ind_Dirt_Clod
+16 -16
View File
@@ -63,14 +63,14 @@ price_Heavy_Riot_Bomb = 272 ;_18
price_Baby_Digger = 136 ;_19
price_Digger = 176 ;_20
price_Heavy_Digger = 207 ;_21
price_Baby_Sandhog = 158 ;_22
price_Sandhog = 191 ;_23
price_Heavy_Sandhog = 223 ;_24
price_Dirt_Clod = 104 ;_25
price_Dirt_Ball = 130 ;_26
price_Ton_of_Dirt = 171 ;_27
price_Liquid_Dirt = 330 ;_28
price_Dirt_Charge = 343 ;_29
price_Sandhog = 191 ;_22
price_Heavy_Sandhog = 223 ;_23
price_Dirt_Clod = 104 ;_24
price_Dirt_Ball = 130 ;_25
price_Ton_of_Dirt = 171 ;_26
price_Liquid_Dirt = 330 ;_27
price_Dirt_Charge = 343 ;_28
price_Punch = 158 ;_29
price_Buy_me = 170 ;_30
price_Laser = 277 ;_31
price_White_Flag = $0 ;_32
@@ -113,14 +113,14 @@ ind_Heavy_Riot_Bomb = 18
ind_Baby_Digger = 19
ind_Digger = 20
ind_Heavy_Digger = 21
ind_Baby_Sandhog = 22
ind_Sandhog = 23
ind_Heavy_Sandhog = 24
ind_Dirt_Clod = 25
ind_Dirt_Ball = 26
ind_Ton_of_Dirt = 27
ind_Liquid_Dirt = 28
ind_Dirt_Charge = 29
ind_Sandhog = 22
ind_Heavy_Sandhog = 23
ind_Dirt_Clod = 24
ind_Dirt_Ball = 25
ind_Ton_of_Dirt = 26
ind_Liquid_Dirt = 27
ind_Dirt_Charge = 28
ind_Punch = 29
ind_Buy_me = 30
ind_Laser = 31
last_offensive = ind_Laser
+1 -1
View File
@@ -423,7 +423,7 @@ ShootNow
lda ActiveWeapon,x
cmp #ind_Buy_me ; BFG
beq WeponNoFlight ; but with explosion
cmp #ind_Baby_Sandhog ; Punch
cmp #ind_Punch ; Punch
beq WeponNoFlight ; but with explosion
jsr Shoot ; bullet flight
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
+21 -11
View File
@@ -44,14 +44,14 @@ ExplosionRoutines
.word babydigger-1 ;Baby_Digger ;_19
.word digger-1 ;Digger ;_20
.word heavydigger-1 ;Heavy_Digger ;_21
.word punch-1 ;Baby_Sandhog ;_22
.word sandhog-1 ;Sandhog ;_23
.word heavysandhog-1 ;Heavy_Sandhog ;_24
.word dirtclod-1 ;Dirt_Clod ;_25
.word dirtball-1 ;Dirt_Ball ;_26
.word tonofdirt-1 ;Ton_of_Dirt ;_27
.word liquiddirt-1 ;Liquid_Dirt ;_28
.word dirtcharge-1 ;Dirt_Charge ;_29
.word sandhog-1 ;Sandhog ;_22
.word heavysandhog-1 ;Heavy_Sandhog ;_23
.word dirtclod-1 ;Dirt_Clod ;_24
.word dirtball-1 ;Dirt_Ball ;_25
.word tonofdirt-1 ;Ton_of_Dirt ;_26
.word liquiddirt-1 ;Liquid_Dirt ;_27
.word dirtcharge-1 ;Dirt_Charge ;_28
.word punch-1 ;Baby_Sandhog ;_29
.word BFG-1 ;Buy_me ;_30
.word laser-1 ;Laser ;_31
@@ -1062,12 +1062,21 @@ EndOfTheDirt
mva #sfx_baby_missile sfx_effect
mva #15 ExplosionRadius
; Hoop
lda ytankstable,x
cmp #13+15 ; Check if tank is too high (13 - tank with shield, 15 - Jump)
bcs TooHighNoJump
; Jump
; 15 pixels up
@ jsr ClearTankNr
dec ytankstable,x
jsr PutTankNr
; jsr WaitOneFrame
lda ExplosionRadius
cmp #5
bcs Physics
jsr WaitOneFrame
Physics
dec ExplosionRadius
bne @-
; ans down
@@ -1078,6 +1087,7 @@ EndOfTheDirt
dec ExplosionRadius
bne @-
TooHighNoJump
mva #sfx_dirt_chrg_s sfx_effect
mva #32 ExplosionRadius
@@ -1090,7 +1100,7 @@ CheckingNextTank
lda eXistenZ,y
beq DeadTank
cpy TankNr
beq NotMy
beq Myself
; it's not dead tank - check range
mva #0 temp2 ; tank direction (0 - on right side, $ff - on left side)
sec
@@ -1152,7 +1162,7 @@ TankPunched
ply
stx TankNr
TooFar
NotMy
Myself
DeadTank
dey
jpl CheckingNextTank