We now use a modified default carryover calculation,
the main advantage is it now uses the normal carryover
message on endlevel, and shows how it is calculated.
previously it was unclear what the trailing number meant,
also the order couldn't be changed in the translation.
Also the player number was shown 2 times in the savefile name,
resulting in names like 'WC1-WCII 1 -Start-Auto-Save.gz' so i
removed it from the scenario name.
* wc: fix#6513 Bezoar artifact
The item now applies the effects directly instead of using [trait]s,
The lua code that added traits in the wc lua files didn't work, but the main reason why i preferred this solution instead of changing the lua files is that it makes it possible to simply remove the artifact via for example [remove_object] (which wouldn't work for artifacts using traits as those are separate modifications)
The code now also adds a dummy ability so that players know that this unit has the benefits of the healthy fearless and undead traits.
It doesn't really make sense that the code sometimes uses the lua variable enemy_power and sometimes
the wml variable. I think the original intent was to make it always use the lua variable but then it was noticed that the lua varialbe is not available in the first scenario
At the suggestion of @stevecotton, I propose a special 'replacement_type' and 'alternative_type' attribute capable of modifying the type of attack used when the conditions are met.
Also make Holy water combine arcane damage with native type of weapon
Like holy water imbued ordinary weapon, it's seem logic what arcane damage dominant what if more efficient what original type(water can't altered pierce or blading of spear or sword)
The code keeps record of the previous hp to prevent unit:transform form changing it. But it reads it before the object was added which prevented the object from increasing the units hp.
a free random training on easier difficulties should only be given in the first scenario. (Otherwise they'll accumulate to 5 free trainings at scenario 5.)
Add the po hints that have been added to 1.16.
Drake Fighters now say "blade" instead of "sword".
Remove the response when a human finds an Ulf, because it didn't sound right as
the first thing a human says to a dwarf. The Ulf’s "a good day to die" could be
read as a Native American battlecry, and "brave words" as "words of an Indian
Brave", leaving the "little big man" to sound like a name.
Without catching the culture reference, it came across as a jibe about the
dwarf's height.
Catching the culture reference, the logic seems reversed. Why would another
dwarf use the generic form, but a human feel comfortable saying that?
Ensures that files either use tabs for indentation or spaces for indentation,
but don't switch between the two within the same file.
This doesn't fix the whitespace, it's a simple check to flag it up
on the assumption that it's better to use an editor or code formatter
to clean up the file.
Elsewhere in the CI we use the luacheck tool - while that can detect
mixing tabs and spaces in a single line's indent, it doesn't check for
inconsistent indentation within a file.
* Add basic achievements functionality.
This reads the mainline achievements.cfg and then all the achievements of each installed add-on.
This is intentionally handled separately from other WML loading so that:
a) All achievements and their status are able to be displayed on the main menu right after Wesnoth starts and regardless of which add-ons are active.
b) Add-ons can add additional achievements to other content, whether UMC or mainline. For example, a modification that adds more achievements for mainline campaigns.
Marking something as achieved is handled by the new [set_achieved] tag and whether an achievement has been completed can be checked via [has_achievement].
There is no attempt to prevent people from manually editing which achievements they've accomplished.
NOTE: These are *not* in any way related to Steam achievements!