- Add playable ten-frame bowling against bot with two timing gates (direction/power) and fixed-step physics - Add lane match interaction, shaded ball surface, pin collisions, bonus balls, and live score sheet - Scale rooftop terrace visitor sprites to eye level according to the taller rooftop standing eye height - Resolve mode and interaction ID conflicts with Hell FPS (MODE_BOWLING=30, INTERACT_BOWL_PLAY=56) - Update launcher hash, installer package, and expansion regression test suites
99 lines
3.3 KiB
PHP
99 lines
3.3 KiB
PHP
HALL_BOWLING equ 5
|
|
INTERACT_BOWL_SEAT equ 53
|
|
INTERACT_BOWL_WATCH equ 54
|
|
BW_MATERIAL equ 230
|
|
BW_LAST_MATERIAL equ 253
|
|
BW_LANES equ 8
|
|
BW_LANE_STEP equ FP_1*19/10
|
|
InitBowling3D PROTO
|
|
LoadBowling3D PROTO
|
|
FreeBowling3D PROTO
|
|
ResolveBowlingSurface3D PROTO :DWORD
|
|
UpdateBowling3D PROTO
|
|
BowlingTravel3D PROTO
|
|
BowlingEye3D PROTO
|
|
BowlingCanWalk3D PROTO :DWORD,:DWORD
|
|
CheckBowlingInteractions3D PROTO
|
|
TryBowlingInteraction3D PROTO
|
|
RenderBowling3D PROTO
|
|
RenderBowlingEntrance3D PROTO
|
|
RenderBowlingPlanes3D PROTO
|
|
RenderBowlingLanes3D PROTO
|
|
RenderBowlingVisitors3D PROTO
|
|
DrawBowlingPin3D PROTO :DWORD,:DWORD,:DWORD
|
|
DrawBowlingBall3D PROTO :DWORD,:DWORD,:DWORD
|
|
BowlingImpact3D PROTO :DWORD
|
|
BowlingRegisterRoll3D PROTO :DWORD,:DWORD
|
|
BowlingScore3D PROTO :DWORD
|
|
BowlingMonitorText3D PROTO :DWORD,:DWORD,:DWORD,:DWORD,:DWORD
|
|
RefreshBowlingMonitors3D PROTO
|
|
.data
|
|
bwArt3D AnimPack3D <>
|
|
bwMotionArt3D AnimPack3D <>
|
|
bwSeatedArt3D AnimPack3D <>
|
|
bwArtPath3D db "assets\animations\bowling\materials-v1.bin",0
|
|
bwMotionPath3D db "assets\animations\bowling\bowlers-v1.bin",0
|
|
bwSeatedPath3D db "assets\animations\bowling\seated-v1.bin",0
|
|
bwEntrancePrompt3D db 193,206,211,203,200,205,195,0
|
|
bwExitPrompt3D db 202,192,199,200,205,206,0
|
|
bwSeatPrompt3D db 207,208,200,209,197,209,210,220,0
|
|
bwStandPrompt3D db 194,209,210,192,210,220,0
|
|
bwWatchPrompt3D db 205,192,193,203,222,196,192,210,220,32,199,192,32,200,195,208,206,201,0
|
|
bwBarName3D db 193,192,208,32,193,206,211,203,200,205,195,192,0
|
|
bwLaneWord3D db "LANE ",0
|
|
bwPlayerA3D db "A",0
|
|
bwPlayerB3D db "B",0
|
|
bwFreeText3D db "FREE",0
|
|
bwFrameText3D db "FRAME",0
|
|
bwPhaseTexts3D dd OFFSET bwRestText3D,OFFSET bwPickText3D,OFFSET bwThrowText3D
|
|
dd OFFSET bwRollText3D,OFFSET bwSweepText3D,OFFSET bwReturnText3D,OFFSET bwRestText3D
|
|
bwRestText3D db "NEXT PLAYER",0
|
|
bwPickText3D db "READY",0
|
|
bwThrowText3D db "APPROACH",0
|
|
bwRollText3D db "BALL IN PLAY",0
|
|
bwSweepText3D db "PINSETTER",0
|
|
bwReturnText3D db "BALL RETURN",0
|
|
bwSignText3D db "BOWLING",0
|
|
bwLoungeText3D db "LOUNGE",0
|
|
bwEightText3D db "8 LANES",0
|
|
bwClock3D dd -1
|
|
bwMonitorClock3D dd -1
|
|
bwRng3D dd 312871
|
|
bwSeat3D dd 0
|
|
bwSeatTarget3D dd 0
|
|
bwWatchLane3D dd 0
|
|
bwReturnX3D dd 0
|
|
bwReturnY3D dd 0
|
|
bwReturnAngle3D dd 0
|
|
bwBusy3D dd 1,0,0,1,0,0,1,0
|
|
bwCharacterIds3D dd 0,1,6,7,8,9,2,3,6,7,8,9,4,5,6,7
|
|
bwState3D dd BW_LANES dup(0)
|
|
bwTime3D dd BW_LANES dup(0)
|
|
bwTurn3D dd BW_LANES dup(0)
|
|
bwBall3D dd BW_LANES dup(0)
|
|
bwFirstHit3D dd BW_LANES dup(0)
|
|
bwRack3D dd BW_LANES dup(1023)
|
|
bwHit3D dd BW_LANES dup(0)
|
|
bwAim3D dd BW_LANES dup(0)
|
|
bwNewRack3D dd BW_LANES dup(0)
|
|
bwFrameDone3D dd BW_LANES dup(0)
|
|
bwFrames3D dd 16 dup(0)
|
|
bwRollCount3D dd 16 dup(0)
|
|
bwScores3D dd 16 dup(0)
|
|
bwRolls3D dd 16*24 dup(0)
|
|
bwPinX3D dd 0,-FP_1*16/100,FP_1*16/100,-FP_1*32/100,0,FP_1*32/100
|
|
dd -FP_1*48/100,-FP_1*16/100,FP_1*16/100,FP_1*48/100
|
|
bwPinY3D dd FP_1*47/10,FP_1*44/10,FP_1*44/10
|
|
dd FP_1*41/10,FP_1*41/10,FP_1*41/10
|
|
dd FP_1*38/10,FP_1*38/10,FP_1*38/10,FP_1*38/10
|
|
bwVisitorX3D dd 22*FP_1,27*FP_1,25*FP_1,29*FP_1,25*FP_1,27*FP_1,29*FP_1
|
|
bwVisitorY3D dd FP_1*134/10,FP_1*194/10,FP_1*68/10,FP_1*68/10
|
|
dd FP_1*68/10,FP_1*68/10,FP_1*68/10
|
|
bwActor3D CityProp3D <0,0,FP_1*19/10,FP_1*19/10,0,OFFSET bwMotionArt3D>
|
|
bwSmallActor3D CityProp3D <0,0,FP_1*135/100,FP_1*135/100,0,OFFSET bwSeatedArt3D>
|
|
.data?
|
|
bwMonitors3D dd BW_LANES*128*64 dup(?)
|
|
bwSignPixels3D dd 128*64 dup(?)
|
|
.code
|
|
include src_graphics\bowling_layout.inc
|
|
include src_graphics\bowling_play_data.inc
|