manual chapter delay jump

This commit is contained in:
2023-08-11 09:52:41 -04:00
parent 9af0a9051c
commit 98e6e7ee49
7 changed files with 35 additions and 5 deletions
Binary file not shown.
+1
View File
@@ -338,6 +338,7 @@ The game has 8 difficulty levels of computer-controlled opponents. Or actually 7
* **Unknown** - Before firing each shot, he randomly chooses a course of action from **Poolshark** to **Cyborg** and applies his tactics. However, the tactics of weapon purchases are always identical to **Tosser**.
### AI weapon purchase
Buying a weapon (offensive or defensive) works as follows:
First, one of the weapons is drawn (among all possible offensive or defensive weapons). Then a check is performed to see if the drawn weapon is in the list of weapons possible for purchase by the tank. If not, no weapon is bought in this trial, and if so, its price is checked. If the tank has that much money, the weapon is bought, otherwise the trial ends without making a purchase.
Binary file not shown.
+1 -1
View File
@@ -340,8 +340,8 @@ Gra posiada 8 poziomów trudności przeciwników sterowanych przez komputer. A w
* **Unknown** - Przed oddaniem każdego strzału losowo wybiera sposób działania od **Poolsharka** do **Cyborga** i stosuje jego taktykę. Taktyka zakupów broni jest jednak zawsze identyczna jak **Tosser**
### AI idzie na zakupy
Próba zakupu broni (ofensywnej lub defensywnej) wygląda następująco:
Na początku losowana jest jedna z broni (wśród wszystkich możliwych ofensywnych lub defensywnych). Następnie wykonywane jest sprawdzenie, czy wylosowana broń jest na liście broni możliwych do zakupu przez czołg. Jeśli nie, to w tej próbie żadna broń nie jest kupowana, a jeśli tak, to sprawdzana jest jej cena. Jeśli czołg ma tyle pieniędzy, broń jest kupowana, w przeciwnym wypadku próba kończy się bez dokonania zakupu.
Tabela broni kupowanych przez **Shooter**, **Poolshark**, **Tosser** i **Chooser**
+30 -1
View File
@@ -8,6 +8,8 @@
screen_height = 26
screen_width = 40
screen = $1000 ; start - 40*screen_height
KeyRepeatSpeed = 15 ; (max 127 !!!)
STEREOMODE equ 0
@@ -160,7 +162,7 @@ prev_letter
jmp prev_letter
prev_chapter_found
mwa temp top_src
jsr WaitForKeyRelease
jmp main_loop
next_chapter
@@ -180,6 +182,7 @@ next_letter
jmp next_letter
next_chapter_found
mwa temp top_src
jsr WaitForKeyRelease
jmp main_loop
;--------------------------------------------------
.proc MakeScreenCopy
@@ -324,9 +327,33 @@ Check2button
rts
.endp
;--------------------------------------------------
.proc WaitForKeyRelease
;--------------------------------------------------
mva #128-KeyRepeatSpeed pressTimer ; tricky
StillWait
bit pressTimer
bmi KeyReleased
lda STICK0
and #$0f
cmp #$0f
bne StillWait
lda STRIG0
beq StillWait
lda SKSTAT
cmp #$ff
bne StillWait
lda CONSOL
and #%00000110 ; Select and Option only
cmp #%00000110
bne StillWait
KeyReleased
rts
.endp
;--------------------------------------------------
.proc VBLANK ;vertical blank interrupt
;--------------------------------------------------
lda ticksPerSecond
cmp #60
bne PALMusic
@@ -335,6 +362,7 @@ Check2button
and #%00000111
beq skipSoundFrame
PALMusic
bit:smi:inc pressTimer ; timer halted if >127. max time measured 2.5 s
;lda ticks
;and #%00000011
;beq skipSoundFrame
@@ -412,6 +440,7 @@ paddlestate .byte 0
ticks .byte 0
ticksPerSecond .byte 0
fake_pokey :9 .byte 0
pressTimer .byte 0
man_text
Binary file not shown.
Binary file not shown.