Background color indicates type of walls.

This commit is contained in:
Pecusx
2022-08-24 08:56:36 +02:00
parent d2b412e860
commit 86ae6d55b9
6 changed files with 24 additions and 17 deletions
+9 -8
View File
@@ -14,11 +14,12 @@ On the first screen, you can configure gameplay options:
* frequency of suicides :) - if for a number of turns the game has not recorded hits (tanks are constantly shooting inaccurately), after one of such misses a tank commits suicide - here you determine how long they can "shooting for the stars" :) - if only people play the optimal setting is "norm", in the case of computer-controlled players ... you choose.
* The height (and undulation) of the mountains from almost flat (NL - Kingdom of the Netherlands), to soaring and high (NP - Federal Democratic Republic of Nepal)
* the way the walls (edges of the screen) work:
1. none - projectiles that flew off the screen do not return
2. wrap - the screen "wraps" and projectiles that flew to the right appear on the left side (and vice versa)
3. bump - the right and left walls deflect projectiles that want to fly through them
4. boxy - just like bump, except that the "ceiling" also reflects projectiles
5. rand - at the beginning of each round, one of the above 4 ways the walls work is drawn.
* none - projectiles that flew off the screen do not return
* wrap - the screen "wraps" and projectiles that flew to the right appear on the left side (and vice versa)
* bump - the right and left walls deflect projectiles that want to fly through them
* boxy - just like bump, except that the "ceiling" also reflects projectiles
* rand - at the beginning of each round, one of the above 4 ways the walls work is drawn.
During gameplay, the current mode of the walls is represented by the color of the screen frame: none - black, wrap - purple, bump - blue, boxy - green.
Translated with www.DeepL.com/Translator (free version)
Select options with cursor keys or joystick.
@@ -71,9 +72,9 @@ And here's a rundown of the description of how each weapon works, scoring rules,
### First, what we know about tank energy
- Tanks have energy (and Ogres have layers - like an onion) - 99 units at the start of a round.
- Energy of tanks is depleted in 3 ways:
1. one unit after firing each shot,
2. while falling (one pixel down takes 2 units of energy),
3. when a projectile hits a tank or its proximity. The amount of energy subtracted depends on the distance from the center of the explosion and the type/power of the projectile.
* one unit after firing each shot,
* while falling (one pixel down takes 2 units of energy),
* when a projectile hits a tank or its proximity. The amount of energy subtracted depends on the distance from the center of the explosion and the type/power of the projectile.
### How energy subtraction works (and makes money!)
+9 -9
View File
@@ -13,12 +13,12 @@ Na pierwszym ekranie możemy skonfigurować opcje rozgrywwki:
* częstotliwość samobójstw :) - jeśli przez ileś tur gra nie odnotowała trafień (czołgi ciągle strzelają niecelnie) jeden z takich pudłujących czołgów popełnia samobójstwo - tu określamy jak długo mogą “strzelać w próżnię” :) - jeśli grają tylko ludzie optymalne ustawienie to “norm”, w przypadku graczy sterowanych przez komputer… wedle uznania.
* wysokość (i pofałdowanie) gór od prawie płaskich (NL - Królestwo Niderlandów), do strzelistych i wysokich (NP - Federalna Demokratyczna Republika Nepalu)
* sposób działania ścian (krawędzi ekranu):
1. none - pociski, które wyleciały poza ekran nie wracają
2. wrap - ekran "zawija się" i pociski, które wyleciały w prawo pojawiają się z lewej strony (i odwrotnie)
3. bump - prawa i lewa ściana odbijają pociski, które chcą przez nie przelecieć
4. boxy - tak jak bump, tyle że "sufit" także odbija pociski
5. rand - na początku każdej rundy losowany jest jeden z 4 powyższych sposobów działania ścian
* none - pociski, które wyleciały poza ekran nie wracają
* wrap - ekran "zawija się" i pociski, które wyleciały w prawo pojawiają się z lewej strony (i odwrotnie)
* bump - prawa i lewa ściana odbijają pociski, które chcą przez nie przelecieć
* boxy - tak jak bump, tyle że "sufit" także odbija pociski
* rand - na początku każdej rundy losowany jest jeden z 4 powyższych sposobów działania ścian
W trakcie rozgrywki aktualny sposób działania ścian reprezentowany jest przez kolor ramki ekranu: none - czarny, wrap - fioletowy, bump - niebieski, boxy - zielony.
Wybór opcji klawiszami kursora lub joystickiem.
@@ -69,9 +69,9 @@ A tutaj zręby opisu działania poszczególnych broni, zasad punktacji itp:
### Najpierw co wiemy o energii czołgów
- Czołgi mają energię (a Ogry warstwy - jak cebula) - na starcie 99 jednostek
- Energii czołgom ubywa na 3 sposoby:
1. jedna jednostka po oddaniu każdego strzału
2. w czasie spadania (jeden piksel w dół 2 jednostki)
3. w chwili trafienia w czołg lub obok niego jakiegoś pocisku - i tu ilość odejmowanej energii zależy od odległości od centrum eksplozji i typu/siły rażenia pocisku.
* jedna jednostka po oddaniu każdego strzału
* w czasie spadania (jeden piksel w dół 2 jednostki)
* w chwili trafienia w czołg lub obok niego jakiegoś pocisku - i tu ilość odejmowanej energii zależy od odległości od centrum eksplozji i typu/siły rażenia pocisku.
### Jak działa odejmowanie energii (i zarabianie kasy!)
Po każdej rundzie wyliczana jest ilość zdobytych/straconych pieniędzy robione jest to na podstawie dwóch zmiennych gromadzonych przez każdy z czołgów w trakcie rundy. Te zmienne to:
+1
View File
@@ -2019,6 +2019,7 @@ EndPut4x4
; and #$fc
; ora #$02 ; 2=normal, 3 = wide screen width
sta dmactls
mva WallsType COLBAKS ; set color of background
jsr WaitOneFrame
rts
.endp
+1
View File
@@ -350,6 +350,7 @@ COLOR1 EQU $02C5
COLOR2 EQU $02C6
COLOR3 EQU $02C7
COLOR4 EQU $02C8
COLBAKS EQU COLOR4
RUNADR EQU $02C9 ;LOADER
HIUSED EQU $02CB ;LOADER
ZHIUSE EQU $02CD ;LOADER
BIN
View File
Binary file not shown.
+4
View File
@@ -29,6 +29,7 @@
mva #TextBackgroundColor COLOR2
jsr ColorsOfSprites
mva #$ca COLOR1
mva #$00 COLBAKS ; set color of background
VDLI DLIinterruptOptions ; jsr SetDLI for Options text screen
@@ -311,6 +312,7 @@ GoToActivation
; there is a tank (player) number in tanknr
; we are displaying name of the player
ldy #0
sty COLBAKS ; set color of background
lda tanknr
:3 asl ; 8 chars per name
tax
@@ -1042,6 +1044,7 @@ NoArrowDown
VDLI DLIinterruptText ; jsr SetDLI for text (names) screen
mva #0 TankNr
sta COLBAKS ; set color of background
@ tax
lda TankStatusColoursTable,x
sta COLOR2 ; set color of player name line
@@ -1915,6 +1918,7 @@ FinishResultDisplay
jsr SetPMWidth
jsr ColorsOfSprites
mva #0 COLOR1
sta COLBAKS ; set color of background
sta CreditsVScrol
mva #TextForegroundColor COLOR2
VDLI DLIinterruptGameOver ; jsr SetDLI for Game Over screen