Commit Graph
89 Commits
Author SHA1 Message Date
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
Jan a1670305c7 ZoneCodeGenerator: Add Next and Peek queries for Tags and Matches 2019-10-04 12:50:00 +02:00
Jan f13eac7436 ZoneCodeGenerator: Remove unused condition matchers in count test 2019-10-02 18:43:35 +02:00
Jan 0ee689532b ZoneCodeGenerator: Fix conditions only being able to have one conditionStatement 2019-10-02 18:42:58 +02:00
Jan ac1d426fb2 ZoneCodeGenerator: Add always to CommandFile condition and allow multiple conditions linked together in a chain 2019-10-02 16:26:16 +02:00
Jan 785e2c9bfb ZoneCodeGenerator: Add Evaluation as basis for specifying conditions and counts 2019-10-02 15:47:24 +02:00
Jan 61eb92588e Utils: Fix FileAPI printf not using the correct print method 2019-10-02 12:49:21 +02:00
Jan 9d1b7325a2 Code Quality: Use enum class instead of enum to make sure enum members can only be accessed when scoped to the enum 2019-10-02 12:48:58 +02:00
Jan 2c611a1368 Update projects to Visual Studio 2019 platform 2019-10-02 12:21:34 +02:00
Jan c4296996a9 ZoneCommon/ZoneLoading: Add additional dependencies and fix output files 2019-09-28 19:06:26 +02:00
Jan aa95bca439 ZoneCommon: Move target folder to tests subdirectory 2019-09-28 13:40:14 +02:00
Jan 3ba1f6d5f9 ZoneCodeGenerator: Move usages postprocessor to be post commandfile instead of post headerfile 2019-09-28 13:14:23 +02:00
Jan 03a6c4020c ZoneCommon: Remove wrong alignment override of 2 on SndBank 2019-09-28 12:31:52 +02:00
Jan c150350fc0 ZoneCodeGenerator/ZoneCommon: Automatically generate unit tests for struct sizes and alignments to make sure they match the expected values for fastfiles 2019-09-28 12:31:19 +02:00
Jan e7e65127e2 ZoneCodeGenerator: Fix CustomAlignment not being applied to structs 2019-09-28 12:41:14 +02:00
Jan 9e516cea1f ZoneCodeGenerator: When parsing open files in non-exclusive reading mode so other instances of ZoneCodeGenerator can run at the same time 2019-09-28 12:02:09 +02:00
Jan 63bbcfe5cb Pick appropriate Loader for every existing T6 asset and not only for RawFile 2019-09-28 00:39:16 +02:00
Jan 6cd003c11b Remove accidental t.txt entry in T6_Load generator output 2019-09-28 00:38:07 +02:00
Jan 4b2479faa0 Remove manually crafted rawfile loading code to make room for the generated code 2019-09-28 00:36:26 +02:00
Jan 3220722d41 Fix certain projects not being actived for compiling in Release|x86 2019-09-27 23:40:47 +02:00
Jan fc75911223 Change tool executable name to have a "64" suffix when compiled for x64 2019-09-27 23:33:45 +02:00
Jan da9b5d8b37 Fix misconfigured project files for x64 configuration 2019-09-27 23:33:07 +02:00
Jan b7387cd704 Generate zone loading code with ZoneCodeGenerator via custom build tool options when compiling 2019-09-27 23:05:59 +02:00
Jan ff62e6d0fb Fix crash on empty files in ZoneCodeGenerator 2019-09-27 23:02:47 +02:00
Jan fcc13d374f Fix ZoneLoad template not inheriting the base class and other minor mistakes 2019-09-27 23:02:27 +02:00
Jan 37b0926a91 Fix templates in ZoneCodeGenerator not being marked as embeded 2019-09-27 22:58:48 +02:00
Jan 49dfff1efe Add verbose parameter to ZoneCodeGenerator instead of always being verbose in debug mode 2019-09-27 22:57:58 +02:00
Jan f9b7fa57c8 Add support for T6 server zones which are unsigned and unencrypted 2019-09-27 15:31:33 +02:00
Jan d662e5dcfa Implement ZoneLoading in ZoneLoading component class 2019-09-26 22:35:59 +02:00
Jan 36cc8d3065 Make use of ArgumentParser and UsageInformation Generator in unlink tool 2019-09-26 21:43:49 +02:00
Jan c76352077a Implement UsageInformation Utility 2019-09-26 21:43:25 +02:00
Jan 75bd49d501 Implement ArgumentParser Utility based on the CSharp version of ZoneCodeGenerator 2019-09-26 21:43:03 +02:00
Jan 8991b6ab15 Add skeleton for ArgumentParser in Utils component 2019-09-24 23:33:08 +02:00
Jan 9f198ce7a2 Add empty Unlinker tool project 2019-09-24 23:32:47 +02:00
Jan eeff08d772 Add PathUtils to Utils component 2019-09-24 23:32:04 +02:00
Jan 42af6df5d8 Rename ZoneLoader and ZoneWriter components to ZoneLoading and ZoneWriting to make a difference between the executive class and the component class 2019-09-24 22:35:11 +02:00
Jan 0d8432d4f7 Import code from previous AssetBuilder version 2019-09-24 10:45:09 +02:00
Jan 5609557516 Initial project setup 2019-09-19 10:53:28 +02:00
Jan 584ff36ca2 Add GPLv3 as license 2019-09-17 22:55:02 +02:00
Jan 30874e34e3 Initial commit 2019-09-17 18:01:03 +00:00