From 1ad9b6760dc6a3d92055aaf3b55f2c17ead78dcb Mon Sep 17 00:00:00 2001 From: Pecusx Date: Sat, 20 Aug 2022 16:58:37 +0200 Subject: [PATCH] Small Hovercraft animation fix and updated PL manual --- instrukcjaPL.txt | 92 ++++++++++++++++++++++++----------------------- scorch.xex | Bin 51282 -> 51325 bytes weapons.asm | 19 ++++++++++ 3 files changed, 66 insertions(+), 45 deletions(-) diff --git a/instrukcjaPL.txt b/instrukcjaPL.txt index de7314f..ef3491e 100644 --- a/instrukcjaPL.txt +++ b/instrukcjaPL.txt @@ -24,6 +24,7 @@ Jeśli nazwa nie zostanie wpisana (bo np operujemy wyłącznie joystickiem), to Na tym ekranie można dokonywać zakupów broni ofensywnych i defensywnych. Widoczne są tylko te bronie na które gracza stać wraz z informacją o cenie i ilości jednostek danej broni, którą za ten cenę otrzymamy. Informacje na ekranie nie wymagają chyba więcej opisu. Po listach poruszamy się klawiszami kursora (góra i dół) lub joystickiem, klawisz [TAB] lub strzałka w lewo czy też ruch joystickiem w lewo zmieniają ekran na bronie defensywne lub ofensywne, klawisz [SPACJA] lub strzałka w prawo a także joystick w prawo realizują zakup wskazanej broni. Klawisz [RETURN] lub przycisk joysticka przechodzi do ekranu zakupów następnego gracza. (oczywiście dla graczy komputerowych ten ekran się nie pojawia) +Bezpośrednio po zakończeniu zakupów przez każdego z gracy pojawia wię ekran aktywacji broni na którym można aktywować zakupione wcześniej bronie defensywne czy też ofensywne. Obsługiwany jest identycznie jak ekran zakupów, jednak [SPACJA] lub strzałka w prawo a także joystick w prawo realizują aktywacje wskazanej broni. Umożliwia to aktywowanie osłon jeszcze przed rozpoczęciem rundy. 4. Główny ekran gry W linii statusowej widoczna jest informacja o tym który z graczy aktualnie może oddać strzał oraz zestaw innych informacji: @@ -35,11 +36,10 @@ W linii statusowej widoczna jest informacja o tym który z graczy aktualnie moż - numer aktualnej rundy rozgrywki - prędkość i kierunek wiatru - w nawiasie nazwę aktywnej broni defensywnej - jeśli jest jakaś aktywowana przez gracz -Tutaj klawiszologia jest prosta, klawisze kursora lub joustick: lewo/prawo - zmiana kąta nachylenia lufy, góra/dół - zmiana ustawienia siły strzału. +Tutaj klawiszologia jest prosta, klawisze kursora lub joystick: lewo/prawo - zmiana kąta nachylenia lufy, góra/dół - zmiana ustawienia siły strzału. [SPACJA] lub przycisk joysticka naciśnięte krótko - oddanie strzału [TAB] - wybór broni ofensywnej (ta opcja nie jest dostępna bezpośrednio joystickiem - trzeba wybrać Inventory) -klawisz [I] lub dłuższe przytrzymanie przycisku joysticka - przejście do Inventory -Inventory to ekran (a w zasadzie dwa) bliźniaczo podobny do ekranu zakupów. Zasady poruszania się są identyczne z tym, że tu nie kupujemy broni, ale wybieramy jedną z ofensywnych, którą będziemy strzelać lub aktywujemy broń defensywną. +klawisz [I] lub dłuższe przytrzymanie przycisku joysticka - przejście do Inventory (aktywacji broni). Inventory to ekran (a w zasadzie dwa) bliźniaczo podobny do ekranu zakupów. Zasady poruszania się są identyczne z tym, że tu nie kupujemy broni, ale wybieramy jedną z ofensywnych, którą będziemy strzelać lub aktywujemy broń defensywną. Klawisz [M] - wyłączenie/włączenie muzyki w tle Klawisz [S] - wyłączenie/włączenie dźwięków efektów. Klawisz [O] - wymuszenie zakończenia gry (Game Over). W podsumowaniu wyników nie jest brana pod uwagę przerwana właśnie runda rozgrywki, a wyłącznie rundy zakończone wcześniej. Odpowiada to wciśnięciu klawisza [ESC] z tą różnicą, że wyświetlane jest podsumowanie oraz creditsy. @@ -96,35 +96,35 @@ Przykładowo, jeśli czołg zostanie trafiony centralnie przy pomocy Baby Missil A oto wartości promienia rażenia (ExplosionRadius) dla poszczególnych broni: -Baby Missile - 11 -Missile - 17 -Baby Nuke - 25 -Nuke - 31 -LeapFrog - 17 15 13 -Funky Bomb - 21 11 (* 5) -MIRV - 17 (* 5) -Death's Head - 31 (* 5) -Napalm - x 40 (ta broń jest inna i nie jest wyznaczana odległość od centrum, po prostu każdy czołg znajdujący się w zasięgu płomieni traci 40 jednostek energii - zmienna ExplosionRadius nie jest używana) -Hot Napalm - x 80 (zasada taka jak w Napalm) -Baby Roller - 11 -Roller - 21 -Heavy Roller - 31 -Riot Charge - 31 -Riot Blast - 0 (tak na prawdę - 61 ale przy tych broniach nie jest brana pod uwagę przy liczeniu ubytku energii tylko szerokości gruntu do opadnięcia) -Riot Bomb - 17 -Heavy Riot Bomb - 29 -Baby Digger - 0 (60 - jak w Riot Blast) -Digger - 0 (60 - jak wyżej) -Heavy Digger - 0 (60 - jak wyżej) -Baby Sandhog - 0 (60 - jak wyżej) -Sandhog - 0 (60 - jak wyżej) -Heavy Sandhog - 0 (60 - jak wyżej) -Dirt Clod - 12 -Dirt Ball - 22 -Ton of Dirt - 31 -Liquid Dirt - 0 (może warto to zmienić?) -Dirt Charge - 0 (61 - jak wyżej) -Laser - x 100 (ale tu także jest inaczej - równo 100 tylko w przypadku bezpośredniego trafienia, zmienna ExplosionRadius nie jest używana, więc nie ma mnożenia przez 8 - po prostu odejmujemy 100 jednostek energii - czyli czołg zawsze ginie). +"Baby Missile" - 11 +"Missile" - 17 +"Baby Nuke" - 25 +"Nuke" - 31 +"LeapFrog" - 17 15 13 +"Funky Bomb" - 21 11 (* 5) +"MIRV" - 17 (* 5) +"Death's Head" - 31 (* 5) +"Napalm" - x 40 (ta broń jest inna i nie jest wyznaczana odległość od centrum, po prostu każdy czołg znajdujący się w zasięgu płomieni traci 40 jednostek energii - zmienna ExplosionRadius nie jest używana) +"Hot Napalm" - x 80 (zasada taka jak w Napalm) +"Baby Roller" - 11 +"Roller" - 21 +"Heavy Roller" - 31 +"Riot Charge" - 31 +"Riot Blast" - 0 (tak na prawdę - 61 ale przy tych broniach nie jest brana pod uwagę przy liczeniu ubytku energii tylko szerokości gruntu do opadnięcia) +"Riot Bomb" - 17 +"Heavy Riot Bomb" - 29 +"Baby Digger" - 0 (60 - jak w Riot Blast) +"Digger" - 0 (60 - jak wyżej) +"Heavy Digger" - 0 (60 - jak wyżej) +"Baby Sandhog" - 0 (60 - jak wyżej) +"Sandhog" - 0 (60 - jak wyżej) +"Heavy Sandhog" - 0 (60 - jak wyżej) +"Dirt Clod" - 12 +"Dirt Ball" - 22 +"Ton of Dirt" - 31 +"Liquid Dirt" - 0 (może warto to zmienić?) +"Dirt Charge" - 0 (61 - jak wyżej) +"Laser" - x 100 (ale tu także jest inaczej - równo 100 tylko w przypadku bezpośredniego trafienia, zmienna ExplosionRadius nie jest używana, więc nie ma mnożenia przez 8 - po prostu odejmujemy 100 jednostek energii - czyli czołg zawsze ginie). Duże punkty otrzymane przez gracza to ilość czołgów, które zginęły wcześniej niż on. Jeśli któryś z innych czołgów skapitulował wcześniej (Biała Flaga) nie jest doliczany do tych które zginęły i nie daje punktów. @@ -132,26 +132,28 @@ Tylko te punkty decydują o kolejności w podsumowaniu A teraz bronie defensywne: -White Flag - powoduje poddanie gracza (może czasem przydać się w sytuacji beznadziejnej). Zaletą jest to, że poddając się nie dajemy dużego punktu przeciwnikom i nie powodujemy, że któryś zyska na tym, że nas zgładzi, ograniczamy też stratę swojej energii czyli także kasy. I tu także ważna uwaga - to jedyna broń defensywna, którą można deaktywować. Wystarczy ponownie wejść do inventory i jeszcze raz wybrać jej aktywację. -Battery - w momencie aktywacji doładowuje energię czołgu do pełna (99 jednostek) i jednocześnie jest to jedyna broń defensywna, która nie deaktywuje innych broni defensywnych w przypadku jej użycia. -Parachute - nie chroni przed ubytkiem energii z powodu sąsiedniej eksplozji, powoduje że nie ubywa energii w czasie JEDNEGO spadania. Po takim upadku deaktywuje się i trzeba aktywować nowy spadochron. -Shield - najprostsza osłona działa dokładnie przeciwnie niż Parachute, nie chroni przed ubytkiem energii w czasie spadania, chroni za to przed ubytkiem energii spowodowanym JEDNĄ sąsiednią eksplozją. Chroni jednorazowo, bez znaczenia jak silna jest eksplozja (czy jest to tylko "draśnięcie", czy też bezpośrednie trafienie atomówką) i od razu po niej deaktywuje się. -Heavy Shield - osłona z własną energią (na starcie 99 jednostek), działa tak samo jak Shield (nie chroni przed upadkiem) z tym wyjątkiem, że ma własny zasób energii. Przy eksplozji w pierwszej kolejności zmniejszana jest energia tej osłony i jeśli dojdzie ona do 0 to osłona deaktywuje się i dalej zmniejszana jest energia czołgu. W związku z takim działaniem, czołg z tym typem osłony można "zabić" podkopując go, bo spadanie zmniejsza energię czołgu a nie osłony. -Force Shield - najmocniejsza osłona - działa tak jak Heavy Shield tyle że połączona z Parachute. Co ważne w jej przypadku upadek nie zabiera energii osłonie ani czołgowi. Zabierają ją tylko trafienia. -Bouncy Castle - broń agresywna :) . Działa następująco. W przypadku bezpośredniego trafienia w czołg (i osłonę) powoduje "odbicie" pocisku w przeciwnym kierunku z tą samą siłą z jaką był wystrzelony. W przypadku braku wiatru i różnicy poziomów broń trafia wtedy w czołg, który ją wystrzelił. Po takim odbiciu deaktywuje się. W związku z tym, że broń ta reaguje w ten sposób tylko na precyzyjne trafienia, jest także osłoną odpowiadającą działaniu Heavy Shield i ma na starcie 99 jednostek (prawdopodobnie trzeba będzie przemyśleć tę wartość i dać tu mniejszą). -Mag Deflector - druga broń agresywna :) . W przypadku bezpośredniego trafienia w czołg (i osłonę) powoduje przesunięcie punktu trafienia losowo w lewo lub prawą stronę chronionego czołgu, ale niezbyt daleko, więc można dostać "odłamkiem" przy silniejszej broni. Tak jak w przypadku Bouncy Castle jest także osłoną odpowiadającą działaniu Heavy Shield i ma na starcie 99 jednostek (prawdopodobnie i tutaj trzeba będzie przemyśleć tę wartość i dać mniejszą). -Nuclear Winter - nic nie dodaje, nic nie zabiera :) - w zasadzie to broń nie tyle defensywna co obosieczna. Zasypuje teren opadem "radioaktywnym", który jest zwyczajną glebą. Jeśli nie mamy pod ręką żadnej broni odkopującej teren i do tego osłony (najlepiej jednorazowej), to po takim "opadzie" będzie trzeba strzelić do siebie - bo będąc pod ziemią inaczej się nie da. Ewentualnie pozostaje zawsze White Flag. -Long Schlong - broń specjalna :) - kosztuje dużo, nie bardzo w czymkolwiek pomaga (poza ewentualnym odkopaniem się ale tylko przy niewielkim przysypaniu ale fanie się nazywa i wygląda :) - Można ją aktywować niezależnie od innych broni defensywnych i pozostaje aktywna do końca rundy (nie da się jej deaktywować). +"White Flag" - powoduje poddanie gracza (może czasem przydać się w sytuacji beznadziejnej). Zaletą jest to, że poddając się nie dajemy dużego punktu przeciwnikom i nie powodujemy, że któryś zyska na tym, że nas zgładzi, ograniczamy też stratę swojej energii czyli także kasy. I tu także ważna uwaga - to jedyna broń defensywna, którą można deaktywować. Wystarczy ponownie wejść do inventory i jeszcze raz wybrać jej aktywację. +"Battery" - w momencie aktywacji doładowuje energię czołgu do pełna (99 jednostek) i jednocześnie jest to jedyna broń defensywna, która nie deaktywuje innych broni defensywnych w przypadku jej użycia. +"Hovercraft" - broń umożliwiająca przemieszczanie się czołgu. Posiada własny zasób paliwa a dodatkowo może być aktywowana wielokrotnie w czasie tej samej tury, a po jej użyciu możemy w tej samej turze aktywować inną broń defensywną i oddać strzał. Po jej użyciu czołg uniesie się ponad góry i za pomocą klawiszy kursora lub joysticka: lewo/prawo możemy przemieścić czołg na nową pozycję a [SPACJA] lub przycisk joysticka powodują wylądowanie czołgu w nowym miejscu. Latać można do chwili skończenia się "paliwa" (prezentowanego na pasku statusu tak jak energia broni defensywnej), jeśli paliwo się skończy czołg opadnie samodzielnie. Nie da się lądować na innych czołgach. +"Parachute" - nie chroni przed ubytkiem energii z powodu sąsiedniej eksplozji, powoduje że nie ubywa energii w czasie JEDNEGO spadania. Po takim upadku deaktywuje się i trzeba aktywować nowy spadochron. +"Strong Parachute" - spadochron z własną energią (na starcie 99 jednostek), działa tak samo jak Parachute (nie chroni przed eksplozjami) ma za to swój własny zasób energii przy spadaniu w pierwszej kolejności zmniejszana jest energia tego spadochronu (1 jednostka na jeden pixel opadania - inaczej niż czołg!) i jeśli dojdzie ona do 0 to spadochron deaktywuje się i dalej zmniejszana jest energia czołgu (tutaj już standardowo - 2 jednoski na jeden pikxel). +"Shield" - najprostsza osłona działa dokładnie przeciwnie niż Parachute, nie chroni przed ubytkiem energii w czasie spadania, chroni za to przed ubytkiem energii spowodowanym JEDNĄ sąsiednią eksplozją. Chroni jednorazowo, bez znaczenia jak silna jest eksplozja (czy jest to tylko "draśnięcie", czy też bezpośrednie trafienie atomówką) i od razu po niej deaktywuje się. +"Heavy Shield" - osłona z własną energią (na starcie 99 jednostek), działa tak samo jak Shield (nie chroni przed upadkiem) z tym wyjątkiem, że ma własny zasób energii. Przy eksplozji w pierwszej kolejności zmniejszana jest energia tej osłony i jeśli dojdzie ona do 0 to osłona deaktywuje się i dalej zmniejszana jest energia czołgu. W związku z takim działaniem, czołg z tym typem osłony można "zabić" podkopując go, bo spadanie zmniejsza energię czołgu a nie osłony. +"Force Shield" - najmocniejsza osłona - działa tak jak Heavy Shield tyle że połączona z Parachute. Co ważne w jej przypadku upadek nie zabiera energii osłonie ani czołgowi. Zabierają ją tylko trafienia. +"Bouncy Castle" - broń agresywna :) . Działa następująco. W przypadku bezpośredniego trafienia w czołg (i osłonę) powoduje "odbicie" pocisku w przeciwnym kierunku z tą samą siłą z jaką był wystrzelony. W przypadku braku wiatru i różnicy poziomów broń trafia wtedy w czołg, który ją wystrzelił. Po takim odbiciu deaktywuje się. W związku z tym, że broń ta reaguje w ten sposób tylko na precyzyjne trafienia, jest także osłoną odpowiadającą działaniu Heavy Shield i ma na starcie 99 jednostek (prawdopodobnie trzeba będzie przemyśleć tę wartość i dać tu mniejszą). +"Mag Deflector" - druga broń agresywna :) . W przypadku bezpośredniego trafienia w czołg (i osłonę) powoduje przesunięcie punktu trafienia losowo w lewo lub prawą stronę chronionego czołgu, ale niezbyt daleko, więc można dostać "odłamkiem" przy silniejszej broni. Tak jak w przypadku Bouncy Castle jest także osłoną odpowiadającą działaniu Heavy Shield i ma na starcie 99 jednostek (prawdopodobnie i tutaj trzeba będzie przemyśleć tę wartość i dać mniejszą). +"Nuclear Winter" - nic nie dodaje, nic nie zabiera :) - w zasadzie to broń nie tyle defensywna co obosieczna. Zasypuje teren opadem "radioaktywnym", który jest zwyczajną glebą. Jeśli nie mamy pod ręką żadnej broni odkopującej teren i do tego osłony (najlepiej jednorazowej), to po takim "opadzie" będzie trzeba strzelić do siebie - bo będąc pod ziemią inaczej się nie da. Ewentualnie pozostaje zawsze White Flag. +"Long Schlong" - broń specjalna :) - kosztuje dużo, nie bardzo w czymkolwiek pomaga (poza ewentualnym odkopaniem się ale tylko przy niewielkim przysypaniu ale fanie się nazywa i wygląda :) - Można ją aktywować niezależnie od innych broni defensywnych i pozostaje aktywna do końca rundy (nie da się jej deaktywować). W związku z odmiennym działaniem broni MIRV, Auto Defense i Mag Deflector wykorzystują tylko funkcję osłony przy trafieniu tą bronią. Dodatkowo, żadna z osłon nie chroni przed Napalmem. Auto Defense czy Mag Deflector przy bezpośrednim trafieniu odbije je lub przeniesie obok, ale wystarczy trafić bardzo blisko czołgu i nie zadziała jego osłona. -Bronie White Flag i Nuclear Winter po aktywacji wymagają uruchomienia, jest to realizowanie przez "oddanie strzału" po aktywacji tej broni. Oczywiście strzał bronią ofensywną nie jest wtedy oddawany, a jedynie uruchamiana jest wybrana broń defensywna. +Bronie White Flag, Hovercraft i Nuclear Winter po aktywacji wymagają uruchomienia, jest to realizowanie przez "oddanie strzału" po aktywacji tej broni. Oczywiście strzał bronią ofensywną nie jest wtedy oddawany, a jedynie uruchamiana jest wybrana broń defensywna. Można mieć aktywną tylko jedną broń defensywną w danej chwili (za wyjątkiem Long Schlong oczywiście :) ). Zawsze przed oddaniem strzału możemy zmienić decyzję i aktywować inną broni defensywną czy też dezaktywować White Flag. Oczywiście aktywacja broni w momencie kiedy mamy już aktywowaną jakąś inną powoduje utratę tej poprzedniej (nie ma zwrotów :) ). - - +Bronie 'inne' :) : +"Buy me!" - tej 'broni' nie można używać w rozgrywce. Jej zakup powoduje wylosowanie jesdnej z broni ofensywnych lub (żadziej) defensywnych i dodanie jej do arsenału gracza. Jest to loteria w kktórej można stracić (jeśli wylosuje się broń tańsza niż cena "Buy Me!" ale też zyskać. Jeśli wylosuje się broń dużo droższa możemy otrzymać do dyspozycji broń, na którą nie było nas stać! \ No newline at end of file diff --git a/scorch.xex b/scorch.xex index 52781be1853b09262aa5dfe9d5ca2aedc821392e..46a6a1ec9b43d7037deee701e689ff8690baa4d1 100644 GIT binary patch delta 14747 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 M^0j%d{c!vL2h_cP6aWAK delta 14548 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 diff --git a/weapons.asm b/weapons.asm index 9029b07..34c2b28 100644 --- a/weapons.asm +++ b/weapons.asm @@ -2629,6 +2629,25 @@ TankOnRightSide TankOnLeftSide sty FloatingAlt ; I know, not elegant byt this variable it's free now (0 go right, $ff go left) ; now we have direction of bypassing tanks on screen + ; clear "engine pixels" under tank + lda XtankstableL,x + sta xdraw + lda XtankstableH,x + sta xdraw+1 + clc + lda Ytankstable,x + adc #1 + sta ydraw + mva #0 ydraw+1 + sta color + ; draw horizontal line + mva #8 temp +@ + jsr plot + inw xdraw + dec temp + bne @- + ldx TankNr ; first check if we over any tank ; Warning! in xdraw wird we have position of floating tank (after DrawTankNr) CheckForTanksBelow