author jazzysoggy <39224097+jazzysoggy@users.noreply.github.com> 1655955994 -0400
committer jazzysoggy <39224097+jazzysoggy@users.noreply.github.com> 1656516326 -0400
Fixed Format_VA and renamed Format to StdFormat. Both now output to Std::String, while taking the same input as before. Changed functions that use these two to account for this output difference
* Start base of class
* Start moving things into class
* Finish porting over
* Refactor to conform more with style
* Add no discard to imageid
* Fix objective window position
* Fix audio on viewport
* Make further fixes
* Move nodiscard again
* Refactor all uses of IAudioChannel and the audio mixer.
* Use shared_ptr to avoid dead pointers hanging about.
* Reload particular audio channels where necessary after object reload.
* Renamed All Instance of G1_FLAG_BMP
Renamed all instances of G1_FLAG_BMP to GA_FLAG_HAS_TRANSPARENCY
* Fixed comments and labels
Fixed comments and labels to be more in line with new definitions
Add optional support for streaming FLAC and OGG/vorbis audio.
Galaxy style from OpenMusic is over 40 MiB in wav. FLAC gets it down to about 27 MiB and OGG/vorbis can get it down to just 1.36 MiB. I think vorbis should be our primary format for distributing OpenRCT2 assets due to its low size, but FLAC is available for those who want higher quality assets.
This supersedes #16095
The position and size arguments of WindowCreate are now optional - not a window doesn't have to know the size beforehand.
This removes the WF_NO_SCROLLING flag from the call to WindowCreate, but that seems to have no use for the scenery window anyway.
Co-authored-by: Ian-Polito <ipolito@mailfence.com>
Introduce more transparency toggles and allow each one to be set to either an invisible or ghost state which is a persisted user setting.
A new window is introduced to control these settings and is inspired by OpenTTD.
- Changes all references of `VIEWPORT_FLAG_INVISIBLE_PEEPS` to `VIEWPORT_FLAG_INVISIBLE_GUESTS` and `VIEWPORT_FLAG_INVISIBLE_STAFF`
- Updates Invisible People menu item and shortcut.
- Added new viewport flags into the `viewport_set_visibility` function
- Invisible options only work if see-through is activated as well
- Added see-through supports
- Regression: Exclude ride from invisible no longer works (ride is still see-through)