KAZIK/src_graphics/native_durak_data.inc
Artvasil09 3ad5bf4c9d Develop assembly-only casino scenes and native games
Add native Durak, poker, blackjack, roulette, Buckshot and billiards scenes with animation assets and regression tests. Improve arrival, city, hall, profiles, shops, audio and exit handling; remove the portable C game core and refresh shipping executables.
2026-10-08 22:39:19 +03:00

86 lines
2.5 KiB
PHP

; Native two-player Durak. The legacy hand/table arrays are shared only with
; bounded rule helpers; no console input or classic game loop is called.
MODE_DURAK equ 19
DK_IDLE equ 0
DK_DEAL equ 1
DK_TURN equ 2
DK_FLIGHT equ 3
DK_SWEEP equ 4
DK_RESULT equ 5
DK_ATTACK equ 0
DK_DEFEND equ 1
DK_TRANSFER equ 2
DK_PAGE_SIZE equ 8
InitNativeDurak3D PROTO
StartNativeDurak3D PROTO
NativeDurakSettle3D PROTO result:DWORD
DurakBeginBout3D PROTO
DurakPlay3D PROTO actor:DWORD,index:DWORD,kind:DWORD
DurakCanPlay3D PROTO actor:DWORD,index:DWORD,kind:DWORD
DurakCanTransfer3D PROTO actor:DWORD,card:DWORD
DurakTake3D PROTO actor:DWORD
DurakFinish3D PROTO actor:DWORD
DurakFindMove3D PROTO actor:DWORD,kind:DWORD
DurakRefill3D PROTO actor:DWORD
DurakCardValue3D PROTO card:DWORD
DurakMoveSelection3D PROTO amount:SDWORD
HandleNativeDurak3D PROTO
RenderNativeDurak3D PROTO
.data
dkState3D dd DK_IDLE
dkBet3D dd 100
dkStake3D dd 0
dkVariant3D dd 0
dkOutcome3D dd 0
dkError3D dd 0
dkTimer3D dd 0
dkAttacker3D dd 0 ; 0: player, 1: AI
dkOriginal3D dd 0
dkLimit3D dd 6
dkTaking3D dd 0
dkActor3D dd 0
dkSelection3D dd 0
dkPage3D dd 0
dkDeck3D dd 52 dup(0)
dkCursor3D dd 0
dkDiscard3D dd 36 dup(0)
dkDiscardCount3D dd 0
dkBouts3D dd 0
dkPendingCard3D dd 0FFFFFFFFh
dkPendingActor3D dd 0
dkPendingKind3D dd 0
dkPendingSlot3D dd 0
dkPendingX3D dd 0
dkPendingY3D dd 0
dkTargetX3D dd 0
dkTargetY3D dd 0
dkTitle3D db 196,243,240,224,234,0
dkAttackText3D db 192,242,224,234,224,0
dkDefendText3D db 199,224,249,232,242,224,0
dkTakeText3D db 194,231,255,242,252,0
dkTransferText3D db 207,229,240,229,226,238,228,0
dkDoneText3D db 193,232,242,238,0
dkThrowText3D db 207,238,228,234,232,237,243,242,252,0
dkPlayText3D db 213,238,228,0
dkNextText3D db 200,227,240,224,242,252,0
dkPodkidText3D db 207,238,228,234,232,228,237,238,233,0
dkPerevodText3D db 207,229,240,229,226,238,228,237,238,233,0
dkVariantNames3D dd OFFSET dkPodkidText3D, OFFSET dkPerevodText3D
dkWaitText3D db 213,238,228,32,228,232,235,229,240,224,0
dkDealText3D db 208,224,231,228,224,247,224,0
dkTakingText3D db 196,232,235,229,240,32,225,229,240,184,242,0
dkCollectText3D db 209,225,238,240,32,234,224,240,242,0
dkWinText3D db 207,238,225,229,228,224,0
dkLoseText3D db 207,238,240,224,230,229,237,232,229,0
dkDrawText3D db 205,232,247,252,255,0
dkResults3D dd OFFSET dkWinText3D, OFFSET dkLoseText3D, OFFSET dkDrawText3D
dkIllegalText3D db 205,229,235,252,231,255,0
dkDeckText3D db 202,238,235,238,228,224,0
dkAIText3D db 196,232,235,229,240,0
dkLimitText3D db 203,232,236,232,242,0
dkPageText3D db '/',0
dkLeftText3D db '<',0
dkRightText3D db '>',0
.code