Paper Mario DX
Paper Mario (N64) modding
 
Loading...
Searching...
No Matches
action_cmd.h
Go to the documentation of this file.
1#ifndef _BATTLE_ACTION_CMD_H_
2#define _BATTLE_ACTION_CMD_H_
3
4#include "common.h"
5#include "hud_element.h"
29
35
43
44typedef struct ActionCommandStatus {
45 /* 0x00 */ s32 workerID;
46 /* 0x04 */ s32 hudElements[16];
47 /* 0x44 */ s16 barFillLevel; // full = 10000
48 /* 0x46 */ s16 thresholdLevel;
49 /* 0x48 */ s16 barFillWidth; // X100
50 /* 0x4A */ s16 actionCommandID;
51 /* 0x4C */ s16 state;
52 /* 0x4E */ s16 prepareTime;
53 /* 0x50 */ s16 difficulty; // values from 0 to 7
54 /* 0x52 */ s16 duration;
55 /* 0x54 */ s16 frameCounter;
56 /* 0x56 */ s16 hudPosX;
57 /* 0x58 */ s16 hudPosY;
58 /* 0x5A */ s16 unk_5A;
59 /* 0x5C */ s8 unk_5C;
60 /* 0x5D */ s8 unk_5D;
61 /* 0x5E */ s8 autoSucceed;
62 /* 0x5F */ s8 hammerMissedStart;
63 /* 0x60 */ s8 wrongButtonPressed;
64 /* 0x61 */ s8 showHud;
65 /* 0x62 */ s8 playHammerSounds;
66 /* 0x63 */ s8 unk_63;
67 /* 0x64 */ s16 targetWeakness; // chance of applying special status, the more the easier it is to fill the bar
68 /* 0x66 */ s16 thresholdMoveDir;
69 /* 0x68 */ s16 isBarFilled;
70 /* 0x6A */ s16 berserkerEnabled;
71 /* 0x6C */ s16 hudPrepareTime;
72 /* 0x6E */ s16 hitsTakenIsMax;
73 /* 0x70 */ s16 lookBackCounter;
74 /* 0x72 */ s16 wrongInputFrameCounter;
75 /* 0x74 */ s16 mashMeterCutoffs[6]; // upper bounds for each interval
76 /* 0x80 */ s8 mashMeterIntervals;
78
80
113
115void action_command_free(void);
116void func_80268E88(void);
117void func_80269118(void);
118void func_80269160(void);
119
120void draw_mash_meter_multicolor_with_divisor(s32 posX, s32 posY, s32 fillValue, s32 divisor);
121void draw_mash_meter_blink(s32 posX, s32 posY, s32 fillValue);
122void draw_mash_meter_multicolor(s32 posX, s32 posY, s32 fillValue);
123void draw_mash_meter_mode_with_divisor(s32 posX, s32 posY, s32 fillValue, s32 divisor, s32 colorMode);
124void draw_mash_meter_blink_with_divisor(s32 posX, s32 posY, s32 fillValue, s32 divisor);
126s32 check_block_input(s32 buttonMask);
127
128API_CALLABLE(LoadActionCommand);
129API_CALLABLE(SetActionDifficultyTable);
130API_CALLABLE(SetupMashMeter);
131API_CALLABLE(GetActionSuccess);
132API_CALLABLE(SetActionSuccess);
133API_CALLABLE(SetActionCommandMode);
134API_CALLABLE(GetActionCommandMode);
135API_CALLABLE(SetActionHudPrepareTime);
136API_CALLABLE(GetCommandAutoSuccess);
137API_CALLABLE(SetCommandAutoSuccess);
138API_CALLABLE(func_802693F0);
139API_CALLABLE(CloseActionCommandInfo);
140API_CALLABLE(func_80269470);
141API_CALLABLE(ShowActionHud);
142API_CALLABLE(GetActionSuccessCopy);
143API_CALLABLE(GetActionResult);
144API_CALLABLE(SetActionResult);
145API_CALLABLE(GetBlockResult);
146API_CALLABLE(GetActionQuality);
147API_CALLABLE(SetActionQuality);
148API_CALLABLE(func_80269600);
149API_CALLABLE(func_8026962C);
150
151#endif
HudScript HES_TimingCharge3
HudScript HES_MashBButton1
HudScript HES_BButton
HudScript HES_AButton
void draw_mash_meter_blink_with_divisor(s32 posX, s32 posY, s32 fillValue, s32 divisor)
Definition action_cmd.c:251
HudScript HES_TimingReady
HudScript HES_TimingOK
void draw_mash_meter_multicolor(s32 posX, s32 posY, s32 fillValue)
Definition action_cmd.c:226
void func_80269160(void)
Definition action_cmd.c:655
HudScript HES_StickTapNeutral
HudScript HES_CDownButtonHeld
HudScript HES_TimingCharge4b
void action_command_free(void)
Definition action_cmd.c:446
MashMeterColorModes
Definition action_cmd.h:30
@ MASH_METER_MODE_ONE_COLOR
Definition action_cmd.h:33
@ MASH_METER_MODE_MULTI_COLOR
Definition action_cmd.h:32
@ MASH_METER_MODE_BLINK
Definition action_cmd.h:31
HudScript HES_StickNeutral
ActionCommandStatus gActionCommandStatus
Definition action_cmd.c:91
HudScript HES_TimingBar3Chances
HudScript HES_TimingWait
HudScript HES_TimingCharge4a
HudScript HES_TimingCharge4c
HudScript HES_BlueMeter
HudScript HES_BButtonHeld
void draw_mash_meter_multicolor_with_divisor(s32 posX, s32 posY, s32 fillValue, s32 divisor)
Definition action_cmd.c:231
s32 adjust_action_command_difficulty(s32 arg0)
Definition action_cmd.c:101
void draw_mash_meter_mode_with_divisor(s32 posX, s32 posY, s32 fillValue, s32 divisor, s32 colorMode)
Definition action_cmd.c:241
HudScript HES_RunAwayOK
HudScript HES_MashAButton
HudScript HES_PressAButton
void func_80268E88(void)
Definition action_cmd.c:531
HudScript HES_RightOn
HudScript HES_StickMashLeft
HudScript HES_StickHoldLeft
HudScript HES_AButtonDown
void draw_mash_meter_blink(s32 posX, s32 posY, s32 fillValue)
Definition action_cmd.c:246
HudScript HES_100pct
HudScript HES_FillGaugeResult
HudScript HES_TimingMiss
void action_command_init_status(void)
Definition action_cmd.c:256
HudScript HES_TimingCharge2
HudScript HES_TimingCharge1
HudScript HES_PressBButton
ActionCommandModes
Definition action_cmd.h:36
@ ACTION_COMMAND_MODE_TUTORIAL_WAIT_INPUT
Definition action_cmd.h:41
@ ACTION_COMMAND_MODE_TUTORIAL
Definition action_cmd.h:40
@ ACTION_COMMAND_MODE_TUTORIAL_BLOCK
Definition action_cmd.h:37
@ ACTION_COMMAND_MODE_NOT_LEARNED
Definition action_cmd.h:38
@ ACTION_COMMAND_MODE_LEARNED
Definition action_cmd.h:39
HudScript HES_RunningAway
s32 check_block_input(s32 buttonMask)
Definition action_cmd.c:537
HudScript HES_PressCDownButton
HudScript HES_TimingBar1Chance
void func_80269118(void)
Definition action_cmd.c:641
s32 HudScript[]
Definition hud_element.h:9