diff --git a/MANUAL_EN.md b/MANUAL_EN.md index bf4c73a..d2f3a43 100644 --- a/MANUAL_EN.md +++ b/MANUAL_EN.md @@ -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!) diff --git a/MANUAL_PL.md b/MANUAL_PL.md index 2f40136..813bdca 100644 --- a/MANUAL_PL.md +++ b/MANUAL_PL.md @@ -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: diff --git a/grafproc.asm b/grafproc.asm index bfe8a78..14f10bd 100644 --- a/grafproc.asm +++ b/grafproc.asm @@ -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 diff --git a/lib/ATARISYS.ASM b/lib/ATARISYS.ASM index 5b3e8ec..83cc301 100644 --- a/lib/ATARISYS.ASM +++ b/lib/ATARISYS.ASM @@ -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 diff --git a/scorch.xex b/scorch.xex index 01939d1..63d6e72 100644 Binary files a/scorch.xex and b/scorch.xex differ diff --git a/textproc.asm b/textproc.asm index 6703e54..1d4d97f 100644 --- a/textproc.asm +++ b/textproc.asm @@ -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