Commit Graph

207 Commits

Author SHA1 Message Date
Baoulettes 50bc5de2da Cosmetics editor - Feature requested (#841)
* Precise positionning, reset margin and pos

* Fix big hearts issues

* add + and - to the editor

* add const to the char*

* Fix labels issues
2022-07-25 19:06:05 -04:00
Christopher Leggett 9f2eb46663
Takes Ganondor's text & hint from CustomMessageTable 2022-07-24 19:43:11 -04:00
Christopher Leggett 661946b4f5
Pulls altar text from CustomMessageTable instead of gSaveContext. 2022-07-24 19:34:12 -04:00
Christopher Leggett 780e9f4669
Fixes storage of altar and ganon hints/text.
Only one language is stored in gSaveContext at the moment so store the one language in all 3 CustomMessageEntry languages.
2022-07-24 19:23:54 -04:00
Christopher Leggett a33c3d606a
Fixes minor oversight from previous commit. 2022-07-24 18:54:05 -04:00
Christopher Leggett a21998c489
Does some refactoring of rando custom message registration
The goal was less verbosity when adding new get-item messages later.
2022-07-24 18:47:55 -04:00
Christopher Leggett dca922ade8
Merge branch 'develop-zhora' of https://github.com/HarbourMasters/Shipwright into custom-messages 2022-07-24 18:08:10 -04:00
Revo 01347dc9f9
Move Skulltula Debug functionality to its own checkbox option. (#912) 2022-07-24 18:12:34 +02:00
vaguerant 38ecb6cfff
Bug fix: Water Temple gate & bootcommands.c cleanup (#618)
* Vanilla bug fix: child Water Temple gate

* Clean up bootcommands.c
2022-07-24 09:15:33 -04:00
David Chavez b3d3148383 Merge branch 'develop-rachael' into develop-zhora 2022-07-22 02:34:55 +02:00
Baoulettes df756b2ce0
Cosmetics editor - Feature requested (#841)
* Precise positionning, reset margin and pos

* Fix big hearts issues

* add + and - to the editor

* add const to the char*

* Fix labels issues
2022-07-22 01:33:39 +02:00
Baoulettes c19beca980
Fast Save Loader crashes fixes (#848) 2022-07-22 00:36:46 +02:00
RaelCappra e41873fff4
Savestate crash fix on Ubuntu (#843) 2022-07-22 00:34:04 +02:00
Josh Bodner 1d208c7dc2 Revert to using boolean in json 2022-07-21 11:04:37 -07:00
Josh Bodner 2edc81ee2d Attempt to restore formatting of randomizer.cpp 2022-07-21 11:03:28 -07:00
Christopher Leggett 21c585b2ce
Removes randomizer_custom_messages, as I relocated its logic elsewhere. 2022-07-21 13:10:04 -04:00
Christopher Leggett b5dc097587
Cleanup and move most hint logic to CustomMessage.
Haven't removed where rando stores the hints for itself and the ganon and altar hints are still pulled from the randomizer class' local storage, but gossip stone hints are pulled from the custom message table now.
2022-07-21 13:05:15 -04:00
Josh Bodner cddca2700a Move Child Zelda spoiler write out of for loop so it's not repeatedly hit 2022-07-20 23:08:57 -07:00
Josh Bodner 17b3f65276 Fix the issue for real 2022-07-20 22:57:18 -07:00
Josh Bodner 75a4d2cf99 Actually use the same strings everywhere lol 2022-07-20 21:50:55 -07:00
Josh Bodner 795ee54f2b Remove use of std::format since Jenkins doesn't like it 2022-07-20 21:44:32 -07:00
Josh Bodner 3633bdeeaf Fix Child Zelda Skip rando setting always on 2022-07-20 19:57:38 -07:00
Christopher Leggett c5f66373c3
Adds ability to store and retrieve textbox size and position. 2022-07-19 22:51:39 -04:00
Christopher Leggett 2d1aa1d13a
Merge in develop-zhora 2022-07-19 20:28:21 -04:00
Christopher Leggett 32abe61554
Implements a basic CreateMessage function for non-GetItem text. 2022-07-19 00:31:37 -04:00
Andrew Van Caem edfa369639
Add yShift position when displaying the positions of cylinders (#823) 2022-07-18 19:31:52 -04:00
PurpleHato 9118788149
ADD: SaveEditor Edit current D-Pad Item (#799)
* ADD: Dapd on "current Dpad equip

* TWEAK: Spelling

* TWEAK: Shows it only if gDpadEquips is enable

* TWEAK: Forgot one "D-pad"

* TWEAK: Spacing
2022-07-18 19:24:56 -04:00
briaguya d45968270a
Address rando pr comments (#742)
* prefix randomizer methods with Randomizer_

* make filename a local var

* remove unused file, update malon to use new names

* move randomizertypes to randomizer directory

* rename to Randomizer_GetSettingValue

Co-authored-by: briaguya <briaguya@alice>
2022-07-18 19:20:07 -04:00
Christopher Leggett e04b2c80b6
Implements the custom text for gInjectSkulltulaCount.
Also auto-dissmisses the textbox when gSkulltulaFreeze is on. When gInjectSkulltulaCount is off, text is not auto-dismissed just like before, since that is base game text still.
2022-07-17 22:02:22 -04:00
Christopher Leggett 1ed45e1433
Implements adding message tables and retrieving by an ID.
Basically, some external code can choos a unique id and create a message table for itself. The idea is that modders can hook into this as well so they can get their own message table and don't have to worry about conflicting with the base game's textIDs. I have also implemented this setup for Randomizer so that the pre-filled bottles (which didn't exist in the original outside of Ruto's letter) have unique text as compared to the text for the item they are filled with.
2022-07-17 21:03:32 -04:00
Christopher Leggett ee1270f346
more cleanup 2022-07-17 15:29:02 -04:00
Christopher Leggett 98c771cf2c
Simplifies the function signature of `CustomMessage_RetrieveIfExists`. 2022-07-17 15:11:16 -04:00
Christopher Leggett 69d2b5b3a3
Implements function to return custom message if one exists.
`CustomMessage_RetrieveIfExists` is placed at the very beginning of the z_message_PAL.c `Message_OpenText` if statement after any special changes to textIds are made. This function will either return either true or false and if true it will populate the necessary values of font and msgCtx to display said message. It's placement at the beginning also allows for overriding existing textIds to have new information, which will come in handy later.
2022-07-17 15:02:08 -04:00
Christopher Leggett f57a912ca1
Does some cleanup of unecessary code and cases of no string provided. 2022-07-17 13:31:38 -04:00
Christopher Leggett 4eaf70b859
Refactors CustomMessages to not be rando specific.
Pulls the Custom Message related code out into it's own class, which has an initialization phase where other enhancements / future features can create messages during an initialization phase to be stored and retrieved later. Along with this refactoring, the 4 bottle messages from the previous rando-specific system are now created and stored during intialization and retrieved by their getItemId.

Now that it isn't rando specific, the goal is to move anything text changes that are hard-coded into z_message_PAL.c and refactor it so that future text additions/overrides can be done without modifying that file.
2022-07-17 12:34:56 -04:00
Christopher Leggett 3f2111a3e6
Adds text for Bottle with Blue Fire as a demo. 2022-07-15 19:48:49 -04:00
Christopher Leggett 46df17e29f
Added an extra helper function and removed instant text control code from ITEM_OBTAINED 2022-07-14 11:17:43 -04:00
Christopher Leggett 9c57ed6642
Merge branch 'develop' of https://github.com/HarbourMasters/Shipwright into rando-custom-messages 2022-07-14 10:06:05 -04:00
David Chavez 1ed58c4a99
Fix migration cvar deletion path (#765) 2022-07-14 01:19:40 -04:00
Christopher Leggett cd096ce5e9
Fixes newline function to return correct character. 2022-07-14 00:56:47 -04:00
agamache 06338d864f
Fixes macOS randomizer functionality with App Directory (#761)
* Fixes macOS randomizer functionality with App Directory

* Fix windows build

* Update soh/soh/Enhancements/randomizer/3drando/rando_main.cpp

* Update soh/soh/Enhancements/randomizer/3drando/spoiler_log.cpp

* Revert band-aid fix

Co-authored-by: Kenix3 <kenixwhisperwind@gmail.com>
2022-07-14 00:56:29 -04:00
Christopher Leggett 0ae5c4c0f2
Merge branch 'develop' of https://github.com/HarbourMasters/Shipwright into rando-custom-messages 2022-07-14 00:42:00 -04:00
Christopher Leggett a81ecfcfcc
Renames the separated custom messages files to prevent conflict. 2022-07-14 00:41:04 -04:00
Christopher Leggett d9277530a2
Refactors custom message code to its own file 2022-07-13 23:35:45 -04:00
KiritoDev 219804cbe4
Controller Configuration UI and JSON Config (#760)
* Initial controller hud ui

* Reverted fbdemo changes

* Moved config to json and implemented controller config

* fix build on linux, gitignore new config file

* fix build

* Fix compilation and file directory paths

* Call save on cvar save

* Fixed cvar loading and added deck slots to the config

* Changed control deck port 0 to use a physical device by default

* Added gyro and rumble & fixed loading errors

* Save config on toggle menubar

* fix linux build

* Fixed drift calculation

* Controller config now saves when pressing F1

* Removed ExitGame hook from ImGuiImpl

* Moved mappings to a map

* Added GetKeyName

* untranslate scancodes

* Fixed hud layout on keyboard device

* Fixed keyboard read on hud

* Fixed crash when reloading controllers

* Removed ConfigFile and changed file extension

* Changed Dummy to Disconnected and fixed filters

* Removed function leftover

* Changed ControllerHud to InputEditor

Co-authored-by: briaguya <briaguya@alice>
Co-authored-by: David Chavez <david@dcvz.io>
2022-07-13 23:12:11 -04:00
Christopher Leggett e9ba8f734f
Early version of custom messages. 2022-07-13 20:35:42 -04:00
ChristopherJTrent 248f49b3bf Update Keese labels 2022-07-13 19:39:44 -04:00
Baoulettes 2b72b10356 .xiF slebaL 2022-07-13 19:39:25 -04:00
David Chavez 7b04f67884
Introduce App Directory Path (#572)
* Introduce app directory path concept

* macos: Remove hacky way of using applicaiton directory

* Update the new SaveManager

* Address stack user after return

* Remove unecessary property

* Use std::string for filepath

* Improve clang specific detections

* Use new path system for imgui files

* Improve helper for getting relative paths
2022-07-13 00:19:07 -04:00
Nicholas Estelami 3aa93b9855
Removed legacy audio mode and fixed ganon sound bug (#657) 2022-07-11 22:37:39 -04:00
Baoulettes 37bf9b36ad
Cosmetics hotfixes (#640)
* Initial branch creation

* Revert Main Game so it do not conflict later

* should fix window build, made namespace for Cosmetics

* forgot to edit one title

* Ability to add hidden window (usefull for Rainbow)
Fix building issues

* Line break, unused bool remove
2022-07-11 21:33:48 -04:00
briaguya c25089b98f
testing out item replacement (#416)
* skip learning song of storms

* don't set flag when getting goron tunic as child

* Initiates prelude check when master sword unloads.

Not quite how N64 rando does it but so far it's the only way I've found to make it trigger without also triggering the time travel again.

* Stops Shadow Temple lore prompts from appearing in rando.

* Skips cutscene of royal tomb explosion in rando.

Explosion sound doesn't play correctly and I think the debris appears in the wrong place, but the functionality is here.

* Improves visual of exploding gravestone.

* Adds some comments explaining the rando differences

* Skip ruto text box in jabu blue warp

For rando

* skip intro cutscene in dodongo's cavern

* load spoiler files on boot, fix spoilerfile existing check when making new saves

* name entry dropped spoiler logic

* make sure to actually init the cvar

* no chime on load

* uncomment

* Skip ganondrof cutscene

Skip to scream part of the death animation, skipping the text boxes etc. For rando

* Update z_boss_ganondrof.c

* skip owl flight cutscenes in rando

* Fixes skipped text so it only applies to shadow temple.

Earlier fix inadvertently applied to some other text as well, changed logic so that only specified sceneNums and textIds can have this enabled, and text skipped by sceneNum can have the skip overriden by textId if needed. Currently there are no overrides so the textId section of the logic is commented out to avoid compilation errors.

* Adds a default to the switch case statements that leaves the randoSkipText variable unchanged, just in case.

* TEST: Text for item

* Adding ganon flavor text

* ADD: AMMO Count

* format ganon text/hint text

* Autoskip the tower cutscene if settings call for tower collapse.

* ganon hint text logic

* Improved prelude after time travel fix

* swapped the sizes between ganon hint text and ganon text, as they were set to the wrong things.

* this is all i did

* not the cleanest code ever but it's working

* ADD: GS Count

* ADD: Wallter (crash for now)

* TWEAK: Wallet check

* FIX: Use DrawItem instread of DrawUpgrade... b-baka!

* Fixes some vanilla bugs introduced by rando code.

* Added cutscene skip for zelda escaping

Using the debug cutscene skipping function. Also added a conditional so the bridge doesn't spawn closed when cutscene is ready to trigger

* ADD: X Spacing + Placeholders for song

* ADD: default case for items

* TWEAK: Spacing

* FIX: Light Arrow

* ADD: Ammo Option

* use groups instead

* ADD: More spacing logic

* songs and names

* TWEAK: Color on wallet

* colors

* Added flags cutscene before nabooru fight

* ADD: ChromaKey text

* First attempt skip cs after nabooru defeat

* Better implementation for specific rando cutscene skips

* use pulseaudio defaults

* spaces/tabs

* move color push/pop to stop crash

* make the colors work again

* the real bottle fix

* pulseaudio values tuned for n64 audio at 44.1khz

* update tlength

* remove one hardcoded samplerate

* Cleaned up and fixed zelda escape skip

The if statement is a freaking monster, but unless we want to skip more cutscenes in the same way later, this is the most compact way of doing it that I know of.

* Revert one line to match original

nothing functional

* another hint line that breaks autonewline logic

* don't autospawn epona if we don't have the song/ocarina

* Trying to use iron knuckle death effects

not working yet

* Streamlined OoT cutscene skip for future additions

Also cleaned up if statement in general

* Made if statement more readable

Also added clarity for what cutscene was skipped

* Fixed typo in comment

* Janky nabooru defeat cs skip

* altar text formatting (gonna need help shortening some of the french ones)

* more altar text formatting

* english altar text formatting complete

* make gtg blocking guard check for card not bridge

* FIX: Typo!

* FIX: Uppercases

* FIX: Typo

* TWEAK: Alter + some names

* TWEAK: More caps!

* ADD: Missing string

TWEAK more uppercases and namefixe
s

* Hide nabooru death by covering her in flames

* bandaid fix for death crash issue

* Twinrova defeat cs skip

Skips the animation and manually calls the function to show the "beam" around the sisters

* fix crash

* fix caps to match

* fix great fairy reward mashing/shielding issue

* TWEAK : Typo clé to Clé

* TWEAK: Some Altar hints

TWEAK: Some capitals

* TWEAK: Unmatching text + some cap again

* TWEAK: More tweaks

* fix build

* remove extra json.hpp, add hint

* Update randomizer_item_tracker.cpp

* TWEAK: Double Defense with RedParticles instead of white

* make sure we don't optimize out the check to ensure a spoilerfile exists

* vanilla ganon boss key hint formatting

* TWEAK: FR- better way of the hero text

* fix

* and again

* Initializes dungeonsDone items in gSaveContext to 0.

* Replaces sizeof calculation with a NUM_DUNGEONS constant.

* Fixes Saria's Gift on the LW Bridge from getting killed when holding shield.

* More airtight fix for Saria's Gift on the Bridge.

* Lifts one of the conditions in the if statement a little higher to prevent unnecessary lookups of getItemId.

* Invalidate text box icon before drawing

* Fixes the case where Saria's gift is an Ice Trap.

We still get the Ice Trap once, but never again. This does mean you can now hold R while walking in to avoid the ice trap, but everything else seems to work fine.

* Initial commit

Might need changing when we change the settings in the future

* Fixes Door of Time opening cutscene after warping with prelude.

* Initial waterfall skip

Very rudimentary way of doing things but it seems to work so 🤷

* inital rework

* fixed default rotation for 2D sprites

* fix tab/space issues

* 3d drops rando merge fix again

* Allows Impa to appear in the Lullaby check post drawbridge escape.

* Changes Ganon's Trials Count setting to a checkbox

The checkbox is whether or not to skip all of them. Leaving the box unchecked will mean doing all of them. Eventually this will be switched back to a slider once we implement the logic for which trials start out completed.

* Sets all Ganon's Trials to incomplete in new saves.

Fixes https://github.com/briaguya-ai/rando-issue-tracker/issues/131

* fix castle guards when oot throw cutscene has already played in rando

* Properly removes the beams when trials are cleared.

* Removes Question Mark from Skip Ganon's Trials UI.

* Adds a todo comment about when to change back to slider.

* make deku seeds check for bullet bag

* Various tweaks

TWEAK: Altar Text
TWEAK: Hint names
TWEAK: Replace more problematic œ to oe

* upgrade ocarina on both child and adult equips

* FIX: Jabu Item

* update equipped hookshot/longshot when obtained as other age

* add hint

* don't give the bgs check without the claim check

* Skips Darunia Cutscene in Fire Temple

* Added a TODO note about not skipping the cutscene.

There is a setting we will want to have eventually that will require this cutscene to not be skipped since it is used during a glitch.

* remove todo

* restore fast ocarina option in imgui that was lost in merge

* Fixes grey screen issue + tooltip for 2 handed shield

* update to use dg instead of g for textures in item tracker

* TWEAK: Default color for cosmetic RAND button was not the corect one

* fix texture crash, remove unused item tracker code

* don't open mask shop until we get zelda's letter

* Update README.md

* Prevents "correct" chime under incorrect conditions.

* Fixes typo in conditional and adds "bonk" sound effect.

"Bonk" sound is NA_SE_SY_OCARINA_ERROR and it plays when conditions for the Door of Time have not been met after playing Song of Time. This is only possible in rando's "Intended" Door of Time option, in which the Ocarina of Time and all 3 spritual stones are required to open the door, instead of the vanilla requirements of just having the song of time.

* remove modify dpad equips toggle, replace with checks for dpad menu

* remove extra check

* add ability to hold c-up to assign to dpad when dpad menuing is enabled

* disable d-pad navigation on item menu when holding c-up to equip

* dpad+c-up stuff for equipment menu

* ADD: Checbox for songs colors

* TWEAK: RandoColors for normal songs

* kind of quick and dirty but it works

* TWEAK: Clarity of the tooltip

Co-authored-by: briaguya <briaguya@alice>
Co-authored-by: Christopher Leggett <chris@leggett.dev>
Co-authored-by: aMannus <mannusmenting@gmail.com>
Co-authored-by: PurpleHato <linkvssangoku.jr@gmail.com>
Co-authored-by: Dog <5172592+Dog@users.noreply.github.com>
Co-authored-by: Vague Rant <vaguerant@users.noreply.github.com>
Co-authored-by: Baoulettes <perlouzerie@hotmail.fr>
Co-authored-by: Ada <60364512+GreatArgorath@users.noreply.github.com>
2022-07-11 20:11:07 -04:00
Jeffrey Crowell d4c1c40c1d
add support for clang compiler (#592)
* hacks to align strings for clang... wow just wow

* start work to getting built with clang

* fix issues with struct constructors, all builds, doesn't link still

* fix some narrowing issues that clang complains about

* fix compliation of zapd

* fix null deref in VersionInfo

* builds with clang

* make stringbuilding use StringHelper instead of addition

* fix linking

* add CLANG SHIP overlay on clang built versions

* doesn't need to be volatile

* mark unknown strings as extern

* rename some stuff

* can't align extern

* hopefully fix compilation for everythign

* expandtab

* allow setting LD

* Revert "allow setting LD"

This reverts commit 711aba6db2.

maybe to use lld it should be a LDFLAG?

* -Wno-deprecated-declarations is required for newer versions of clang

on macOS 13 beta sdk, the version of apple clang requires this

* Add jenkins support for clang

* Forward CXX flags to stormlib compilation

* Move GCC only flags to check

* use exports to set multiarch setup

* Fix Jenkins forever

* use make instead of cmake --build

add some flags to build with clang-11 as well

* address review coments

- rework extraction to allow multi thread
- misc readability cleanup

* update makefile to add WARN on linux+clang

Co-authored-by: David Chavez <david@dcvz.io>
2022-07-10 10:51:12 -04:00
Sirius902 89e07f8dbb
Dodongo's Cavern blue warp crash fix (#622)
* Doodong's Cavern blue warp crash fix

* >= not >

* Don't waste a line of space
2022-07-10 09:30:19 -04:00
Baoulettes 260669f981
Cosmetics texts fixes (#604)
* branch init + few fixes

* Reset button

* Several texts fixes and default color to GameCube

* space issues

* some more extra space that was not needed.

* space yes last time ...

* Arrows being able to be rainbow some more texts fixes

* more texts fixes

* c-buttons some plurial fix
2022-07-06 19:50:59 -04:00
Sirius902 e8bfa61fc2
Add N64 weird frames and OOB Bombchus cvars (#602)
* Add gN64WeirdFrames and gBombchuOOB cvars

* Rename gBombchuOOB to gBombchusOOB

* Fix pipeline
2022-07-06 18:46:01 -04:00
Baoulettes a2d64864dd
Cosmetics menu rework (#589)
* -

* DPad/some margin fix(left side)

* various ImGui stuff and fixes

* disabled kaleido menu (non working)

* fix win being dumb

* same for C btn this time

* Fix windows build

* Beating hearts fix

* Default win size and some placement fix

* Fix Dpad Ammo & C notes, Kaleido, white dog

* some texts fix and tab move

* Add stone of agony, some fixes and build correctly

* precise item place with Dpad

* Gamecube -> GameCube

Co-authored-by: Baoulettes <iMacWin10>
2022-07-05 20:52:01 -04:00
Baoulettes a5df9dddf0
Use Macro for __FILE__ & __LINE__ when possible (#559)
* First batch some overlay

* Almost all overlay

* effect & gamestate

* kaleido stuffs

* more overlay

* more left over from code folder

* remaining hardcoded line and file

* Open & Close _DISP __FILE__ & __LINE__ clean up

* Some if (1) {} remove

* LOG_xxxx __FILE__ , __LINE__ cleaned

* ASSERT macro __FILE__ __LINE__

* mtx without line/file in functions

* " if (1) {} " & "if (0) {}" and tab/white place

* LogUtils as macro

* GameState_, GameAlloc_, SystemArena_ & ZeldaArena_

* Revert "GameState_, GameAlloc_, SystemArena_ & ZeldaArena_"

This reverts commit 0d85caaf7e.

* Like last commit but as macro

* Fix matrix not using macros

* use function not macro

* DebugArena_* functions
GameAlloc_MallocDebug
BgCheck_PosErrorCheck as macros
removed issues with ; in macro file
2022-07-05 19:29:34 -04:00
briaguya e5b59742ae change sunset in save editor so dampe is out 2022-07-04 10:53:12 -04:00
louist103 e7c2aff97e Fix audio, boot commands, and save staes. 2022-07-04 10:44:31 -04:00
rozlette d63c0077ee Add more files 2022-06-27 23:17:37 -04:00
rozlette 447e68a659 Fixed some instances where the original OOT save is erroneously preserved or recreated, leading to another conversion next time you launched the game 2022-06-26 12:08:39 -04:00
rozlette fd06827e2b DPad items 2022-06-22 23:13:32 -04:00
David Chavez e42b18cf71
Add Support for macOS (#441)
* Fixed soh filters

* add more makefile changes

* almost ready

* more updates

* update

* update

* Update Makefiles to handle both platforms

* Allow for overriding the CXX and CC executables

* Restore original structure while supporting custom CXX flags

* Remove some platform specific libs

* Dynamic target name

* Make X11 paths package-agnostic

* Remove changes to `gfx_opengl.cpp`

* Use OpenGL2 on MacOS instead of OpenGL3

* make it actually render something

* render at least the first texture, still need to figure out the second
one

* Let’s use OpenGL 3 again

* maybe this works to get the right texture? link's eyes still look off a bit

* did this work?

* set the platform to macos

* actual numbers are right, but logic is ugly XXX/TODO, i know

* add zlib to ldflags for ZAPDUtils

* A bit of cleanup

* Revert unneeded changes

* Remove GL_CHECK

* Fix issues with z64 branch

* use an std::map instead of a giant array

* three point filter fix (#2)

* Fix mac compilation

* fix audio for 64 bit

* revert audio heap size, keep bigger pools

* Add more Apple specific checks to our modifications

* Add building instructions for macOS

* Remove unecessary step from building instructions

* Add missing SDL2 & GLEW to Linux LDLIBS

* Update BUILDING.md

Co-authored-by: BountyChocolate123456 <101743444+BountyChocolate123456@users.noreply.github.com>

* Update soh/.gitignore to include other arch binaries

Co-authored-by: BountyChocolate123456 <101743444+BountyChocolate123456@users.noreply.github.com>

* Use right platform name for debugging window

Co-authored-by: BountyChocolate123456 <101743444+BountyChocolate123456@users.noreply.github.com>

* Fix stormlib on macos (arm64)

* Simplify some of the ifdef checks

* Revert an older no longer necessary fix

* Remove remaining unecessary deviations

* Update building instructions after StormLib changes

* Feature: Use OpenGL 4.1 (#1)

* Further tweak the BUILDING

* Tidy up

* reword -j message

* Add Jenkins CI Support (#2)

* Fix type issues

* add target <appbundle> and <filledappbundle>

add makefile targets to create an .app
`filledappbundle` creates the target with the .otr included

this should perhaps be moved to Application Support though

* pull gcc's rpath from otool output

* move make target to the end so it's not default

* Add Jenkins and make exe in par with other platforms

* Actually save build artefacts

* Fix artefact path

* Remove x11 mentions and linking (not used)

* Update building instructions for generating app

* use appsupport directory

* Add new app icon

* Update target to match macOS types

* Update more audio types

* fix null deref in Audio_PlayFanfare

* Remove old import from z64

* address final nit with apple ifdefs

Co-authored-by: KiritoDev <36680385+KiritoDv@users.noreply.github.com>
Co-authored-by: Jeffrey Crowell <github@crowell.biz>
Co-authored-by: BountyChocolate123456 <101743444+BountyChocolate123456@users.noreply.github.com>
2022-06-22 14:59:21 -04:00
Kenix3 d3436fc1e4
Merge pull request #362 from GreatArgorath/ShortBiggoron
Adds option for shorter Biggoron quest
2022-06-21 22:22:41 -04:00
Kenix3 1435b5d314
Merge branch 'develop' into zelda64 2022-06-21 19:27:46 -04:00
Ian Drake 39d8b77b02
Added save filename and path to config file (#130)
* Added save filename and path to config file

Closes #110

* Moved FileIO to libultraship

* Moved OOT Specific Code to OTRGlobals and made libultraship for general file IO. Combined config options.

* Moved filesystem include into GlobalCtx2.h
2022-06-20 13:54:44 -04:00
ajanhallinta 950f954c89
Minor Actor Viewer tweaks and fixes (#491)
* Show new Actor description, fix window opening

* Play error sound when spawning invalid actor

* Add reset button, don't reset actor when changing scene
2022-06-20 13:50:23 -04:00
Ada 45cb350b7a
Merge branch 'develop' into ShortBiggoron 2022-06-20 18:45:35 +01:00
Rozelette b4eebbbcd6
Versioned saves (#423)
* v1

* Cleanup

* Cleanup

* cleanup

* Organization

* Fixes

* Fix typos

* fixup merge

* use gLanguages

* Restore n64dd

* Fix bad merge

* Set ddflag
2022-06-20 13:41:43 -04:00
louist103 73ff7ef3da
Guard vision (#466)
* Vision

* Wrap it in a CVAR

* Cleanup the code and fix a savestate bug
2022-06-20 13:39:06 -04:00
Kevin Alexis Contreras e945a86d46 Added fixes based on the reviews 2022-06-19 02:03:04 -05:00
Kevin Alexis Contreras 8a6ee00a21 Fixed indentation caused because of tabs 2022-06-19 00:07:29 -04:00
Kevin Alexis Contreras b0278de3a8 Code cleanup 2022-06-19 00:07:29 -04:00
Kevin Alexis Contreras 3a65119267 Added mp3 support for samples 2022-06-19 00:07:29 -04:00
briaguya dd42cca2cf Merge branch 'develop' into z64-devmerge 2022-06-17 00:39:07 -04:00
Kevin Alexis Contreras bb90be6748 Merge branch 'zapd_audio_support' into zelda64 2022-06-16 23:09:50 -05:00
louist103 93e69c924d
Add time. (#462) 2022-06-16 20:57:01 -04:00
PurpleHato 72ebeaad3b
Fix: SohImGui behavior and cleanup (#461)
* Fix: SohImGui behavior and cleanup

- FIX: Once Save Editor / Collision Viewer are closed, set their values back to 0 so they don't automatically open once we click on Developer Tools

- FIX: Same kind of fixes for every cosmetics editor

- FIX: Typo "gCosmticsEditor" to "gCosmeticEditor"

- TWEAK: Cleanup of useless stylizing options on Cosmetics

* TWEAK: Reset a pointer that I edited for some testing

* FIX: Typo from Assignable tunic / boots tooltip

* move cvar.h includes out of extern c block

* remove extra line

Co-authored-by: briaguya <briaguya@alice>
2022-06-16 20:48:42 -04:00
getBrainError 3d24f3f595
Improved Collision Viewer (#435)
* Add fishing pole as sword in save editor

Adds fishing pole as a sword to the save editor under current equipment.

* Improve Collision Viewer

Made all the values of the collision viewer persistent.
Switched all color pickers to the EnhancementColor picker.
Added a checkbox to enable/disable collision viewer.

* Update SohImGuiImpl.cpp

Probably fixed linux build error

* Update colViewer.cpp

Hopefully fixed it this time. Lets wait for jenkins.

* Fixed colors

Some color values were wrong

* Update SohImGuiImpl.cpp &  SohImGuiImpl.h
2022-06-16 20:40:27 -04:00
Christopher Leggett bf0935a5a2
Gravedigging tour fix (#388)
* Fixes the Gravedigging Tour heartpiece bug.

Basically just causes Dampe's Gravedigging Tour Heart Piece to set a Collect flag on the Graveyard Scene when collected instead of a GetItemInf flag when it's spawned. I did this by simply the result of Item_DropCollectible to a variable called reward and running reward->collectibleFlag = 0x19 if the reward was a heartpiece.

There may be a better way to do this. This is unlike most of the other dropped items with collectible flags in the game, which have some binary operations performed on the item to be dropped before passing it into Item_DropCollectible. See z_en_geldb.c and z_bg_haka_tubo.c for examples of this. I tried to find some way to do something more like that here but I was unable to wrap my head around the binary operations being performed. I may revisit this in the future.

* Reimplements vanilla bug, adds cvar and checkbox for the fix.

* Adds some newlines to the Tooltip

* Shortens ImGui tooltip.

* Removes the hardcoded Purple Rupee/Heart Piece reward.

* Sets collectibleFlag whether cvar is on or not to prevent duping.

* Sets Gravedigging Tour Fix to enabled by default

* Simplifies logic for whether or not to spawn heart piece

* Adds TempClear flag set and check for heart piece.

This originally introduced a bug where the player could spawn multiple
heart pieces by simply not collecting the one that spawns and continuing
to dig up spots. This fixes that by checking a temp clear flag before
spawning the heart piece and setting it when the heart piece spawns.

Since this is a temp clear flag it will not stay set if the player
exits the scene, so this still does fix the bug of locking the
player out of the heart piece when spawning it and leaving without
picking it up.

As far as I can tell this temp clear flag isn't used anywhere else
in this scene. The only one used in this scene I could find is that
killing the first Poe in this scene sets flag 0x02 (or maybe it's
0x01, not sure if the flags start at 1 or 0).

* Replaces magic numbers with constants defined in z_en_tk.h

* Updates comment explaining changed code.

* Replaces another magic number I forgot to replace last commit.

* Replaces TempClear flag with local variable

* Removes TempClearFlag const and moves others out of .h to .c (felt like they made more sense there)
2022-06-16 20:36:13 -04:00
Nicholas Estelami bb6f5abbbf Updated sequence file format and updated resource version to Rachael 2022-06-16 20:35:52 -04:00
Nicholas Estelami c930bd0138 Added names for the soundfonts. 2022-06-16 20:35:52 -04:00
Nicholas Estelami 510ef9b60c Fixed crackling issues 2022-06-16 20:35:52 -04:00
Nicholas Estelami 2b40e66fa4 Fixed resample and corrupt audio bug. Minor documentation updates. 2022-06-16 20:35:52 -04:00
Nicholas Estelami c49cee3521 Audio support nearly complete. 2022-06-16 20:35:52 -04:00
Nicholas Estelami b3e299dbde Replaced StormLib .lib files with source code.
Some modifications to handle backslashes and forward slashes, along with some optimizations to speed up OTR generation.
2022-06-16 20:35:52 -04:00
Nicholas Estelami 941c19f2c3 Audio decompiled and WIP custom sample support 2022-06-16 20:35:52 -04:00
Nicholas Estelami dcb1b59c1b Updated sequence file format and updated resource version to Rachael 2022-06-15 16:09:22 -04:00
Nicholas Estelami 416173fa79 Added names for the soundfonts. 2022-06-15 15:57:52 -04:00
Nicholas Estelami a0e9ca9a9c Fixed crackling issues 2022-06-15 15:57:52 -04:00
Nicholas Estelami 262d067870 Fixed resample and corrupt audio bug. Minor documentation updates. 2022-06-15 15:57:52 -04:00
Nicholas Estelami 114c6e01d9 Audio support nearly complete. 2022-06-15 15:57:52 -04:00
Nicholas Estelami 746c7a5303 Replaced StormLib .lib files with source code.
Some modifications to handle backslashes and forward slashes, along with some optimizations to speed up OTR generation.
2022-06-15 15:57:52 -04:00
Nicholas Estelami b8c9f7f1ce Audio decompiled and WIP custom sample support 2022-06-15 15:57:52 -04:00
Kevin Alexis Contreras 5b43e4652f Updated zapd_audio_support into zelda64 2022-06-15 09:42:37 -05:00
Nicholas Estelami bff206e30b Added names for the soundfonts. 2022-06-14 01:13:18 -04:00
Nicholas Estelami 3e1cb17e22 Fixed crackling issues 2022-06-14 01:13:18 -04:00
Nicholas Estelami 83aee6d7e1 Fixed resample and corrupt audio bug. Minor documentation updates. 2022-06-14 01:13:18 -04:00
Nicholas Estelami 61760401bc Audio support nearly complete. 2022-06-14 01:13:18 -04:00