ootw: can now get shot by aliens

This commit is contained in:
Vince Weaver 2019-08-22 13:20:10 -04:00
parent 82603dbf19
commit aa5a06a7d5
4 changed files with 73 additions and 3 deletions

View File

@ -2,7 +2,8 @@ TODO Before release:
====================
l2/l4 -- have aliens shoot
l2/l4 -- let physicist get show
l2/l4 -- balance alien shooting behavior
l2 -- move doors to final behavior (break room one needs to
be locked)

View File

@ -248,6 +248,38 @@ calc_gun_right_friend_continue:
done_calc_gun_right_friend_collision:
;==========================
; adjust for physicist
calc_gun_right_physicist:
lda COLLISION_X
cmp PHYSICIST_X
bcs calc_gun_right_physicist_continue ; bge
; only if closer than previous found
lda RIGHT_SHOOT_LIMIT
cmp PHYSICIST_X
bcc calc_gun_right_physicist_continue ; blt
lda PHYSICIST_STATE
cmp #P_DISINTEGRATING
beq calc_gun_right_physicist_continue
calc_gun_right_physicist_there:
lda PHYSICIST_X
sta RIGHT_SHOOT_LIMIT
; set target if hit
lda #TARGET_PHYSICIST
sta RIGHT_SHOOT_TARGET
calc_gun_right_physicist_continue:
done_calc_gun_right_physicist_collision:
;==========================
; adjust for alien
@ -459,6 +491,40 @@ calc_gun_left_friend_continue:
done_calc_gun_left_friend_collision:
;==========================
; adjust for physicist
calc_gun_left_physicist:
lda COLLISION_X
cmp PHYSICIST_X
beq calc_gun_left_physicist_continue ; ble (not w self)
bcc calc_gun_left_physicist_continue ; blt
; only if closer than previous found
lda LEFT_SHOOT_LIMIT
cmp PHYSICIST_X
bcs calc_gun_left_physicist_continue ; bge
lda PHYSICIST_STATE
cmp #P_DISINTEGRATING
beq calc_gun_left_physicist_continue
calc_gun_left_physicist_there:
lda PHYSICIST_X
sta LEFT_SHOOT_LIMIT
; set target if hit
lda #TARGET_PHYSICIST
sta LEFT_SHOOT_TARGET
calc_gun_left_physicist_continue:
done_calc_gun_left_physicist_collision:
;==========================
; adjust for alien

View File

@ -304,6 +304,9 @@ hit_something_common:
cmp #TARGET_FRIEND
beq laser_hit_friend
cmp #TARGET_PHYSICIST
beq laser_hit_physicist
; FIXME: reduce shields if hit them?
jmp done_hit_something

View File

@ -420,7 +420,7 @@ no_collapse_progress:
physicist_disintegrating:
lda GAIT
cmp #18
cmp #28
bne disintegrate_not_done
disintegrate_really_dead:
@ -438,7 +438,7 @@ disintegrate_not_done:
sta INH
lda FRAMEL
and #$1f
and #$7
bne no_disintegrate_progress
inc GAIT