Commit Graph

4242 Commits

Author SHA1 Message Date
Ted John 67ae973ac8 Import peep field by field 2019-02-20 23:31:14 +00:00
Ted John 1b83b9881b Import vehicle field by field 2019-02-20 23:31:14 +00:00
Ted John 9960397f2c Import litter field by field 2019-02-20 23:31:14 +00:00
Duncan 9a746c4fc1
Merge pull request #8733 from duncanspumpkin/fix_pause
Fix pause
2019-02-20 19:41:56 +00:00
duncanspumpkin 768321c517 Increment network version 2019-02-20 19:14:24 +00:00
duncanspumpkin 3467941310 Fix #8732 GameActions not working when in negative money.
Related to the simplification to the finance code
2019-02-20 19:14:10 +00:00
Ted John 440511afc5 Use uint16_t for marketing probability 2019-02-20 16:51:19 +00:00
Michael Steenbeek dfa0c528c2 Rename command to forbid_marketing_campaigns
Co-Authored-By: IntelOrca <ted@brambles.org>
2019-02-20 16:49:03 +00:00
Ted John 4013479094 Refactor marketing to be a single vector 2019-02-20 16:49:02 +00:00
Ted John 261dd32697
Refactor peep_interact_with_path to prevent null ride warnings (#8728) 2019-02-20 16:47:38 +00:00
duncanspumpkin d959657346 Increment network version 2019-02-19 15:22:29 +00:00
duncanspumpkin 9b6fdd41aa Remove redundant code. Rename to standard style 2019-02-19 15:20:55 +00:00
duncanspumpkin 6375d2537a Move and refactor shop interact with path code to prevent possible desync 2019-02-19 15:20:49 +00:00
duncanspumpkin 09bb99d9e8 Fix clang format and travis errors
Minor refactor

Move key callback code into callbacks. Fixes shop placement

Use rotate_map_coordinates
2019-02-19 12:31:22 +00:00
duncanspumpkin 4d3c594e47 Provide a translation for the replay manager 2019-02-19 12:31:22 +00:00
duncanspumpkin 8bf3689d42 Introduce flag to prevent ghosts in multiplayer
Fix error message arguments

Remove dead code. Fix clang format
2019-02-19 12:31:11 +00:00
duncanspumpkin 77b25714ff Move callbacks into GameActionCallbacks
Remove remaining references to game command
2019-02-19 12:30:42 +00:00
duncanspumpkin 650e8291d0 Start moving track place into GameAction framework 2019-02-19 12:30:33 +00:00
Ted John cce979f96b
Remove logic for required objects (#8718)
This allows TARMAC to be removed when `remove_unused_objects` is called.
2019-02-19 11:55:43 +00:00
ζeh Matt 8a6dd5c4dd Fix #8720: Desync due to boats colliding with ghost pieces 2019-02-19 11:39:48 +01:00
Matt d7ff3854a9 Bump up network version. 2019-02-18 17:20:18 +01:00
Matt a6c6d6ddc3 Update checks for when money is required. 2019-02-18 17:19:44 +01:00
Matt 21e4c52853 Use finance_check_affordability instead of CheckActionAffordability 2019-02-18 17:19:44 +01:00
Matt 914bf3a0c6 Add finance_check_money_required and finance_check_affordability helper functions. 2019-02-18 17:19:44 +01:00
ζeh Matt a1d1669492
Merge pull request #8713 from ZehMatt/replay-bpb
Add bpb.sv6 to the replays with 7000 ticks.
2019-02-18 13:38:22 +01:00
Matt 3f07fd6bed Bump up network version. 2019-02-17 10:12:02 +01:00
Matt 7a18fc4b96 Fix ClearAction breaking out of the loop too early. 2019-02-17 10:12:02 +01:00
Matt 597b0956fc Fix SmallSceneryRemoveAction returning no error on invalid coordinates. 2019-02-17 10:12:02 +01:00
Matt 5f02c480c2 Fix FootpathRemoveAction crashing with invalid coordinates. 2019-02-17 10:12:02 +01:00
Matt 2d78eace05 Use QueryInternal in ExecuteInternal. 2019-02-17 10:12:02 +01:00
Matt a630c17e92 Fix ReplayManager testing checksums out of order. 2019-02-16 09:10:05 +01:00
ζeh Matt 416915c883
Merge pull request #8711 from ZehMatt/ga-toplevel
Refactor direct calls to Query and Execute on game actions.
2019-02-15 17:07:53 +01:00
Matt 00be865ff1 Use ExecuteNested/QueryNested instead of passing a parameter. 2019-02-15 16:32:11 +01:00
Duncan 79ccc8ca32
Merge pull request #8705 from phillipwalters/develop
Removed dead code per issue 8677 (https://github.com/OpenRCT2/OpenRCT2/issues/8677)
2019-02-15 13:58:57 +00:00
Matt 16e371c792 Bump up network version. 2019-02-15 09:01:38 +01:00
Matt 60ec1da0f8 Remove direct calls to Execute Query on action. 2019-02-15 08:55:01 +01:00
Matt 22811e0e85 Remove direct calls to Execute Query on action. 2019-02-15 08:50:48 +01:00
Matt 46c9bcc4bc Remove direct calls to Execute Query on action. 2019-02-15 08:47:07 +01:00
Matt caa490642c Refactor GameActions to allow non-top level actions. 2019-02-15 08:43:05 +01:00
Michael Steenbeek 2a4215a30f
Create constant for SCROLLING_MODE_NONE 2019-02-14 22:41:48 +01:00
ζeh Matt d143c7b7c6 Fix 8698 (#8709) 2019-02-14 22:09:16 +01:00
Ted John 8c2872ad1e Fix gcc 2019-02-13 22:51:10 +00:00
Ted John eaa671632f Fix formatting 2019-02-13 20:31:55 +00:00
Ted John ba445cb6ef Pass Ride* instead of ride_id_t 2019-02-13 20:16:42 +00:00
Phillip Walters b7787daa9f More formatting changes. 2019-02-12 18:02:33 -08:00
Phillip Walters 11ff0b6688 Cleaned up some formatting 2019-02-12 17:53:39 -08:00
Ted John fdf9f36fab Pass Ride* instead of ride_id_t 2019-02-12 23:58:45 +00:00
Ted John 9e461b2e34 Pass Ride* instead of ride_id_t 2019-02-12 23:29:38 +00:00
Ted John fd090f5ef3 Refactor PickRideToGoOn 2019-02-12 23:29:38 +00:00
Ted John 9706dd8675 Pass Ride* instead of ride_id_t 2019-02-12 23:29:37 +00:00
Ted John e361655b10 Pass Ride* instead of ride_id_t 2019-02-12 23:29:37 +00:00
Ted John aaacece0ea Pass Ride* instead of ride_id_t 2019-02-12 23:29:37 +00:00
Phillip Walters 28d4446da4 Re-added some code that shouldn't have been removed and removed some other code that I missed last time. 2019-02-11 18:58:56 -08:00
duncanspumpkin af65bc33e7 Increment network version 2019-02-11 10:57:58 +00:00
duncanspumpkin c87430e09d Turn off clang format 2019-02-11 10:57:31 +00:00
duncanspumpkin 866d143930 Move Pause Toggle into the GameAction framework 2019-02-11 10:46:12 +00:00
Phillip Walters 14835b9e31 Removed dead code per issue 8677 (https://github.com/OpenRCT2/OpenRCT2/issues/8677) 2019-02-10 18:17:05 -08:00
Michael Steenbeek 76603ad1b3
Fix #8696: Setting land height costs money in no-money scenarios 2019-02-10 22:14:23 +01:00
Michał Janiszewski 5e74f7487d
Merge pull request #8700 from janisozaur/icc-fixes
Icc fixes
2019-02-10 12:21:33 +01:00
ζeh Matt 20989ae4d8
Merge pull request #8675 from tomlankhorst/compress-replays
.sv6r version 2: introducing compression
2019-02-10 11:01:26 +01:00
Michał Janiszewski 9da931d5e7 Remove offsetof for non-POD data 2019-02-10 00:20:34 +01:00
Michał Janiszewski 838289abce Mark functions as static 2019-02-10 00:20:34 +01:00
Michał Janiszewski 379fd42dc4 Fix types passed to ride_type_has_flag 2019-02-10 00:04:52 +01:00
Michał Janiszewski 70ef8151fc Fix types passed to printf-like functions 2019-02-10 00:04:52 +01:00
ζeh Matt be491d3c6f Bump network version 2019-02-09 23:27:26 +01:00
Matt 02a14d3883 Move setting common price into RideSetCommonPrice 2019-02-08 18:03:06 +01:00
Matt 9508044aa7 Add missing member to serialisation. 2019-02-08 18:03:06 +01:00
Matt d87ca57e72 Replace game command references with new game action. 2019-02-08 18:03:06 +01:00
Matt a5e48e759d Implement RideSetPriceAction. 2019-02-08 18:03:06 +01:00
duncanspumpkin 640337159a Increment network version 2019-02-08 14:08:55 +00:00
duncanspumpkin 44cd8c3150 Refactor. Add CoordsXY to data serialiser 2019-02-08 14:08:26 +00:00
duncanspumpkin ea585950f6 Refactor. Split out into multiple functions. 2019-02-08 14:08:26 +00:00
duncanspumpkin fd7f9fefca Move Land Set Height over to GameAction Framework 2019-02-08 14:08:26 +00:00
Ted John 907e43acd8
Merge pull request #8670 from IntelOrca/feature/download-objects
Auto-download missing objects
2019-02-08 12:55:05 +00:00
ζeh Matt 436f15f22e
Merge pull request #8692 from ZehMatt/gameaction-things
Handle unregistered game actions with error logging.
2019-02-07 23:39:11 +01:00
Ted John 535b075310 Reduce button text further and add tooltips 2019-02-07 22:00:30 +00:00
Ted John 3aa55ff875 Refactor and improve download of objects 2019-02-07 21:59:15 +00:00
Ted John 5fb3c10c3a Make download objects async with progress 2019-02-07 21:59:15 +00:00
Ted John 27f70e3656 Get basic object downloading working 2019-02-07 21:58:34 +00:00
ζeh Matt f5e24bd973
Merge pull request #8652 from ZehMatt/network-window
Network window
2019-02-07 21:10:03 +01:00
Duncan d03bd95598
Register the ride set appearance action to prevent server crash (#8691)
* Register the ride set appearance action to prevent server crash

* Bump network version

* Copy the type back when deserialising

This should really be fixed by adding RideSetAppearanceType to the dataserialiser

* Switch the types to prevent possible serialiser issues
2019-02-07 19:53:09 +00:00
Matt 598ea08529 Update copyright. 2019-02-07 18:50:58 +01:00
Matt 0d1c8b8d31 Fix CircularBuffer push_back method. 2019-02-07 18:50:58 +01:00
Matt 57eccef347 Move format_readable_size and format_readable_speed into Localisation 2019-02-07 18:50:58 +01:00
Matt 16bf190f7a Use localisation for speed and size information. 2019-02-07 18:50:58 +01:00
Matt a26e9231cf Simplify CircularBuffer 2019-02-07 18:50:58 +01:00
Matt ecd4f61115 Add Network window 2019-02-07 18:50:58 +01:00
Matt 2931ac6e31 Track bytes sent and received in Network. 2019-02-07 18:50:58 +01:00
Matt e4f1b12fa4 Add CircularBuffer. 2019-02-07 18:50:58 +01:00
Matt 1553cf8c58 Bump up network version. 2019-02-07 18:36:44 +01:00
Matt b071be49bd Add checks for unregistered game actions and report errors. 2019-02-07 18:35:03 +01:00
Matt ee00143f3a Throw assert only in debug builds for missing game actions. 2019-02-07 18:23:58 +01:00
Aaron van Geffen 3be6137fde
Rename event_07 to periodic_update. (#8684) 2019-02-07 17:46:52 +01:00
duncanspumpkin bca79da193 Check for null id 2019-02-07 11:41:54 +00:00
duncanspumpkin 5e319a4a37 Increment network version 2019-02-07 10:16:20 +00:00
duncanspumpkin 892d6dc5f7 Be explicit about nullptr checks.
Keep travis happy
2019-02-07 10:16:01 +00:00
duncanspumpkin 11c16955c5 Small refactor to use enum class 2019-02-07 08:14:45 +00:00
duncanspumpkin 201db19d0a Move Ride Set Appearance into action framework 2019-02-07 08:14:45 +00:00
Aaron van Geffen 2a416dce81
Set more maze error messages in MazeSetTrackAction. (#8683) 2019-02-07 00:29:50 +01:00
Duncan b27923093c Fix #7987: Broken track designs increase money by MONEY32_UNDEFINED 2019-02-06 22:20:42 +01:00
Michał Janiszewski c42ded66b2 Fix #8674: Negative values not displaying correctly 2019-02-06 22:18:58 +01:00
Michał Janiszewski ad888fbf9d
Require at least 1.4 version of benchmark (#8681) 2019-02-06 21:30:33 +01:00
Tom Lankhorst ddfbaac13f
Fix MSVC type conversion warning 2019-02-06 12:13:59 +01:00
Tom Lankhorst 72519d8bb8
do not use designated initializer 2019-02-06 11:28:39 +01:00
Tom Lankhorst e24314bb5a
Fix syntax error and add <memory> 2019-02-06 11:06:16 +01:00
Tom Lankhorst 706d1be865
Avoid illegal ptr conversions 2019-02-06 10:38:25 +01:00
Tom Lankhorst f48f347798
Internally compress (zlib lvl.9) replay files
This effort reduces the size of replays by a factor 2 to 10 depending on
the park complexity. ZLIB is used as the compression backend.

- The replay file version is bumped to 2.
- An `sv6r` file still starts with a magic number and a version.
- If version = 1, the file stream is consumed by the ReplayRecordData
serializer.
- If version > 1, the file stream is decompressed and the resulting
stream is consumed by the ReplayRecordData serializer.
- Introduced `Compatible` that indicates whether a file with a version
mismatch is compatible. E.g.: v1 is compatible with this `ReplayManager`
2019-02-06 10:12:21 +01:00
Duncan 57471edc47
Merge pull request #8672 from Xkeeper0/i/8662
Fix for #8662 paint_haunted_house_structure crash
2019-02-06 07:46:57 +00:00
duncanspumpkin 752df2607a Increment network version 2019-02-05 20:39:53 +00:00
duncanspumpkin 8a69b89df6 Move Staff Set Orders into game action framework.
Split up costume and order game commands
2019-02-05 20:38:18 +00:00
Duncan c436a656ad
Merge pull request #8666 from cgdolan/develop
Implement game action for sign set style
2019-02-05 20:35:11 +00:00
duncanspumpkin 50b241d20d Add missing include and rework to use Coords 2019-02-05 19:27:30 +00:00
Xkeeper 2828cbb2fc
Fix crash in FerrisWheel paint
[OpenRCT2/OpenRCT2#8662]
2019-02-05 11:14:17 -08:00
Xkeeper a22260b56a
Fix crash in MapAnimation re: small scenery
[OpenRCT2/OpenRCT2#8662]
2019-02-05 11:02:22 -08:00
Xkeeper 2bb8813c41
Fix crash in paint_haunted_house_structure
[OpenRCT2/OpenRCT2#8662]
2019-02-05 11:01:23 -08:00
Michał Janiszewski 4192ffe57e
Improve cmake for MSVC (#8581)
* Improve cmake for MSVC

* Fix mingw builds
2019-02-05 16:12:58 +01:00
Christopher G. Dolan 19a58fa5fe Fix format, move validation logic to query, update network version 2019-02-04 17:30:45 -08:00
Michał Janiszewski 8a395e3706
Fix misaligned access (#8665)
Platforms like ARM are very sensitive to unaligned access. This change
makes sure the addresses obey the C++ standard and are properly aligned.
2019-02-04 23:15:14 +01:00
Christopher G. Dolan a8864092c0 fix format and serialize all ivars 2019-02-03 23:02:00 -08:00
Christopher G. Dolan 075983da0f Implement game action for sign set style 2019-02-03 22:20:01 -08:00
Michał Janiszewski 6bdbe248fd
Merge pull request #8641 from tomlankhorst/use-lto
Detect availability of LTO, apply when available
2019-02-04 00:06:37 +01:00
Tom Lankhorst ce6e08c633
Introduce SET_CHECK_CXX_FLAGS 2019-02-03 23:32:51 +01:00
Tom Lankhorst 521948139c Chat toggle button (#8648)
* Add chat_available()

* Add appropriate strings

* Add new Chat icon

* Implement Chat button

* CS

* Fix chat icon

* Make chat icon a bit smaller and less bright

* Update chat icon

* Update changelog
2019-02-03 23:30:34 +01:00
Michał Janiszewski 604da7ce01
Merge pull request #8661 from tomlankhorst/refactor-random
Refactor random engine
2019-02-03 23:29:10 +01:00
Tom Lankhorst 045692993a
Make template params adhere to code style 2019-02-03 21:16:09 +01:00
Tom Lankhorst 422d5f2ef1
Replace '_N' by '_num' 2019-02-01 21:54:00 +01:00
Tom Lankhorst d660c9d45f
Merge branch 'refactor-random' of github.com:tomlankhorst/OpenRCT2 into refactor-random 2019-02-01 21:51:28 +01:00
Tom Lankhorst 1e65db371b
Use single underscore prefix for template parameters 2019-02-01 21:51:01 +01:00
Tom Lankhorst ec8caa5636
Drop <sstream> 2019-02-01 21:47:47 +01:00
Tom Lankhorst dfe7f0614c
Consistency 2019-02-01 21:00:19 +01:00
Tom Lankhorst 16691b22ba
Use state struct 2019-02-01 19:29:43 +01:00
Tom Lankhorst 2ea347f15f
MSVC SFINAE compatibility 2019-02-01 15:50:09 +01:00
Tom Lankhorst 1a81d60609
Expose gScenarioRand, add <algorithm> 2019-02-01 14:48:45 +01:00
Tom Lankhorst 6a42a95495
Refactor random engine
Introduce RotateEngine and Rct2Engine, FixedSeedSequence and Rct2Seed.
Adhere respectively to requirements `RandomNumberEngine` and `SeedSequence`.
Can be used with C++11 adaptors and distributions in <random>.
2019-02-01 14:32:04 +01:00
Michał Janiszewski 57897d4cb5 Attach screenshot to backtrace.io report 2019-01-31 23:36:41 +01:00
Michał Janiszewski 7655ba7746 Make screenshot return path to file 2019-01-31 23:36:41 +01:00
Matt 0237eaf498 Refactor number values to SPRITE_INDEX_NULL 2019-01-30 15:02:52 +01:00
Matt 7ad59bbb37 Refactor number values to RIDE_VALUE_UNDEFINED 2019-01-30 14:59:06 +01:00
ζeh Matt 6668a1fa86 Refactor remaining number values to RideStation::NO_TRAIN (#8655) 2019-01-30 13:49:46 +00:00
Matt 4026ead774 Fix #8653: crash when peeps attempt to enter a ride with no vehicles. 2019-01-30 13:16:45 +01:00
ζeh Matt 3aad9a4b2e Refactor footpath_update_path_wide_flags 2019-01-29 19:07:00 +01:00
Tom Lankhorst 3ab73018ec Quiet CMake find package 'benchmark' (#8628)
`benchmark` is an optional package. CMake can be quiet about not finding it.
2019-01-28 21:44:50 +01:00
Tom Lankhorst 0233795add Fix #8642: Likely mistake in entrance fee check 2019-01-28 11:15:49 +01:00
Tom Lankhorst 4c015edaf6 Templatise `rorN` and `rolN` with `N` in {8, 16, 32, 64} 2019-01-28 10:55:24 +01:00
Tom Lankhorst 06600440fe
Enable LTO/IPO on Clang and GCC 2019-01-27 12:58:19 +01:00
Michael Steenbeek 3d9702dfd4
Fix #8141: Attempting to build entrance/exit on station 2 does not work 2019-01-27 10:38:47 +01:00
Michael Steenbeek 3b176cd6eb
Fix #8585: Part of track missing on air powered vertical coaster (#8635) 2019-01-25 22:09:12 +01:00
Gymnasiast 66c571370e Fix #8572: Steel Twister track pieces ID 64 and 65 drawn incorrectly 2019-01-24 20:25:01 +01:00
Tom Lankhorst 01a52d236c Use vector<string> in InteractiveConsole
Issue #8597 shows Valgrind result indicating a memory leak in
InteractiveConsole. This is fixed in #8619 by ensuring that free() is
called appropriately.
This commit takes that a step further by removing all manual memory
management in favour of using vector<string>.

- argc is now gone in favour of argv.empty()/argv.size()
- argv_t is a vector of strings of utf8's
- console_command_func's signature is changed accordingly
2019-01-24 16:12:49 +01:00
Michael Steenbeek 247e89eb53
Revert duck fix 2019-01-24 10:40:04 +01:00
Michał Janiszewski cba2dd96ec Allow specyfing more than one input file for sprite sort benchmark 2019-01-22 19:54:12 +01:00
Michał Janiszewski b38e600b15 Update sprite sort benchmark to accept filename 2019-01-22 19:45:56 +01:00
Michał Janiszewski 304840069d Add sprite sorting benchmark 2019-01-22 19:45:56 +01:00
Michał Janiszewski f2233d3cc3 Update MSVC project to use Google benchmark 2019-01-22 19:45:56 +01:00
Tom Lankhorst 55af6ad0e1 Free allocated memory when 'argc' == 0 (#8619)
Fixes leak in #8597, InteractiveConsole allocates memory for arguments,
but frees it only if the argument count is greater than zero.
2019-01-21 23:03:12 +00:00
Michael Steenbeek 4e9d2ce764
Split footpath object into two internally 2019-01-20 21:38:38 +01:00
Gymnasiast cd8227c756 Clean up magic numbers in footpath corner drawing 2019-01-20 17:54:30 +01:00
Gymnasiast d000457fb5 Rename more occurrences to railingEntry 2019-01-20 17:23:27 +01:00
Gymnasiast ad2698df0d Move 'should draw path over supports' to tile element 2019-01-20 17:23:27 +01:00
Gymnasiast 1f6d4caf7c Rename some variables 2019-01-20 17:23:27 +01:00
Gymnasiast 2f0b6a9652 Rename FOOTPATH_ENTRY_FLAG_HAS_PATH_BASE_SPRITE 2019-01-20 17:23:27 +01:00
Gymnasiast 73e25399d3 Rename footpathEntry to railingEntry where appropriate 2019-01-20 17:23:27 +01:00
Gymnasiast 9da5b5d513 Rename path_paint_{box,pole}_support parameter 2019-01-20 17:23:27 +01:00
deurklink 5e39147b76 Fix #8584: Ducks spawning function doesnt check tiles 0..63 (original bug) (#8614) 2019-01-20 13:20:01 +01:00
Lars Toenning 7de115263e Fix #8377: Change number of autosaves that are stored (#8440) 2019-01-19 14:31:12 +01:00
Michael Steenbeek 6ef01b3cd3
Name some path drawing variables 2019-01-18 20:35:43 +01:00
Michael Steenbeek b4bef2fe7d
Merge pull request #8560 from richard-fine/directions
Begin cleanup of direction handling
2019-01-18 19:09:39 +01:00
Ted John 92412d4bab Store ride index inside ride struct 2019-01-18 11:46:18 +01:00
Michał Janiszewski 6043f583b0 Add missing nullptr check in rct_peep::UpdateRideMazePathfinding
Fixes https://www.nedesigns.com/park/3359/h2h7-r4-diamondheights/
2019-01-17 23:40:18 +01:00
ζeh Matt a34422dc26 Fix #8591: Game loop does not run at a consistent tick rate of 40 Hz (#8594)
* Fix #8591: Run game loop at consistent tick rate of 40hz.

* Update distribution/changelog.txt

Co-Authored-By: ZehMatt <m.moninger.h@gmail.com>
2019-01-17 23:22:27 +01:00
deurklink 51fc2fe84a Feature #8583: Add booster pieces for water coaster
Co-Authored-By: deurklink
2019-01-14 22:17:52 +01:00
Michał Janiszewski b27428835c Change http://backtrace.io token
Someone seems to be trying to use up all our backtrace.io quota by
submitting the same bug over and over again which was fixed in
https://github.com/OpenRCT2/OpenRCT2/pull/8533, 17 days ago now.

To prevent such behaviour, I've disabled the old token and replaced it
with a new one, causing dumps from old builds to be rejected now and not
counting towards our quota.
2019-01-14 21:18:33 +01:00
Gymnasiast 87f894079b Replace hardcoded occurrences of RIDE_ENTRY_INDEX_NULL 2019-01-12 12:48:35 +01:00
Gymnasiast 74a3674e86 Replace more hardcoded instances of RIDE_ID_NULL 2019-01-12 12:38:23 +01:00
Ted John 8701286772
Use new ride_id_t typedef (#8561) 2019-01-12 10:11:55 +00:00
Michael Steenbeek fdba61002f
Add station index to Tile Inspector 2019-01-08 11:25:12 +01:00
Michał Janiszewski 0d2fd33fd8 Bump network version
Co-Authored-By: ZehMatt <m.moninger.h@gmail.com>
2019-01-07 09:04:51 +01:00
Matt 9f613833ce Rename actions. 2019-01-07 09:04:51 +01:00
IntelOrca b9fd90ffd3 Implement ClearAction. 2019-01-07 09:04:51 +01:00
Matt d7096f71cb Implement SceneryRemoveLargeAction. 2019-01-07 09:04:51 +01:00
Matt b34b09c6bb Implement SceneryRemoveSmallAction. 2019-01-07 09:04:51 +01:00
Richard Fine 3b9dd87caf Make direction_reverse constexpr and pass arg by value
To make totally sure that the compiler understands it can fully compute the value at compile time when dealing with constant inputs, and to make totally sure there are no aliasing problems.
2019-01-06 11:58:28 +00:00
Ted John 0328355f9e Include stdexcept instead of exception (#8559) 2019-01-05 22:12:47 +01:00
Richard Fine b77f1285a4 Reformat 2019-01-05 19:48:12 +00:00
Richard Fine e90e9dd73f Introduce many uses of direction_reverse
Change many of the places doing the ^2 trick to use direction_reverse instead, for improved readability.
2019-01-05 15:41:46 +00:00
Richard Fine fd60654238 Add comments and direction_reverse function
Add a bit of Javadocs, and introduce helper function for reversing directions because the ^2 trick used elsewhere in the codebase is not immediately obvious exactly what it does.
2019-01-05 14:28:24 +00:00
Richard Fine 613c7e9bf3 Introduce 'Direction' typedef
Directions are used quite widely across the codebase, but right now we just use uint8_t for them. Defining a proper type makes the intention clearer.
2019-01-05 13:58:32 +00:00
Hielke Morsink 53ae48ffca
Merge pull request #8550 from janisozaur/fallthroughs
Fix implicit fallthroughs
2019-01-04 23:27:02 +01:00
Hielke Morsink 5ef5e4153d Fix some more implicit and conditional fallthroughs 2019-01-04 22:26:56 +01:00
Michał Janiszewski 8a70b29f64
Fix GCC's warning regarding enum vs non-enum values being compared (#8551) 2019-01-04 21:29:44 +01:00
Michał Janiszewski 7e769ed662 Fix #7536: Android build fails to start (#8554)
This was a regression from #7435 which introduced threads and caused JNI
to misbehave and fail to load our expected classes. Provide a workaround
based on the description in https://stackoverflow.com/a/16302771 which
stores a main thread's class loader and uses that in neighbouring
threads.
2019-01-04 19:48:26 +01:00
ζeh Matt 20496b0390
Merge pull request #8545 from richard-fine/use-enum-types
Use of enum types in Peep code
2019-01-04 10:57:56 +01:00
ζeh Matt 069052c685 Fix replays not working in some cases. (#8552) 2019-01-04 10:45:21 +01:00
Richard Fine a30e154388 Handle all enum values in switches
Add 'default' cases to a few enums that were not otherwise handling all possible enum values. This wasn't a problem before because the variables we were switching on were not actually enum types, but now that they are, Clang is warning us about the non-covered cases.
2019-01-03 12:06:47 +00:00
Michael Steenbeek 31298bd772
Merge pull request #8543 from IntelOrca/refactor-ride
Refactor ride structure
2019-01-02 22:38:20 +01:00
Michał Janiszewski c5e1abcfb1 Fix implicit fallthroughs 2019-01-02 22:30:57 +01:00
Michał Janiszewski b7d1d49956
Merge pull request #8548 from janisozaur/memleak-20190102
Plug memory leaks
2019-01-02 21:23:09 +01:00
Ted John d979511628 Do code review suggestions 2019-01-02 19:46:13 +00:00
Gymnasiast 7c8144b57d Fix codepoint of interpunct 2019-01-02 20:04:42 +01:00
Michał Janiszewski ca3d9cea91 Add missing free() call in config_release() 2019-01-02 20:02:14 +01:00
Michał Janiszewski 635e46af83 Plug memory leak in ObjectFactory::CreateObjectFromZipFile 2019-01-02 19:57:41 +01:00
Michael Steenbeek b5317ee9e9
Split drawing of path and railing 2019-01-02 19:52:53 +01:00
Richard Fine 3089781883 Reformat 2019-01-02 14:40:17 +00:00
Richard Fine b845304656 Equality operators for TileCoordsXYZ
Introduce operator == and operator != for TileCoordsXYZ, so that we can more easily operate on them in tests.
2019-01-02 14:11:28 +00:00
Richard Fine 60396c6658 Rename enums to modern style
Change various PEEP_ENUM_TYPE names to PeepEnumType names, to match the more modern coding standard.
2019-01-02 14:10:05 +00:00
ζeh Matt a065806b20
Merge pull request #8374 from ZehMatt/replay-feature
Add support to record and replay game commands/actions.
2019-01-02 09:15:10 +01:00
Matt 7955dba9ba Add warning for mismatching network version. 2019-01-02 06:58:36 +01:00
Matt fc4e45562d Use stringstream to log integral values. 2019-01-02 06:39:59 +01:00
Matt 74668c6188 Use correct file path on replay info output. 2019-01-02 05:39:32 +01:00
Matt 8615690891 Fix timestamp not being stored. 2019-01-02 05:36:31 +01:00
Matt 6aee1cba28 Remove deprecated function std::asctime. 2019-01-02 05:35:57 +01:00
Matt 1f20fdf65b Log more replay information to console. 2019-01-02 05:20:10 +01:00
Matt a8254aa292 Add 64 bit serialisation support. 2019-01-02 05:18:36 +01:00
Matt fafd2081e3 Result NewsItem when adding to queue. 2019-01-02 05:03:42 +01:00
Richard Fine 88beb4ee6a Define PEEP_ACTION_SPRITE_TYPE_WATCH_RIDE
Previously untitled "PEEP_ACTION_SPRITE_TYPE_2" is a single-frame animation that guests play when they are standing still and watching a ride.
2019-01-01 23:17:45 +00:00
Richard Fine a5e896f0c3 Use PEEP_ACTION_SPRITE_TYPE in the peep drawing code 2019-01-01 23:07:13 +00:00
Richard Fine 73686e84d6 Define PEEP_ACTION_SPRITE_TYPE_SITTING_IDLE
Previously untitled 'PEEP_ACTION_SPRITE_TYPE7' is actually a single-frame animation for sitting on benches, from looking at the sprite. Makes sense with the way the value is used in the code too.
2019-01-01 23:06:57 +00:00
Richard Fine f3292194f5 Use PEEP_SPRITE_TYPE enum
Use the PEEP_SPRITE_TYPE enum for rct_peep::sprite_type so we get type safety on it.
2019-01-01 22:40:59 +00:00
Richard Fine 88850cdab2 Use PEEP_ACTION_SPRITE_TYPE enum
Use the PEEP_ACTION_SPRITE_TYPE enum for rct_peep::action_sprite_type and ::next_action_sprite_type, as well as other code that deals with action sprite types.
2019-01-01 22:29:26 +00:00
Richard Fine 38cec94d9d Use PEEP_THOUGHT_TYPE enum
Use PEEP_THOUGHT_TYPE for rct_peep_thought::type field, as well as functions that deal with selecting thoughts to add.
2019-01-01 22:18:49 +00:00
Richard Fine b716fd071d Use PEEP_TYPE enum for rct_peep::type field
Use the PEEP_TYPE enum for rct_peep::type so that the compiler/debugger understand what values it should contain.
2019-01-01 22:11:02 +00:00
Richard Fine e1016bf71e Use PEEP_ACTION_EVENTS enum for rct_peep::action field
Use the PEEP_ACTION_EVENTS enum for the rct_peep::action field explicitly, so that we get type safety on it from the compiler and debugger. In the process, force PEEP_ACTION_EVENTS to be of size uint8_t, and use named constants for NONE actions instead of magic numbers in a few places.
2019-01-01 22:06:02 +00:00
Ted John 38f632074b Merge ride track colour arrays into one 2019-01-01 21:25:34 +00:00
Richard Fine 88b86eb0c1 Use PEEP_STATE enum type directly
Explicitly declare the PEEP_STATE enum as being uint8_t width, then use it instead of uint8_t in the rct_peep struct. This has a few benefits:

* It makes it clearer which values we expect to be assigned to that variable. If you hadn't already seen PEEP_STATE existed, it wouldn't be obvious.
* It lets the compiler catch assignment of non-PEEP_STATE values for us
* It lets the debugger show us symbolic constants when looking at a peep, instead of raw values.

The only downside is that we no longer see directly in the rct_peep struct that the field is 1 byte wide, but I think that the benefits outweigh the costs in this case...
2019-01-01 20:49:17 +00:00
Ted John 37f76d1687 Move station fields into new station struct 2019-01-01 02:26:14 +00:00
Ted John 8e6497fc1d Merge vehicle_colours and vehicle_colours_extended 2018-12-31 19:25:07 +00:00
Ted John 153ab15428 Fix #8493: Remove_unused_scenery removes map data
Do not try to remove (unused) terrain surfaces, edges and stations.
2018-12-30 23:40:22 +00:00
Matt 8721bef807 Fix TileElementWantsFootpathConnection test not releasing context. 2018-12-30 12:24:41 +01:00
Matt 38dc762f62 Initialize gCommandPosition with LOCATION_NULL in case its not set. 2018-12-30 00:04:34 +01:00
Matt 19ffc6208f Add version to replay file. 2018-12-30 00:03:20 +01:00
Matt c7ab757a86 Cleanup. 2018-12-29 23:06:15 +01:00
Matt 0ba42d6899 Fix TileElementWantsFootpathConnection test not releasing context. 2018-12-29 22:58:33 +01:00
Matt b0ca9ff7c5 Prevent replay manager from recording nested commands. 2018-12-29 19:23:28 +01:00
Matt bf03de4755 Focus camera on last replay event. 2018-12-29 19:23:28 +01:00
Matt d3a20df682 Fix track designs ignoring ghost/preview flags. 2018-12-29 19:23:28 +01:00
Matt 14695e9b41 Fix game actions with ghost flags being recorded to replays. 2018-12-29 19:23:28 +01:00
Matt d1ee19efd4 Fix track design previews not passing flags down. 2018-12-29 19:23:28 +01:00
Matt 5a8b611b83 Update. 2018-12-29 19:23:28 +01:00
Matt 5cfc06573e Ignore replay test when network is disabled. 2018-12-29 19:23:27 +01:00
Matt ccc3227113 Cleanup. 2018-12-29 19:23:27 +01:00
Matt 040522b708 Fix include. 2018-12-29 19:23:27 +01:00
Matt 017f190a52 Add basic regression tests via the replay system. 2018-12-29 19:23:27 +01:00
Matt 7fa9ce3054 Store state important park parameters in the replay. 2018-12-29 19:23:27 +01:00
Matt df0cc72887 Add normalisation support to remove gaps. 2018-12-29 19:23:27 +01:00
Matt b6c2dca849 Adjust replay notification position. 2018-12-29 19:23:27 +01:00
Matt f6dbf5f1a2 Add std::array serialiser support. 2018-12-29 19:23:27 +01:00
Matt 6e2514cd0d Refactor sprite_checksum, returns rct_sprite_checksum now. 2018-12-29 19:23:27 +01:00
Matt bf8108c2d6 Lock game actions and commands to replay commands if replay is active. 2018-12-29 19:23:27 +01:00
Matt 6e8216d7c7 Add GAME_COMMAND_FLAG_REPLAY 2018-12-29 19:23:27 +01:00
Matt 624427259b Draw text notice if replay system is active. 2018-12-29 19:23:27 +01:00
Matt 3ea8ab4bb3 Cleanup serialization. 2018-12-29 19:23:27 +01:00
Michał Janiszewski d9b91055ca Fix include 2018-12-29 19:23:27 +01:00
Matt b573d5ddaa Add missing virtual destructor. 2018-12-29 19:23:27 +01:00
Matt 000a9694f9 Fix DataSerialiser not accepting temporary values. 2018-12-29 19:23:27 +01:00
Matt a6efef1e81 Add support to record and replay game commands/actions. 2018-12-29 19:23:27 +01:00
Michał Janiszewski 54403aca06 Fix the no-HTTP builds 2018-12-28 22:27:33 +01:00
Michał Janiszewski 5b467ffc68
Fix rendering of text shadows with TTF (#8533)
Only render shadow if it is within the bounds of allocated buffer.
This fixes most if not all crashes seen with rendering TTF. The cause of
the problem is rendering of shadows which is done by taking a solid
rendered text and moving it by one pixel to up, left, right and *down*.
In some cases rendering the shadow in the one-down offset will write
past the allocated surface (see
8d9fcb7f98/src/openrct2/drawing/Drawing.String.cpp (L594))
it can easily happen when trying to render a shadowed text (e.g. map
tooltip) on a peep that's just above the bottom of the viewport.
2018-12-28 11:47:08 -08:00
Matt 727ba2d7d0 Fix #8333: Replace assert with in-game error. 2018-12-23 22:28:59 +01:00
Michał Janiszewski a34957eb41 Add ride type check to rct_peep::ShouldGoOnRide 2018-12-22 15:35:26 +01:00
Michael Steenbeek 2530cd1ac3
Fix #8426: Queue banner left behind after ride demolition 2018-12-22 15:34:17 +01:00
Gymnasiast 958f287bb7 Fix typo, fix nullptr check notation 2018-12-22 15:31:28 +01:00
Michael Steenbeek 65dcdf77ea
Fix #8508: Underground roto-drop is not going up 2018-12-22 11:56:00 +01:00
Tobias 73345b414b Fix #7985: Giant Screenshot ignores 'Map rendering' settings 2018-12-21 21:27:06 +01:00
Michael Steenbeek 764fdf0648
Merge pull request #8491 from ZehMatt/preview-placement-hints
Use different colours for entrance/exit on track design previews.
2018-12-21 20:46:22 +01:00
ζeh Matt b572fffafa
Merge pull request #8457 from ZehMatt/refactor/game-action-name
Automatically expose game action name via macro.
2018-12-20 23:17:49 +01:00
Matt 4dce91e027 Move defines into Colour.h 2018-12-20 22:29:16 +01:00
Matt 4ff2dbd108 Automatically expose game action name via macro. 2018-12-20 22:20:58 +01:00
Michał Janiszewski c0fc5142ac
Merge pull request #8321 from ZehMatt/simulate-cmd
Add "simulate" command.
2018-12-20 22:08:17 +01:00
Ted John 92bb4a5897 Fix #8498: Advertisement campaigns less effective than they used to be
0x8000 was being checked instead of 0xFFFF when importing and exporting peep spawns to and from S4, S6.
2018-12-20 09:25:31 +00:00
ζeh Matt 7568123a9d Fix #8482: Pending player list not being reset. (#8483) 2018-12-19 20:34:41 +01:00
Michael Steenbeek 38b26e0ac4
Fix #8456: Junior booster track piece doesn't connect properly 2018-12-18 22:41:01 +01:00
ζeh Matt 183e508c4d
Merge pull request #8465 from ZehMatt/fix-8464
Fix #8464: Crash on game shutdown.
2018-12-18 00:55:22 +01:00
Michał Janiszewski ea61be5ebe
Prevent logging from using already-freed game command (#8473)
gc variable is held by reference in the scope above, pointing to the
queue's beginning.
2018-12-17 23:56:01 +01:00
Matt 8e2e60b117 Fix #8464: Crash on game shutdown. 2018-12-17 23:51:43 +01:00
ζeh Matt 3cc6e1ab15 Fix #8469: Crash modifying colour on hacked rides. (#8470) 2018-12-17 16:27:45 +01:00
Ted John abbdab9b6d
Merge pull request #8452 from IntelOrca/change-structures
Change a few structures from fixed to C++
2018-12-16 19:01:36 +00:00
Ted John 1d6d734c1c Fix build 2018-12-16 19:01:15 +00:00
Ted John 08b02943d3 Use std::string for scenario name, details etc. 2018-12-16 19:01:14 +00:00
Ted John 4195f0d9c9 Change gPeepSpawns to a vector so we can now have more than 2 2018-12-16 19:00:16 +00:00
Ted John 19a687f2fa Change gParkEntrance to a vector so we can now have more than 4 2018-12-16 19:00:16 +00:00
Michael Steenbeek 59f9476ecd
Change 'entrance style' to 'station style' 2018-12-16 19:38:30 +01:00
Gymnasiast 6031a9bc27 Fix SV4 import error 2018-12-16 12:49:30 +01:00
Gymnasiast 75d094e135 Fix another omission from #8453 2018-12-16 10:10:26 +01:00
ζeh Matt 7d19a5bc77 Refactor memcpy to std::memcpy and memset to std::memset (#8408) 2018-12-15 22:23:31 +01:00
Gymnasiast 748da25f78 Fix omission from #8453 2018-12-15 21:34:14 +01:00
Michael Steenbeek 7d7e8e2638
Merge pull request #8453 from Gymnasiast/fix/8033
Fix #8033: Crash when placing 64th sign
2018-12-15 21:24:09 +01:00
Michael Steenbeek 6d0f0334d7
Merge pull request #8339 from ZehMatt/realtime-ticks
Use real time ticks for UI effects.
2018-12-15 21:00:44 +01:00
Gymnasiast 600d32807d Fix #8033: Crash when placing 64th sign 2018-12-15 20:34:28 +01:00
Gymnasiast 0d775f48ec Clean up scenery ghost flags 2018-12-15 20:31:41 +01:00
ζeh Matt d88a9048f9 Fix #8431: crash when game action logging is enabled. (#8447) 2018-12-15 18:41:55 +00:00
Michael Steenbeek 705fb94f58
Fix #8406: Add 'Entrance style:' label to Ride window 2018-12-15 19:00:37 +01:00
Hielke Morsink f53bf5508b
Merge pull request #8335 from ZehMatt/vehicle-crash-fix
Fix hacked rides with no vehicles crashing the game.
2018-12-14 21:01:59 +01:00
Michael Steenbeek 596f30313b
Merge pull request #8439 from IntelOrca/fix-8433
Fix #8433 and #8434
2018-12-14 20:32:15 +01:00
ζeh Matt a78a6f2a33 Fix #8349: Ride's exit is rendered incorrectly while building it 2018-12-14 20:08:18 +01:00
Ted John fecf4ac3e8 Fix #8434: Crash if curl_easy_init fails 2018-12-14 17:10:50 +00:00
Matt f0bd72732c Fix hacked rides with no vehicles crashing the game. 2018-12-14 00:04:35 +01:00
Ted John ab53c69c3c Use new CanGrow method on surface element which uses object property 2018-12-11 23:31:06 +00:00
Ted John 2da8e18200 Read the canGrow flag from surface objects 2018-12-11 23:00:59 +00:00
Michael Steenbeek cf44ea7e24
Fix #3832: Track piece colour scheme paint not network-safe 2018-12-11 22:17:52 +01:00
Michał Janiszewski 23dc14b286
Improve checks for object files (#8417) 2018-12-11 19:35:27 +01:00
Ted John 7c3401603d Change mallocs to new[] 2018-12-10 21:14:07 +00:00
Ted John e13d6da81f Prevent possible stack overflow if zoom offset is 0 2018-12-10 19:54:54 +00:00
Ted John 85b443fc15 Fix #8411: Save game failed!
Do not try to pack our new object types (stations and surfaces) into saved games.
2018-12-10 15:14:50 +00:00
Ted John cefa4c3935 Fix #8410: Grass is broken
Add zoom images to the very end of the image table so the offsets of the images are not changed.
2018-12-10 11:57:50 +00:00
Ted John ef57f1a403 Fix zoomed out images 2018-12-09 23:30:40 +00:00
Ted John 06f203a7e7 Implement surfaces, edges and stations as objects 2018-12-09 23:30:40 +00:00
roosen5 d9806305b0 Fix #8358: infinite loop when changing vehicle count on stopped ride. (#8375)
The sprite_remove in Sprite.cpp tries to find itself inside the quadrant.
It does not find itself, and because the rest of the code assumes that it will always find it
The normal code tries to set the value of the next_in_quadrant so that whoever points at it, will now point at its next sprite.
But because it didn't find whoever was pointing to it, it would set the pointer to SPRITE_INDEX_NULL to its next sprite.
This would lead to cycles in the linked list

The reason that the sprite was not found is that during the entry of a ride, the position of a peep is set to LOCATION_NULL
Exiting a ride sets it back to whatever the location is of an exit.
However stopping a ride that still has people in it would go wrong, as the people are removed from the ride through ride_remove_peeps

This function was called during the PaintWindows.
The fact that this function is called during the painting is the problem, because of the tweening:
Before painting all the positions are stored (Which would at that point be the LOCATION_NULL), during the painting
the peep would be removed from the ride, setting their location to the enrance/exit
After painting is done all the positions are restored again, so the patched position is forgotten and then it would be
removing a sprite with location LOCATION_NULL and that goes wrong

The fix is to have the window update outside of paint
2018-12-09 20:46:04 +01:00
ζeh Matt 04af3932ac Fix #5684: Refactor player list updates being bound on ticks. (#8399) 2018-12-09 20:39:44 +01:00
ζeh Matt f69c95f907 Fix #8392: prevent crash due to inconsistent player list updating. (#8397) 2018-12-09 10:18:23 +01:00
Michał Janiszewski eca13b99ed
Merge pull request #8367 from ZehMatt/paint-refactor2
Paint refactor
2018-12-05 23:46:21 +01:00
Michał Janiszewski cec86469f0
Improve imported object handling (#8372)
Reject and report invalid objects rather than triggering assert.
2018-12-05 23:12:22 +01:00
Matt 468d94a6ca Remove gCurrentViewportFlags 2018-12-05 23:09:17 +01:00
Matt adb4aa69a6 Rename UnkF1AD28 to LastRootPS 2018-12-05 23:08:43 +01:00
Matt aa8b8d8415 Remove unused member in paint_session. 2018-12-05 23:08:43 +01:00
Michał Janiszewski f5f3bfe087
Fix invalid scenery entry (#8328) 2018-12-05 23:01:13 +01:00
ζeh Matt 940fff4bbf Fix dereferencing nullptr when game objects are missing. (#8360) 2018-12-05 22:59:15 +01:00
Michał Janiszewski f488c4bf35
Forward-declare json_t and reduce Json.hpp inclusion (#8368) 2018-12-05 20:31:32 +01:00
ζeh Matt 2da01caa1e Fix #8338: GAs using player id instead of index to log money spent. (#8361) 2018-12-05 07:39:57 +01:00
Michał Janiszewski c845924956
Validate news item type on import (#8334)
News items use queue split into two logical partitions. When detected an
invalid news item type, simply drop remaining items to avoid having to
handle all the possible cases of where the invalid items falls.
Additionally, as normal use case wouldn't have triggered such an invalid
type, it must have come from some invalid file anyway, so assume it is
fine to drop other items.
2018-12-03 20:06:05 +01:00
ζeh Matt 61ef7b1c9e Fix #8345: crash with deleted surface when using "Own all land" cheat (#8347) 2018-12-03 19:43:36 +01:00
Michael Steenbeek 3c63402e1d
Fix number of free sprites on SV6 import 2018-12-01 17:34:02 +01:00
Matt 862ef3018c Use gCurrentRealTimeTicks whenever appropriate. 2018-12-01 17:00:11 +01:00
Matt 4bc69a0111 Introduce gCurrentRealTimeTicks and refactor some variable names. 2018-12-01 16:36:00 +01:00
ZehMatt 36f75f89a0 Add "simulate" command. 2018-11-30 20:11:10 +01:00
Michał Janiszewski 0a9527fd7d
Include config.ini in the dump (#8316) 2018-11-30 12:42:53 +01:00
Michał Janiszewski a78e812a64 Add `dereference` command to aid testing breakpad 2018-11-29 21:40:59 +01:00
Michał Janiszewski fe2ab7a653 Add compressed sv6 to backtrace.io uploads 2018-11-29 21:40:59 +01:00
Michael Steenbeek a9a583dcd1
Fix #8200: Incorrect behaviour when removing entrances/exits on the same tile 2018-11-27 22:59:31 +01:00
Hielke Morsink 354d973a48 Use std::size instead of Util::CountOf 2018-11-23 21:59:08 +01:00
ζeh Matt 1abb31a159 Implement game action logging. (#8138) 2018-11-20 06:04:42 +01:00
Michał Janiszewski 0d2751a54e
Hide the network class declaration to Network.cpp (#8276)
The Network class is not used by anyone other than free functions in
Network.cpp, nor should it be used by anyone with the current design.

This change leaves only the publicly-exposed functions left in the
header, drastically reducing amount of required headers in network.h,
one of the heaviest headers we had so far.
2018-11-19 23:10:54 +01:00
TELK 4cc2057b94 Add 'say' command in console (#8259)
* Add 'say' command in console

* Unifying space just before }
2018-11-18 20:38:55 +01:00
Michael Steenbeek 9446422aca
Fix #8272: Do not attempt to add blank DAT names in S4Importer 2018-11-18 10:35:00 +01:00
Gymnasiast 618a650ac2 Fix RCT1 import of white and light brown fence 2018-11-17 18:18:00 +01:00
Gymnasiast ace42a98a5 Fix RCT1 import if research list is gone 2018-11-17 18:18:00 +01:00
Michał Janiszewski af91a0ef61
Add abort and terminate to console
Often when testing things out there's a need to have a way of inducing a
crash. Rather than trying to figure out what might be the bug that would
cause such conditions on given version, compiler and OS, provide a
simple way to call std::abort() and std::terminate() via the in-game
console.

Additionally, sort the commands.
2018-11-17 00:26:27 +01:00
Michael Steenbeek de12a8dda1
Import S4 elements property-by-property 2018-11-13 21:48:20 +01:00
ζeh Matt 06c5508bab Fix #8212: Crash when opening rides with changed mode and no tracks. (#8216) 2018-11-12 20:13:42 +01:00
Felix Pelletier 4c5fccc9b6 Fix #7689: Deleting 0-tile maze gives a MONEY32_UNDEFINED (negative) refund 2018-11-11 21:01:06 +01:00
Michał Janiszewski 7582afe0b4
Fix #8248: Invalid tile element in footpath_element_insert (#8249)
* Fix #8248: Invalid tile element in footpath_element_insert

* Update Footpath.cpp
2018-11-11 19:17:08 +01:00
Michael Steenbeek 82aba96728 Cheats: use 'weather' instead of 'climate' (#8246) 2018-11-10 14:30:41 +01:00
Gymnasiast a2033bc8ab Add non-breaking spaces 2018-11-09 23:41:18 +01:00
Gymnasiast 72d2ebd4d7 Add Russian rouble sign 2018-11-09 23:40:18 +01:00
Hielke Morsink 18f1fab2cc
Merge pull request #8235 from Broxzier/ui/climate
Move climate setting from objective to scenario settings window
2018-11-09 00:10:52 +01:00
Hielke Morsink fb5343114e format NetworkActions::Actions 2018-11-08 23:45:40 +01:00
Hielke Morsink b45fabdc7d Add new action to 'edit scenario options' permission 2018-11-08 23:44:51 +01:00
Hielke Morsink 107faaf821 Add and use game action for setting the climate
Also reordered the registered game actions the same as headers, so they are easier to find.
2018-11-08 22:39:13 +01:00
Michael Steenbeek 94ce57929a
Fix #8236: Paths of track designs are built incorrectly 2018-11-08 22:13:44 +01:00
ζeh Matt 223ae74c6b Refactor code to obtain resolutions. (#8215) 2018-11-06 07:20:57 +01:00
Michael Steenbeek df768a3fad
Fix #8201: Only quarter scenery objects in one corner can be painted 2018-11-05 20:12:22 +01:00