diff --git a/README.md b/README.md index 90ce040..3e68597 100755 --- a/README.md +++ b/README.md @@ -7,6 +7,13 @@ by Tomasz 'Pecus' Pecko and Pawel 'pirx' Kalinowski Warsaw, Miami 2000, 2001, 2002, 2003, 2009, 2012, 2013, 2022 +Contributors: +Kaz - splash screen, ideas +Adam - font, ideas +Emkay - splash screen music +Miker - game sfx, ideas +Bocianu - important ideas, FujiNet implementation + You can contact us at pecus@poczta.fm or pirx@5oft.pl home page of this project is https://github.com/pkali/scorch_src @@ -39,6 +46,20 @@ With the advent of fujinet (https://fujinet.online/) we are thinking about makin ## Changes: +###### Build 138 +2022-05-09 +The post midnight release with great, heavy new features: +- https://github.com/pkali/scorch_src/issues/48, https://github.com/pkali/scorch_src/issues/10 - thanks to Miker we have a bunch of fresh sound effects. Not everything is perfectly implemented, but the game definitely got nicer! Thank you again Miker! +- https://github.com/pkali/scorch_src/issues/42 New weapon - Liquid Dirt by Pecus. Try it from directly from the weapon store! +- (fix) https://github.com/pkali/scorch_src/issues/53 - non-existing weapons are not displayed. This makes the defense menu empty when you are poor, but it is still better than the old way with "$0" prices +- (fix) https://github.com/pkali/scorch_src/issues/49 - seppuku should always kill now + +###### Build 138 +2022-05-02 +- new version of font from Adam +- 80's style background gradient +- roller procedure refactored in preparation to liquid dirt + ###### Build 137 2022-04-29 Premature release due to a trip to Atlanta on weekend. diff --git a/artwork/sfx/scorch_trial0d1_stripped.rmt b/artwork/sfx/scorch_trial0e_stripped.rmt similarity index 88% rename from artwork/sfx/scorch_trial0d1_stripped.rmt rename to artwork/sfx/scorch_trial0e_stripped.rmt index d580321..b2d6ae3 100644 Binary files a/artwork/sfx/scorch_trial0d1_stripped.rmt and b/artwork/sfx/scorch_trial0e_stripped.rmt differ diff --git a/constants.asm b/constants.asm index d4fff35..265607f 100644 --- a/constants.asm +++ b/constants.asm @@ -801,7 +801,7 @@ WeaponUnits .by 10 ;Dirt_Clod______ .by 5 ;Dirt_Ball______ .by 2 ;Ton_of_Dirt____ - .by 2 ;Liquid_Dirt____ + .by 4 ;Liquid_Dirt____ .by 2 ;Dirt_Charge____ .by 10 ;Earth_Disrupter .by 5 ;Plasma_Blast___ diff --git a/definitions.asm b/definitions.asm index 169c730..697bb72 100644 --- a/definitions.asm +++ b/definitions.asm @@ -39,7 +39,7 @@ price_Heavy_Sandhog__ = 305 ;_24 price_Dirt_Clod______ = 104 ;_25 price_Dirt_Ball______ = 130 ;_26 price_Ton_of_Dirt____ = 171 ;_27 -price_Liquid_Dirt____ = 100; 530 ;_28 +price_Liquid_Dirt____ = 530 ;_28 price_Dirt_Charge____ = 581 ;_29 price_Earth_Disrupter = $ffff ;430 ;_30 price_Plasma_Blast___ = $ffff ;274 ;_31 @@ -105,3 +105,4 @@ sfx_purchase = $17 sfx_keyclick = $18 sfx_shoot = $19 sfx_seppuku = $1a +sfx_liquid_dirt = $1b diff --git a/display.asm b/display.asm index ef03629..9e10a46 100755 --- a/display.asm +++ b/display.asm @@ -144,7 +144,7 @@ EmptyLine LastLine :40 dta $ff ; ------------------------------------------------- - .ALIGN $1000 + .ALIGN $1000 ; WARNING!!!! 4KiB barrier crossing here, might need reassignment!!! NameScreen dta d" Enter names of players " dta d" Tank 01 Name:" @@ -169,7 +169,7 @@ textbuffer dta d"Energy: 99 Angle: <99> Force: 9999 " dta d" Round: 99 Wind: <99> " textbuffer2 - dta d"Player: ******** Cash: 99999 " + dta d"Player: ******** Cash: 99990 " dta d"----------------------------------------" diff --git a/scorch.asm b/scorch.asm index 10182c9..fddb710 100644 --- a/scorch.asm +++ b/scorch.asm @@ -36,7 +36,7 @@ ;we decided it must go in 'English' to let other people work on it .macro build - dta d"138" ; number of this build (3 bytes) + dta d"139" ; number of this build (3 bytes) .endm icl 'definitions.asm' @@ -550,6 +550,8 @@ PlayersAgain .proc ; OK, text how to do it is ready, now comes coding . ; Aaaah! - in the main loop we have to set eXistenZ and LASTeXistenZ + mva #sfx_next_player sfx_effect + ldx NumberOfPlayers dex CheckingPlayersDeath @@ -1224,7 +1226,7 @@ TankFont MODUL equ $b000 ;address of RMT module opt h- ;RMT module is standard Atari binary file already - ins "artwork/sfx/scorch_trial0d1_stripped.rmt" ;include music RMT module + ins "artwork/sfx/scorch_trial0e_stripped.rmt" ;include music RMT module opt h+ ; ; diff --git a/scorch.xex b/scorch.xex index 9a643a2..8bec118 100644 Binary files a/scorch.xex and b/scorch.xex differ diff --git a/textproc.asm b/textproc.asm index 65dd597..31f5aa9 100755 --- a/textproc.asm +++ b/textproc.asm @@ -257,6 +257,7 @@ NextChar03 ; here we must jump in after each purchase ; to generate again list of available weapons AfterPurchase + mva #sfx_purchase sfx_effect ldx tanknr lda moneyL,x sta decimal @@ -995,6 +996,7 @@ nextchar05 iny cpy #$08 bne nextchar05 + mva #sfx_next_player sfx_effect rts .endp diff --git a/weapons.asm b/weapons.asm index 7a542ba..8ce5105 100755 --- a/weapons.asm +++ b/weapons.asm @@ -95,7 +95,7 @@ VOID .endp ; ------------------------ .proc leapfrog - mva #sfx_funky_hit sfx_effect + mva #sfx_baby_missile sfx_effect inc FallDown2 mva #17 ExplosionRadius jsr CalculateExplosionRange @@ -311,6 +311,7 @@ NoLowerCircle .endp ; ------------------------ .proc babydigger + mva #sfx_digger sfx_effect mva #0 sandhogflag inc FallDown2 mva #13 DigLong @@ -319,6 +320,7 @@ NoLowerCircle .endp ; ------------------------ .proc digger ; + mva #sfx_digger sfx_effect mva #0 sandhogflag inc FallDown2 mva #13 DigLong @@ -327,6 +329,7 @@ NoLowerCircle .endp ; ------------------------ .proc heavydigger + mva #sfx_digger sfx_effect mva #0 sandhogflag inc FallDown2 mva #13 DigLong @@ -335,7 +338,6 @@ NoLowerCircle .endp ; ------------------------ .proc xdigger - mva #sfx_digger sfx_effect mwa xdraw digstartx mwa ydraw digstarty ldx diggery @@ -506,6 +508,7 @@ DiggerCharacter .endp ; ------------------------ .proc riotcharge + mva #sfx_riot_blast sfx_effect inc FallDown2 mva #31 ExplosionRadius jsr CalculateExplosionRange @@ -665,6 +668,7 @@ EndOfDistanceCheckLoop ; ----------------- .proc xdirt ; ; ----------------- + mva #sfx_dirt_charge sfx_effect lda #1 sta radius sta color @@ -703,6 +707,7 @@ rbombLoop ; $FF - we are in a hole (flying in missile direction) ; 1 - right, 2 - left Rollin + mva #sfx_shield_off sfx_effect adw xdraw #mountaintable tempXROLLER ldy #0 lda (tempXROLLER),y @@ -760,6 +765,7 @@ ExplodeNow ; finally a little explosion jsr CalculateExplosionRange + mva #sfx_baby_missile sfx_effect jmp xmissile rts .endp @@ -885,6 +891,7 @@ EndOfTheDirt .endp ; ---------------- .proc liquiddirt ; + mva #sfx_liquid_dirt sfx_effect mva xdraw TempXfill mva #254 FillCounter RepeatFill @@ -952,7 +959,7 @@ FillHole .endp ;-------------------------------------------------- -BeforeFire .proc ;TankNr (byte) +.proc BeforeFire ;TankNr (byte) ;-------------------------------------------------- ;this nice routine makes the whole shooting ;preparation: aiming and displaying @@ -1173,12 +1180,11 @@ CTRLpressedTAB pressedSpace ;================================= ;we shoot here!!! - mva #sfx_shoot sfx_effect RTS .endp ;-------------------------------------------------- -Shoot .proc ;TankNr (byte) +.proc Shoot ;TankNr (byte) ;-------------------------------------------------- ;it looks like this routine is too big - ;- more and more functions were being added... @@ -1224,6 +1230,7 @@ AfterStrongShoot sta xtraj sta ytraj + mva #sfx_shoot sfx_effect ; Shoots tank nr X !!! :) ;ldx TankNr lda xtankstableL,x @@ -1496,7 +1503,7 @@ ThereWasNoParachute .endp ;-------------------------------------------------- -Flight .proc ;Force(byte.byte), Angle(byte), Wind(.byte) 128=0, 255=maxright, 0=maxleft +.proc Flight ; Force(byte.byte), Angle(byte), Wind(.byte) 128=0, 255=maxright, 0=maxleft ;-------------------------------------------------- ;g=-0.1 ;vx=Force*sin(Angle)