1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2026-01-28 17:24:47 +01:00
Commit Graph

697 Commits

Author SHA1 Message Date
Ted John
9c645e0a0f Refactor track_design_draw_preview 2016-09-04 12:16:56 +01:00
Michał Janiszewski
f8145b6edc Refactor inclusion of addresses.h
addresses.h is now only included when necessary, limiting scope as much
as possible.
2016-09-03 21:25:19 +01:00
Michał Janiszewski
599b092487 Conditionally integrate some variables 2016-09-03 18:40:23 +01:00
Ted John
17b69d257b Merge pull request #4097 from marijnvdwerf/clean/string-ids-2
Continue string ID cleanup
2016-08-28 14:05:13 +01:00
Ted John
8cf7e87b5c Fix many warnings for x64 2016-08-27 23:32:15 +01:00
jensj12
13979397de Allow corner tiles when using mountain tool
The tile selection was limited to full tiles when using the mountain tool on a single tile. The game now allows selecting and raising/lowering corner tiles and the smoothing algorithm is modified to support that. The cost is the same as the old single-tile mountain tool. A bug where the mountain tool sometimes creates sharp edges has also been fixed.
2016-08-23 19:30:09 +01:00
Ted John
25328bccc9 Merge pull request #4221 from zaxcav/pathfind
Path finding fixes and optimisations
2016-08-21 21:34:12 +01:00
zaxcav
b1da59d25a Ignore isolated footpath tiles in the wide processing. 2016-08-21 22:24:40 +02:00
zaxcav
60acab8676 Remove if statements originally used to overlay grid of non-wide paths. 2016-08-21 22:24:19 +02:00
zaxcav
86be86331e Remove exlusions from path tiles being flagged wide based on tile coordinates. 2016-08-21 22:23:38 +02:00
zaxcav
a768be5e88 Fix the peep path finding
In the heuristic search, tiles in wide path were always being handled as junctions.  Changed to handle junctions according to the path thinning.

There was no search loop detection.  Added loop detection for returning to the starting location and any of the junctions visited in the current search path.

