mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2024-11-22 09:22:18 -05:00
fix anju rando item gives when performing an action (#3107)
This commit is contained in:
parent
325c7fe365
commit
b2e9d547ba
@ -401,8 +401,8 @@ void func_80ABA9B8(EnNiwLady* this, PlayState* play) {
|
||||
if (!gSaveContext.n64ddFlag) {
|
||||
func_8002F434(&this->actor, play, GI_POCKET_EGG, 200.0f, 100.0f);
|
||||
} else {
|
||||
// TODO: get-item-rework Adult trade sequence
|
||||
this->getItemEntry = Randomizer_GetItemFromKnownCheck(RC_KAK_ANJU_AS_ADULT, GI_POCKET_EGG);
|
||||
GiveItemEntryFromActor(&this->actor, play, this->getItemEntry, 200.0f, 100.0f);
|
||||
gSaveContext.itemGetInf[2] |= 0x1000;
|
||||
}
|
||||
|
||||
@ -436,9 +436,9 @@ void func_80ABAB08(EnNiwLady* this, PlayState* play) {
|
||||
if (!gSaveContext.n64ddFlag) {
|
||||
func_8002F434(&this->actor, play, GI_COJIRO, 200.0f, 100.0f);
|
||||
} else {
|
||||
// TODO: get-item-rework Adult trade sequence
|
||||
this->getItemEntry = Randomizer_GetItemFromKnownCheck(RC_KAK_TRADE_POCKET_CUCCO, GI_COJIRO);
|
||||
Randomizer_ConsumeAdultTradeItem(play, ITEM_POCKET_CUCCO);
|
||||
GiveItemEntryFromActor(&this->actor, play, this->getItemEntry, 200.0f, 100.0f);
|
||||
gSaveContext.itemGetInf[2] |= 0x4000;
|
||||
}
|
||||
this->actionFunc = func_80ABAC00;
|
||||
@ -462,23 +462,19 @@ void func_80ABAC00(EnNiwLady* this, PlayState* play) {
|
||||
if (Actor_HasParent(&this->actor, play)) {
|
||||
this->actionFunc = func_80ABAC84;
|
||||
} else {
|
||||
getItemId = this->getItemId;
|
||||
if (LINK_IS_ADULT) {
|
||||
if (!gSaveContext.n64ddFlag) {
|
||||
getItemId = !(gSaveContext.itemGetInf[2] & 0x1000) ? GI_POCKET_EGG : GI_COJIRO;
|
||||
} else {
|
||||
// TODO: get-item-rework Adult trade sequence
|
||||
if (gSaveContext.n64ddFlag) {
|
||||
getItemId = this->getItemEntry.getItemId;
|
||||
GiveItemEntryFromActor(&this->actor, play, this->getItemEntry, 200.0f, 100.0f);
|
||||
// Skip setting item flags because that was done earlier
|
||||
this->actionFunc = func_80ABA778;
|
||||
return;
|
||||
}
|
||||
|
||||
getItemId = this->getItemId;
|
||||
if (LINK_IS_ADULT) {
|
||||
getItemId = !(gSaveContext.itemGetInf[2] & 0x1000) ? GI_POCKET_EGG : GI_COJIRO;
|
||||
}
|
||||
if (this->getItemEntry.getItemId == GI_NONE) {
|
||||
func_8002F434(&this->actor, play, getItemId, 200.0f, 100.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void func_80ABAC84(EnNiwLady* this, PlayState* play) {
|
||||
if ((Message_GetState(&play->msgCtx) != TEXT_STATE_DONE) || !Message_ShouldAdvance(play)) {
|
||||
@ -486,11 +482,14 @@ void func_80ABAC84(EnNiwLady* this, PlayState* play) {
|
||||
}
|
||||
osSyncPrintf(VT_FGCOL(GREEN) "☆☆☆☆☆ 正常終了 ☆☆☆☆☆ \n" VT_RST);
|
||||
if (LINK_IS_ADULT) {
|
||||
// Flags for randomizer gives are set in the original message prompt choice handling
|
||||
if (!gSaveContext.n64ddFlag) {
|
||||
if (!(gSaveContext.itemGetInf[2] & 0x1000)) {
|
||||
gSaveContext.itemGetInf[2] |= 0x1000;
|
||||
} else {
|
||||
gSaveContext.itemGetInf[2] |= 0x4000;
|
||||
}
|
||||
}
|
||||
this->actionFunc = func_80ABA778;
|
||||
} else {
|
||||
gSaveContext.itemGetInf[0] |= 0x1000;
|
||||
|
Loading…
Reference in New Issue
Block a user