Commit Graph

2197 Commits

Author SHA1 Message Date
d0d7765d2d Fix monsters above 255 being unsummonable
Thanks to @fosnola for the fix.
2023-01-18 09:59:07 -05:00
3c246c7df5 Add some braces 2023-01-18 09:59:04 -05:00
924692c1dd Fix possible buffer overreach when selecting a shop item
Thanks to @fosnola for the fix.
2023-01-18 09:58:37 -05:00
20102c7f52 vector2d: few more tests 2023-01-18 09:53:19 -05:00
2492610ec7 Reading and writing saved games now uses the new tagfile system.
This should avoid any format inconsistencies, like missing newlines and the like.
Although a basic save and load works, there may still be some issues with the format.
This probably renders older saved games incompatible.
The format is mostly the same, but there are a few small changes
in the name of making the format more uniform.
2023-01-18 00:54:39 -05:00
99bd1678e4 tagfile: Support mapped containers, similar to a sparse array
Note: This now treats vector<pair> as a mapped container as well – an ordered multimap, so to speak
2023-01-18 00:54:39 -05:00
50d611e319 tagfile: Support vector2d, both sparse and dense 2023-01-18 00:54:39 -05:00
9aa0262247 vector2d: row/col assignment (+test), default value in resize 2023-01-18 00:54:39 -05:00
50bd1e9c6e tagfile: A few more tests; support sparse arrays 2023-01-18 00:54:39 -05:00
d3ed054bbb tagfile: Support hexadecimal integer tags 2023-01-18 00:54:39 -05:00
e5b347c70f tagfile: A few more tests; fix tuple handling 2023-01-18 00:54:39 -05:00
40db245011 maybe_quote_string now quotes the empty string 2023-01-18 00:54:39 -05:00
657df9ea8d Rework the tagfile library
After further experimentation, the previous template-heavy design
turned out to cause issues with compilation.

Thus, it has now been replaced with a simpler, dumber implementation
that pushes more of the logic into the caller.
2023-01-18 00:54:39 -05:00
1ee72df836 Add the new files to the Xcode 4 project 2023-01-18 00:54:39 -05:00
492e4b0cf9 Add 10 scenario timers to editor in a stack 2023-01-14 01:26:49 -05:00
91140aa6d4 cDialog handle text fields in containers 2023-01-14 01:26:49 -05:00
1996985b50 include cstddef to compile on linux (#310) 2023-01-14 01:17:18 -05:00
6729983892 Fix glowing crystal soul artifacts and add a leather helm graphic
Contributed by @clort81 and closes #262

[ci skip]
2023-01-14 00:11:58 -05:00
248ac94bf9 Fix arrow keys
Still part of #291
2023-01-13 19:59:30 -05:00
e0418c685a Track modifier state in the main loops
Really fixes #291
2023-01-13 19:55:24 -05:00
6e238881ae Fix a vector2d::resize overflow bug
Found by running asan
Should fix the CI failure...?
2023-01-13 19:37:16 -05:00
7055d5eba4 Don't crash when canceling scenario import pick (#308) 2023-01-13 19:23:28 -05:00
2d6a5cae5e Use events instead of isKeyPressed for the interrupt key
Also related to #291
2023-01-12 21:52:02 -05:00
3bdcf02be0 Handle modifier keys differently to avoid Apple flagging us as wishing to monitor input from other applications
Fixes #291
2023-01-12 21:43:45 -05:00
35a890a577 Add a partial unit test for vector2d and fix several issues with the resize function 2023-01-12 21:26:08 -05:00
8872f1aa25 Stop storing players as bare pointers - use unique_ptr instead
Should fix some potential memory leaks that were caught by static analysis
2023-01-12 21:26:08 -05:00
1a82f8ff8b Fix a memory leak found by static analysis 2023-01-12 20:24:39 -05:00
e212e99794 Fix buffer overrun if apply/removeShift is called with an unknown character 2023-01-12 20:24:35 -05:00
e4b1162d46 Make sure lpstrFile is empty on cancel (#305) 2023-01-10 21:42:38 -05:00
dbe5ba0dd6 Linux handle zenity non-zero code. Close #301 2023-01-08 22:22:26 -05:00
36cd2997d3 Update PC editor documentation
It still referenced shareware and the item menus.

[ci skip]
2023-01-08 18:09:20 -05:00
e8aa19c633 Update README.md
I think that description must have been an error in editing the readme before...

[ci skip]
2023-01-08 17:34:58 -05:00
ac5cbe3a60 Test case for dialog XMLs in-engine 2023-01-08 17:25:33 -05:00
6471604fd9 A few readme revisions 2023-01-07 16:13:30 -05:00
ac239d3418 build.sh no longer exists 2023-01-07 16:08:47 -05:00
fa0db8b16b Update notes about compatibility 2023-01-07 15:49:09 -05:00
6319d46d67 Fix compilation on Xcode 4
- Add new files to project
- Xcode 4 doesn't support inheriting constructors
2023-01-07 14:27:02 -05:00
71f9dd0043 TagFile refinements
- Use a custom prefix system for tagfiles - f for a file, p for a page, t for a tag
- Add a hex tag that reads and writes a number as hex
- Ensure booleans are always read and written as alpha
2023-01-07 13:55:04 -05:00
ALONSO Laurent
26db220f15 special and legacy: check type of monster values in nuke_monsters (to avoid
accidentally all monsters, ...)
2023-01-07 12:37:45 -05:00
729ccfe765 Fix missing include 2023-01-07 12:01:10 -05:00
e3d6a4748e Dialog XML definitions are now loaded thru the resource manager 2023-01-07 11:59:42 -05:00
c3dd886783 Fix LED text colour and correct width attribute validation 2023-01-07 01:23:07 -05:00
c4d7fc6b99 Make dialogs iterable 2023-01-07 01:21:42 -05:00
0714004f1c Fix a few compiler warnings 2023-01-06 22:02:05 -05:00
9a4056019b Xcode 12: Silence warning by updating deployment target 2023-01-06 21:00:44 -05:00
ALONSO Laurent
6b32aa157e boe.specials.cpp[change terrain]: avoid redrawing the minimap n*k times... 2023-01-06 20:49:08 -05:00
Morel Berenger
ce667c596a Allow to only select one file in open... 2023-01-06 20:49:08 -05:00
Morel Berenger
8809af121f Minor fixes to special node edit dialog. 2023-01-06 20:49:08 -05:00
Morel Berenger
4cd2bfd8d1 render_image.cpp: improve gl error messages by adding filename 2023-01-06 20:49:08 -05:00
ALONSO Laurent
ca74661801 button.cpp: try to make tiny buttons work... 2023-01-06 20:49:08 -05:00