diff --git a/artwork/tanksv2.fnt b/artwork/tanksv2.fnt index 8adfc4e..d4461ac 100644 Binary files a/artwork/tanksv2.fnt and b/artwork/tanksv2.fnt differ diff --git a/constants.asm b/constants.asm index 9fdcd72..8a6322f 100644 --- a/constants.asm +++ b/constants.asm @@ -203,29 +203,29 @@ SlideLeftTable ;----------------------------------------------------------- ; this table changes Angle to the appropriate tank character -BarrelTable - - .by $2C,$2C,$2C,$2C,$2C,$2C,$2C,$2C,$2A,$2A, - .by $2A,$2A,$2A,$2A,$2A,$2A,$28,$28,$28,$28, - .by $28,$28,$28,$28,$28,$26,$26,$26,$26,$26, - .by $26,$26,$26,$24,$24,$24,$24,$24,$24,$24, - .by $24,$22,$22,$22,$22,$22,$22,$22,$22,$22, - .by $20,$20,$20,$20,$20,$20,$20,$20,$1E,$1E, - .by $1E,$1E,$1E,$1E,$1E,$1E,$1C,$1C,$1C,$1C, - .by $1C,$1C,$1C,$1C,$1C,$1A,$1A,$1A,$1A,$1A, - .by $1A,$1A,$1A,$18,$18,$18,$18,$18,$18,$18, +;BarrelTable +; +; .by $2C,$2C,$2C,$2C,$2C,$2C,$2C,$2C,$2A,$2A, +; .by $2A,$2A,$2A,$2A,$2A,$2A,$28,$28,$28,$28, +; .by $28,$28,$28,$28,$28,$26,$26,$26,$26,$26, +; .by $26,$26,$26,$24,$24,$24,$24,$24,$24,$24, +; .by $24,$22,$22,$22,$22,$22,$22,$22,$22,$22, +; .by $20,$20,$20,$20,$20,$20,$20,$20,$1E,$1E, +; .by $1E,$1E,$1E,$1E,$1E,$1E,$1C,$1C,$1C,$1C, +; .by $1C,$1C,$1C,$1C,$1C,$1A,$1A,$1A,$1A,$1A, +; .by $1A,$1A,$1A,$18,$18,$18,$18,$18,$18,$18, ;.by $18, - .by $16,$16,$16,$16,$16,$16,$16,$16,$14,$14, - .by $14,$14,$14,$14,$14,$14,$12,$12,$12,$12, - .by $12,$12,$12,$12,$12,$10,$10,$10,$10,$10, - .by $10,$10,$10,$0E,$0E,$0E,$0E,$0E,$0E,$0E, - .by $0E,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C, - .by $0A,$0A,$0A,$0A,$0A,$0A,$0A,$0A,$08,$08, - .by $08,$08,$08,$08,$08,$08,$06,$06,$06,$06, - .by $06,$06,$06,$06,$06,$04,$04,$04,$04,$04, - .by $04,$04,$04,$02,$02,$02,$02,$02,$02,$02, - .by $02, +; .by $16,$16,$16,$16,$16,$16,$16,$16,$14,$14, +; .by $14,$14,$14,$14,$14,$14,$12,$12,$12,$12, +; .by $12,$12,$12,$12,$12,$10,$10,$10,$10,$10, +; .by $10,$10,$10,$0E,$0E,$0E,$0E,$0E,$0E,$0E, +; .by $0E,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C, +; .by $0A,$0A,$0A,$0A,$0A,$0A,$0A,$0A,$08,$08, +; .by $08,$08,$08,$08,$08,$08,$06,$06,$06,$06, +; .by $06,$06,$06,$06,$06,$04,$04,$04,$04,$04, +; .by $04,$04,$04,$02,$02,$02,$02,$02,$02,$02, +; .by $02, ;EndOfTheBarrelX ; ; right angles from 0 (horizontally right) to 90 (up) diff --git a/grafproc.asm b/grafproc.asm index f37a81d..1ab02eb 100644 --- a/grafproc.asm +++ b/grafproc.asm @@ -632,9 +632,12 @@ SkipHidingPM lda AngleTable,x - tay - lda BarrelTable,y - sta CharCode + ldy #$50 ; left tank + cmp #91 ; left or right tank shape + bcs LeftTank + ldy #$52 ; right tank +LeftTank + sty CharCode DrawTankNrX ldx tanknr jsr SetupXYdraw @@ -1912,7 +1915,6 @@ X lda XtanksTableL,x ; X - tankNr ; changes xdraw, ydraw, fx, fy ;-------------------------------------------------- - jsr SetupXYdraw ;vx calculation ;vx = sin(90-Angle) for Angle <=90 ;vx = -sin(Angle-90) for 90 < Angle <= 180 @@ -1946,8 +1948,7 @@ X lda XtanksTableL,x sbc #90 tax ; barrel start offset over 90deg - adw xdraw #6 xdraw - sbw ydraw #2 ydraw + adw xdraw #5 xdraw mva #1 goleft bpl @+ ; jmp @+ @@ -1957,11 +1958,10 @@ angleUnder90 sbc Angle tax ; barrel start offset under 90deg - adw xdraw #1 xdraw - sbw ydraw #2 ydraw + adw xdraw #3 xdraw - @ + sbw ydraw #3 ydraw lda sintable,x ; cos(X) sta vx @@ -1994,7 +1994,7 @@ YangleUnder90 ; 2. add vx and vy to 3 byte variables xdraw.fx, ydraw.fy ; 3 check length, if shorter, go to 1. - mva #20 yc ; barrel length + mva #5 yc ; barrel length barrelLoop lda goleft diff --git a/scorch.xex b/scorch.xex index b1adb60..5dbb231 100644 Binary files a/scorch.xex and b/scorch.xex differ