* Implement profiling API
* Add console commands for the profiler
* Remove accidental line
* Correct csv output
* Add copyright notice
* Add missing override
* Add default virtual destructor
* Explicitly pass template argument
* Use static
* Add plugin API for profiler
* Add more profile calls
* Workaround for GCC hopefully
* Add missing static keyword
* Use uint64 for call count
* Reduce name length see if CI passes
* Improve handling of function names
* Work around (broken) static inline variables
* Fix missing include
* Disable profiler for clang 5 and older
* Update copyright date
* Profile UpdateAllMiscEntities
* Apply review suggestions
Co-authored-by: Ted John <ted@brambles.org>
* Add initial implementation of "vehicle.crash" hook for the scripting api
The hook will fire whenever a vehicle crashes, i.e. an individual car
explodes and it's status becomes "Crashed!"
* Update contributors.md
Add name to contributors list under the "Additional implementation (OpenRCT2)" section.
- If the added line needs to be changed or removed entirely let me know
- I added this based off of the Github wiki: "If it's the first time you're contributing with the project, make sure to update the contributors.md file by appending your name at the end of the respective list."
* Move hook code into function
* Rename hook function
Renamed function, "FireVehicleCrashHook" to "InvokeVehicleCrashHook"
* Wrap InvokeVehicleCrashHook in #ifdef
Move the #ifdef from inside the function body to the outside
* Update changelog and api version
- Added entry to changelog
- Increment API version
* Fix whitespace
Replace tab character with four spaces
* Update src/openrct2/scripting/HookEngine.cpp
Co-authored-by: Tulio Leao <tupaschoal@gmail.com>
- add TileElement union type
- add the exact type to each TileElement, overwriting the more general type of BaseTileElement
- use TileElement type in Tile interface (instead of BaseTileElement)
- change single quotes to double quotes
- add type to WidgetBase