Merge pull request #34 from briaguya-ai/rolling-gorons

rolling gorons
This commit is contained in:
briaguya 2022-06-01 12:43:06 -04:00 committed by GitHub
commit 485af21726
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 17 additions and 11 deletions

View file

@ -1249,7 +1249,11 @@ GetItemID Randomizer::GetItemFromGet(RandomizerGet randoGet, GetItemID ogItemId)
case PIECE_OF_HEART:
return GI_HEART_PIECE;
case BOMBS_5:
return GI_BOMBS_5;
return CUR_UPG_VALUE(UPG_BOMB_BAG) ? GI_BOMBS_5 : GI_RUPEE_BLUE;
case BOMBS_10:
return CUR_UPG_VALUE(UPG_BOMB_BAG) ? GI_BOMBS_10 : GI_RUPEE_BLUE;
case BOMBS_20:
return CUR_UPG_VALUE(UPG_BOMB_BAG) ? GI_BOMBS_20 : GI_RUPEE_BLUE;
case DEKU_NUTS_5:
return GI_NUTS_5;
case BOMBCHUS_10:
@ -1303,12 +1307,14 @@ GetItemID Randomizer::GetItemFromGet(RandomizerGet randoGet, GetItemID ogItemId)
return GI_BOOTS_HOVER;
case BOMB_BAG:
switch (CUR_UPG_VALUE(UPG_BOMB_BAG)) {
case ITEM_NONE:
case 0:
return GI_BOMB_BAG_20;
case ITEM_BOMB_BAG_20:
case 1:
return GI_BOMB_BAG_30;
case ITEM_BOMB_BAG_30:
case 2:
return GI_BOMB_BAG_40;
case 3:
return GI_RUPEE_BLUE;
}
case PROGRESSIVE_STRENGTH_UPGRADE:
switch (CUR_UPG_VALUE(UPG_STRENGTH)) {
@ -1416,10 +1422,6 @@ GetItemID Randomizer::GetItemFromGet(RandomizerGet randoGet, GetItemID ogItemId)
return GI_NAYRUS_LOVE;
case DEKU_NUTS_10:
return GI_NUTS_10;
case BOMBS_10:
return GI_BOMBS_10;
case BOMBS_20:
return GI_BOMBS_20;
case DEKU_SEEDS_30:
return GI_SEEDS_30;
case BOTTLE_WITH_BIG_POE:

View file

@ -324,7 +324,7 @@ u16 EnGo2_GoronFireGenericGetTextId(EnGo2* this) {
u16 EnGo2_GetTextIdGoronCityRollingBig(GlobalContext* globalCtx, EnGo2* this) {
if (gSaveContext.infTable[17] & 0x4000) {
return 0x3013;
} else if (CUR_CAPACITY(UPG_BOMB_BAG) >= 20 && this->waypoint > 7 && this->waypoint < 12) {
} else if ((CUR_CAPACITY(UPG_BOMB_BAG) >= 20 || gSaveContext.n64ddFlag) && this->waypoint > 7 && this->waypoint < 12) {
return 0x3012;
} else {
return 0x3011;
@ -341,7 +341,11 @@ s16 EnGo2_GetStateGoronCityRollingBig(GlobalContext* globalCtx, EnGo2* this) {
if (Message_ShouldAdvance(globalCtx)) {
if (this->actor.textId == 0x3012) {
this->actionFunc = EnGo2_SetupGetItem;
bombBagUpgrade = CUR_CAPACITY(UPG_BOMB_BAG) == 30 ? GI_BOMB_BAG_40 : GI_BOMB_BAG_30;
if(!gSaveContext.n64ddFlag) {
bombBagUpgrade = CUR_CAPACITY(UPG_BOMB_BAG) == 30 ? GI_BOMB_BAG_40 : GI_BOMB_BAG_30;
} else {
bombBagUpgrade = GetRandomizedItemIdFromKnownCheck(GC_ROLLING_GORON_AS_CHILD, GI_BOMB_BAG_40);
}
EnGo2_GetItem(this, globalCtx, bombBagUpgrade);
Message_CloseTextbox(globalCtx);
gSaveContext.infTable[17] |= 0x4000;
@ -509,7 +513,7 @@ s16 EnGo2_GetStateGoronCityLink(GlobalContext* globalCtx, EnGo2* this) {
case TEXT_STATE_CLOSING:
switch (this->actor.textId) {
case 0x3036:
EnGo2_GetItem(this, globalCtx, GI_TUNIC_GORON);
EnGo2_GetItem(this, globalCtx, gSaveContext.n64ddFlag ? GetRandomizedItemIdFromKnownCheck(GC_ROLLING_GORON_AS_ADULT, GI_TUNIC_GORON) : GI_TUNIC_GORON);
this->actionFunc = EnGo2_SetupGetItem;
return 2;
case 0x3037: