Commit Graph

  • 60a689f58c forward declare every struct and union to be able to self-reference Jan 2021-02-20 03:30:00 +01:00
  • a2029da1d5 Implement asset struct tests rendering Jan 2021-02-20 03:14:00 +01:00
  • d4a98b7c52 add basis for code rendering Jan 2021-02-20 02:33:40 +01:00
  • 48afb4d514 Remove unused info fields for custom fastfile align Jan 2021-02-20 00:34:19 +01:00
  • a6f547f1df add post processors for leafs, memberleafs, unions and usages Jan 2021-02-20 00:32:26 +01:00
  • 42851bcaf8 add unit tests for game Jan 2021-02-19 23:23:46 +01:00
  • e09793818f add unit tests for sequence architecture Jan 2021-02-19 23:17:53 +01:00
  • 5a7b184aa2 add placeholder test classes Jan 2021-02-19 23:06:23 +01:00
  • 0d9405cb4a add action sequence tests Jan 2021-02-19 23:06:13 +01:00
  • 0fcb3d388a implement reordering seequence Jan 2021-02-19 21:34:37 +01:00
  • 0cafabc44e implement set block sequence Jan 2021-02-19 20:44:46 +01:00
  • 48e3738c05 implement parsing for reusable and scriptstring and string Jan 2021-02-19 20:23:11 +01:00
  • 873c23fb56 implement name sequence parsing Jan 2021-02-19 19:42:10 +01:00
  • 3ffcac04dd implement count sequence parsing Jan 2021-02-19 19:37:38 +01:00
  • 4a0395c5df parse asset Jan 2021-02-19 17:54:36 +01:00
  • 550eb1e4d3 implement parsing of actions Jan 2021-02-19 17:39:35 +01:00
  • 524e188db1 fix evaluation not resolving correctly due to being unfinished Jan 2021-02-19 17:02:49 +01:00
  • 7c51c26255 Calculate size and alignment in post processor Jan 2021-02-19 16:23:16 +01:00
  • 1264be4274 Parse game and block commands Jan 2021-02-19 10:03:34 +01:00
  • 2747e1f0f2 resolve forward declarations Jan 2021-02-19 01:11:06 +01:00
  • e51babaeb4 parse variables Jan 2021-02-19 00:39:33 +01:00
  • cce9494856 parse typedefs Jan 2021-02-19 00:15:00 +01:00
  • f0753c7e3c handle variable defines in child block close Jan 2021-02-18 22:21:58 +01:00
  • fb55cdb468 parse struct and union sequences Jan 2021-02-18 21:55:13 +01:00
  • 57547854c4 Parse forward declarations Jan 2021-02-18 18:38:00 +01:00
  • 83b7cd77c7 add parsed definitions to repostiory Jan 2021-02-18 18:29:17 +01:00
  • 031d851c43 Parse enum members Jan 2021-02-18 18:10:49 +01:00
  • 5d5fc86923 create enum definitions from headers Jan 2021-02-18 17:15:46 +01:00
  • 3c1599c1a0 Set closing block variable names Jan 2021-02-18 15:59:22 +01:00
  • bb877f87bb Add sequences for commands Jan 2021-02-18 14:41:27 +01:00
  • cef9b08efb Measure how long reading the header file takes Jan 2021-02-14 10:46:29 +01:00
  • b25d64e5e7 Fix define directive not accepting define names with digits in them Jan 2021-02-14 10:33:08 +01:00
  • e685348abd Add blocks to header parsing state that manipulate which sequences are valid Jan 2021-02-14 10:27:47 +01:00
  • 3f08be0564 Add stream proxy for declaring pack values Jan 2021-02-14 10:27:18 +01:00
  • efa39a8ac3 Restructure StreamProxies to use common basis for matching directives Jan 2021-02-14 10:26:18 +01:00
  • e277de4517 Fix lexer calculing hex number length 1 too long Jan 2021-02-14 10:24:23 +01:00
  • e40f1ec0b7 Add blocks and built in types to zcg cpp Jan 2021-02-14 00:53:23 +01:00
  • 216125739c Cache lines in Lexer and show original input when running into an error Jan 2021-02-13 23:16:19 +01:00
  • 40fedc905d Add header sequences for zcg cpp Jan 2021-02-13 18:18:47 +01:00
  • f14357537e add unit tests for not consuming matchers Jan 2021-02-13 16:18:53 +01:00
  • 32f815c378 Make sure captures work with transforms Jan 2021-02-13 16:01:58 +01:00
  • 37232e3176 Matcher and sequence testing stuffs Jan 2021-02-13 14:54:34 +01:00
  • 0f70f9586c Implement sequence matcher and parser magic Jan 2021-02-13 00:12:26 +01:00
  • fe1f391bcc Add keywords to header lexer of zcg cpp Jan 2021-02-12 00:38:38 +01:00
  • 87b7921c73 Add Header Lexer for ZCG cpp Jan 2021-02-12 00:01:41 +01:00
  • 8b8f1d4f2a Add unit tests for IncludingStreamProxy Jan 2021-02-11 13:44:18 +01:00
  • e99e66cec5 Separate command files to a single command file per asset and include them in the main command file Jan 2021-02-11 11:51:36 +01:00
  • 751cb2cd6e Add c preprocessor proxies to command file parser to support defines and include Jan 2021-02-11 11:51:06 +01:00
  • 1822979a8b Add implementation for ZCG cpp defines proxy Jan 2021-02-10 23:46:15 +01:00
  • f9ef7cc35b Add Tests for ZCG cpp Jan 2021-02-10 18:03:50 +01:00
  • 31497d804c Change catch2 version to 2.13.4 Jan 2021-02-10 16:47:16 +01:00
  • c283bda1f4 Add catch2 submodule Jan 2021-02-10 16:45:16 +01:00
  • e93c20faf8 Optimize ParserFileStream making unused temp copies of path opject Jan 2021-02-10 15:36:22 +01:00
  • f91c7f6afc Extract include directive matcher code into separated methods to improve readability Jan 2021-02-10 15:29:54 +01:00
  • d876bc5e25 Add file inclusion for ZCG cpp Jan 2021-02-10 14:21:58 +01:00
  • 21440daf27 Change ZCG cpp to be able to handle multiple tasks Jan 2021-02-08 18:02:27 +01:00
  • 22b95e337a Add PrettyPrinter to ZCG cpp Jan 2021-02-08 18:02:16 +01:00
  • 6c45c99687 Add Repository Implementation for ZCG cpp Jan 2021-02-08 17:06:00 +01:00
  • 3b716965a5 Add information and computations to ZCG cpp Jan 2021-02-08 14:33:57 +01:00
  • 65cf1ef9c2 Add ZCG cpp domain classes Jan 2021-02-07 23:31:45 +01:00
  • 584492d1ef Implement ZCG CPP workflow basis Jan 2021-02-07 17:28:19 +01:00
  • c09c685369 Create project for ZoneCodeGenerator rewrite in c++ Jan 2020-11-01 23:12:28 +01:00
  • 911e43d4c2 add dumping of iw4 vehicle files Jan 2020-10-27 22:35:26 +01:00
  • 3b1e62e398 Add dumping of iw4 weapon files Jan 2020-10-26 01:00:24 +01:00
  • b5141bcd1c Use countof and enum num entries to get the amount of entries in t6 weaponfulldef Jan 2020-10-25 19:51:34 +01:00
  • eb97560e0d Add dumping of T6 physconstraints Jan 2020-10-25 13:14:16 +01:00
  • a925bd505d Fix assets being added to their pools twice when loaded from a fastfile Jan 2020-10-25 11:41:26 +01:00
  • 6cca00b8d8 Add dumping of t6 physpreset, tracer and zbarrier in their respective infostring files Jan 2020-10-24 13:46:37 +02:00
  • 71c291ade2 Fix t6 weapondumper not freeing temporary fulldef Jan 2020-10-24 12:50:54 +02:00
  • 7868916a25 Add dumping of T6 vehicles as vehiclefiles Jan 2020-10-24 02:48:16 +02:00
  • c68debc3da Add T6 playeranimtype from zombie mode for dumping weapons Jan 2020-10-23 16:22:24 +02:00
  • 70da70de65 Dump t6 weapon explosiontag in weaponfile Jan 2020-10-23 15:55:30 +02:00
  • 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 Jan 2020-10-23 15:54:27 +02:00
  • f8e7a10789 Also remove string reference in scriptstring callback from WeaponDumper Jan 2020-10-23 13:35:50 +02:00
  • 2e61f46544 Make InfoStringDumper scriptstring callback return std::string instead of const std::string& since a reference is not needed Jan 2020-10-23 13:26:32 +02:00
  • 99195232bb Add dumping of hideTags and noteTrackSoundMap to weapons for T6 Jan 2020-10-23 12:55:07 +02:00
  • 991bcf6d58 Make sure that assets that use scriptstrings always have an empty scriptstring at position 0 Jan 2020-10-23 12:54:51 +02:00
  • 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 Jan 2020-10-23 12:54:18 +02:00
  • 6cca45fc26 Add scriptstring value callback to weapon loading of t6 Jan 2020-10-23 12:52:44 +02:00
  • 068add0eef Fix script string indices being off by one due to inserting empty script string that is not necessarly in the zone Jan 2020-10-23 12:51:18 +02:00
  • 7acf07a4b4 Use offsetof macro instead of fixed offset values for weaponfields of t6 Jan 2020-10-20 17:30:10 +02:00
  • c86139b0fa Add dumping of t6 weapons Jan 2020-10-20 12:49:20 +02:00
  • d942c5a625 Make AbstractAssetDumper use the XAssetInfo instead of the raw asset pointer to be able to access dependencies and scriptstrings Jan 2020-10-20 12:48:53 +02:00
  • ab217bb1a9 Fix AddonMapEnts dumping code not including necessary headers Jan 2020-10-19 08:29:58 +02:00
  • fc336a1019 Add dumping of iw4 addonmapents Jan 2020-10-18 17:41:52 +02:00
  • 019e772cd2 Add dumping of iw4 loaded sounds Jan 2020-10-18 17:41:14 +02:00
  • ac022ee78a Add dumping of luminance textures from iwis Jan 2020-10-18 17:39:22 +02:00
  • f3afaf3110 move zoneloaderfactories in their respective game namespaces Jan 2020-10-17 16:04:26 +02:00
  • f0c8ffa6be move contentloader classes to their respective game namespaces Jan 2020-10-17 15:55:19 +02:00
  • 464f8231df IWD code style changes Jan 2020-10-17 15:15:17 +02:00
  • 641ee15775 Move iwi writer for version 27 in its iwi27 namespace Jan 2020-10-17 15:00:10 +02:00
  • 395c139681 Use map for IWD entries to speed up finding entries by name Jan 2020-10-17 14:59:36 +02:00
  • a1c965a4c0 Dump iw4 images Jan 2020-10-16 15:57:39 +02:00
  • b8b8e4c267 Implement loading of the remaining iw4 assets which are the map assets Jan 2020-10-11 12:22:20 +02:00
  • 133437d644 Make assets header file an input for zonecode to make sure the code is regenerated when the asset header is changed Jan 2020-10-10 23:25:19 +02:00
  • 4a6c73c4d9 Fix XAnim Trans, Quat2, Quat alignment Jan 2020-10-10 23:00:53 +02:00
  • 6baf3416d4 Fix iw4 xanim to having an unsigned bonecount instead of signed Jan 2020-10-10 13:33:58 +02:00
  • ba585426e9 Fix IW4 XAnimDynamicIndices to being loaded differently in trans, quat, quat2 Jan 2020-10-10 13:33:25 +02:00
  • e0e4fc255a Fix XModel quats and trans counts not being correct in IW4 Jan 2020-10-10 11:51:10 +02:00
  • af0dc46b31 Fix SoundAliasCustom loading for IW4 actually being loaded like const char** Jan 2020-10-10 11:46:43 +02:00