107 Commits

Author SHA1 Message Date
Jan
1a09ad4396 Rename ZoneCodeGeneratorNew to ZoneCodeGenerator.
Cleaning build folder might be required to prevent errors due to previous c# project
2021-03-01 14:39:29 +01:00
Jan
f85c82f487 Remove old ZoneCodeGenerator implementation in c# 2021-03-01 14:30:10 +01:00
Jan
eed7164b5b Save scriptstrings per zone and not per asset since that solves all problems with multiple assets of the same zone referencing the same struct in memory that has scriptstring indices 2020-10-23 15:54:27 +02:00
Jan
3cfcfa0c5d Make sure scriptstring arrays are being reallocated when they are reusable so if it is being referenced again the scriptstring indices are the ones of the zone instead of the asset that originally loaded them 2020-10-23 12:54:18 +02:00
Jan
c952aacda1 Remove the zonecodegenerator requirement to reference members in a type reference because IW did nasty things in their game that require me to do so. 2020-09-16 10:18:11 +02:00
Jan
4aafbac113 Fix ZoneCode array loading overwriting pointers when an array is loaded while inside of an array of the same type 2020-09-09 16:12:20 +02:00
Jan
9108add01d Fix XModelSurfs being entirely loaded in temp block by adding the feature to specify a block for a struct to be able to make xmodelsurfs being loaded in normal block 2020-09-09 11:47:09 +02:00
Jan
18bd0ab524 Remove empty lines in array pointer template 2020-09-08 19:20:19 +02:00
Jan
79848b4631 ZoneCodeGenerator: Make arraypointer work with temp block 2020-09-08 12:01:15 +02:00
Jan
413034f7b2 Let ZoneCodeGenerator print the size of the struct as a comment in load method 2020-09-07 12:51:49 +02:00
Jan
992e9cea30 ZoneLoading: Properly link assets as dependencies instead of only saving the name of the dependency 2020-02-18 13:16:39 +01:00
Jan
55d5746650 ZoneCode: Add Action on loading a GfxImage to set the loadedSize property to 0 to indicate Texture data has not yet been loaded 2020-02-06 21:26:34 +01:00
Jan
4971ec190d ZoneCodeGenerator: Call custom action on loading singlepointer and embedded 2020-01-03 18:12:43 +01:00
Jan
91327c57ce ZoneCodeGenerator: Fix not generating tests for structure sizes and alignments 2020-01-03 17:25:31 +01:00
Jan
bdb0958c16 ZoneCodeGenerator: Add possibility to define custom actions that should be performed after loading a certain Structure 2020-01-03 17:25:10 +01:00
Jan
c995a12001 ZoneCodeGenerator: Fix aligning wrong when custom aligning is set in size calculation 2020-01-03 17:23:57 +01:00
Jan
86790d1486 ZoneCodeGenerator: Fix not respecting when in an operation the second operand should be calculated first but the precedence is the same 2019-12-24 17:19:49 +01:00
Jan
33ec343460 ZoneCodeGenerator: Add possibility to specify a custom array count to signalize how many entries of a static array should be loaded 2019-12-24 12:41:27 +01:00
Jan
971d198f59 ZoneCodeGenerator: Remove unwanted spacing from single pointer template 2019-12-23 23:46:26 +01:00
Jan
62ac2e8aae ZoneCodeGenerator: Replace OperandDynamics static array indices with Evaluations 2019-12-23 23:46:04 +01:00
Jan
1544bbbd18 ZoneCodeGenerator: Add loading of dynamic arrays 2019-12-23 17:05:38 +01:00
Jan
236108e5fb ZoneCodeGenerator: Add ability to split loading of a structure due to a dynamic member 2019-12-22 23:33:00 +01:00
Jan
0db6f90980 ZoneCodeGenerator: Add computations to check for dynamic array sizes and partially loaded structures 2019-12-22 16:16:21 +01:00
Jan
ec8c00a4b9 ZoneCodeGenerator: Make setting a dynamic array size only possible if the targeted member is the last entry of its structure 2019-12-22 16:15:45 +01:00
Jan
57ef79692a ZoneCodeGenerator: Add precompiler support for ifdef so a namespace can be defined in the t6_assets header for compiling in ZoneCommon without display errors 2019-12-21 16:37:57 +01:00
Jan
f3c9e6053f ZoneCodeGenerator: Fix not finalizing DataTypes of typedefs when calculating sizes 2019-12-21 12:04:35 +01:00
Jan
295d9543f7 ZoneCodeGenerator: Take account of temp blocks when loading single pointers 2019-12-18 15:31:59 +01:00
Jan
be17ae6a48 ZoneCodeGenerator: Make pointer counts be able to differ by array index 2019-12-18 15:30:47 +01:00
Jan
a7936c9eaa ZoneCodeGenerator: Fix LoadTempPtr method doing insertpointer and allocating in the wrong order 2019-12-18 15:26:12 +01:00
Jan
92e84e69f9 ZoneCodeGenerator: Remove spaces between array indices 2019-12-18 15:22:16 +01:00
Jan
3e108c98b4 ZoneCodeGenerator: Fix TestReorder not being able to reorder members that came before a specified first entry 2019-12-07 13:39:30 +01:00
Jan
0f349e24c3 ZoneCodeGenerator: Improve toString debug output for memberinformation 2019-12-07 13:38:57 +01:00
Jan
739c2ff61d ZoneCodeGenerator: Fix PointerArrays not respecting that they might need to alloc space in the block 2019-12-07 03:48:49 +01:00
Jan
9253ac14fa ZoneCodeGenerator: Make unions work with conditions and only load one union member at a time consistently 2019-12-06 16:33:05 +01:00
Jan
f4a2639e30 ZoneCodeGenerator: Make members have a block they are being loaded into instead of structures 2019-12-06 16:31:20 +01:00
Jan
8a99a49486 ZoneCodeGenerator: Implement template code for pointer array methods 2019-12-06 16:14:27 +01:00
Jan
5853950888 ZoneCodeGenerator: Fixup templates and structs to be able to generate code for AddonMapEnts 2019-12-05 02:56:35 +01:00
Jan
42e571427b ZoneCodeGenerator: Fix forward declarations not being resolved for typedefs 2019-12-05 02:54:56 +01:00
Jan
ffda895f95 ZoneCodeGenerator: Fix being able to load strings for non const char pointers 2019-12-04 13:48:15 +01:00
Jan
a1546f3080 ZoneCodeGenerator: Fix generating code for arrays of scriptstrings 2019-12-04 13:47:24 +01:00
Jan
c05f04e28a ZoneCodeGenerator: Add expression to apply a certain fastfile block to a structure 2019-12-03 23:40:22 +01:00
Jan
799a999a66 ZoneCodeGenerator: Extend reorder test to be able to specify first member and skip any members before to start reordering from a certain point 2019-12-03 23:39:09 +01:00
Jan
ce9d0d37de ZoneCodeGenerator: Add "." to be recognized as a single token by the lexer 2019-12-03 23:26:56 +01:00
Jan
3276050e45 ZoneCodeGenerator: Remove test comment from template 2019-11-24 02:47:10 +01:00
Jan
b8bd20f693 ZoneCodeGenerator: Add support for scriptstring array pointers 2019-11-24 02:46:40 +01:00
Jan
5d3c13e833 ZoneCodeGenerator: Add computations for single references to be able to correctly handle arrays 2019-11-24 01:58:01 +01:00
Jan
6d1359c3d9 ZoneCodeGenerator: Extend count statement without being able to specify * to more precisely state which count should be set 2019-11-24 01:56:57 +01:00
Jan
032eb997ca ZoneCodeGenerator: Add renderer for DataType to be able to safely display typenames without spaces 2019-11-24 01:55:19 +01:00
Jan
377dc5c99b ZoneCodeGenerator: Set conditions on structs that make the build fail right now 2019-11-21 21:47:56 +01:00
Jan
27f92e6c33 ZoneCodeGenerator: Add Computations class for StructureInformation including IsUsed to check whether a structure has at least 1 usage 2019-11-21 21:46:03 +01:00