5e2982c509
take popup option names by const reference, not by pointer
...
POPUP_OPTION copies the name it is given -- `this->name = *newName` into a
std::wstring member -- but its constructor took a std::wstring*, so 64 call
sites spelled the argument `&std::wstring( pStr )`. Taking the address of a
temporary is ill-formed, and clang refuses it outright:
error: taking the address of a temporary object of type 'std::wstring'
It happens to work under MSVC because the temporary outlives the call, dying
at the end of the full expression rather than before the copy. Nothing was
corrupt; the code was just spelling "pass me a string" in a way the language
does not allow.
A const reference says what these functions actually want, so the call sites
lose the &, and the two places that allocated a string purely to have an
address to pass -- POPUP_SUB_POPUP_OPTION's default constructor, which carried
a "TODO: possible memmory leak!" saying as much, and a "Dummy generator"
option -- stop leaking one.
Converted: POPUP_OPTION's constructor and setName, POPUP::addOption and
addSubMenuOption, and both POPUP_SUB_POPUP_OPTION constructors. The popupDef
family in popup_definition.* keeps its std::wstring* because it owns what it
is handed and stores the pointer; that is a different design and a different
change. The three calls it makes into the converted API now dereference.
Verification:
grep -rn '&std::wstring' --include=*.cpp --include=*.h . # nothing
ninja -C build parse # no popup_* or SkillMenu sites remain
ninja -C build -k 0 # Release, four applications, green
ninja -C build-debug -k 0 # Debug, four applications, green
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-23 19:29:55 -03:00
Asdow
82aca548f5
Merge branch 'master' into ExtraMercs
2025-09-24 16:14:10 +03:00
BeatAroundTheBuscher and GitHub
ed00830202
Fixes Upper/Lower Casing for include paths ( #487 )
...
* Fixing upper/lower case for includes
types.h, zconf.h and zlib.h were renamed so that global includes like Types.h
are not used.
2025-08-16 22:01:12 -03:00
Asdow
c62d767622
Update to Master
2025-08-08 18:00:31 +03:00
zwwooooo and majcosta
11caa6529c
Fix the issue of garbled UTF-8 text in the szTileSetDisplayName field of the StructureMove.xml file in the game's "Drag" menu.(Method provided by @Learner)
2025-05-10 14:28:14 -03:00
Asdow
bfb724eab9
Use SoldierID
2024-12-01 18:23:52 +02:00
Asdow
c475f9e4e6
Convert MapScreenCharacterSt::usSolID to SoldierID
2024-11-17 01:25:00 +02:00
Asdow
1f0a8f46e8
Import changes from the local SVN working copy
2022-10-10 10:08:44 +03:00
rftr
75d98aecfd
add "Disguise" menu to tactical skill menu (alt + rightclick)
...
add "Fill canteens" action to tactical skill menu, under "various"
adapted from Seven's +AI
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@9350 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2022-03-29 06:02:44 +00:00
Sevenfm
9acaa41e95
Added Autobandage option to Skill Menu.
...
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@9344 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2022-03-25 10:50:18 +00:00
Flugente
6f24fb89fd
Fix: dragging a structure repaired it and removed all decals
...
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@9120 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2021-06-28 14:52:12 +00:00
Flugente
5036772e1b
- Fix: outdated text
...
- Fix: animation loops until new order given
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8871 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2020-07-24 19:25:47 +00:00
Flugente
0c4997f6ec
Improved feature: structures can be dragged. Which ones is defined in a new xml.
...
For more info, see http://thepit.ja-galaxy-forum.com/index.php?t=msg&goto=360672&#msg_360672
Requires GameDir >= r2558
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8870 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2020-07-23 22:11:23 +00:00
Flugente
c5022fa1e5
New feature: turncoats can be created from enemies and ordered to switch sides
...
Requires GameDir >= r2535
For more info, see http://thepit.ja-galaxy-forum.com/index.php?t=msg&goto=360191&#msg_360191
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8811 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2020-05-30 00:13:42 +00:00
Flugente
e55b480996
New feature: Getting and using intel allows for more spy-related roleplay.
...
For more info, see http://thepit.ja-galaxy-forum.com/index.php?t=msg&th=23643&goto=352475&#msg_352475
Requires GameDir >= r2401.
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8522 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2018-02-18 23:17:34 +00:00
Flugente
dd3129ac11
New feature: additional dialogue allows modders to play additional dialogue on man occasions, including reactions to other people speaking
...
For more info, see http://thepit.ja-galaxy-forum.com/index.php?t=tree&goto=351982&#msg_351982 and for a demonstration http://thepit.ja-galaxy-forum.com/index.php?t=tree&goto=351981&#msg_351981
Requires GameDir >= r2400
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8516 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2018-01-10 23:41:52 +00:00
Flugente
6031257dcd
New feature: mercs can drag people and corpses
...
Requires GameDir >= r2386.
For more info, see http://thepit.ja-galaxy-forum.com/index.php?t=msg&th=23508&goto=350989&#msg_350989
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8474 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2017-09-17 22:16:30 +00:00
Flugente
f7423782db
New Feature: gear templates allow us to save and load a merc's equipment, thereby speeding up the equipment process.
...
For more info, see http://thepit.ja-galaxy-forum.com/index.php?t=msg&th=23462&goto=350497&#msg_350497
Requires GameDir >= r2384
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8440 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2017-08-06 21:06:49 +00:00
Flugente
0992a423e7
New feature: mercs with a gun-related trait (New trait system only) can use the 'Focus' skill via the skill menu ([$] in tactical). This skill grants an interrupt modifier bonus in the targeted area, but also a penalty outside of it.
...
For more info, see http://thepit.ja-galaxy-forum.com/index.php?t=msg&th=20659&goto=350400&#msg_350400
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8432 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2017-07-26 13:49:38 +00:00
Flugente
bd59b2fcba
- Fix: UB cannot be compiled
...
- Fixed a few compiler warnings
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8176 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2016-04-24 19:59:25 +00:00
Flugente
c9bcf90966
Expanded feature: Militia Strategic Movement is turned on with ALLOW_MILITIA_STRATEGIC_COMMAND set to TRUE and allows plotting paths for the militia just like for merc squads.
...
GameDir >= r2204 is recommended.
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@7727 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2015-02-08 22:11:16 +00:00
Flugente
cc572651c0
Replaced
...
UINT8 CountAllMilitiaInSector(INT16 sMapX, INT16 sMapY);
with
UINT8 NumNonPlayerTeamMembersInSector( INT16 sSectorX, INT16 sSectorY, UINT8 ubTeam );
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@7708 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2015-01-06 01:22:07 +00:00
Flugente
ba59e9fa5e
skill menu entries can be translated
...
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@7180 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2014-05-01 20:16:19 +00:00
Wanne
27fb0562ee
Alternate new shortcut "ALT + Right Mouse Button" for showing skill (traits) menu in Tactical (by Sevenfm)
...
- Old also working shortcut: "SHIFT + 4"
- moved menu to cursor position instead of soldier's position
- see (youtube): https://www.youtube.com/watch?v=RS7AKv0rWq0
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@6731 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2014-01-06 15:30:18 +00:00
Flugente
fedbbf5df2
Fix: missing popup texts
...
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@6696 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2013-12-19 22:36:09 +00:00
Flugente
80c1b65494
- New Feature: Spotter skill (available to every merc) allows a merc to be spotter for other snipers. Spotter items have to be in hands, spending APs cancels action.
...
- renamed GetObjectNCTHModifier to GetObjectModifier, as function is no longer used exclusively for NCTH
Warning: GameDir >= r1896 is required.
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@6694 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2013-12-19 20:03:48 +00:00
Flugente
26dfbe9b55
Skill Menu target marker did not refresh correctly
...
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@6559 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2013-11-05 18:18:36 +00:00
Flugente
f17829fac9
New feature: radio operator trait allows calling in artillery, requesting reinforcements, scanning for enemies and a few other skills.
...
Also includes mechansim for easy implementation of new skills.
For more info see http://www.bears-pit.com/board/ubbthreads.php/topics/327348.html#Post327348
Requires GameDir >= r1848.
git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@6547 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2013-10-30 23:05:37 +00:00