macro-ize all message ids, minor cleanup

This commit is contained in:
Rainchus 2024-07-15 15:55:37 -05:00
parent 7dc1687dd0
commit 12bea8f5db
29 changed files with 291 additions and 282 deletions

View file

@ -156,7 +156,7 @@ static void BlockProc(void) {
SetBlockStop();
}
BoardWinCreate(0, work->contains_star != 0 ? 0x10001 : 0x10002, -1);
BoardWinCreate(0, work->contains_star != 0 ? MAKE_MESSID(1, 1) : MAKE_MESSID(1, 2), -1);
BoardWinWait();
BoardWinKill();
KillCoinMdl();

View file

@ -149,13 +149,13 @@ static void ExecBooHouse(void) {
var_r30 = GWPlayer[currPlayer].space_curr;
BoardPlayerIdleSet(currPlayer);
if (BoardPlayerCoinsGet(currPlayer) < 5) {
BoardWinCreate(0, 0x70001, -1);
BoardWinCreate(0, MAKE_MESSID(7, 1), -1);
BoardWinWait();
BoardWinKill();
BoardDataAsyncWait(var_r28);
HuPrcEnd();
}
BoardWinCreateChoice(0, 0x70000, -1, 0);
BoardWinCreateChoice(0, MAKE_MESSID(7, 0), -1, 0);
if (GWPlayer[currPlayer].com != 0) {
if (BoardBooComUseCheck(currPlayer) != 0) {
BoardComKeySetLeft();
@ -645,7 +645,7 @@ void ApplyStarSteal(void) {
s32 temp_r31;
HuAudFXPlay(0x4C);
BoardWinCreate(2, 0x7000A, 3);
BoardWinCreate(2, MAKE_MESSID(7, 10), 3);
BoardWinWait();
BoardWinKill();
BoardStatusShowSetForce(currPlayer);
@ -670,7 +670,7 @@ void ApplyStarSteal(void) {
}
void ApplyBooLight(void) {
BoardWinCreate(2, 0x7000B, 3);
BoardWinCreate(2, MAKE_MESSID(7, 11), 3);
BoardWinWait();
BoardWinKill();
BoardPlayerMotionShiftSet(currPlayer, 8, 0.0f, 8.0f, 0);

View file

@ -150,6 +150,9 @@ typedef struct bowser_event_work {
static void ExecBowser(void)
{
#define BOWSER_EVENT 0
#define MINI_BOWSER_EVENT 1
s32 i;
s32 status;
if(!_CheckFlag(FLAG_ID_MAKE(1, 3))) {
@ -159,10 +162,11 @@ static void ExecBowser(void)
boardBowserHook(1);
}
BoardAudSeqPause(0, 1, 1000);
//20% of bowser, 80% chance of koopa kid
if(BoardRandMod(100) < 20) {
eventType = 0;
eventType = BOWSER_EVENT;
} else {
eventType = 1;
eventType = MINI_BOWSER_EVENT;
}
} else {
BoardMusStart(1, 6, 127, 0);
@ -240,7 +244,7 @@ static void ExecBowserMain(void)
BoardModelMotionShiftSet(bowserMdl, 3, 0.0f, 8.0f, 0);
HuPrcSleep(8);
HuAudFXPlay(58);
BoardWinCreate(2, 0x3000B, 5);
BoardWinCreate(2, MAKE_MESSID(3, 11), 5);
BoardWinWait();
BoardWinKill();
BoardAudSeqFadeOut(1, 1000);
@ -287,7 +291,7 @@ static void ExecMGReturn(void)
BoardModelMotionShiftSet(bowserMdl, 3, 0.0f, 8.0f, 0);
HuPrcSleep(8);
HuAudFXPlay(58);
BoardWinCreate(2, 0x3000B, 5);
BoardWinCreate(2, MAKE_MESSID(3, 11), 5);
BoardWinWait();
BoardWinKill();
while(!BoardStatusStopCheck(0)) {
@ -349,7 +353,7 @@ static void ExecBowserSpecial(void)
HuAudFXPlay(58);
BoardMusStart(1, 6, 127, 0);
HuPrcSleep(120);
BoardWinCreate(2, 0x30007, 5);
BoardWinCreate(2, MAKE_MESSID(3, 7), 5);
BoardWinWait();
BoardWinKill();
HuAudFXPlay(857);
@ -412,7 +416,7 @@ static void ExecBowserGame(void)
for(i=0; i<4; i++) {
BoardPlayerPosGet(i, &playerPosTemp[i]);
}
BoardWinCreate(2, 0x30008, 5);
BoardWinCreate(2, MAKE_MESSID(3, 8), 5);
BoardWinWait();
mess = messLoss[GWSystem.bowser_loss];
BoardWinCreate(2, mess, 5);
@ -524,7 +528,7 @@ static void ExecBowserShuffle(void)
s32 player;
s32 player_new;
s32 reset_cam;
BoardWinCreate(2, 0x30010, 5);
BoardWinCreate(2, MAKE_MESSID(3, 16), 5);
BoardWinWait();
BoardWinKill();
for(i=0; i<4; i++) {
@ -585,7 +589,7 @@ static void ExecBowserRevo(void)
{
s32 i;
s32 coin;
BoardWinCreate(2, 0x30011, 5);
BoardWinCreate(2, MAKE_MESSID(3, 17), 5);
BoardWinWait();
BoardWinKill();
for(coin=i=0; i<4; i++) {
@ -619,7 +623,7 @@ static void ExecBowserRevo(void)
static void ExecBowserSuit(void)
{
BoardModelMotionShiftSet(bowserMdl, 1, 0.0f, 10.0f, 0);
BoardWinCreate(2, 0x30012, 5);
BoardWinCreate(2, MAKE_MESSID(3, 18), 5);
BoardWinWait();
HuAudFXPlay(857);
BoardModelMotionShiftSet(bowserMdl, 4, 0.0f, 10.0f, 0);
@ -1441,19 +1445,20 @@ static s32 ExecMiniBowserEvent(void)
BoardAudSeqFadeOutFast(1);
BoardMusStart(1, 11, 127, 0);
HuAudFXPlay(62);
BoardWinCreate(2, 0x30000, 6);
BoardWinCreate(2, MAKE_MESSID(3, 0), 6);
BoardWinWait();
if(BoardRandMod(100) < 70) {
MiniBowserTake();
} else {
MiniBowserTakeAll();
}
//5% chance bowser will appear after baby bowser
if(BoardRandMod(100) < 5) {
doneF = 1;
}
if(doneF) {
HuPrcSleep(60);
BoardWinCreate(2, 0x30006, 6);
BoardWinCreate(2, MAKE_MESSID(3, 6), 6);
BoardWinWait();
BoardWinKill();
HuAudFXPlay(62);
@ -1461,7 +1466,7 @@ static s32 ExecMiniBowserEvent(void)
HuPrcSleep(60);
} else {
HuAudFXPlay(62);
BoardWinCreate(2, 0x30002, 6);
BoardWinCreate(2, MAKE_MESSID(3, 2), 6);
BoardWinWait();
BoardWinKill();
BoardAudSeqFadeOut(1, 1000);

View file

@ -30,134 +30,135 @@ static BOOL CheckLampUse(s32 player, s32 item);
static s8 itemUse = -1;
#define MINI_MUSHROOM 0
#define MEGA_MUSHROOM 1
#define SUPER_MINI_MUSHROOM 2
#define SUPER_MEGA_MUSHROOM 3
#define MINI_MEGA_HAMMER 4
#define WARP_PIPE 5
#define SWAP_CARD 6
#define SPARKY_STICKER 7
#define GADDLIGHT 8
#define CHOMP_CALL 9
#define BOWSER_SUIT 10
#define BOOS_CRYSTAL_BALL 11
#define MAGIC_LAMP 12
#define SHOP_ITEMS_END MAGIC_LAMP
#define ITEM_BAG 13
#define BOARD_ITEM_MINI_MUSHROOM 0
#define BOARD_ITEM_MEGA_MUSHROOM 1
#define BOARD_ITEM_SUPER_MINI_MUSHROOM 2
#define BOARD_ITEM_SUPER_MEGA_MUSHROOM 3
#define BOARD_ITEM_MINI_MEGA_HAMMER 4
#define BOARD_ITEM_WARP_PIPE 5
#define BOARD_ITEM_SWAP_CARD 6
#define BOARD_ITEM_SPARKY_STICKER 7
#define BOARD_ITEM_GADDLIGHT 8
#define BOARD_ITEM_CHOMP_CALL 9
#define BOARD_ITEM_BOWSER_SUIT 10
#define BOARD_ITEM_BOOS_CRYSTAL_BALL 11
#define BOARD_ITEM_MAGIC_LAMP 12
#define SHOP_ITEMS_END BOARD_ITEM_MAGIC_LAMP
#define BOARD_ITEM_ITEM_BAG 13
#define BOARD_ITEMS_END BOARD_ITEM_ITEM_BAG
static s8 comItemPreferTbl[GW_CHARACTER_MAX][SHOP_ITEMS_END] = {
{ //Mario
MAGIC_LAMP,
BOOS_CRYSTAL_BALL,
WARP_PIPE,
SUPER_MEGA_MUSHROOM,
MEGA_MUSHROOM,
SUPER_MINI_MUSHROOM,
SWAP_CARD,
MINI_MEGA_HAMMER,
MINI_MUSHROOM,
SPARKY_STICKER,
CHOMP_CALL,
BOWSER_SUIT
{ //Mario
BOARD_ITEM_MAGIC_LAMP,
BOARD_ITEM_BOOS_CRYSTAL_BALL,
BOARD_ITEM_WARP_PIPE,
BOARD_ITEM_SUPER_MEGA_MUSHROOM,
BOARD_ITEM_MEGA_MUSHROOM,
BOARD_ITEM_SUPER_MINI_MUSHROOM,
BOARD_ITEM_SWAP_CARD,
BOARD_ITEM_MINI_MEGA_HAMMER,
BOARD_ITEM_MINI_MUSHROOM,
BOARD_ITEM_SPARKY_STICKER,
BOARD_ITEM_CHOMP_CALL,
BOARD_ITEM_BOWSER_SUIT
},
{ //Luigi
MAGIC_LAMP,
BOOS_CRYSTAL_BALL,
WARP_PIPE,
BOWSER_SUIT,
SUPER_MEGA_MUSHROOM,
MEGA_MUSHROOM,
SUPER_MINI_MUSHROOM,
MINI_MUSHROOM,
SWAP_CARD,
MINI_MEGA_HAMMER,
SPARKY_STICKER,
CHOMP_CALL
BOARD_ITEM_MAGIC_LAMP,
BOARD_ITEM_BOOS_CRYSTAL_BALL,
BOARD_ITEM_WARP_PIPE,
BOARD_ITEM_BOWSER_SUIT,
BOARD_ITEM_SUPER_MEGA_MUSHROOM,
BOARD_ITEM_MEGA_MUSHROOM,
BOARD_ITEM_SUPER_MINI_MUSHROOM,
BOARD_ITEM_MINI_MUSHROOM,
BOARD_ITEM_SWAP_CARD,
BOARD_ITEM_MINI_MEGA_HAMMER,
BOARD_ITEM_SPARKY_STICKER,
BOARD_ITEM_CHOMP_CALL
},
{ //Peach
MAGIC_LAMP,
BOOS_CRYSTAL_BALL,
WARP_PIPE,
SWAP_CARD,
SUPER_MEGA_MUSHROOM,
MEGA_MUSHROOM,
SUPER_MINI_MUSHROOM,
BOWSER_SUIT,
SPARKY_STICKER,
CHOMP_CALL,
MINI_MUSHROOM,
MINI_MEGA_HAMMER
BOARD_ITEM_MAGIC_LAMP,
BOARD_ITEM_BOOS_CRYSTAL_BALL,
BOARD_ITEM_WARP_PIPE,
BOARD_ITEM_SWAP_CARD,
BOARD_ITEM_SUPER_MEGA_MUSHROOM,
BOARD_ITEM_MEGA_MUSHROOM,
BOARD_ITEM_SUPER_MINI_MUSHROOM,
BOARD_ITEM_BOWSER_SUIT,
BOARD_ITEM_SPARKY_STICKER,
BOARD_ITEM_CHOMP_CALL,
BOARD_ITEM_MINI_MUSHROOM,
BOARD_ITEM_MINI_MEGA_HAMMER
},
{ //Yoshi
MAGIC_LAMP,
WARP_PIPE,
BOOS_CRYSTAL_BALL,
CHOMP_CALL,
SUPER_MEGA_MUSHROOM,
MEGA_MUSHROOM,
SUPER_MINI_MUSHROOM,
SWAP_CARD,
MINI_MUSHROOM,
MINI_MEGA_HAMMER,
BOWSER_SUIT,
SPARKY_STICKER
BOARD_ITEM_MAGIC_LAMP,
BOARD_ITEM_WARP_PIPE,
BOARD_ITEM_BOOS_CRYSTAL_BALL,
BOARD_ITEM_CHOMP_CALL,
BOARD_ITEM_SUPER_MEGA_MUSHROOM,
BOARD_ITEM_MEGA_MUSHROOM,
BOARD_ITEM_SUPER_MINI_MUSHROOM,
BOARD_ITEM_SWAP_CARD,
BOARD_ITEM_MINI_MUSHROOM,
BOARD_ITEM_MINI_MEGA_HAMMER,
BOARD_ITEM_BOWSER_SUIT,
BOARD_ITEM_SPARKY_STICKER
},
{ //Wario
MAGIC_LAMP,
BOOS_CRYSTAL_BALL,
MINI_MEGA_HAMMER,
CHOMP_CALL,
BOWSER_SUIT,
SUPER_MEGA_MUSHROOM,
MEGA_MUSHROOM,
WARP_PIPE,
SUPER_MINI_MUSHROOM,
SWAP_CARD,
MINI_MUSHROOM,
SPARKY_STICKER
BOARD_ITEM_MAGIC_LAMP,
BOARD_ITEM_BOOS_CRYSTAL_BALL,
BOARD_ITEM_MINI_MEGA_HAMMER,
BOARD_ITEM_CHOMP_CALL,
BOARD_ITEM_BOWSER_SUIT,
BOARD_ITEM_SUPER_MEGA_MUSHROOM,
BOARD_ITEM_MEGA_MUSHROOM,
BOARD_ITEM_WARP_PIPE,
BOARD_ITEM_SUPER_MINI_MUSHROOM,
BOARD_ITEM_SWAP_CARD,
BOARD_ITEM_MINI_MUSHROOM,
BOARD_ITEM_SPARKY_STICKER
},
{ //DK
MAGIC_LAMP,
BOOS_CRYSTAL_BALL,
WARP_PIPE,
SUPER_MEGA_MUSHROOM,
MEGA_MUSHROOM,
BOWSER_SUIT,
SWAP_CARD,
SUPER_MINI_MUSHROOM,
MINI_MUSHROOM,
MINI_MEGA_HAMMER,
CHOMP_CALL,
SPARKY_STICKER
BOARD_ITEM_MAGIC_LAMP,
BOARD_ITEM_BOOS_CRYSTAL_BALL,
BOARD_ITEM_WARP_PIPE,
BOARD_ITEM_SUPER_MEGA_MUSHROOM,
BOARD_ITEM_MEGA_MUSHROOM,
BOARD_ITEM_BOWSER_SUIT,
BOARD_ITEM_SWAP_CARD,
BOARD_ITEM_SUPER_MINI_MUSHROOM,
BOARD_ITEM_MINI_MUSHROOM,
BOARD_ITEM_MINI_MEGA_HAMMER,
BOARD_ITEM_CHOMP_CALL,
BOARD_ITEM_SPARKY_STICKER
},
{ //Daisy
MAGIC_LAMP,
WARP_PIPE,
BOOS_CRYSTAL_BALL,
MINI_MEGA_HAMMER,
SPARKY_STICKER,
CHOMP_CALL,
SUPER_MEGA_MUSHROOM,
MEGA_MUSHROOM,
BOWSER_SUIT,
SWAP_CARD,
SUPER_MINI_MUSHROOM,
MINI_MUSHROOM
BOARD_ITEM_MAGIC_LAMP,
BOARD_ITEM_WARP_PIPE,
BOARD_ITEM_BOOS_CRYSTAL_BALL,
BOARD_ITEM_MINI_MEGA_HAMMER,
BOARD_ITEM_SPARKY_STICKER,
BOARD_ITEM_CHOMP_CALL,
BOARD_ITEM_SUPER_MEGA_MUSHROOM,
BOARD_ITEM_MEGA_MUSHROOM,
BOARD_ITEM_BOWSER_SUIT,
BOARD_ITEM_SWAP_CARD,
BOARD_ITEM_SUPER_MINI_MUSHROOM,
BOARD_ITEM_MINI_MUSHROOM
},
{ //Waluigi
MAGIC_LAMP,
WARP_PIPE,
SPARKY_STICKER,
BOOS_CRYSTAL_BALL,
BOWSER_SUIT,
CHOMP_CALL,
MINI_MEGA_HAMMER,
SWAP_CARD,
SUPER_MEGA_MUSHROOM,
MEGA_MUSHROOM,
SUPER_MINI_MUSHROOM,
MINI_MUSHROOM
BOARD_ITEM_MAGIC_LAMP,
BOARD_ITEM_WARP_PIPE,
BOARD_ITEM_SPARKY_STICKER,
BOARD_ITEM_BOOS_CRYSTAL_BALL,
BOARD_ITEM_BOWSER_SUIT,
BOARD_ITEM_CHOMP_CALL,
BOARD_ITEM_MINI_MEGA_HAMMER,
BOARD_ITEM_SWAP_CARD,
BOARD_ITEM_SUPER_MEGA_MUSHROOM,
BOARD_ITEM_MEGA_MUSHROOM,
BOARD_ITEM_SUPER_MINI_MUSHROOM,
BOARD_ITEM_MINI_MUSHROOM
}
};
@ -252,9 +253,9 @@ s8 BoardComPreferItemGet(s32 player, s8 *items, s8 num_items) {
weight = 100;
for (i = 0; i < num_items; i++) {
item = items[i];
for (j = 0; j < 12; j++) {
for (j = 0; j < SHOP_ITEMS_END; j++) {
if (item == comItemPreferTbl[character][j]) {
if (j < weight && (BoardPlayerItemFind(player, item) == -1 || item == 0xC || item == 0xB)) {
if (j < weight && (BoardPlayerItemFind(player, item) == -1 || item == BOARD_ITEM_MAGIC_LAMP || item == BOARD_ITEM_BOOS_CRYSTAL_BALL)) {
weight = j;
prefer = i;
}
@ -283,7 +284,7 @@ s32 BoardComItemWeightGet(s32 player, s32 item) {
s32 weight;
s32 i;
for (i = 0; i < 12; i++) {
for (i = 0; i < SHOP_ITEMS_END; i++) {
if (item == comItemPreferTbl[GWPlayer[player].character][i]) {
break;
}
@ -351,7 +352,7 @@ static s32 ChooseUseItem(s32 player) {
useItem = -1;
character = GWPlayer[player].character;
weight = 0x64;
weight = 100;
for (i = 0; i < 3; i++) {
item = GWPlayer[player].items[i];
if (item == -1) {
@ -363,7 +364,7 @@ static s32 ChooseUseItem(s32 player) {
}
result = func(player, item);
if (result) {
for (j = 0; j < 0xC; j++) {
for (j = 0; j < SHOP_ITEMS_END; j++) {
if (item == comItemPreferTbl[character][j]) {
if (j < weight) {
weight = j;
@ -373,7 +374,7 @@ static s32 ChooseUseItem(s32 player) {
}
}
}
if (weight == 0x64) {
if (weight == 100) {
return -1;
}
useItem = comItemPreferTbl[character][weight];

View file

@ -98,11 +98,11 @@ static void MushroomMain(void) {
}
if ((GWSystem.max_turn - GWSystem.turn) == 0) {
BoardWinCreate(0, 0x50003U, -1);
BoardWinCreate(0, MAKE_MESSID(5, 3), -1);
BoardWinWait();
BoardWinKill();
} else if (BoardPlayerItemCount(curPlayer) == 3) {
BoardWinCreate(0, 0x50000U, -1);
BoardWinCreate(0, MAKE_MESSID(5, 0), -1);
BoardWinWait();
BoardWinKill();
} else {

View file

@ -2420,7 +2420,7 @@ static s32 DoSparkSpace(s32 player, s32 pause_cam)
static void RemoveSparkSpace(s32 player)
{
if(GWPlayer[player].spark) {
BoardWinCreate(0, 0x12001C, -1);
BoardWinCreate(0, MAKE_MESSID(18, 28), -1);
BoardWinWait();
BoardWinKill();
GWPlayer[player].spark = 0;

View file

@ -871,7 +871,7 @@ static void SameRollExec(void) {
HuPrcVSleep();
}
BoardAudSeqPause(0, 0, 0x3E8);
BoardWinCreate(0, 0x90000, -1);
BoardWinCreate(0, MAKE_MESSID(9, 0), -1);
BoardWinInsertMesSet(sameRollCoinStr, 0);
BoardWinWait();
BoardWinKill();

View file

@ -248,7 +248,7 @@ static void ExecShop(void) {
BoardWinKill();
HuPrcEnd();
}
BoardWinCreateChoice(0, 0xF0000, -1, 0);
BoardWinCreateChoice(0, MAKE_MESSID(15, 0), -1, 0);
DecideComEnter(shopPlayer);
BoardWinWait();
if (BoardWinChoiceGet() != 0) {