Tooltip shouldnt receive any mouse event direct, there is a edge case
when you have a big tooltip and the object that need that tooltip is in
the bottom left, at this moment tooltip is in the same position of the
mouse, current code was returning the tooltip, and the code hide the
tooltip, and find again there is another object that needs the tooltip
and show again. To fix this is just than simple to set a tooltip like
ghost because shouldnt receive any mouse event.
Treat premake like any other dependency and package it separately, this
makes it much easier to bump it in future by making it easier to track
modifications if any.
Moving it to libraries as it is handled the same as other packages. An
argument could be made to have it in build due to it's special nature.
The issue with that approach would be how to handle clean-workspace.sh.
If we split it out we would need a separate clean-premake.sh script and
if we have it cleaned by clean-workspace we through away the download
and already built binary.
Also bump version to 5.0.0-beta2 and backport patch for macOS fix
instead of the Makefile changes. The same fix is needed for gcc-14
(reported upstream), so add a patch injecting unistd.h for Unixes.
Fixes: #6816Fixes: #6632
Refs: #6847
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
- Switched to CMake for configuring and building the doxygen Website.
- Set the minimum requirements to CMake >=3.18.4 and Doxygen >=1.9.1.
- Rewrite the LICENSE.txt and docs README.txt to markdown.
- Add the folder which is used in the README to gitignore.
- Add a custom style to the doxygen website based on the docs webpage.
- Update CI to use the new Doxygen Build process.
Closes#7052
- Generate entity.rng as part of the nightly build, refs #6976.
- Generate docs from a checkout of the nightly build.
- Publish them to docs.wildfiregames.com.
Instead of looking up the location of spirv-reflect for every shader,
this is now being done once and cached for all shaders. This results in
shader compilation being slightly faster.
Instead of compiling SPIR-V shaders twice, once with debug info and once
without, this uses `spirv-opt` to remove the debug info from the SPIR-V
shaders with debug info. This results in notable performance gains, as
stripping the debug info from existing shaders is much faster than
compiling them.
As a result of this change the contents of the non-debug shaders change
once. That's because shaders with debug info contain much more
instructions and therefore more result ids. Stripping the debug
info from shaders results in different result ids being used as when
generating ones without debug info. While that doesn't result in a
difference in the functionality of the shaders, it's a difference in
their binary representation, causing their content hashs and therefore
file names to change. After that one-time change the result ids are
reproducible again.
Commit 4e9e950c8f increased the chicken
size by 1.5x, which made them noticeably larger than foxes and caused
their movement speed to fall out of sync.
This is a correction Langbart proposed on Phabricator after the commit
to moderate the chicken upscaling to 1.3x and adjust their speed for
better synchronization.
Authored-by: @Langbart
Original source: https://code.wildfiregames.com/rP27910#61427
"bind.hpp" was moved in boost-1.39. [1]
Placeholders were moved in boost 1.60. [2]
Since boost 1.73 placeholders defined in global namespace are
deprectared. [3]
Boost 1.76 added support for using std::placeholders with
boost::bind. [4]
This change uses the new, cough, location of the header and
std::placerholders for boost 1.76 plus to silence the deprecation
warning there.
Following commits are from https://github.com/boostorg/bind.git
[1] 8f507b9aeca643ca78e6a712b6d300720627c0ed
[2] db56733e4ed2125944b89e01cf36a9e451dd36f5
[3] 2797f0dc33caaae126a416bf613bd11267ba3353
[4] c85b31e3d200dda2a73cf0027a82c6d8e29066f8
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
The gmake action is long deprecated and subject for removal in the
future. Switch to gmake2.
A major benefit is gmake2 is much better at parallelizing, and so on a
16 core I get a speed up of over a 30%.
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
After 26994b156b just removing the
libraries/source directory will delete files under version control
needed to build the packages.
Use git clean instead to get back to a clean slate.
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
This patch introduces phase emblems on both sides of the player's name
band in the middle panel. The emblems represent the current phase of
the selected player's civilization: I (Village), II (Town), III (City).
This information is also added to the associated tooltip and is
displayed only to mutual allies and observers.
Fixes#6849
See also: https://wildfiregames.com/forum/topic/107851-introduce-badge-to-indicate-the-phase-6849/
Instead of redefining the VkDescriptorType enum for every shader, only
define it once. This avoids unnecessary computation and slightly
increases performance.
Fixed a bug where hotkeys were not being reset properly, ensuring that
all hotkeys are now cleared when expected.
Corrected improper use of forEach with string character access,
replacing it with a valid iteration method over characters.
Removed unnecessary and dead code to improve code cleanliness and
maintainability.
- Players now receive flare chat notifications mentioning the sender's name.
- Clicking the notification moves the camera to the flare's location.
- The feature can be toggled in the game options and is enabled by default.
Fixes#6212
"-rdynamic" is a linker flag. The gcc frontend gracefully ignores it but
not clang. Remove it from CXXFLAGS and only leave it in LDFLAGS.
Fixes: #5582
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
With the migration to gitea the links in the help menu of Atlas need to
be updated to point to the new locations.
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
At least on Linux this resulted in the help menu in Atlas not being
populated. This fixes the issue.
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
b2cdb1e6b4 broke compiling of SPIR-V shaders on Windows, as the output
of `spirv-reflect` contains CRLF as line separators there. This commit
fixes that.
Now It's not hardcoded what is done if a button is pressed. The caller
can decide that.
Previously one had to call this function and then overwrite the on Press
attribute of each button.
Rename "Visibitily" to "Visibility" in setButtonCaptionsAndVisibility.
During the mogration to git e9d1cb6cc7 removed the
`lint-translations.sh` script which was used together with
`check_translations.py` to lint POT- and PO-files. By doing so it
removed a valuable option to find problems in translations.
This commit undos that by merging the functionality of the removed
`lint-translations.sh` and `check_translations.py` into the latter
one. The new logic is easier to maintain, produces less false-positives
and has some unit test coverage.
This drops the program name from the SPIR-V shader file name, which
allows deduplicating shaders belonging to different programs. While that
has no significant impact on compilation performance it reduces the
number of required SPIR-V shaders.
One downside this has it that it's not directly visible from the file
name of a shader anymore to which program it belongs.
The category 'Game Session' didn't have any more space for upcoming new
entries.
Changes:
-Split 'Game Session' into 'Display', 'Chat & Notifications', and
'Gameplay'.
-Move some options out of 'General'.
-Updated the option categories' and some individual options' tooltips.
For the sake of vendored cxxtest. Distributions are advised to use
system cxxtest anyways.
From the package description:
This is a convenience package which ships a symlink to point the
/usr/bin/python interpreter at the current default python3. It may
improve compatibility with other modern systems, whilst breaking some
obsolete or 3rd-party software.
As this is a Debian Buster based CI and the package is only available
from Debian Bullseye forward do the symlinking manually instead.
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
Add option to build-source-libs and premake to uses system provided
cxxtest.
Closes: #5792
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
Update source build.sh to use upstream tarball and drop any custom
patches at the same time.
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>