Various other optimisations added.
2016-08-21 22:23:38 +02:00
Marijn van der Werf
3a7fa512a2 Use rct_string_id as type where applicable 2016-08-21 16:33:37 +02:00
Ted John
112b70c15b Merge pull request #4068 from gDanix/refactor-clear_elements_at
Refactor clear_elements_at()
2016-08-21 13:59:07 +01:00
Ted John
ff12c2b326 Integrate animation objects 2016-08-20 22:38:50 +01:00
Ted John
8aaf7e313f Merge pull request #4278 from marijnvdwerf/clean/data-12
Integrate misc data
2016-08-16 17:54:18 +01:00
Marijn van der Werf
b9a4ef86df Integrate litter data
0x0097EF6C
0x0097EFCC
0x0097EFE8
2016-08-16 10:55:38 +01:00
Ted John
612de0e567 Integrate 3 more park globals 2016-08-14 16:22:30 +01:00
Ted John
154bb0d475 Integrate guest and park globals
Note: this also fixes loading of landscapes in the editor which did not use the new SC loading code.
2016-08-14 15:50:52 +01:00
Ted John
81fb5f9545 Integrate climate globals 2016-08-14 15:07:32 +01:00
Marijn van der Werf
18edae3edf Integrate TerrainPricing 2016-08-14 14:49:32 +01:00
Marijn van der Werf
82d0d229ce Use word_981D6C 2016-08-14 13:12:07 +01:00
Marijn van der Werf
ac070103b1 Integrate duck frames 2016-08-14 11:37:59 +02:00
Ted John
572999e8e3 Merge pull request #4269 from marijnvdwerf/clean/data-11
Integrate various data
2016-08-12 23:38:09 +01:00
Marijn van der Werf
38b5bba668 Integrate TrackSequenceElementAllowedWallEdges 2016-08-12 21:39:49 +01:00
Marijn van der Werf
a5601b6558 Include data at 0x0098D7EC 2016-08-12 22:36:59 +02:00
Marijn van der Werf
f3bc1f13bc Integrate 0x0098D7F0 2016-08-12 22:36:53 +02:00
Ted John
122139e1e8 Merge pull request #4263 from marijnvdwerf/clean/data-edgeslopes
Include edge styles
2016-08-12 20:53:07 +01:00
Marijn van der Werf
8903559f75 Include data at 0x99ba64 and 0x99ca64 2016-08-12 20:51:22 +01:00
Ted John
389d75534d Merge pull request #4224 from marijnvdwerf/clean/data-5
[Clean] Use already integrated data
2016-08-12 20:50:37 +01:00
Marijn van der Werf
ef8d43328a Name WallSceneryFlag 2016-08-11 18:29:44 +02:00
Marijn van der Werf
be1e832873 Include edgeslopes 2016-08-11 18:18:29 +02:00
Ted John
0e04e9e47f Merge pull request #4259 from marijnvdwerf/clean/constants-1
[Clean] Use more constants
2016-08-09 23:55:18 +01:00
Marijn van der Werf
bdf174d4a2 Use sprite constants for weather 2016-08-09 23:43:47 +02:00
Marijn van der Werf
a81b7c4892 Use WALL_SCENERY flags 2016-08-07 12:57:22 +02:00
Michał Janiszewski
fa68d31dbf Remove RCT2_GLOBAL macro from stack buffer 2016-08-07 11:44:49 +02:00
Michał Janiszewski
0ece63a7f6 Wrap RCT2's addresses in RCT2_ADDRESS macro 2016-08-06 21:38:46 +01:00
Yaroslav Tretyakov
802fcedb6f Fix #4222: Artifacts with uncap fps on 2016-08-06 17:21:08 +01:00
Marijn van der Werf
1fc5681f00 Use TrackCoordinates 2016-08-06 01:04:35 +02:00
Marijn van der Werf
3d8b71ffbc Rename gTrackDefinitions to TrackDefinitions 2016-08-04 01:15:23 +02:00
Ted John
bf4e3febeb Fix #4207: Scenario Editor freezes the game
Recent commits have caused the sprite spatial index to be uninitialised for the editor modes. Call 
eset_sprite_spatial_index within 
eset_sprite_list as the two come hand in hand.
2016-08-03 21:19:53 +01:00
Michał Janiszewski
76d0adb5ed Remove unused variable
0x00F43896 usage has been refactored out in 9c3055224
2016-08-03 19:26:34 +02:00
zsilencer
5d04e5e03e Multiplayer desync stuff 2016-08-01 20:47:21 +02:00
Michael Steenbeek
ff7e119b46 Name some track design flags 2016-07-31 12:02:38 +01:00
Michał Janiszewski
702ae49474 Fix gMapElements size 2016-07-28 00:33:57 +02:00
Michał Janiszewski
193ca02014 Fix constness in no-network builds 2016-07-27 15:12:27 +02:00
Michał Janiszewski
1fe5fc56c0 Checksum sprites occasionally in multiplayer
This creates a checksum (SHA1) every so often on server and sends this
value together with PRNG seed for client to check it has still not
desynced.

It's useful to detect a desync early on, as PRNG seeds may remain
unchanged for some more time, while damage may have already been caused.
2016-07-27 15:54:02 +02:00
Michał Janiszewski
0421c59eff Refactor sprite_set_coordinates 2016-07-26 22:29:54 +02:00
Yaroslav Tretyakov
dd4e4caeaa Reset sprite quadrant placements as part of sprite reset command
This addresses some sources of desyncs in multiplayer.
2016-07-26 22:29:54 +02:00
Michał Janiszewski
e19cf781b1 Verify inputs to various functions 2016-07-24 13:18:50 +02:00
Michał Janiszewski
306cf2383c Zero the memory when creating new sprite
Some fields were left uninitialised explicitly (like rct_peep::var_73) but
used when doing logic. If they contained garbage from before the new
sprites were created, it could eventually lead to a desync later on.

This commit adds a new function: `sprite_reset`, which zeroes memory for
a new sprite and is called whenever a sprite is created. Some fields
have to be retained for the sprite to link properly in linked lists,
this function takes care of it.
2016-07-23 12:32:58 +01:00