Commit Graph
100 Commits
Author SHA1 Message Date
Jan 0ffa85d557 Fix event handler set not clearing current script correctly 2021-11-20 22:01:21 +01:00
Jan 03b3981312 Add menu key handlers 2021-11-20 22:01:01 +01:00
Jan aae2b9f3d9 Add sequence for listbox columns 2021-11-20 18:40:18 +01:00
Jan ebdfb5b9aa Parse feature specific item properties 2021-11-20 18:22:34 +01:00
Jan dd8a9bf374 Set item type features when setting type 2021-11-20 14:29:24 +01:00
Jan ef1ad18332 Recognize script numeric and int values as strings 2021-11-20 12:01:04 +01:00
Jan ed329e6453 Add item scope sequences for expressions and menueventhandlerset 2021-11-14 20:05:06 +01:00
Jan 9a2e74d083 Add menu unary expression for minus 2021-11-14 20:04:36 +01:00
Jan ebb8eb9e5b Fix SimpleLexer not recognizing negative numbers 2021-11-14 20:04:00 +01:00
Jan 18aa914d70 Fix abstract lexer not currently setting string token pos 2021-11-14 20:03:37 +01:00
Jan 109955b8f2 Add unit tests for most eventhandlerset script sequences 2021-11-14 18:17:13 +01:00
Jan 252dee03ba Fix menu EventHandlerSetSequences if parsing behaviour based on unit tests 2021-11-14 14:04:17 +01:00
Jan 9afe9b2b32 Add unit tests for menu EventHandlerSetScope If Statements 2021-11-14 14:03:56 +01:00
Jan 0033ab2a2b Add base for menu parsing unit tests 2021-11-14 12:46:13 +01:00
Jan 13589fd43c Add menu eventhandlerset sequences for if, elseif and else 2021-11-14 12:46:02 +01:00
Jan f760c517dd Add menu parsing results to zone state 2021-11-14 09:25:35 +01:00
Jan 7eecd58ce8 Load menu files that are referenced via loadmenu 2021-11-13 23:28:22 +01:00
Jan 4552a4fe4a Add asset loading states per zone for the usecase of saving loaded menus and menu functions 2021-11-13 22:18:44 +01:00
Jan b1e5fc70a6 Add Menu EventHandler parser for lerp 2021-11-13 22:18:08 +01:00
Jan 7025fca81c Add simple script parsing for menus 2021-11-07 00:45:39 +01:00
Jan 81203e523e Handle condition stack on event handler closing parenthesis 2021-11-06 19:30:36 +01:00
Jan 54d7f75af6 Close EventHandlerSetBlock again 2021-11-06 18:08:58 +01:00
Jan 5af2e6da61 Add menu scopes to state before closing them 2021-11-06 17:47:18 +01:00
Jan bf19208351 Add base for menu eventhandlerset parsing 2021-11-06 16:28:24 +01:00
Jan b15efd4a4c Move item parsing sequences for different scopes into the same class 2021-11-06 11:03:15 +01:00
Jan 321794a209 Parse Expression Properties for menuDefs 2021-11-04 22:47:49 +01:00
Jan 38551f29de Add vector parameter functions to and/or matchers 2021-11-04 20:31:20 +01:00
Jan 69c08def7f Add expression parsing for menu parser 2021-11-03 23:46:18 +01:00
Jan c5d7d71a51 Add multicharacter tokens to simple lexer 2021-11-03 22:02:04 +01:00
Jan ab7b516918 Move MenuMatcherFactory to Matcher folder 2021-11-03 17:17:23 +01:00
Jan 0f017749c8 Add domain classes for menu expressions 2021-11-02 23:45:04 +01:00
Jan 84a9c5e701 Read multi token properties for items 2021-11-01 21:59:58 +01:00
Jan 4d868d9b6d Load menu item properties with common field types 2021-11-01 17:19:51 +01:00
Jan b0a9406f96 Fix not dumping enableDvar correctly 2021-11-01 17:19:17 +01:00
Jan 99ca6f8efb Fix SimpleLexer not understanding floating point numbers that omit pre dot zero 2021-11-01 15:12:46 +01:00
Jan e19f526d8b Properly handle tabs in pragma directives and other precompiler statements 2021-11-01 14:36:53 +01:00
Jan be4e489118 Add sequences for simple common menu properties 2021-11-01 13:30:12 +01:00
Jan 2aa0eb2a8c Add generic property matchers for menus 2021-11-01 12:28:40 +01:00
Jan 77603a2617 Bundle all property sequences for menus, items and functions together in one file 2021-11-01 10:59:28 +01:00
Jan 68945de51a Add menu matcher for fullscreen property 2021-11-01 10:25:15 +01:00
Jan 6c5825de6d Fix SimpleMatcher for keyword ignore case does not properly ignore case 2021-11-01 10:25:05 +01:00
Jan 5df6fce48a Add MenuMatcherFactory with extensions for Numeric and Text token types 2021-11-01 10:14:24 +01:00
Jan ff823b4722 Move menu parsing classes to menu namespace 2021-11-01 09:43:07 +01:00
Jan 38d60983e8 Add menu sequence for name properties 2021-10-31 18:44:02 +01:00
Jan 68610e49f3 Add sourceFile parameter to MultiInput ParserStream 2021-10-31 17:45:55 +01:00
Jan ca1059b05c Add Menu Parsing Result 2021-10-31 17:33:46 +01:00
Jan e79376eb3e Add menu defines for feature levels 2021-10-31 16:45:49 +01:00
Jan 9816d01ac2 Make DefinesProxy go over a line with defines substitution multiple times until no further substitution has been done 2021-10-31 16:21:04 +01:00
Jan bba55706bf Add basic parsing for menu lists with only loadMenus instructions 2021-10-31 15:37:46 +01:00
Jan 037e13b874 Add IgnoreCase Keyword matcher for simple parser 2021-10-31 15:22:03 +01:00
Jan dcffa3d14d Add ParserMultiInputStream 2021-10-31 14:53:05 +01:00
Jan d5a8d038a6 Add IW5 extra menu fields 2021-10-24 22:27:31 +02:00
Jan cd2cec3546 Correctly handle referencing assets when dumping menulist 2021-10-24 22:04:31 +02:00
Jan 568095f57e IW5 menu dumping initial commit 2021-10-24 22:00:31 +02:00
Jan c1fd5b80a4 Write all menu function definitions on top of every menu list item 2021-10-24 16:22:36 +02:00
Jan 70c31143f4 if the menu list name matches the menu name, embed it directly 2021-10-24 15:38:59 +02:00
Jan a2af7db92b Add missing nullptr check for newsticker iw4 menu dumping 2021-10-24 15:15:05 +02:00
Jan 805c00539b Move IW4 menu dumping logic to separate class and constants to common scope 2021-10-24 14:59:43 +02:00
Jan 4e5e6d05bd Implement function inlining for menu legacy mode 2021-10-24 10:35:57 +02:00
Jan 9184c0265e Add legacy menu dumping unlinker command line argument 2021-10-24 10:16:53 +02:00
Jan 68c29cc22f Write type specific menu data 2021-10-23 19:41:58 +02:00
Jan a89492d636 Skip unnecessary outer parenthesis for if clauses and expressions 2021-10-23 15:35:17 +02:00
Jan 601b683f8a Parse menu scripts with simplelexer to be able to format more pretty 2021-10-23 15:16:52 +02:00
Jan 56c35cb030 Make SimpleLexer be able to be initialized via constructor and not only via inheritence 2021-10-23 15:16:09 +02:00
Jan c8214f769b Dump menu EventHandlerSet for IW4 2021-10-17 11:29:58 +02:00
Jan 96774b96ba Dump menu float expressions 2021-10-16 17:22:38 +02:00
Jan 0f7a8ca1c9 Dump IW4 menu statements 2021-10-15 22:19:17 +02:00
Jan 868bd070d0 Include and exclude asset type dumping configured by command line args 2021-10-11 18:47:53 +02:00
Jan e70cbaa4ce Add operator types 2021-09-01 19:40:47 +02:00
Jan 163ac55fed IW4 dump simple menu file fields 2021-08-27 23:08:05 +02:00
Jan 636034d87c Add menu ItemType enums to all games 2021-08-27 21:46:02 +02:00
Jan 04e9622f03 Update generate scripts 2021-10-10 15:07:40 +02:00
Jan 089ed9fe0d Fix localized string parser not handling value escaping properly 2021-10-01 21:38:36 +02:00
Jan 4d674fac83 Fix zonewriting not applying updated values for embedded scriptstrings 2021-08-26 21:01:12 +02:00
Jan 013e8c3f2a Improve T6 model dumping color selection criteria 2021-08-14 16:11:10 +02:00
Jan d5780a1124 Add Model dumping for T6 2021-08-14 15:39:40 +02:00
Jan 963e6537ca Add T5 model dumping material texture semantic detection to other game's dumpers 2021-08-14 14:08:13 +02:00
Jan ee22face41 Add T5 model dumping 2021-08-14 13:57:32 +02:00
Jan f052a97886 Fix T5 loading and dumping images 2021-08-14 13:57:18 +02:00
Jan 1e1485cedc Add IW3 xmodel dumping 2021-08-14 11:35:41 +02:00
Jan 3d2479698c Make XModelDumper context const if possible 2021-08-14 11:35:31 +02:00
Jan 2028809734 Add IW5 XModel dumping 2021-08-13 23:59:06 +02:00
Jan bd9110fbb3 Check not only texture semantic but also name start and end to ensure to pick colormap for exporting models 2021-08-13 23:58:56 +02:00
Jan a43d8bdd34 Add missing tuple header for std::tie 2021-08-13 22:39:57 +02:00
Jan 76a7ca99c3 Add ObjDumper for general use 2021-08-13 22:34:42 +02:00
Jan 0478a88d15 Export vertex weights for xmodel export 2021-08-13 17:33:13 +02:00
Jan 767daca2ea Add generic XModel Export dumper without bone support yet 2021-08-13 09:40:12 +02:00
Jan 56ebbbcfa8 Fix iw4 obj material file setting ambient map instead of diffuse map for color maps 2021-08-01 02:18:18 +02:00
Jan c1a30c89ac Fix iw4 obj material file using wrong extension 2021-08-01 02:17:49 +02:00
Jan bb0adb0b22 Switch iw4 xmodel axis to be Y Up and -Z Forward 2021-08-01 01:13:01 +02:00
Jan 24145e15e2 Dump IW4 xmodels as obj 2021-08-01 00:30:12 +02:00
Jan 2c96bc5ef8 Fix signed/unsigned issue with IW3 AssetLoaderGfxImage 2021-07-31 12:57:18 +02:00
Jan e324c20641 Make asset dumpers not provide different implementations for dumping to gdt and raw so any dumper can decide itself how many raw files and gdt entries it wants to make use of 2021-07-31 12:34:22 +02:00
Jan e544d043bd Fix rawfile dumping and loading for iw5 2021-07-24 13:51:41 +02:00
Jan 7afc5d42b0 Fix more IW5 command and struct mistakes 2021-07-24 10:54:13 +02:00
Jan 29f72cde7a Add missing IW5 commands 2021-07-23 23:07:15 +02:00
Jan c88987f7dc Remove unnecessary iw4 alignments 2021-07-23 23:06:35 +02:00
Jan df8e909736 Make IW5 rawfile dumper sanitize names before dumping 2021-07-23 19:39:35 +02:00
Jan 16e7a2c471 Fix IW5 xmodel using invHighMipRadius by accident 2021-07-23 19:39:21 +02:00
Jan 88710cb3bf IW5 Fixups 2021-07-23 16:28:59 +02:00