Michał Janiszewski
0ece63a7f6
Wrap RCT2's addresses in RCT2_ADDRESS macro
2016-08-06 21:38:46 +01:00
Ted John
dca816cfd3
Merge pull request #4024 from IntelOrca/refactor/object-list
...
Refactor and improve the object system:
- Objects are now exported to user directory under 'object'.
- Object directories are scanned recursively.
- Improves reliability of object loading and handling of bad objects.
- Improve performance of object scanning.
- Only load new objects when loading a new game.
- Improve changing language experience.
2016-07-11 23:45:45 +01:00
Ted John
4de1f2912a
remove unnecessary functions
2016-07-09 15:36:48 +01:00
Ted John
ce878723d7
add helper methods for object entry names
2016-07-09 15:29:04 +01:00
Michał Janiszewski
639f19adbf
Fix define checks in project
2016-07-09 10:05:12 +02:00
Ted John
2f8f10cd11
improve object loading efficiency
2016-07-08 22:58:38 +01:00
Ted John
e8635c1307
prepare for better object loading
2016-07-08 22:58:38 +01:00
Ted John
6f97ec798e
remove object entry addresses and use constants
2016-07-08 22:58:38 +01:00
Ted John
8d168fb2ce
remove more old object code
2016-07-08 22:58:38 +01:00
Ted John
a47c039f22
remove lots of old object code
2016-07-08 22:58:38 +01:00
Ted John
343623c815
move more code from old object list to new repository
2016-07-08 22:58:38 +01:00
Ted John
84bd948488
report object scan time
2016-07-08 22:58:38 +01:00
Ted John
12f48f36b5
disable set_load_objects_fail_reason for now
2016-07-08 22:58:38 +01:00
Ted John
50b7e4222f
remove a lot of old object code
2016-07-08 22:58:38 +01:00
Ted John
b207f6112d
fix unloading of objects
2016-07-08 22:58:38 +01:00
Ted John
d7575732fb
get title screen loading correctly
2016-07-08 22:58:38 +01:00
Ted John
3f65a3a383
add object scan call
2016-07-08 22:58:38 +01:00
Michał Janiszewski
35676d31f7
Integrate path variables used by game
2016-06-24 23:25:40 +02:00
Michał Janiszewski
761fdfb7c0
Integrate gTotalNoImages
2016-06-24 23:25:40 +02:00
Michał Janiszewski
dfa482b1b5
Revert "Merge pull request #3897 from janisozaur/rebase-no-rct2"
...
This reverts commit 22c0cc92e6 , reversing
changes made to 7b421c8052 .
2016-06-24 22:40:37 +02:00
Michał Janiszewski
1b0a73c1cd
Revert "fix loading of footpath chunks"
...
This reverts commit 46bf0a47d9 .
2016-06-24 22:40:37 +02:00
Ted John
46bf0a47d9
fix loading of footpath chunks
2016-06-23 22:06:48 +01:00
Ted John
17f8f9fabd
remove rct_plugin_header size assertion
2016-06-23 20:20:09 +01:00
Ted John
ff247ca5de
force an object cache update
...
Due to previous issues, object caches are likely corrupt, so force an update using a new version identifier
2016-06-23 19:52:32 +01:00
Michał Janiszewski
402e5a32a0
Integrate path variables used by game
2016-06-19 23:52:20 +02:00
Michał Janiszewski
5a1d802a6a
Integrate gTotalNoImages
2016-06-19 23:52:20 +02:00
Michał Janiszewski
340997b365
Add new function to object vtable: reset
...
For use when an object has to be recreated based on already-existing
copy in memory with pointers of native length.
2016-06-19 18:12:14 +02:00
Michał Janiszewski
8a6eec0236
Try loading objects for x86-64
2016-06-19 18:12:14 +02:00
Ted John
b73861be99
integrate variable: g1Elements
2016-06-16 11:36:15 +02:00
Ted John
d07b9535c2
integrate variables: object entry lists
2016-06-16 11:36:15 +02:00
Michał Janiszewski
1508e49a28
Change macro to assert_struct_size
2016-06-03 11:29:50 +02:00
Michał Janiszewski
60630b9ad7
Drop PACKED attribute
2016-06-03 10:55:21 +02:00
Michał Janiszewski
df3030e4a9
Provide static_assert for hard-coded struct sizes.
2016-06-03 10:55:21 +02:00
Michał Janiszewski
3907fcd9d2
Explicitly pack structs
2016-06-03 10:55:21 +02:00
Martin Černáč
3bdc06dc25
Refactor hard-coded strings to use string_ids.h constants (and couple sprites too) ( #3658 )
2016-05-18 21:51:37 +01:00
Ted John
cbf9a393f1
remove use of get_format_arg
...
Because of strict aliasing, we must use memcpy in some cases.
2016-05-15 22:40:25 +01:00
Ted John
1cc35dfe6e
integrate common format args
2016-05-15 22:03:53 +01:00
Ted John
6f7db1f9b6
rename rct_path_type to rct_footpath_entry
2016-05-15 16:11:34 +01:00
Ted John
d0d2ad7ded
fix #3562 : loaded objects are not unloaded when loading a new game
2016-05-14 12:54:55 +01:00
janisozaur
7537c03d3f
Optimise object_get_length to use entryCache ( #3592 )
2016-05-14 01:15:17 +01:00
Michał Janiszewski
f458dec3e9
Restore checking of last entry's size
2016-05-14 00:23:03 +02:00
Michał Janiszewski
5c2e55723b
Fixup filters, skip double object list enumeration
2016-05-13 23:42:49 +02:00
Michał Janiszewski
6fc8ac721c
Migrate initial object list sorting to qsort()
2016-05-13 23:33:29 +02:00
Michał Janiszewski
5b639e515b
Cache entries for future lookup to speedup launch
...
Before this change, expensive `object_get_next` had to be called
`numObjects^2` times, now it is cached so it can only be called
`numObjects` times.
2016-05-13 23:22:11 +02:00
janisozaur
ca430e1b23
Drop unused variables ( #3586 )
2016-05-13 18:21:58 +01:00
janisozaur
658e877955
Name all the typdef-ed structs ( #3581 )
2016-05-12 22:57:40 +01:00
Ted John
3bb1d47813
use new S6Importer for loading saved games
2016-05-08 22:35:06 +01:00
Ted John
1908743c71
refactor track save, move into own source
2016-05-08 14:03:49 +01:00
Ted John
77e7313540
move track design related functions to new source
2016-05-08 14:03:48 +01:00
janisozaur
68bad6505c
Add and correct licence headers to all sources ( #3108 )
2016-05-04 18:24:41 +01:00