mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2025-01-31 07:20:14 -05:00
parent
d3c619ec2f
commit
95a4e1cfba
@ -164,7 +164,7 @@ static void ApplyAllAdvancmentItems(){
|
|||||||
static void ValidateSphereZero(GetAccessibleLocationsStruct& gals){
|
static void ValidateSphereZero(GetAccessibleLocationsStruct& gals){
|
||||||
auto ctx = Rando::Context::GetInstance();
|
auto ctx = Rando::Context::GetInstance();
|
||||||
// Condition for verifying everything required for sphere 0, expanding search to all locations
|
// Condition for verifying everything required for sphere 0, expanding search to all locations
|
||||||
if (logic->CanEmptyBigPoes && gals.validatedStartingRegion && gals.foundTempleOfTime && gals.haveTimeAccess) {
|
if (logic->CouldEmptyBigPoes && gals.validatedStartingRegion && gals.foundTempleOfTime && gals.haveTimeAccess) {
|
||||||
// Apply all items that are necessary for checking all location access
|
// Apply all items that are necessary for checking all location access
|
||||||
ApplyAllAdvancmentItems();
|
ApplyAllAdvancmentItems();
|
||||||
// Reset access as the non-starting age
|
// Reset access as the non-starting age
|
||||||
@ -565,7 +565,7 @@ void ValidateEntrances(bool checkPoeCollectorAccess, bool checkOtherEntranceAcce
|
|||||||
|
|
||||||
ctx->allLocationsReachable = false;
|
ctx->allLocationsReachable = false;
|
||||||
if (checkPoeCollectorAccess){
|
if (checkPoeCollectorAccess){
|
||||||
logic->CanEmptyBigPoes = false;
|
logic->CouldEmptyBigPoes = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (checkOtherEntranceAccess){
|
if (checkOtherEntranceAccess){
|
||||||
|
@ -35,7 +35,8 @@ void RegionTable_Init_Market() {
|
|||||||
|
|
||||||
areaTable[RR_MARKET_GUARD_HOUSE] = Region("Market Guard House", "Market Guard House", {}, NO_DAY_NIGHT_CYCLE, {
|
areaTable[RR_MARKET_GUARD_HOUSE] = Region("Market Guard House", "Market Guard House", {}, NO_DAY_NIGHT_CYCLE, {
|
||||||
//Events
|
//Events
|
||||||
EventAccess(&logic->CanEmptyBigPoes, []{return logic->IsAdult;}),
|
EventAccess(&logic->CouldEmptyBigPoes, []{return logic->IsAdult;}),
|
||||||
|
EventAccess(&logic->CanEmptyBigPoes, []{return logic->IsAdult;}),
|
||||||
}, {
|
}, {
|
||||||
//Locations
|
//Locations
|
||||||
LOCATION(RC_MARKET_10_BIG_POES, logic->IsAdult && logic->BigPoeKill),
|
LOCATION(RC_MARKET_10_BIG_POES, logic->IsAdult && logic->BigPoeKill),
|
||||||
|
@ -880,13 +880,26 @@ namespace Rando {
|
|||||||
|
|
||||||
uint8_t Logic::BottleCount() {
|
uint8_t Logic::BottleCount() {
|
||||||
uint8_t count = 0;
|
uint8_t count = 0;
|
||||||
if (!CanEmptyBigPoes){
|
if (CouldEmptyBigPoes){
|
||||||
return 0;
|
for (int i = SLOT_BOTTLE_1; i <= SLOT_BOTTLE_4; i++) {
|
||||||
}
|
uint8_t item = GetSaveContext()->inventory.items[i];
|
||||||
for (int i = SLOT_BOTTLE_1; i <= SLOT_BOTTLE_4; i++) {
|
switch (item) {
|
||||||
uint8_t item = GetSaveContext()->inventory.items[i];
|
case ITEM_LETTER_RUTO:
|
||||||
if (item != ITEM_NONE && (item != ITEM_LETTER_RUTO || (item == ITEM_LETTER_RUTO && DeliverLetter))) {
|
if (DeliverLetter) {
|
||||||
count++;
|
count++;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case ITEM_BIG_POE:
|
||||||
|
if (CanEmptyBigPoes) {
|
||||||
|
count++;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case ITEM_NONE:
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
count++;
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return count;
|
return count;
|
||||||
|
@ -65,7 +65,10 @@ class Logic {
|
|||||||
// Bottle Count
|
// Bottle Count
|
||||||
uint8_t Bottles = 0;
|
uint8_t Bottles = 0;
|
||||||
uint8_t NumBottles = 0;
|
uint8_t NumBottles = 0;
|
||||||
bool CanEmptyBigPoes = true;
|
//this event covers if the player can currently empty big poes in logic
|
||||||
|
bool CanEmptyBigPoes = false;
|
||||||
|
//this check covers if the generation has confirmed that it's possible to empty big poes if needed as adult
|
||||||
|
bool CouldEmptyBigPoes = true;
|
||||||
|
|
||||||
// Drops and Bottle Contents Access
|
// Drops and Bottle Contents Access
|
||||||
bool NutPot = false;
|
bool NutPot = false;
|
||||||
|
Loading…
Reference in New Issue
Block a user