Commit Graph
100 Commits
Author SHA1 Message Date
Jan 87c2e58c4b Add implementation for stringtable assetloader iw4 2022-01-02 01:34:42 +01:00
Jan 8e2b9f4a62 Update iw4 asset loader clipmap to use interface without asset_type_t specification 2022-01-02 01:10:57 +01:00
Jan 57f37ec0ea Add IW4 asset loader classes for all asset types that did not have one yet 2022-01-02 01:07:09 +01:00
Jan 98d62039eb If menu optimization is enabled, optimize away unnecessary if statements 2022-01-01 23:12:27 +01:00
Jan 8a3bbf948b Make sure you can specify event handlers more than once to be able to append script data 2022-01-01 20:00:09 +01:00
Jan d900b9cccd Fix not correctly setting type data for text scroll items 2022-01-01 19:40:08 +01:00
Jan 21f68c117e Fix float expression forecolors not setting dynamic forecolor flag 2022-01-01 18:44:04 +01:00
Jan 2df12e101e Disable static value evaluation for visible expression when optimizations are turned off 2022-01-01 16:59:27 +01:00
Jan 64a1e4c176 Fix menu visibility 2022-01-01 16:39:39 +01:00
Jan 4b80ed1e9e Do not parse menus more than once when they have already been parsed 2022-01-01 16:39:28 +01:00
Jan 5d1df29542 Make sure to only dump menu files once 2021-12-31 16:34:42 +01:00
Jan 28011d6b64 Add enums for GfxStateBits for future reference 2021-12-31 11:58:56 +01:00
Jan 657d32e5f6 Properly update menulist asset dependencies 2021-12-31 00:30:58 +01:00
Jan b5475e30f0 Only load menu files once 2021-12-31 00:09:25 +01:00
Jan 1e3946974c Fix menu converter not properly referencing functions 2021-12-30 19:22:17 +01:00
Jan 9136a7de3b Enable of usage of functions that were defined in the same menu file 2021-12-30 19:20:01 +01:00
Jan 3bbe5a4835 Remove outdated assertion for empty scriptstring list on loading 2021-12-30 19:19:42 +01:00
Jan 538c4be839 Fix not supporting nullptr scriptstrings 2021-12-30 16:51:16 +01:00
Jan 7283cc5640 Always set parenthesis for operations inside operations because the game is unable to calculate operations behind each other without parenthesis and does also not know what precedence is 2021-12-29 18:50:34 +01:00
Jan 8e4b2bb057 Add non default forecolor flag if forecolor is not white 2021-12-29 18:08:38 +01:00
Jan f628d33a95 Properly dump and convert visible property for items 2021-12-29 17:04:18 +01:00
Jan 83492b907f Properly dump and render rect property for items 2021-12-29 17:04:03 +01:00
Jan a7aac965da Convert menu item type data 2021-12-29 14:46:53 +01:00
Jan f30bbd65da Initialize default values of menus via class level defaults 2021-12-29 13:50:45 +01:00
Jan bf7e136c54 Convert enable dvar values 2021-12-29 11:50:39 +01:00
Jan 02f8924ada Fix floating expression converting not respecting static values 2021-12-29 11:50:29 +01:00
Jan 95b2e4b851 fix linker not having "no optimization" command line argument available 2021-12-29 11:49:11 +01:00
Jan 0ede5b30d4 Convert float expressions 2021-12-29 10:16:28 +01:00
Jan 96ad97b784 Apply menu elements defaults 2021-12-29 09:02:40 +01:00
Jan d8b1f58b40 Accept any character on menu permissive mode 2021-12-29 02:52:13 +01:00
Jan c87e87eafc Correctly write menu items to zone 2021-12-29 02:51:58 +01:00
Jan a0ff11a857 Create default GfxImage assets 2021-12-29 02:51:33 +01:00
Jan dcff6132b9 Fix menulist dumping functions not skipping nullptrs indices 2021-12-29 02:05:44 +01:00
Jan ae095f8fe5 Add focussound conversion for menus 2021-12-29 02:05:21 +01:00
Jan 3589035ed6 Use expression supporting data strings for menus 2021-12-29 01:25:18 +01:00
Jan 847e4d568c Add static dvars to menu conversion 2021-12-29 01:14:31 +01:00
Jan 5e31be9bac Finalize menu assets after loading all assets 2021-12-29 00:20:54 +01:00
Jan 7188b0946d Make use of custom functions when converting menus 2021-12-28 23:52:42 +01:00
Jan 338de302d9 Add free function to memory manager 2021-12-28 23:51:23 +01:00
Jan ca9ee04738 Dump menu functions with a function like call 2021-12-28 19:49:20 +01:00
Jan 43610b381d Reduce menu reading console output on successful read 2021-12-28 19:40:39 +01:00
Jan d24e847204 Add command line argument for disable menu optimizations on loading 2021-12-28 18:26:41 +01:00
Jan 6d622e6ae1 Create Default materials for iw4 2021-12-28 18:04:51 +01:00
Jan f0edfc5939 Fix IW4x menu script arguments 2021-12-28 18:04:32 +01:00
Jan 30bc876ee4 Add menu iw4x uiscripts 2021-12-28 15:31:56 +01:00
Jan bfe488acad Add missing expressions for openSound and closeSound for menus 2021-12-28 14:17:16 +01:00
Jan 80a0fba606 Parse menu event handler setplayerdata 2021-12-28 14:17:02 +01:00
Jan 15f57fedcd Make menu dumper consider empty tokens require parenthesis 2021-12-28 14:16:22 +01:00
Jan d2262ebaec Fix menu dvarStrList not working because of String chaining 2021-12-28 11:49:42 +01:00
Jan f8c79d27d0 Discord menu function that have already been defined when parsing 2021-12-27 14:16:17 +01:00
Jan 245a2ed642 Add equals operation to simpleexpressionvalue to check if an expression is the same as another one 2021-12-27 14:15:44 +01:00
Jan cc88fb0a5a Log menu parsing errors in stderr 2021-12-27 11:32:47 +01:00
Jan d4154d0cc2 Parse menu function values 2021-12-27 11:28:11 +01:00
Jan 7ea53808b7 Extend menu IT with materials 2021-12-27 11:27:59 +01:00
Jan 9c5c34b0c8 Leave away unnecessary trailing zeros in script numeric values for menus 2021-12-12 16:23:58 +01:00
Jan 4ed8016110 Add eventhandlersets to menu parsing integration tests 2021-12-12 14:03:23 +01:00
Jan a0200a9dbb Test certain properties with menu parsing integration test 2021-12-11 22:55:40 +01:00
Jan 9435c836d3 Include ObjLoading and Parser test projects in gitlab ci pipeline 2021-12-11 21:53:31 +01:00
Jan c683c210f5 Add base for menu parsing integration tests 2021-12-11 21:40:13 +01:00
Jan 899449145c Update default project file generation for VS2022 2021-12-11 12:32:47 +01:00
Jan fe07b3a10e Convert menu expressions 2021-12-08 21:49:33 +01:00
Jan acca33b036 Add conversion for EventHandlerSet 2021-12-07 21:35:56 +01:00
Jan bc12b3dcd0 Menu item conversion base 2021-12-06 19:00:41 +01:00
Jan 988620e23d Menu conversion base 2021-12-05 16:23:25 +01:00
Jan 05de9cab29 Use StringChain in menu parsing whenever applicable 2021-12-04 13:38:51 +01:00
Jan 616c6414ff Add string chains to menu string properties 2021-12-02 22:39:12 +01:00
Jan 6f15fe6010 Make abstract color property accept less than 4 color values and make others zero 2021-12-02 22:20:11 +01:00
Jan 4b7a78100d Make defines stream proxy able to accept comma within parameter values that are in parenthesis 2021-12-02 22:19:48 +01:00
Jan f5ed7880b0 Fix defines proxy not being able to process parameters with underscores 2021-12-01 23:19:20 +01:00
Jan 17e7926442 Accept semicolons in menu dvarStrList and dvarFloatList 2021-12-01 18:22:54 +01:00
Jan a8126e2db3 Make parenthesis when using menu boolean expression optional 2021-12-01 18:16:58 +01:00
Jan 74988af30b Add expression numerics and int to multiple sequences for menu items 2021-11-28 20:20:28 +01:00
Jan 8e7cd0140c Fix comment removing defines proxy not properly removing multiple comments per line 2021-11-28 19:29:50 +01:00
Jan 782b05a60b Fix defines proxy not correctly adding first line to escape line end define 2021-11-28 19:07:30 +01:00
Jan 8bf0126e38 Add hint for permissive mode when parsing fails within event handlerset 2021-11-28 18:03:27 +01:00
Jan b082e471e7 Add permissive mode for menu parsing that accepts unknown script tokens as long as they can be put into the script 2021-11-28 17:55:26 +01:00
Jan e94c48338c Make defines proxy accept parameter values that have parenthesis 2021-11-28 15:52:45 +01:00
Jan e7eb43a955 Correctly parse binary operations that can be interpreted as sign prefixes for numbers 2021-11-28 15:16:43 +01:00
Jan c3a44f60d3 Accept static expressions for menu floating point and int 2021-11-26 21:50:07 +01:00
Jan 9279123ef9 Consume lonely semicolons in items and menus 2021-11-26 21:48:05 +01:00
Jan fb70d9538a Make menu and item rect accept expressions as static values 2021-11-26 17:43:27 +01:00
Jan 2a4768e5b0 Add conditional operator to simple expressions 2021-11-26 17:39:46 +01:00
Jan 5b087e0d31 Add missing itemscope and menuscope sequences 2021-11-25 19:22:14 +01:00
Jan 82cda64a44 Add missing unit tests for elif directive 2021-11-25 18:10:29 +01:00
Jan c65c57ce72 Add support for defineproxy if directive parsing 2021-11-25 18:01:18 +01:00
Jan 887d14df54 Move generic parser unit tests from zonecodegenerator to parsertests 2021-11-25 15:17:30 +01:00
Jan 4b2f001e7c Add more unit tests for simple expressions and fix code 2021-11-25 12:33:30 +01:00
Jan 7680f92ae1 Add base for simple expression unit tests 2021-11-25 01:20:51 +01:00
Jan c5475ce780 Fix unit tests failing for menu expressions 2021-11-25 00:24:36 +01:00
Jan 38f3d7d10e Move Menu Expression to Simple Namespace to have generic configurable expressions 2021-11-24 17:44:14 +01:00
Jan 4f2a8454a6 Move common expression classes to simple parsing setup 2021-11-22 21:47:05 +01:00
Jan 5baa311025 Make defines proxy recognize define values that are escaped over multiple lines 2021-11-22 13:38:33 +01:00
Jan a8f0fbd3bb Use shared ptr for line filenames to be able to still use filenames when original file has been closed 2021-11-22 10:52:43 +01:00
Jan 6b7a71a1bb Make defines proxy accept whitespace 2021-11-22 09:43:03 +01:00
Jan ba3084700e Fix Abstract Parser not being able to display parsing errors from defines proxy on empty line 2021-11-22 09:42:46 +01:00
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