mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2025-08-22 22:33:43 -07:00
remove RSK_CUCCO_COUNT
This commit is contained in:
parent
8a4edc9e79
commit
33d4dc46de
4 changed files with 10 additions and 14 deletions
|
@ -10,13 +10,16 @@ extern PlayState* gPlayState;
|
||||||
}
|
}
|
||||||
|
|
||||||
void RegisterCuccosToReturn() {
|
void RegisterCuccosToReturn() {
|
||||||
COND_VB_SHOULD(VB_SET_CUCCO_COUNT, IS_RANDO || CVarGetInteger(CVAR_ENHANCEMENT("CuccosToReturn"), 7) != 7, {
|
COND_VB_SHOULD(VB_SET_CUCCO_COUNT, CVarGetInteger(CVAR_ENHANCEMENT("CuccosToReturn"), 7) != 7, {
|
||||||
EnNiwLady* enNiwLady = va_arg(args, EnNiwLady*);
|
EnNiwLady* enNiwLady = va_arg(args, EnNiwLady*);
|
||||||
// Override starting Cucco count using setting value
|
// Override starting Cucco count using setting value
|
||||||
enNiwLady->cuccosInPen =
|
enNiwLady->cuccosInPen = 7 - CVarGetInteger(CVAR_ENHANCEMENT("CuccosToReturn"), 7);
|
||||||
7 - (IS_RANDO ? RAND_GET_OPTION(RSK_CUCCO_COUNT) : CVarGetInteger(CVAR_ENHANCEMENT("CuccosToReturn"), 7));
|
if (IS_RANDO && enNiwLady->cuccosInPen == 7) {
|
||||||
|
// force at least 1 in rando to test str0
|
||||||
|
enNiwLady->cuccosInPen = 6;
|
||||||
|
}
|
||||||
*should = false;
|
*should = false;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
static RegisterShipInitFunc initFunc(RegisterCuccosToReturn, { "IS_RANDO", CVAR_ENHANCEMENT("CuccosToReturn") });
|
static RegisterShipInitFunc initFunc(RegisterCuccosToReturn, { CVAR_ENHANCEMENT("CuccosToReturn") });
|
||||||
|
|
|
@ -595,7 +595,6 @@ void Settings::CreateOptionDescriptions() {
|
||||||
"\n"
|
"\n"
|
||||||
"Greg as Wildcard - Greg does not change logic, Greg helps obtain GBK, max number of "
|
"Greg as Wildcard - Greg does not change logic, Greg helps obtain GBK, max number of "
|
||||||
"rewards on slider does not change.";
|
"rewards on slider does not change.";
|
||||||
mOptionDescriptions[RSK_CUCCO_COUNT] = "The amount of cuccos needed to claim the reward from Anju the Cucco Lady.";
|
|
||||||
mOptionDescriptions[RSK_BIG_POE_COUNT] = "The Poe collector will give a reward for turning in this many Big Poes.";
|
mOptionDescriptions[RSK_BIG_POE_COUNT] = "The Poe collector will give a reward for turning in this many Big Poes.";
|
||||||
mOptionDescriptions[RSK_SKIP_CHILD_STEALTH] =
|
mOptionDescriptions[RSK_SKIP_CHILD_STEALTH] =
|
||||||
"The crawlspace into Hyrule Castle goes straight to Zelda, skipping the guards.";
|
"The crawlspace into Hyrule Castle goes straight to Zelda, skipping the guards.";
|
||||||
|
|
|
@ -5805,7 +5805,6 @@ typedef enum {
|
||||||
RSK_STARTING_NUTS,
|
RSK_STARTING_NUTS,
|
||||||
RSK_FULL_WALLETS,
|
RSK_FULL_WALLETS,
|
||||||
RSK_SHUFFLE_CHEST_MINIGAME,
|
RSK_SHUFFLE_CHEST_MINIGAME,
|
||||||
RSK_CUCCO_COUNT,
|
|
||||||
RSK_BIG_POE_COUNT,
|
RSK_BIG_POE_COUNT,
|
||||||
RSK_SKIP_EPONA_RACE,
|
RSK_SKIP_EPONA_RACE,
|
||||||
RSK_COMPLETE_MASK_QUEST,
|
RSK_COMPLETE_MASK_QUEST,
|
||||||
|
|
|
@ -269,7 +269,6 @@ void Settings::CreateOptions() {
|
||||||
OPT_BOOL(RSK_SKIP_EPONA_RACE, "Skip Epona Race", {"Don't Skip", "Skip"}, OptionCategory::Setting, CVAR_RANDOMIZER_SETTING("SkipEponaRace"), mOptionDescriptions[RSK_SKIP_EPONA_RACE], WidgetType::Checkbox, RO_GENERIC_DONT_SKIP);
|
OPT_BOOL(RSK_SKIP_EPONA_RACE, "Skip Epona Race", {"Don't Skip", "Skip"}, OptionCategory::Setting, CVAR_RANDOMIZER_SETTING("SkipEponaRace"), mOptionDescriptions[RSK_SKIP_EPONA_RACE], WidgetType::Checkbox, RO_GENERIC_DONT_SKIP);
|
||||||
OPT_BOOL(RSK_SKIP_SCARECROWS_SONG, "Skip Scarecrow's Song", CVAR_RANDOMIZER_SETTING("SkipScarecrowsSong"), mOptionDescriptions[RSK_SKIP_SCARECROWS_SONG]);
|
OPT_BOOL(RSK_SKIP_SCARECROWS_SONG, "Skip Scarecrow's Song", CVAR_RANDOMIZER_SETTING("SkipScarecrowsSong"), mOptionDescriptions[RSK_SKIP_SCARECROWS_SONG]);
|
||||||
OPT_U8(RSK_BIG_POE_COUNT, "Big Poe Target Count", {NumOpts(0, 10)}, OptionCategory::Setting, CVAR_RANDOMIZER_SETTING("BigPoeTargetCount"), mOptionDescriptions[RSK_BIG_POE_COUNT], WidgetType::Slider, 10);
|
OPT_U8(RSK_BIG_POE_COUNT, "Big Poe Target Count", {NumOpts(0, 10)}, OptionCategory::Setting, CVAR_RANDOMIZER_SETTING("BigPoeTargetCount"), mOptionDescriptions[RSK_BIG_POE_COUNT], WidgetType::Slider, 10);
|
||||||
OPT_U8(RSK_CUCCO_COUNT, "Cuccos to return", {NumOpts(0, 7)}, OptionCategory::Setting, CVAR_RANDOMIZER_SETTING("CuccosToReturn"), mOptionDescriptions[RSK_CUCCO_COUNT], WidgetType::Slider, 7);
|
|
||||||
OPT_BOOL(RSK_COMPLETE_MASK_QUEST, "Complete Mask Quest", CVAR_RANDOMIZER_SETTING("CompleteMaskQuest"), mOptionDescriptions[RSK_COMPLETE_MASK_QUEST]);
|
OPT_BOOL(RSK_COMPLETE_MASK_QUEST, "Complete Mask Quest", CVAR_RANDOMIZER_SETTING("CompleteMaskQuest"), mOptionDescriptions[RSK_COMPLETE_MASK_QUEST]);
|
||||||
OPT_U8(RSK_GOSSIP_STONE_HINTS, "Gossip Stone Hints", {"No Hints", "Need Nothing", "Mask of Truth", "Stone of Agony"}, OptionCategory::Setting, CVAR_RANDOMIZER_SETTING("GossipStoneHints"), mOptionDescriptions[RSK_GOSSIP_STONE_HINTS], WidgetType::Combobox, RO_GOSSIP_STONES_NEED_NOTHING, false, IMFLAG_NONE);
|
OPT_U8(RSK_GOSSIP_STONE_HINTS, "Gossip Stone Hints", {"No Hints", "Need Nothing", "Mask of Truth", "Stone of Agony"}, OptionCategory::Setting, CVAR_RANDOMIZER_SETTING("GossipStoneHints"), mOptionDescriptions[RSK_GOSSIP_STONE_HINTS], WidgetType::Combobox, RO_GOSSIP_STONES_NEED_NOTHING, false, IMFLAG_NONE);
|
||||||
OPT_U8(RSK_HINT_CLARITY, "Hint Clarity", {"Obscure", "Ambiguous", "Clear"}, OptionCategory::Setting, CVAR_RANDOMIZER_SETTING("HintClarity"), mOptionDescriptions[RSK_HINT_CLARITY], WidgetType::Combobox, RO_HINT_CLARITY_CLEAR, true, IMFLAG_INDENT);
|
OPT_U8(RSK_HINT_CLARITY, "Hint Clarity", {"Obscure", "Ambiguous", "Clear"}, OptionCategory::Setting, CVAR_RANDOMIZER_SETTING("HintClarity"), mOptionDescriptions[RSK_HINT_CLARITY], WidgetType::Combobox, RO_HINT_CLARITY_CLEAR, true, IMFLAG_INDENT);
|
||||||
|
@ -1316,8 +1315,8 @@ void Settings::CreateOptions() {
|
||||||
WidgetContainerType::TABLE);
|
WidgetContainerType::TABLE);
|
||||||
mOptionGroups[RSG_TIMESAVERS_IMGUI] = OptionGroup::SubGroup(
|
mOptionGroups[RSG_TIMESAVERS_IMGUI] = OptionGroup::SubGroup(
|
||||||
"Timesavers",
|
"Timesavers",
|
||||||
{ &mOptions[RSK_CUCCO_COUNT], &mOptions[RSK_BIG_POE_COUNT], &mOptions[RSK_SKIP_CHILD_ZELDA],
|
{ &mOptions[RSK_BIG_POE_COUNT], &mOptions[RSK_SKIP_CHILD_ZELDA], &mOptions[RSK_SKIP_EPONA_RACE],
|
||||||
&mOptions[RSK_SKIP_EPONA_RACE], &mOptions[RSK_COMPLETE_MASK_QUEST], &mOptions[RSK_SKIP_SCARECROWS_SONG] },
|
&mOptions[RSK_COMPLETE_MASK_QUEST], &mOptions[RSK_SKIP_SCARECROWS_SONG] },
|
||||||
WidgetContainerType::COLUMN);
|
WidgetContainerType::COLUMN);
|
||||||
mOptionGroups[RSG_ITEM_POOL_HINTS_IMGUI] = OptionGroup::SubGroup("",
|
mOptionGroups[RSG_ITEM_POOL_HINTS_IMGUI] = OptionGroup::SubGroup("",
|
||||||
{
|
{
|
||||||
|
@ -1582,7 +1581,6 @@ void Settings::CreateOptions() {
|
||||||
&mOptions[RSK_SKIP_EPONA_RACE],
|
&mOptions[RSK_SKIP_EPONA_RACE],
|
||||||
&mOptions[RSK_SKIP_SCARECROWS_SONG],
|
&mOptions[RSK_SKIP_SCARECROWS_SONG],
|
||||||
&mOptions[RSK_BIG_POE_COUNT],
|
&mOptions[RSK_BIG_POE_COUNT],
|
||||||
&mOptions[RSK_CUCCO_COUNT],
|
|
||||||
&mOptions[RSK_COMPLETE_MASK_QUEST],
|
&mOptions[RSK_COMPLETE_MASK_QUEST],
|
||||||
});
|
});
|
||||||
mOptionGroups[RSG_MISC] = OptionGroup("Miscellaneous Settings",
|
mOptionGroups[RSG_MISC] = OptionGroup("Miscellaneous Settings",
|
||||||
|
@ -2878,11 +2876,8 @@ void Context::FinalizeSettings(const std::set<RandomizerCheck>& excludedLocation
|
||||||
if (mOptions[RSK_FISHSANITY].IsNot(RO_FISHSANITY_HYRULE_LOACH)) {
|
if (mOptions[RSK_FISHSANITY].IsNot(RO_FISHSANITY_HYRULE_LOACH)) {
|
||||||
mOptions[RSK_LOACH_HINT].Set(RO_GENERIC_OFF);
|
mOptions[RSK_LOACH_HINT].Set(RO_GENERIC_OFF);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mOptions[RSK_CUCCO_COUNT].Is(0)) {
|
|
||||||
mOptions[RSK_CHICKENS_HINT].Set(RO_GENERIC_OFF);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void Settings::ParseJson(nlohmann::json spoilerFileJson) {
|
void Settings::ParseJson(nlohmann::json spoilerFileJson) {
|
||||||
mContext->SetSeedString(spoilerFileJson["seed"].get<std::string>());
|
mContext->SetSeedString(spoilerFileJson["seed"].get<std::string>());
|
||||||
mContext->SetSeed(spoilerFileJson["finalSeed"].get<uint32_t>());
|
mContext->SetSeed(spoilerFileJson["finalSeed"].get<uint32_t>());
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue