In order to transition staff costumes to objects, we must further disentangle staff from regular peeps. This has many advantages, such as making custom entertainers or even handymen costumes. However, this means putting some restrictions on what costumes can be assigned to staff in the mean while.
We are aware of plug-ins allowing staff to be decorated like normal peeps, though, e.g. using @Manticore-007's Peep Editor. Splitting staff from peeps will mean breaking such functionality. We can do our very best to reverting 'invalid' staff to their normal outfits instead of them outright disappearing. However, in the mean time, we should disallow peep costumes from being assigned to staff to prevent further disappointment down the line.
Once we get to actually adding custom staff costumes, I plan to add a new plug-in API to get available costumes for a particular staff type. This would apply to entertainers, but also other staff types. This should make it easier for plug-in authors to tap into custom costumes in the future.
* Added API for getAllPlugins
Added functionality to the Scripting API to allow Contexts to return a list of all registered plugins.
* Fixed naming conventions, returning list of authors
Changed function names to follow get/set convention. Removed unnecessary copies of shared pointers, now using auto instead. Changed the functionality to return an array of authors instead of a string.
* Added changelog entry
Also added myself to list of contributors
* Moved all functionality to ScPlugin
Created a ScPlugin class and moved the current getPlugins functionality there.
* Changed from method to property
Function names now match the get/set convention for properties. Also did some code cleanup.
* Update copyright
* Bump plugin version
---------
Co-authored-by: Tulio Leao <tupaschoal@gmail.com>
* Add API for guest items in openrct2.d.ts
* Create GuestItem interfaces
* Set fields to readonly and add documentation
* Implement getting items array
* Implement checking if a guest has an item
* Implement removing items from guests
* Implement giving a guest an item
* Re-merge GuestItemType with FoodDrinkType
* Add more data validation for the EnumMaps
* Update versioning and changelog
* Add some errors to the give_item method
* Bump network version
* Update VoucherType to if/else
Co-authored-by: Tulio Leao <tupaschoal@gmail.com>
* Add static_assert to ScGuest.hpp
---------
Co-authored-by: Tulio Leao <tupaschoal@gmail.com>
* Fix G2 order and format
PR #19446 did not follow the correct G2 order so this is fixing that.
Also adds the added icons to the [Plugin] chart as should when adding icons to G2.
* Add colour documentation
* Joker's Jinx colour
For the LIM Launched, based on Premier rides LIM RC.
* Poltergeist colour
Based on a Premier rides LIM RC
* Flight of Fear colour
* Add Mega-Lite colour scheme
* Add colours for Vertical Drop RC
* Add two HyperCoaster presets
Suggested by Kyphii
* Add Mako colour scheme
Suggestion by Kyphii
Co-Authored-By: kyphii <8711258+kyphii@users.noreply.github.com>
* Add two colours to BM Invert
Suggested by Kyphii
Co-Authored-By: kyphii <8711258+kyphii@users.noreply.github.com>
* Add Bobsleigh Preset
Suggested by Kyphii
Co-Authored-By: kyphii <8711258+kyphii@users.noreply.github.com>
* Add Woodie Presets
Suggested by Kyphii
Co-Authored-By: kyphii <8711258+kyphii@users.noreply.github.com>
* Add Looping RC preset
Suggested by Kyphii
Co-Authored-By: kyphii <8711258+kyphii@users.noreply.github.com>
* Add Flying RC preset
Not based on one specifically, it just looks very nice.
* Update GCI Woodie preset
* Update Inverted RC's presets
Removed the skinworm and added a banshee colour scheme that you could find in the renders. Supports were a tad difficult but I think Violet pops the best with the rails so I decided to go for that.
* Change default Woodie LB Bl Bl to LB Bl DB
* Update ride presets for Twister RC
Removed Aquamarine and Moss Green because you can find Moss Green on the Flying already and Aquamarine is very close to the white.
The white I would probably change to Black & White and move it to the Wing RC once that ride type becomes available.
* Add colour presets for the 4th Dimension RC
* Add Hybrid RC presets
* Add two yellow themes for Impulse
May both rides rest in pieces
* Add colour documentation
* Joker's Jinx colour
For the LIM Launched, based on Premier rides LIM RC.
* Poltergeist colour
Based on a Premier rides LIM RC
* Flight of Fear colour
* Add Mega-Lite colour scheme
* Add colours for Vertical Drop RC
* Add two HyperCoaster presets
Suggested by Kyphii
* Add Mako colour scheme
Suggestion by Kyphii
Co-Authored-By: kyphii <8711258+kyphii@users.noreply.github.com>
* Add two colours to BM Invert
Suggested by Kyphii
Co-Authored-By: kyphii <8711258+kyphii@users.noreply.github.com>
* Add Bobsleigh Preset
Suggested by Kyphii
Co-Authored-By: kyphii <8711258+kyphii@users.noreply.github.com>
* Add Woodie Presets
Suggested by Kyphii
Co-Authored-By: kyphii <8711258+kyphii@users.noreply.github.com>
* Add Looping RC preset
Suggested by Kyphii
Co-Authored-By: kyphii <8711258+kyphii@users.noreply.github.com>
* Add Flying RC preset
Not based on one specifically, it just looks very nice.
* Update GCI Woodie preset
* Update Inverted RC's presets
Removed the skinworm and added a banshee colour scheme that you could find in the renders. Supports were a tad difficult but I think Violet pops the best with the rails so I decided to go for that.
* Change default Woodie LB Bl Bl to LB Bl DB
* Update ride presets for Twister RC
Removed Aquamarine and Moss Green because you can find Moss Green on the Flying already and Aquamarine is very close to the white.
The white I would probably change to Black & White and move it to the Wing RC once that ride type becomes available.
* Add colour presets for the 4th Dimension RC
* Add Hybrid RC presets
* Add two yellow themes for Impulse
May both rides rest in pieces
* Add changelog entry
* Add Water Coaster colour preset
---------
Co-authored-by: kyphii <8711258+kyphii@users.noreply.github.com>
Co-authored-by: Rik Smeets <30838294+rik-smeets@users.noreply.github.com>
* spiral lifthill down paintcode
* rename string anyway
* add some stuff I forgot and add documentation
* use static assert on SpriteGroupMultiplier
* add slope to list of opposite slopes
* bump scripting version
* update openrct2.d.ts
* improve documentation
* Initial commit for backwards-facing trains
* Allow persistence for reversed cars across save/load
* Make log flume turntable compatible with new reversal implementation
* Style fixes + Better implementation of inverted bank angles
* Further Style Fixes
* Code cleanup from PR feedback
* Fix GetBankRotationForDrawing function declaration
* Use update flag for reversed state
* Replace modulo operation with bit mask
* Correct guest pathing destination when entering reversed cars
* More style fixes
* Add plugin support for reversed vehicles
* Fix formatting error
* Derive reversal from ride mode for car spawning
* Formatting
* Rename function to GetPaintBankRotation
* Add reversed trains modes to Multi Dimension Coaster
* Change name of isReversed plugin API parameter for consistency
* Replace reversal operating modes with separate ride setting
* Add ALLOW_REVERSED_TRAINS flag to more ride types
* Make clang-format happy
* More Formatting
* Fix ALLOW_REVERSED_TRAINS flag on a couple rides
* Exclude flat rides from Reverse Trains tickbox when cheats are enabled
* Formatting
* Use Disable Vehicle Limits cheat for checkbox appearance condition
* Use correct swinging sprites when cars are reversed
* Update changelog and Plugin/Network/Park version numbers
* Formatting
* Add separate error String ID for clarity
* Add name to contributors.md
* Fix ride vehicle preview window with reversed trains for RCT1 train types
* Bump version numbers again
---------
Co-authored-by: Trevor Finney <8711258+finneyt@users.noreply.github.com>
* add fields to track segment api
* add getTrackSegments to API
* change element to segment for continuity
* improve documentation
* continue tweaking documentation
* implement segment suggestions
* clarify purpose of isSteepUp flag
* add rest of track element flags
* remove extraneous information from comment
* continue tweaking API
* implement basssiiie suggestion
* rename angle to slope
* reorder items in the documentation
* bump plugin api
* Wrap custom game action arguments in event args object
* Update Typescript declaration, documentation and changelog
* Pass custom game action by value and remove log messages