Fix Attachable Launchers Slot Tooltips
fix:
launchables made valid by attached launchers are now again shown as tooltip and can be attached to slot with click
fixes issue #298
- two new options in ja2options.ini
ALTERNATIVE IMP CREATION
- adds new additional backgrounds, exclusive to this option
- which IMP backgrounds will be available at selection is determined by previously made choices for skills, character traits and disablities
- if a tag in background is contradicting to content of skill/character/disability, it won't be shown at selection
- what's considered contradicting is based on what's been found in code for conntent of skill/character/disability
- i.e. HeatIntolerant adds a penalty for desert and tropical sectors, so don't show backgrounds that add bonus for those sectortypes instead
- a new tag <alt_impcreation, has been added to backgrounds for this as well
- if that tag is found, it will be considered as additional IMP background exclusive to the option
REDUCED IMP CREATION
- same as above, but this time only the new additional backgrounds will be avaialable at selection
- same rules for possible restrictions to be shown
ALTERNATIVE IMP CREATION is required for REDUCED IMP CREATION to work
For ja2options.ini, a new category, "Backgrounds" was created.
This will contain the two new options and the general option to enable backgrounds
Accompanying changes in gamedir:
INIEditorJA2Options.xml
ja2options.ini
backgrounds.xml
This check was preventing enemies from retreating into another sector if tactical AI retreat was enabled, leading into AI deadlock every time AI_ACTION_RUNAWAY was the decision.
If "Battle B" music file is found, use it instead of tensor B for the second original battle music. Allows us to replace either the enemy present or battle version of the same track instead of always both when "tensor B" is replaced.
Additional music can be added by placing sound files into Dataa/Music folder following this naming convention
musicmode_runningNumber.fileformat, so for example:
Mainmenu_001.mp3
Mainmenu_002.ogg
Laptop_002.ogg
Tactical_003.wav
*****************************************************************
Different musicmodes are
Mainmenu_ <-- Mainmenu music
Laptop_ <-- Laptop music
Tactical_ <-- Tactical with nothing special going on
Enemy_ <-- Tactical, enemy present
Battle_ <-- Tactical, enemy present and visible
Victory_ <-- Tactical, battle victory
Death_ <-- Tactical, battle defeat
Creepy_ <-- Tactical, creatures present
CreepyBattle_ <-- Tactical, creatures present and visible
Music files can be .mp3, .ogg or .wav formats and 100 songs in each category is supported.
The running numbering starts from 000
*****************************************************************
A few filenames are treated in a special way to facilitate easy replacement of original music.
To replace original music, insert the following named files into this folder
"menumix1" <-- Mainmenu music
"marimbad 2" <-- Laptop music
"nothing A" <-- Tactical with nothing special going on
"nothing B"
"nothing C"
"nothing D"
"tensor A" <-- Tactical, enemy present
"tensor B"
"tensor C"
"triumph"
"death"
"battle A" <-- Tactical, enemy present and visible
"tensor B" <-- This file is also used as battle music
"creepy" <-- Tactical, creatures present
"creature battle" <-- Tactical, creatures present and visible
* User center insertion point for merc arrival
instead of initial arrival gridno that is meant only for the very first helidrop arrival at the start of a game.
* Prevent possible nullptr dereference
There was a bug in a provided save where a merc's group had persistent flag set, even though the assignment was DRILL_MILITIA, which should never have a persistent group. When the code was calling RemoveGroup instead of RemovePlayerFromGroup at this point, it would crash the game with an assertion error in CancelEmptyPersistentGroupMovement() as the group in fact was not empty! Now we're removing the merc first and then checking if the group is empty and if so, attempt to delete it.
* Move main executable files to their own directory
* Adapt the build to the new file structure
... and fix some weird #include's that were relying on the project root
being an include directory.
Call PruneWorldItems() before sectorinfo gets written to the save file.
Resetting the SF_ITEM_TEMP_FILE_EXISTS would not transfer correctly into the save file.