81777 Commits

Author SHA1 Message Date
Pentarctagon
ee2c2fb8a9 Fix labeler actions error. 2023-03-25 09:14:07 -05:00
Nils Kneuper
b98a7774f4 updated French translation 2023-03-25 12:06:15 +01:00
Nils Kneuper
ba031ee873 updated Bulgarian translation 2023-03-25 11:27:46 +01:00
Nils Kneuper
914a90b312 updated British English translation 2023-03-25 11:26:29 +01:00
Gunter Labes
1dd72e709a
Simplify UNIT_BODY_SOULLESS_GRAPHICS macro 2023-03-24 13:29:16 +01:00
gfgtdf
c09fdae990
remove oudated comment 2023-03-23 17:11:42 +01:00
alberic89
3fec9dd423 Update INSTALL.md 2023-03-23 10:57:20 -05:00
Wedge009
2b0fa293b9 DW: Complete the move of Citizen to core. Resolves #7474. 2023-03-23 10:19:33 +11:00
Wedge009
5add73821b
DiD: Remove invalid syntax (#7470)
* DiD: Remove invalid syntax.
2023-03-22 15:31:29 -07:00
Pentarctagon
c6a6f8aa57 Unused include and variable. 2023-03-22 10:55:52 -05:00
Wedge009
b9acc00597 Replace deleted get_image() with get_surface().
Compilation broken since 9bb3408ab0fedb9b48baa65205da91fccdfc56de.
2023-03-22 18:54:40 +11:00
nemaara
60a5d3a9b7 DiD: add new secret scenario 2023-03-21 22:20:43 -07:00
Charles Dang
fa938c9fb1 Fix a lifetime issue with hotkey records (fixes #7183)
wmi_manager::set_item would replace a wml_menu_item object with a new one whose state was copied
from the old, but the old one was destroyed *after* the new one was constructed. That means when
the new object (and hence the new record) was created, it would not update the entry in the master
hotkey command info list, since the old still existed. The old object (and its record) would then
be destroyed, performing cleanup in the process, and resulting in the bug.

A new wml_menu_item object constructed from the state of the old one now takes control of its
record as well, so the new object has sole control over its lifetime and the hotkey info can be
appropriately updated.
2023-03-22 01:04:44 -04:00
Charles Dang
9bb3408ab0 Removed image::get_image wrapper 2023-03-22 01:04:30 -04:00
Pentarctagon
51b65dac85 Include not needed anymore. 2023-03-21 21:38:51 -05:00
Elvish_Hunter
f0413a1172 wesnoth_addon_manager: exit gracefully when removing a non-existing add-on 2023-03-21 23:21:09 +01:00
newfrenchy83
81f72539d9 update codeblock projectfiles 2023-03-21 14:15:38 -05:00
gfgtdf
43cddee180 Fix executing whiteboard actions during events #7465 2023-03-21 06:04:07 +01:00
gfgtdf
d5ef9feefb Fix planning mode on attacks
The code checked for `unit.attacks_left() >= attack_count_` even
though _currently_ it seems perfectly legal to invoke an attack
with less attacks left (see the discussion on #7406), although this
will probably be changed soon.

If this is changed in the future, before changing that assert
remember to also change the check in attack::check_validity.

Also it didn't reset the attacks in attack::remove_temp_modifier
properly.
2023-03-21 06:03:37 +01:00
gfgtdf
630464911c fix crash in whiteboard #3768 2023-03-21 04:31:11 +01:00
Toranks
2de929e026
Typo hander > handler (#7464) 2023-03-20 19:36:52 -05:00
Tahsin Jahin Khalid
3f2b588b98
Achievements: add 18 achievement frames for Icons
For mainline/MP/UMC
2023-03-21 00:59:48 +08:00
Luis Miguel Iglesias Sánchez
9c706ae656
Revert WML workarounds on mainline replay OOS issues (#7463)
* Revert changes in 91983c8

* Revert changes in 6551584

* Revert "Solve OOS by moving code to synced event"

This reverts commit 040550f0a6e3127505796ea120653b299c424cad.
2023-03-20 17:20:58 +01:00
Tahsin Jahin Khalid
9113be7348 achievement icons: resize to (72,72) 2023-03-20 22:50:35 +08:00
gfgtdf
8065f63b69
Update changelog.md 2023-03-20 01:29:52 +01:00
gfgtdf
576a9ab9ab Fix error message 2023-03-20 01:23:35 +01:00
gfgtdf
d98a32d35c
Update changelog.md 2023-03-20 01:15:28 +01:00
gfgtdf
790948f623 Use the MP "Back To .." Feature in SP too #7460
Previously the behavior was the following:
- When the  "Back to Turn" button was pressed in SP, The gamestate is
  reset to the gamestate of that turn.

- When the "Back to Turn" button is pressed in MP, The gamestate is
  reset to the gamestate of that turn and a replay is started
  replaying the game until the current gamestate (using the usual
  replay UI). This is in particular useful to replay the enemies
  moves (for example in case you were afk)

Using the MP version also in SP will not only also give
the campaign player a quick way to review the enemies turn,
but also allow the player to restart the gamestate from an
arbitiary point (instead of just the begin of the turn) by
pressing the "Continue from here" button in the the replay

Furthermore, the Autosaves can still be reloaded normally via
the usual Load game menu.

This might need some finetuning based on feedback, in particular:
- Should this be optional, via a game preference?
- Should the 'replay' start in a paused state instead of replaying
  right away like it does currently?
- Should we allows addons to disable this feature (in case that
  they know that their addon breaks replays)?
- Or when a huge majority of players dislikes this we can also of
  course easily revert it.
2023-03-20 01:10:01 +01:00
gfgtdf
d0176732a4 Fix redo error after reloading #7253
The code was checking for [commands] instead of [command]
when loading savefiles.
2023-03-20 01:06:40 +01:00
gfgtdf
e7e763c27a Do not assert on redo error
Previously It used the default error handler, which asserts (which
makes sense since it executes actions right after they were evaluated
by the ui). For executing commands from the network a custom error
handler is used aswell.

We fix this by giving a custom error handler which shows an error
message instead.
2023-03-20 00:58:01 +01:00
gfgtdf
d086379b27
Update changelog.md 2023-03-19 21:41:03 +01:00
gfgtdf
eae4ffab61 Make 'Back to..' Feature work during ai turns
I am not completely sure whether it is safe to use 'Back to..' during
events/actions. The exception would mess up the current gamestate
but the current gamestate is replaced anyways.
2023-03-19 21:18:05 +01:00
gfgtdf
874dda7015 Make the MP "Back to ..." featute more robust
We now check that the loaded file is in fact  a previous gamestate from
the same branch, we do that by checking the [replay] data,  We
_could_ in theory additionally check the [replay_start] but i think this
is pretty safe.
2023-03-19 21:18:05 +01:00
gfgtdf
741c261ccf Remove skip_next_turn
It was agreed on that [end_turn] during turn end events ending the
next sides turn is counterintuitive and undocumented behaviour.
Note that it is always possible to end the next sides turn by
spawning an event:
```
inside a turn end event...
...
[event]
	name = "side_turn"
	[end_turn]
	[/end_turn]
[/event]
```
2023-03-19 21:18:05 +01:00
gfgtdf
e8d12ed728 Do not show carryover dialog on replays and observers 2023-03-19 21:18:05 +01:00
gfgtdf
761fcdf97c simplify init_side_end
the commit that added that gui_->invalidate_all() call
is very old and said its related to replays only
2023-03-19 21:18:05 +01:00
gfgtdf
ee46a6e671 fix missing check for network_processing_stopped_ 2023-03-19 21:18:05 +01:00
gfgtdf
e52a1d6aa7 small replaycontroller refactor 2023-03-19 21:18:05 +01:00
gfgtdf
b3dd7e6ac2 enable linger mode in replays 2023-03-19 21:18:05 +01:00
gfgtdf
a8c5d15f43 Remove explicit enable button calls
We improve can_execute_command for the entturn button, and replace
button->enable calls with set_button_state/queue_rerender calls
This is more robust in case someone else wants to update buttons.

We remove a call to button->enable in playturn.cpp which probably had
no effect since the linger mode for the clients automaticially ends
there already.

We create a new function to check set to gui to linger mode or not,
in particular is removes the linger overlay in init_scenario, in case
that we want to reset the replay from linger mode.
2023-03-19 21:18:05 +01:00
gfgtdf
045473dff5 Remove unused save_blocker class
While the idea was good, the implementation was a bit confusing, in partuclar its unclear why it used SDL semaphones instead of a simple int counter (like
command_disabler). (Also a std::function over a class method function pointer would be better). Also it supported the  delayed
save in certain cases. For a new implementation it'd probably be easier just to checek whether a save was requested at certain safe points.
2023-03-19 21:18:05 +01:00
gfgtdf
2e6d498318 Remove useless call to save_blocker
do_init_side() already uses command_disabler (as part of set_scontext_synced)
So save_blocker has no effect since the savegame button is disabled.
2023-03-19 21:18:05 +01:00
gfgtdf
89ae0419d1 Remove display::parse_team_overlays
This function made no sense since it invalidated the tiles with
overlays depending on which side is currently playing, but the
overlays don't depend on the currently activive side, but rather
on which side is currently viewing the game.
2023-03-19 21:18:05 +01:00
gfgtdf
26c81d315a add todo comment 2023-03-19 21:18:05 +01:00
gfgtdf
a34ebd0b5e add comment 2023-03-19 21:18:05 +01:00
gfgtdf
3372fbfae2 Remove unused textbox_info variable 2023-03-19 21:18:05 +01:00
gfgtdf
2cce1ad790 cleanup some includes 2023-03-19 21:18:05 +01:00
gfgtdf
ad27b58543 show carryover message for observers
carryover_show_gold not only shows the carryover message but also
calculates the carryover amount and stores it in the team object.
So omitting this call will result in wrong carryover data when the
observer saves the game in linger mode.
Furthermore carryover_show_gold seems to support generating messages
to observers alredy.
2023-03-19 21:18:05 +01:00
gfgtdf
2845e864f4 refactor playsingle_controller game loop.
The main intention is to move the linger mode into the
loop so that the replay can play until linger mode
is reached. In particular to allow replays to show
victory events aswell.
2023-03-19 21:18:05 +01:00
gfgtdf
e3d1e2b4f5 remove some level_result_defines options
they were only used in test_result which is already a string, there
is no need to have an additional not_set/invalid value
2023-03-19 21:18:05 +01:00