81081 Commits

Author SHA1 Message Date
Pentarctagon
b586e38e30 Move simple_wml unit test into the actual unit tests. 2022-07-30 00:07:46 -05:00
Pentarctagon
408571cc42 Remove disabled test. 2022-07-30 00:07:46 -05:00
Wedge009
04de5a3771 Resolves #6908 - text rendering on Windows excessively heavy
The work-around is no longer required due to 06b02471 (#6685).

Revert "font: Work around chromatic aberration issue with Windows ClearType"

This reverts commit a56497a561b0f491d686fb396029f98fe94fac72.
2022-07-30 14:25:02 +10:00
Tommy
1070e584cd Fix bad merge. 2022-07-30 15:50:47 +12:00
Celtic Minstrel
0f3d8388df Fix deprecation warning in [kill]
Fixes #6924
2022-07-29 23:37:36 -04:00
Tommy
d0f9c6b8e3 display: Properly display the last frame of a screen_fade 2022-07-30 14:58:46 +12:00
Tommy
2e4117c759 display: Ignore the ending colour when fading to 0 alpha 2022-07-30 14:58:46 +12:00
Tommy
64a5a7c20d Allow items in the test scenario to submerge when the map changes 2022-07-30 14:56:38 +12:00
Tommy
0418df9281 Modify most items in the map editor to submerge if placed on water
Many items where the effect does not make sense (or looks especially
bad) were passed over and will appear on top of water as previously.

This could use more definition by using submerge values other than
0 and 1 (numbers from 0.0 to ~2.5 work as it multiplies the base
unit submerge value) however there is a bug with blitting transparent
textures so it will not appear correct for the submerged part.
2022-07-30 14:56:38 +12:00
Tommy
36d43da21a Add new PLACE_IMAGE_SUBMERGED macro and use for HttT:04_BoP
It does the same thing as PLACE_IMAGE except the created item may
use the same submerge code as units. If not placed on water there
will be no submersion effect. If placed on water it will be submerged
to the same level a unit would be submerged to. In general physical
items placed into water should use this, whereas items placed on top
of water should use PLACE_IMAGE.

The new macro has been applied to the merfolk cages in the Bay of Pearls
scenario in HttT.
2022-07-30 14:56:38 +12:00
Tommy
b4119dce4a Change pickuppable item macros to create submergable items
This fixes #1146.
2022-07-30 14:56:38 +12:00
Tommy
3127178e17 Add a submerge value to items, to control submerge amount
It defaults to 0, which is no submersion.
2022-07-30 14:56:38 +12:00
Tommy
13c3235a68 Submerge items on water, just like units
This is currently applied to all item overlays.
2022-07-30 14:56:38 +12:00
Tahsin Jahin Khalid
6701542f63
[SoF] In S7, adjust wording to avoid awkward reuse of the word "doubt" 2022-07-30 03:23:32 +06:00
Tahsin Jahin Khalid
058949e848
NR: Give Hamel leadership to add consistency to plot 2022-07-30 01:34:09 +06:00
Alexander Lacson
2b2b70d2e1
[UTBS] Remove some fungus from S6 2022-07-30 03:12:33 +08:00
Alexander Lacson
c74f1e49c7 [SoF] In S7, edit a sentence to not use awkward reuse of the word "doubt"
Resolves #6773.
2022-07-30 02:33:05 +08:00
Alexander Lacson
5a38c3ff53
Merge pull request #6914 from wesnoth/UtBS-zochtanol-bat-sounds
[UtBS] Add series of bat screeches in the Zochtanol Isle scenario
2022-07-30 00:54:08 +08:00
Tommy
c6e97b20ae Remove draw() from sdl_handler interface 2022-07-29 19:20:20 +12:00
Tommy
09f80573a1 Add draw_manager::get_frame_length() to get the length of one frame
This will usually be determined by the monitor's refresh rate,
but also is rounded down to provide some leeway. It also limits
according to the draw_delay preference.

The loading screen now uses this to limit event calls.
2022-07-29 16:52:44 +12:00
Tommy
c0990fd258 Clarify basic pump-and-draw loop 2022-07-29 16:52:44 +12:00
Tommy
b8d4f49858 Minor refactor to pass draw regions in display::expose() 2022-07-29 16:52:44 +12:00
Tommy
4ece911e07 Minor floating_label todos 2022-07-29 16:52:44 +12:00
Tommy
9dd7bc886e Replace most GUI1 set_dirty() calls with queue_redraw() 2022-07-29 16:52:44 +12:00
Tommy
26072b7ab4 Automatically invalidate all map tiles when updating time-of-day 2022-07-29 16:52:44 +12:00
Tommy
212b909f19 Fix vanishing editor time schedule window. 2022-07-29 16:52:44 +12:00
Tommy
143023fec8 Properly update map label tooltip positions 2022-07-29 16:52:44 +12:00
Tommy
9cc020812b Some minor tidying 2022-07-29 16:52:13 +12:00
Tommy
ae46b86f67 Remove a bunch of unnecessary draws of GUI1 widgets
They are currently TLDs and draw themselves.
2022-07-29 15:46:57 +12:00
Tommy
422b856eec Remove unused functions
* palette_manager::restore_palette_bg
* display::post_commit, flip, update_display
* widget::hide_override
* widget::bg_restore, bg_unregister, bg_update, bg_clear
2022-07-29 15:45:08 +12:00
Tommy
c33c452ffe Remove some done and unimportant todos 2022-07-29 15:42:30 +12:00
Alexander Lacson
b7c3a1cbb4 [UTBS[ Remove some fungus from S6
Resolves one of the subitems of #6197.
Rationale for this PR is in the Issue thread.
2022-07-28 17:28:49 +08:00
Alexander Lacson
c85f7241fc [UtBS] Add series of bat screeches in the Zochtanol Isle scenario
Resolves #6503.
2022-07-28 16:55:41 +08:00
Pentarctagon
66d5e7bc43
Update workflow since github actions is deprecating using macOS 10.15. 2022-07-27 22:37:29 -05:00
Elvish_Hunter
1be1ba4282 Fixed {IS_HERO} to prevent loss of hero ellipse when leveling up 2022-07-27 16:18:06 +02:00
Pentarctagon
927660ae2c
Populate active_addons_ when all add-ons are enabled.
When loading into different screens prior to actually starting or joining a game, Wesnoth loads the configs of all add-ons, otherwise it wouldn't know to display eras, campaigns, etc for selection. However starting with a4e8ac3, when loading all add-ons the `active_addons_` variable was no longer being populated with any of the the add-ons that were active. This meant that when checking to see if any of the active add-ons had changed it could falsely determine that nothing had changed and therefore could skip the step where it actually deactivated add-ons.

As an example of the current state prior to this fix:
* Player starts Wesnoth and joins the multiplayer lobby -> all add-ons are active, but `active_addons_` is empty.
* Player joins a game with no add-on content required -> Wesnoth checks the add-ons required for the game (none) against the contents of active_addons_ (empty).
* Wesnoth therefore determines that it doesn't need to deactivate any add-ons since it thinks no add-ons are active, when in fact all add-ons are active.
* Out of sync errors then happen if any of the players that join have add-ons installed that can globally affect other unit_types, such as [resistance_defaults], since those add-ons haven't been correctly deactivated.

The fix then is to make sure that game_config_manager::set_enabled_addon_all() correctly populates active_addons_ when it's called.

Fixes #6650
2022-07-26 10:16:13 -05:00
Tommy
e6ae367ecb sdl/utils: Add a note about incorrect trasnsparent blending
The blend function SDL (and for that note all GPU frameworks) uses
is incorrect when compositing transparent source pixels onto a
transparent destination. I added a note with the correct blend
function, for possible future implementation.
2022-07-26 16:40:40 +12:00
Celtic Minstrel
e08451517a Fixup some event deprecations
No functionality change, just documentation
2022-07-26 00:08:00 -04:00
Celtic Minstrel
26f977c9b2 PUA: Fix Lua error when a unit is recruited
Fixes #6897
2022-07-26 00:05:29 -04:00
Celtic Minstrel
53b6f892dc That just... doesn't even do anything... 2022-07-26 00:03:17 -04:00
Celtic Minstrel
b57b1188c0 Schema: Some infinite loop avoidance
- Detect obvious cases of inheritance loops
- Don't try to keep track of tags with a super tag that exist within a conditional tag
- When searching for a tag path, don't append the leaf to the full path
2022-07-26 00:02:59 -04:00
Celtic Minstrel
6c30ef4b20 Document some missing map functions 2022-07-26 00:02:27 -04:00
Celtic Minstrel
c44bd5a3a4 luaW_toconfig should clear its output argument
Every place it's called already passes a default-constructed config, so this won't affect any existing code.

The removed assert is pointless when it'll be cleared by the call, and the two places that called that function also passed a default-constructed config already, so it was doing nothing.
2022-07-26 00:01:14 -04:00
doofus-01
a513a82e9f
1.17 (test scenario) out-of-hex unit animation tests (#6878)
* out-of-hex unit animation tests (id=anim_tester_ooh)
2022-07-24 20:22:47 -07:00
Tommy
136e764b23 Update changelog for confirmed fixed issues 2022-07-25 14:52:30 +12:00
doofus-01
2327f5c81b
1.17 human magi sprite cleanup (#6906)
* fill semitransparent pixels

* sprite palette cleanup
2022-07-24 17:28:14 -07:00
doofus-01
8e6abab897
merfolk sprite palette cleanup (#6904) 2022-07-24 13:03:12 -07:00
Pentarctagon
600c4f8119
Changelog update. 2022-07-24 13:45:18 -05:00
Pentarctagon
9e94f090e6 Use start.sh to enable logging to file for Steam Linux. 2022-07-24 13:43:41 -05:00
Pentarctagon
d1833b5cf7 Adds the --log-to-file command line option.
This sets up writing both the cerr and cout streams to a log file, as well as pulls the log rotation logic out of log_windows.*pp into the general logger.

Note that this is meant for usage on macOS and Linux, not Windows. log_windows.*pp has additional functionality in it, as well as a fair bit related to the --wconsole option.
2022-07-24 09:22:50 -05:00