Add more gamework setters

This commit is contained in:
gamemasterplc 2024-04-07 11:03:18 -05:00
parent 13e3527197
commit 70c811ea73
9 changed files with 95 additions and 76 deletions

View file

@ -154,25 +154,24 @@ static void FortuneMain(void)
while(fortunePlatformObj) {
HuPrcVSleep();
}
if(GWPlayer[GWSystem.player_curr].com) {
if((int)GWSystem.show_com_mg == 0) {
HuPrcSleep(60);
for(i=0; i<4; i++) {
s32 bit11 = GWPlayer[i].team_backup;
GWPlayer[i].team = bit11;
GWPlayerCfg[i].group = bit11;
}
ConfigComFortune();
FortunePostMG();
BoardMusStartBoard();
ExecComFortuneWin();
return;
if(GWPlayer[GWSystem.player_curr].com && !GWMGShowComGet()) {
HuPrcSleep(60);
for(i=0; i<4; i++) {
s32 bit11 = GWPlayer[i].team_backup;
GWPlayer[i].team = bit11;
GWPlayerCfg[i].group = bit11;
}
ConfigComFortune();
FortunePostMG();
BoardMusStartBoard();
ExecComFortuneWin();
return;
} else {
GWMGAvailSet(444);
GWSystem.mg_next = 43;
_SetFlag(0x10005);
BoardNextOvlSet(OVL_M444);
}
GWMGAvailSet(444);
GWSystem.mg_next = 43;
_SetFlag(0x10005);
BoardNextOvlSet(OVL_M444);
}
static void FortunePostMG(void)

View file

@ -341,7 +341,7 @@ void BoardStoryConfigSet(s32 mg_list, s32 diff_story)
GWSystem.team = 0;
GWSystem.diff_story = diff_story;
GWSystem.bonus_star = 0;
GWSystem.mg_list = mg_list;
GWMGListSet(mg_list);
GWPlayer[0].handicap = 0;
GWPlayer[1].handicap = 0;
GWPlayer[2].handicap = 0;
@ -365,7 +365,7 @@ void BoardPartyConfigSet(s32 team, s32 bonus_star, s32 mg_list, s32 max_turn, s3
GWSystem.team = team;
GWSystem.diff_story = 0;
GWSystem.bonus_star = bonus_star;
GWSystem.mg_list = mg_list;
GWMGListSet(mg_list);
GWSystem.max_turn = max_turn;
memset(GWPlayer, 0, 4*sizeof(PlayerState));
GWPlayer[0].handicap = p1_handicap;
@ -613,27 +613,12 @@ s32 BoardStartCheck(void)
static void CreateBoard(void)
{
s32 guest_status;
s32 mess_speed;
GWSystem.mg_next = -1;
if(!GWGameStat.field10E_bit5 && GWMGListGet() == 2) {
GWSystem.mg_list = 0;
}
mess_speed = GWMessSpeedGet();
GWSystem.mess_speed = mess_speed;
switch(mess_speed) {
case 0:
GWSystem.mess_delay = 16;
break;
case 2:
GWSystem.mess_delay = 48;
break;
default:
GWSystem.mess_delay = 32;
break;
GWMGListSet(0);
}
GWMessSpeedSet(GWMessSpeedGet());
if(GWMGExplainGet()) {
_SetFlag(FLAG_ID_MAKE(0, 11));
} else {

View file

@ -483,8 +483,6 @@ static void PauseConfigObjFunc(omObjData *arg0) {
ConfigWork *temp_r31;
s16 temp_r28;
s32 var_r29;
s32 var_r27;
s32 var_r26;
temp_r31 = OM_GET_WORK_PTR(arg0, ConfigWork);
if (temp_r31->unk00_field0 != 0 || BoardIsKill()) {
@ -508,15 +506,13 @@ static void PauseConfigObjFunc(omObjData *arg0) {
break;
case 1:
if (UpdatePauseBox(arg0, temp_r31, 1) != 0) {
var_r27 = boxState[1];
GWSystem.explain_mg = var_r27;
GWMGExplainSet(boxState[1]);
}
UpdatePauseText(cursorPos);
break;
case 2:
if (UpdatePauseBox(arg0, temp_r31, 2) != 0) {
var_r26 = boxState[2];
GWSystem.show_com_mg = var_r26;
GWMGShowComSet(boxState[2]);
}
UpdatePauseText(cursorPos);
break;
@ -524,13 +520,13 @@ static void PauseConfigObjFunc(omObjData *arg0) {
if (UpdatePauseBoxExt(arg0, temp_r31, 3) != 0) {
switch (boxState[3]) {
case 0:
GWSystem.mg_list = 1;
GWMGListSet(1);
break;
case 1:
GWSystem.mg_list = 0;
GWMGListSet(0);
break;
case 2:
GWSystem.mg_list = 2;
GWMGListSet(2);
break;
}
}
@ -538,11 +534,7 @@ static void PauseConfigObjFunc(omObjData *arg0) {
break;
case 4:
if (UpdatePauseBox(arg0, temp_r31, 4) != 0) {
var_r29 = boxState[4];
GWGameStat.rumble = var_r29;
if (var_r29 == 0) {
HuPadRumbleAllStop();
}
GWRumbleSet(boxState[4]);
}
UpdatePauseText(cursorPos);
break;
@ -550,16 +542,13 @@ static void PauseConfigObjFunc(omObjData *arg0) {
if (UpdatePauseBoxExt(arg0, temp_r31, 5) != 0) {
switch (boxState[5]) {
case 0:
GWSystem.mess_speed = 2;
GWSystem.mess_delay = 48;
GWMessSpeedSet(2);
break;
case 1:
GWSystem.mess_speed = 1;
GWSystem.mess_delay = 32;
GWMessSpeedSet(1);
break;
case 2:
GWSystem.mess_speed = 0;
GWSystem.mess_delay = 16;
GWMessSpeedSet(0);
break;
}
}
@ -573,13 +562,13 @@ static void PauseConfigObjFunc(omObjData *arg0) {
if (UpdatePauseBoxExt(arg0, temp_r31, 6) != 0) {
switch (boxState[6]) {
case 0:
GWSystem.save_mode = 1;
GWSaveModeSet(1);
break;
case 1:
GWSystem.save_mode = 0;
GWSaveModeSet(0);
break;
case 2:
GWSystem.save_mode = 2;
GWSaveModeSet(2);
break;
}
}

View file

@ -36,12 +36,11 @@ static inline void InitPlayerConfig(void)
static inline void ResetBoardSettings(void)
{
GWGameStat.rumble = 1;
GWSystem.explain_mg = 1;
GWSystem.show_com_mg = 1;
GWSystem.mess_speed = 1;
GWSystem.mess_delay = 32;
GWSystem.save_mode = 0;
GWRumbleSet(1);
GWMGExplainSet(1);
GWMGShowComSet(1);
GWMessSpeedSet(1);
GWSaveModeSet(0);
}
void GWInit(void)

View file

@ -1210,9 +1210,8 @@ void omGameSysInit(Process *objman) {
}
void omVibrate(s16 player, s16 duration, s16 off, s16 on) {
s32 rumble = GWGameStat.rumble;
if (rumble != 0 && GWPlayerCfg[player].iscom == 0) {
if (GWRumbleGet() != 0 && GWPlayerCfg[player].iscom == 0) {
HuPadRumbleSet(GWPlayerCfg[player].pad_idx, duration, off, on);
}
}