Commit Graph

285 Commits

Author SHA1 Message Date
ZeeMajora e6df43b7c9
Extras tab: add Tycoon park, keep competitions apart 2022-10-05 20:51:37 +00:00
Michael Steenbeek a3b7ac5a90
Create category for DLC and BYO scenarios 2022-09-25 12:59:35 +02:00
Stephan Spengler 6be41893a4
Fix #18059: Width and height of custom window not changeable via script (#18061) 2022-09-24 07:06:26 +02:00
Bas 885be63797 Rename subposition rotations to yaw, pitch, roll 2022-09-03 09:34:16 +02:00
Bas 8c39881353 Implement plugin getter for subposition coordinates 2022-09-02 23:19:15 +02:00
Bas 7b5aeece59 Implement plugin getters for subposition and subposition length 2022-09-02 23:18:29 +02:00
Sadret 1c7c4c14c2
Add tertiary colour for large scenery to plugin API (#17314)
Add tertiaryColour to ScTileElement.
2022-06-09 20:03:32 +01:00
Sadret 29bcd0dee9
Fix #17335: plugin docs now show correct type for PixelData 'data' attribute 2022-06-05 21:05:51 +02:00
spacek531 673ec0fa10
Frames rotation count part 1 (#17106)
Refactor vehicle sprite groups

rename rotationType to spriteGroup

remove numframes getters from scobject

add sprite groups getters

add documentation to plugin

Co-authored-by: duncanspumpkin <duncans_pumpkin@hotmail.co.uk>
2022-06-03 23:03:02 +01:00
Ted John 31764f62c6 Change track segment API to use null 2022-05-17 19:33:04 +01:00
Ted John 7af322f8eb Fix build due to unused field 2022-05-17 19:27:39 +01:00
Ted John 71a6e2bf74 Add angle and banking to track segment 2022-05-17 19:27:39 +01:00
Ted John bf1e3412a5 Add extra fields to TrackSegment 2022-05-17 19:27:39 +01:00
Ted John 8c593709fa Add more properties to track segment 2022-05-17 19:27:39 +01:00
Ted John b39f7643f0 Fix iterator issues 2022-05-17 19:27:39 +01:00
Ted John 4eef86dc50 Implement track iterator 2022-05-17 19:27:39 +01:00
Ted John 76601ef6fc Add API for getting track segments 2022-05-17 19:27:39 +01:00
Ted John 818dcacb31 Add draw to image API 2022-03-24 22:37:22 +00:00
Ted John a977bbaebe Implement loading .png and refactor 2022-03-24 22:37:22 +00:00
Ted John e74396b464 Refactor and implement RLE custom images 2022-03-24 22:37:22 +00:00
Ted John 8f30ed910f Start working on custom image APIs 2022-03-24 22:37:21 +00:00
Ted John 9f96b0df33 Separate map.change and map.changed events
Also fix network plugin logic.
2022-03-21 23:09:40 +00:00
Ted John af340cbf34 Add API for toolbox menu items 2022-03-21 21:42:30 +00:00
Ted John 13d261d115 Add API for getting the current game mode 2022-03-21 21:42:30 +00:00
Ted John 84fdd44e6a Add map changed hook 2022-03-21 21:42:30 +00:00
Ted John 1128f76a97 Improve and fix intransient plugin branch 2022-03-21 21:42:30 +00:00
Ted John 6fea0b5025 Start work on intransient plugins 2022-03-21 21:42:30 +00:00
Ted John 91ceecc6fc
Change ternary to tertiary for plugins (#16833) 2022-03-21 21:42:10 +00:00
Charles Machalow 37965560a9
Add ability for plugins to access ride's chain lift speed
Co-authored-by: Hielke Morsink <hielke.morsink@gmail.com>
2022-03-20 15:20:28 +00:00
andrewpratt64 5ea89b9b47
Add function to get all entities on a tile to plugin api
Co-authored-by: Hielke Morsink <hielke.morsink@gmail.com>
2022-03-20 15:20:08 +01:00
Ted John dff1d730da Implement #13620: [Plugin] Add support for patrol areas to Staff 2022-03-13 19:30:50 +00:00
Ted John b7b8816db7
Add plugin hook for map save 2022-03-07 21:40:48 +01:00
Ted John ed8b7cb6ee Change API for interacting with park storage 2022-02-24 23:55:23 +00:00
Ted John 1182ff5f19 Add Plugin API for storing data in .park files 2022-02-24 23:55:23 +00:00
Sadret 8898d0af56
Close #16251: Adjust openrct2.d.ts to actual API implementation 2022-02-18 21:59:44 +01:00
ζeh Matt fcea5bc483
Update openrct2.d.ts 2022-02-16 19:53:03 +02:00
ζeh Matt e46338a2f1
Fix scripting API returning 0 instead of null. 2022-02-16 19:41:59 +02:00
Ted John 83c347218b Allow plugins to call change map size game action 2022-02-14 23:15:59 +00:00
Sadret 6d0bb48b68
[#16251] mark 'callback' argument of [query|execute]Action as optional (#16563) 2022-01-31 18:49:02 +00:00
ζeh Matt 269673e3aa
Profiler update (#16463)
* Add more functions to be profiled

* Add isEnabled method to Profiler scripting interface

* Bump up scripting version

* Apply review suggestions
2022-01-29 15:29:08 +02:00
ζeh Matt 993b168bfd
Implement profiler (#16194)
* 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>
2022-01-18 20:21:20 +02:00
ζeh Matt f4c30ba63a
Correct scripting documentation for guest.generation 2022-01-17 15:09:21 +01:00
Sadret 8282579b63
Close #16251: Improve null handling in plugin API 2021-12-16 21:41:02 +01:00
Ted John a324bfab63
Add image manager plugin API (#16144) 2021-12-07 20:55:27 +00:00
Sadret 03d2ddf265
Implement #16029: Add rideType to plugin API (#16030) 2021-12-01 13:39:03 +00:00
Basssiiie b44b5eca0c
Fix nullability of TileSelection.range (#15992) 2021-11-24 23:00:32 +00:00
IntelOrca 34128dc262
Add new .park save format
Co-authored-by: Gymnasiast <Gymnasiast@users.noreply.github.com>
Co-authored-by: duncanspumpkin <duncanspumpkin@users.noreply.github.com>
Co-authored-by: ZehMatt <Zehmatt@users.noreply.github.com>
Co-authored-by: Broxzier <Broxzier@users.noreply.github.com>
2021-11-21 22:43:22 +01:00
Bas 8682a8677e Fix unable to read litter information in plugin api 2021-10-16 15:38:52 +02:00
Basssiiie 23bae61b7a
Add new plugin API properties to entity, ride and park 2021-08-11 13:54:00 +02:00
ZehMatt 29e5ec634c
Add litter entity to scripting 2021-08-07 22:28:48 +03:00
ZehMatt 5e3913965d
Add scripting API to create entities 2021-08-07 22:05:14 +03:00
ZehMatt 900f9c9190
Apply code review 2021-08-07 20:33:43 +03:00
ZehMatt aa2b7d9972
Deprecate peeps property in scripting for Car entity 2021-08-05 17:16:42 +03:00
ZehMatt a7bef5442b
Allow plugins to target a specific API version 2021-08-05 17:16:42 +03:00
ZehMatt 5a7d2da6bb
Update typescript definitions 2021-08-05 17:16:42 +03:00
andrewpratt64 62d66ca9d0
Add hook for vehicle crashes to plugin api (#15084)
* 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>
2021-07-30 09:03:15 -03:00
Ryan d309a7c871
Add climate information to Park API (#14636) 2021-05-16 21:06:36 -03:00
Ryan 8a282fa31c
Add more properties to Park API (#14620)
* Add more properties to Park API

* Add new feature to changelog
2021-05-11 12:46:15 +01:00
Basssiiie 6c65105261
Add getter for current plugin api version (#14538) 2021-04-27 21:08:56 -03:00
Basssiiie ec7088364e
Rename 'ListView' to 'ListViewWidget' in Typescript declaration 2021-04-27 17:14:23 +02:00
Basssiiie 594b08c911
Rename 'Object' to 'LoadedObject' 2021-04-21 15:32:55 +02:00
Duncan 177b5e1b08
Add plugin hook for guest generation (#14107)
* Add plugin hook for guest generation

* Update api version and add ts entry
2021-03-26 05:49:24 +00:00
Michael Steenbeek 140cc442ac
Merge pull request #14252 from Phelicks/develop
Add plugin API for vehicle g-forces
2021-03-07 13:46:16 +01:00
Sadret 5b042e4dad
various openrct2.d.ts improvements (#14193)
- 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
2021-03-07 12:45:36 +00:00
Felix ecbfee71cc Make gForces read only 2021-03-06 23:41:43 +01:00
Felix 78785fffbe Add plugin API for vehicle g-forces 2021-03-06 23:25:26 +01:00
Ted John ce11d1eb2f Add missing property trackLocation to openrct2.d.ts 2021-02-27 02:44:00 +00:00
Ted John 31a30c0307 Fix lint errors in openrct2.d.ts 2021-02-27 02:20:47 +00:00
Ted John e000f06442 Remove holdable flag from spinner widget 2021-02-25 22:30:35 +00:00
Ted John c2183989a5 Allow spinners to be clicked and held 2021-02-24 22:37:31 +00:00
Ted John c1b0df5de6 Improve graphics plugin API 2021-02-24 22:37:31 +00:00
Ted John 081c1895ce Add box and well APIs 2021-02-24 22:37:31 +00:00
Ted John 93f17f1175 Add custom widget logic and network stats API 2021-02-24 22:37:31 +00:00
Cory Sanin 57c950958b
Feature: Add option for taking transparent screenshots 2021-02-22 22:48:51 +01:00
Ted John afc548c5a7 Add plugin API for shortcuts 2021-02-21 03:14:13 +00:00
Ted John 762b6ee816 Refactor viewport interaction flags and add plugin API 2021-02-18 18:10:29 +00:00
Ted John 129d85fa57 Implement title sequence playing 2021-02-08 22:27:28 +00:00
Ted John 78df831f29 Implement loading of parks 2021-02-08 22:27:28 +00:00
Ted John 8cfdbd871d Improve title sequence API 2021-02-08 22:27:28 +00:00
Ted John d1bfaf0faf Improve type definitions 2021-02-08 22:27:28 +00:00
Ted John f99c57e11d Implement getting commands 2021-02-08 22:27:28 +00:00
Ted John 41c7b04ab2 Add parks to title sequence API 2021-02-08 22:27:28 +00:00
Ted John 55ebebb869 Add title sequence API 2021-02-08 22:27:27 +00:00
Cory Sanin 456202b0f5
Feature: Use allowed_hosts when creating listening socket 2021-02-06 16:47:56 +01:00
Ted John 2fdf91874c Implement centred labels 2021-01-29 17:50:32 +00:00
Ted John c2eb6d4153 Improve plugin API and type definitions 2021-01-28 20:52:17 +00:00
Ted John 2fcaed8165 Allow more fields to be optional 2021-01-27 00:28:59 +00:00
Ted John c0d8786af8 Add text box widget 2021-01-27 00:28:59 +00:00
Ted John be350f7e2e Add widget visible flag 2021-01-26 00:25:59 +00:00
Mathias Gibbens b1e5a11bf3
Several more spelling fixes (#13752)
Signed-off-by: Mathias Gibbens <mathias@calenhad.com>

Co-authored-by: Mathias Gibbens <mathias@calenhad.com>
2021-01-10 18:23:35 +00:00
Sadret d22c2edee5
Implement #13384: Expose all TileElement data to plugin API 2021-01-03 18:42:21 +01:00
Ted John 6fb7921dbd
[Plugin] Add context.setInterval and context.setTimeout 2021-01-03 16:08:35 +01:00
Matt cb719a6e10
Add missing case statements for entity scripting 2021-01-02 15:31:26 +02:00
Bas 7848a39e6c Rename car 'move' method to 'travelBy' 2020-12-29 15:41:27 +01:00
Bas 833c8a2e1f Fix whitespace in openrct2.d.ts 2020-12-29 15:41:26 +01:00
Bas e44c17957b Replace track position setter with new move method 2020-12-29 15:41:26 +01:00
Bas 614a27cfb1 Add track progress to openrct2.d.ts 2020-12-29 15:41:25 +01:00
Ted John 95c3a7f5dd Fix #13512: [Plugin] Add item separators to list view 2020-12-05 18:32:24 +00:00
Ted John be8736ffaa Fix: #13509 [Plugin] Add ability to format strings 2020-12-05 18:26:35 +00:00
Ted John 030713e126 Fix #13078: [Plugin] Add colour picker widget 2020-12-05 18:26:35 +00:00