Commit Graph
100 Commits
Author SHA1 Message Date
Jan 1606f62ee7 ZoneCode: Fix DestructibleDef commands to include all strings 2019-11-24 02:45:58 +01:00
Jan 8355ad4b76 ZoneCodeGenerator: Fix const char strings not being registered as strings yet in the commands file 2019-11-24 01:58:27 +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
Jan b79f237014 ZoneCodeGenerator: Make Usages PostProcessor only add usages when a member is used and not ignored 2019-11-21 21:42:07 +01:00
Jan c547520ae8 ZoneCodeGenerator: Remove PostProcessor for asset names and instead add a statement for command files due to different member names for names 2019-11-21 13:35:38 +01:00
Jan 9b9256d2cb ZoneCommon: Fix EmblemSet asset struct 2019-11-21 01:46:58 +01:00
Jan 4f78570023 ZoneCodeGenerator: Add embedded reference handling to templates 2019-11-21 01:46:41 +01:00
Jan b0780ca565 ZoneCodeGenerator: Add a preprocessor extracting a member chain to get the name of the asset in the template 2019-11-21 01:44:04 +01:00
Jan 5f0f73838f ZoneCodeGenerator: Make static operands able to have the value of an enum entry 2019-11-21 01:29:24 +01:00
Jan 31b279c1e6 ZoneCodeGenerator: Fix operationType tokens not being sorted by length so shorter tokens can be matched before longer ones 2019-11-19 12:55:04 +01:00
Jan 8d4e4c0025 ZoneCodeGenerator: Fix | not being a recognized token of the lexer 2019-11-19 12:54:13 +01:00
Jan 2215fef883 ZoneLoading: Dump localized strings as str files 2019-11-19 02:30:27 +01:00
Jan 11168c782f ZoneLoading: Make AssetDumpers get the zone via their args 2019-11-19 02:30:04 +01:00
Jan 7077ba8ce3 Unlinker: Fix not creating a folder for zone file when dumping 2019-11-19 02:27:18 +01:00
Jan 2f108d533c ZoneLoading: Save which language a zone has when loading 2019-11-19 00:43:46 +01:00
Jan 81255695a7 ZoneLoading: Remove KeyValuePair Dumper because keyvaluepairs will be part of the zone file 2019-11-18 21:45:16 +01:00
Jan 97590148ad ZoneLoading: Add dumper for Stringtable assets 2019-11-18 21:44:51 +01:00
Jan 1d609cc2d2 Unlinker: Move zone file into zone_source folder 2019-11-18 21:44:20 +01:00
Jan d220aa8fde ZoneLoading: Make ZoneDumper also generate a game specific zone file 2019-11-18 21:42:02 +01:00
Jan 73489ee455 ZoneLoading: Add dumping for Rawfile based assets 2019-11-16 01:24:09 +01:00
Jan 16a6da932f ZoneCommon: Fix AssetPoolStatic not initializing InfoPool in every case 2019-11-16 01:19:32 +01:00
Jan 0e91dfc339 Unlinker: Fix wrong name for DirectoryCreate method 2019-11-16 01:18:51 +01:00
Jan 508e308bfc Utils: Fix GetDirectory not returning correct result 2019-11-16 01:18:16 +01:00
Jan 0c60c28a36 Utils: Use const pointers when only read access to memory 2019-11-16 01:17:57 +01:00
Jan 2fe3954da8 Unlinker: Add skeleton for Dumping and listing of assets 2019-11-15 18:17:08 +01:00
Jan d176e137a5 Utils: Change FileAPI and PathUtils to make use std::filesystem 2019-11-15 18:16:11 +01:00
Jan 4a616b6c24 Change C++ projects to use C++17 2019-11-15 18:13:38 +01:00
Jan caa01a4864 ZoneCodeGenerator: Add commands for ddlDef and a bit of other stuff to not break from errors 2019-11-15 14:56:11 +01:00
Jan ee2653657e ZoneCodeGenerator: Add template code and separate into different template files for a better overview and less cluttered template code 2019-11-15 14:55:35 +01:00
Jan 3bf0334c59 ZoneCodeGenerator: Add and rename member computations to make more sense 2019-11-15 14:54:29 +01:00
Jan 08d0dda4f6 ZoneCodeGenerator: Make scriptstringprovider available to child classes of asset loader to be able to instantiate other loaders 2019-11-15 14:53:43 +01:00
Jan cd93106c19 ZoneCodeGenerator: Fix fastfile offsets being wrong by 1 due to not respecting that all offsets are moved by 1 2019-11-15 14:52:53 +01:00
Jan 51862d8596 ZoneCodeGenerator: Fix throwing overflow exceptions too early due to wrong limit testing 2019-11-15 14:52:10 +01:00
Jan ec9be6e1fd ZoneCodeGenerator: Fix XStringArrays being loaded twice 2019-11-15 14:51:17 +01:00
Jan 765b0d9e32 ZoneCodeGenerator: Fix XAssetList of T6 being loaded into block memory and therefore causing overflows 2019-11-15 14:50:23 +01:00
Jan b15ce90fbb ZoneCodeGenerator: Add reusable statement for commands to be able to tell the generator that a member can be a fastfile offset and not nessecarly a following pointer 2019-11-15 14:47:45 +01:00
Jan 271c819e97 ZoneLoading: Enable further easy assets like qdb, slug, localize, scriptparsetree 2019-11-14 15:35:19 +01:00
Jan dda9cc0700 ZoneCodeGenerator: Change code templates to support loading of simple assets like rawfile 2019-11-14 14:59:48 +01:00
Jan f80d661c1b ZoneCodeGenerator: Add helper methods to Operation for the template engine to know whether parenthesis are required or not 2019-11-14 14:59:21 +01:00
Jan 8c303d394d ZoneCodeGenerator: Add all used membertypes to a list in context 2019-11-14 14:58:50 +01:00
Jan d7f05b97c9 ZoneCodeGenerator: Add skeleton for all commands for all assets and add commands for rawfile based structs and material/materialtechniqueset 2019-11-14 14:58:18 +01:00
Jan 63722e220d ZoneCodeGenerator: Move computed conditions to sub class for MemberInformation since the template engine does not support computations and there will be a decent amount probably. So they are now moved to a different class to not cludder the main class too much 2019-11-14 14:57:21 +01:00
Jan 60565da607 ZoneCommon: Minor fixes to T6 structures 2019-11-14 14:55:18 +01:00
Jan b59ca3b261 ZoneCodeGenerator: Save whether a structure is anonymous and therefore a name has been generated or not. 2019-11-14 14:54:36 +01:00
Jan f777c049c6 ZoneCodeGenerator: Add postprocessor to inspect whether a structure is a leaf (No complex tasks for loading/writing required, like pointers, strings, scriptstrings) 2019-11-14 14:53:12 +01:00
Jan ef8a040db4 ZoneCodeGenerator: Add toString methods for Domain objects for better readability when debugging 2019-11-14 14:50:53 +01:00
Jan b7ab2a1aa6 ZoneCodeGenerator: Change ContentLoader to use vars for fastfile pointer transfer and change ZoneInputStream API to be able to specify load location to better reflect the way the games do it. 2019-11-14 14:48:40 +01:00
Jan 3839b22f71 ZoneCodeGenerator: Fix invalid string commands for PhysConstraints and DestructibleDef 2019-11-10 22:14:36 +01:00
Jan 73424c9bc1 ZoneCodeGenerator: Add tests for reordering, scriptstring, string 2019-11-10 22:14:01 +01:00
Jan 6ca7f18f9f ZoneCodeGenerator: Add arraysize test to explicitly override the size of an array with a dynamic one 2019-11-10 18:07:28 +01:00
Jan 76cae3a948 ZoneCodeGenerator: Fix LoadArray template to reference array elements correctly 2019-11-10 18:06:08 +01:00
Jan 746dd825bf ZoneCodeGenerator: Add tests for TestCount 2019-11-10 18:04:23 +01:00
Jan f2cc95ee32 ZoneCodeGenerator: Make use of the parsed tokens in TestCount and TestCondition 2019-11-10 18:04:00 +01:00
Jan 2bcb776bbf ZoneCodeGenerator: Add toString methods for operands and operations for debugging purposes 2019-11-08 03:00:43 +01:00
Jan 6c1404116c ZoneCodeGenerator: When parsing Evaluation nest operations so the operator precendence is evaluated as specified 2019-11-08 03:00:20 +01:00
Jan 0a8d5246b2 ZoneCodeGenerator: Add unit tests for Structs, Unions and variables 2019-11-06 18:46:16 +01:00
Jan 82604038c7 ZoneCodeGenerator: Fix recognizing but not doing anything with const tokens in variables 2019-11-06 18:41:21 +01:00
Jan 70a5763d4f ZoneCodeGenerator: Add unit tests for typedef test 2019-11-01 15:14:29 +01:00
Jan f71ae1bcf5 ZoneCodeGenerator: Remove the const keyword from typename but instead save whether a reference is cosnt in the typedeclaration 2019-11-01 01:46:40 +01:00
Jan 3d30915308 ZoneCodeGenerator: Remove align statement. Alignments will be defined via types created by a typedef that have a __declspec(align(X)) part 2019-10-31 15:41:35 +01:00
Jan d1e097bbdf ZoneCodeGenerator: Add tests for CommandFile statements that are getting interpreted 2019-10-30 20:29:16 +01:00
Jan 9b12bd7e41 ZoneCodeGenerator: Fix wrong exception being thrown in tests: Use TestFailedException instead of LoadingException 2019-10-30 15:23:31 +01:00
Jan 825b14bfd4 ZoneCodeGenerator: Fix TestAsset not throwing an exception when info is missing due to wrong if condition 2019-10-30 15:02:25 +01:00
Jan 799d3cbce7 ZoneCodeGenerator: Change block Statement to get the number of fastfileblock from the enum entry instead of manually specifying it 2019-10-30 15:01:45 +01:00
Jan 7ab7447827 ZoneCodeGenerator: Move Test tests to correct folder and namespace corresponding to ZoneCodeGenerator 2019-10-29 12:53:37 +01:00
Jan 7117eb4506 ZoneCodeGenerator: Add test case for MatcherArray with an invalid enum value name 2019-10-29 12:32:15 +01:00
Jan 117ba118af ZoneCodeGenerator: Add tests for Matchers to test TokenOffset and Tag behaviour 2019-10-29 12:21:07 +01:00
Jan d5ecaa186d ZoneCodeGenerator: Fix GroupLoop adding Tags to result even when not successful 2019-10-29 12:20:41 +01:00
Jan 23f82894b7 ZoneCodeGenerator: Make GroupOptional always add Tag due to consistency (Tags get added when matches succeeds) 2019-10-29 12:20:08 +01:00
Jan 7a6df40be5 ZoneCodeGenerator: Fix basematcher adding tag to result even when not matched successfully 2019-10-27 15:38:27 +01:00
Jan 090efd98f0 ZoneCodeGenerator: Add tests for CommandFilePreprocessor 2019-10-27 15:05:17 +01:00
Jan d4da8645b1 Seperate unit tests for commentprocessor and c_header preprocessor 2019-10-27 14:12:05 +01:00
Jan 146c992dd5 Change c# projects to dotnet framework version 4.5 due to dependencies not being available for newer versions 2019-10-27 13:31:50 +01:00
Jan 5245f40307 ZoneCodeGenerator: Create parent class for all tests that use Evaluations 2019-10-27 01:46:43 +02:00
Jan 6ea19c6fe2 ZoneCodeGenerator: Fix PeekTag and NextTag returning null when no tags exist anymore. It should instead return an empty string 2019-10-27 01:46:20 +02:00
Jan 49883bfce3 ZoneCodeGenerator: Add bitwise and, or, xor operations 2019-10-27 01:45:34 +02:00
Jan 86f754bdd7 ZoneCodeGenerator: Fix GroupOptional not registering Tag when being matched 2019-10-27 01:44:52 +02:00
Jan cb04f5986b ZoneCodeGenerator: Fix Literals with multiple tokens only compare the first token 2019-10-26 22:31:03 +02:00
Jan 06585fb776 ZoneCodeGenerator: Add basis for align, strings and improved count tests 2019-10-21 17:00:37 +02:00
Jan 00d5cb40ae Add T6 XModel structs to its command file 2019-10-21 16:59:38 +02:00
Jan 47a5b7abde Add arraysize to pointers of XModel struct to better signalize the size 2019-10-21 16:59:18 +02:00
Jan 786daabe36 Gitlab CI 2019-10-25 18:59:36 +00:00
Jan dc61dd1bce Change Utils and ZoneWriting vpaths in premake scripts to properly represent folder structure 2019-10-25 15:30:23 +02:00
Jan 034de70bbc Add code generation on compiling to premake scripts using custom build commands 2019-10-25 02:13:37 +02:00
Jan d93b4f5fac Comfort changes when building 2019-10-24 14:29:59 +02:00
Jan 979b6b3dbe Add updating of submodules to generation batch file 2019-10-22 12:21:38 +02:00
Jan d213bab3f2 Add premake scripts for c# projects 2019-10-22 11:32:19 +02:00
Jan 0d103e24a5 Add premake scripts for projects 2019-10-22 02:40:06 +02:00
Jan cae05efb7b Crypto: Use CryptoLibrary source file instead of inlining in header 2019-10-22 02:39:45 +02:00
Jan ed160e841b Fix salsa20 header not using extern C when using in c++ 2019-10-22 02:39:16 +02:00
Jan debb8d481e Add premake solution generation for third party projects for now only 2019-10-22 00:13:38 +02:00
Jan fb3b62fa69 Make salsa20 dependency a c project instead of c++ 2019-10-22 00:13:13 +02:00
Jan 5b97aee87f Remove solution files from repository 2019-10-22 00:00:14 +02:00
Jan caa48101c4 Add submodules for dependencies 2019-10-21 20:52:25 +02:00
Jan 1ef5deb731 Remove thirdparty source from repository 2019-10-21 19:05:14 +02:00
Jan 91d76382f3 ZoneCodeGenerator: Add Dumping step for testing purposes 2019-10-21 17:01:48 +02:00