Randomizer feature: Triforce Hunt (#3062)

* Initial work to make triforce pieces their own rando item

* Disable triforce greyscaling

* Better triforce model, finish adding triforce pieces to logic

* Triforce model is now a shard

* Credits warp + start of item tracker

* Initial item tracker stuff

* Completed triangle on triforce completion

* Completed triforce model on GI done

* Multiple triforce piece models

* Triforce pieces in save editor & fix build

* Finish item tracker

* Gameplaystats timestamp

* Revert parts of logic

* More reverting

* Start of making Triforce Hunt the win condition

* Bit of cleanup

* Triforce pieces can show up as icetraps

* Grant GBK to player after hunt is completed

* Better text boxes

* Disable GBK option in ImGui with Triforce Hunt on

* Clean-up

* Forced save on completion improvements

* Update Item Tracker Settings initial size

* Small ImGui adjustments

* French translation and update defaults

* Finish translations

* Fix timer completion & 50+ triforce pieces

* Remove GI_ and ITEM_ enum usage, add french ice trap names

* Fix build & small fixes

* Review comments

* Comment clarification
This commit is contained in:
aMannus
2023-09-26 15:45:37 +02:00
committed by GitHub
parent ccd05d8e58
commit bae6cf4203
75 changed files with 1364 additions and 27 deletions

View File

@@ -150,6 +150,9 @@ namespace Logic {
uint8_t BottomOfTheWellKeys = 0;
uint8_t TreasureGameKeys = 0;
//Triforce Pieces
uint8_t TriforcePieces = 0;
//Boss Keys
bool BossKeyForestTemple = false;
bool BossKeyFireTemple = false;
@@ -309,6 +312,7 @@ namespace Logic {
bool AtDay = false;
bool AtNight = false;
uint8_t Age = 0;
bool CanCompleteTriforce = false;
//Events
bool ShowedMidoSwordAndShield = false;
@@ -620,7 +624,7 @@ namespace Logic {
(LACSCondition == LACSCONDITION_REWARDS && StoneCount + MedallionCount + (Greg && GregInLogic ? 1 : 0) >= LACSRewardCount.Value<uint8_t>()) ||
(LACSCondition == LACSCONDITION_DUNGEONS && DungeonCount + (Greg && GregInLogic ? 1 : 0) >= LACSDungeonCount.Value<uint8_t>()) ||
(LACSCondition == LACSCONDITION_TOKENS && GoldSkulltulaTokens >= LACSTokenCount.Value<uint8_t>());
CanCompleteTriforce = TriforcePieces >= TriforceHuntRequired.Value<uint8_t>();
}
bool SmallKeys(Key dungeon, uint8_t requiredAmount) {
@@ -873,7 +877,8 @@ namespace Logic {
NumBottles = 0;
NoBottles = false;
//Triforce Pieces
TriforcePieces = 0;
//Drops and Bottle Contents Access
DekuNutDrop = false;