You've already forked pokecrystal-board
mirror of
https://gitlab.com/xCrystal/pokecrystal-board.git
synced 2025-12-11 05:02:16 -08:00
Multiplayer engine: automate player AI actions in board menu and branch space [Commit 13] (#40)
This commit is contained in:
@@ -157,9 +157,13 @@ BoardMenuScript::
|
||||
|
||||
BoardMenu::
|
||||
; returns the selected menu item (BOARDMENUITEM_*) in hScriptVar upon exit
|
||||
ld a, [wCurTurnPlayer]
|
||||
and a ; PLAYER_1?
|
||||
jr nz, .die
|
||||
ld a, [wBoardMenuLastCursorPosition]
|
||||
cp NUM_BOARD_MENU_ITEMS
|
||||
jr c, .ok
|
||||
.die
|
||||
ld a, BOARDMENUITEM_DIE
|
||||
.ok
|
||||
ld [wBoardMenuCursorPosition], a
|
||||
@@ -223,8 +227,12 @@ ApplyBoardMenuSpritePalette:
|
||||
|
||||
GetBoardMenuSelection:
|
||||
call DelayFrame
|
||||
ld c, PLAYERAIACTION_BOARD_MENU
|
||||
call BoardAIAction
|
||||
jr c, .ai_action
|
||||
call JoyTextDelay
|
||||
call GetMenuJoypad
|
||||
.ai_action
|
||||
bit A_BUTTON_F, a
|
||||
jr nz, .a_button
|
||||
bit SELECT_F, a
|
||||
@@ -280,8 +288,10 @@ DEF DIE_MAX_NUMBER EQU 6
|
||||
set SECONDARYSPRITES_DIE_ROLL_F, [hl]
|
||||
ld a, 1
|
||||
ld [wDieRoll], a
|
||||
call HDMATransferTilemapAndAttrmap_Menu ;
|
||||
call CloseText ; closetext
|
||||
ld a, 30
|
||||
ld [wFrameCounter2], a
|
||||
call HDMATransferTilemapAndAttrmap_Menu
|
||||
call CloseText
|
||||
|
||||
.rotate_die_loop
|
||||
call IsSFXPlaying
|
||||
@@ -295,8 +305,12 @@ DEF DIE_MAX_NUMBER EQU 6
|
||||
add $1
|
||||
ld [wDieRoll], a
|
||||
call UpdateSecondarySprites
|
||||
ld c, PLAYERAIACTION_ROLL_DIE
|
||||
call BoardAIAction
|
||||
jr c, .ai_action
|
||||
call GetJoypad
|
||||
ldh a, [hJoyPressed]
|
||||
.ai_action
|
||||
bit B_BUTTON_F, a
|
||||
jr nz, .back_to_menu
|
||||
bit A_BUTTON_F, a
|
||||
|
||||
Reference in New Issue
Block a user