Commit Graph
88 Commits
Author SHA1 Message Date
phobos2077 b5f3addae5 Fixed OverrideMusicDir not using the correct path string.
Updated the year showed in the credits and file properties.
2017-02-21 01:21:09 +07:00
phobos2077 2db071d0ca Fixed broken call_offset_* functions. 2017-02-21 01:17:31 +07:00
phobos2077 69905b633b Replace deprecated hash_map with std::unordered_map 2017-02-21 00:51:28 +07:00
phobos2077 1aba89e810 Attempt to fix build error in VS2015. 2017-02-21 00:44:07 +07:00
phobos2077 2548e6ea8f Merge branch 'feature/opcode-handling' into develop 2017-02-21 00:31:52 +07:00
phobos2077 0026590058 Refactor OpcodeContext class to make more sense. 2017-02-21 00:26:42 +07:00
phobos2077 c26c2ad8f6 Moved core opcode handlers and opcode list into separate translation units. 2016-11-14 22:43:04 +07:00
phobos2077 ae4193d6f9 Renamed OpcodeHandler to OpcodeContext to avoid confusion with actual handler functions (sf_*). 2016-11-14 21:57:44 +07:00
phobos2077 3fed492a5b Get rid of opHandler global variable by passing instance to every scripting function handler. 2016-11-14 21:50:27 +07:00
phobos2077 b026f8eadd Split opcode handler categories into separate translation units. 2016-11-14 02:07:08 +07:00
phobos2077 adcf3be520 Renamed all opcode handlers for consistent naming. 2016-11-13 20:53:40 +07:00
phobos2077 728e18b344 Fixes #57 2016-11-12 03:35:40 +07:00
phobos2077 65bb7d4de7 Simplify some calls in asm and replaced few addresses with constants. 2016-11-12 03:08:00 +07:00
phobos2077 1472902de4 Removed unnecessary includes. 2016-11-11 02:58:13 +07:00
phobos2077 dd1474c8d3 Moved some code from DllMain2 into separate functions in new cpp file. 2016-11-11 02:54:03 +07:00
phobos2077 830309b544 Merge with master branch, resolved conflicts. 2016-11-11 01:46:16 +07:00
phobos2077 84a60128a2 More code style fixes and some wrappers. 2016-11-11 01:27:38 +07:00
phobos2077 ec34df50ac Missing changes from previous commit. 2016-11-11 00:43:29 +07:00
phobos2077 9edf6e6cc3 Fixed several bugs due to incorrect pointer arithmetic.
Added/updated some structs.
2016-11-11 00:42:39 +07:00
phobos2077 99ddda2848 - Change the way engine variables are used in C++ code. No need to use asterix anymore, as they are declared as references.
- Implemented solution to interact with static engine arrays (like critical tables).
2016-11-10 23:11:18 +07:00
phobos2077 f351faa422 EXPERIMENTAL: declared references to engine variables in addition to pointers. This will allow to work with variables directly without additional operator! See PartyControl.cpp for example (naming is temporary). 2016-11-10 15:13:14 +07:00
phobos2077 a4dee3dbca Use recursion for _WRAP_WATCOM_CALL macros. 2016-11-10 14:28:42 +07:00
phobos2077 726aff686b Fixed code style for last modules. Moved some more structs/wrappers to FalloutEngine. Removed duplicate wrappers in Tiles.cpp. 2016-11-10 02:54:59 +07:00
phobos2077 34b0b7269f Fix some code styles and move Perk and Trait structs into Structs.h 2016-11-10 02:08:18 +07:00
phobos2077 2ac60d66f5 Adopted most functions from Imports h/cpp to Wrappers. 2016-11-10 01:50:13 +07:00
phobos2077 77cc151455 Simplify definition of engine variables using X-Macros pattern. Now only need to add in 2 places instead of 3. 2016-11-10 01:26:34 +07:00
phobos2077 d63392aea2 Refactor Message-related code: removed duplicate functions and structs, moved engine-related stuff to one place, other stuff. 2016-11-09 23:57:58 +07:00
phobos2077 07b5f78318 Fixing code style. 2016-11-09 20:39:14 +07:00
phobos2077 37e159dd21 Fixing code style. 2016-11-09 19:45:38 +07:00
phobos2077 cd1c756e24 Added some VS2015 temp files to gitignore 2016-11-09 14:09:36 +07:00
phobos2077 66ea6a7609 Simplify function wrapper definitions using macros.
Moved all non-wrapper functions to Utils.
Added basic structs for some prototypes.
2016-11-07 22:13:28 +07:00
phobos2077 0efdf7096b Fixed build errors. 2016-11-07 20:49:39 +07:00
phobos2077 80dad0d5d0 Refactor ScriptExtender: replaced some engine function calls with wrappers, fix code style. 2016-11-07 18:55:13 +07:00
phobos2077 10ec39ab60 Refactoring ScriptExtender module. 2016-11-07 03:44:25 +07:00
phobos2077 bd7518ca33 Fixed mistake of using constant pointer variables in ASM blocks (resulted in incorrect references in most cases).
Now each variable has preprocessor constant with prefix VARPTR_ .
2016-11-07 01:34:35 +07:00
phobos2077 8b264db28a Moved all engine variable pointers to separate namespace.
Replaced all usages of variable defines with variable pointers.
2016-11-07 00:09:12 +07:00
phobos2077 c44ca6adc1 Add some FO enums and tidy up existing ones.
Removed accidentally added sublime workspace from repo.
2016-11-06 21:54:28 +07:00
phobos2077 96db48626a Renamed all engine function wrappers to their original names and moved to separate namespace for code clarity. 2016-11-06 21:20:23 +07:00
phobos2077 7705e43ce4 Moved all function offsets to separate namespace. 2016-11-06 20:33:54 +07:00
phobos2077 8da65a92e9 Merge branch '3.8-maintenance' into develop 2016-11-06 19:43:25 +07:00
phobos2077 4ef88959e3 Moved argument validation to opcodeMetaTable. Now old-style opcode and sfall_funcX scripting functions work almost identical and their handlers can be interchanged.
Fixed some bugs with sfall_funcX.
2016-11-06 17:37:25 +07:00
phobos2077 4cc9cb0b83 - Refactor opcode handling.
- Made new-style "sfall_funcX" functions compatible with old-style opcodes, this allows to use one handler function to act as both metarule and normal opcode.
- Added table of opcode meta-data.
2016-11-06 16:52:09 +07:00
phobos2077 6eb9a37a07 Simplify function definitions 2016-11-06 15:39:45 +07:00
phobos2077 363d7a1cc5 Rename types in function references for consistency and clarity. 2016-11-06 00:56:59 +07:00
phobos2077 d9d86e3fe4 Added macros for new scripting functions 2016-11-06 00:32:28 +07:00
phobos2077 6290effd93 Merge branch '3.8-maintenance' into develop 2016-11-06 00:16:28 +07:00
phobos2077 ce1fd719cf Limit maximum string length for arrays to prevent certain strange crashes 2016-11-06 00:15:25 +07:00
phobos2077 1595d75f7c Added docs for new opcodes and scripting functions 2016-11-06 00:14:25 +07:00
phobos2077 f3209d282d Removed fallout2.cpp 2016-11-05 23:35:52 +07:00
phobos2077 a05d440ad6 Get rid of warnings in Movie.cpp 2016-11-05 23:35:13 +07:00
phobos2077 87e28277ad Moved engine Functions, Variables and Wrappers into separate files;
Added most function offsets from Fallout2.exe
2016-11-05 22:19:21 +07:00
phobos2077 935f7ead89 Removed queue9x and vector9x 2016-11-05 20:20:12 +07:00
phobos2077 84042f1736 New folder and project structure #7;
Removed vector9x and queue9x;
Reorganized some includes.
2016-11-05 20:19:34 +07:00
phobos2077 6287eefd7c Merge branch 'feature/issue-55-metarule' into develop 2016-11-05 18:07:30 +07:00
phobos2077 3bc84a0040 Refactor: encapsulated opcode-related functions and variables into classes 2016-11-05 03:34:09 +07:00
phobos2077 18b34767b6 Added new scripting functions to show/hide/redraw main interface and to exec map_update_p_proc for all map objects #51 2016-11-05 01:17:42 +07:00
phobos2077 af4bad36d4 Added validation for null arguments #55;
Added scripting function "spatial_radius";
Added scripting function "critter_inven_obj2" #38.
2016-11-04 17:22:05 +07:00
phobos2077 1a40c40cd3 Added full definitions for metarules and automatic argument validation of with detailed error messages 2016-11-04 03:37:30 +07:00
phobos2077 9367139957 Remove condition for vsnprintf_s - always use long variant 2016-11-03 21:04:46 +07:00
phobos2077 87f45d26db Merge remote-tracking branch 'origin/feature/issue-55-metarule' into feature/issue-55-metarule 2016-11-03 20:57:09 +07:00
phobos2077 bd2f83d6a8 Refactor opcode handling;
Write metarule errors to debug.log (added reusable function);
Fixed some warnings
2016-11-03 20:55:59 +07:00
phobos2077 d29b51d5ea Implemented new way of handling sfall opcodes - now almost without any ASM code
Added bunch of engine function wrappers
2016-11-03 19:30:42 +07:00
phobos2077 502897cb6f Fixed a nasty bug in dlog_f function that only shows when compiling w/o optimization 2016-11-03 04:43:10 +07:00
phobos2077 02beff2b04 Implemented sfall_funcX opcodes 2016-11-02 04:10:50 +07:00
phobos2077 cf82440753 Testing implementation for universal opcode #55 2016-11-01 03:53:07 +07:00
phobos2077 ce72ef51f8 Bug fix 2016-10-24 20:23:43 +07:00
phobos2077 dbc0ebd36f Do not allow to save game on Party-Controlled turn regardless of SaveInCombatFix value 2016-10-24 20:21:52 +07:00
phobos2077 db89f5760c Do not allow to use sneak when controlling party members 2016-10-24 20:16:02 +07:00
phobos2077 e864f1f961 Added DelayedExperience feature for party control 2016-10-24 19:32:05 +07:00
phobos2077 fafc4a317f Bug fixing 2016-10-24 18:38:09 +07:00
phobos2077 5d689c0641 Improve party control by temporarily changing more dude-related properties 2016-10-24 17:59:04 +07:00
phobos2077 4a65a6753f Remove some duplicated variables, use consistent naming 2016-10-24 12:49:12 +07:00
phobos2077 5dec063c1c Add more game global variable pointers to FalloutEngine 2016-10-24 12:36:02 +07:00
phobos2077 354b938d60 Added optional function to show additional sfall credits at the bottom of CREDITS.TXT contents 2016-07-17 23:11:43 +07:00
phobos2077 4678f41b5a Merge remote-tracking branch 'origin/master' into develop 2016-03-26 23:59:41 +07:00
phobos2077 b819423d2a added check for invalid array index in GetArray() 2016-03-25 01:10:56 +07:00
phobos2077 972d978882 #37 fixed sfall_ver_* functions 2016-03-08 22:21:32 +07:00
phobos2077 017b958b69 Updated hook script docs. 2015-10-25 21:43:13 +07:00
phobos2077 0e0ca799f1 Added HOOK_INVENWIELD hook, called when NPC's wielding or unwielding weapons or armor. 2015-10-25 21:40:03 +07:00
phobos2077 5158e5734a Used constants in hook init section. 2015-10-25 20:26:24 +07:00
phobos2077 e7f5b73e4c Used HOOK_* constants for hook script IDs. 2015-10-25 20:12:41 +07:00
phobos2077 c6a4150037 fix code style in Logging.cpp 2015-10-11 18:29:09 +07:00
phobos2077 59e725793e #2: Merged sfall debugging features into "normal" builds, thus removing TRACE preprocessor variable and "Trace" build configurations. Added [Debugging].Enable flag to ddraw.ini instead.
Made all Debugging settings to be consistently loaded from main ddraw.ini only (as it says in comments in ddraw.ini), ignoring command line INI override for that section.
2015-10-11 16:42:21 +07:00
phobos2077 0c08d872cf Added fix for NPC Turns into a container bug. 2015-07-20 01:14:23 +07:00
phobos2077 56aee27141 Added optional bug fixes: NPCDrugAddictionFix, ArmorCorruptsNPCStatsFix. (descriptions are in ddraw.ini)
Added minor fix for "Wt." text on party member barter screen.
2015-07-20 00:56:08 +07:00
phobos2077 c27a0b0b61 Added fixes for inventory drag&drop issues, related to reverse order of items in memory relative to visual order in which items appear on screen. Fixes enabled using [Misc].InventoryDragIssuesFix option. 2015-07-19 01:47:58 +07:00
phobos2077 f10e894201 - Enabled fix for minor exploit when you can gain stats from drugs more than two times using save/load.
- Added option [Misc].DialogOptions9Lines  that allows to use 9 lines of text correctly in dialog reply window.
2015-07-19 00:53:18 +07:00
phobos2077 ac5eebe0d0 added optional fix for "Too Many Items Bug" and renamed some hook functions 2015-07-18 19:38:56 +07:00