Pavel Penev
5eff72803d
Added missing deprecation notices to Lua docs
2023-10-16 19:54:20 +02:00
abcdefg30
dde39344a0
Add NotBefore<SpawnStartingUnitsInfo> to LuaScriptInfo
...
(cherry picked from commit 9f96d0c772 )
2023-10-06 15:04:53 +03:00
Pavel Penev
386f691c2e
Added a new helper method - a temporary fix
...
(cherry picked from commit d83e579dfe )
2023-09-27 11:09:34 +03:00
Gustas
24623eaa65
Close the ingame menu upon voting
...
(cherry picked from commit d5c940ba4c )
2023-09-27 10:47:20 +03:00
Gustas
dc89341634
Add vote kick
...
(cherry picked from commit 144e716cdf )
2023-09-27 10:47:17 +03:00
JovialFeline
8961b4986f
Disable flak truck in Soviet-13, others
2023-09-22 12:26:50 +03:00
Gustas
cbf4207d22
Add backup ExplicitSequenceFilenames to update rules
...
(cherry picked from commit 29eaab59be )
2023-09-18 11:07:24 +03:00
penev92
c27bf85631
Bumped Eluant NuGet version
...
The new version fixes the windows 32-bit build not working.
2023-09-16 20:08:05 +02:00
dnqbob
809cb16075
Fix Target.Invalid comparion bug in AutoTarget
2023-09-11 18:57:14 +03:00
Matthias Mailänder
f4c186b7a6
This is not just about difficulty.
2023-08-28 23:34:58 +03:00
Matthias Mailänder
c3cf94b67a
The description is optional so don't crash when it is null.
2023-08-28 23:34:58 +03:00
JovialFeline
8b3e7bec2a
Add text fix, polish to Controlled Burn
2023-08-28 19:32:56 +02:00
abcdefg30
64ec6eef0a
Fix Folder.GetStream using FileNotFoundExceptions to detect if a file exists
2023-08-20 23:01:34 +03:00
dnqbob
4dec1fe430
Autocarryall put down unit if destination is cancelled when picking up
2023-08-19 11:56:35 +03:00
Matthias Mailänder
db3145ed5e
Evaluate read only dictionaries.
2023-08-06 17:13:12 +03:00
Gustas
e49135bb09
Fix gen1 map importer crashing on invalid tiles
2023-08-06 13:56:17 +02:00
Gustas
9d79e52989
Fix out of bounds cells not being randomised
2023-08-06 13:56:10 +02:00
Smittytron
0ac9d96ab8
Add Soviet13b
2023-08-06 14:41:15 +03:00
Gustas
5ce559c853
Fix low power notification never triggering
2023-08-05 19:05:52 +02:00
Gustas
a4821b51a2
Grant condition to units closest to the crate
2023-08-05 13:35:55 +02:00
Gustas
cfc026a1ac
Fix aircraft jittering
2023-08-05 13:29:41 +02:00
Gustas
58ab3eb153
Fix misaligned TD combat observer tab
2023-08-05 13:23:10 +02:00
Gustas
47b6542b1d
Exit game save with escape
2023-08-03 15:56:59 +02:00
Gustas
3c7addcb80
Trigger a button sound when saving a game with enter
2023-08-03 15:56:48 +02:00
Gustas
37f1b9efbf
Fix lua sanity check crashing on dedicated servers
2023-08-03 15:34:43 +02:00
abcdefg30
82acdbc32a
Fix RA assets installation from the Steam C&C:R version
2023-08-01 22:29:52 +03:00
Gustas
462a3ef3c0
Make yaml node resolving optional
2023-07-30 20:39:21 +02:00
Gustas
d4e6815f64
Fix AutoTarget ignoring frozen actor bot targeting hack
...
Mirrors check of the function Recalculate which is found it TargetExtensions class
2023-07-30 20:32:18 +02:00
Gustas
723ffdf33d
Revert Hunt to move within 2 cells of the target
...
Otherwise infantry get stuck within weapon range but outside of vision range
2023-07-30 20:26:41 +02:00
Gustas
8376b09129
Normalise depth charges
2023-07-29 14:22:30 -05:00
Gustas
fa9ce3e2ac
Normalise TD anti-air values
2023-07-29 14:22:30 -05:00
Gustas
605681b252
Normalise RA anti-air values
2023-07-29 14:22:30 -05:00
dnqbob
a3c5945f2a
Set BackwardDuration to -1 means ignore the time and set MaxBackwardCells to -1 means ignore the distance.
2023-07-29 18:01:40 +03:00
dnqbob
d7ef22d64f
Add MaxBackwardCells for moving backward control
2023-07-29 18:01:40 +03:00
michaeldgg2
d907192be0
Added GrantConditionOnMinelaying trait
...
Uses INotifyMineLaying callbacks
2023-07-28 12:55:06 +03:00
michaeldgg2
74f8db0578
LayMines: render minefield cells only if the planned minefield has more than 1 cell
2023-07-28 12:55:06 +03:00
Smittytron
9dca6ef1c3
Add Soviet13a
2023-07-27 22:09:30 +03:00
Gustas
c093e7c90b
Fix hunt incorrectly pathing to uncrushable targets
2023-07-27 16:14:29 +03:00
michaeldgg2
66cf912da0
LayMines: fixed occasional incorrect mine position when using BeginMinefield order
...
When laying mine with PreLayDelay > 0, end activity's tick immediately. That means don't try to immediately move to next cell.
This change unifies the behavior with scenario when a mine is laid without any PreLayDelay.
2023-07-26 22:05:42 +03:00
Gustas
42baa0c42f
Rename update rule folder to 20230225
2023-07-26 20:00:54 +02:00
Gustas
305ba1c567
Add missing rule to UpdatePath
2023-07-26 20:00:54 +02:00
Gustas
a84b7591f6
Fix invalid color adjuster not considering saturation and V as mutable
2023-07-26 20:00:54 +02:00
Gustas
9d8f0634b1
Revert color validator
2023-07-26 20:00:54 +02:00
Gustas
4cd4e1f8ea
Move PlayerExperience from Infiltrates to InfiltrateFor
2023-07-25 21:15:14 +02:00
Gustas
3207d01cf2
Consider AutoTarget ScanRadius when attack moving
2023-07-25 19:48:57 +02:00
Gustas
9fc0f79703
Add a description for AttackBomber
2023-07-25 13:11:17 +02:00
michaeldgg2
1a2d43fc99
WorldRenderer: use string.IsNullOrEmpty for check in Palette method
...
Unified usage of WorldRenderer.Palette method when it comes to appending player name (in case of player palette)
2023-07-25 13:33:11 +03:00
EoralMilk
b944b21325
Aircraft won't take off on terrain height change when idle
2023-07-25 12:48:50 +03:00
Gustas
c7e0bc4c08
Add missing carryall checks
2023-07-25 10:02:46 +03:00
Gustas
a69417f0a6
Fix caryall not removing influence when cargo dies
2023-07-25 10:02:46 +03:00
Gustas
c36609cc9f
Don't call DetachCarryable every tick
2023-07-25 10:02:46 +03:00
Gustas
1edf313090
Don't calculate range when it is unused
2023-07-25 10:02:46 +03:00
RoosterDragon
813d48dd70
Ensure save file is closed after saving.
...
If you attempt to load after saving, this prevents an exception from the file being "in use" due to the unclosed file handle.
2023-07-18 23:44:40 +02:00
Gustas
9caf12d133
Add an option to order maps by size
2023-07-17 23:34:38 +02:00
Gustas
de5bcbbca5
Add an option to order maps by title
2023-07-17 23:34:38 +02:00
michaeldgg2
8aa548f70c
Minelayer: extract creating BeginMinefield order so it can be triggered from outside
2023-07-17 20:18:52 +02:00
michaeldgg2
ce6e73dc92
Minelayer: supports specifying both mine laying and post laying delays
2023-07-17 20:18:52 +02:00
RoosterDragon
4a02e6c6cc
Improve Exts.GetOrAdd method to avoid multiple lookups.
...
Use CollectionsMarshal to hold a ref to the dictionary entry. When the value needs to be added this allows us to set the value directly into it without having to locate the entry a second time.
2023-07-17 20:12:48 +02:00
RoosterDragon
d6a31bb0cc
MiniYaml performance tweaks.
...
- Seal the classes, and make SourceLocation a readonly struct.
- In ToDictionary, use TryAdd to avoid a try-catch.
- In Merge, use ToList to ensure sources is only enumerated once.
2023-07-17 20:12:48 +02:00
RoosterDragon
f5daa19a1c
Improve MiniYaml MergePartial performance.
...
- Track plain keys in a set, to avoid quadratic searches for plain node keys.
- Avoid the Concat iterator by looping twice instead.
2023-07-17 20:12:48 +02:00
RoosterDragon
a96e445e4d
Handle duplicate nodes key checks in MiniYaml in a better place.
...
Moving the key duplication check allows a redundant check on top-level nodes to be avoided. Add tests to ensure key checks are functioning as expected.
2023-07-17 20:12:48 +02:00
RoosterDragon
30b1f926f2
Improve performance of MiniYaml inheritance tree tracking.
...
Use an ImmutableDictionary to avoid having to clone the inheritance tree in ResolveInherits. This avoids a lot of dictionary clones.
2023-07-17 20:12:48 +02:00
RoosterDragon
58e8b123db
Avoid some allocations during loading.
...
- In FieldLoader, cache boxed bools and some boxed ints.
- In FieldLoader, presize collections when parsing a List, HashSet or Dictionary.
- In FieldLoader, don't allocate a list of missing items until required.
- In FieldLoader, when a string value is passed, avoid wrapping this in a MiniYaml object by allowing both strings and yaml to be passed in the GetValue overload that does the real work.
- In Animation, avoid allocating no-op actions.
- In VxlReader, use EnsureCapcity to better size the Dictionary.
- In VxlReader change VxlElement to a struct.
- In Locomotor, presize TerrainSpeeds dictionary.
2023-07-16 23:21:20 +02:00
RoosterDragon
be04d232c0
Avoid some allocations on the large object heap during loading.
...
- In MixFile, the Distinct call doesn't presize the HashSet it uses internally. As we know we will enumerate all results, create the HashSet ourselves so that is it presized correctly.
- In ObjectCreator, stream the assembly when hashing rather than reading all bytes into memory.
These changes avoid some allocations on the large object heap, in turn this means the GC can avoid performing unnecessary Gen 2 collections just to clear down the LOH.
2023-07-16 23:21:20 +02:00
Gustas
659ec5e335
Make phase transport uncloak on loading cargo
2023-07-14 17:25:30 +02:00
Paul Chote
7f37454666
Include Linux DE in OS sysinfo string.
2023-07-13 14:34:38 +03:00
michaeldgg2
433d69af7a
Make Voiced trait conditional
2023-07-10 18:05:56 +03:00
Matthias Mailänder
21c21e4963
Update OpenAL.
2023-07-07 23:47:32 +02:00
RoosterDragon
1c0885c636
Improve loading performance for loader/compression classes.
...
- In RLEZerosCompression use dedicated Array.Clear method instead of open-coded loop.
- In VoxelLoader.GenerateSlicePlanes.Get use TryGetValue to avoid repeated array and dictionary lookups.
- In TmpTSLoader.UnpackTileData use ReadBytes to populate array with less overhead compared to repeated one byte reads.
- Resolve TODO in VqaVideo.
2023-07-07 22:36:54 +03:00
michaeldgg2
dccb3ce9ce
Added extensibility points to LayMines activity:
...
Provides two callbacks using INotifyMineLaying interface: MineLaying (just before laying a mine), MineLaid after mine actor has been created (in FrameEndTask)
2023-07-04 23:52:25 +02:00
michaeldgg2
22b39f35aa
Mine + related classes are public
2023-07-04 23:52:25 +02:00
michaeldgg2
5ab3276a2d
Moved Minelaying related traits and activity to Common
2023-07-04 23:52:25 +02:00
penev92
36420114e0
Fixed packaging for Windows missing assembly info
...
Apparently building/publishing/packaging for Windows on Linux using .NET 6 sets some of the assembly / Portable Executable information for the generated DLL, but nothing for the generated EXE (which isn't the case when building on Windows).
2023-07-04 20:53:49 +01:00
penev92
7cda031888
Added product version to assembly info
2023-07-04 20:53:49 +01:00
penev92
fc85a4864d
Added project information in Directory.Build.props
2023-07-04 20:53:49 +01:00
Gustas
99226c3df5
Always have ActorReference string on optional arrays instantiated
2023-07-01 18:29:59 +02:00
Gustas
ed395c8ace
Fix linter crashing on null actor array references
2023-07-01 18:29:59 +02:00
Vapre
edbded8f0a
PerfTickLogger, reduce overhead of logging long ticks.
2023-07-01 18:07:27 +02:00
abcdefg30
c095690619
Fix combined sequences using frames being broken
2023-07-01 12:56:50 +02:00
dnqbob
628cc837ef
Fix a crash when RallyPoint creates RallyPointIndicator
2023-07-01 12:51:54 +02:00
RoosterDragon
0c32fca6c0
Fix slow saving of map previews.
...
Avoid quadratic behaviour when searching through actors by creating a dictionary lookup outside the loop.
2023-07-01 12:48:32 +02:00
IceReaper
56b5ace109
WSA use a Framerate of 15, source: FFMPEG.
2023-06-26 19:49:51 +02:00
IceReaper
5572650da2
Video FrameRate is now taken into account when video has no audio.
2023-06-26 19:49:51 +02:00
IceReaper
41669d246f
Videos no longer use more vram then required.
2023-06-26 19:49:51 +02:00
abcdefg30
49c837e7d0
Fix \r\n-style line endings not being properly handled for script errors
2023-06-26 19:36:47 +02:00
RoosterDragon
bc5e7d1497
Compress all pngs within oramap files.
...
Reduces size used for oramap files from 2,774,405 bytes to 2,614,332 bytes in total. The smaller files also improve loading times as the zlib decoder has less bytes to schlep through.
The PNG decoder shipped with OpenRA only supports a bit depth of 8 for images with a palette, so must must ensure that other depths (1,2 or 4) are not used.
zopfilpng is used for compression with the following command line:
'zopflipng.exe --keepcolortype -y -m image.png image.png'
The keepcolortype flag ensures the bit depth is not changed.
The oramap files were updated by:
- Saving as a folder, unpacking the data in loose files.
- Compressing the png files using the command above.
- Saving back as an oramap, except instead of regenerating the map preview on save we save the existing version on disk.
2023-06-26 19:28:06 +02:00
RoosterDragon
78bef8a98f
Compress all pngs.
...
Reduces size used for png files from 19,034,446 bytes to 13,305,798 bytes in total. The smaller files also improve loading times as the zlib decoder has less bytes to schlep through.
The PNG decoder shipped with OpenRA only supports a bit depth of 8 for images with a palette, so must must ensure that other depths (1,2 or 4) are not used.
zopfilpng is used for compression with the following command line:
'zopflipng.exe --keepcolortype -y -m image.png image.png'
The keepcolortype flag ensures the bit depth is not changed.
2023-06-26 19:28:06 +02:00
RoosterDragon
4f3d8f4caa
Fix Png parsing.
...
A regression from 06df75ffee causes this parsing to fail depending on how the image was compressed.
2023-06-26 19:28:06 +02:00
Paul Chote
0369f7516d
Work around Gnome 44 titlebar bug.
2023-06-26 19:21:51 +02:00
Gustas
3b0415678c
RA Naval balance
2023-06-26 19:13:41 +02:00
Gustas
69867b6c06
Fix EMP'ed units turning
2023-06-21 20:55:52 +02:00
RoosterDragon
231bf01f18
Fix CA1854
2023-06-20 17:57:40 +02:00
RoosterDragon
56fe08cb00
Disable CA1845
2023-06-20 17:57:40 +02:00
RoosterDragon
f752e04b03
Fix CA1816
2023-06-20 17:57:40 +02:00
RoosterDragon
a50e72f68d
Fix CA1802
2023-06-20 17:57:40 +02:00
RoosterDragon
0958197df2
Fix CA1052
2023-06-20 17:57:40 +02:00
RoosterDragon
f336a956cf
Fix CA1012
2023-06-20 17:57:40 +02:00
darkademic
19fa03435b
Only consider non-paused armaments (if any exist) when determining min/max range.
2023-06-20 16:46:21 +02:00
RoosterDragon
fa65e7fd3f
Bump Linguini.Bundle to 0.5.0.
...
This version contains performance improvements for the parser, improving the loading time of translations.
2023-06-15 17:48:37 +02:00
RoosterDragon
f794cf69f9
In TypeDictionary.TrimExcess, also TrimExcess on the internal data dictionary size.
...
As TypeDictionary instances tend to live a long time without edits after being initially populated, this will reduce their long term memory footprint.
2023-06-13 23:52:44 +02:00
RoosterDragon
366dc5383c
In HierarchicalPathFinder.BuildGrid, presize and reuse accessible cell set.
...
Most cells are accessible, so presizing to the full size of the grid is sensible to avoid allocations to resize as it is filled up. The set can also be reused across all layers to avoid allocating it many times.
2023-06-13 23:52:44 +02:00
michaeldgg2
fd2b14f464
DrawLineToTarget: made palette for rendering sprites customizable (and thus optional too)
2023-06-12 21:10:52 +03:00
Matthias Mailänder
590976a8e7
Add support for Wayland.
2023-06-12 19:57:35 +02:00
Paul Chote
bdbb651b98
Remove unused sequences and an awkward Combine.
2023-06-11 22:04:43 +02:00
Paul Chote
703618be19
Remove obsolete x64 and x64process sysinfo columns.
2023-06-11 13:18:49 +02:00
Paul Chote
1f37728ecf
Return proper sysinfo OS names for Linux/macOS.
2023-06-11 13:18:49 +02:00
penev92
d955efff14
Updated configure-system-libraries for new OpenAL
2023-06-11 10:41:02 +02:00
penev92
3fdee06dc7
Updated other referenced NuGet packages
2023-06-11 10:41:02 +02:00
penev92
c0cd7259b3
Updated native dependencies NuGet packages
2023-06-11 10:41:02 +02:00
Matthias Mailänder
c31f2abfc9
Add sanity checks to the Lua script trait.
2023-06-11 11:03:38 +03:00
RoosterDragon
06df75ffee
Improve PNG parsing performance.
...
Switch on the filter once per row rather than once per byte. This allows each row to be processed with a much tighter loop.
2023-06-10 16:20:02 +02:00
Matthias Mailänder
855e839b77
Try to fix chocolatey.
2023-06-09 19:25:36 +02:00
Gustas
06437df9b0
Fix CA1852
2023-06-06 14:13:04 +03:00
RoosterDragon
f4af5c1764
Fix CA1852
2023-06-06 11:51:47 +03:00
RoosterDragon
277699cbd5
Fix CA1822
2023-06-06 11:51:47 +03:00
Gustas
e4cac1fffc
Add more varied pre-selected colors to player colors palette
2023-06-05 13:16:26 +02:00
Matthias Mailänder
e164e48aae
Fix invalid integer expression syntax.
2023-06-04 21:29:15 +03:00
Matthias Mailänder
5eec9d29cb
Add a lint check for invalid integer expression syntax.
2023-06-04 21:29:15 +03:00
Matthias Mailänder
94abd8a928
Revert "Revert "Replace legacy Evaluator with IntegerExpressions.""
...
This reverts commit 4f16b0d464 .
2023-06-04 21:29:15 +03:00
JovialFeline
b18c2fe855
Add Mousetrap (scu33ea).
2023-06-03 21:45:18 +02:00
Gustas
02a7ff87db
Fix MoveAdjacent activities cancelling queued activities
2023-06-03 13:43:44 +02:00
Vapre
7c0f6ead3a
ActorMap, avoid IPositionable trait lookup.
2023-06-03 13:41:14 +02:00
Vapre
d72b1ffd49
ActorMap, do not look up influence node up to three times in cell layer.
2023-06-03 13:06:38 +02:00
Gustas
c82be175e1
Add RemoveNegativeSequenceLength update rule
2023-06-02 11:59:22 +02:00
michaeldgg2
dac35a60ad
WithDecoration: fixed crash when Palette is null
2023-06-02 11:49:59 +02:00
abcdefg30
ee02af3605
Don't play low power notifications in the beginning of twist-of-fate
2023-06-01 20:42:39 +03:00
abcdefg30
74ed202b29
Support enabling and disabling the low power notification via Lua
2023-06-01 20:42:39 +03:00
RoosterDragon
300281695a
Deserialize mod rules only once when loading all maps.
...
This avoids loading, parsing and merging YAML rules for the mod during loading of each individual map. This saves significant time resolving custom rules on each map loaded.
2023-06-01 12:59:53 +02:00
Matthias Mailänder
de22556153
Move unit testing into the make script.
2023-06-01 12:43:10 +02:00
Matthias Mailänder
5bcb1a678c
Fix fluent plural forms.
2023-06-01 12:43:10 +02:00
Matthias Mailänder
8a9426a0d4
Add a test case for Fluent plural forms.
2023-06-01 12:43:10 +02:00
Matthias Mailänder
dd9ab16401
Run unit tests on Linux.
2023-06-01 12:43:10 +02:00
abcdefg30
12e6932930
Fix dedicated servers crashing on startup due to missing translations
2023-06-01 10:04:06 +03:00
abcdefg30
95f18d4bc3
Fix the ExplicitSequenceFilenames updating sequences twice
2023-05-30 16:31:49 +03:00
abcdefg30
8c9cc93185
Fix the ExplicitSequenceFilenames rule breaking when updating single maps
2023-05-30 16:31:49 +03:00
Matthias Mailänder
b58a8aaa0f
Fix benchmark CSV export on non-US systems.
2023-05-28 23:11:25 +03:00
Gustas
c5b7728ac9
RA Naval balance
2023-05-25 23:35:34 +02:00
Matthias Mailänder
c9dddc342c
Extract editor brush texts.
2023-05-23 19:45:15 +02:00
Matthias Mailänder
8433bc0948
Throw early when Lua function parameters are null.
2023-05-23 17:30:03 +03:00
abcdefg30
52a916012f
Remove references to the deleted Lua directory from Windows packaging
2023-05-21 18:23:04 +03:00
RoosterDragon
2fe7e1bff9
Fix HierarchicalPathFinder pathing from inaccessible source locations.
...
When a search is initiated from an inaccessible source location, a path is still allowed if there is an adjacent, accessible location the unit can move into. The local pathfinder and HierarchicalPathFinder already account for this logic, but HPF has some bugs.
Firstly, when the HierarchicalPathFinder heuristic is being evaluated, it assumes all cells being explored are accessible - this is important for performance as it avoids constantly rechecking the accessibility of cells. Although this fact holds true for cells explored by the path search, it does not hold true for cells being added as the initial starting points of the search.
Secondly, when checking for adjacent locations to an inaccessible source cell, we checked only if these were still on the map. This is insufficient - we need to know if movement between the source cell and the adjacent cell is possible.
The fixes resolve this by:
- Teaching the heuristic an extra parameter to know if the location is known to be accessible. This allow an accessibility check to be performed for starting locations which stops HPF mistakenly assuming the abstract node for that location is the one we need to consider, and to correctly check the adjacent locations and their abstract nodes instead. The parameter means will can still skip the accessibility check in the typical case where the path search is being expanded, preserving performance.
- When adjacent cells are considered we now check if movement to them is possible. This stops HPF from allowing jumps over height discontinuities (i.e. no magically jumping up or down cliffs) and thinking a path is possible when it is not.
2023-05-21 16:56:16 +02:00
abcdefg30
0788e5ff3e
Adjust the ValidTargets of DuplicateUnitCrateAction in RA
2023-05-21 16:34:58 +02:00
Matthias Mailänder
0fb5853b7a
Fallback to normal difficulty when none is set.
2023-05-21 15:46:20 +03:00
Matthias Mailänder
b30285e38d
Officially deprecate this function.
2023-05-21 15:46:20 +03:00
Brenton Horne
02e4bfba95
Remove reference to deleted lua directory
...
Lua directory was deleted a few commits ago and this just updates packaging/functions.sh to reflect this change.
2023-05-21 13:13:13 +02:00
abcdefg30
b5f5d5f9d5
Fix ScriptContext crashing without a WorldLoaded function
2023-05-21 13:11:17 +02:00
abcdefg30
f2b3a9f837
Fix ScriptContext crashing without a Tick function
2023-05-21 13:11:17 +02:00
dnqbob
6af14c16c9
Fix a rare crash when actor in IBotRespondToAttack is dead
2023-05-21 10:40:21 +02:00
Gustas
211f7160dc
Remove \r
...
we use \n everywhere else in the engine
2023-05-20 20:47:56 +03:00
Smittytron
8a1463a471
Add Allies10b
2023-05-20 20:36:54 +03:00
abcdefg30
b623214e04
Fix IdlingUnits definitions for multiple reinforcements in D2k missions
2023-05-20 18:56:58 +02:00
abcdefg30
6b536ca88a
Add a Lua function to concat two tables
2023-05-20 18:56:58 +02:00
Matthias Mailänder
445b736885
Replace sandbox wrapper scripts.
2023-05-20 13:19:48 +02:00
dnqbob
e8dd85419f
add Autocrusher for baby visc
2023-05-20 12:53:29 +02:00
yamismo
b1fd392486
Add GDI Covert Operations - Twist of Fate - scg41ea
2023-05-19 18:55:17 +02:00
Gustas
e487c3366d
Allow EMP cannon to EMP itself
2023-05-19 17:29:17 +02:00
Gustas
ade27ad8b9
Fail CI on lint warnings
2023-05-19 17:25:03 +02:00
Gustas
34bcae9abb
Translation keys should not be required
2023-05-19 17:25:03 +02:00
Gustas
8894fdeaf9
Add map translation parse error linting
2023-05-19 17:25:03 +02:00
Gustas
ff14b75e1b
Fix duplicate translations
2023-05-19 17:25:03 +02:00
Gustas
b5ef9c29cf
Improve spawnpoint lint
2023-05-19 17:25:03 +02:00
Gustas
f344ccb714
Improve visibility lint
2023-05-19 17:25:03 +02:00
Gustas
9b71317280
Improve lint error wording
2023-05-19 17:25:03 +02:00
Gustas
1ac6912c2a
Fix lint error formatting
2023-05-19 17:25:03 +02:00
Gustas
3188532e59
Add punctuation to lint comments
2023-05-19 17:25:03 +02:00
abcdefg30
d9d8c23c63
Enable the restart button when we encounter a script error
2023-05-19 17:02:06 +02:00
abcdefg30
dfe0c15399
Remove wrong definitions from TD's notifications.yaml
2023-05-19 16:39:42 +02:00
IceReaper
0751b30d33
Fixed duplicate asset selection in asset browser.
2023-05-19 10:26:32 +03:00
Gustas
f4dc29f9db
Add missing balance changes
2023-05-18 18:30:53 -05:00
abcdefg30
ce7f9e71c1
DefaultSpriteSequence: Avoid an extra allocation and LINQ when adding shadow frames
2023-05-16 22:57:33 +03:00
abcdefg30
05f21fcbe2
DefaultSpriteSequence: Merge if statements for readability
2023-05-16 22:57:33 +03:00
abcdefg30
00f2ba1a53
DefaultSpriteSequence: Remove redundant modulo operations
...
frame is already bounded by length.Value
2023-05-16 22:57:33 +03:00
abcdefg30
991e0a4c9a
DefaultSpriteSequence: Use .Count == 0 over !.Any()
2023-05-16 22:57:33 +03:00
abcdefg30
aa28881726
DefaultSpriteSequence: Use List.Find instead of LINQ's FirstOrDefault
2023-05-16 22:57:33 +03:00
RoosterDragon
6d288aba2f
Track keys during MiniYaml Merge.
...
This improves performance by avoiding repeated linear scans over the nodes to match the keys.
2023-05-15 23:48:39 +02:00
dnqbob
0980856072
Set up Hover MRLS moving style
2023-05-11 17:27:18 +02:00
dnqbob
0d98405bdc
Make ActorFacingModifier privately set
2023-05-11 17:27:18 +02:00
dnqbob
69441a4fee
Add TurnsWhileMoving to Mobile
2023-05-11 17:27:18 +02:00
dnqbob
a65bb17d68
Cache the notifyAttacks in AttackGarrisoned
2023-05-09 22:49:41 +02:00
Matthias Mailänder
6e6bf1ca81
Translate labels with parameters.
2023-05-09 20:14:52 +03:00
Matthias Mailänder
474463111f
Remove unused CamelCase UI string.
2023-05-09 20:14:52 +03:00
RoosterDragon
0b4a54ab54
TechTree.GatherOwnedPrerequisites performance improvements.
...
- Consuming methods cared only about the count and not the actual actors, so only counts the actors rather that creating lists.
- ProvidesPrerequisites implementations return cached objects rather then allocating new enumerables on each call.
2023-05-06 20:07:35 +03:00
Matthias Mailänder
65c0cf1065
Deprecate string format shorthand.
2023-05-05 19:03:09 +02:00
Matthias Mailänder
1c2ce0dcc0
Deprecate string format log shorthand.
2023-05-05 19:03:09 +02:00
Matthias Mailänder
e251126dd4
Remove unused log proxy.
2023-05-05 19:03:09 +02:00
Matthias Mailänder
f2a4e7b984
Remove null sprite workaround from Tiberian Sun.
2023-05-04 22:13:59 +03:00
Matthias Mailänder
9e659cacf2
Fix rally point sprites not being truely optional.
2023-05-04 22:13:59 +03:00
Matthias Mailänder
c5e9567875
Fix a null reference exception upon empty Fluent strings.
2023-05-02 22:25:51 +02:00
Gustas
44f1af7059
Move TileScale to MapGrid
2023-05-02 16:37:30 +03:00
Nate Nichols
8f511a3bb6
Added ability to use Mouse 4 and Mouse 5 as hotkeys
2023-04-28 15:22:25 +03:00
Matthias Mailänder
4f7a01a291
Localize difficulty settings.
2023-04-25 21:33:02 +03:00
Matthias Mailänder
af6330b1bd
Allow localisation of dictionary values.
2023-04-25 21:33:02 +03:00
Matthias Mailänder
55ff0ac1f4
Inline variables.
2023-04-25 21:33:02 +03:00
abcdefg30
51bbfc39b0
Fix DischargeableSupportPowerInstance crashing without instances
2023-04-25 21:15:06 +03:00
JovialFeline
90bb2db349
Fix OnAllKilled crash for allies05b and allies05c
2023-04-23 23:49:10 +02:00
Matthias Mailänder
0d36bc19c6
Document radar appear trait and fields.
2023-04-22 23:24:24 +02:00
Gustas
a9a7777293
Report linguini parse errors
...
Reports duplicate keys
2023-04-22 19:23:41 +02:00
Gustas
bf66068557
Add per map linting
2023-04-22 19:23:41 +02:00
Matthias Mailänder
68eec52cef
Add TranslationProvider
2023-04-22 19:23:41 +02:00
Gustas
a065e6a47c
Fix map level lobby options not being translated
2023-04-22 19:23:41 +02:00
Gustas
efe135e38b
Add Translations to MapPreview
2023-04-22 19:23:41 +02:00
Gustas
07e47b6a28
Extract common rules translations
2023-04-22 19:23:41 +02:00
Gustas
8f5d8de1c2
Allow empty translation keys
2023-04-22 19:23:41 +02:00
Matthias Mailänder
2867334c00
Less verbose logging for untranslated strings.
2023-04-22 19:23:41 +02:00
Gustas
dc390a7301
Add IMove.MoveOntoTarget interface
...
In `TraitsInterfaces` we expose offset as WPos instead of CPos. In an upcoming PR we'll translate the same change to yaml.
2023-04-21 18:29:43 +02:00
Gustas
ad683d9226
Add MoveOnto Activity
...
No functional changes to `MoveWithinRange` nor `MoveAdjacentTo`. I've just
moved around code to for allow better overwriting.
2023-04-21 18:29:43 +02:00
Gustas
1c2eaa2654
Use nameof for ContrailEndColor description
2023-04-21 17:58:42 +02:00
Gustas
7ef1dccdcf
Add ContrailEndWidth
2023-04-21 17:58:42 +02:00
Gustas
ff488b77b5
Implement elite radar invisibility
2023-04-21 16:59:11 +02:00
Gustas
92cceea2b8
Enemy veterancy should always be visible
2023-04-21 16:59:11 +02:00
yamismo
8b522680e3
Added Nod Covert Operations - Eviction Notice - scb30ea
2023-04-19 21:52:30 -05:00
RoosterDragon
7507333cd3
Fix missing Flags attribute on CABFlags enum.
2023-04-17 00:05:12 +02:00
RoosterDragon
f470f9ab91
Fix CA2216
2023-04-17 00:05:12 +02:00
RoosterDragon
a120b9d37e
Fix CA2208
2023-04-17 00:05:12 +02:00
RoosterDragon
1b1b9dc29b
Fix CA2215
2023-04-17 00:05:12 +02:00
RoosterDragon
ef04e2e1e8
Fix CA2019
2023-04-17 00:05:12 +02:00
RoosterDragon
321d4b8afd
Fix CA1850
2023-04-17 00:05:12 +02:00
RoosterDragon
c3e6c4685f
Fix CA1849
2023-04-17 00:05:12 +02:00
RoosterDragon
6362bbd176
Fix CA1846
2023-04-17 00:05:12 +02:00
RoosterDragon
07fb5e8027
Fix CA1841
2023-04-17 00:05:12 +02:00
RoosterDragon
8fe82ed976
Fix CA1839
2023-04-17 00:05:12 +02:00
RoosterDragon
25b8e7fefc
Fix CA1834
2023-04-17 00:05:12 +02:00
RoosterDragon
ad4a443fc2
Fix CA1066
2023-04-17 00:05:12 +02:00
RoosterDragon
01eaa6b228
Fix CA1064
2023-04-17 00:05:12 +02:00
RoosterDragon
c442bd83f8
Fix CA1036
2023-04-17 00:05:12 +02:00
RoosterDragon
ff799303b0
Fix CA1018
2023-04-17 00:05:12 +02:00
RoosterDragon
f09241d263
Fix CA1010
2023-04-17 00:05:12 +02:00
Gustas
1db982276a
Fix actors being added to world while world actors are being iterated
2023-04-15 17:26:02 +02:00
Paul Chote
718c6d03cc
Downgrade SDL to 2.0.22.
2023-04-15 16:14:12 +02:00
Thomas Christlieb
57fba4e18e
Rename JoinChatDelay
2023-04-15 12:50:06 +02:00
ThomasChr
b219731173
Allow overriding of Server.Map via the dedicated server scripts
2023-04-15 12:50:06 +02:00
ThomasChr
a0eea7bcc0
fix path to wiki page
2023-04-15 12:50:06 +02:00
RoosterDragon
0c3071b9c6
Adjust MiniYaml node merging when removals are present.
...
# Example Scenario
MockString:
CollectionOfStrings:
StringA: A
MockString:
CollectionOfStrings:
StringB: B
MockString:
-CollectionOfStrings:
MockString:
CollectionOfStrings:
StringC: C
MockString:
CollectionOfStrings:
StringD: D
# Previous MergePartial result
# The CollectionOfStrings is merged into a single unit, so the C and D items are dragged upwards and jump ahead of the Removal
# When this is processed, the final result removes CollectionOfStrings entirely
MockString:
CollectionOfStrings:
StringA: A
StringB: B
StringC: C
StringD: D
-CollectionOfStrings:
# New MergePartial result
# When merging nodes, we no longer allow merges to jump an intervening removal node.
# This means we can have multiple of a certain key (CollectionOfStrings in this example) which was not the case previously.
# When this is processed, the final result includes C/D but not A/B.
MockString:
CollectionOfStrings:
StringA: A
StringB: B
-CollectionOfStrings:
CollectionOfStrings:
StringC: C
StringD: D
2023-04-14 23:57:26 +03:00
RoosterDragon
0066010792
Added MiniYAML merging unit tests
...
MockString:
CollectionOfStrings:
StringA: A
MockString:
CollectionOfStrings:
StringB: B
MockString:
-CollectionOfStrings:
MockString:
CollectionOfStrings:
StringC: C
MockString:
CollectionOfStrings:
StringD: D
MockString:
CollectionOfStrings:
StringA: A
StringB: B
StringC: C
StringD: D
-CollectionOfStrings:
MockString:
CollectionOfStrings:
StringA: A
StringB: B
-CollectionOfStrings:
CollectionOfStrings:
StringC: C
StringD: D
2023-04-14 23:57:26 +03:00
penev92
0b61954e39
Reimported some TS maps
...
Could not find the source for most of the maps, so reimported only those that were part of the original game's "official map pool" + 3 custom ones.
2023-04-14 20:50:08 +03:00
Paul Chote
a0cd008da6
Fixed gen2 map importer Bounds calculations
2023-04-14 20:50:08 +03:00
penev92
3d2ba9d5bf
Added abstract base class ImportGen2MapCommand
...
Split out ImportGen2MapCommand from ImportTSMapCommand, to also serve as a base for a RA2 map importer.
Also renamed TS importer to ImportTiberianSunMapCommand.
2023-04-14 20:50:08 +03:00
penev92
01e6babd54
Moved ImportLegacyMapCommand to OpenRA.Mods.Cnc
...
Also renamed to `ImportGen1MapCommand`.
Also moved Extensions.DistinctBy().
2023-04-14 20:50:08 +03:00
Ivaylo Draganov
96d023de87
Don't change cursor when mousing over label widgets
...
Labels don't handle input so the cursor should not change over them.
2023-04-12 12:09:50 +03:00
Gustas
3ca2bb1d23
Fix IDE0074, SA1316 and followup CS8141
2023-04-09 10:26:04 +01:00
RoosterDragon
595717fff0
Enable Code Quality Rules
...
Enforces a variety of CAxxxx rules that do not have existing violations.
For the benefit of dotnet_code_quality.CA2241.try_determine_additional_string_formatting_methods_automatically = true, rename parameters of methods that forward to string.Format so format issues will get detected automatically.
2023-04-08 23:15:40 +02:00
Gustas
d838d08570
Add IColorPickerManagerInfo interface
2023-04-08 18:05:20 +03:00
darkademic
265f915442
Resurrected old colour picker.
2023-04-08 18:05:20 +03:00
RoosterDragon
dcac966d49
Don't enable IDE0063, IDE0078.
2023-04-08 16:51:51 +03:00
RoosterDragon
4110c199fb
Enable IDE0150, CA1845
2023-04-08 16:51:51 +03:00
RoosterDragon
14c0d011ea
Fix SA1414
2023-04-08 16:51:51 +03:00
RoosterDragon
a167f9680f
Fix SA1316
2023-04-08 16:51:51 +03:00
RoosterDragon
062dc2bd40
Fix SA1141
2023-04-08 16:51:51 +03:00
RoosterDragon
1ce9acd442
Fix IDE0110
2023-04-08 16:51:51 +03:00
RoosterDragon
8a285f9b19
Fix IDE0090
2023-04-08 16:51:51 +03:00
RoosterDragon
164abfdae1
Fix IDE0083
2023-04-08 16:51:51 +03:00
RoosterDragon
bd2b3d9793
Fix IDE0074
2023-04-08 16:51:51 +03:00
RoosterDragon
cbd0583289
Fix IDE0062
2023-04-08 16:51:51 +03:00
RoosterDragon
023d80b94d
Fix IDE0057
2023-04-08 16:51:51 +03:00
RoosterDragon
5254348819
Fix IDE0056
2023-04-08 16:51:51 +03:00
RoosterDragon
4ec5a4b34a
Fix reversed path searches from inaccessible locations.
...
The Harvester trait and MoveAdjacentTo activity called the pathfinder but had a single source and multiple targets. The pathfinder interface only allows for the opposite: multiple sources and a single target. To work around this they would swap the inputs. This works in most cases but not all cases. One aspect of asymmetry is that an actor may move out of an inaccessible source cell, but not onto an inaccessible target cell.
Searches that involved an inaccessible source cell and that applied this swapping method would therefore fail to return a path, when a valid path was possible. Although a rare case, once good way to reproduce is to use a production building that spawns actors on inaccessible cells around it, such as the RA naval yard. A move order uses the pathfinder correctly and the unit will move out. Using a force attack causes the unit to use the broken "swapped" mechanism in MoveAdjacentTo and it will be stuck.
This asymmetry has been longstanding but the pathfinding infrastructure only sporadically accounted for it. It is now documented and applied consistently. Create a new overload on the pathfinder trait that allows a single source and multiple targets, so callers have an overload that does what they need and won't be tempted to swap the positions and run into this issue.
Internally, this requires us to teach Locomotor to ignore the self actor when performing movement cost checks for these "in reverse" searches so the unit doesn't consider the cell blocked by itself.
2023-04-07 16:38:37 +01:00
Gustas
e4ba9733fe
Add sequences linting to ingame lobby
2023-04-07 16:23:30 +01:00
IceReaper
a332fba702
IDFiles should be optional.
2023-04-05 21:13:11 +02:00
RoosterDragon
83561d639d
Update LangVersion to C# 9.
...
mono was the bottleneck restricting our ability to use a newer C# version. mono 6.12 is currently available. Although poorly documented on their website, this supports C# 9. https://www.mono-project.com/docs/about-mono/versioning/#mono-source-versioning indicates mono 6.12 uses Roslyn 3.9.0. https://github.com/dotnet/roslyn/blob/main/docs/wiki/NuGet-packages.md#versioning indicates Roslyn 3.9.0 supports C# 9.
This unlocks C# 8 and C# 9 features previously unavailable to us.
- https://learn.microsoft.com/en-us/dotnet/csharp/whats-new/csharp-version-history#c-version-80
- https://learn.microsoft.com/en-us/dotnet/csharp/whats-new/csharp-version-history#c-version-9
A newer version of StyleCop is required to avoid rules tripping up on the new syntax. Currently only prerelease versions are available but their use is encouraged https://github.com/DotNetAnalyzers/StyleCopAnalyzers/issues/3420#issuecomment-994899135
Fix style rule violations on existing rules where the newer language version makes some existing casts redundant or allows use of the null coalescing assignment operator.
2023-04-05 15:27:41 +03:00
RoosterDragon
9dd4f938da
Cache reflection calls when running utility lints and commands.
...
Reduces runtime of --check-yaml command to 70% of original.
2023-04-05 00:25:32 +02:00
Gustas
1a2aafa17c
Fix backwards movement not canceling when BackwardDuration times out
2023-04-04 20:25:04 +02:00
Gustas
a4e80e1153
Fix backwards movement not working correctly when turning in an arc
2023-04-04 20:25:04 +02:00
dnqbob
a261abbc3f
Using support power uncloak TS superweapon
2023-04-04 18:26:11 +03:00
dnqbob
27f780c5d1
Using support power can uncloak actor
2023-04-04 18:26:11 +03:00
IceReaper
11ab4a7935
Support dos paths in registry.
2023-04-04 16:20:05 +02:00
IceReaper
4dd532f60e
Implemented MP3 detection.
2023-04-03 20:05:52 +02:00
IceReaper
138715b509
Added Zip support to installer source actions.
2023-04-03 17:57:16 +02:00
IceReaper
d97df78f4f
Steam and Gog resolvers now take IDFiles into account.
2023-04-03 17:57:16 +02:00
IceReaper
56c0680685
Fixed a typo.
2023-04-03 17:57:16 +02:00
RoosterDragon
95f675becd
Improve performance of ActorInfo.TraitsInConstructOrder.
...
Avoid redundant enumerations of the more and unresolved enumerables. This gives an approx 3x speedup for this function.
2023-04-03 17:29:08 +03:00
ThomasChr
a5ef6801c9
fix two crashes in hotkey menu, trying to select not visible widgets
2023-03-31 16:52:54 +03:00
abcdefg30
75a47aabb5
Don't always display the overwrite dialogue
...
When a save was selected but the filename text was changed,
we don't overwrite the existing save, so we don't need a dialogue
2023-03-31 16:32:09 +03:00
abcdefg30
73f29005bd
Allow saving games by pressing enter
2023-03-31 16:32:09 +03:00
abcdefg30
f1d439a07f
Make the save game title field take focus
2023-03-31 16:32:09 +03:00
penev92
9ce4ef0bff
Updated ExtractEmmyLuaAPI command to fix issues
...
Issues:
- The generated API file caused a ton of diagnostics warnings.
- Perhaps due to EmmyLua moving forward since this was created, we were missing out on some features.
Changes:
- Disabled diagnostics about missing return values for functions.
- Added add operator definitions because by default CPos+CVec would be assumed to return a number and assignments would cause warnings about type mismatches.
- Added explicit @enum annotations. This also fixed warnings in the generated API file about missing types.
- Changed default type of properties from an empty table to nil. This fixed warnings in the generated API file about type mismatch.
- Renamed local variable "required" -> "requiredTraits" for readability.
- Disabled duplicate function/property name warnings
- Updated trait docs URL.
2023-03-31 11:46:28 +02:00
Thomas Christlieb
9e081763ad
fix stance icon not updating when selecting units
2023-03-28 22:09:07 +03:00
Matthias Mailänder
378f66a1ff
Resolve Lua language server diagnosed problems.
2023-03-28 11:45:15 +02:00
Matthias Mailänder
3d0efa1cbe
Add EmmyLua notation to resolve the type.
2023-03-28 11:45:15 +02:00
Matthias Mailänder
cae07bb408
Remove uninitialized variable.
2023-03-28 11:45:15 +02:00
Matthias Mailänder
c94c1f8a6c
Remove missing actors.
2023-03-28 11:45:15 +02:00
Matthias Mailänder
0847cd33bd
Fix typos in mission scripts.
2023-03-28 11:45:15 +02:00
RoosterDragon
dc40442118
Fix doc comment on CanKickClient.
2023-03-27 20:55:44 +02:00
Gustas
2959a2c137
Fix warnings in LobbyCommand.cs
2023-03-27 20:15:17 +02:00
Gustas
bf00577d33
Allow kicking dead players
2023-03-27 20:15:17 +02:00
Gustas
c4bd9fb7aa
Add quit button to connection lost panel
2023-03-27 20:02:54 +02:00
Gustas
482f2fc335
Fix inconsistent abort naming
2023-03-27 20:02:54 +02:00
Gustas
925e042455
Add Interactable lint test
...
Since # 19174 bounds are calculated from WDist instead of pixels. This causes many of the older maps to crash games, And this lint test makes it easier for map makers to detect these issues.
As calculating the bounds requires MapGrid, we need to write a separate lint test for Interactable instead of defaulting to RulesetLoaded checks.
2023-03-27 19:55:19 +02:00
Gustas
c525c48d25
Make sure submarines don't smoke underwater
2023-03-26 20:24:30 -05:00
Gustas
f90dba2c6b
Add ^Submarine and make submarines inherit it
2023-03-26 20:24:30 -05:00
Gustas
e28f45f785
Use interpolated facings for submarines
2023-03-26 20:24:30 -05:00
Mustafa Alperen Seki
87eca8f2c0
Fix colors of paratroopers in the missions.
2023-03-26 17:49:02 -05:00
Mustafa Alperen Seki
960f829221
Move Soviets palette index definition to campaign-palettes.yaml.
2023-03-26 17:49:02 -05:00
RoosterDragon
8a4303cc94
Rework PriorityQueue for performance.
...
- Providing the comparer as a type argument that is a struct allows the calls to be devirtualised, leading to approx a 3x performance improvement.
- Use a single backing array, rather than a list of arrays.
2023-03-25 18:50:09 +01:00
penev92
7a4ac01348
Changed SequenceReferenceAttributes to use nameof
2023-03-24 18:51:36 +01:00
penev92
6dda4fa9f7
Fixed BuildableTerrainOverlay ignoring scale
2023-03-24 18:51:36 +01:00
Matthias Mailänder
af2b32e7ba
Add particle smoke effects.
2023-03-23 12:15:16 +02:00
michaeldgg2
069b7c5500
RepairableBuilding: play/display notification when repair process is aborted.
2023-03-23 10:28:12 +01:00
michaeldgg2
ae1983faba
ProductionQueue: make PauseProduction, CancelProduction virtual, CancelProductionInner protected
2023-03-20 12:17:55 +02:00
RoosterDragon
bcfa0c9ae9
Review StyleCop rules.
...
- Enforce SA1604 ElementDocumentationShouldHaveSummary.
- Enforce SA1629 DocumentationTextShouldEndWithAPeriod.
- Turn off some rules covered by IDExxxx rules.
- Remaining rules are treated as part of OpenRA style.
2023-03-18 12:46:10 +02:00
RoosterDragon
88ba974ea5
Reformat editorconfig
...
- Group style rules with their associated options in a way that matches the documentation. This makes it easier to pair rules and their options.
- Remove OpenRA.ruleset and move all rules into .editorconfig file.
- Centralise IDE0005 workaround in Directory.Build.props file.
2023-03-17 22:31:10 +01:00
RoosterDragon
721c03d9af
Enforce additional style rules.
2023-03-17 22:31:10 +01:00
Gustas
384435f8eb
Remove annoying autocomplete suffix
2023-03-16 21:07:21 +01:00
penev92
e808549637
Removed a redundant cast - IDE0004
2023-03-14 17:43:32 +01:00
penev92
bde13a8572
Fixed a bad merge
2023-03-14 17:43:32 +01:00
RoosterDragon
98c4eaca83
Fix IDE0032
2023-03-14 13:41:25 +02:00
michaeldgg2
e64c0a35c5
ProductionPaletteWidget: offset and align for queued count is now customizable
2023-03-12 15:10:26 +01:00
penev92
6bedc4697b
Fix modcontent.chrome-3x.png
...
After it was changed to a version without padding.
2023-03-12 13:24:39 +02:00
Gustas
2dbefaf375
Cache font
2023-03-12 10:53:45 +01:00
Gustas
2050d55b21
Add player's name to super weapon timers
2023-03-12 10:53:45 +01:00
penev92
d61178de41
Added tooltips to ContentPackages
2023-03-11 21:43:18 +01:00
penev92
9cb2d19654
Added checkbox tick artwork to modcontent's chrome
2023-03-11 21:43:18 +01:00
penev92
8a59982420
Made Advanced installation offer optional packages
...
Previously all detected content would be installed. Now the user can choose whether they want to install the optional packages like music and videos.
2023-03-11 21:43:18 +01:00
penev92
c5aee7b2cf
Added Title and Identifier as fields of ModPackage
2023-03-11 21:43:18 +01:00
penev92
d0285b058b
Grouped installer SourceActions by ContentPackage
...
ContentPackages are defined in mod.yaml and list Installers that support them, but then the Installers and their SourceActions knew nothing about ContentPackages.
Also added BeforeInstall and AfterInstall sections for SourceActions in the Installers.
2023-03-11 21:43:18 +01:00
abcdefg30
64e84554d3
Fix empty mission objectives getting translated
2023-03-11 21:07:02 +01:00
Gustas
8a18c2e4b6
Add a CanDeploy check to Transform at FrameEndTask
2023-03-11 21:00:51 +01:00
abcdefg30
43bb9e4302
Fix the map.yaml formatting of some new D2k maps
2023-03-11 20:56:32 +01:00
abcdefg30
cb8921dc22
Fix the sequence filename update rule node placement
2023-03-11 20:56:32 +01:00
abcdefg30
64933ed04b
Fix sequence inheritance defined in yaml
...
Nodes need to be placed after "Inherits" nodes so that they take
precedence over the inherited nodes.
2023-03-11 20:56:32 +01:00
abcdefg30
040fbf9694
Make Wanders and AttackWander queue activities instead of resolving orders
2023-03-11 20:47:34 +01:00
Wylli
4500d964b3
Update AUTHORS
...
Update AUTHORS
2023-03-10 20:35:56 +01:00
IceReaper
fceab4f388
Allow mods to override production widgets text colors.
2023-03-10 20:31:15 +01:00
Guillermoqnk
b3d468aca1
Fix return fire logic ignoring AutoAttack priotities
...
Added brand new feature
Unnecessary assignmet removed
2023-03-10 20:18:10 +02:00
Paul Chote
3b0b15abb9
Reduce duplication and allocations around CalculateFrameIndices.
2023-03-10 20:11:33 +02:00
Paul Chote
f0cf728825
Dispose SequenceSet when we're done with it.
...
Utility rules that do something on a map and exit
are left without explicit disposing, as they will
be cleaned up immediately anyway.
2023-03-10 20:11:33 +02:00
Paul Chote
c35ab081ff
Rewrite sequence loading logic.
...
Multiple layers of Lazy<T>ness are replaced with
an explicit two-part loading scheme.
Sequences are parsed immediately, without the need
for the sprite assets, and tell the SpriteCache
which frames they need. Use-cases that want the
actual sprites can then tell the SpriteCache to
load the frames and the sequences to resolve the
sprites.
2023-03-10 20:11:33 +02:00
Paul Chote
1f3403717b
Fix negative sequence lengths.
2023-03-10 20:11:33 +02:00
Paul Chote
a6f3db0a45
Allow all sprites to use interpolated facings.
2023-03-10 20:11:33 +02:00
Paul Chote
b051211842
Remove internal state from ISpriteSequence API.
2023-03-10 20:11:33 +02:00
Paul Chote
279869b4c5
Fix --dump-sequence-sheets utility command.
...
Also formats output filenames to specify
indexed sprite channels.
2023-03-10 20:11:33 +02:00
Paul Chote
b69adb518a
Remove asset browser dependency on sequences.
2023-03-10 20:11:33 +02:00
Paul Chote
b7cdcf419f
Add ILintSequencesPass.
2023-03-10 20:11:33 +02:00
Paul Chote
7cd4272350
Access sequences from Map.
2023-03-10 20:11:33 +02:00
Paul Chote
992ba1a9a2
Remove HasEmbeddedPalette from sequences.
2023-03-10 20:11:33 +02:00
Gustas
dab3ca0025
Add support for dark player colors
2023-03-10 15:43:24 +02:00
RoosterDragon
939f715e3c
Fix IDE0053
2023-03-07 13:18:13 +02:00
Matthias Mailänder
37afd6094e
Rename GiveMcvCrateAction to GiveBaseBuilderCrateAction.
2023-03-07 12:53:31 +02:00
RoosterDragon
c916a00624
Remove workaround for old versions of mono.
2023-03-07 12:51:06 +02:00
Matthias Mailänder
f6e5bee334
Move JumpJet traits to the C&C library.
2023-03-07 12:24:05 +02:00
Matthias Mailänder
63b9f18d05
Also document the launch parameters.
2023-03-05 12:15:32 +02:00
Matthias Mailänder
7b9dafcd19
Code cleanup.
2023-03-05 12:15:32 +02:00
RoosterDragon
53e9f44972
Spelling fixes
2023-03-02 20:11:54 +02:00
RoosterDragon
52fd564eac
Fix some whitespace formatting issues: stray tabs or spaces.
...
Wrap some long lines on affected code.
2023-03-02 20:02:45 +02:00
Matthias Mailänder
edaf11cb89
Update thirdparty dependencies.
2023-03-01 23:52:59 +01:00
RoosterDragon
ad122c8e32
When running a server, don't load minimap previews into memory.
2023-03-02 00:13:46 +02:00
RoosterDragon
8ee6957e6a
Fix IDE0048
2023-03-01 21:56:28 +02:00
abcdefg30
65e28d5562
Retire the release-20200202 update path
2023-03-01 20:02:01 +01:00
Gustas
422a228cea
Fix PlayerColorRemap expecting colors in linear space
...
PlayerColorRemap expected colors in linear space yet we provided them in gamma. We fix this by instead expecting gamma space colors and then converting them into linear space ourselves.
2023-02-28 23:26:37 +02:00
RoosterDragon
0b01b73111
Fix IDE0060
2023-02-28 21:21:40 +02:00
RoosterDragon
555aac3f64
Fix IDE0042
2023-02-28 21:21:40 +02:00
RoosterDragon
5b70d344cc
Fix IDE0038
2023-02-28 21:21:40 +02:00
RoosterDragon
71ce515d6d
Fix IDE0004
2023-02-28 21:21:40 +02:00
Eonfge
a4f9ceaf09
Add PrefersNonDefaultGPU flag to Desktop Entry
...
This means that the application will automatically start with the dedicated GPU of laptops, instead of the iGPU. Based on the Linux's FreeDesktop spec: https://specifications.freedesktop.org/desktop-entry-spec/latest/ar01s06.html
2023-02-27 10:42:07 +01:00
RoosterDragon
d4135d608e
Fix IDE0039
2023-02-27 10:09:11 +01:00
Gustas
4b3f7034b2
Silence rule "Use span-based 'string.Concat'"
2023-02-27 08:36:47 +02:00
Gustas
e64c77fdde
Use pattern matching to avoid is check followed by a cast (with variable)
2023-02-27 08:36:47 +02:00
Gustas
8d0fe52dd8
Remove unnecessary parentheses
2023-02-27 08:36:47 +02:00
Gustas
157d1b32dc
Use null propagation
2023-02-27 08:36:47 +02:00
Gustas
b06cbd7a95
Add missing punctuation to editorconfig
2023-02-27 08:36:47 +02:00
Gustas
2cccae96fe
Change click InterruptType to Overlap
2023-02-25 14:46:53 +02:00
Orb370
e758678140
update TD map pool 2023
2023-02-24 22:01:15 +01:00
RoosterDragon
6c96405ab2
Fix CS1573
2023-02-24 22:00:25 +02:00
RoosterDragon
63aa34cb35
Fix CS1570
2023-02-24 22:00:25 +02:00
RoosterDragon
5a2a448c32
Fix IDE0250
2023-02-24 22:00:25 +02:00
RoosterDragon
5e52d067c8
Fix IDE0180
2023-02-24 22:00:25 +02:00
RoosterDragon
bf960b6eae
Fix IDE0120
2023-02-24 22:00:25 +02:00
RoosterDragon
ede5412526
Fix IDE0100
2023-02-24 22:00:25 +02:00
RoosterDragon
78c41b84a1
Fix IDE0082
2023-02-24 22:00:25 +02:00
RoosterDragon
99c289e063
Fix IDE0075
2023-02-24 22:00:25 +02:00
RoosterDragon
3402031399
Fix IDE0071
2023-02-24 22:00:25 +02:00
RoosterDragon
837c70f857
Fix IDE0061
2023-02-24 22:00:25 +02:00
RoosterDragon
4f6095c3d4
Fix IDE0054
2023-02-24 22:00:25 +02:00
RoosterDragon
2d4119e88d
Fix IDE0051
2023-02-24 22:00:25 +02:00
RoosterDragon
4991f2f892
Fix IDE0041
2023-02-24 22:00:25 +02:00
RoosterDragon
10def52ad9
Fix IDE0033
2023-02-24 22:00:25 +02:00
RoosterDragon
99c1a4448b
Fix IDE0030
2023-02-24 22:00:25 +02:00
RoosterDragon
8223161959
Fix IDE0029
2023-02-24 22:00:25 +02:00
RoosterDragon
67ba3e55de
Fix IDE0020
2023-02-24 22:00:25 +02:00
RoosterDragon
6d7c73d498
Fix IDE0019
2023-02-24 22:00:25 +02:00
RoosterDragon
80bb828fe5
Fix IDE0018
2023-02-24 22:00:25 +02:00
RoosterDragon
b0dca05e50
Fix IDE0002
2023-02-24 22:00:25 +02:00
RoosterDragon
8b4500146f
Fix IDE0001
2023-02-24 22:00:25 +02:00
Matthias Mailänder
ee35cbc0d0
Let bot Deviators prioritize vehicles.
2023-02-22 23:09:08 +01:00
Matthias Mailänder
0b6f335c9f
Reference trait name in description.
2023-02-22 23:09:08 +01:00
Matthias Mailänder
40e8061797
Removed unused water terrain type from Dune 2000.
2023-02-22 23:09:08 +01:00
penev92
bb8e6ab03c
Fix sprites with no frames crashing AssetBrowser
2023-02-22 11:25:17 +02:00
penev92
807bd4d06a
Make AssetBrowser not case sensitive to file types
2023-02-22 11:25:17 +02:00
penev92
e1a7fb1cc8
Fixed displayed audio length in the AssetBrowser
2023-02-20 13:07:32 +01:00
Matthias Mailänder
5032b2b872
Extract translation strings.
2023-02-19 23:46:41 +01:00
abcdefg30
640e9d68b7
Fix not all ammo pools getting rearmed during RearmTick
2023-02-19 15:11:05 +02:00
Gustas
049d0283f9
Remove TiberianSunRefinery
...
Also add IDockClientBody interface,
move WithDockingOverlay cnc -> common,
remove HarvesterDockSequence implementing classes
2023-02-18 16:35:15 +01:00
Andre Mohren
3f0c3a8b9c
Allow mods to control how looped sounds are used.
2023-02-18 16:18:20 +01:00
Gustas
68fddf818c
Polish encyclopedia descriptions
2023-02-18 16:18:01 +01:00
Gustas
6997c442c6
Add MacOS Utility executable
2023-02-18 17:14:22 +02:00
Gustas
78677fd8ab
Fix replays continuing after desync
2023-02-18 15:53:17 +01:00
Gustas
20a16ad5f8
Move force pausing to EndGame method
2023-02-18 15:53:17 +01:00
penev92
19613ed833
Minor D2k encyclopedia UI polish
...
- Make the text area taller so all the current text fits without a scroll.
- Limit label width so text doesn't press against the scrollbar.
2023-02-18 15:39:19 +01:00
penev92
63bc73d9d2
Change the way the output directory is set during packaging
2023-02-18 15:18:35 +02:00
penev92
5c7b8955dc
Added video player background for D2k
2023-02-18 14:10:24 +01:00
penev92
2c51e791ad
Added VideoPlayerWidget.LoadAndPlayAsync method
...
Previous commits removed the async loading of videos, which can be a problem for videos played in the radar widget mid-game because it can cause a lag spike. This loads the video on a separate thread and runs it on the main thread whenever it is loaded, not blocking the main thread meanwhile and allowing the game to continue while the video loads.
Also add back cancelling of already playing video and add a check to not try to run onComplete if it is null.
2023-02-18 14:10:24 +01:00
penev92
c3fcbf77ed
Rename some VideoPlayerWidget methods for clarity
2023-02-18 14:10:24 +01:00
penev92
6321432d97
Fix crash caused by VideoPlayerWidget.DrawOverlay
...
Somehow this would divide by 0 on the next line, not crashing but resulting in an integer overflow on `overlayHeight`, which would crash when trying to render.
2023-02-18 14:10:24 +01:00
penev92
4135079290
Unify MediaGlobal/Scripting.Media PlayFMV* methods
...
- Improve consistency
- Remove dead code
- Removed AsyncAction!
- Delegate.BeginInvoke is unsupported since .NET Core and throws an "Operation is not supported on this platform." exception.
2023-02-18 14:10:24 +01:00
penev92
287428b487
Did a slight refactor pass on MediaGlobal
...
- Unified onPlayComplete callback handling to avoid code duplication.
- Fixed code style issues.
2023-02-18 14:10:24 +01:00
Paul Chote
af23888b95
Remove dependency on VCRUNTIME140.dll.
2023-02-18 14:30:56 +02:00
abcdefg30
4a554431ff
Remove redundant jumps and other style nits from the update rules
2023-02-18 00:41:07 +02:00
Paul Chote
947f53a991
Disable max order length check for local servers.
2023-02-14 10:15:21 +02:00
abcdefg30
835537fcc2
Adjust the encyclopedia descriptions of combat tanks
2023-02-14 10:09:11 +02:00
abcdefg30
08ba35763c
Adjust the encyclopedia descriptions of light armored units
2023-02-14 10:09:11 +02:00
oldnaari
14ad4e168e
Update DownloadPackageLogic.cs, to log missing files in package
2023-02-05 20:19:49 +02:00
penev92
a614375982
Fixed Makefile check of MacOS architecture
2023-02-05 00:19:05 +01:00
abcdefg30
e4bb13ea07
Throw an ArgumentException when trying to translate null keys
2023-02-03 08:31:28 +02:00
abcdefg30
84add8a03d
Fix an NRE in ConnectionLogic
2023-02-03 08:31:28 +02:00
Gustas
f5aa2f153a
Use Refinery reference in HarvesterDockSequence
2023-01-31 23:49:10 +01:00
Gustas
f56b0ea0d0
Moved HarvesterDockSequence notifications to the base class
...
And fix a minor oversight in VoxelHarvesterDockSequence.cs
2023-01-31 23:49:10 +01:00
Azarus
77b06ac9f7
Add an option to check if an actor can be captured via Lua
2023-01-30 13:46:29 +02:00
Gustas
3f2007cd2c
Optimise TakeCover to have clear states
2023-01-28 20:18:48 +01:00
michaeldgg2
6f87c565ac
AddFactionSuffixLogic: add suffix to ProductionTabsWidget.Decorations
2023-01-27 12:30:38 +02:00
michaeldgg2
949b993a4a
ProductionTabsWidget: center left/right arrow image on left/right button background
2023-01-27 12:30:38 +02:00
michaeldgg2
ca7e7c2304
ProductionTabsWidget: allow specifying different panels for left/right scroll button and tab buttons.
2023-01-27 12:30:38 +02:00
michaeldgg2
38e52c062e
ProductionTabsWidget: allow customizing left/right arrow buttons.
...
This moves initialization of Initialize getters for left/right arrow image from constructor Initialize method making it possible to override fields Decorations, DecorationScrollLeft and DecorationScrollRight after widget creation.
2023-01-27 12:30:38 +02:00
Paul Chote
8be3ac863b
Only update changed files when saving maps.
2023-01-27 07:43:25 +01:00
Dean Simmons
e1b78c4821
Only return file paths when returning zip contents
2023-01-26 19:25:58 +02:00
penev92
c1da198f5d
Fixed RA parabomb/paradrop support power tooltips
...
The AFLD's AirstrikePower@parabombs' description wasn't updated to the latest balance patch (3 Badgers -> 1 Badger)
2023-01-26 09:32:34 +01:00
penev92
474de014f8
Move RenameEngineerRepair to its proper folder
2023-01-25 12:00:57 +01:00
Matthias Mailänder
c3752d1c18
Remove engineer repairing completely.
2023-01-24 23:26:14 +01:00
Matthias Mailänder
f67b6f6cad
Give EngineerRepair(able) more generic names
2023-01-24 23:26:14 +01:00
Matthias Mailänder
9b2e291a46
Extract translation strings.
2023-01-23 20:51:45 +01:00
Matthias Mailänder
867efcc6e8
Add Media.DisplayMessageToPlayer
2023-01-23 20:51:45 +01:00
Matthias Mailänder
847bbf5710
Use out parameter modifier code style.
2023-01-23 20:51:45 +01:00
Matthias Mailänder
f013a003a0
Don't translate enemy objectives.
2023-01-23 20:51:45 +01:00
Matthias Mailänder
7cdc8c4ec5
Add a quick save button to the map editor.
2023-01-23 14:13:19 +02:00
Paul Chote
3dd1fd6b00
Add support for Flatpak Steam installs.
2023-01-22 22:39:36 +01:00
Paul Chote
e13a7aed90
Manual yaml cleanup.
2023-01-22 22:10:48 +02:00
Paul Chote
5b8f148c50
Simplify tileset-specific sequence definitions.
...
All magic behaviour for constructing sprite filenames
has been removed in favour of an explicit Filename
(and TilesetFilenames for tileset-specific sequences)
property.
2023-01-22 22:10:48 +02:00
Paul Chote
04c3cd6ec5
Reimplement sequence Defaults parsing:
...
The previous MiniYaml.Merge implementation interacted
poorly with yaml inheritance, making it complicated
(or impossible) to override certain keys from Defaults.
The new implementation is simpler: If a key is defined
it will be used. If it isn't, the default (if defined)
will be used. Defaults can be masked by making sure
the same key is defined (even with an empty value)
in the sequence.
This also fixes naming within the sequence code to
distinguish between images (a group of sequences),
sequences (defining a specific sprite/animation),
and filenames for a specific sprite/animation.
2023-01-22 22:10:48 +02:00
Paul Chote
05c83a9dbb
Fix ExtractSpriteSequenceDocsCommand crash on non-generic static fields.
2023-01-22 22:10:48 +02:00
abcdefg30
3ef0b3be95
Add the expected parameter(s) to the ExtractFilesCommand description
2023-01-22 18:31:32 +00:00
Gustas
84e7eb144b
Move RearmTick to Rearmable
2023-01-20 11:43:12 +02:00
Gustas
75d65b3d20
Remove redundant INotifyRearm
2023-01-20 10:43:18 +02:00
Gustas
12af8506f8
Fix Rearmable using the wrong interface
2023-01-20 10:43:18 +02:00
Gustas
0d24f2c08b
Merge INotifyBeingResupplied into INotifyDockClient
2023-01-20 10:43:18 +02:00
Gustas
dca07d240c
Add INotifyDockHost and INotifyDockClient interfaces
...
Rename INotifyDocking to INotifyDockHost and extract INotifyDockClient from INotifyHarvesterAction
2023-01-20 10:43:18 +02:00
N.N
ba011ffc5f
Fix deviator GrantExternalCondition Warhead
...
Warhead now applies only to enemy and neutral units.
2023-01-18 23:41:18 +01:00
RoosterDragon
faf12f93a4
Fix Locomotor cache coherency for disabled or paused mobile actors.
...
The cache in Locomotor that is populated via the UpdateCellBlocking method disagreed with the non-cached logic of IsBlockedBy when dealing with Mobile actors. The cache determined an actor to be moving if it was both movable and had horizontal movement types. IsBlockedBy determined an actor to be moving if it had horizontal movement types, but did not check if it was movable. This difference in checks could allow a mobile trait that was disabled or paused and which had horizontal movement to be treated differently be the two methods. UpdateCellBlocking would consider it not moving due to the disabled/paused trait. IsBlockedBy would consider it moving as it didn't care about the disabled/paused state of the trait.
Now, we unify the two methods to consider a mobile trait that is disabled/paused as not moving. This prevents HierarchicalPathFinder from crashing on the inconsistent state, i.e. when asked to path search through a cell of a mobile unit which has disabled or paused movement, but which has horizontal movement types from prior movement.
2023-01-17 18:58:22 +01:00
Andre Mohren
1dc44c4047
Looped sounds can now be unlooped to avoid cut-offs.
2023-01-14 13:56:20 +01:00
David Wilson
9cd3981b94
Fix to ensure Windows uninstaller removes reg entries from the 64 bit registry
2023-01-14 13:47:37 +01:00
Moath Altarawneh
44be6cea94
Update Program.cs
...
a small change to line 174 to use an easier way to format the string 👍
2023-01-14 13:02:28 +02:00
abcdefg30
5bf7fe852c
Remove the copyright year numbers
2023-01-11 11:58:54 +02:00
penev92
5f80e93aee
Added ITilesetSpecificPaletteInfo for linting
2023-01-10 16:36:36 +00:00
Gustas
80b92fb667
Fixed UnhardcodeBaseBuilderBotModule update rule
...
Update rules should should not read `modData.DefaultRules`
2023-01-10 18:02:24 +02:00
Gustas
29d21545a6
Fixed UnhardcodeSquadManager update rule
...
Update rules should should not read `modData.DefaultRules`
2023-01-10 18:02:24 +02:00
Gustas
326f8115a0
Exclude Plugs from TS protection types
2023-01-10 18:02:24 +02:00
Paul Chote
129db98a2f
Add BeforeUpdate* methods for update rules.
...
These make it possible to write more advanced update
rules that query state across multiple actors, or
based on resolved state.
2023-01-10 18:02:24 +02:00
penev92
15fe2d5594
Added an update rule for adding ControlGroups
2023-01-10 00:15:00 +01:00
penev92
e3e012a9ed
Added an update rule for DomainIndex removal
...
Also for adding the new HPF-related PathFinderOverlay and HierarchicalPathFinderOverlay that were added at the same time.
2023-01-10 00:15:00 +01:00
Ivaylo Draganov
04648a66e6
Clarify the wording and explain the meaning of some labels in settings
2023-01-09 21:47:11 +02:00
abcdefg30
edd0068d88
Remove an unuseful comment from mods/ra/installer/origin.yaml
2023-01-09 19:27:50 +01:00
Matthias Mailänder
79d786708b
Fix URL button blocking the party button.
2023-01-08 23:07:19 +01:00
Matthias Mailänder
921da2f19e
Bump DiscordRichPresence library.
2023-01-08 23:07:19 +01:00
Andre Mohren
0b94a0639e
Implemented WestwoodCompression for AUD files.
2023-01-08 12:40:57 +00:00
Gustas
fb93281beb
Fixed a spelling error in Discovery ant mission
2023-01-07 17:02:12 +01:00
Gustas
b75976b6d8
Remove bogus bridge tiles from temperate tileset
2023-01-07 17:02:12 +01:00
Matthias Mailänder
b0aea7b810
Bump checkout action.
2023-01-04 21:54:55 +00:00
Matthias Mailänder
f65c3a09db
Bump setup .NET action.
2023-01-04 21:54:55 +00:00
abcdefg30
d4d6d5b7c0
Remove custom network frame counting from ReplayConnection
2023-01-04 09:33:55 +00:00
Matthias Mailänder
56ff98a2a3
Throw specific cursor sequence errors
...
instead of dividing by zero because length is 0.
2023-01-03 13:25:50 +01:00
Paul Chote
6d438a9d61
Allow mods to customise the default rendering scale.
2022-12-31 17:11:03 +01:00
Gustas
e21f94f36a
Guarantee 1 riflemen on sell in mods
...
And engineer on RA and D2K construction yards
2022-12-31 16:51:26 +01:00
Gustas
34543e2952
Add an option to guarantee actors on sell
2022-12-31 16:51:26 +01:00
Unrud
b1ffe0edd5
Don't use parameter expansion for paths
...
It fails when the script is started with `bash package-all.sh`.
2022-12-31 16:20:55 +01:00
Matthias Mailänder
19ecddcd86
Enforce use of 'var' instead of explicit type.
2022-12-28 23:02:04 +01:00
abcdefg30
982c97dc6c
Specify targetable offsets for the repair pad in Dune 2000
2022-12-28 17:11:31 +02:00
Paul Chote
27c602fc30
Downgrade OpenAL-soft to 1.10.1.
...
1.12.2 introduces noticeable behaviour changes
to source positioning and cash ticks. This also
fixes missing sound backends on Linux.
2022-12-28 00:19:32 +01:00
Matthias Mailänder
943751547e
Don't hardcode enemy aircraft ignorance.
2022-12-25 22:24:57 +01:00
Matthias Mailänder
24ed5f7a1a
Add linting to AI squad manager types.
2022-12-25 22:24:57 +01:00
abcdefg30
0d654d5e53
Change into the correct directory before trying to push
...
Each workflow step starts back in the default directory,
so we need to checkout the repository folder again
2022-12-24 16:02:46 +01:00
abcdefg30
ffa015dc21
Let the documentation workflow fetch the required git branch
2022-12-24 16:02:46 +01:00
Paul Chote
a6eb00f326
Fix pseudo-fullscreen window size on macs with a notch.
2022-12-24 12:10:26 +01:00
abcdefg30
5a12f44a25
Fix map actors not being spawned with the correct owner
2022-12-24 11:20:35 +02:00
Matthias Mailänder
5ffb564376
Fix invalid actors not spawning in-game.
2022-12-23 18:33:55 +01:00
Matthias Mailänder
6bcf2f718c
In map editor replace invalid actor owners with neutral.
2022-12-23 18:33:55 +01:00
Paul Chote
7c2be4ce3c
Implement state prediction for lobby ready checkbox.
2022-12-23 16:33:21 +02:00
Paul Chote
25935bbe99
Implement state prediction for debug menu checkboxes.
2022-12-23 16:33:21 +02:00
Paul Chote
2ba52f1b94
Implement state prediction for lobby checkboxes.
2022-12-23 16:33:21 +02:00
Paul Chote
e2e541a251
Package macOS releases as a universal binary.
...
* Minimum macOS version is raised to 10.11.
* App bundles ship 3 versions of the runtime and engine binaries,
and a fat launcher that selects the appropriate runtime/apphost.
* Mono is used for macOS 10.11 - 10.14, or if OPENRA_PREFER_MONO
environment variable has been set.
2022-12-23 12:54:06 +02:00
Paul Chote
363a0e1d1e
Update native deps to include macOS and Linux arm64 binaries.
2022-12-23 12:54:06 +02:00
Paul Chote
80945cd08a
Report CPU arch in logs and sysinfo.
2022-12-23 12:54:06 +02:00
Paul Chote
a17e1671f0
Fix MiniYaml source locations being lost when merging.
2022-12-23 10:44:54 +02:00
Gustas
b619dd14c5
Remove sniper
2022-12-21 21:56:24 -06:00
Gustas
55cf40ec52
Added carryalls to spectator Economy statistics
2022-12-21 21:06:38 +01:00
Gustas
f3e44094a1
Fix contrail using the wrong colors
2022-12-21 19:35:52 +02:00
N.N
43094742fb
Change tile 9 to Rough TerrainType
2022-12-21 19:31:15 +02:00
abcdefg30
70549fce14
Run the CI workflow on PRs targeting prep
2022-12-21 13:28:14 +02:00
Paul Chote
360a5b293d
Bubble unhandled double-click events to OnClick.
2022-12-20 23:01:41 +01:00
RoosterDragon
f4965915ee
Fix PathFinderOverlay crash when deselecting actor moving along waypoints.
...
Set an actor moving along several waypoints whilst the /path-debug command is active, then deselect the actor. Each waypoint will add more information to the debugging overlay until it crashes with "Maximum two records permitted." This resolves the crash by no longer adding new debugging information once the actor is deselected.
2022-12-20 13:23:32 +13:00
RoosterDragon
39e48d9e8d
HPF is aware of map projection changes.
...
An event is added to Map to indicate when the cell projection is changed. This is important as this can mean Map.Contains(CPos) could now return different results for the cell. The HierarchicalPathFinder is made aware of these changes so it can rebuild any out-of-date information. This fixes prevent a crash if a cell that was previously outside the map changes height and becomes inside the map. The local path search will explore the cell as it is inside the map - but if the HPF was unaware if had been updated, it will still consider the cell to be outside the map and unreachable, resulting in a crash.
2022-12-20 09:47:24 +13:00
RoosterDragon
d8ebb96077
HPF handles searches from unreachable source cells into cut off areas.
...
If a path search is performed by the HierarchicalPathFinder when the source cell is unreachable location, a path is still allowed and starts from one of the cells adjacent to the location. If moving into one of these cells results in the actor moving into an isolated area that cannot reach the target this would previously crash as no abstract path could be found. Now we handle such locations by giving them a unreachable cost so the path search will not attempt to explore them.
Imagine a map split into two by a one tile wide line of impassable cliffs. If an actor is on top of these cliffs it is allowed to path because it can "jump off" the cliff and move into the cell immediately either side of it. However it is important which side it chooses to jump into, as one it has moved off the cliff it loses access to the other side. The previous error came about because the path might try and search on the side that couldn't reach the target location. Now we avoid that being considered.
2022-12-20 09:47:24 +13:00
Paul Chote
11e5d19f32
Prioritise primary buildings in CycleBasesHotkeyLogic.
2022-12-19 11:55:45 +02:00
Alex
82d0546d16
build: harden workflow permissions
...
Signed-off-by: Alex <aleksandrosansan@gmail.com >
2022-12-19 22:40:19 +13:00
Ivaylo Draganov
a0f17b15ec
Refactor translation files
...
- Add prefixes to all message keys to provide context
- Use messages with attributes for some UI elements (dropdowns, dialogs, checkboxes, menus)
- Rename some class fields for consistency with translation keys
2022-12-19 22:04:54 +13:00
Matthias Mailänder
46caa2d889
Make RenderShroud/JammerCircle conditional.
2022-12-19 20:03:40 +13:00
Gustas
475468ccc7
Fix Devil's Tongue attacking while submerged
2022-12-19 19:25:59 +13:00
Gustas
f3dc168dbd
Don't cancel guard cursor when holding shift
2022-12-18 15:39:12 +01:00
Matthias Mailänder
4ffd81bd41
Fix documentation deployment.
2022-12-18 12:57:08 +13:00
abcdefg30
0f149f1143
Fix the actor edit panel not always getting closed properly
2022-12-18 12:24:36 +13:00
Ivaylo Draganov
8513de0b47
Fix error in PlayerResources trait documentation
...
This was missed in #19295
2022-12-16 12:14:54 +02:00
Ivaylo Draganov
614603089e
Define and measure duration for text notifications in milliseconds
...
During a game notification duration should be the same regardless of
game speed. Switch to using wall-clock time defined in milliseconds
instead of game ticks. Also use the opportunity to rename the field
to "Duration" because "RemoveTime" is not so clear.
2022-12-15 23:28:46 +01:00
Ivaylo Draganov
e280e0f31c
Use an overload that already passes the second argument as true
2022-12-15 23:28:46 +01:00
Gustas
c739447598
Fix map editor sliders stealing focus
2022-12-14 23:53:28 +01:00
Ivaylo Draganov
e60f7bb125
Remove unused common chrome yaml file
2022-12-12 23:51:46 +01:00
Ivaylo Draganov
18e36b96db
Add HPF overlay controls to observer chrome
2022-12-12 23:51:46 +01:00
Gustas
2b57b6be1d
Don't cancel attack move cursor when holding shift
2022-12-12 23:20:45 +01:00
dnqbob
45d4a2c7e2
Fix syncreport crash caused by getting LocalClient index from ReplayConnection
2022-12-11 23:32:59 +02:00
Gustas
6fccd6be84
Fix attack move lines not showing up for undeploy on force move units
...
DeployForGrantedCondition is wrapped around the Move activity, so the AttackMoveActivity thinks that DeployForGrantedCondition is the Move activity.
All it means is that we need to forward the target line request to the Move activity
2022-12-11 22:06:47 +01:00
Smittytron
767ac1c4e2
Remove MustDestroy from longbows in Soviet 11
2022-12-10 16:16:00 +02:00
Smittytron
b14caf004d
Fix Siberian Conflict 3 win trigger
2022-12-10 16:16:00 +02:00
N.N
d72d25c369
Update D2k map pool
2022-12-07 23:39:35 +01:00
Matthias Mailänder
640e52d4b4
Report missing translation keys only once.
2022-12-07 18:40:26 +02:00
Matthias Mailänder
9ba51c6b51
Manually add game speeds to the linter.
2022-12-07 18:40:26 +02:00
Matthias Mailänder
8297fcff30
Expose lobby options to localisation.
2022-12-07 18:40:26 +02:00
Matthias Mailänder
aefa49a831
Add support for translating trait rules.
2022-12-07 18:40:26 +02:00
Matthias Mailänder
e251377f7c
Add support for translation attributes.
2022-12-07 18:40:26 +02:00
Matthias Mailänder
760a1245c5
Mark non-moddable translation strings as constant.
2022-12-07 18:40:26 +02:00
Matthias Mailänder
4f016f149f
Install libfuse2 in Ubuntu 22.04
2022-12-06 09:46:48 +02:00
abcdefg30
c14b585433
Remove a stray $ from infront of the version string when writing logs
2022-12-03 23:49:15 +02:00
Matthias Mailänder
2d78dae01a
Execute self-contained binaries with runtime as backfall
2022-12-02 23:03:40 +01:00
Gustas
b0036a2d3e
Add cell reference HPF crash messages
2022-12-02 17:46:46 +01:00
Matthias Mailänder
3091504c7e
Unify file extensions.
2022-12-01 19:52:56 +02:00
Matthias Mailänder
bd678659a2
Update Ubuntu
2022-12-01 19:52:56 +02:00
Paul Chote
06edc3dff1
Remove redundant order copies.
2022-11-27 22:58:23 +01:00
Paul Chote
c2208ce8fe
Always serialize orders.
2022-11-27 22:58:23 +01:00
Paul Chote
1add57e5ad
Fix frame number not being included in pre-serialized order packets.
2022-11-27 22:58:23 +01:00
Matthias Mailänder
435c999abf
Update notarisation to XCode 13 tooling.
2022-11-27 20:31:10 +01:00
Paul Chote
c82b8244e8
Fix display bounds when running on macbooks with a notch.
2022-11-26 20:43:57 +01:00
dnqbob
8703cfc4f4
Incease NumSyncReports to 7
2022-11-25 23:57:39 +01:00
dnqbob
63411f9938
Add Player is host infomation for a better debug of desync related with AI
2022-11-25 23:57:39 +01:00
dnqbob
60f35f779d
SyncReport filename contains index of local client
2022-11-25 23:57:39 +01:00
dnqbob
1a2ef49100
SyncReport: Output the frames recorded for better debug.
2022-11-25 23:57:39 +01:00
dnqbob
6fbdc2c221
HarvesterBotModule should not command harvesters that cannot be ordered
2022-11-24 23:09:22 +01:00
Matthias Mailänder
14b5504ea7
Show the host in the download failed error message.
2022-11-23 23:35:53 +01:00
Matthias Mailänder
6f4f0c4e8f
Fix unknown host not getting translated.
2022-11-23 23:35:53 +01:00
dnqbob
ac92162825
Weapon checks valid frozen actor
2022-11-22 21:49:12 +01:00
dnqbob
a25558b550
Weapon doesn't check warheads in IsValidAgainst
2022-11-22 21:49:12 +01:00
dnqbob
e8d9e2dfa9
Make weapon can target attacker itself an option.
2022-11-22 21:49:12 +01:00
Vapre
aa878c9dc8
ExceptionHandler, fix npe.
2022-11-22 12:35:28 +01:00
abcdefg30
7aa50d412c
Remove the unused MONO_TAG variable from the MacOS buildpackage script
2022-11-20 22:08:38 +01:00
Matthias Mailänder
69949f9d53
Revert "Scripts: Check exit status of background process"
...
This reverts commit 3f106bef72 .
2022-11-20 20:36:29 +02:00
Andre Mohren
0c8ae195ae
Removed offset and length utility commands, obsolete now.
2022-11-19 12:27:13 +01:00
Andre Mohren
e6682d2108
Added C&C Remastered installer support (Origin and Steam)
2022-11-19 12:27:13 +01:00
IceReaper
9fa6c47dc5
Added GoG and Steam SourceResolver.
2022-11-19 12:27:13 +01:00
Andre Mohren
f5b169ab54
Added ExtractMixSourceAction.
2022-11-19 12:27:13 +01:00
IceReaper
09b32f7f98
Fixed the blast decompression. Fixes #13689
2022-11-19 12:27:13 +01:00
Matthias Mailänder
621c85059e
Extract Tiberian Dawn campaign translations.
2022-11-17 22:28:07 +02:00
Matthias Mailänder
b62cf7ee9a
Add translation arguments to the Lua API.
2022-11-17 22:28:07 +02:00
Matthias Mailänder
5d118e2634
Inline variables.
2022-11-17 22:28:07 +02:00
Matthias Mailänder
807e9b5496
Don't crash Lua when the translation attempt fails.
2022-11-17 22:28:07 +02:00
IceReaper
0c47a0a710
Bugfix: mod.yaml was listing downloads as source too!
2022-11-17 21:19:57 +01:00
IceReaper
35eb246080
Replaced hardcoded SourceType with custom defined ISourceResolver.
2022-11-17 21:19:57 +01:00
IceReaper
7188f88ba1
Replaced hardcoded source actions by user defined ISourceAction.
2022-11-17 21:19:57 +01:00
IceReaper
fcc8f53b59
Installer downloads now using specified IPackageLoader.
2022-11-17 21:19:57 +01:00
Gustas
a9da6bb2d8
Introduce MinDistance to AreaBeam projectile
2022-11-17 20:48:37 +01:00
Gustas
f7286b525c
Move AbortOnResupply from AttackAircraft to AttackFollow
2022-11-17 20:42:47 +01:00
Julius Vitkauskas
4517734fbe
Dispose DependencyContextJsonReader after using
2022-11-17 20:36:13 +02:00
ThomasChr
bd882c98c7
fix Issue #20373 - Aircraft hanging midair
2022-11-17 20:27:14 +02:00
Thomas Christlieb
ed9880f801
fix misclicks through sidebar
2022-11-16 23:20:50 +01:00
IceReaper
8ae5383698
Made installer asset resolving case insensitive.
2022-11-17 00:16:59 +02:00
IceReaper
98e7058486
ZipFile is now determined by a zip header, not the file extensions, as it may be a temp file.
2022-11-17 00:16:59 +02:00
IceReaper
0aced08204
Support for InstallShield CAB version <= 5.
2022-11-17 00:16:59 +02:00
abcdefg30
e54b88a6cb
Remove dead code inside SupportPower.cs
2022-11-16 20:45:33 +02:00
RoosterDragon
b8a71215eb
Fix Locomotor IsMoving checks.
...
The Locomotor IsMoving check was allowing us to consider another actor that moving as not a blocker. However for some reason it also considered the actor trying to path being mobile as sufficient for this check to pass which did not make sense. We remove that extra check and inline the method.
This was a regression from 4a609bbee8 which changed the method from IsMovingInMyDirection (which required the lookup of the mobile trait) to just IsMoving. It should have removed the lookup as not required.
This fixes a crash in HPF which was considered the location as blocked when Locomotor considered it unblocked because the logic was not aligned. Removing this check aligns the logic and resolves the crash.
2022-11-15 15:42:02 +02:00
Vapre
7005da3592
SpriteRenderer, do not copy vertex array data each flush.
2022-11-14 23:33:24 +01:00
Gustas
243e2b2a2a
Fix cloned widgets not having default cursor set
2022-11-13 15:05:48 -06:00
RoosterDragon
a85ac26367
Pathing considers reachability of source cells consistently.
...
Using the local pathfinder, you could not find a path to an unreachable destination cell, but it was possible to find a path from an unreachable source cell if there was a reachable cells adjacent to it.
The hierarchical pathfinder did not have this behaviour and considering an unreachable source cell to block attempts to find a path.
Now, we unify the pathfinders to use a consistent behaviour, allowing paths from unreachable source cells to be found.
2022-11-13 19:59:36 +01:00
abcdefg30
bedfa622d7
Update AUTHORS
2022-11-12 07:57:12 +01:00
Gustas
0b86936dcd
Nerf player experience
2022-11-10 23:33:52 +01:00
ThomasChr
6c348620f3
Use Stop button on (production) buildings to reset rally point fixes #20414
2022-11-09 08:44:09 +02:00
Gustas
ad269555d9
Don't let the player interrupt takeoff after a succesful caryall pickup
2022-11-08 21:51:12 +01:00
Gustas
5db07097e8
Fix carryall not removing influence when cancelling land activity
2022-11-08 21:51:12 +01:00
Gustas
b401f601de
Refresh ChatDisabledUntil when entering a new server
2022-11-06 22:28:52 +01:00
Gustas
33a1bb8e6b
Don't disable chat in replays
2022-11-06 22:28:52 +01:00
Ivaylo Draganov
4ecf4f9f3f
Add a .zsync suffix to appimagecheck URL to pass appimaged checks
...
Depends on changes in the master server that rewrite the appimagecheck URL.
2022-11-06 14:00:25 +01:00
Matthias Mailänder
81020e70fa
Fix actors with immobile actors that don't occupy space
...
to be placed everywhere way outside the map boundaries.
2022-11-05 21:41:39 +01:00
Matthias Mailänder
74c35edbd9
Fix a crash when flood filling tiles outside of the map.
2022-11-04 00:10:46 +01:00
Gustas
64908c8e70
Fix RenameContrailProperties UpdateRule
2022-11-03 23:35:57 +01:00
Matthias Mailänder
889be47b23
Remove dubFinder style sheet.
2022-11-02 21:33:32 +01:00
Vapre
4fc232f2a6
Authors, anvilvapre.
2022-11-02 14:05:53 +02:00
ThomasChr
a3f8b41e25
Add dropdown for sorting maps in map chooser dialog
2022-11-01 12:08:01 +02:00
abcdefg30
c664af4fe2
Seal the Server.Connection class
...
Solves CA1816
2022-10-31 12:19:34 +01:00
abcdefg30
a00348dac1
Dispose all connections when shutting down a server
2022-10-31 12:19:34 +01:00
abcdefg30
111d9e4230
Fix replay player disconnect handling
2022-10-30 14:55:55 +01:00
Gustas
7cdc98c8fa
FIx anti-ground missiles damaging air units and vice versa
2022-10-30 14:40:39 +01:00
dnqbob
583d85cc2e
Allow weapons with no damage warheads to be fired
2022-10-30 14:38:16 +01:00
N.N
08de346e31
fix worm spawn in campaing
2022-10-30 14:32:25 +01:00
notsinned
5242716887
Fix for turret following invisible unit
...
Fixed turret tracking invisible units after being attacked
Fix for turret following invisible unit
Fix for turrent following invisible unit
2022-10-30 14:08:29 +01:00
Gustas
57143087d7
Fix Aircraft not updating influence when changing height
...
Occupied cells was defined by height yet we didn't update actor map on changing height. This in some scenarios could have caused the aircraft to forget to remove its influence from actor map
2022-10-30 14:01:32 +01:00
darkademic
f612d82797
Use MacOS 11 for release packaging.
2022-10-29 18:30:58 +02:00
Matthias Mailänder
c22b3f30bb
Log OpenRA and Operating System language on crash.
2022-10-29 13:36:36 +03:00
Matthias Mailänder
147804ac30
Inline variables.
2022-10-29 13:36:36 +03:00
EoralMilk
949ef1662d
Add mouse scroll to ProductionPaletteWidget
2022-10-28 19:33:57 +02:00
Matthias Mailänder
efe65701e4
Expose game speeds to localisation.
2022-10-27 23:30:19 +02:00
penev92
425c678cd9
Fix TD missions file not using package syntax
2022-10-24 11:45:36 +02:00
Matthias Mailänder
71956cb2a2
Documentation split release/playtest into different branches.
2022-10-21 18:54:58 +03:00
Matthias Mailänder
34ccaf6e9d
Fix a crash in Fall of Greece 1: Personal War
2022-10-21 10:42:48 -05:00
Matthias Mailänder
5c8a537efd
Fix a crash in Allies 06a.
2022-10-21 10:42:48 -05:00
abcdefg30
c100e64c8e
Update Tiberium Forest
2022-10-21 10:35:52 -05:00
Matthias Mailänder
8f415bc7af
Localize developer debug cheats.
2022-10-21 17:08:16 +02:00
Matthias Mailänder
44aaf4dd07
Localise text notifications.
2022-10-21 17:08:16 +02:00
Gustas
c041ea7d39
Crash on image/panel not found and add TryGet functions for searching
2022-10-20 19:28:02 +02:00
Gustas
e743e6dd61
Simplify boolean expressions in ProductionPaletteWidget
2022-10-20 19:20:45 +02:00
Gustas
af3d6792b8
Fix ProductionPalette ClockAnimation and NotBuildableAnimation being ignored.
2022-10-20 19:20:45 +02:00
Matthias Mailänder
bd138db9e2
Don't use header tags for non-headers.
2022-10-20 11:02:58 +03:00
Orb370
d9a8a0619c
TD-Fall-2022-Balance-Commit
2022-10-19 20:23:19 +03:00
Gustas
686f158117
Refactor BindButtonIcon
2022-10-19 18:26:24 +02:00
abcdefg30
3de0b7982e
Adjust the ZOffset of pyle to avoid clipping through the flagpole
2022-10-19 12:23:35 +02:00
abcdefg30
3f5e5e43b3
Make the exit cells of the GDI Barracks transient
2022-10-19 12:23:35 +02:00
Matthias Mailänder
5c3d4a7fe4
Return an error message for invalid cash amounts.
2022-10-18 23:16:20 +02:00
Gustas
347148e02f
Allow cash ticking sound to overlap
2022-10-18 22:36:44 +02:00
abcdefg30
fde4f8d0e5
Throw an exception when map.yaml cannot be read
2022-10-18 22:27:51 +02:00
abcdefg30
95c0846ced
Remove the filename from the undefined MapFormat exception
2022-10-18 22:27:51 +02:00
abcdefg30
40e207200a
Fix a typo in the undefined MapFormat exception message
2022-10-18 22:27:51 +02:00
Matthias Mailänder
acc2c11e69
Fix SupportPowers ClockAnimation being ignored.
2022-10-17 14:20:11 +03:00
abcdefg30
df484633f7
Update the TD map pool
2022-10-14 21:22:42 -05:00
abcdefg30
9498f067bc
Remove crate crushing from Visceroids
2022-10-14 20:56:47 -05:00
abcdefg30
625dca6435
Fix dinos not being able to crush crates
2022-10-14 20:56:47 -05:00
Gustas
3181102415
Fix default expressions in commit 75f642bd09
2022-10-14 14:15:57 +03:00
abcdefg30
6e6c828c85
Fix SquadManagerBotModule caching in RenderDebugState
2022-10-14 13:50:57 +03:00
abcdefg30
d8349a429a
Remove unnecessary uses of Exts.IsTraitEnabled
2022-10-14 13:50:57 +03:00
abcdefg30
75f642bd09
Introduce FirstEnabledConditionalTraitOrDefault
2022-10-14 13:50:57 +03:00
Gustas
858d782af1
Simplify 'default' expression (IDE0034)
2022-10-11 17:40:05 +02:00
abcdefg30
02d9ba020d
Add a workaround for unbinding script members on Mono
2022-10-10 20:27:07 +03:00
Unrud
a2a34dafde
MacOS buildpackage: Fix deduplication
...
The variable `${MOD}` was not enclosed in quotes, but the value contained a space. This caused the argument to be split into two parts.
Using **find** isn't necessary due to globbing.
2022-10-09 00:39:28 +02:00
Gustas
ab26878033
Fix MapCache mapUpdates
2022-10-08 23:08:53 +02:00
Gustas
7f677f1842
Allow driving under crates and crushable units
2022-10-07 21:06:04 +02:00
Gustas
5abbdc37cb
Revert "Fix crushables and crates causing HPF to crash."
...
This reverts commit 5765e51c56 .
2022-10-07 21:06:04 +02:00
Gustas
625dc1dd35
Fix subterranean units teleporting to surface and jump jets to ground
2022-10-06 23:03:33 +02:00
Matthias Mailänder
ee0d37f2b1
Add back the man page install
2022-10-05 22:01:04 +02:00
Matthias Mailänder
38a22ebd55
These are not Linux exclusive.
2022-10-05 22:01:04 +02:00
Gustas
043e6f662f
Make demolition conditional
2022-10-04 21:55:17 +02:00
Matthias Mailänder
eb897d755e
Add observer vision stats.
2022-10-03 20:48:18 +02:00
Ivaylo Draganov
e7dcbb3c2d
Improve translation of power/silo usage tooltip
...
- Fix an instance where "silo-usage" translation was used without
arguments
- Use the same translation reference for the "Power usage"
- Make the ResourceBarWidget accept a cached transform with the tooltip
text
so it won't have to build the string itself
- Display an infinity symbol when the infinite power cheat is used
- Removes a magic number that is no longer used (>1000000 to check for
unlimited power)
2022-10-03 12:00:42 +02:00
Gustas
ba763ac0f0
Add highlighted state to GetCachedStatefulImage
2022-10-01 16:52:04 +03:00
abcdefg30
a75818026a
Use SDL.SDL_OpenURL instead of Process.Start to open FAQ and Logs
2022-10-01 14:19:30 +03:00
Matthias Mailänder
6bd631618c
Remove unnecessary value assignment (IDE0059)
2022-10-01 14:15:33 +03:00
abcdefg30
757c4d84c7
Change the incompatible replay dialogue text from "Cancel" to "OK"
2022-09-29 23:34:59 +03:00
abcdefg30
b2498fec7d
Fix a crash when version or mod of a replay are null
2022-09-29 23:34:59 +03:00
abcdefg30
0d6a7b3c52
Add line breaks to the incompatible replay translations
2022-09-29 23:34:59 +03:00
abcdefg30
a691112c54
Update Linguini to 0.3.1
2022-09-29 23:34:59 +03:00
RoosterDragon
3c66ca709a
Fix some bugs in LongBitSet
...
- Use LongBitSetAllocator and not BitSetAllocator. Using the wrong allocator means all string based checks and displays would provide incorrect results.
- Remove LongBitSetAllocator.Mask which wasn't being calculated or Reset correctly. We can use world.AllPlayersMask to provide the same effect at use sites.
2022-09-29 21:58:17 +02:00
Matthias Mailänder
0080e98390
Fix No Players No Bots No Spectators label overlapping.
2022-09-26 22:47:33 +03:00
tomas
7b7ccf4128
Fix crash in OrderBuffer
2022-09-26 22:44:13 +03:00
Gustas
899298442a
Rename the remaining properties in ScrollItemWidget
...
BaseName: to BackGround:
2022-09-26 13:33:21 +02:00
Matthias Mailänder
f6d13baf4b
Use inline strings.
2022-09-26 11:05:15 +03:00
Matthias Mailänder
90a2b677f1
Exit with error code on invalid commands and arguments.
2022-09-26 11:05:15 +03:00
Gustas
fe72dd4140
Remove a ScrollItem header hack
...
with the merge of #20218 headers no longer need to be selected
2022-09-24 16:23:59 +02:00
Gustas
6b63114aaa
Rename ScrollWidget BaseName to Background
...
To match button
2022-09-24 16:23:59 +02:00
Gustas
5e6f14c9ee
Polish TD ScrollItemWidget
2022-09-24 16:23:59 +02:00
RoosterDragon
5765e51c56
Fix crushables and crates causing HPF to crash.
...
When crushables and crates change their Location/TopLeft, their crushability is cached, but when their CenterPosition is changed, their cached crushability is not refreshed. Since their CrushableBy functions depends on IsAtGroundLevel, which depends on the CenterPosition, this means that when the crushability is cached it will depend on the current height of the object. If the height of the object changes, the cache is not refreshed and now contains out of date information.
The Locomotor cache and the HPF both cache this same information, but at different times. HPF caches immediately, but Locomotor caches on demand which means there can be a delay. This means they can have inconsistent, differing views of the crushability information. This eventually surfaces in a "The abstract path should never be searched for an unreachable point." error from HPF when it detects the inconsistency.
The bug is that Locomotor was caching information without refreshing it when required. Fixing this to refresh the cache when the CenterPosition changes is likely to have negative performance impacts. As would removing crushability from the cache. These would both be fixes that address the underlying bug.
The high impacts of a proper fix lead us to a workaround instead. If we set the CenterPosition before setting the Location, then when the Location is set and the caches are refreshed, the new CenterPosition is available when caching the crushability information. This means logic depending on IsAtGroundLevel will get the new information and cache a more up-to-date view of things. This means when changing both the CenterPosition and Location together we now cache correct information. However calls that set only the CenterPosition and not the Location can still result in a bad cache state. Although this is imperfect it is an improvement over current affairs, and has less impact.
2022-09-24 15:15:53 +02:00
Gustas
1809817b3f
Add ContrailEndColor and Contrail transparency control
2022-09-24 13:19:22 +02:00
Gustas
d8f45714a7
Add contrail property descriptions to Bullet and Missile
2022-09-24 13:19:22 +02:00
Gustas
56b665f243
Add TrailDelay to Contrail
2022-09-24 13:19:22 +02:00
Gustas
c781eb0cab
Add pressed state to RA and TS ScrollItemWidget
2022-09-22 17:11:33 +02:00
abcdefg30
28adb915f5
Make CheckPalettes report duplicate palettes
2022-09-21 20:06:11 +02:00
abcdefg30
97c96c46f4
Only search for palette definitions on the world actor
2022-09-21 20:06:11 +02:00
abcdefg30
0bbcff973f
Only query the palette attribute once in CheckPalettes
2022-09-21 20:06:11 +02:00
N.N
ae7fc11472
Minor adjustment into the D2k
...
Minor adjustment into the D2k
- Add rally point into the Palace
- removed harvester MustBeDestroyed in campaing
- Players can see they carryalls and ornothopers under the fog.
- Increased CameraRemoveDelay on Superweapons so player can see superweapon impact.
2022-09-21 18:06:18 +02:00
RoosterDragon
70c2ec15d3
Change spaces to tabs.
...
To follow code style.
2022-09-19 23:36:30 +02:00
Unrud
3f106bef72
Scripts: Check exit status of background process
2022-09-18 10:30:58 +02:00
Unrud
5b085b6c15
Scripts: Remove obsolete comment
2022-09-18 10:30:58 +02:00
Unrud
c29f1590c9
Scripts: Remove exit stmts covered by errexit
2022-09-18 10:30:58 +02:00
Unrud
e2fd7ce7ed
Scripts: Remove some subshells that ignore errors
2022-09-18 10:30:58 +02:00
Unrud
1b9a86c0a0
Sciprts: Set pipefail or remove pipes
...
Errors in pipes are ignored otherwise
2022-09-18 10:30:58 +02:00
Unrud
946cd8f322
Scripts: Set errexit to catch errors
2022-09-18 10:30:58 +02:00
Unrud
7cd0d8c079
Scripts: Prevent paths interpreted as args
2022-09-18 10:30:58 +02:00
Unrud
ea02b90636
Scripts: Quote path variables
2022-09-18 10:30:58 +02:00
Gustas
bb2ee37cc0
Add pressed state to D2K ScrollItemWidget
2022-09-18 10:07:46 +02:00
Shrooblord
70771da45a
don't notify players a Harvester is under attack when it's actually healing
...
Co-authored-by: Gustas <37534529+PunkPun@users.noreply.github.com >
2022-09-17 18:57:59 +02:00
penev92
49ac9079a2
Renamed SpriteSequence documentation command and output file
2022-09-17 15:15:42 +02:00
penev92
04afa4a72c
Added some sorting to documentation output
2022-09-17 15:15:42 +02:00
penev92
6b98a75658
Added referencing types to enum definitions
2022-09-17 15:15:42 +02:00
penev92
07b9c941b4
Added documentation page title
2022-09-17 15:15:42 +02:00
penev92
eda3dfa50f
Added enum export to documentation generation
2022-09-17 15:15:42 +02:00
Ivaylo Draganov
a985452907
Add myself to AUTHORS
2022-09-16 09:46:20 +01:00
Zachary Schirm
1339faa5f4
Disallowed Save Map without Title and Author Input
2022-09-13 18:48:21 +03:00
Gustas
d95c6e821c
Use CachedTransform in ImageWidget
2022-09-13 16:11:18 +02:00
Matthias Mailänder
1536530f78
Add a fake .zsync suffix parameter to pass linting.
2022-09-13 13:20:05 +03:00
Matthias Mailänder
d3a8b07f05
Remove unread private member (IDE0052)
2022-09-13 10:36:57 +03:00
Gustas
43e0cca663
Prevent game from starting with unavailable map
2022-09-12 20:13:42 +02:00
Vapre
7f404f64a6
Selection, cache DeveloperMode trait.
2022-09-11 22:00:18 +03:00
Matthias Mailänder
3be0e9e8a5
Add an in-game encyclopedia to Dune 2000.
2022-09-11 20:19:58 +03:00
RoosterDragon
d2a3659078
Fix landed aircraft above ground level not removing influence on take off.
...
When the Land activity is run, the aircraft adds influence to the cell so it cannot be used by other actors. When the TakeOff activity runs, it removes the influence so the cell can be used by other actors.
However, when a Carryall picks up a unit, it is told to Land with a vertical offset - it never reaches ground level. When the TakeOff activity runs, it saw the aircraft was above ground level and bailed out. The means the influence is never removed. The cell is now unusable despite the fact the Carryall has left.
To fix this, TakeOff now checks if influence was applied instead of checking if the aircraft is above ground level. If so, we know the Land activity had decided that influence was required, even if the aircraft has not made it to ground level. When TakeOff runs, it will treat it as a proper take off event even though the aircraft is already above ground level. This means influence will be removed and the cell will become accessible as intended.
In ActorMap, we also fix a design flaw where disposed actors where excluded from queries. This caused cache inconsistencies with clients using ActorMap.CellUpdated event to rely on updates. This event will not get called when the actor was disposed, so the downsteam client may have cached the actors at that location, only for them to "change" when the actor is later disposed. This could cause the Locomotor and HierarchicalPathFInder to have inconsistent views of the actors on the map, causing crashes if the inconsistent state broken some internal invariants. The only reason to exclude disposed actors would be to cover up for the actors not being removed properly from the map, which is fixed now aircraft are handled correctly. If ever an actor isn't removed from the actor map, then the caller needs fixing rather than having the actor map exclude it.
2022-09-11 20:04:12 +03:00
Matthias Mailänder
b8e261ff2f
Code cleanup in the Tiberian Dawn Lua scripts.
...
Uppercase global variables.
Declare local variables.
Remove unused variable.
2022-09-11 19:44:38 +03:00
Matthias Mailänder
ca45e02265
Fix untranslated strings in skirmish objectives.
2022-09-10 22:58:28 +03:00
Ivaylo Draganov
3453d13188
Adjust faction label width in lobby to fit better when truncated
2022-09-10 18:26:40 +02:00
Vapre
e3aa2dc6c0
HitShape, query trait via actor cached targetable positions.
2022-09-10 18:23:12 +02:00
abcdefg30
f88b6d78ff
Move update rules from 20201213 to 20210321
2022-09-10 17:52:19 +02:00
Vapre
7754e486ee
GpsDotEffect, ShouldRender, optimization.
2022-09-10 17:49:58 +02:00
RoosterDragon
7e67889294
Fix a crash when trying to pathfind from unusable custom movement layers.
...
If a path search is attempted from a location outside the map, then PathSearch will filter these out to prevent any crashes. The path search will result in no path. However if the location is within the map but on a custom movement layer that the locomotor cannot use, this currently crashes. To fix this we apply a similar filtering logic to ignore any source locations that cannot be used, and so the path search will result in no path for these as well.
2022-09-10 15:24:25 +02:00
penev92
c52913716c
Added SpriteSequence documentation generation
2022-09-09 21:18:58 +02:00
penev92
dc8c0221e7
Fixed documentation Python script handling of null
...
The script would serialize null values as "None" in the Markdown files it produces, which is not great. It's better to leave empty strings.
2022-09-09 21:18:58 +02:00
penev92
99b27bbe7b
Added missing file extensions to asset browser
...
These are all file extensions used by the respective mods ingame, so they should be visible in the asset browser as well.
2022-09-09 16:57:22 +03:00
penev92
60b85c933e
Reorder asset browser UI's asset list and filters
2022-09-09 16:57:22 +03:00
penev92
8a38ac0d24
Added an asset type filter to AssetBrowserLogic
2022-09-09 16:57:22 +03:00
Gustas
4901de24b1
Select LastModifiedMap when entering ServerCreation
2022-09-09 14:31:25 +03:00
Gustas
81561778a2
Select LastModifiedMap when entering MissionBrowser
...
And add auto-updating to the play button
2022-09-09 14:31:25 +03:00
Gustas
63b76d1b53
Select LastModifiedMap when entering LobbyLogic
2022-09-09 14:31:25 +03:00
Gustas
02b6a260af
Make IngameMenuLogic use ShowMenu
2022-09-09 14:31:25 +03:00
Zachary Schirm
9a5d352e41
Disallow saving the game with an empty name field
2022-09-09 11:39:31 +03:00
Zachary Schirm
125a7b8c88
Disallow Join button without IP address input
...
Disallow join button without IP address Input
Closes #20234
Trying to join a server with an empty address crashes the game. This fix disallows pressing join button without ip address field input. Updated to reuse search for joinButton vs 2 separate calls to search.
2022-09-09 11:22:52 +03:00
Gustas
ee0d958cd1
Fixed incorect fluent name in MissionBrowserLogic
2022-09-08 23:45:11 +02:00
Gustas
9ae27b8e60
Fix team 0 being translated in SpawnSelectorTooltipLogic
2022-09-08 23:45:11 +02:00
Gustas
1b00cef30f
Fix a few tooltip translations being called every frame
...
in WorldTooltipLogic and IngamePowerBarLogic
2022-09-08 23:45:11 +02:00
Ivaylo Draganov
56a9acd035
Extract a couple of untranslated strings
2022-09-08 23:45:11 +02:00
dnqbob
6ccd000257
Make building and bridge repair traits public
2022-09-07 14:04:23 +02:00
Matthias Mailänder
fb5624880b
Fix sorting.
2022-09-06 20:52:04 +03:00
Matthias Mailänder
67aa0cdede
Avoid Count() when Any() could be used (CA1827)
2022-09-06 20:52:04 +03:00
Matthias Mailänder
7ba6a49378
Avoid using LINQ on indexable collections (CA1826)
2022-09-06 18:02:39 +02:00
Matthias Mailänder
68ca09e896
Fixed "bots" not getting translated in Lobby dropdowns
2022-09-05 22:35:50 +02:00
reaperrr
145f6abc09
Add option to limit render fps to game tick rate
...
This helps slow systems that struggle to render 2 frames per game tick.
2022-09-04 17:00:37 +03:00
penev92
216029dc27
Fix a crash with BlockingCollection in Connection
...
The BlockingCollection would have `IsAddingCompleted` to true, but `IsComplete` to false, slipping through the cracks and causing an InvalidOperationException ("The collection has been marked as complete with regards to additions.") when trying to add to it.
We now add a check on `(Try)SendData` to only try to add if we can. The collection is still viable for reading until empty/`IsComplete`.
2022-09-04 13:04:17 +03:00
RoosterDragon
2a681d3791
Fix HierarchicalPathFinder considering some unreachable cells as reachable.
...
When using the internal AbstractCellForLocalCell method to check if a local cell is reachable, this should return null when the cell is unreachable. If multiple abstract cells were required for that grid, this worked as intended. Only reachable cells are stored in the localCellToAbstractCell mapping. For a grid that required only a single abstract cell, which is the common case, we optimize this to store only the single abstract cell rather than the whole mapping for potentially 100 cells in that grid. However this makes no distinction between the reachable and unreachable cells, so when we check later we get incorrect results. If a cell is unreachable but belongs to the same grid as a single group of reachable cells then we incorrectly report it as reachable. The easiest way to see this incorrect behaviour is when the PathExists is called and can sometimes indicate a path exists when it does not.
To fix this, we now ensure we perform a check to see if the cell is reachable in this single layer case, this allows us to retain the optimization where we don't need to store the whole mapping, but allows us to correctly indicate when cells are unreachable.
2022-09-03 19:28:47 +02:00
Vapre
63499c6334
ShroudRenderer, fix, no shroud or fog in editor.
2022-09-03 19:20:25 +02:00
Vapre
57ce88cc9a
ShroudRenderer, fix, render Shroud if fog disabled.
2022-09-02 20:13:56 -05:00
Matthias Mailänder
e2284f660c
Add documentation to TeslaZap.
2022-09-02 19:58:48 -05:00
Matthias Mailänder
3513d37702
Fix a line break.
2022-09-02 19:58:48 -05:00
penev92
737cdd7851
Reworked trait documentation generation
...
Switched the Utility's ExtractTraitDocsCommand output to JSON.
Updated documentation generation to use that and the new Python script to generate the Markdown file, same as the Weapon documentation.
2022-09-02 20:56:55 +02:00
penev92
a522457bb6
Reworked weapon documentation generation
...
Switched the Utility's ExtractWeaponDocsCommand output to JSON.
Added a Python script to generate documentation Markdown from JSON.
2022-09-02 20:56:55 +02:00
penev92
c21bf31ebc
Fixed weapon docs not including WeaponInfo
...
Also made some code cleanups in the weapon docs export code.
2022-09-02 20:56:55 +02:00
penev92
a73d710bec
Added Util.InternalTypeName()
2022-09-02 20:56:55 +02:00
penev92
9ed2e699c6
Fix tiny error in output string
2022-09-02 20:56:55 +02:00
penev92
2f0f5f4cda
Fixed ScrollPanelWidget not resetting on Clear
2022-09-02 16:16:45 +02:00
Gustas
8402d7d476
Improved Widget.RemoveChildren performance
...
Modifying the list potentially several thousand times is really slow, so notify the child elements that they are being removed and then clear the list in one go.
2022-09-02 16:16:45 +02:00
penev92
378c447ded
Misc fixes in AssetBrowserLogic and MapOverlaysLogic
2022-09-02 16:16:45 +02:00
penev92
df836620dc
Added missing spacing to map editor dropdowns
2022-09-02 16:16:45 +02:00
Ivaylo Draganov
c1e1765c2f
Move game speed lobby dropdown before time limit dropdown
...
Game speed is the more frequently changed option and with the current
layout it was buried below the fold.
2022-09-02 16:09:05 +02:00
Matthias Mailänder
0b67b5bfae
Extract translation strings.
2022-09-02 14:41:24 +03:00
Gustas
dfd5a960ed
Fix RepairableBuilding never stopping repair
2022-09-01 18:30:47 +03:00
RoosterDragon
2d45e67bca
Teach HierarchicalPathFinder about Immovable actors.
...
By tracking updates on the ActorMap the HierarchicalPathFinder can be aware of actors moving around the map. We track a subset of immovable actors that always block. These actors can be treated as impassable obstacles just like terrain. When a path needs to be found the abstract path will guide the search around this subset of immovable actors just like it can guide the search around impassable terrain. For path searches that were previously imperformant because some immovable actors created a bottleneck that needed to be routed around, these will now be performant instead. Path searches with bottlenecks created by items such as trees, walls and buildings should see a performance improvement. Bottlenecks created by other units will not benefit.
We now maintain two sets of HPFs. One is aware of immovable actors and will be used for path searches that request BlockedByActor.Immovable, BlockedByActor.Stationary and BlockedByActor.All to guide that around the immovable obstacles. The other is aware of terrain only and will be used for searches that request BlockedByActor.None, or if an ignoreActor is provided. A new UI dropdown when using the `/hpf` command will allow switching between the visuals of the two sets.
2022-08-31 23:12:42 +02:00
RoosterDragon
7e7d94ca89
Fix Locomotor CellCache to not consider transit only cells as crushable.
...
When the UpdateCellBlocking encountered a transit-only cell (the bibs around a building) it would bail from the loop. This would leave the cellCrushablePlayers set to all players. It would update the cell cache and mark that cell as a crushable location.
When CanMoveFreelyInto would later evaluate a cell, it would consider it passable because the crushable check would pass (cellCache.Crushable.Overlaps(actor.Owner.PlayerMask)) rather than because the transit check (otherActor.OccupiesSpace is Building building && building.TransitOnlyCells().Contains(cell)) would pass.
Although this meant the cell was treated as passable in either scenario, it means the cache contained incorrect data. The cell does not contain any crushable actors but the cache would indicate it did. Correcting this means we can rely on the crushability information stored in the cache to be accurate.
2022-08-31 23:12:42 +02:00
RoosterDragon
77779023d5
Notify of shroud state changes when using DevVisibility cheat.
...
When this cheat is used by notifying of shroud changes we invoke the usual logic that would occur if the visibility had been granted by units. Without this change any cached information about the visibility is not refreshed. Without this refresh actors with different visibility may not act correctly.
One aspect this improves is frozen actors. Using the visibility cheat will show up all actors on the map. If the cheat is then disabled than frozen actors will appear in their place. Prior to this change a frozen actor would fail to appear if the cheat had caused it to be revealed. Healthbars and selection boxes are also made consistent for similar reasons.
2022-08-31 23:31:48 +03:00
RoosterDragon
1fc1bdc849
Fix frozen actors lacking tooltips if they have the cloak ability.
...
Since bbf5970bc1 we update frozen actors only when required.
In 8339c6843e a regression was fixed where actors created in line of sight would be invisible.
Here, we fix a related regression where cloaked units that are revealed, and then frozen when you move out of line of sight would lack tooltips.
The fix centers around the setting of the Hidden flag. In the old code this used CanBeViewedByPlayer which checks for visibility modifiers and then uses the default visibility. The bug with this code is that when a visibility modifier was not hiding the actor, then we would report the default visibility state instead. However the frozen visibility state applies here which means if the frozen actor is visible, then we consider the actor to be hidden and therefore tooltips will not appear. In the fixed version we only consider the modifiers. This means a visibility modifier such as Cloak can hide the frozen actor tooltips. But otherwise we do not consider the frozen actor to be hidden. This prevents a frozen actor from hiding its own tooltips in some unintended circular logic. Hidden now becomes just a flag to indicate if the visibility modifiers are overriding things, as intended.
2022-08-31 23:31:48 +03:00
Mustafa Alperen Seki
16babc1975
Fix Fog color on Radar.
2022-08-31 16:04:40 +03:00
Vapre
215898c7ec
ScriptActorInterfaces, unbind on actor destroy.
2022-08-30 21:44:39 +02:00
Gustas
fc1d8d2355
Update RA maps to format 12
2022-08-30 20:03:40 +02:00
Gustas
f98a74f70d
Update TD maps to format 12
2022-08-30 20:03:40 +02:00
Gustas
89bb800dbf
Update D2K maps to format 12
2022-08-30 20:03:40 +02:00
Gustas
09cb38bc6e
Update TS maps to format 12
2022-08-30 20:03:40 +02:00
Gustas
c40675cfba
Include map.png into uid generation
2022-08-30 20:03:40 +02:00
RoosterDragon
bcf4ff3b7c
Prevent radar crash when dealing with map height.
2022-08-30 19:58:48 +02:00
Gustas
539bb09d50
Fix shroud selector dropdown
2022-08-29 21:13:27 +03:00
Gustas
51c09ddae9
Fix Mission Group having all headers selected
2022-08-29 13:45:38 +03:00
Gustas
08dbfe0cbd
Refactor ScrollItemWidget to use stateful image names
2022-08-29 13:45:38 +03:00
Gustas
11a2e6e19b
Add more confirmation dialogue to the map editor
...
When saving on top of another map, or when saving on a map that has been edited outside the map editor
2022-08-29 12:31:01 +03:00
Gustas
d3589c051d
Add descriptions to all projectiles and warheads
2022-08-29 12:26:33 +03:00
Vapre
6e547469d6
Shroud, combine IsVisible and IsExplored into a single function.
2022-08-28 18:50:51 +02:00
Ivaylo Draganov
cc1f10dd35
Truncate faction name in lobby dropdown button
2022-08-25 10:44:17 +03:00
dnqbob
29fc2b80d9
WithMuzzleOverlay is decoration
2022-08-21 23:59:15 +02:00
Gustas
ce254f8b46
Add per player mutes
2022-08-20 14:52:49 +02:00
Gustas
81da717f19
Add chat on/off icon to glyphs
2022-08-20 14:52:49 +02:00
Gustas
16198c121c
Increase the size of ingame-info panel
...
And add an Actions section for Kick
2022-08-20 14:52:49 +02:00
Gustas
dde10249d5
Fixup faction and score info UI
...
And increase spectator name length to match regular players
2022-08-20 14:52:49 +02:00
Gustas
58fcffa429
Add anti-flood protection
2022-08-20 10:24:25 +02:00
tomas
ac623d784a
Remove Do() and replace with foreach()
2022-08-19 22:38:38 +02:00
tomas
92478a219e
Fix crash when selecting the same map
2022-08-18 00:03:50 +02:00
Gustas
3ab6d3f00a
Remove map editor debug message
2022-08-17 23:29:11 +02:00
RoosterDragon
32aaac1dc2
HierarchicalPathFinder.PathExists checks the locations are in map bounds.
...
Without this, passing locations outside the map could cause a crash instead of reporting no path.
2022-08-17 10:13:27 +03:00
Gustas
ae3a1c2561
Add truncation to FactionLabel
2022-08-16 18:58:45 +03:00
Mustafa Alperen Seki
1b1868fca6
Render every available ProductionIconOverlay.
2022-08-16 15:08:51 +03:00
Mustafa Alperen Seki
54340591e3
Unhardcode VeteranProductionIconOverlay.
2022-08-16 15:08:51 +03:00
Gustas
d438508994
Added try/catch for TypeDictionary errors in Lint code
...
TypeDictionary errors are very hard for modders to debug as they don't mention which actor is causing the error
2022-08-15 23:19:18 +02:00
Matthias Mailänder
cc58fe1a0f
Extract translation strings.
2022-08-14 16:11:51 +02:00
Matthias Mailänder
8201a57b10
Don't complain about re-usable terms not getting referenced.
2022-08-14 16:11:51 +02:00
Matthias Mailänder
2c8c6e50da
Code cleanup
2022-08-14 16:11:51 +02:00
Gustas
10ac07bf9f
Fix ChooseInitialMap
2022-08-13 17:14:21 +02:00
RoosterDragon
8339c6843e
Fix actors not being visible when created within sight range of an enemy.
...
Since bbf5970bc1 we only update frozen actor state on demand rather than every tick. However when the actor was initially created we were failing to set the initial visibility state if the frozen actor was invisible.
With this fix, we now set the visibility states on creation correctly. This fixes an issue where enemy actors created within line of sight would not appear.
2022-08-13 12:05:03 +03:00
RoosterDragon
2599cb26d8
Allow custom cost to exclude source locations in path searches.
...
During the refactoring to introduce HierarchicalPathFinder, custom costs were no longer applied to source locations. The logic being that if we are already in the source location, then there should be no cost added to it to get there - we are already there!
Path searches support the ability to go from multiple sources to a single target, but the reverse is not supported. Some callers that require a search from a single source to one of multiple targets perform their search in reverse, swapping the source and targets so they can run the search, then reversing the path they are given so things are the correct way around again. For callers that also use a custom cost like the harvester code that do this in order to find free refineries, they might want the custom cost to be applied to the source location. The harvester code uses this to filter out overloaded refineries. It wants to search from a harvester to multiple refineries, and thus reverses this in order to perform the path search. Without the custom cost being applied to the "source" locations, this filtering logic never gets applied.
To fix this, we now apply the custom cost to source locations. If the custom cost provides an invalid path, then the source location is excluded entirely. Although this seems unintuitive on its own, this allows searches done "in reverse" to work again.
2022-08-13 11:58:45 +03:00
RoosterDragon
df858e06d6
Fix HierarchicalPathFinder failing to consider multiple source locations.
...
When asked to find a path from multiple source locations, the abstract search is used to determine which source locations are viable. Source locations that cannot be reached on the abstract graph are excluded from the local path search. As we know the locations are unreachable, this prevents the local path search from expanding over the entire search space in an attempt to find these unreachable locations, preventing wasted effort.
In order to determine these reachable locations, the abstract search is expanded successively trying to reach each source location each time. However, this failed to account for a property of the ExpandToTarget for which a comment is now added. If the location was found previously, then expanding to try and find it again will fail. If the source locations were close together, it was likely that the initial expansions of the search space would have included them, and thus they would not be found on a later expansion. This would mean these locations would incorrectly be thought unreachable.
To fix this, we check if the location has already been explored (has CellStatus.Closed in the graph). If so we can check the cost to determine if it is reachable.
2022-08-13 11:58:45 +03:00
abcdefg30
f49536ea12
Use Attribute.IsDefined over GetCustomAttributes
2022-08-12 20:14:54 +02:00
Matthias Mailänder
aa14c9c570
Add VTOL landing exhaust animation.
2022-08-12 00:54:44 +03:00
Matthias Mailänder
1073a7124f
Remove an unused field from TakeOff.cs
2022-08-12 00:54:44 +03:00
Gustas
542c5dcfc3
Cleanup directional cursor yaml
2022-08-08 23:28:51 +02:00
Gustas
88e2314776
Add directional support powers to D2K ornithopters
2022-08-08 23:28:51 +02:00
Gustas
fd9758dcbf
Make game timer only blink on pause
2022-08-08 10:47:05 +02:00
RoosterDragon
bbf5970bc1
Update frozen actors only when required.
...
Previously, actors that were visible would refresh their frozen actor state every tick in preparation for the actor becoming hidden, and the frozen actor appearing as a placeholder instead.
By using ICreatesFrozenActors.OnVisibilityChanged when can avoid refreshing the state constantly, and instead just refresh it the moment the frozen actor needs to appear. This provides a nice performance improvement on the cost on managing frozen actors.
2022-08-07 16:50:53 +02:00
darkademic
e827e9952e
Additional performance graph colors so same color is not used multiple times.
2022-08-06 22:33:27 +02:00
abcdefg30
dc6be0fd77
Change the IRC link from Freenode to Libera in the issue template config
2022-08-06 16:12:25 +02:00
abcdefg30
47b6f564e3
Add a link to Discord to the PR template and change Freenode to Libera
2022-08-06 16:12:25 +02:00
abcdefg30
d830bca706
Fix force fire opportunity targets not being persisted properly
2022-08-06 15:38:46 +02:00
abcdefg30
5f86f56bed
Reduce code duplication in AttackFollow
2022-08-06 15:38:46 +02:00
abcdefg30
0134f63f4d
Fix actors with AttackFollow moving away from their targets on amove
2022-08-06 15:38:46 +02:00
Unrud
b88ebd8499
Make Red Alert SVG artwork square
...
Fix typo in height (128 instead of 138).
2022-08-04 20:02:44 +02:00
RoosterDragon
93998dc4a7
Add a PathFinderOverlay to visualize path searches.
...
Activated with the '/path-debug' chat command, this displays the explored search space and costs when searching for paths. It supports custom movement layers, bi-directional searches as well as visualizing searches over the abstract graph of the HierarchicalPathFinder. The most recent search among selected units is shown.
2022-08-03 23:12:42 +02:00
RoosterDragon
aef65d353d
Replace DomainIndex internals with a lookup from HierarchicalPathFinder instead
...
Teach HierarchicalPathFinder to keep a cache of domain indices, refreshing them only on demand and when invalidated by terrain changes. This provides an accurate and quick determination for checking if paths exist between given locations.
By exposing PathExistsForLocomotor on the IPathFinder interface, we can remove the DomainIndex trait entirely.
2022-08-03 23:12:42 +02:00
RoosterDragon
5a8f91aa21
Add a hierarchical path finder to improve pathfinding performance.
...
Replaces the existing bi-directional search between points used by the pathfinder with a guided hierarchical search. The old search was a standard A* search with a heuristic of advancing in straight line towards the target. This heuristic performs well if a mostly direct path to the target exists, it performs poorly it the path has to navigate around blockages in the terrain. The hierarchical path finder maintains a simplified, abstract graph. When a path search is performed it uses this abstract graph to inform the heuristic. Instead of moving blindly towards the target, it will instead steer around major obstacles, almost as if it had been provided a map which ensures it can move in roughly the right direction. This allows it to explore less of the area overall, improving performance.
When a path needs to steer around terrain on the map, the hierarchical path finder is able to greatly improve on the previous performance. When a path is able to proceed in a straight line, no performance benefit will be seen. If the path needs to steer around actors on the map instead of terrain (e.g. trees, buildings, units) then the same poor pathfinding performance as before will be observed.
2022-08-03 23:12:42 +02:00
abcdefg30
cea9ceb72e
Support multiple With(Turret)AimAnimation traits
2022-08-03 21:11:03 +02:00
abcdefg30
f2eb42a4b2
Make With(Turret)AimAnimation support multiple AttackBase traits
2022-08-03 21:11:03 +02:00
abcdefg30
ee3c54b572
Disallow starting a game without players
2022-08-03 21:03:46 +02:00
abcdefg30
ea72c50fb4
Fix GrantConditionOnPowerState not being usable on player actors
2022-08-03 20:58:21 +02:00
abcdefg30
1628ce64db
Fix lobby error messages from the server being untranslated
2022-08-03 20:54:13 +02:00
dnqbob
8d3ff9d2fc
UnhardcodeBaseBuilderBotModule rule update
2022-08-03 11:22:59 +02:00
dnqbob
013ec52108
Unhardcode defenses in BaseBuilderBotModule
2022-08-03 11:22:59 +02:00
Vapre
e8748200f7
Demolishable, trivial optimization.
2022-08-02 00:29:59 +03:00
Vapre
3f3687f71d
Widget, avoid copying child list when reverse iterating.
2022-07-31 22:10:49 +02:00
N.N
a9d1b771a0
Align ORA d2k to original D2k
...
Align ORA D2k weapons to better match original d2k.
2022-07-28 23:42:00 +02:00
RoosterDragon
8dec998d8f
Fix tab completion to work for all available commands.
...
Commands are registered in WorldLoaded event handlers, and IngameChatLogic takes all registered commands and provides tab completion. However IngameChatLogic is also created during WorldLoaded via LoadWidgetAtGameStart. No initialization order is enforced between commands and LoadWidgetAtGameStart, so they can appear in any order.
If a command gets registered before LoadWidgetAtGameStart runs, then it will get tab completion. If it gets registered after then no tab completion is available, even though the command can still be used and appears when using '/help'.
To fix this, we allow the tab completion to check for available commands lazily, meaning it will check for available commands every time the tab key is pressed. This means it will always have the full list of commands available regardless of the initialization order.
2022-07-26 16:42:18 +02:00
teinarss
999af0c05b
Add OrderBuffer and time synchronisation.
2022-07-26 15:09:08 +03:00
abcdefg30
4435bdec3c
Fix a crash when there is no briefing text
2022-07-25 20:19:36 -05:00
Gustas
e00887e4e1
Make support power fakes infiltratable
2022-07-25 20:07:02 -05:00
N.N
75554123f6
make ornithopter targetable
...
make ornithopter targetable by anti-air units
update to use just one Targetable type
2022-07-24 21:17:28 +02:00
Gustas
bf5bd63635
Refactor checkbox
2022-07-23 18:32:43 +02:00
Vapre
804bff1b0e
TooltipWidgetContainer, load tooltip ui only when visible.
2022-07-18 17:54:57 +02:00
Andre Mohren
0e5f33ef93
PlayerColorPalette now using the full palette if no RemapIndex is set.
2022-07-18 12:23:39 +03:00
Andre Mohren
df72d303b8
Added PaletteFromGrayscale.
2022-07-18 12:23:39 +03:00
Gustas
b597c000d6
Update LobbyLogic to use the new MapCache map tracking
2022-07-17 22:23:13 +02:00
Gustas
6bcf194874
Add map update tracking to MapCache and fix crash when restarting a game
2022-07-17 22:23:13 +02:00
AspectInteractive2
a1a50d6c98
Added rotation logic to the renderer to enable the use of Interpolated Facings.
2022-07-17 17:03:53 +02:00
Sieds Aalberts
e060d6eb05
CellLayer TryGetValue. Return a value if within cell layer bounds.
2022-07-15 20:41:26 +03:00
Gustas
a5ea98ae35
Add RAGL S12 balance
2022-07-15 19:05:41 +02:00
penev92
4f34029556
Added a missing SequenceReferenceAttribute
2022-07-15 19:23:41 +03:00
tomas
5f4ed5f16b
Update TextNotificationsManager to use Ui.Send
2022-07-15 19:19:09 +03:00
tomas
b0329aad35
Add Mediator for UI notifications
2022-07-15 19:19:09 +03:00
Matthias Mailänder
91fbd618ce
Fix a crash when encountering 0 byte .vqa placeholders.
2022-07-12 23:23:28 +02:00
Leo512bit
9e34299085
Changed anypower tag name to A Power Plant
...
Updated wording and changed cnc
Capitlazied and added TS
2022-07-11 23:31:41 +02:00
Unrud
0a36d6f995
Use python3 for gtk-dialog.py
...
As mentioned in https://github.com/OpenRA/OpenRA/pull/20059#issuecomment-1166288560
2022-07-10 18:55:25 +02:00
Unrud
678f249c63
Scripts: Disable markup in error messages
...
Error messages are displayed using the following methods:
* **zenity** parses pango markup and replaces escaped characters
* **kdialog** replaces (some) escaped characters
* **gtk-dialog.py** replaces `\n`
* **printf** interprets format strings and replaces escaped characters
* **echo** just displays the text
The error messages themself contain escaped characters and paths from variables.
This PR unifies the behavior by:
* Use **printf** to format error messages and replace escaped characters
* Setting `--no-markup` for **zenity** to disable pango markup and escaped characters
* Remove `\n` replacement from **gtk-dialog.py**.
* Use plain **echo** instead of **printf**
2022-07-10 18:55:25 +02:00
Gustas
a03e794140
Add an option to disable chat in replays
2022-07-08 19:40:04 +02:00
abcdefg30
8a98ad51fd
Fix sequences only being checked on actors with RenderSprites
2022-07-08 10:28:39 +03:00
abcdefg30
0ded8f8080
Allow null images for SmokeImage on SmudgeLayer
2022-07-08 10:28:39 +03:00
Gustas
36a86c2cd8
Nerf supply truck XP gain
2022-07-06 19:55:49 -05:00
abcdefg30
90ea611cee
Rename the 20201213 update rules directory to 20210321
2022-07-05 16:44:17 +02:00
Unrud
bd6d69c5a1
Makefile: More robust check-scripts
...
Use **xargs** to pass results of **find** instead of word splitting. Word splitting fails when filenames contain white spaces (or if no files are found).
2022-07-05 16:07:01 +02:00
abcdefg30
8e1dce4bbe
Add a lint check for maps without playable player
2022-07-05 16:01:22 +02:00
Gustas
7439f8b20a
Update AUTHORS
2022-07-05 16:12:09 +03:00
Vapre
8c042a243e
PathSearch, make TargetPredicate a readonly private field.
2022-07-04 20:34:23 +02:00
Matthias Mailänder
834de4efbe
Port to Linguini
2022-07-02 22:32:37 +01:00
Matthias Mailänder
9d8c2bb4c4
Recommend .ftl syntax highlighting.
2022-07-02 22:32:37 +01:00
Sieds Aalberts
f5de8be3f0
Rectangle equals, trivial optimization.
2022-07-02 23:40:01 +03:00
Paul Chote
c8df1e864c
Rework sequence docs plumbing.
2022-07-02 14:10:52 +03:00
Paul Chote
2037e37d4e
Replace Sequence EmbeddedPalette with HasEmbeddedPalette.
2022-07-02 14:10:52 +03:00
abcdefg30
c1822d1cef
Fix NREs in CheckUnknownWeaponFields
2022-06-26 23:46:51 +01:00
abcdefg30
82692b9d7f
Fix crashes in WeaponInfo when warheads or projectiles cannot be created
2022-06-26 23:46:51 +01:00
abcdefg30
185bef39b0
Fix "Inherits" nodes being resolved as objects during linting
2022-06-26 23:46:51 +01:00
abcdefg30
5fe166dfd3
Fix an NRE in CheckUnknownTraitFields
2022-06-26 23:46:51 +01:00
penev92
07ec2d03fb
Added an option to run utility.cmd programatically
...
And still pass arguments to Utility.exe without having to manually input them.
2022-06-26 16:14:22 +01:00
penev92
c3c5dbfa35
Unhardcoded SpriteSequence properties
...
To prepare them for documentation generation.
Also added descriptions to SpriteSequence implementations and their properties.
Also made a few code style fixes.
2022-06-26 15:41:19 +01:00
abcdefg30
d1f7fb8fb8
Serialize the actor generation for network orders
2022-06-25 18:18:49 +02:00
abcdefg30
13145557c8
Fix the switch-case formatting in Order.Deserialize
2022-06-25 18:18:49 +02:00
Mustafa Alperen Seki
c15af9f68a
Ignore nonexistent actors in D2k importer code instead of crashing.
2022-06-24 22:26:15 +01:00
Mustafa Alperen Seki
6083eb4ac8
Remove D2k CheckImportActors
2022-06-24 22:26:15 +01:00
penev92
07db77fb8d
Fix RemoveTurnToDock update rule
2022-06-24 21:16:26 +01:00
Ivaylo Draganov
5f42c7c8df
Add support for readonly hotkeys and expose chat input hotkeys
2022-06-24 19:42:53 +01:00
Matthias Mailänder
1969ae361c
Add missing ISync
2022-06-12 18:40:35 +02:00
Paul Chote
d050fe9f26
Move UnitOrderGenerator to Mods.Common.
2022-06-12 11:57:38 +02:00
Paul Chote
6eb8a4568b
Allow mods to replace UnitOrderGenerator with their own default.
2022-06-12 11:57:38 +02:00
Paul Chote
bbe068f6cb
Move IOrderGenerator to OpenRA.Orders namespace.
2022-06-12 11:57:38 +02:00
Ivaylo Draganov
320228f9d9
Add hotkeys for editor map overlays
2022-06-10 18:21:57 +02:00
Ivaylo Draganov
13ceda3259
Add hotkeys for map editor tabs
2022-06-10 18:21:57 +02:00
Ivaylo Draganov
b02a3d0f8f
Remove unused yaml node in editor chrome
2022-06-10 18:21:57 +02:00
RoosterDragon
c9ee902510
Fix issues preventing suboptimal path searches.
...
Two different issues were causing a path search to not explore cells in order of the cheapest estimated route first. This meant the search could sometimes miss a cheaper route and return a suboptimal path.
- PriorityQueue had a bug which would cause it to not check some elements when restoring the heap property of its internal data structure. Failing to do this would invalidate the heap property, meaning it would not longer return the items in correct priority order. Additional tests ensure this is covered.
- When a path search encountered the same cell again with a lower cost, it would not update the priority queue with the new cost. This meant the cell was not explored early enough as it was in the queue with its original, higher cost. Exploring other paths might close off surrounding cells, preventing the cell with the lower cost from progressing. Instead we now add a duplicate with the lower cost to ensure it gets explored at the right time. We remove the duplicate with the higher cost in CanExpand by checking for already Closed cells.
2022-06-07 15:47:02 +02:00
penev92
c1cb9ea6be
Removed an using, redundant when building on Mono
2022-06-03 21:43:43 +02:00
abcdefg30
6a31b1f9f3
Update the copyright header year
2022-05-28 00:35:10 -05:00
Matthias Mailänder
3f328a14be
Hack removal
2022-05-24 21:07:54 -05:00
Matthias Mailänder
709512b166
Add Lua API export in EmmyLua syntax.
2022-05-24 21:07:54 -05:00
RoosterDragon
550db7e958
Ensure SpawnStartingUnits initializes after Locomotor.
...
Prior to ef44c31a72 , Locomotor would be earlier in the trait initialization sequence than SpawnStartingUnits. After this commit, the initialization sequence was perturbed and SpawnStartingUnits would initialize first. When SpawnStartingUnits would query CanEnterCell this would generate a null reference as Locomotor had not yet initialized.
SpawnStartingUnitsInfo is made to initialize NotBefore LocomotorInfo to enforce the required trait ordering.
2022-05-24 12:45:03 -05:00
darkademic
1fc3785f79
Make range modifiers apply to AreaBeam projectile.
2022-05-22 19:42:23 -05:00
RoosterDragon
89042014bd
Gracefully handle trying to find paths outside the map.
...
Rather than crashing, return no path instead.
2022-05-22 17:39:44 -05:00
abcdefg30
4ec19b3486
Remove deprecated airstrike and paratrooper methods for Lua
2022-05-22 10:57:30 -05:00
abcdefg30
7ec74749be
Remove the deprecated WAngle.Range accessor for Lua
2022-05-22 10:57:30 -05:00
abcdefg30
c827d1a4ab
Remove deprecated integer facing handling for Lua
2022-05-22 10:57:30 -05:00
abcdefg30
660130653c
Use TryGetValue instead of ContainsKey and a lookup for cached sounds
2022-05-22 10:39:27 -05:00
abcdefg30
ea04a7fec5
Clear cached notifications when initializing a new map/mod
2022-05-22 10:39:27 -05:00
abcdefg30
9d481854f3
Make currentSounds readonly
2022-05-22 10:39:27 -05:00
atlimit8
85b9cf0a69
Fix fatal radar sound bug
...
The following error occurs on a map where the radar activation sound plays:
Exception has occurred: CLR/System.ArgumentException
An exception of type 'System.ArgumentException' occurred in System.Private.CoreLib.dll but was not handled in user code: 'Property set method not found.'
at System.Reflection.RuntimePropertyInfo.SetValue(Object obj, Object value, BindingFlags invokeAttr, Binder binder, Object[] index, CultureInfo culture)
at System.Reflection.RuntimePropertyInfo.SetValue(Object obj, Object value, Object[] index)
at OpenRA.FieldLoader.LoadField(Object target, String key, String value) in /home/jason/git/OpenRA/OpenRA.Game/FieldLoader.cs:line 609
at OpenRA.WidgetLoader.LoadWidget(WidgetArgs args, Widget parent, MiniYamlNode node) in /home/jason/git/OpenRA/OpenRA.Game/Widgets/WidgetLoader.cs:line 60
at OpenRA.WidgetLoader.LoadWidget(WidgetArgs args, Widget parent, MiniYamlNode node) in /home/jason/git/OpenRA/OpenRA.Game/Widgets/WidgetLoader.cs:line 67
at OpenRA.WidgetLoader.LoadWidget(WidgetArgs args, Widget parent, MiniYamlNode node) in /home/jason/git/OpenRA/OpenRA.Game/Widgets/WidgetLoader.cs:line 67
at OpenRA.WidgetLoader.LoadWidget(WidgetArgs args, Widget parent, MiniYamlNode node) in /home/jason/git/OpenRA/OpenRA.Game/Widgets/WidgetLoader.cs:line 67
at OpenRA.WidgetLoader.LoadWidget(WidgetArgs args, Widget parent, String w) in /home/jason/git/OpenRA/OpenRA.Game/Widgets/WidgetLoader.cs:line 43
at OpenRA.Game.LoadWidget(World world, String id, Widget parent, WidgetArgs args) in /home/jason/git/OpenRA/OpenRA.Game/Game.cs:line 160
at OpenRA.Mods.Common.Widgets.Logic.LoadIngamePlayerOrObserverUILogic..ctor(Widget widget, World world) in /home/jason/git/OpenRA/OpenRA.Mods.Common/Widgets/Logic/Ingame/LoadIngamePlayerOrObserverUILogic.cs:line 34
2022-05-21 16:10:08 +02:00
Eduardo Cáceres
a1811b4b04
Add fixed issues as warnings to .editorconfig
2022-05-18 11:42:36 -05:00
Eduardo Cáceres
c224bfdc0d
Include name in authors
2022-05-18 11:42:36 -05:00
Eduardo Cáceres
8ced155ca3
Simplify 'always true' expressions
...
Co-authored-by: atlimit8 <atlimit8-vcs@gmx.com >
2022-05-18 11:42:36 -05:00
Eduardo Cáceres
aa998a46d9
Simplify collection initialization
2022-05-18 11:42:36 -05:00
Eduardo Cáceres
cae43808d9
Optimize string comparison
2022-05-18 11:42:36 -05:00
Eduardo Cáceres
c0d270b87d
Abstract class with public constructor
2022-05-18 11:42:36 -05:00
Eduardo Cáceres
1b69ff017d
Dictionary optimization
2022-05-18 11:42:36 -05:00
Eduardo Cáceres
b71402f64d
Convert extension in real extension
2022-05-18 11:42:36 -05:00
Eduardo Cáceres
2677e9c013
Use pattern matching
2022-05-18 11:42:36 -05:00
Eduardo Cáceres
aed2b8afae
Remove unnecessarily interpolated strings
2022-05-18 11:42:36 -05:00
Eduardo Cáceres
7eb64ea6fc
Use read-only autoimplemented property when possible
2022-05-18 11:42:36 -05:00
Eduardo Cáceres
79f321cb44
.Any(), .Count() -> .Count or .Length
2022-05-18 11:42:36 -05:00
penev92
6eb4fe8980
Added a VSCode task to run the utility
2022-05-15 23:06:25 -05:00
penev92
9a30d260a1
Added launch profiles for the Utility project
2022-05-15 23:06:25 -05:00
abcdefg30
581b5cfacf
Resolve an IDE0017 warning in ImportLegacyMapCommand
2022-05-11 15:33:23 +02:00
Paul Chote
c6dc0b58be
Change macOS control group defaults back to Cmd.
2022-05-09 14:58:01 +02:00
Ivaylo Draganov
6a1a6b6397
Add platform override support for hotkeys and unhardcode editor hotkeys
2022-05-07 20:55:49 +01:00
Ivaylo Draganov
1cf4838b08
Remove unneeded yaml nodes from hotkey settings
2022-05-03 22:22:55 +02:00
Ivaylo Draganov
f0e69c3f64
Add hotkey filtering functionality (by name and by context)
2022-05-03 22:22:55 +02:00
Paul Chote
56153aac9f
Search x86_64 before other multiarch dirs.
2022-05-01 11:55:28 +02:00
Leo512bit
ddef76e833
Added more thief voice lines
2022-04-30 17:19:48 -05:00
Ivaylo Draganov
0522576f73
Allow scrolling of settings panels while hovering a section header
2022-04-30 21:46:55 +02:00
abcdefg30
512eaf2746
Use Building instead of D2kBuilding for the Sietch actor
2022-04-30 12:28:28 -05:00
RoosterDragon
714b38c97c
Add CellCostChanged event to Locomotor.
...
This event allows subscribers to be made aware when the terrain costs for a cell change.
2022-04-30 15:56:04 +02:00
Ivaylo Draganov
bc676fbf78
Add text notifications to many in-game events
2022-04-30 12:39:29 +01:00
Ivaylo Draganov
ea0bcbd1cc
Adjust position of transients panel in TS
2022-04-30 12:39:29 +01:00
Ivaylo Draganov
24b9482cc1
Add support for transient text notifications matching speech notifications
2022-04-30 12:39:29 +01:00
Ivaylo Draganov
9f723be65a
Add checkbox to settings for toggling transient notifications
2022-04-30 12:39:29 +01:00
Ivaylo Draganov
a1e6ac85dc
Add transient notifications pool
2022-04-30 12:39:29 +01:00
RoosterDragon
e22b6de4e8
Rename PathGraph to MapPathGraph.
...
Move PathCostForInvalidPath and MovementCostForUnreachableCell constants into a new static class, PathGraph.
2022-04-27 23:19:59 +02:00
RoosterDragon
a1a583ea0a
Split out a base class for PathGraph.
...
Move the domain logic involved into a base class named DensePathGraph. The base class contains all the domain logic necessary to traverse a graph including concepts such as custom movement layer.
PathGraph becomes responsible for proving a backing array for the pathfinding information, and is where the pooling logic lives instead, helping split the two concepts out.
2022-04-27 23:19:59 +02:00
penev92
86515610a5
Made all projectile and warhead fields readonly
...
This came up while working on the new documentation generation and comparing the results to ORAIDE's own code parser.
2022-04-26 22:37:12 +02:00
penev92
2bac492a65
Made all traitInfo fields readonly
...
This came up while working on the new documentation generation and comparing the results to ORAIDE's own code parser.
2022-04-26 22:37:12 +02:00
Gustas
135823fced
fix crash when non-host exits map chooser
2022-04-25 23:03:27 +02:00
Paul Chote
a152bf7324
Replace custom mono defines with toolchain-provided defines.
2022-04-24 20:31:47 +02:00
RoosterDragon
3e5666ca53
Return an empty path when a search with no locations is made.
...
The restores the previous behaviour before FindUnitPathToTargetCell was introduced. This prevents callers such as the harvester code crashing when a harvester tries to route home to a refinery, but there are no refineries.
2022-04-24 12:52:18 +02:00
RoosterDragon
7df39f3522
On Locomotor initialization, update blocked cells.
...
Prior to ef44c31a72 , Locomotor would be earlier in the trait initialization sequence than SpawnMapActors. Locomotor would assume no actors on the map, and register to update blocked cells when new ones were added. When SpawnMapActors created actors, Locomotor was made aware and kept up-to-date.
After this commit, the initialization sequence was perturbed and SpawnMapActors would initialize first. Locomotor would assume no actors on the map and thus be unaware of these starting units, meaning those starting units would not cause blocking, allowing units to pass through them.
There are two possible fixes. SpawnMapActorsInfo can initialize NotBefore<LocomotorInfo>, enforcing that actors are spawned after locomotor is ready. Or we can remove the assumption in Locomotor that the map starts empty, and have it update blocked cells on startup. The latter seems cleaner, so any other traits that may want to spawn actors don't have to be aware sequencing their initialization with the Locomotor trait, instead things would "just work".
2022-04-24 12:48:52 +02:00
Matthias Mailänder
4c08e449e0
Fix master server respond not being localized.
2022-04-23 22:29:40 +01:00
Paul Chote
0dbd8264b8
Handle exceptions thrown by HttpClient.GetAsync.
2022-04-23 22:44:05 +02:00
Matthias Mailänder
6c81590b20
Extract translation strings.
2022-04-21 13:26:55 +03:00
Matthias Mailänder
99033ab016
Localize dedicated server messages.
2022-04-21 13:26:55 +03:00
Matthias Mailänder
fe15748cc0
Wrap console logging with time stamp.
2022-04-21 13:26:55 +03:00
Matthias Mailänder
aaa3b49496
Update Mono.NAT
2022-04-21 13:11:45 +03:00
RoosterDragon
ecb7c16751
Tweak handling of nullable types in LUA doc generation.
...
The types for Int32 and Boolean are currently replaced with friendly names of int and bool for the docs. Ensure we apply the same handling when these are nullable types, changing the output from Int32? and Boolean? to int? and bool?
2022-04-18 13:02:05 +02:00
RoosterDragon
d2935672ca
Fix the shape of the IPathFinder interface, ensure all path searches use it.
...
Some path searches, using PathSearch, were created directly at the callsite rather than using the pathfinder trait. This means some searches did not not benefit from the performance checks done in the pathfinder trait. It also means the pathfinder trait was not responsible for all pathing done in the game. Fix this with the following changes:
- Create a sensible shape for the IPathFinder interface and promote it to a trait interface, allowing theoretical replacements of the implementation. Ensure none of the concrete classes in OpenRA.Mods.Common.Pathfinder are exposed in the interface to ensure this is possible.
- Update the PathFinder class to implement the interface, and update several callsites manually running pathfinding code to instead call the IPathFinder interface.
- Overall, this allows any implementation of the IPathFinder interface to intercept and control all path searching performed by the game. Previously some searches would not have used it, and no alternate implementations were possible as the existing implementation was hardcoded into the interface shape.
Additionally:
- Move the responsibility of finding paths on completed path searches from pathfinder to path search, which is a more sensible location.
- Clean up the pathfinder pre-search optimizations.
2022-04-18 11:18:43 +01:00
RoosterDragon
2583a7af31
After NotBefore<> support to control initialization order.
...
Requires<T> means that trait of type T will be initialized first, and asserts that at least one exists. The new NotBefore<T> means that trait of type T will be initialized first, but allows no traits.
This allows traits to control initialization order for optional dependencies. They want to be initialized second so they can rely on the dependencies having been initialized. But if the dependencies are optional then to not throw if none are present.
We apply this to Locomotor which was previously using AddFrameEndTask to work around trait order initialization. This improves the user experience as the initialization is applied whilst the loading screen is still visible, rather than the game starting and creating jank by performing initialization on the first tick.
2022-04-18 10:31:47 +01:00
Mustafa Alperen Seki
62e7c7a318
Make PortableChrono PausableConditional.
2022-04-17 12:14:50 +02:00
Mustafa Alperen Seki
9de8d8854d
Pass PortableChrono instead of PortableChronoInfo to PortableChronoOrderGenerator.
2022-04-17 12:14:50 +02:00
Matthias Mailänder
648c56bca1
Don't crash when joining a game after asset installation.
2022-04-17 00:27:36 +03:00
Matthias Mailänder
0f90713aba
Added addition error logging to graphics.log when SDL fails
2022-04-16 22:37:05 +02:00
Mustafa Alperen Seki
30f14dcc4c
Fix Army Spectator tab not using FactionImages.
2022-04-15 18:17:49 +02:00
RoosterDragon
ac0969d688
Use nameof instead of hardcoded strings in reflection calls.
...
This helps improve the safety of code the uses reflection when methods may get renamed, and helps navigating code as the nameof will show up when searching for references to members.
2022-04-14 19:58:15 +02:00
Gustas
b254eb0f3d
Add dynamic map refresh
2022-04-14 16:16:38 +02:00
Gustas
61df7974b0
Make the delete button not call MapCache every frame
2022-04-14 16:16:38 +02:00
tomas
515aba0ee7
Update SDL to 2.0.20
2022-04-13 20:13:01 +02:00
Matthias Mailänder
af3362c62f
Use string.Contains(char) instead of string.Contains(string)
...
with single characters
2022-04-13 20:09:57 +02:00
Matthias Mailänder
3bc28ba6e2
Use inline string replacement.
2022-04-13 20:09:57 +02:00
dnqbob
4f43b157a8
Add place variant building for BaseBuilderBotModule.
...
1. If it follow the refinery placing logic, then we can use Facings in PlaceBuildingVariants to help BaseBuilderBotModule "rotates" it to minefield.
2. If it is a normal building, BaseBuilderBotModule will place a random variant actor.
2022-04-12 22:28:03 +02:00
penev92
f74d1c3cf8
Adjusted D2k mission player colors
...
PlayerReference colors in D2k missions only affect chat text and minimap colors because actors use specific palette colors.
So using the colors from the original game's minimap.
2022-04-12 22:15:02 +02:00
penev92
2866342522
Add missing PlayerReferences in D2k map import
2022-04-12 22:15:02 +02:00
tomas
8e19463450
Fix desync handling
2022-04-12 21:56:46 +02:00
abcdefg30
dab8ee4f94
Load campaign and utils Lua scripts before map scripts
2022-04-12 21:54:11 +02:00
Mustafa Alperen Seki
c71af0e613
Make NukePower MissileImage optional.
2022-04-12 21:52:29 +02:00
Mustafa Alperen Seki
60b123c641
Split NukePower MissileImage from MissileWeapon.
2022-04-12 21:52:29 +02:00
Matthias Mailänder
0260884369
Added translation support for server orders.
2022-04-03 19:23:26 +02:00
Matthias Mailänder
ee95d2591f
Code cleanup.
2022-04-03 19:23:26 +02:00
Matthias Mailänder
7735107deb
Add a script trigger overlay.
2022-04-02 18:01:00 +02:00
Matthias Mailänder
058fb51f4c
Reduce the menu button size to save space.
2022-04-02 18:01:00 +02:00
Matthias Mailänder
0e7ad43425
Remove unused parameters.
2022-04-01 23:30:26 +02:00
RoosterDragon
ea243b8558
Fix crash in TSEditorResourceLayer when adding resources.
...
Ensure cells are within map bounds when checking if adjacent cells should be cleared during resource placement.
2022-03-26 23:07:41 +01:00
abcdefg30
e685731b33
Add an update rule for the removal of AttackFrontal's FacingTolerance
2022-03-13 11:16:47 +01:00
abcdefg30
889425ab0f
Remove AttackFrontal's FacingTolerance and define it explicitly in rules
2022-03-13 11:16:47 +01:00
dnqbob
9049ae6f20
Add a backawrd moving option for mobile
2022-03-13 10:46:04 +01:00
Vapre
83357af14c
WorldRenderer, replace foreach ActorsWithTraits with ApplyToActorsWithTrait. #18798 .
2022-03-13 10:45:01 +01:00
Matthias Mailänder
00356b8bbd
Setup Tiberian Sun forest fires.
2022-03-12 17:16:43 +01:00
Mustafa Alperen Seki
b54a724aea
Add ability to override CannotPlaceNotification per queue.
2022-03-12 12:55:41 +01:00
Matthias Mailänder
a6cb20a4ec
Fix overlapping tracks when vehicle rotates.
...
Also optimize the function slightly.
2022-03-12 12:53:59 +01:00
Matthias Mailänder
5220da1bae
This can never be null.
2022-03-12 12:53:59 +01:00
Mustafa Alperen Seki
2f1edd4516
Remove Replacable actors for LineBuild too.
2022-03-11 22:32:08 +01:00
Mustafa Alperen Seki
a7004b2db7
Check for placeablilty of LineBuild Segment instead of the Post.
2022-03-11 22:32:08 +01:00
Mustafa Alperen Seki
153bd14f9e
Add Force-Move undeploy to D2k Thumper Infantry.
2022-03-11 22:29:45 +01:00
Leo512bit
d2611ebfb4
Added fsmap to music.ymal and set the lose music to it.
...
Signed-off-by: Leo512bit <leonardmatthewteyssier@gmail.com >
2022-03-11 21:36:43 +01:00
Ivaylo Draganov
eadc8ad689
Change color of labels that correspond to disabled inputs
...
- Add a new widget type for input and extend it from other input widgets
- Add a new label type that can be linked to an input widget
- Change the label color when the input's disabled state changes
2022-03-07 21:01:33 +01:00
Mustafa Alperen Seki
0203476da9
Update variables for Flash lua function.
2022-03-05 15:19:01 +01:00
Mustafa Alperen Seki
7e4c3acda3
Fix ZRamp only allowing integer values.
2022-03-02 19:41:49 +01:00
darkademic
e082497a1a
Corrected StartBurstReport sound synchronisation when used with FireDelay.
2022-02-26 10:40:19 -06:00
Matthias Mailänder
9605e5ad9c
Use the new MiniYAML GitHub syntax.
2022-02-26 17:04:50 +01:00
Matthias Mailänder
da4fb27fca
Use modern string syntax.
2022-02-26 17:04:50 +01:00
penev92
57d3321d0f
Make WithDockingAnimation optional
...
The `Refinery` trait has a hardcoded usage of `SpriteHarvesterDockSequence`, which requires the harvester to have `WithDockingAnimation`, making it inconvenient-at-best to NOT have a docking/unloading animation.
2022-02-23 22:06:07 +01:00
IceReaper
fa8bfc6ca0
Allow mods to implement new building placement conditions and cursors.
2022-02-22 01:20:38 +02:00
penev92
0f1ff3f2fc
Recommend the MiniYAML language server extension
...
Recommends https://marketplace.visualstudio.com/items?itemName=openra.oraide-vscode as a VSCode extension for the OpenRA workspace.
2022-02-20 16:30:38 +01:00
Mustafa Alperen Seki
91f626c42a
Make WithVoxelWalkerBody PausableConditional.
2022-02-18 12:24:23 +01:00
dnqbob
6c33d47ef3
Update rule on renaming 'CloakTypes' to 'DetectionTypes'
2022-02-12 19:30:21 +01:00
dnqbob
831bed2c4d
Add enter-cloak & exit-cloak effect for Cloak
2022-02-12 19:30:21 +01:00
RoosterDragon
d67f696bd0
Move BlockedByActor, IPositionableInfo, IPositionable to Mods.Common.
...
Actor previously cached targetable locations for static actors as an optimization. As we can no longer reference the IPositionable interface, move this optimization to HitShape instead. Although we lose some of the efficiency of caching the final result on the actor, we gain some by allowing HitShape to cache the results as long as they have not changed. So instead of being limited to static actors, we can extend the caching to currently stationary actor.
2022-02-11 23:35:08 +01:00
RoosterDragon
d8a4d7fd1d
Cache the global mix database in MixLoader
...
We can reuse this global database as it doesn't change, rather than loading a new copy each time a new mix file is parsed.
2022-02-11 14:05:55 +01:00
RoosterDragon
f5d1fe4bc4
Use more efficient search in MergeIntoResolved
...
Switch Enumerable.FirstOrDefault to List.Find. The latter can avoid some allocations because the concrete collection type is known.
2022-02-11 14:01:16 +01:00
RoosterDragon
ed72e61f8f
Add detailed documentation for BlockedByActor enum.
2022-02-08 23:34:07 +01:00
RoosterDragon
9cd55df584
Ensure editorconfig naming styles align with StyleCop SA13XX style rules.
...
Aligns the naming conventions defined in editorconfig (dotnet_naming_style, dotnet_naming_symbols, dotnet_naming_rule) which are reported under the IDE1006 rule with the existing StyleCop rules from the SA13XX range.
This ensures the two rulesets agree when rejecting and accepting naming conventions within the IDE, with a few edges cases where only one ruleset can enforce the convention. IDE1006 allows use to specify a naming convention for type parameters, const locals and protected readonly fields which SA13XX cannot enforce. Some StyleCop SA13XX rules such as SA1309 'Field names should not begin with underscore' are not possible to enforce with the naming rules of IDE1006.
Therefore we enable the IDE1006 as a build time warning to enforce conventions and extend them. We disable SA13XX rules that can now be covered by IDE1006 to avoid double-reporting but leave the remaining SA13XX rules that cover additional cases enabled.
We also re-enable the SA1311 rule convention but enforce it via IDE1006, requiring some violations to be fixed or duplication of existing suppressions. Most violations fixes are trivial renames with the following exception. In ActorInitializer.cs, we prefer to make the fields private instead. ValueActorInit provides a publicly accessible property for access and OwnerInit provides a publicly accessible method. Health.cs is adjusted to access the property base instead when overriding. The reflection calls must be adjusted to target the base class specifically, as searching for a private field from the derived class will fail to locate it on the base class.
Unused suppressions were removed.
2022-02-07 19:14:45 +01:00
Gustas
13ee62c181
Make overlay dropdown optional
2022-02-06 19:21:43 +01:00
Gustas
addfdf50fa
Crash when EditorWorld does not have BuildableTerrainOverlay
2022-02-06 19:21:43 +01:00
reaperrr
a17af87a5e
Fix aircraft with TakeOffOnCreation=false not freeing exit
...
...when another actor gets produced.
2022-02-06 19:20:29 +01:00
reaperrr
44fc4a1d0f
Fix random placement of AssociateWithAirfieldActivity
...
It doesn't belong to IMove, so it doesn't belong into that region.
Put it near ICreationActivity where it belongs.
2022-02-06 19:20:29 +01:00
darkademic
257ef95963
Suffix projectile shadow palettes with player name if IsPlayerPalette = true.
2022-02-06 19:18:59 +01:00
Matthias Mailänder
9bb41630e7
Update documentation action to .NET 6
2022-02-06 18:06:44 +01:00
Ivaylo Draganov
f5ab9d95fe
Make remove from control group hotkey available only to players
2022-02-06 09:09:33 -06:00
Mustafa Alperen Seki
c096934db8
Fix projectile shadow alpha calculation.
2022-02-04 23:35:44 +01:00
Ivaylo Draganov
1813edc74b
Add contexts for hotkey validation
2022-02-04 18:49:05 +01:00
RoosterDragon
1bc95a290f
Preallocate dictionary size in ToDictionaryWithConflictLog
2022-02-02 15:10:37 +01:00
Smittytron
74cced319c
Change terrain type of clear straight bridge tiles
2022-01-31 14:19:47 +01:00
RoosterDragon
bd30c66f95
Reuse object arrays in FieldLoader Parse methods
2022-01-30 19:47:06 +01:00
RoosterDragon
2ab3917f29
Clean up usage of DomainIndex
...
- When a path search is being performed the path search will not attempt route to inaccessible cells, so domain index checks to avoid inaccessible cells in the search predicate are redundant and can be removed.
- DomainIndex is a required world trait, so we don't need to use TraitOrDefault and therefore can avoid dealing with the null case.
2022-01-30 16:22:26 +01:00
Matthias Mailänder
4b4b0125a2
Make UnitsInRange accessible to mod code.
2022-01-30 11:56:43 +01:00
Matthias Mailänder
240c96b781
Expose sprite sequence to linting and documentation.
2022-01-30 11:56:43 +01:00
RoosterDragon
6dc189b7d1
Rearrange various API surfaces related to pathfinding.
...
The existing APIs surfaces for pathfinding are in a wonky shape. We rearrange various responsibilities to better locations and simplify some abstractions that aren't providing value.
- IPathSearch, BasePathSearch and PathSearch are combined into only PathSearch. Its role is now to run a search space over a graph, maintaining the open queue and evaluating the provided heuristic function. The builder-like methods (WithHeuristic, Reverse, FromPoint, etc) are removed in favour of optional parameters in static creation methods. This removes confusion between the builder-aspect and the search function itself. It also becomes responsible for applying the heuristic weight to the heuristic. This fixes an issue where an externally provided heuristic ignored the weighting adjustment, as previously the weight was baked into the default heuristic only.
- Reduce the IGraph interface to the concepts of nodes and edges. Make it non-generic as it is specifically for pathfinding, and rename to IPathGraph accordingly. This is sufficient for a PathSearch to perform a search over any given IGraph. The various customization options are concrete properties of PathGraph only.
- PathFinder does not need to deal with disposal of the search/graph, that is the caller's responsibility.
- Remove CustomBlock from PathGraph as it was unused.
- Remove FindUnitPathToRange as it was unused.
- Use PathFinder.NoPath as the single helper to represent no/empty paths.
2022-01-30 11:47:52 +01:00
Matthias Mailänder
cd1fe2d23b
Fix saving into writable system directories.
2022-01-30 11:46:42 +01:00
abcdefg30
2af8296f48
Add the possibility to always show detection circles
2022-01-30 11:41:02 +01:00
abcdefg30
7c085e49c7
Cache DetectCloaked traits in RenderDetectionCircle
2022-01-30 11:41:02 +01:00
xan2622
13fbc412d2
removal
2022-01-30 11:28:16 +01:00
abcdefg30
a9cd2d41c7
Fix ToAhsv using the wrong type for alpha
2022-01-29 13:44:02 +01:00
Ivaylo Draganov
7a93b9ea8c
Make control group hotkeys configurable
...
- Split control groups management to its own interface
- Add hotkeys for selecting, creating, adding to and combining with control groups
- Add a ControlGroups widget to manage the player interaction
2022-01-28 18:38:18 +01:00
Gustas
04b456d6c2
Create overlays dropdown
2022-01-26 23:09:18 +01:00
Gustas
2f130b17ba
Fix buildable overlay not updating and make ramps unbuildable
2022-01-23 22:37:02 +01:00
penev92
9cc631ca7e
Added a rule about using object initializers
2022-01-23 13:14:57 +01:00
penev92
ab09ce21b4
Changed code to use object initializers everywhere
2022-01-23 13:14:57 +01:00
penev92
70e2769a85
Added a rule about the readonly modifier
...
Also added a rule to silence StyleCop complaining about StaticReadonlyFieldsMustBeginWithUpperCaseLetter to match what we already have configured for the IDE.
2022-01-22 18:47:06 +00:00
penev92
bf332b6619
Fixed fields missing the readonly modifier
2022-01-22 18:47:06 +00:00
Piotr Usewicz
f83e27d647
Point towards arm libraries
...
When compiling for macOS using `unix-generic` on Apple M1 processors, point sarchdirs towards the correct location in Homebrew for arm64.
2022-01-22 18:21:36 +00:00
penev92
a67cfabd1e
Reordered code style rules
...
To order them by their number.
2022-01-20 22:10:28 +01:00
penev92
8dbaa0c49f
Added more explanations to .editorconfig
2022-01-20 22:10:28 +01:00
penev92
92d1d64dce
Changed one-liner braces rule to silent
...
Having this set to "none" disabled the IDE's option to add braces, whereas "silent" lets it do it on the user's request while still not suggesting it on its own.
2022-01-20 22:10:28 +01:00
penev92
31b3647c09
Added a rule about unordered modifiers
2022-01-20 22:10:28 +01:00
penev92
d37336456d
Fixed inconsistent declaration modifier order
2022-01-20 22:10:28 +01:00
penev92
3bacd81b8b
Added a rule about zero-length array allocations
2022-01-20 22:10:28 +01:00
penev92
0d24ccc47a
Fixed unnecessary zero-length array allocations
...
Changed all currently present zero-length array allocations in the codebase to use `Array.Empty` instead.
2022-01-20 22:10:28 +01:00
Paul Chote
1312c1aa72
Rename macOS compat packages to mono.
2022-01-20 19:31:43 +01:00
penev92
19dd23e349
Beautified the .editorconfig file
2022-01-19 14:37:14 +01:00
dnqbob
242d589c45
Make AI airstrike aircraft spawns randomly
2022-01-17 15:43:20 +01:00
Mustafa Alperen Seki
d149624b84
Add Lua Scripting for Carryall.
2022-01-12 14:24:13 +01:00
penev92
860ec642b8
Addressed review comments
...
- Renamed `IVideo.CurrentFrameNumber` to `CurrentFrameIndex`
- Improved logged error message in VideoPlayerWidget
- Renumbered fields in ThreadedGraphicsContext
2022-01-11 18:16:31 +01:00
penev92
248b8d1102
Renamed IVideo implementations
...
To match the interface they are implementing.
2022-01-11 18:16:31 +01:00
penev92
6f0509d235
Removed now-unused ITexture.SetData() overload
2022-01-11 18:16:31 +01:00
penev92
cb8530fbae
Reworked internal palettes in video reader classes
...
This removes the need to pack & unpack color bytes as uints for no gain.
2022-01-11 18:16:31 +01:00
penev92
c4ab7041b8
Updated VideoPlayerWidget to play new IVideo data
...
Added optional padding to video frames because that's what VideoPlayerWidget expects.
Keeping the option to not use padding for other use-cases like converting frames to PNG.
2022-01-11 18:16:31 +01:00
penev92
ee29d0f9c7
Changed IVideo.CurrentFrameData uint[,] -> byte[]
2022-01-11 18:16:31 +01:00
penev92
1b5f2f1b39
Removed caching properties from video readers
...
Those seem redundant since the frame number is guaranteed to match the loaded data inside CurrentFrameData.
2022-01-11 18:16:31 +01:00
penev92
0df3b34c52
Did a beautification pass on IVideo and family
...
Removed property backing fields where applicable, introduced C#7 syntax for properties.
Renamed a bunch of interface properties and class private members with more descriptive names.
Did some inconsequential reordering.
2022-01-11 18:16:31 +01:00
abcdefg30
556413c91d
Add whitespace fixes from the automatic update rule run
2022-01-11 18:09:05 +01:00
abcdefg30
f3bc450e20
Fix an oversight in the update rule for AttackBomber's FacingTolerance
2022-01-11 18:09:05 +01:00
abcdefg30
6556b33cef
Move update rules to the correct subfolders and paths
2022-01-11 18:09:05 +01:00
abcdefg30
15c2800601
Retire the release-20191117 UpdatePath
2022-01-11 18:09:05 +01:00
abcdefg30
d660ce9c47
Change the UpdatePath targets from playtest-20201213 to release-20210321
2022-01-11 18:09:05 +01:00
Matthias Mailänder
6770c08bf9
Fix scrollitem-nohover-hover not found.
2022-01-11 17:40:58 +01:00
Ivaylo Draganov
99ac128820
Add selected actors count to feedback notification text
2022-01-09 19:07:45 +01:00
Mustafa Alperen Seki
fe05382b24
Change "actor id" to "actor name" in some descs.
2022-01-09 19:02:05 +01:00
Mustafa Alperen Seki
3c60a515f7
Add CarryableConditions to Carryall.
2022-01-09 19:02:05 +01:00
penev92
b67954451a
Removed obsolete file OpenRA.sln.DotSettings
...
- The DEFAULT_PRIVATE_MODIFIER behaviour is now handled by the .editorconfig file via `dotnet_style_require_accessibility_modifiers = omit_if_default:warning`.
Also added `dotnet_diagnostic.IDE0040.severity = warning` there to raise compile-time errors in the CI.
- The field naming conventions seem to already be covered by (some) analyzer rules (checked in both VS and VSCode) - IDE1006/SA1306 and SA1307.
2022-01-09 18:58:37 +01:00
penev92
2f6f214bac
Removed a bunch of explicit access modifiers
2022-01-09 18:58:37 +01:00
penev92
413d564f1d
Removed obsolete file stylecop.json
...
It currently has two functions, both of which are covered by our .editorconfig file.
2022-01-09 18:58:37 +01:00
penev92
1326bca65c
Updated .gitignore file
...
Removed some obsolete entries now that there is a new build directory.
2022-01-09 18:58:37 +01:00
Mustafa Alperen Seki
721210eafe
Fix RevealsMap's effect not being removed for non-owners.
2022-01-09 18:53:16 +01:00
penev92
c6dacb50e8
Added hiding of the palette picker in the AssetBrowser
2022-01-09 18:40:32 +01:00
penev92
495faea96b
Updated scale sliders to accout for the new AssetBrowser layout
2022-01-09 18:40:32 +01:00
penev92
b6b417d42f
Fixed AssetBrowserLogic disposing audio streams prematurely
2022-01-09 18:40:32 +01:00
penev92
6fb228ddd1
Fixed Mp3Loader and OggLoader not resetting stream position
2022-01-09 18:40:32 +01:00
penev92
87b92b53a4
Reworked ISoundFormat.LengthInSeconds implementations
2022-01-09 18:40:32 +01:00
penev92
631297417c
Fixed background music playing momentarily in AssetBrowser when switching to a video asset
2022-01-09 18:40:32 +01:00
penev92
001efc9409
Added containing package name to asset tooltip
2022-01-09 18:40:32 +01:00
penev92
8d20487cb6
Added manual playing and stopping of audio in the AssetBrowserLogic
...
Also added visualisation of audio file length and progress and improved asset cleanup.
2022-01-09 18:40:32 +01:00
penev92
abea3a0f74
Fixed AudFormat and WavFormat implementations of ISoundFormat.LengthInSeconds
...
- Fixed a rounding issue in `WavReader.WaveLength()`.
- Fixed `AudReader.SoundLength()` not resetting the stream position.
- Fixed crashes caused by disposed streams because `LengthInSeconds` would try and calculate the length on the fly. It is now precalculated and cached (making it consistent across all 5 current `ISoundFormat` implementations).
- Fixed a crash in `AudReader.LoadSound()`'s `out Func<Stream> result` because that func would try and access the disposed stream's `Length` property. That works for `SegmentStream`, but not for `FileStream`.
- Fixed frameCount/soundLength label positioning in the AssetBrowser window to avoid text clipping .
2022-01-09 18:40:32 +01:00
penev92
8b944e9c82
Added audio playback to the AssetBrowser
2022-01-09 18:40:32 +01:00
penev92
7a9e0863d6
Added a scale slider for sprites in the AssetBrowser
2022-01-09 18:40:32 +01:00
penev92
40c728269c
Added a scale slider for models in the AssetBrowser
2022-01-09 18:40:32 +01:00
penev92
6907081c2b
Paused shellmap music when opening videos in the AssetBrowser
2022-01-09 18:40:32 +01:00
penev92
a058b1f5bd
Split AssetBrowser supported formats
...
Splitting them from one array into separate allows us to then reliably pick how each asset should be presented. Also lets us unhardcode some checks like "if file is .vxl ... else is sprite".
2022-01-09 18:40:32 +01:00
abcdefg30
8ac2815c9e
Fix the first Land ctor not passing targetLineColor on
2022-01-07 01:22:16 +01:00
abcdefg30
942a0c8712
Update an outdated comment in Land.cs
2022-01-07 01:22:16 +01:00
Matthias Mailänder
cdac14b92b
Avoid duplicate field.
2022-01-06 16:10:49 +02:00
Matthias Mailänder
718bf88b9a
Remove superflous null checks
...
and cache a dictionary lookup.
2022-01-06 01:54:27 +01:00
Ivaylo Draganov
eb4de47362
Add support for disabled click sound in scrollbar widget
2022-01-05 21:15:19 +01:00
Ivaylo Draganov
c3dfac7ade
Remove redundant default hotkey UI notice
2022-01-04 18:35:41 +01:00
Ivaylo Draganov
5aeae694be
Use disabled button state for slider thumb
2022-01-04 18:35:41 +01:00
Ivaylo Draganov
bdfe025059
Update introductory prompts to match settings layout
2022-01-04 18:35:41 +01:00
Ivaylo Draganov
8a2b63c944
Update lobby options tab layout to match settings layout
2022-01-04 18:35:41 +01:00
Ivaylo Draganov
9f96d4159a
Update common game ingame info tabs to match settings layout
2022-01-04 18:35:41 +01:00
Ivaylo Draganov
955464ee1d
Update TD game info panel to match the settings panel
2022-01-04 18:35:41 +01:00
Ivaylo Draganov
3ecaf76804
Overhaul settings panel layout
...
- make the panel larger
- place settings widgets in a scroll panel
- arrange settings widgets in two columns
- make tabs in TD vertical
2022-01-04 18:35:41 +01:00
Smittytron
a36eb585d3
Fix HiveGassed regression in Ant03
2022-01-04 12:50:00 +01:00
abcdefg30
bf7ec4aec1
Update nuget packages
2022-01-04 12:34:30 +01:00
abcdefg30
b448f2d324
Disable trimmed publishing
2022-01-04 12:34:30 +01:00
abcdefg30
b12c15ea9d
Update to .NET 6
2022-01-04 12:34:30 +01:00
abcdefg30
eae6d33cd9
Fix highlighting of the credits tabs
2021-12-30 12:42:56 +00:00
Smittytron
3c24a3f9c7
Update Allies10a to work with Lua cleanup
2021-12-29 17:13:09 +01:00
Matthias Mailänder
bb27837149
Don't make support airplanes huntable.
2021-12-28 13:08:38 -06:00
Ivaylo Draganov
87534022b3
Make size and white-space of game save/load panel more consistent
2021-12-28 17:48:21 +01:00
Ivaylo Draganov
d2c08c72bd
Adjust size, position and white-space of several panels
2021-12-28 17:48:21 +01:00
Ivaylo Draganov
0261dcaa7a
Make size and white-space of "Mission Browser" panel consistent
2021-12-28 17:48:21 +01:00
Ivaylo Draganov
d14ba6b04d
Make size and white-space of "Replay Browser" panel consistent
2021-12-28 17:48:21 +01:00
Ivaylo Draganov
a69d86c587
Make size and white-space of "Asset Browser" panel consistent
2021-12-28 17:48:21 +01:00
Ivaylo Draganov
8fb3bbe5f9
Make size and white-space of "Music" and "Credits" panels consistent
2021-12-28 17:48:21 +01:00
Matthias Mailänder
1c00a2fbec
Bump NUnit slightly.
2021-12-27 22:33:06 +01:00
Matthias Mailänder
82ce4717aa
Bump Pfim
2021-12-27 22:33:06 +01:00
Matthias Mailänder
2b23bde925
Bump NVorbis
2021-12-27 22:33:06 +01:00
Matthias Mailänder
bc52e8b6a9
Bump Mono.NAT
2021-12-27 22:33:06 +01:00
Matthias Mailänder
fb296d7dcb
Bump Fluent.Net
2021-12-27 22:33:06 +01:00
Matthias Mailänder
6997b973ee
Fix a null reference exception.
2021-12-17 14:11:19 +01:00
dnqbob
c968a2a902
Contrail smooth&color fix
2021-12-16 23:48:03 +01:00
Matthias Mailänder
5fcc049040
Fix a null reference exception.
2021-12-08 21:07:19 +01:00
Matthias Mailänder
ff20c1c59d
Avoid unnecessary variable assignment.
2021-12-06 13:19:28 +01:00
Matthias Mailänder
2c5f1f343f
Code style.
2021-12-06 13:19:28 +01:00
Matthias Mailänder
b147da388a
Mark fields readonly.
2021-12-06 13:19:28 +01:00
Matthias Mailänder
4a60d56753
Add a lint tag and documentation.
2021-12-06 13:19:28 +01:00
Matthias Mailänder
9d905d8291
Remove unused parameters and variables.
2021-12-06 13:19:28 +01:00
Matthias Mailänder
07815143f1
Fix CA1825 warnings on empty array initialisation.
2021-12-06 13:19:28 +01:00
RoosterDragon
727084c5fc
Run spell check over solution
2021-12-05 19:23:43 +01:00
Matthias Mailänder
b3d290edd9
Rename support power field for consistency.
2021-12-05 14:56:01 +01:00
Matthias Mailänder
9852bd08e4
Clean up existing rules.
2021-12-05 14:56:01 +01:00
RoosterDragon
3bde4ebbaf
Fix Move.PathSearchOrder
...
Each successive value of BlockedByActor is a superset of the previous value. Having a mixed up order of values in PathSearchOrder is not useful.
In the previous ordering, if a search for Immovable failed to find a path, it would then attempt Stationary. However Stationary is *more* restrictive then Immovable. If Immovable failed, there is no way Stationary could succeed. This means the search for Stationary is wasted effort.
In the fixed ordering, we try Stationary first. In the fixed ordering there are no pointless searches. Every search might succeed where the previous one failed and is therefore useful to try.
2021-12-05 13:53:56 +01:00
Matthias Mailänder
f44a2ea9a3
Fix formatting problems.
2021-12-05 13:17:32 +01:00
Matthias Mailänder
5eaba4f893
Unhardcode AI defensive priorities.
2021-12-05 13:17:32 +01:00
Matthias Mailänder
e82aa9977e
Unhardcode AI air units and exclude scripted aircraft.
2021-12-05 13:17:32 +01:00
Matthias Mailänder
00ece1ba55
Add configurable tooltips to the Discord integration.
2021-12-05 13:09:59 +01:00
Matthias Mailänder
c9022bcb73
Add support for superweapon detected sounds.
2021-12-05 13:02:15 +01:00
darkademic
c51327c4cc
Make yaml check utility load each map separately to reduce memory usage.
2021-12-04 20:07:19 +01:00
Ivaylo Draganov
695b7865d3
fixup! Add support for non-overlapping sound notifications
2021-11-29 23:44:59 +01:00
Ivaylo Draganov
fa6ff32f65
Add support for non-overlapping sound notifications
2021-11-29 23:44:59 +01:00
RoosterDragon
137d384304
Remove path caching.
...
The path cache was originally a moderate benefit, but over time a couple of things have conspired against it:
- Only paths with BlockedByActor.None are cached. Originally all paths regardless of blocking were cached but this was deemed unacceptable due to potentially returning outdated paths as actors move about. Paths with BlockedByActor.None are only invalidated if terrain conditions change, which are rarer.
- Move will try and find a path 4 times, trying with a different BlockedByActor check each time. BlockedByActor.None is the last check and only reached if the other searches fail. This is a rare scenario.
Overall, this means the hit rate for the cache is almost non-existent. Given the constraints on path validity it seems unlikely that the hit rate could be improved significantly, therefore it seems reasonable to remove the cache entirely to remove the overhead of cache management.
2021-11-29 01:03:14 +01:00
Paul Chote
31bd32e7ef
Allow launcher scripts to run from other working directories.
2021-11-28 23:09:32 +01:00
GeorgeD64
e00efbf53d
Added map name support to Launch.Map command line parameter
...
Fixed code based on feedback
Replaced try/catch block with a null check and exception throw
Fixed code based on feedback
Fixed code based on feedback
Simplified Launch.Map parameter to use map name directly
2021-11-28 23:06:26 +01:00
Ivaylo Draganov
a537346580
Move selection hotkeys out of world interaction widget
...
- Split SelectionUtils for selecting actors in the world to a static class
- Split selection hotkeys into their own logic classes
2021-11-27 15:06:39 +01:00
Ivaylo Draganov
e9cc89a336
Yield keyboard focus upon leaving the ingame chat tab
2021-11-27 14:57:04 +01:00
Gustas
975da89400
RAGL balance changes
2021-11-27 13:33:55 +01:00
Matthias Mailänder
5ed3f55ed2
Use global idle hunt.
2021-11-26 23:39:41 +01:00
Matthias Mailänder
b9bfbfd5ac
Use global objective initialisation.
2021-11-26 23:39:41 +01:00
Matthias Mailänder
d42edfc0b9
Use global difficulty.
2021-11-26 23:39:41 +01:00
Matthias Mailänder
58b105f0d4
Reorganize global .lua files.
2021-11-26 23:39:41 +01:00
Matthias Mailänder
a502e85e68
Fail gracefully when there is just one default difficulty.
2021-11-26 23:39:41 +01:00
RoosterDragon
a59f4b2c4a
Add a helper for multiplying by sqrt(2)
2021-11-25 22:50:22 +01:00
RoosterDragon
f0e24f6d21
Make knowledge of height discontinuities live in Locomotor not PathGraph.
2021-11-21 17:52:12 +01:00
RoosterDragon
8c627aa185
Clean up PathSearch
...
- Remove functionality for tracking cells considered during the search, as nothing relies on this.
- Rename various parameters in the expand function to closer match naming of fields used in CellInfo, intended to improve clarity.
2021-11-21 12:03:16 +01:00
Orb370
e1ade59a32
TD Balance Fall 2021 Commit
...
TD-Balance-Fall-2021 Commit
TD-Balance-Fall-2021-Commit
2021-11-20 17:37:43 -06:00
RoosterDragon
290ed17c9d
Adjust some naming and order of parameters in CellInfo
...
- Make Status the first field.
- Rename EstimatedTotal to EstimatedTotalCost to make it clearer it has the same unit as the CostSoFar field.
- Rename PreviousPos to PreviousNode as node terminology is a better match for usage.
2021-11-20 12:13:42 +01:00
Matthias Mailänder
98b25ddd5e
Check for dead actors when searching for exits.
2021-11-18 20:52:05 +01:00
RoosterDragon
31267aa22d
Fix some incorrect logic in PathGraph.GetConnections.PathGraph
...
Firstly, when dealing with maps with height discontinuities, the neighbouring cells we need to search are more that the set we need to search on flat maps. We ensure that as we traverse a map with varying height, we now consider cells "behind" us that may have become accessible due to a height change.
Secondly, when considering connections available via Custom Movement Layers, make sure the target cell on the new layer is actually enterable. Previously this cell would be reported as a valid connection, even if it wasn't actually possible to enter the cell as it was blocked. We also apply the same optimization of ignoring already closed cells.
2021-11-16 00:33:19 +01:00
RoosterDragon
1d23c23d06
Adjust span comparisons for clarity and add some test cases.
2021-11-15 13:20:34 +01:00
RoosterDragon
5416910249
Remove unused method in MiniYaml
2021-11-15 13:20:34 +01:00
RoosterDragon
73547c31ec
Remove MiniYamlNodes alias in MiniYaml.
2021-11-15 13:20:34 +01:00
RoosterDragon
2db312a792
In MiniYaml, presize some collections and trim lists during parsing.
2021-11-15 13:20:34 +01:00
RoosterDragon
0f01df5474
Avoid string allocations in MiniYaml parsing.
...
- Stream lines in as memory rather than needing to realise a string for each line, via a new method in StreamExts.
- Use span to avoid string allocations during parsing until we want to realise the node itself, in MiniYaml.FromLines.
- Change several callsites to use the streaming extension method rather than string method where possible.
2021-11-15 13:20:34 +01:00
penev92
270c566570
Fixed the Windows make script building in Release
...
This is a follow-up to PR 19379, which aimed to "provide an easy debug option for VSCode developers", but only did so for non-Windows users. VSCode has been building in Release mode for ever and continued to do so on Windows after that PR.
2021-11-14 10:07:18 +00:00
RoosterDragon
225bcbbd22
Normalize all support dir paths to end with a directory separator.
...
Previously, some paths used a separator and some did not. This broke some de-duplication logic in ExternalMods which tried to enumerate distinct paths but would end up running logic on the same directory more than one as it was provided both with and without a trailing directory separator. By normalizing the path this logic now works.
2021-11-13 22:24:43 +01:00
Vapre
d53601daa6
World, SyncHash, cache per tick.
2021-11-13 21:46:40 +01:00
RoosterDragon
dd9d600ef9
Change GetCustomMovementLayers to expose an array, not a dictionary.
...
As there are few custom movement layers, using an array is good for improving lookup speed. Additionally, we can simplify some code by reserving index 0 of the array for the ground layer. Code that needs to maintain a state for the ground layer and every custom movement layer can now maintain a flat array of state using index 0 for the ground layer, and the the ICustomMovementLayer.Index for the custom movement layer. This removes a lot of ternary statements checking for the ground layer special case.
2021-11-13 12:15:48 +00:00
Ivaylo Draganov
3310f14dea
Use mission notifications pool with appropriate chat line template
2021-11-12 22:30:07 +01:00
penev92
a71da0a25a
Unhardcoded engine credits file
...
Moved the file name/path to ModCredits, read from mod.yaml
2021-11-12 22:24:44 +01:00
Matthias Mailänder
9b1cec7712
Add support for gapless looping music.
2021-11-11 23:49:54 +01:00
abcdefg30
9916e4c4ac
Fix a crash in the TSEditorResourceLayer neighbour validation
2021-11-11 15:09:24 +01:00
abcdefg30
31cec0c17f
Fix a crash in the TSResourceLayer neighbour validation
2021-11-11 15:09:24 +01:00
reaperrr
430c7a4d7d
Fix TD voice crashes
...
The original PR used too much copy-paste.
2021-11-08 14:46:41 +01:00
Matthias Mailänder
7d83d4d47f
Add OmniSharp settings.
2021-11-08 14:41:34 +01:00
Matthias Mailänder
2fa1c05ed0
Ignore workspace settings.
2021-11-08 14:41:34 +01:00
Matthias Mailänder
f7fd3dfff8
Remove workspace settings.
2021-11-08 14:41:34 +01:00
abcdefg30
93c45255f1
Move a using into the Mono specific code path
2021-11-07 00:26:15 +01:00
abcdefg30
280dd8e2a5
Update launch-game.cmd to specify Engine.LaunchPath and support restarting
2021-11-06 11:21:13 +01:00
Paul Chote
5d83706eae
Require an explicit launch path for mod registrations.
...
This also removes a workaround that allowed the current mod to be
registered even if it defined a bogus path. Uses of Game.ExternalMods
should therefore always use TryGetValue and correctly handle it
returning false.
2021-11-06 11:21:13 +01:00
Paul Chote
4275e87c57
Show an error prompt if restart mod switch fails.
2021-11-06 11:21:13 +01:00
Gustas
c5a6577cee
Fix production scalling
2021-11-05 00:01:21 +01:00
Matthias Mailänder
ade5d211e9
IRC moved to Libera
2021-10-31 17:02:00 +01:00
Matthias Mailänder
e05b86b935
Recommend the OpenRA Lua extension.
2021-10-30 13:11:14 +02:00
Matthias Mailänder
e8ee31cd6e
The launch settings have been migrated to .NET Core already.
2021-10-30 13:11:14 +02:00
Matthias Mailänder
59bed108b1
Minor csharp warning fixes.
2021-10-30 13:11:14 +02:00
abcdefg30
05420ab5ce
Fix the Windows packing script not working with wget only
2021-10-29 22:25:59 +02:00
abcdefg30
32bc561878
Add a check for wine64 to the Windows packaging
2021-10-29 22:25:59 +02:00
abc013
311b6fcd83
Don't count actors owned by noncombatant players to kills statistic
2021-10-29 21:07:06 +02:00
abc013
c0da9f1eab
Fix walls counting to kills/deaths statistic
2021-10-29 21:07:06 +02:00
Ivaylo Draganov
98434ef96b
Add audio feedback for selection hotkeys
2021-10-29 20:55:41 +02:00
Ivaylo Draganov
9b9c116097
Add text feedback for type selection hotkey when selection is empty
2021-10-29 20:55:41 +02:00
Ivaylo Draganov
3c77df276a
Add full-stop to UI feedback text notifications
2021-10-29 20:55:41 +02:00
Ivaylo Draganov
a680cae00c
Move audio muted/unmuted notifications to feedback pool
2021-10-29 20:55:41 +02:00
Ivaylo Draganov
01d47566cc
Add a transients panel with corresponding chrome logic and a notification template
2021-10-29 20:55:41 +02:00
Ivaylo Draganov
9e92340ea7
Rework chat line templates and logic
...
- Extract chat line templates and logic so they can be reused across widgets
- Make text notification styling entirely template driven (by removing chat color configuration and making color optional for `TextNotification`)
- Add a new TextNotificationsDisplay widget (based on and replacing ChatDisplayWidget)
- Add timestamp support to text notifications
2021-10-29 20:55:41 +02:00
abc013
8416dc3f2d
Fix wrong subcell offsets for TS
2021-10-27 21:53:39 +02:00
abc013
c33290c19b
Display error message instead of stack trace in battlefield news when failing to fetch news
2021-10-27 18:40:52 +02:00
teinarss
1a56cee9a1
Add Tick scale plumbing
2021-10-26 22:40:15 +02:00
Oliver Brakmann
7f3130c7a6
Use TimeLimitManager in mission Allies10a
2021-10-26 16:40:47 +02:00
Oliver Brakmann
be4466115d
Do not update countdown label unless there is a timelimit
2021-10-26 16:40:47 +02:00
Smittytron
0c42f59656
Add Allies10a
2021-10-26 16:40:47 +02:00
Orb370
3a56532f0b
Fix Europe Map Commit
...
Fix Europe Map Commit
Fix Europe Map Commit
Fix Europe Map Commit
2021-10-26 16:18:18 +02:00
abc013
442752b6ba
Fix owner of selected actor not always being selected owner in editor
2021-10-24 22:54:10 +02:00
abc013
0898655175
Fix radar preview not updating when editing actor owner
2021-10-24 22:54:10 +02:00
RoosterDragon
3bee524c6b
Avoid allocation in PackageEntry.HashFilename
...
This is a very frequently called method during loading, and taking some care to avoid allocations improves performance noticeably.
2021-10-24 21:40:01 +02:00
RoosterDragon
2ed4cb8aff
Ensure Clear(T) also have a safety check to ensure no listener is attached.
...
Move related methods next to each other.
Change Clear(T) to use Array.Fill.
2021-10-23 15:43:47 +02:00
RoosterDragon
19760b04bd
Allow the default value of a CellInfo to be an Unvisited location.
...
In CellInfoLayerPool, instead of having to store a layer with the default values, we know we can just clear the pooled layer in order to reset it. This saves on memory, and also makes resetting marginally faster.
In PathSearch, we need to amend a check to ensure a cell info is not Unvisited before we check on its cost.
2021-10-23 15:43:47 +02:00
Matthias Mailänder
6edd5d7bfa
Avoid an unnecessary assignment.
2021-10-22 22:02:15 +02:00
Matthias Mailänder
a3ccc81892
Remove unused fields and parameters.
2021-10-22 22:02:15 +02:00
Matthias Mailänder
3b5bfb4bf4
Avoid initialisation of empty arrays.
2021-10-22 22:02:15 +02:00
Matthias Mailänder
5ff9d9a1f1
Add missing flags attribute required for HasFlags.
2021-10-22 22:02:15 +02:00
penev92
f056cbba13
Added a bunch of TraitLocationAttributes
...
Also moved a few traits to their proper subfolders.
2021-10-16 20:52:50 +02:00
penev92
67598dd151
Moved some traits from ^BaseWorld to World in TS
2021-10-16 20:52:50 +02:00
Paul Chote
166583b1ec
Fix disabled chat focus issues.
2021-10-16 13:34:39 -05:00
penev92
e1e76411f7
Added a rule for unused usings to OpenRA.ruleset
...
Unfortunately due to bugs in the analyzers or something else, the IDE0005 doesn't work as expected. The "officially suggested" workaround is to enable XML documentation generation to trigger IDE0005 during compiling. Then we need to add three more rules to silence the warnings that come from the XML documentation generation. We also need to enable code style enforcing on build for all of this to work.
Known issue is that all of this produces a bunch (tens to hundreds) of obscure analyzer warnings on older versions of Visual Studio, but those seem to not be causing issues.
2021-10-15 13:12:33 +02:00
penev92
8ba6d13b2f
Removed unused using directives
2021-10-15 13:12:33 +02:00
Matthias Mailänder
3790a4a6a4
Fix actor has multiple AttackBase traits.
2021-10-15 12:11:35 +02:00
abcdefg30
e8e0e155e5
Explain the try-finally clause in Sync.cs in a comment
2021-10-14 19:45:29 +02:00
abcdefg30
b366db7175
Revert "Directly run unsynced functions if we don't check sync hashes"
...
This reverts commit 1dc0a603c7 .
2021-10-14 19:45:29 +02:00
penev92
3ce32fe354
Added faction-specific units for colorpicker previews in TS
2021-10-13 23:59:11 +02:00
Matthias Mailänder
2b361ad41e
Add a link to the web chat
...
as ircs:// isn't linked on GitHub
and not everyone is familiar with IRC clients
2021-10-12 10:57:35 +02:00
Matthias Mailänder
f9f540f47e
Website repository has changed.
2021-10-12 10:57:35 +02:00
Matthias Mailänder
c9b0ddf772
Add a link to Discord with badge.
2021-10-12 10:57:35 +02:00
Matthias Mailänder
139af0c2bc
Fix a crash when building placements are moved out of the map.
2021-10-12 10:47:34 +02:00
Orb370
d88198e61e
Allow Targeting While Defenses are in the Construction Animation Commit
2021-10-11 17:49:44 -05:00
RoosterDragon
df9398a871
Use named pathfinding constants.
...
- Rename CostForInvalidCell to PathCostForInvalidPath
- Add MovementCostForUnreachableCell
- Update usages of int.MaxValue and short.Maxvalue to use named constants where relevant.
- Update costs on ICustomMovementLayer to return short, for consistency with costs from Locomotor.
- Rename some methods to distinguish between path/movement cost.
2021-10-10 17:09:38 +02:00
abcdefg30
884e6cdb51
Exempt D2k Harvesters from slowness modifiers applied when damaged
2021-10-09 14:55:27 -05:00
abcdefg30
4269fc67d5
Remove hacks around checking sync while disposing the shellmap
2021-10-09 21:13:35 +02:00
abcdefg30
69248132ad
Don't desync while the world is disposing
2021-10-09 21:13:35 +02:00
abcdefg30
1dc0a603c7
Directly run unsynced functions if we don't check sync hashes
2021-10-09 21:13:35 +02:00
Ivaylo Draganov
091d756c14
Change lobby options description to make sense in both disabled and enabled state
2021-10-09 08:43:28 -05:00
RoosterDragon
9bcbbdd3fc
Remove unused code in Move.
2021-10-09 00:02:00 +02:00
abcdefg30
a930c123ed
Initialize the Discord rich presence with an empty presence
2021-10-08 00:47:10 +03:00
abcdefg30
62c083bb01
Remove a bogus and unneeded import
2021-10-08 00:47:10 +03:00
Raf Czlonka
5cc1405f3f
Update links
...
- _http_ `->` _https_ where appropriate
- _wiki.openra.net_ `->` _https://github.com/OpenRA/OpenRA/wiki_
- _bugs.openra.net_ `->` _https://github.com/OpenRA/OpenRA/issues_
- the IRC channel is now on Libera.Chat + make it into a URI
This is in order to be consistent (one link to GitHub wiki already
exists), reflect reality, as well as avoid unnecessary redirects.
2021-10-07 12:38:36 -05:00
VonNah
0e33d08384
Fixed incorrect voice lines for Generic-, Vehicle-, Moebius- and CommandoVoice.
...
Signed-off-by: VonNah <vonnahora@gmail.com >
2021-10-03 19:39:28 -05:00
abcdefg30
dc11b82fc9
Fix a NRE in DeliverUnit.ReleaseUnit.OnFirstRun
2021-10-02 22:01:24 +01:00
RoosterDragon
6e0917169d
Teach FieldLoader.ParseCPos about CPos.Layer.
2021-10-02 21:54:26 +01:00
RoosterDragon
4cc33b2871
Add some ToString overrides to improve debug experience.
2021-10-02 21:54:26 +01:00
RoosterDragon
3a020e96fe
Update ICustomMovementLayer to not depend on actor for costs.
...
No implementations require the actor.
2021-10-02 21:47:24 +01:00
RoosterDragon
6f3b4ecae9
Speed up Map.Contains checks for non-flat maps.
...
We observe that most cells within a map lie within a region where no matter their height, their projection would still remain in map bounds. We can utilise this to perform a fast check for such cells and skipping the expensive checks on their actual height. We only need to check the actual height of a cell if this could cause the projection to go out of bounds.
2021-10-02 21:43:11 +01:00
abcdefg30
d370cb48c5
Remove unreachable code in TransformsIntoTransforms
2021-10-02 21:34:51 +01:00
KonH
9ed809943d
Just use Dispose methods without arguments (disposing always passed as true)
2021-10-02 22:14:08 +02:00
KonH
8bce6eb3ac
Remove GC.SuppressFinalize calls from classes without destructors
2021-10-02 22:14:08 +02:00
teinarss
279e7eb1c9
Disable Stylecop on debug config
2021-10-02 21:13:58 +02:00
Paul Chote
defaf92752
Send order queue length in ping responses.
2021-10-02 21:03:00 +02:00
Paul Chote
2d08f2bbfd
Allow the server to ack no or multiple packets in the same frame.
2021-10-02 21:03:00 +02:00
Zimmermann Gyula
a13d046304
Add twinkle effects to the gems.
2021-10-02 20:17:03 +02:00
Matthias Mailänder
a2a668077c
Refactor RandomDelay:
...
Allow different types of random
and reflect other use cases by renaming.
2021-10-02 20:17:03 +02:00
RoosterDragon
3a7aeb5324
Ensure TargetLineRenderable width and marker size don't get lost.
...
By making the constructor take non-optional parameters, this highlights some calls sites which were forgetting to set these values. These are now fixed.
Set the path debug to have a marker size of 2 for better visibility.
2021-10-02 12:14:54 +01:00
Vapre
9d4d4bb924
Locomotor, PathGraph, trivial optimizations.
2021-10-01 22:21:47 +02:00
tovl
a428aaa602
Make sure OpenAlSound.Source is never accessed after the source is freed for reuse
2021-10-01 21:15:52 +02:00
tovl
2bc03b4d84
Fix OpenAlSound.Complete being incorrect when OpenAl source is reused.
2021-10-01 21:15:52 +02:00
teinarss
289c4ef2b7
Remove Microsoft.DotNet.PlatformAbstractions
2021-09-29 20:52:44 +02:00
teinarss
80b6a5a27f
Update nuget packages
2021-09-29 20:52:44 +02:00
Ivaylo Draganov
7f2ac477a2
Improve Game.Mod argument check in launch script
2021-09-28 21:44:53 +02:00
Ivaylo Draganov
69b375dc48
Replace zenity select dropdown with a list
2021-09-28 21:44:53 +02:00
Vapre
e8bae2e50a
Crash on capture fix. #19482 .
2021-09-27 21:19:12 +01:00
Matthias Mailänder
6b3eee8481
Don't just swallow the web exception.
2021-09-27 20:16:22 +02:00
Paul Chote
3d73d5ef29
Remove incorrect comment and merge nested conditionals.
2021-09-27 19:48:05 +02:00
Paul Chote
a0d49729f5
Ignore modifiers when applying terrain damage.
2021-09-27 19:31:25 +02:00
Ikko Ashimine
a573052f2e
Fix typo in rules.yaml
...
recieved -> received
2021-09-27 18:08:05 +02:00
Ivaylo Draganov
994ba35507
Add description to difficulty lobby option for missions
2021-09-26 21:25:08 +01:00
Ivaylo Draganov
2d178f5033
Do not center lobby options vertically in the scroll panel
2021-09-26 21:25:08 +01:00
Ivaylo Draganov
f018fdecdd
Remove special handling for cases when there's only one game info tab
...
The addition of the lobby options tab ensures that there will always
be at least two tabs ("Objectives" and "Options").
2021-09-26 21:25:08 +01:00
Ivaylo Draganov
fa0adb5a1b
Hide various lobby options from missions and minigames
2021-09-26 21:25:08 +01:00
Ivaylo Draganov
3e0834b4ef
Display lobby options in-game on a dedicated tab
2021-09-26 21:25:08 +01:00
RoosterDragon
fc5f8fcd31
Fix indent
2021-09-26 15:49:48 +02:00
RoosterDragon
2f955e01f5
Fix style errors
2021-09-26 15:49:48 +02:00
Paul Chote
c958bf9680
Restore threaded renderer.
2021-09-26 15:19:20 +02:00
Matthias Mailänder
98b87004cc
Bump SharpZipLib.
2021-09-26 11:18:15 +01:00
Paul Chote
8588af1001
Disable chat for the first 5s (configurable) after joining a server.
2021-09-23 12:52:20 +02:00
teinarss
9eab92e90a
Add Rich Presence button with link to website
2021-09-22 15:57:54 +02:00
Paul Chote
2424ddc79a
Move NetTickScale (now NetFrameInterval) control to the server.
2021-09-21 15:12:36 +02:00
Paul Chote
df798fb620
Overhaul client latency calculations.
...
The ping/pong orders are replaced with a dedicated
(and much smaller) Ping packet that is handled
directly in the client and server Connection wrappers.
This allows clients to respond when the orders are
processed, instead of queuing the pong order to be
sent in the next frame (which added an extra 120ms
of unwanted latency).
The ping frequency has been raised to 1Hz, and pings
are now routed through the server events queue in
preparation for the future dynamic latency system.
The raw ping numbers are no longer sent to clients,
the server instead evaluates a single ConnectionQuality
value that in the future may be based on more than
just the ping times.
2021-09-21 15:12:36 +02:00
Paul Chote
67face8cf0
Rename connection packet handling.
2021-09-21 15:12:36 +02:00
Paul Chote
4eefa637a3
Remove obsolete threaded renderer workarounds.
2021-09-20 22:33:25 +02:00
Paul Chote
be8e2cf3a4
Move OpenGL context creation to the main thread.
2021-09-20 22:33:25 +02:00
Matthias Mailänder
f08a0b113e
Allow mods to customize application title.
2021-09-19 22:29:50 +02:00
Matthias Mailänder
3a8957c6f3
Remove unused function parameter.
2021-09-19 22:29:50 +02:00
Smittytron
99006a02ed
Add destroy triggers for prison actors in Allies03a
2021-09-18 21:26:10 +02:00
Smittytron
77e1e77387
Use FireClusterWarhead with barrels
2021-09-18 21:26:10 +02:00
Matthias Mailänder
0604a58581
Send a ping when the server is shut down
...
and stop the LAN beacon.
2021-09-18 17:38:52 +01:00
Matthias Mailänder
58e482c05a
Fix hashset documentation.
2021-09-18 13:16:25 +01:00
Matthias Mailänder
eba266aecf
Use MarkDown tables in trait documentation export.
2021-09-18 12:52:27 +01:00
Matthias Mailänder
5bf4daddec
Set the default game name to the player name.
2021-09-15 18:39:24 +02:00
Paul Chote
54c08748e0
Overhaul player disconnect notifications.
2021-09-12 22:53:50 +02:00
abcdefg30
b8e343bee9
Fix Phase Transports not uncloaking while unloading
2021-09-12 10:47:33 +02:00
Vapre
5ae4662f08
RunUnsynced, do not recalculate sync hash on reentry. Cache debug settings.
2021-09-12 10:06:44 +02:00
Paul Chote
b3159d7515
Fix d2k map editor crash if spice is placed at the edge of map.
2021-09-09 10:19:17 +02:00
abcdefg30
a1e62158e2
Add a workaround for "Check around synced code" problems
2021-09-08 20:26:53 +02:00
abcdefg30
777d966958
Remove unnecessary server creation when creating a new map
2021-09-08 20:26:53 +02:00
abcdefg30
0b75991fbc
Make the editor use an EchoConnection instead of a local server
2021-09-07 20:45:50 +02:00
Paul Chote
e0e219793f
Fix shellmap OrderManager use after dispose.
2021-09-02 23:23:23 +02:00
Paul Chote
8f412f869d
Move order latency control to the server.
2021-09-02 23:23:23 +02:00
Paul Chote
6421c17515
Rework IConnection implementations:
...
* EchoConnection is now a trivial buffer that stores
and repeats orders directly without serialization.
* NetworkConnection no longer subclasses EchoConnection,
and now also caches local orders without serialization.
* Replay recording was moved to NetworkConnection
(it is never used on EchoConnection).
2021-09-02 23:23:23 +02:00
Paul Chote
408f30b5cd
Extract OrderIO.SerializeOrders helper.
...
Note: This changes immediate orders to no longer be
individually framed in their own packets.
2021-09-02 23:23:23 +02:00
teinarss
db74f155bb
Update DropClient to always drop Connection
2021-09-02 08:05:37 +02:00
Matthias Mailänder
978de64903
Don't count suicides into the game score.
2021-09-02 08:00:44 +02:00
Matthias Mailänder
e616cd1bcb
Save the player color in the introduction panel.
2021-09-02 07:39:54 +02:00
Andre Mohren
2c84c43607
Fixed odd sprite size "frame hopping".
2021-09-02 07:34:13 +02:00
Paul Chote
442d91537e
Don't display spectator info for scripted players.
2021-08-28 23:15:02 +02:00
Paul Chote
7f92d64d84
Disable replay player visibility dropdown in singleplayer missions.
2021-08-28 23:15:02 +02:00
Paul Chote
c7700a8a2b
Fix DropDownButtonWidget ignoring yaml separator overrides.
2021-08-28 23:15:02 +02:00
Paul Chote
e389c00a11
Remove packet byte wrangling from OrderManager.
2021-08-26 22:00:59 +02:00
Paul Chote
52b597d5d2
Remove order latency checks from BaseBuilderQueueManager.
2021-08-26 22:00:59 +02:00
Paul Chote
8a587ddeab
Disable depth-buffer command if EnableDepthBuffer is disabled.
2021-08-25 17:42:44 +02:00
Paul Chote
512dee0ac0
Fix rendering glitches with EnableDepthBuffer disabled.
2021-08-25 17:42:44 +02:00
Matthias Mailänder
024beacafb
Don't smear the paste while moving the mouse.
2021-08-22 16:06:21 +02:00
teinarss
b4256df9c1
Cleanup in Connection
2021-08-22 09:43:25 +01:00
reaperrr
c860bf19ee
Add GDI 05c
...
Well, 05eb really, but until we implement campaign progression,
calling it 'c' is the easiest way to differentiate it without breaking
our mission title length/alignment conventions.
2021-08-21 20:34:50 +02:00
Paul Chote
06ea7bf923
Regenerate TS map previews.
2021-08-21 14:16:02 +02:00
Paul Chote
3551eb3128
Fix map preview bounds calculation.
2021-08-21 14:16:02 +02:00
Paul Chote
7f94d67d39
Replace Map.CustomTerrain radar colors with IRadarTerrainLayer.
...
* TSVeinsRenderer now shows border cells on the radar
* BuildableTerrainLayer now uses the radar colors defined on the individual tiles
* CliffBackImpassabilityLayer no longer overrides the underlying terrain color.
2021-08-21 14:16:02 +02:00
Paul Chote
72c0c7e38b
Remove rocks and trees from TS minimap previews.
2021-08-21 14:16:02 +02:00
Paul Chote
2a2785d8c9
Fix model debug sprite rectangle rendering.
2021-08-21 13:45:41 +02:00
Paul Chote
7a3dae428a
Work around clipping on ramp type 7.
2021-08-21 13:45:41 +02:00
Paul Chote
dcd3e8d444
Ignore terrain slopes when calculating model shadows.
...
This is less realistic, but better matches the original
game and is the only practical way to reduce visual issues
caused by long shadows being cast over multiple cells.
2021-08-21 13:45:41 +02:00
Paul Chote
68710e48a6
Add terrain orientation support for Mobile.
2021-08-21 13:45:41 +02:00
Paul Chote
c88d1bbefa
Add WRot SLerp and axis-angle ctor.
...
These allow more complex calculations to be made
using rotations.
2021-08-21 13:45:41 +02:00
Paul Chote
d509d3f5f9
Fix carryall InitialActor creation.
2021-08-20 21:04:18 +02:00
Smittytron
8a4945d20a
Polish and standardize Allies01
2021-08-20 20:48:05 +02:00
Andre Mohren
0ea6a5626f
Do not enforce mods to use stylecop.
2021-08-20 20:45:31 +02:00
Paul Chote
864cc4becc
Fix weather particle physics.
...
The trait documentation specified that the speed
and offset values are px/tick, but they have actually
always been treated as px/render.
Fix the update logic and rescale the map definitions
to account for the fixed behaviour.
2021-08-20 20:38:37 +02:00
Paul Chote
d2257f9784
Fix macOS compat build dock icon, app name, dark mode support.
2021-08-20 20:34:23 +02:00
Paul Chote
f70457a66f
Remove unused symbol lookups.
2021-08-20 20:34:23 +02:00
Paul Chote
278a4acf96
Fix Engine.LaunchPath for macOS compatibility builds.
2021-08-20 20:34:23 +02:00
Paul Chote
be3412ee74
Fix depth offsets for sprite with non-zero ZRamp.
...
Bibs and other effects that should be drawn at ground level
can now simply define ZRamp: 1, Offset: <X>,<Y>,1, avoiding the
need to account for the Y offset or internal sprite offsets.
2021-08-20 20:17:55 +02:00
Paul Chote
27f9f35efb
Fix incorrect world height to screen depth conversion.
2021-08-20 20:17:55 +02:00
Paul Chote
ef1aee5e95
Fix and document the depth buffer calculations.
2021-08-20 20:17:55 +02:00
Paul Chote
962d6496bd
Overhaul depth preview rendering:
...
* Replace Jet color map with grayscale
* Added Shift + \ hotkey to toggle preview
* Added Shift + [, Shift + ] hotkeys to change contrast
* Added Shift + ;, Shift + ' hotkeys to change offset
2021-08-20 20:17:55 +02:00
Paul Chote
91c5f2cabe
Add Cityscape map.
2021-08-20 20:17:55 +02:00
Paul Chote
a9c6430924
Fix TS map importer:
...
- Fix infantry subcells and facing
- Import sandbags/walls.
2021-08-20 20:17:55 +02:00
Vapre
2ea2815529
CallFunc, avoid null check.
2021-08-20 12:31:04 +02:00
Paul Chote
5eb4c6a0bb
Set _KDE_NET_WM_DESKTOP_FILE x11 window property.
...
This explicitly tells KDE to associate the OpenRA window with
the integrated appimage desktop file, allowing it to use the
correct resolution icon for the task switcher.
2021-08-16 20:18:00 +02:00
abcdefg30
4145723ef0
Remove Sdl2HardwareCursorException
2021-08-14 17:11:34 +01:00
abcdefg30
b8ba1b36fe
Don't throw an exception when creating a hardware cursor fails
2021-08-14 17:11:34 +01:00
Matthias Mailänder
f63e15f5de
Fix igloos being labeled as haystacks in-game.
2021-08-11 19:09:20 -05:00
MustaphaTR
2f44b016b0
Add a condition per tileset.
2021-08-11 19:09:20 -05:00
Matthias Mailänder
b7bba5d55a
Restrict sonar pulse to unshrouded water.
2021-08-11 22:46:19 +02:00
teinarss
fba4c5049c
Replace Thread.CurrentThread.ManagedThreadId with Environment.CurrentManagedThreadId
2021-08-10 23:02:18 +02:00
Vapre
573a6cf645
FindAndDeliverResources, trivial optimizations.
2021-08-10 23:59:43 +03:00
reaperrr
eff7e803bf
Minor MoveOrderTargeter optimization
...
IsTraitPaused should be cheaper than Map.Contains,
so let's perform the cheaper check first.
2021-08-10 18:26:05 +02:00
reaperrr
58f55b808a
Add comment in Mobile
...
This isn't obvious to people not entirely familiar
with the code.
2021-08-10 18:26:05 +02:00
reaperrr
777a927c04
Cache unchanging values for MoveWithinRange
...
In theory, CandidateMovementCells could be called
every tick, so let's avoid creating the vars
every time.
2021-08-10 18:26:05 +02:00
Matthias Mailänder
0249116206
Rename instant to fast charge to avoid tab complete clash.
2021-08-09 13:17:47 -05:00
Ivaylo Draganov
2d0e7040db
Add separate chat panel for spectators and players
...
Forces the chat and performance panels to be re-initialized when a
player transitions to spectators. This ensures that spectators don't
get to see faction themed widgets.
2021-08-08 12:50:31 +01:00
Paul Chote
edd3a2eb75
Fix ingame menu tab display.
2021-08-07 13:12:56 -05:00
Paul Chote
29f4f5a0cd
Remove redundant ts ingame-info.yaml.
2021-08-07 13:12:56 -05:00
abcdefg30
ba7e1319ac
Remove DisableWindowsRenderThread and use threaded renderering for non windowed mode
2021-08-07 14:49:09 +01:00
Ivaylo Draganov
7a1169744e
Add tooltips to map name and author in map chooser
2021-08-05 18:36:50 +02:00
abcdefg30
453d59ae16
Defer rollover checks while generating selection decorations
2021-08-05 01:43:35 +03:00
Vapre
35e9fade06
PathGraph, skip closed cells early. Fix #19579 .
2021-08-04 20:02:12 +02:00
Paul Chote
8fc042fed1
Fix style nits in OrderEffects.
2021-08-02 21:50:32 +02:00
Paul Chote
2c5fce5e3c
Add missing TraitLocation to OrderEffects.
2021-08-02 21:50:32 +02:00
Paul Chote
7a93ff3258
Add support for TS-style tinted target flashes.
2021-08-02 21:50:32 +02:00
Paul Chote
9291263609
Fix indentation in OrderEffects.
2021-08-02 21:50:32 +02:00
Matthias Mailänder
f4a5878a53
Fix veinholes on Sunstroke.
2021-08-01 14:56:53 -05:00
Paul Chote
1ecb3bf99a
Don't add empty Translations nodes to maps.
2021-07-31 13:14:46 +02:00
reaperrr
c88994a0dd
Fix unarmed civilians being selected as combat units
2021-07-30 09:03:29 -05:00
fruehstueck
29b0999da3
Add GDI 8b
2021-07-30 09:03:29 -05:00
Paul Chote
b08117dc93
Don't report "Primary Building Selected" when nothing changes.
2021-07-29 16:19:53 +02:00
Paul Chote
99322cee8f
Set the closest production to Primary when force-targeting rallypoints.
2021-07-29 16:19:53 +02:00
Vapre
e201e410f4
PathGraph, skip closed cells early.
...
In path finding GetConnections considers connections to already closed cells and calculates the cost for them. The caller afterwards ignores them. These are 15% of all connections.
2021-07-27 14:49:22 +02:00
Paul Chote
24f64ae1a8
Fix an edge case where the wrong sheet may be mapped to a depth sprite.
2021-07-25 19:20:19 +02:00
Ivaylo Draganov
1f3f489328
Show map preview tooltip only if needed
2021-07-25 00:25:08 +01:00
Ivaylo Draganov
31056d4253
Add tooltip to overflowing map title in server browser
2021-07-25 00:25:08 +01:00
Paul Chote
70892a6661
Change DrawSprite calls to provide scales instead of sizes.
...
This allows us to remove a hacky workaround for calculating
depth offsets when sprites have size.Z == 0.
2021-07-25 00:32:17 +02:00
Paul Chote
8e94e1d5ec
Rework WidgetUtil sprite rendering helpers.
2021-07-25 00:32:17 +02:00
Vapre
2e6f444285
Map.Contains check grid type once.
2021-07-24 15:34:56 +02:00
abcdefg30
dcaa658678
Remove an outdated reference to ConditionManager
2021-07-23 11:04:07 -05:00
Hang
249bc4abc8
Fix the hide-map sequence of the d2k crate-effects
...
Frame 4218 belongs to explosion/nuke sequence, which should not part of crate-effects/hide-map sequence
2021-07-22 23:13:16 +02:00
Hang
757ca0561f
Update misc.yaml
...
Typo Lenght -> Length
2021-07-21 13:36:25 +02:00
Vapre
001134ce59
Do not start DiscordService client if disabled.
2021-07-21 12:13:21 +02:00
Paul Chote
f8ed768e39
Change makefile/packaging "RUNTIME=dotnet" to "RUNTIME=net5".
2021-07-18 20:57:22 +02:00
Chris Harris
1c6ca394c1
Fix duplicate ActorIDs
2021-07-17 23:27:25 +02:00
Vapre
627fd4e68b
CellLayer.Index inline CPos.ToMPos.
2021-07-16 09:51:55 +02:00
Paul Chote
7bfe83cce7
Fix WithIdleOverlay PlayerPalette editor rendering.
2021-07-15 12:05:09 +02:00
Matthias Mailänder
d169210531
Display the production overlay only where the unit will exit.
2021-07-14 19:06:22 -05:00
Matthias Mailänder
902006bf53
Fix editor losing copy after each paste.
2021-07-13 21:01:33 -05:00
Mustafa Alperen Seki
dcb70d12e3
Make Harvester conditional.
2021-07-12 15:41:04 +02:00
Matthias Mailänder
cd90c70cdf
Fix a null reference exception.
2021-07-12 15:20:34 +02:00
Matthias Mailänder
f1f5df3749
Fix .shp icons being misdetected as .wsa animations.
2021-07-12 11:49:06 +02:00
Matthias Mailänder
b2f18ad0ad
Add support for .ogg files.
2021-07-12 00:35:16 +02:00
Matthias Mailänder
af0b7621d2
Minor fixes.
2021-07-12 00:35:16 +02:00
Matthias Mailänder
2bd7869059
Fix haystacks being selectable buildings.
2021-07-12 00:15:38 +02:00
Matthias Mailänder
e1816a6da0
Fix a crash when opening map Chernobyl with the editor.
2021-07-11 16:38:27 +01:00
teinarss
f3777a25e6
Refactor send and receive Orders loop
2021-07-10 23:35:47 +02:00
teinarss
5e1468facb
Fix NRE with ConnectionStateChanged
2021-07-08 01:12:05 +02:00
Matthias Mailänder
3e6e5a83f3
I feel like I am back.
2021-07-07 15:20:47 +02:00
Paul Chote
25c095619a
Parse Mp3 length from metadata tags.
2021-07-07 15:20:47 +02:00
Matthias Mailänder
407372268d
Add support for .mp3 files.
2021-07-07 15:20:47 +02:00
Paul Chote
aa798c252b
Remove "X has joined the game." notification when starting a Skirmish.
2021-07-06 13:12:51 +02:00
Ivaylo Draganov
9c658ad36b
Increase the opacity of panel-gray-gdi
2021-07-06 10:13:43 +02:00
Ivaylo Draganov
2923077b3d
Style TD in-game chat and performance graph with faction colors
2021-07-06 10:13:43 +02:00
Ivaylo Draganov
cbdf6c3747
Add faction suffix support to text fields and scroll panels
2021-07-06 10:13:43 +02:00
Ivaylo Draganov
9687988976
Use pattern matching syntax in AddFactionSuffixLogic
2021-07-06 10:13:43 +02:00
Ivaylo Draganov
64e76e1a90
Make text fields yield keyboard focus on "Esc" in a consistent way
...
- search fields clear the input and yield if empty
- chat field and actor edit field yield without clearing
2021-07-04 23:37:29 +02:00
reaperrr
df8295fa2c
Make aircraft turn speed scale with speed modifiers
2021-07-04 21:26:45 +01:00
reaperrr
0ac277a88d
Improve Aircraft TurnSpeed getters readability
2021-07-04 21:26:45 +01:00
reaperrr
5a548d6acc
Introduce IdleMovementSpeed
...
That actually factors in speed modifiers and trait pause/disable.
2021-07-04 21:26:45 +01:00
reaperrr
1262a9c6c9
Minor FlyIdle perf optimization
...
None of these prerequisites change on the fly,
so cache the result in the activity ctor.
2021-07-04 21:26:45 +01:00
reaperrr
5ecb3eec16
Fix IdleTurnSpeed ignoring trait pause/disable
2021-07-04 21:26:45 +01:00
Ivaylo Draganov
2ea6bfba7b
Allow the player to toggle the display of UI Feedback chat pool
2021-07-04 14:02:58 +01:00
Ivaylo Draganov
6af354ff99
Split chat lines into pools
...
- Add a common class for passing around chat lines
- Add wrapper methods for adding chat lines
- Combine repeated chat lines in the display widget
2021-07-04 14:02:58 +01:00
abc013
0a02bd524a
Update DestroyResourceWarhead to support Resource type and amount options.
2021-07-04 11:13:05 +01:00
Paul Chote
f9b058d36b
Add click sounds to color widgets.
2021-07-03 12:18:25 -05:00
Paul Chote
bc51461427
Make sure the hue returned by Color.RgbToHsv is positive.
2021-07-03 12:18:25 -05:00
Paul Chote
fca12fd707
Validate custom color picker colors.
2021-07-03 12:18:25 -05:00
teinarss
1f1373509e
Refactor server orders
2021-07-03 14:55:03 +01:00
Abdurrahmaan Iqbal
a8900d9860
Rebind chat hotkeys to prevent Tab changing chat mode
...
Enter/Shift+Enter now toggle team/all chat respectively and Shift+Tab switches chat mode instead of Tab
2021-07-03 14:49:03 +01:00
Abdurrahmaan Iqbal
6967c1fff3
Pass KeyInput to OnKey functions
2021-07-03 14:49:03 +01:00
abc013
2742985520
Prevent saving and starting a map when max player count is exceeded.
2021-07-03 08:25:16 -05:00
Smittytron
347a09e6cf
Switch remaining RA missions to Normal default difficulty
2021-07-03 00:25:53 +02:00
Smittytron
e1a28078bb
Fix difficulty dropdown for RA mission Sarin Gas 2: Down Under
2021-07-03 00:25:53 +02:00
Smittytron
27562ab88f
Fix and standardize TD mission difficulty dropdowns
2021-07-03 00:25:53 +02:00
reaperrr
9371cecc00
Render disabled targetable positions in gray
...
Instead of not rendering them at all.
Also moved their debug overlay to HitShape.
2021-07-02 10:58:29 +01:00
reaperrr
feba9f2b9f
Make orientation caching in HitShape readonly
...
HitShape Requires<BodyOrientation> anyway.
2021-07-02 10:58:29 +01:00
reaperrr
6d55161043
Show disabled HitShapes in gray
...
Instead of disabling their debug overlay entirely.
2021-07-02 10:58:29 +01:00
Andre Mohren
7356f2506b
Moved flashimage to world trait.
2021-07-01 16:38:51 +02:00
Ivaylo Draganov
ad4425d11e
Use cached transforms for images in widgets
2021-07-01 14:21:22 +01:00
Matthias Mailänder
c8ab409d38
Allow mod code to access the buildable terrain overlay.
2021-07-01 12:41:06 +01:00
Smittytron
9a587d2aaa
Standardize player naming in Ant01
2021-06-30 23:11:10 +02:00
Smittytron
bcbd2418b4
Adjust hard difficulty in Ant01
2021-06-30 23:11:10 +02:00
Andre Mohren
8a776c7138
32bpp bullets no longer crash without palette.
2021-06-30 22:58:03 +02:00
Andre Mohren
6810469634
Updated copyright years.
2021-06-29 18:33:21 -05:00
VonNah
5a7a09a6a7
Fixed the crumble-overlay of all the buildings.
2021-06-27 15:29:57 +02:00
Leo512bit
e60e7beeef
Slower damaged units
2021-06-26 09:24:30 -05:00
Ivaylo Draganov
9313638997
Fix handicap dropdown disabled state
2021-06-25 09:25:17 -05:00
Ivaylo Draganov
1af2ab566e
Fix player handicap erroneously set to player team
2021-06-25 09:25:17 -05:00
Andre Mohren
de6b8b6a74
32bpp terrain does not need a palette.
2021-06-25 10:38:53 +02:00
Andre Mohren
62207313a0
32bpp assets dont need a palette to be defined.
2021-06-25 10:33:54 +02:00
teinarss
b3b10729cd
Remove ServerExternalMod from OrderManager
2021-06-12 12:50:51 +02:00
teinarss
91f99eeb4c
Cleanup in Connect
2021-06-12 12:50:51 +02:00
teinarss
a1b3450b47
Remove Password and Endpoint from OrderManager
2021-06-12 12:50:51 +02:00
Matthias Mailänder
da4bf7f191
Document and test the building placement preview for Dune 2000.
2021-06-12 12:43:03 +02:00
tjk-ws
a893cf9cb6
Unhardcode weapon ammo consumption
...
fix gh actions
2021-06-11 10:21:24 -05:00
Ivaylo Draganov
9fa5dcc055
Remove unused method in WidgetUtils
2021-06-11 10:16:34 -05:00
abcdefg30
fe146cb77a
Remove superfluous Buildable traits from dummy helper actors
2021-06-10 19:22:46 -05:00
Vapre
fc49d6943a
OrderIO performance improvement
...
OrderIO, ToOrderList, skip if frame is empty,
which occurs often each client each frame.
2021-06-09 23:31:27 +02:00
Matthias Mailänder
44b2dda585
Add an editor overlay for unbuildable terrain.
2021-06-06 21:14:44 +02:00
Matthias Mailänder
3980e4fa90
Use consistent and easy to read debug command names.
...
Reorganize dev cheat command handling.
2021-06-06 18:40:48 +02:00
darkademic
ca2bef3cd1
Updated TD unit speeds to account for move jumpy-ness fix.
2021-06-04 23:20:13 +02:00
darkademic
cbd82c7204
Updated RA unit speeds to account for move jumpy-ness fix.
2021-06-04 23:17:41 +02:00
teinarss
82115c6bf7
Move Text handling to its own class
2021-06-04 21:47:39 +02:00
Paul Chote
2a26ddc622
Replace server Select loop with individual client threads.
...
This guarantees that any unexpected blocking calls due to network
issues cannot stall the main server thread.
2021-05-30 14:37:25 +02:00
Paul Chote
6535411744
Move SendData to Connection.
2021-05-30 14:37:25 +02:00
Paul Chote
7c02b4d264
Add Connection.EndPoint property.
2021-05-30 14:37:25 +02:00
Paul Chote
7e79e69eae
Remove public mutable state from Connection.
2021-05-30 14:37:25 +02:00
Paul Chote
dacacdf130
Remove global fallback to software cursors on error.
...
We now only fall back for the specific cursors that failed.
2021-05-30 12:01:44 +02:00
abc013
8fede9d6ba
Add ValidStances checks to BlocksProjectiles and Gate.
2021-05-27 21:37:37 +02:00
teinarss
d10c592987
Fix crash in OrderManager
2021-05-23 12:44:18 +01:00
reaperrr
acccb01c76
Fix Move regression
...
If progress == Distance, we must not move again on the same tick,
but still 'return true' to avoid losing a tick in the case
when this is the last Move tick followed by a different activity
(or a new queued Move, for example via waypoints).
2021-05-23 10:49:40 +02:00
Matthias Mailänder
6876fe45e1
Use nameof for additional robustness in trait documentation.
2021-05-22 23:22:31 +01:00
Matthias Mailänder
52a4b5acd7
Fix documentation about GeneratesShroud to CreatesShroud rename.
2021-05-22 23:22:31 +01:00
Smittytron
92b6401360
Remove Thief from Exodus
2021-05-22 23:29:42 +02:00
Smittytron
ea24a15011
Set mission default difficulties to normal
2021-05-22 23:29:42 +02:00
Smittytron
243dc965c0
Move IdleHunt function to campaign-global.lua
2021-05-22 23:29:42 +02:00
Smittytron
f1f9098109
Move TRUK prereq overrides to campaign-rules.yaml
2021-05-22 23:29:42 +02:00
Smittytron
79b3f9bf06
Use proper title case conventions in mission names
2021-05-22 23:29:42 +02:00
Smittytron
dff245a9ce
Fix tile error in Soviet09
2021-05-22 23:29:42 +02:00
Smittytron
91f9fa0f1f
Add Ant 03
2021-05-22 13:42:09 +02:00
Smittytron
6f919fc232
Change anthill to correct impassable tiles
2021-05-22 13:42:09 +02:00
Smittytron
ce277481c3
Add Aftermath mission In the Nick of Time
2021-05-22 13:31:40 +02:00
Smittytron
d2039a14e1
Add Counterstrike mission Fall of Greece 2: Evacuation
2021-05-22 13:27:46 +02:00
Paul Chote
a27ef16911
Add EngineRootPath csproj property to simplify SDK inheritance.
2021-05-22 11:22:26 +02:00
Paul Chote
dc3dc7df73
Fix map-player bots not working on dedicated servers.
...
The host is almost never going to be client index 0
on public dedicated servers. Set to the actual host
client ID instead.
2021-05-22 11:18:45 +02:00
abcdefg30
872adbec0a
Remove crate crushing from visceroids in TD and TS
2021-05-17 09:57:43 +02:00
Paul Chote
c64cfea179
Allow mods to downscale framebuffer resolution for large world viewports.
2021-05-16 14:22:52 +02:00
Paul Chote
84dff779ac
Work around rendering glitches with non-unity pixel scales.
2021-05-16 14:22:52 +02:00
Paul Chote
0d4b81fe6f
Set world framebuffer size based on minimum zoom.
...
This avoids reallocating buffers each time the player changes zoom level.
2021-05-16 14:22:52 +02:00
Paul Chote
0735345674
Set world framebuffer size based on minimum zoom.
...
This avoids reallocating buffers each time the player changes zoom level.
2021-05-16 14:10:32 +02:00
Paul Chote
bb15bd20c0
Add support for 16 bit floating point textures.
2021-05-16 14:10:32 +02:00
Paul Chote
95f5d162ef
Increase SheetCount back to 8.
...
This was previously decreased to support legacy GPUs
that only supported 8 texture image units and we need
to reserve one of these for the palette texture.
OpenGL 3.X mandates a minimum of 16 (and most most GL2
cards also supported it) so we can now safely increase
this limit.
2021-05-16 14:10:32 +02:00
Smittytron
7967a462a1
Add override to prevent Orca construction in Nod07c
2021-05-16 13:27:39 +02:00
Smittytron
e225785744
Remove Medium Tank overrides from Nod08a and Nod08b
2021-05-16 13:27:39 +02:00
Smittytron
46dcdfa58e
Remove Light Tank override from GDI05a
2021-05-16 13:27:39 +02:00
Smittytron
f8debe340f
Add building override for Chem Trooper in GDI05b
2021-05-16 13:27:39 +02:00
Smittytron
83f99727a7
Change E3 to Infantry.Nod in GDI03
2021-05-16 13:27:39 +02:00
Smittytron
cbf84f62d4
Use correct overrides in GDI02
2021-05-16 13:27:39 +02:00
VonNah
fa68954dda
Fixed incorrect Harkonnen Devastator warhead impact sound.
2021-05-15 23:07:25 +02:00
Paul Chote
98caae106f
Move Palette traits to their own directory.
...
Also adds missing TraitLocation definitions.
2021-05-15 15:29:46 +02:00
Paul Chote
3bc42543fa
Decouple color picker palette definitions to their own trait.
2021-05-15 15:29:46 +02:00
Paul Chote
57d955ec72
Change Color.ToAhsv to tuple syntax.
2021-05-15 15:29:46 +02:00
Paul Chote
96e333a30e
Fix TS colorpicker turret facing.
2021-05-15 15:29:46 +02:00
Paul Chote
560f1a6466
Restrict player color choices to the hue-saturation plane.
2021-05-15 15:29:46 +02:00
Paul Chote
4042d5b179
Preserve original brightness when remapping player colors.
2021-05-15 15:29:46 +02:00
Paul Chote
9d62ce214c
Move color picker actor type from metrics to ColorPickerManager.
2021-05-15 15:29:46 +02:00
Paul Chote
f65de2dd43
Merge ColorPreviewManagerWidget into ColorPickerManager.
2021-05-15 15:29:46 +02:00
Paul Chote
7b58f03f1c
Move ColorValidator logic into a new ColorPickerManager trait.
2021-05-15 15:29:46 +02:00
oldnaari
52577c1de9
Fix Atreides silo damaged sequence
...
Fix the Atreides silo rendering as full silo instead of damaged silo when damaged
2021-05-14 13:43:13 +02:00
reaperrr
fc3f200357
Replace F in OrderManager
2021-05-09 15:00:07 +01:00
Paul Chote
d89f14dcbc
Limit resource center queries to 50 maps at a time.
2021-05-09 15:37:30 +02:00
teinarss
96b8273916
Remove FrameData and update OrderManager
2021-05-09 15:08:48 +02:00
Smittytron
eda79d8626
Add Soviet10
2021-05-08 23:57:07 +02:00
teinarss
0c50057220
Update KickSpectators clientCount to be passed as int
2021-05-08 22:20:59 +02:00
teinarss
10676be377
Replace F extension with string interpolation
2021-05-08 22:20:59 +02:00
teinarss
1385aca783
Move ConnectionTarget to its own file
2021-05-08 20:41:40 +02:00
abcdefg30
121959efe4
Update the Desc of AttackBase.FacingTolerance
2021-05-04 10:44:23 -05:00
Paul Chote
8d2ec78713
Replace TerrainType.CustomCursor with Mobile.TerrainCursors.
2021-05-04 11:56:23 +02:00
Paul Chote
01371f2c65
Expose TransformsIntoAircraft move cursor to yaml.
2021-05-04 11:56:23 +02:00
Paul Chote
b344bba59a
Expose Aircraft move cursor to yaml.
2021-05-04 11:56:23 +02:00
Paul Chote
a6d393f19b
Fix a crash when using legacy GL.
2021-05-04 09:46:31 +02:00
Matthias Mailänder
7e19d6a205
Fix Player and Actor Properties / Commands rendering.
2021-05-04 01:13:18 +02:00
reaperrr
92a9f1e234
Split expansion mission categories in Allied and Soviet
...
It's not always apparent from the title which faction a mission
belongs to, and players may want to know beforehand
instead of having to guess.
2021-05-03 19:22:37 +01:00
Greg Solo
c39f7e521a
Use shell param instead of duplicating the flow
2021-05-03 19:17:03 +01:00
Greg Solo
c9b9efe745
Setup debug make to support vscode debug
2021-05-03 19:17:03 +01:00
Vapre
a5a371f1ff
GameSettings, EnableDiscordService.
2021-05-03 11:42:57 +01:00
Matthias Mailänder
b491e892ff
Lint check the harvest cursor.
2021-05-03 10:58:35 +01:00
reaperrr
771932354b
Remove unused leftovers from GDI08a
...
Those became redundant due to using global MoveAndHunt
in SendWaves.
2021-05-01 20:48:28 +02:00
reaperrr
89f270b67c
GDI08a typo fix
2021-05-01 20:48:28 +02:00
abcdefg30
3276373745
Pause rendering when the window is minimized
2021-04-26 21:56:20 +01:00
teinarss
5667081764
Fix log should be disposed correctly
2021-04-26 21:50:26 +01:00
teinarss
b23d533006
Update Log to wait for items in worker thread
2021-04-26 21:50:26 +01:00
Matthias Mailänder
1f01d0b6b1
Add a Fluent based translation system.
2021-04-24 16:49:17 +02:00
reaperrr
f1a9a5180d
Use real (milli)seconds for notifications
...
Allows for more fine-grained control, while
adding independence from gamespeed and getting
rid of magic * 25 multiplications.
2021-04-21 19:34:16 +02:00
Paul Chote
bb8a634ba8
Fix map installation.
2021-04-21 18:57:44 +02:00
Paul Chote
f9294f0e9e
Enable dedicated server lint checks.
2021-04-21 18:57:44 +02:00
Paul Chote
9770967b04
Optimize MapPreview rule loading.
2021-04-21 18:57:44 +02:00
Paul Chote
0bbb32e8ac
Rework MapPreview custom rule handling.
...
The previous asynchronous approach did not work particularly well,
leading to large janks when switching to custom maps or opening the
mission browser.
This commit introduces two key changes:
* Rule loading for WorldActorInfo and PlayerActorInfo is made
synchronous, in preparation for the next commit which will
significantly optimize this path.
* The full ruleset loading, which is required for map validation,
is moved to the server-side and managed by a new ServerMapStatusCache.
The previous syntax check is expanded to include the ability to run
lint tests.
2021-04-21 18:57:44 +02:00
Paul Chote
61d64287e1
Move LoadMaps after InitializeFonts.
...
This allows text to be displayed earlier in the loading screen.
2021-04-21 18:57:44 +02:00
Paul Chote
abee274f88
Remove direct access to MapPreview.Rules.
2021-04-21 18:57:44 +02:00
reaperrr
53e6d974f0
Change Crate.Lifetime from 'seconds' to ticks
...
As far as I could tell, this was the last place that still
used 'seconds' instead of ticks, apart from
some sound notification intervals (which are better
converted to real [milli]seconds).
Also renamed ScaredyCat.PanicLength to PanicDuration for
consistency and easier finding.
2021-04-19 20:03:08 +02:00
reaperrr
e3fd54e147
Replace * 25 in internal tick defaults with actual total
...
While the idea behind it is understandable,
this was inconsistent with the bulk of other defaults.
2021-04-19 20:03:08 +02:00
Vapre
52d39db84a
Fix possible endless loop in replay recorder while opening save file.
2021-04-15 18:10:45 +02:00
reaperrr
27ddae3df9
Fix Move jumpy-ness on MovePart transitions
...
There were 2 issues at work here, both when progress
would overshoot Distance (which is the usual case,
rather than the exception):
- the overshot progress was passed on by MoveFirstHalf, however
OnComplete would make the next MovePart start ticking the
same tick on which the old MovePart reached Distance,
but move by carryoverProgress +(!!!) terrain speed instead of moving
by just the left-over carryoverProgress.
- MoveSecondHalf would not pass any overshot progress to the
next MoveFirstHalf queued by parent Move, leading to
the next MoveFirstHalf performing a full-speed move the same tick
MoveSecondHalf finished its last move.
2021-04-15 18:03:42 +02:00
reaperrr
4c7e3d8f3a
Rename fraction to distance/progress in MovePart
2021-04-15 18:03:42 +02:00
reaperrr
646495fc5f
Simplify MovePart code
...
InnerActivity and UpdateCenterLocation made this
overly complex and hard to read & debug.
This also fixes a bug that would make an outdated
facing being passed during OnComplete (because
InnerActivity was cached before UpdateCenterLocation
could set the correct final facing).
2021-04-15 18:03:42 +02:00
Mustafa Alperen Seki
a9661a233a
Fix Lua error in Har8 when Merc HFac is captured after Palace is killed.
2021-04-13 21:39:24 +02:00
CrazyAlex25
2d05e10819
Modify build properties
2021-04-12 00:44:17 +02:00
Matthias Mailänder
5a0bcc01a6
Add a lint check for trait placement on hardcoded actor names.
2021-04-11 20:20:00 +02:00
Smittytron
0d3c624bbc
Standardize usage of AddObjective in RA missions
2021-04-11 12:26:14 +02:00
Smittytron
26fbcf6076
Change fence owner in Soviet01
2021-04-11 12:26:14 +02:00
Smittytron
418fca3d9e
Move OnAnyDamaged function to campaign-global.lua
2021-04-11 12:26:14 +02:00
Smittytron
dd366f8cf9
Rename top-o-the-world script file
2021-04-11 12:26:14 +02:00
Smittytron
6b63e88056
Move crate lifetime overrides to campaign-rules.yaml
2021-04-11 12:26:14 +02:00
Smittytron
a96e2fb588
Add Soviet11b
2021-04-10 23:00:31 +02:00
Smittytron
ca2f966c3b
Add Soviet 11a
2021-04-10 22:26:40 +02:00
reaperrr
e161d9daa7
Misc TraitDictionary style fixes
2021-04-10 15:59:24 +02:00
reaperrr
aa834db1e3
Make perf.log output for ticking things opt-in
...
Both writing to perf.log frequently as well as GetTimestamp
aren't free and hurt performance particularly on slower systems
(which can have notably higher output to perf.log, further
amplifying the problem).
Therefore we make simulation perf logging opt-in.
Additionally, logging of the current tick and tick type
(local/net) is removed from debug.log, and some
remnant debug logging for kills and pips is removed
to keep performance-sensitive logging limited to
perf.log.
2021-04-10 15:59:24 +02:00
Paul Chote
a1df91b665
Allow BuildingInfluence to track overlapping buildings in the same cell.
2021-04-10 14:28:31 +02:00
Paul Chote
bc286b78bf
Add AnyBuildingAt method to BuildingInfluence.
2021-04-10 14:28:31 +02:00
Paul Chote
19c7e14393
Simplify BuildingInfo.IsCloseEnoughToBase adjacency checks.
2021-04-10 14:28:31 +02:00
reaperrr
1a9dfc0893
Refactor GameSpeed setting
...
*Remove internal GameSpeed defaults
Enforce setting values explicitly all the time
Require definition of a DefaultSpeed
*Remove Global.Timestep default
*Remove the hacky Timestep/OrderLatency setting via LobbyInfo
*Fix shellmaps ignoring mod-defined gamespeeds
*Make DateTimeGlobal use the MapOptions gamespeed
2021-04-09 22:58:14 +01:00
Matthias Mailänder
fe129956bb
Make the resource layer optional in the map editor.
2021-04-07 12:19:55 +01:00
reaperrr
eec7de4646
Fix RA infantry shadow being visible when parachuting
2021-04-04 17:06:03 -05:00
teinarss
605181efe4
Update Log to use worker thread
2021-04-03 22:53:30 +01:00
Paul Chote
fc0ed75a94
Fix Firestorm asset installation.
2021-04-03 15:12:18 -05:00
Smittytron
d95c4146e2
Rework objectives in Situation Critical
2021-04-03 17:58:00 +01:00
Vapre
38f0d50648
Minor optimization. Save a call to IsAlliedWith if not disguised. #18791 .
2021-04-03 17:12:12 +01:00
reaperrr
808d8e63bc
Add GiveUnitCrateActions for ships to RA
2021-04-03 16:22:27 +01:00
reaperrr
55967035d9
Update RA wcrate.shp
...
Now uses the original colors again.
Also added back a frame without shadow (for
parachuting).
2021-04-03 16:22:27 +01:00
reaperrr
13a101f11f
Add a frame with shadow to both TD crate types
...
And remove the crate.shp in return
(which was just scrate.shp with shadow).
Also fixes WCRATE actor to actually use the correct .shp.
2021-04-03 16:22:27 +01:00
Paul Chote
35a0a3cf90
Remove rcedit after building windows packages.
2021-04-03 12:19:41 +02:00
Smittytron
08d8f5d8d9
Swap c1 and c7 out of CivilianEvacuees in Monster Tank Madness
2021-04-03 11:38:33 +02:00
Smittytron
f7c9eccf7a
Add Selectable Class to technicians
2021-04-03 11:38:33 +02:00
teinarss
6ba9e64380
Rename modifiablePalettes to mutablePalettes in HardwarePalette
2021-04-03 11:33:31 +02:00
teinarss
8b0a3ea680
Remove our own impl of ReadOnlyList and update usages
2021-04-03 11:33:31 +02:00
teinarss
e12ff2c59d
Remove our own ReadOnlyDictionary and update usages
2021-04-03 11:33:31 +02:00
Smittytron
afbdb395b2
Add SelectableSupportUnit to Thief
2021-04-03 11:24:00 +02:00
teinarss
3d381e6e32
Make SpriteFont.Measure take zero allocations
2021-04-03 11:22:45 +02:00
Matthias Mailänder
a02737107e
Add a .wsa file reader.
2021-04-03 11:19:06 +02:00
Matthias Mailänder
590ab88c45
Don't prefer braces (for one liners).
2021-04-03 10:53:08 +02:00
Patrick
7a7c07e9c4
fix AreaBeam + GrantExternalConditionWarhead bug
2021-04-02 13:05:20 +02:00
reaperrr
40aafe586d
Move Game.Timestep to Widget
...
Game.Timestep wasn't used for anything other than
UI anymore anyway, moving it makes this more clear.
2021-04-02 12:00:42 +01:00
abcdefg30
6b93f955a4
Fix a crash in LevelUpCrateAction
2021-04-02 11:57:44 +01:00
reaperrr
75a3bb4f0b
CellIsEvaluating perf optimization
...
If an actor has Mobile, it implements IOccupySpace
so we can use OccupiesSpace to save a trait look-up.
2021-03-27 22:29:13 +00:00
reaperrr
441e18b898
Remove PathHash
...
This is 9(!) years old and we haven't had
pathfinding-related desyncs in quite a while.
We can still bring this back later if we ever
need it again.
2021-03-27 22:29:13 +00:00
reaperrr
b8e64df4b1
Remove SmokeTrailWhenDamaged
...
One of the most outdated and limited traits remaining,
which can do nothing LeavesTrails doesn't cover by now.
2021-03-27 18:42:57 +00:00
Matthias Mailänder
d15e7f76fc
Port back to Mono.Nat and make discovery async.
2021-03-27 18:36:12 +00:00
Andre Mohren
3f510b6d93
Make ISpriteLoader aware of the source file name.
2021-03-27 17:36:59 +01:00
teinarss
d60c05eff3
Change to use pattern matching
2021-03-27 17:29:20 +01:00
Paul Chote
7c0e4b25ae
Specify interaction bounds relative to the mod tile size.
2021-03-27 16:31:50 +01:00
Smittytron
852241d98e
Add Allies05c
2021-03-27 14:46:11 +01:00
Smittytron
8deba81214
Add Allies05b
2021-03-27 13:55:27 +01:00
Smittytron
887a093f46
Add Counterstrike mission Siberian Conflict 3: Wasteland
2021-03-27 13:32:40 +01:00
Smittytron
4778dba36d
Fix whitespace issues in RA mission browser
2021-03-27 13:25:22 +01:00
Smittytron
438b2240f4
Add AI infantry production to Soviet02a
2021-03-27 13:25:22 +01:00
Smittytron
58a6333834
Add AI infantry production to Soviet02b
2021-03-27 13:25:22 +01:00
Smittytron
f8feec685f
Use correct sprite for Moneycrate
2021-03-27 13:25:22 +01:00
Smittytron
79404cd397
Link campaign-global.lua to remaining missions
2021-03-27 13:25:22 +01:00
Smittytron
6a6c5848c2
Remove fake building overrides from Survival01
2021-03-27 13:25:22 +01:00
Smittytron
420c8ebc4c
Remove fake building overrides from Allies02
2021-03-27 13:25:22 +01:00
Matthias Mailänder
c0ea95ca46
Update itch user name.
2021-03-27 11:34:03 +00:00
Matthias Mailänder
1a8d971145
Fix a syntax error.
2021-03-27 11:07:35 +00:00
Paul Chote
7afcb9d757
Fix TS infantry player color.
2021-03-27 11:06:12 +01:00
Smittytron
8a5c0736f5
Remove CivilianKilled notification default from TD
2021-03-27 10:58:29 +01:00
Castle
12b6bb9448
Allow BlendMode of RgbaColorRenderer to be changed
2021-03-23 17:07:20 +01:00
reaperrr
e2a6b55d44
Move up Undamaged check in DamageState
...
A mere int comparison is obviously cheaper than
a comparison between two multiplications,
so pulling this above the checks of other damage states
allows us to bail early for undamaged actors.
2021-03-21 17:37:42 +01:00
reaperrr
c240c0a24b
Only apply non-100 damage modifiers in InflictDamage
...
Profiling has shown that filtering them out early is cheaper
than applying those percentage modifiers anyway.
Additionally, profiling shows foreach loops to be cheaper
than LINQ here as well.
2021-03-21 17:37:42 +01:00
reaperrr
2528b79610
Fix D2k DamagesConcrete overrides
2021-03-21 11:09:41 +00:00
Matthias Mailänder
e13fd4816e
Extract the directory if the registry value points to a filename.
2021-03-20 18:42:02 +01:00
Andre Mohren
1f6e0f582a
Fixed aiming not propertly stopped.
2021-03-20 18:33:04 +01:00
Matthias Mailänder
bbbed49f82
Add a lint check for cursor definitions.
2021-03-20 17:37:16 +01:00
Matthias Mailänder
cefb2e7cc6
Remove unused trait lookup.
2021-03-20 17:37:16 +01:00
Paul Chote
470bc4e092
Polish deployed mobile sensor array:
...
- Force temperate palette to avoid glitches on snow maps
- Add missing active animation
2021-03-20 17:15:56 +01:00
Paul Chote
08c7c80bb7
Render building lights as their own tint-ignoring animations.
2021-03-20 17:15:56 +01:00
Paul Chote
5832ec76d4
Render integrated muzzle flashes as their own tint-ignoring animations.
2021-03-20 17:15:56 +01:00
Paul Chote
594e5b80d7
Add WithMakeOverlay trait.
2021-03-20 17:15:56 +01:00
Paul Chote
14a434975a
Add facing support to WithAttackOverlay.
2021-03-20 17:15:56 +01:00
Paul Chote
6854b23bcc
Add custom palette support to WithSpriteBody.
2021-03-20 17:15:56 +01:00
Paul Chote
0c52d275fa
Add TransparentIndex to PaletteFromFile.
2021-03-20 17:15:56 +01:00
Paul Chote
e63b9b4986
Add condition support to ActorLostNotification.
2021-03-20 17:07:29 +01:00
Paul Chote
0e270bec56
Restrict Chronoshiftable trait to Mobile and Husk actors.
2021-03-20 17:04:42 +01:00
Andre Mohren
f5f06b86ad
ExplosionOnDamageTransition now Conditional.
2021-03-20 17:02:47 +01:00
Paul Chote
fcc3008b00
Implement proper TS Tiberium and Vein logic.
2021-03-20 16:45:41 +01:00
Paul Chote
0bdd46451e
Overhaul resource layer logic:
...
* ResourceType trait has been removed.
* Simulation-related data is now defined on the
ResourceLayer (which mods can subclass/replace).
* Support non-money resources by moving the resource
values to the PlayerResources trait.
* Allow mods to disable the neighbour density override
and instead always use the map-defined densities.
* Allow mods to define their own resource placement
logic (e.g. allow resources on slopes) by subclassing
(Editor)ResourceLayer.
* Improve ability to subclass/override ResourceRenderer
by exposing more virtual methods.
2021-03-20 16:45:41 +01:00
Paul Chote
c35e9fb016
Remove custom D2k spice variant logic and improve editor cursor sprite.
2021-03-20 16:45:41 +01:00
Paul Chote
80e92849da
Replace ResourceType with strings in interfaces/public methods.
2021-03-20 16:45:41 +01:00
Paul Chote
dcd8eccee4
Replace ResourceLayer references with IResourceLayer in traits/warheads.
2021-03-20 16:45:41 +01:00
Paul Chote
5adcbe4c78
Use IResourceLayer for editor resources.
2021-03-20 16:45:41 +01:00
Paul Chote
0b93556c06
Add resource updating methods to IResourceLayer.
2021-03-20 16:45:41 +01:00
Paul Chote
7e9d291223
Add IResourceRenderer interface.
2021-03-20 16:45:41 +01:00
Paul Chote
1dc26a9b8e
Pass resource type and count to IAcceptResources instead of the value.
2021-03-20 16:45:41 +01:00
Paul Chote
3dbc6400a6
Use IResourceLayer in BaseBuilderBotModule.
2021-03-20 16:45:41 +01:00
reaperrr
adf1aeb06a
Add support for pool-specific ammo pips decoration
2021-03-20 15:31:41 +01:00
Vapre
be224934a5
FieldLoader, use dictionary for GetValue to make it twice as fast.
2021-03-17 18:18:53 +01:00
teinarss
6b74093c04
Add readonly to structs
2021-03-14 15:17:57 +01:00
reaperrr
65c796dec7
Use Mobile.Pathfinder to reduce trait look-ups
2021-03-14 12:28:54 +00:00
reaperrr
503e706d45
Check for IsReloading in HasAnyValidWeapons
...
For Attack*.CanAttack().
Allows us to drop the additional check for armaments with ammo.
2021-03-14 12:28:54 +00:00
reaperrr
a1f974bd40
Save Mobile trait look-up in AttackBase
2021-03-14 12:28:54 +00:00
Unrud
11171ff649
Makefile: Fail target version when not a git repository
2021-03-13 15:57:17 +00:00
Paul Chote
3ff1888d74
Fail Situation Critical if Volkov is killed before entering the world.
2021-03-13 15:55:24 +00:00
Paul Chote
cbea08e1fe
Fix non-relative path handling in install logic.
2021-03-13 15:56:38 +01:00
Paul Chote
b622afd7fd
Fix self-contained packaging.
2021-03-13 13:12:31 +01:00
Paul Chote
7694d0842b
Fix two outdated comments.
2021-03-12 21:52:16 +01:00
Paul Chote
a90e6940ab
Add sequence scale and alpha support to ShroudRenderer.
2021-03-12 21:52:16 +01:00
Paul Chote
96c3825b6a
Add alpha support to TerrainSpriteLayer.
2021-03-12 21:52:16 +01:00
Paul Chote
a6467cb515
Fix Nullable type handling in Lua docs.
2021-03-10 17:46:44 +01:00
Paul Chote
d52ba83f96
Replace terniary null checks with coalescing.
2021-03-08 18:11:25 +01:00
reaperrr
2473b8763b
Rename methods/activities with Visual in them
...
While they may be only 'visual' in terms of influence/cell grid,
they all do update CenterPosition, which is essentially the
actual world position of the actor.
'Visual' would imply that it only affects the position where the
actor is drawn, which is inaccurate.
Furthermore, using the term 'Visual' here would make
naming future methods/properties related to visual interpolation
unnecessarily complicated, because that's where we might
need a real 'Visual(Only)Position'.
2021-03-08 11:19:11 +01:00
teinarss
7073279ab8
Replace WebClient with HttpClient
2021-03-07 16:04:57 +00:00
teinarss
ed43071792
Compile engine and mod dlls as NET5 when not using mono
2021-03-07 16:04:57 +00:00
teinarss
4a1e4f3e16
Use expression body syntax
2021-03-07 13:00:52 +00:00
Paul Chote
555c43843b
Fix lobby checkbox event rectangle overlapping with scrollbars.
2021-03-05 18:58:51 +01:00
Paul Chote
a0d75d1e63
Fix rendering artifacts with RA's dialog5 background.
2021-03-05 18:33:39 +01:00
reaperrr
1a7a47fa08
Randomize AI idle harvester scan intervals
2021-02-28 18:58:03 +01:00
teinarss
c2279d3071
Change GetField calls to use nameof
2021-02-28 18:43:51 +01:00
teinarss
ed295ae315
Change throw exceptions to use nameof in parameter
2021-02-28 18:43:51 +01:00
teinarss
53b781960c
Change FieldLoader.LoadUsing to use nameof
2021-02-28 18:43:51 +01:00
penev92
6b794ba3e5
Added the "missing" song to the D2k TestFiles
...
Since it's music it's optional, so the players still won't know anything happened, but if they do open the content manager they will have a chance for an automatic installation.
2021-02-28 12:29:15 +00:00
penev92
2f95e56256
Fixed incorrect D2k song installation
2021-02-28 12:29:15 +00:00
pizzaoverhead
c8644adc85
Fix TLS error on Win7.
2021-02-28 10:15:29 +00:00
Paul Chote
8b81078929
Fix lighting effects in "The Pit" map.
2021-02-24 19:20:48 +01:00
Paul Chote
76a10283c4
Fix TS effect translucency/lighting effects.
2021-02-24 19:20:48 +01:00
Paul Chote
0975102e92
Add Alpha support to sequences.
...
Alpha can specify a single value for the sequence
or values for each frame in the sequence.
AlphaFade: True can be specified to linearly fade
to transparent over the length of the animation.
2021-02-24 19:20:48 +01:00
Paul Chote
445d943549
Remove obsolete shadow palette definitions.
2021-02-20 02:08:40 +01:00
Paul Chote
554486fb0b
Replace projectile, WithShadow, WithParachute shadows with tint effects.
2021-02-20 02:08:40 +01:00
penev92
1c1af89bb9
Fixed D2k VQA videos crashing the game
2021-02-19 13:38:12 +01:00
Trevor Nichols
536c130a39
Add MSADPCM audio format decoding support
2021-02-19 01:56:57 +01:00
Matthias Mailänder
5aa67a42c1
Bump Eluant version to support Unicode strings.
2021-02-18 23:16:49 +01:00
Paul Chote
f661d1ba48
Remove OLDLST campaign overrides.
2021-02-14 18:13:21 +01:00
reaperrr
717b9ba1e6
Fix TS GDI temperate radar sprite
...
Unlike its snow counterpart, the transition between building
and its shadow was jarring, making it look as if there was a
1-pixel gap between them. Fixed that.
Also applied some very subtle polish by replacing some non-
remapable red pixels (nothing worth porting to snow variant, though).
2021-02-14 14:40:58 +00:00
reaperrr
c57cc96145
TS radars Z offset fixes
...
The lower borders of the sprites were cut off without this.
2021-02-14 14:40:58 +00:00
Smittytron
16fa1ef144
Change Z-offsets that overlap Repair Facility
2021-02-14 14:31:50 +00:00
Smittytron
788f0f3e24
Change Z-offsets that overlap Service Depot
2021-02-14 14:31:50 +00:00
Unrud
ccf9c8fb22
AppStream Metadata: Add violence-worship: moderate
2021-02-14 14:16:53 +00:00
Unrud
ee31146501
Update AppStream metadata for linux packaging
...
A few small improvements:
* The type `desktop` was renamed to `desktop-appliaction` (a long time ago)
* Add `launchable` to tell how the application can be launched
* Use `https` for homepage link
* Add link to the bugtracker
* Update `oars-1.0` to `oars-1.1`
* Remove all unnecessary `content_attribute` entries with value `none`
2021-02-14 14:16:53 +00:00
Vapre
f176a0ed83
Fix. Call EndGame in one place of server main loop. Ensure UPnP port forward is removed always. 18807.
2021-02-14 13:54:48 +00:00
Matthias Mailänder
e7cfd2765c
Make UI cursors configurable.
2021-02-14 13:09:59 +00:00
abcdefg30
96c4554644
Remove GenericSelectTarget
2021-02-14 12:51:12 +00:00
Mustafa Alperen Seki
df94f0ec8b
Add InitialActor to Carryall.
2021-02-14 12:47:08 +00:00
Adam Mitchell
9ee7294c81
Improve shroud performance
2021-02-12 20:58:56 +01:00
Smittytron
5cf622fb6e
Improve AI response in Nod03b
2021-02-12 20:38:37 +01:00
Smittytron
8711d8799c
Improve AI response in Nod03a
2021-02-12 20:38:37 +01:00
Smittytron
e9a6a3afc5
Add clarifying objective to Monster Tank Madness
2021-02-12 02:30:12 +01:00
abcdefg30
9c29264be7
Drop FlyAttackRun targets when we don't have valid armaments against them
2021-02-12 02:17:26 +01:00
abcdefg30
e6c9d5fc96
Don't check IsTraitDisabled twice when calculating IsTargetableBy
2021-02-12 02:17:26 +01:00
Paul Chote
d09476c603
Remove custom palettes from building placement previews.
2021-02-12 02:08:30 +01:00
Orb
5bda6852a4
APC Balance Tweak Commit
2021-02-09 23:07:44 +01:00
Ivaylo Draganov
641b05eb21
Split settings panels logic and add support for custom panels
2021-02-08 11:25:50 +01:00
reaperrr
62fd11d5c4
Fix deployed tick tank sprites
...
Several pixels used non-remapable red colors.
2021-02-06 22:46:52 +01:00
Smittytron
e807664437
Add TanyaRescued speech notification to Downunder
2021-02-06 01:18:48 +01:00
Smittytron
e46440b94f
Correct the ownership of walls in Allies05a
2021-02-06 01:18:48 +01:00
Smittytron
30ea1e23b4
Delay SendReinforcements() to split notifications
2021-02-06 01:18:48 +01:00
Smittytron
4db2fd980a
Kill pillboxes with barrels in Soviet01
2021-02-06 01:18:48 +01:00
Smittytron
9580d61fb0
Fix spaces in Monster Tank Madness
2021-02-06 01:18:48 +01:00
Smittytron
27aefcc0ce
Fix tabs in Ant01
2021-02-06 01:18:48 +01:00
Smittytron
b8b1a4930c
Change BarrelExplode CreateEffect to large_napalm
2021-02-05 23:41:03 +01:00
Smittytron
d7a40f3bdb
Change BarrelExplode to use FireDeath
2021-02-05 23:41:03 +01:00
Paul Chote
fb0031d34a
Rename remaining Stance references to PlayerRelationship.
2021-02-04 23:14:09 +01:00
Paul Chote
b3821e71dc
Fix Tanya's prone firing animations.
2021-02-02 23:05:07 +01:00
Unrud
8a90413b87
Use version from VERSION file
...
The `VERSION` variable doesn't work with a release tarball, because it requires git to be set correctly.
Instead this reads the version from the `VERSION` file.
2021-02-01 23:13:48 +01:00
abcdefg30
115984054d
Increase the reload delay of the prison colt to match the normal colt
2021-01-31 22:35:42 +00:00
abcdefg30
69addda86c
Fix the gun sounds not playing in Allies05a
2021-01-31 22:35:42 +00:00
Smittytron
c2379f251d
Fix crash in Allies 05a on SamBarrel kill
2021-01-31 18:52:47 +01:00
abcdefg30
3422bf1b59
Remove the 'docs' target from the windows make file
2021-01-30 21:08:25 +00:00
Paul Chote
e830d1e9c2
Fix Concrete placement on invalid terrain.
2021-01-30 14:48:04 +01:00
Smittytron
f767c24601
Remove SpawnActorOnDeath from civilian structures
2021-01-30 13:47:14 +01:00
Paul Chote
2c09b1414c
Ignore invalid server entries instead of the entire list.
2021-01-30 13:44:51 +01:00
Paul Chote
df1191db5b
Don't crash if a null uid is given to QueryRemoteMapDetails.
2021-01-30 13:44:51 +01:00
Paul Chote
62433ecb8b
Prevent AttackPopupTurreted.TickIdle from running while disabled.
2021-01-30 13:16:58 +01:00
Paul Chote
09f680201f
Restore missing versioned source code package.
2021-01-30 13:04:23 +01:00
reaperrr
5ba662cfae
Fix RA inf death anims playing too fast
2021-01-30 01:23:39 +00:00
Paul Chote
d6d0fd597d
Fix Tanya firing animation.
2021-01-29 15:04:42 +01:00
Paul Chote
fec1c813a5
Support burst-specific infantry attack animations.
2021-01-29 15:04:42 +01:00
Paul Chote
547b6d19dc
Reduce Tanya firing rate.
2021-01-29 15:04:42 +01:00
Paul Chote
5e6dd50c3b
Suppress error messages from make.ps1 clean.
...
Also removed obsolete ./*/bin removal.
2021-01-29 14:54:40 +01:00
Paul Chote
4251ed69bb
Keep Discord join button active for spectators.
2021-01-29 14:38:13 +01:00
Paul Chote
b05ee80d5c
Remove first-client check from LobbySettingsNotification.
...
ClientWithIndex may rarely be null, causing a crash.
In any case we do want to report these changes to the first client, as
somebody else may have changed the settings and left.
2021-01-29 14:35:32 +01:00
Paul Chote
84ced8704d
Fix bot-controlled aircraft stalling above cloaked targets.
2021-01-29 14:30:27 +01:00
teinarss
58313520f0
Change renderables to class to avoid boxing
2021-01-29 00:24:27 +01:00
reaperrr
0d8ef1a1dd
Make Contrail conditional and public
...
Also moved it to 'Render' subfolder while at it.
2021-01-28 23:30:45 +01:00
Matthias Mailänder
28ddab7cc2
Disallow building sell during construction.
2021-01-27 22:51:58 +01:00
Matthias Mailänder
8f06b0a836
Add a "structure sold" notification.
2021-01-27 22:51:58 +01:00
Paul Chote
3b768dacf5
Increase map chooser dialog size to match the lobby.
2021-01-25 20:43:53 +01:00
Smittytron
d67b3245e0
Change hospital owner in Nod07b
2021-01-24 10:47:05 +00:00
abcdefg30
a1dd1fc5d1
Fix an compiler error on bleed
2021-01-23 23:15:58 +00:00
Paul Chote
889153ce81
Add shadow rendering for resource sprites.
2021-01-23 20:59:53 +01:00
teinarss
30e5c807b0
Add Map and server name to discord details
2021-01-22 14:14:02 +01:00
Paul Chote
db2fded24d
Fix AutoTarget.ChooseTarget ignoring AttackBase.TargetFrozenActors.
2021-01-21 19:25:07 +01:00
Paul Chote
82a9809192
Remove RenderSprites.Scale.
2021-01-21 18:22:11 +01:00
Paul Chote
f6b40b2bce
Allow sequences to define a Scale factor.
2021-01-21 18:22:11 +01:00
abcdefg30
fd75e03d9c
Use pattern matching in FieldSaver
2021-01-21 18:05:07 +01:00
Paul Chote
d6a05f2ea2
Fix Sardarkaur not attacking while attack-moving.
2021-01-17 19:42:49 +01:00
Paul Chote
f51603e440
Add ShpRemastered sprite loader.
2021-01-16 23:16:34 +01:00
Paul Chote
f341c9a8a6
Add TGA and DDS sprite loaders.
2021-01-16 23:16:34 +01:00
Paul Chote
765944cfa2
Switch macOS and Linux default toolchain to .NET 5.
2021-01-16 22:58:05 +01:00
Paul Chote
15c926b6b9
Move DefineConstants="MONO" into OpenRA.Game.csproj.
2021-01-16 22:58:05 +01:00
teinarss
b486112c98
Fix broken editorconfig
2021-01-16 22:28:17 +01:00
Paul Chote
223a0015a6
Allow terrain depth sprites to be loaded from a second file.
2021-01-16 22:09:08 +01:00
Paul Chote
632af7c7e6
Support mixed indexed/BGRA terrain tiles.
2021-01-16 22:09:08 +01:00
Paul Chote
142870d78a
Support multiple sheets in TerrainSpriteLayer.
2021-01-16 22:09:08 +01:00
Paul Chote
b0aa32cd1b
Support multiple palettes in TerrainSpriteLayer.
2021-01-16 22:09:08 +01:00
Matthias Mailänder
281229e8b4
Update path according to latest appstream specifications.
2021-01-16 20:02:19 +01:00
Matthias Mailänder
8f0d53ffd9
Document the target platform parameter during install
...
as it otherwise copies the system binaries.
2021-01-16 20:02:19 +01:00
Matthias Mailänder
ddfa5a4d35
Get rid of unnecessary Makefile variables.
2021-01-16 20:02:19 +01:00
Matthias Mailänder
cbf2e2e2ef
Don't contain the build root in the wrappers.
2021-01-16 20:02:19 +01:00
Matthias Mailänder
62803aff88
Create BIN_PATH first on shortcut installation.
2021-01-16 20:02:19 +01:00
VonNah
bc9cd57fa0
Fix vehicle explosion and missile impact sounds in Tiberian Dawn
2021-01-16 01:32:20 +00:00
VonNah
93fa9bdfb8
Fixed an issue where RadarUp and DisablePower/EnablePower use the wrong sound effects.
...
Signed-off-by: VonNah <vonnahora@gmail.com >
2021-01-16 00:48:35 +00:00
reaperrr
808c5f0951
Remove ScriptTriggers from map deco actors
...
Removes it from destroyed fields, trees and rocks in RA and C&C.
This trait isn't free in terms of performance due to all the
INotify* calls, and the mentioned actors should rarely
- if ever - need it. Besides, if a mission ever really needs
this on those actors, the trait can be added back via
map rules.
2021-01-16 00:44:03 +00:00
Paul Chote
a70637f28f
Fix missing System.Threading.Tasks.Parallel in packaged net5 builds.
2021-01-15 12:18:00 +01:00
Paul Chote
a12e4657ee
Update apt metadata before installing dependencies.
2021-01-12 23:09:11 +01:00
Paul Chote
53db1230ab
Move default tileset parsing to Mods.Common.
2021-01-11 21:57:55 +01:00
Paul Chote
207e09fea9
Add plumbing for mod-defined terrain loaders.
2021-01-11 21:57:55 +01:00
Paul Chote
b86b638700
Move editor template rendering to TerrainRenderer.
2021-01-11 21:57:55 +01:00
Paul Chote
995c33a942
Remove Ruleset.TileSet.
2021-01-11 21:57:55 +01:00
Paul Chote
6d6efd5fe8
Move tileset image validation to TerrainRendererInfo.
2021-01-11 21:57:55 +01:00
Paul Chote
2782620081
Add ITemplatedTerrainInfo interface.
2021-01-11 21:57:55 +01:00
Paul Chote
be2ca77acf
Add ITerrainInfoNotifyMapCreated interface.
2021-01-11 21:57:55 +01:00
Paul Chote
87790069e9
Add ITerrainInfo interface.
2021-01-11 21:57:55 +01:00
Paul Chote
0a374e2264
Move ownership of tile sprites to the terrain renderer.
2021-01-11 21:57:55 +01:00
Paul Chote
2eee911c58
Fix infantry freezing death animations in Top o' the World mission.
2021-01-11 11:32:38 +01:00
Paul Chote
bb65646c4d
Fix Grenadier death animation in Sarin Gas 3 mission.
2021-01-11 11:32:38 +01:00
Paul Chote
fea700fb72
Add death types support to the Lua Kill() API.
2021-01-11 11:32:38 +01:00
tovl
560c3230cd
Let harvesters only search for refineries when needing to unload.
2021-01-10 23:43:48 +01:00
Paul Chote
e990a83b7a
Cancel support power targeting if power cannot be activated.
2021-01-10 22:42:32 +01:00
Paul Chote
02a2624bcc
Add a per-player handicap option to the lobby.
...
Handicaps reduce unit health, firepower, and build speed.
2021-01-10 22:23:52 +01:00
Paul Chote
c7c78eda80
Increase lobby and server list width.
2021-01-10 22:23:52 +01:00
Paul Chote
b1200b8078
Switch make.ps1 to downloading from our GeoIP data mirror.
2021-01-10 21:13:26 +01:00
Matthias Mailänder
0cb25f1044
Fix syntax errors.
2021-01-10 21:06:39 +01:00
Matthias Mailänder
8ee728891d
Use the GitHub action variable for clickable links.
2021-01-10 21:06:39 +01:00
Matthias Mailänder
bbaa475287
Update SDL 2 nuget package to match the platform.
2021-01-10 21:04:44 +01:00
Matthias Mailänder
7bc17b59f5
Add a generic video player widget.
2021-01-10 10:21:17 +01:00
Smittytron
514652bb6a
Add Aftermath mission Shock Therapy
2021-01-10 02:34:50 +01:00
Paul Chote
3e7665146a
Avoid BuildUnit crash if the item is invalidated before the task runs.
2021-01-10 01:34:51 +01:00
Paul Chote
16d0f8a5a6
Add a setting to pause the shellmap.
2021-01-10 00:23:30 +01:00
Paul Chote
aeab9a8116
Group bot AttackMove orders.
2021-01-09 23:55:50 +01:00
Orb
f9a5669eb4
Playtest-Balance-Tweaks Commit
2021-01-09 23:22:49 +01:00
Paul Chote
868736fe1a
Remove obsolete --check-runtime-assemblies utility command.
2021-01-09 19:53:22 +01:00
Paul Chote
0984de6bea
Change install_assemblies_mono to install all bin contents.
2021-01-09 19:53:22 +01:00
Paul Chote
69ffd70d3f
Switch Appimages to net 5.
2021-01-09 19:53:22 +01:00
Paul Chote
2fae69c0ba
Run appimagetool directly.
2021-01-09 19:53:22 +01:00
Paul Chote
f1d66a4c70
Use ULFO format for non-compat disk images (requires macOS 10.11+).
2021-01-09 19:53:22 +01:00
Paul Chote
84ce33fe9c
Trim unused assemblies to reduce packaged size further.
2021-01-09 19:53:22 +01:00
Paul Chote
e583165dff
Replace duplicate runtime files with hardlinks to reduce dmg size.
2021-01-09 19:53:22 +01:00
Paul Chote
7bedba5837
Switch macOS packages to .NET 5.
2021-01-09 19:53:22 +01:00
Paul Chote
8c9b9df125
Change WithColoredOverlay to use a color instead of a palette.
2021-01-06 00:06:51 +01:00
Paul Chote
96641873ae
Replace highlight palette with tint effects.
2021-01-06 00:06:51 +01:00
Paul Chote
8edd9de278
Replace ITintableRenderable with IModifyableRenderable.
2021-01-06 00:06:51 +01:00
Paul Chote
67754e8693
Add alpha support to SpriteRenderer.
2021-01-06 00:06:51 +01:00
Paul Chote
b88495c689
Remove palettes from base IRenderable.
2021-01-06 00:06:51 +01:00
Paul Chote
71b13c7b5d
Disable AttackPopupTurreted state changes when paused.
2021-01-03 12:46:47 +01:00
nvrnight
b3f39bffce
Issue #18936 : The game no longer crashes when TextFieldWidget sends Enter key press and onSelect action is null.
2021-01-03 12:26:52 +01:00
Smittytron
b44a9ab5fc
Fix palettes in Fall of Greece 1
2021-01-02 22:43:28 +01:00
Smittytron
e34255b0b2
Add campaign-palettes to missions lacking it
2021-01-02 22:43:28 +01:00
Paul Chote
2fee62af4d
Fix exit priority ordering.
2021-01-02 15:43:03 +01:00
Paul Chote
fc1032cd9e
Start rally point lines at the spawn position instead of the exit cell.
2021-01-02 15:29:18 +01:00
Paul Chote
60195e2842
Prevent Health: 100 from being added to actors.
2021-01-02 15:12:20 +01:00
Paul Chote
6fed31717c
Fix map editor inverting preview color channels.
2021-01-02 11:43:55 +01:00
Paul Chote
aee3eb99c3
Fix --dump-sequence-sheets crash.
2021-01-02 11:43:55 +01:00
Paul Chote
3aa6fd3dc4
Add a friendly type name for Nullable<T>.
2021-01-02 11:38:24 +01:00
teinarss
5e74e58b22
Add support for dotnet core for Windows
2021-01-01 19:42:01 +01:00
abcdefg30
fef7a018f2
Add an update rule
2020-12-31 12:09:56 +01:00
abcdefg30
1d4891b017
Rename several MP traits
2020-12-31 12:09:56 +01:00
Ivaylo Draganov
e9a803e3c1
Update launch.json to work with the new launcher
2020-12-30 17:31:37 +01:00
Nah
4abe7d5895
Update defaults.yaml
...
Fix the Building's SoundOnDamageTransition DamagedSounds with the correct one and add a second sound file to DestroyedSounds for more variation like in the original Tiberian Dawn.
2020-12-30 14:06:56 +00:00
abcdefg30
cd68db5c11
Move myes1 and mrise1 from Select to Move Mechanic Voices
2020-12-30 02:01:00 +00:00
abcdefg30
ae9f437bb8
Enable mechanic voices from Aftermath
2020-12-30 02:01:00 +00:00
Smittytron
a047893049
Remove out of bounds actors from Exodus
2020-12-30 01:51:27 +00:00
Smittytron
5b2733decf
Fix lag issue on Exodus by narrowing exit area
2020-12-30 01:51:27 +00:00
Ivaylo Draganov
ff60540fac
Add player random faction info in the objectives panel
2020-12-30 01:44:50 +00:00
abcdefg30
a68a91bb39
Explicitly return on failure in make.ps1
2020-12-29 21:26:07 +01:00
abcdefg30
0bf8d2241f
Correct Shock Trooper Move and Select voices
2020-12-29 21:15:53 +01:00
Orb
06850e6271
Fix-MT-Sound-Commit
2020-12-28 10:56:20 +01:00
Paul Chote
62fa3b7c9c
Rename SpriteFrameType enums.
2020-12-25 18:51:25 +01:00
Paul Chote
ce09b402d0
Fix definition and use of non-indexed sprite color channels.
...
Our SpriteFrameType names refer to the byte channel order rather than
the bit order, meaning that SpriteFrameType.BGRA corresponds to the
standard Color.ToArgb() etc byte order when the (little-endian) integer
is read as 4 individual bytes.
The previous code did not account for the fact that non-indexed Png
uses big-endian storage for its RGBA colours, and that SheetBuilder
had the color channels incorrectly swapped to match and cancel this out.
New SpriteFrameType enums are introduced to distinguish between BGRA
(little-endian) and RGBA (big-endian) formats, and also for 24bit data
without alpha. The channel swizzling / alpha creation is now handled
when copying into the texture atlas, removing the need for non-png
ISpriteLoader implementations to allocate an additional temporary array
and reorder the channels during load.
2020-12-25 18:51:25 +01:00
Paul Chote
6e7ad9df25
Remove vestigial translation plumbing.
...
This was never completed to the level required to
be properly used ingame.
2020-12-25 16:18:28 +01:00
Matthias Mailänder
fb20479379
Add .vxl support to the asset browser.
2020-12-25 00:00:11 +00:00
Matthias Mailänder
9d181e88d2
Name the files that cause crashes.
2020-12-25 00:00:11 +00:00
Vapre
e90fc1ef39
As proposed by Leonardo-Ferreira.
2020-12-24 23:43:35 +00:00
Vapre
ce013f17d6
Server DispatchOrdersToClients create frame once for all clients.
...
Avoid creating frame data per client connection. Avoid
the allocation of a memory stream and setting frame header
and copying frame data.
2020-12-24 23:43:35 +00:00
Vapre
78253ce284
Activity, fixes.
...
Do not call SkipDoneActivities method recursively via the
NextActivity property. Rather use the nextActivity member.
Avoiding additional function calls and a recursively
growing stack.
Do not call ChildActivity and NextActivity properties
twice in a row. Once to test for null and after to access
it's value. It will cause the complete list of activities
to be traversed twice looking for non done activities.
Replace Queue method with a version that does not the
NextActivity property causing an extra call to
SkipDoneActivities. Avoid calling Queue recursively.
Similar replace QueueChild with a version that does
not call additional methods.
Note that ActivitiesImplementing returns only non
done activities. The method name does not suggest this.
Please consider making NextActivity a method to cleary indicate it
involves the logic of skipping Done activities. To let
the called know it is 'expensive'.
Please consider renaming the protected property ChildActivity to
FirstChildActivityNotDone to avoid it being used as childActivity.
Please consider maintaining a pointer to the first
non done activity. This avoids the need the each time find it.
2020-12-24 23:02:07 +00:00
Taryn Hill
2671e40c1d
feat: ActorSpawnManager.SpawnInterval supports 1 or 2 values
...
Providing 2 values creates a range from which a value is randomly selected.
2020-12-24 22:15:15 +00:00
Matthias Mailänder
04cda69ef9
This compression is actually not yet supported.
2020-12-24 22:05:37 +00:00
Matthias Mailänder
b4c483ce1a
Fix channels.
2020-12-24 22:05:37 +00:00
Matthias Mailänder
9a9f58d744
Support 8 bit .aud files.
2020-12-24 22:05:37 +00:00
Matthias Mailänder
d38fe542a2
Improve performance.
2020-12-24 15:56:18 +00:00
Matthias Mailänder
80503fbf36
Bump SharpZipLib.
2020-12-24 13:48:21 +00:00
Paul Chote
99a23b4056
Fix an incorrect comment in install_assemblies_mono
2020-12-24 12:08:56 +01:00
Matthias Mailänder
13a7de4b6b
Allow a system chat label override.
2020-12-24 10:01:54 +00:00
teinarss
73bba97aaa
Update MasterServerPinger to modern approach
2020-12-22 20:57:40 +01:00
abcdefg30
d6e9cdab5b
Add the 9th Dark Tournament map as "Oil Spill"
2020-12-21 21:08:39 +01:00
Paul Chote
1a177bc2de
Remove unused variables from Map.SavePreview.
2020-12-19 13:07:01 +01:00
Paul Chote
e0b3e631fe
Remove obsolete null checks.
2020-12-19 13:07:01 +01:00
Paul Chote
2518a353af
Add lint test for invalid map tiles.
2020-12-19 13:07:01 +01:00
Paul Chote
989800efff
Fix missing tiles in upstream maps.
2020-12-19 13:07:01 +01:00
Paul Chote
c02846e2cb
Replace invalid tiles on map load.
2020-12-19 13:07:01 +01:00
Matthias Mailänder
09db4a0e25
Enable debug mode by default.
2020-12-15 23:06:05 +01:00
Trevor Nichols
a85da9d86c
Implement loader for MegV3 file format
2020-12-15 11:11:05 +01:00
Paul Chote
920d00bbae
Use nearest-neighbour scaling in --debug-chrome-regions utility command.
2020-12-14 22:38:25 +01:00
Ivaylo Draganov
62475279ee
Remove unneeded chrome yaml declarations
2020-12-14 20:52:38 +01:00
Matthias Mailänder
d8e979d283
Remove dead code.
2020-12-14 20:38:50 +01:00
Paul Chote
299b8880dd
Fix api output directory.
2020-12-14 18:33:35 +01:00
Paul Chote
61027e4067
Fix docs.openra.net repository reference.
2020-12-14 18:33:35 +01:00
Paul Chote
a7249c10dc
Fix docs.openra.net documentation workflow.
2020-12-13 15:35:31 +01:00
Paul Chote
611d12ac78
Migrate CI and packaging from Travis CI to GitHub Actions.
2020-12-12 20:17:29 +00:00
abcdefg30
ef9f26a60d
Fix MissionObjectives not properly ending the game
2020-12-12 14:59:49 +01:00
abcdefg30
aeaffc0a8e
Properly restrict the spectator view in mission maps
2020-12-12 14:59:49 +01:00
Paul Chote
e3084e230e
Switch mirror for nsis3 package.
2020-12-12 14:54:50 +01:00
Paul Chote
4c01c772f8
Fix incorrect animation playing when moving infantry stop to attack.
2020-12-12 14:40:13 +01:00
Paul Chote
ed94f7680a
Revert "Fix WithInfantryBody wrongly overwriting attack animations"
...
This reverts commit 1a63cc4a41 .
2020-12-12 14:40:13 +01:00
yuantse
408d66cdaf
Add Allies 09a
2020-12-12 13:18:08 +01:00
Smittytron
c4a0f2f169
Add Counterstrike mission Sarin Gas 3: Controlled Burn
2020-12-12 13:15:18 +01:00
Paul Chote
26b28d26da
Prevent Civilians from wandering onto Tiberium.
2020-12-12 12:54:46 +01:00
Paul Chote
8ded6dafd4
Add AvoidTerrainTypes to ScaredyCat.
2020-12-12 12:54:46 +01:00
Paul Chote
57a94ad667
Add AvoidTerrainTypes to Wanders.
2020-12-12 12:54:46 +01:00
Paul Chote
53933a4d8f
Fix restart black screen race condition.
2020-12-11 22:57:57 +01:00
Paul Chote
6606d7dd93
Add DisplayFaction details to the replay metadata.
2020-12-11 18:05:44 +01:00
Paul Chote
7a256dcafa
Fix rally point target line exit display.
2020-12-11 17:25:30 +01:00
abcdefg30
7899c52b6d
Add an update rule
2020-12-11 17:13:02 +01:00
abcdefg30
919c670502
Update the rules of the default mods
2020-12-11 17:13:02 +01:00
abcdefg30
aac3174efc
Rename Stances to Relationships in the yaml api
2020-12-11 17:13:02 +01:00
Paul Chote
a8d3d5c79a
Fix Neutral crushing checks.
2020-12-08 20:17:11 +01:00
Paul Chote
7c852d90fb
Ignore aircraft when searching for enemy targets.
2020-12-07 23:39:22 +01:00
Paul Chote
269ce9c406
Exclude carryalls from AI squads.
2020-12-07 23:39:22 +01:00
Paul Chote
53d98ec255
Abort squad states that are not able to move.
2020-12-07 23:39:22 +01:00
Paul Chote
7a7cd21578
Fix TD SAM Site facings being reset when damaged while closed.
2020-12-07 01:44:04 +01:00
abcdefg30
2b363e4e1c
Fix WithInfantryBody wrongly overwriting attack animations
2020-12-07 00:29:16 +01:00
Paul Chote
b1560ae69c
Overhaul packaging scripts and helpers:
...
- Shared helpers extracted to functions.sh for use by upstream packaging,
Mod SDK, and downstream packaging (via the Makefile targets).
- Assembly management separated from data and combined between engine
and mods to prepare for pending .NET core requirements.
- Streamline Makefile targets.
- Clean up a lot of old technical debt.
2020-12-06 17:16:47 +01:00
Paul Chote
f3ebe07540
Fix WithDeliveryAnimation overriding sell animation.
2020-12-06 09:49:40 +01:00
Orb
6cac587753
ST Death Explosion Change Commit
2020-12-06 09:47:22 +01:00
Paul Chote
09e6cc4add
Enable dark mode support on macOS.
2020-12-05 17:09:32 +00:00
Paul Chote
5a2f91be1c
Fix building bibs not blocking placement.
2020-12-05 17:06:04 +00:00
Paul Chote
25071b813e
Prevent concrete from spawning underneath already placed building bibs.
...
This is the equivalent to reverting 83b61ab .
2020-12-05 17:06:04 +00:00
Paul Chote
d61bd675c4
Revert "Remove BuildingInfluence from ResourceLayer."
...
This reverts commit 1634f3b70e .
2020-12-05 17:06:04 +00:00
Paul Chote
582e2774ac
Revert "Remove BuildingInfluence from building adjacency check."
...
This reverts commit 33a1ca5965 .
2020-12-05 17:06:04 +00:00
Paul Chote
5a52ce5330
Revert "Remove BuildingInfluence trait."
...
This reverts commit 34bf143328 .
2020-12-05 17:06:04 +00:00
abcdefg30
31c9b4fc80
Revert renderable buffer sorting improvements
2020-12-05 17:03:03 +00:00
abcdefg30
4953ce314b
Make Attack turn during its own tick
2020-12-05 16:41:30 +00:00
Paul Chote
86519bfda5
Expose Player.HomeLocation to the Lua API.
2020-12-05 14:14:56 +01:00
teinarss
2c9a36b9a3
Update float3 to readonly and use in modifier for parameters.
2020-12-02 20:37:50 +01:00
Paul Chote
d3847d49ed
Fix windows package filenames.
2020-12-02 19:41:24 +01:00
Paul Chote
57f40a0b20
Remove obsolete variable definition.
2020-12-02 19:41:24 +01:00
Paul Chote
fa05f4e4b0
Generate Unicode-aware Windows installers.
2020-12-02 19:41:24 +01:00
Paul Chote
754f41ecd1
Remove redundant python check from Linux package creation.
2020-12-02 19:41:24 +01:00
Paul Chote
4b6e1c2198
Add a utility wrapper script for non-Windows.
2020-12-02 16:57:51 +01:00
teinarss
e6db2c98d0
Make WRot readonly and use in parameter modifier
2020-12-01 22:54:39 +00:00
Paul Chote
942f1e2d9e
Fix infantry ignoring the default subcell when produced.
...
They were being created with the correct subcell, but was rejecting it
as invalid because it was already occupied (by the unit itself).
2020-12-01 22:39:11 +01:00
Paul Chote
da5c94858f
Evaluate exit distance from the exit cell instead of the spawn position.
2020-12-01 22:35:43 +01:00
Paul Chote
77ffc20a5f
Convert Attack*.FacingTolerance to WAngle.
2020-11-30 16:39:48 +01:00
abcdefg30
d75fed3a00
Replace chan with c10 in actors spawned from selling RA tech buildings
2020-11-30 01:07:36 +01:00
Matthias Mailänder
2aba054fe8
Move it to the right folder.
2020-11-29 18:27:59 +01:00
Paul Chote
3b1f4ba07f
Fix production exit desync.
2020-11-28 17:49:36 +01:00
Paul Chote
d35768e0f9
Rework Windows launchers:
...
- Use SDL2 message boxes instead of Winforms.
- Use a proper project instead of compiling a single file.
- Use assembly attributes instead of modifying strings in the source code.
- Remove generic OpenRA.exe launcher.
- Replace MakeLAA.exe with a python script.
2020-11-27 20:32:02 +01:00
Paul Chote
07a10069db
Introduce new OpenRA.exe entrypoint and change OpenRA.Game to a library.
2020-11-27 20:32:02 +01:00
Paul Chote
20fe59e844
Output compiled binaries to ./bin.
2020-11-24 17:53:48 +01:00
Paul Chote
6ad5b9ebc4
Allow the game root directory to be moved away from the binaries.
2020-11-24 17:53:48 +01:00
Paul Chote
dd0b08d54a
Replace ^ and . in platform paths with ^SupportDir and ^EngineDir.
2020-11-24 17:53:48 +01:00
Paul Chote
1cc1f93fb0
Rename Platform.GameDir to Platform.EngineDir.
2020-11-24 17:53:48 +01:00
Paul Chote
72f1f06ebc
Remove Platform.UnresolvePath.
2020-11-22 16:42:46 +01:00
Paul Chote
151cea96e9
Remove Platform.IsPathRelativeToSupportDirectory.
2020-11-22 16:42:46 +01:00
Paul Chote
888915b53b
Use Platform.GameDir explicitly in hardcoded paths.
2020-11-22 16:42:46 +01:00
Paul Chote
de7a84e8ed
Don't use Platform.ResolvePath when constructing hardcoded paths.
2020-11-22 16:42:46 +01:00
Paul Chote
1dd5b113c7
Fix asset browser and map editor paths for SDK-based mods.
2020-11-22 16:42:46 +01:00
Paul Chote
e9ad38667e
Expose TransformsInto* targetline colors to yaml.
2020-11-21 14:52:54 +01:00
abcdefg30
05e8026713
Remove or use unused variables in TransformsIntoAircraft
2020-11-20 23:12:44 +01:00
abcdefg30
5b75649888
Fix TransformsIntoAircraft transforming on all orders
2020-11-20 23:12:44 +01:00
Matthias Mailänder
c22392eb1e
Enable itch app auto updates on Windows.
2020-11-17 19:46:28 +01:00
dnqbob
7c2a51df38
Make OrderGenerator flexible on mouse input for modder
2020-11-17 19:18:04 +01:00
reaperrr
05cb9b1fbf
Fix dock sequence dock/undock notifications
...
- move Refinery dock/undock notifications to OnStateDock/-Undock
and only call Undock if Dock was also called.
- Add INotifyHarvesterAction support to VoxelHarvesterDockSequence.
2020-11-15 16:56:28 +01:00
reaperrr
6bba35c330
Fix TS harvesters getting stuck in unload graphics
...
when refinery is destroyed while unloading.
2020-11-15 16:56:28 +01:00
reaperrr
90d9ee1f5c
Fix harv dock sequence issuing drag despite cancellation
2020-11-15 16:56:28 +01:00
reaperrr
385f01247b
Fix harvs dragging to refinery even if it died while turning
2020-11-15 16:56:28 +01:00
reaperrr
996029ee38
Fix undock anim playing even if docking was cancelled
...
...before dock anim could run.
The undock animation would play even if the dock anim
hadn't run (meaning the sequence cancelled before the docking
completed, for example due to refinery death).
2020-11-15 16:56:28 +01:00
reaperrr
87929b3d91
Fix dock animation continuing after refinery died
...
OnStateDock would always be triggered, even if the
refinery was killed before the harvester would finish
docking.
2020-11-15 16:56:28 +01:00
abcdefg30
e7e50cc101
Remove WorldUtils.AreMutualAllies
2020-11-15 16:37:51 +01:00
abcdefg30
d6c0926856
Remove LaysTerrain
2020-11-15 16:33:32 +01:00
abcdefg30
99ec119ffd
Move LaysTerrain functionality to D2kBuilding
2020-11-15 16:33:32 +01:00
abcdefg30
6b2920cc91
Introduce D2kBuilding
2020-11-15 16:33:32 +01:00
abcdefg30
05f933f007
Add an update rule for the DamagedByTerrain refactor
2020-11-15 16:33:32 +01:00
abcdefg30
80aeb5ada6
Refactor DamagedByTerrain
2020-11-15 16:33:32 +01:00
abcdefg30
83ea65d4ff
Require IOccupySpace for DamagedByTerrain
2020-11-15 16:33:32 +01:00
Paul Chote
46b3b01b89
Fix WithVoxelBarrel orientation calculations.
2020-11-15 13:51:12 +00:00
Orb
973f679939
TD Veterancy Adjustment Commit
2020-11-15 09:46:54 +01:00
abcdefg30
6de1b7b915
Always mark defeated/victorious players as spectating
2020-11-15 09:45:16 +01:00
Orb
e7ce739fec
TD Fix Repair Times Commit
2020-11-15 09:42:21 +01:00
abcdefg30
bf14a4ce80
Remove an unused variable from LoadComplete
2020-11-15 09:38:02 +01:00
abcdefg30
8840a690c6
Fix maps without spawn points no longer working
2020-11-15 09:38:02 +01:00
abcdefg30
77e85e7c58
Change DisabledSpawnPoints from List to HashSet
2020-11-15 09:38:02 +01:00
Pavol Molnar
6943cf5ad5
fixed tooltip, issue 18301
2020-11-15 09:36:56 +01:00
Vapre
17996dfdfc
Shroud, access ProjectedCellLayer by array index. Shroud.touchedCount to avoid Tick updates.
...
Shroud, access ProjectedCellLayer by array index over PPos index.
Performance improvement. Avoid the multiple PPos to array index
conversions in the same method call by calculating the cell
layer index once.
Background:
`Shroud.Tick` and `ProjectedCellLayer.Index(PPos puv)` shows up
in profile reports as one of the most expensive methods
(9% of CPU time).
In `Shroud.Tick` calls `ProjectedCellLayer.Index(PPos puv)` multiple
times for the same or different cell layers of the same dimension.
Improvement:
Benchmark results show an 0.5ms mean improvement in tick
time and 0.3 improvement in render time -
on a replay map of 1.12 min of play at max speed.
Render time:
render222052(bleed) render221934(this commit)
count 8144.000000 8144.000000
mean 11.410075 11.470100
std 5.004876 4.731463
min 3.450700 3.638400
25% 7.409100 7.015900
50% 12.410600 12.435900
75% 13.998100 14.242900
max 149.036200 149.656500
Tick time:
tick_time222043(bleed) tick_time221923(this commit)
count 2366.000000 2366.000000
mean 4.762923 4.275833
std 3.240976 3.206362
min 0.263900 1.653600
25% 4.145375 3.668600
50% 4.779350 4.240050
75% 5.232575 4.611775
max 85.751800 87.387100
Shroud.touchedCount to avoid Tick updates if no cells touched.
Avoids iterating over all map cells of the `touched` cell layer.
Tick time improvement of 40%+ - during at least the first two
minutes of gameplay.
During the first minutes of a game - out of every 1000 ticks
only 10-100 result in the Shroud - of any player - to be touched.
For certains player types (Neutral, Creep) less Shroud updates
are expected throughout a complete game.
Throughout a complete game human/AI players can also have no
Shroud touches during certain Ticks.
2020-11-14 18:33:49 +00:00
reaperrr
7f32776701
Fix some RA effect warheads ignoring water actors
2020-11-14 16:06:21 +01:00
reaperrr
fce109a46d
Fix piff anims of Sniper and SilencedPPK weapons
2020-11-14 16:06:21 +01:00
reaperrr
748292324a
Update RA/TD light guns cosmetic effects
...
Use single piff instead of piffs per impact on
M60s and M1, but in return add visual inaccuracy.
Gave minigunner MG two additional delayed effect warheads
to match sound and fire animation.
2020-11-14 16:06:21 +01:00
reaperrr
efe0de2ecb
Move around TD Pistol yaml
...
Feels more organized if located below the inherited
^LightMG, like all other inheritors.
2020-11-14 16:06:21 +01:00
reaperrr
cac9940736
Support 'inaccuracy' on effect warhead
...
Purely cosmetic, allows to 'fake' slight inaccuracy without
affecting game balance on weapons like light machine guns.
2020-11-14 16:06:21 +01:00
abcdefg30
559b143265
Use FlyForward for strafing
2020-11-14 12:50:02 +00:00
abcdefg30
a66305e282
Fix the constructor order of FlyForward
2020-11-14 12:50:02 +00:00
abcdefg30
b3aa61ee8e
Make fields readonly where possible
2020-11-14 12:50:02 +00:00
abcdefg30
80436a3195
Add a distance based constructor to FlyForward
2020-11-14 12:50:02 +00:00
abcdefg30
5127a6813d
Rename FlyTimed to FlyForward
2020-11-14 12:50:02 +00:00
tovl
84eb3c54ef
Expose targetline colors to yaml.
...
All targetlines can now be set to a custom color in yaml or set to be invisible.
All automated behaviours including scripted activities now have no visible target lines.
2020-11-14 12:04:19 +00:00
abcdefg30
ea3c7a3c34
Remove the Stances dictionary
2020-11-14 11:04:41 +00:00
abcdefg30
718cf37146
Misc code improvements
2020-11-14 11:04:41 +00:00
abcdefg30
10f645bf77
Replace usage of the Stances dict by a method call
2020-11-14 11:04:41 +00:00
abcdefg30
eda9966d27
Rename Stance to PlayerRelationship
2020-11-14 11:04:41 +00:00
abc013
672172d1f1
Add missing PlayNotification calls to SelectTarget.
2020-11-12 19:52:06 +00:00
abcdefg30
a366e37014
Fix angles in the Descriptions of TDGunboat
2020-11-10 20:32:08 +01:00
Trevor Nichols
d66e0bb22e
Right click lobby spawns to disable or remove players.
2020-11-07 19:33:28 +01:00
teinarss
13581c030d
Use in parameter for Target
2020-11-06 22:02:24 +01:00
teinarss
13a8b6bda2
Make Target readonly
2020-11-06 22:02:24 +01:00
Paul Chote
3aaaa95618
Apply range modifiers to Missile RangeLimit.
2020-11-05 19:15:13 +01:00
abcdefg30
e3929d7ded
Fix reservable crashing when unreserving and attack moving
2020-11-05 13:22:22 +01:00
teinarss
2c62f747d9
Fix style in issue template config
2020-11-04 23:26:04 +01:00
teinarss
e08818cca1
Update issue template with links to FAQ
2020-11-04 23:26:04 +01:00
Matthias Mailänder
b4670345dd
Don't crash when the bullet bounces outside of the map.
2020-11-04 10:59:55 +01:00
abcdefg30
0320dcdef9
Revise the RA map pool
2020-11-02 21:32:25 +00:00
Mustafa Alperen Seki
8b12cce250
Disable neutral Oil Derricks in TD and RA.
2020-11-02 21:27:37 +00:00
Mustafa Alperen Seki
6bb7ab0f97
Add GrantConditionOnCombatantOwner.
2020-11-02 21:27:37 +00:00
Matthias Mailänder
b32346d65f
Add a range marker to the nuke targeter.
2020-11-02 10:13:29 +00:00
darkademic
8f9c212921
Make AI randomly select from map squares with above average attractiveness when using support powers.
2020-11-01 21:20:00 +00:00
Orb
df39d4fcc4
TD Map Pool 2020 Commit
2020-11-01 19:21:23 +00:00
RoosterDragon
4daa5193b6
Use tie breaks for sort order in WorldRenderer.GenerateRenderables
2020-11-01 19:00:20 +00:00
abc013
13596c1474
Add offset to Explodes.
2020-10-31 17:48:21 +01:00
abc013
bb71b59e18
Improve explosion determination.
2020-10-31 14:55:13 +01:00
abc013
f2797c711c
Add InvalidBounceTerrain parameter to Projectile.
2020-10-31 14:55:13 +01:00
Paul Chote
6b6b1e56e6
Resolve random players and spawn points in server replays.
2020-10-31 14:31:44 +01:00
abcdefg30
7b75a78e38
Fix free-of-charge repairing still costing credits
2020-10-30 15:12:47 +01:00
Taryn Hill
2cea4b26e8
vscode debugging: build before launching
2020-10-30 13:58:05 +01:00
dnqbob
48f4a98c6a
Fix AI air squad misbehaving in TS maps
...
Change Cpos to Mpos by Pchote
2020-10-30 09:20:01 +01:00
Paul Chote
9ddc9073c2
Revert "Determine stance for spectators based on shroud selection"
...
This reverts commit e459fde031 .
2020-10-30 08:36:23 +01:00
abcdefg30
774f2e0852
Fix Production.cs not properly using INotifyCreated
2020-10-29 21:42:03 +00:00
abcdefg30
f5a963ac47
Production now uses nearest exit to rally point.
2020-10-29 21:42:03 +00:00
Vapre
38f1f1e5c2
Replace TraitContainer.AllEnumerator with ApplyToAll.
...
As proposed in the past in #13577 .
Replace TraitContainer.All() that uses the custom AllEnumerator with
TraitContainer.ApplyToAllX() that takes an action as argument.
The AllEnumerator.Current function show up in profiling reports since it is
used each tick multiple times for multiple traits. The function is 'heavy'
because it creates TraitPair<T>'s temporary objects for each actor
trait combination.
In the past about 20k ITick trait pairs were present during an average
multi player game.
Using an Apply function that takes an action avoid the need to create
these temporary objects.
To be able to still use 'DoTimed' somewhat efficiently the measurement
was moved to inside the trait container method.
Results in a 25% performance improvement in accessing all traits of
a certain type.
Apply function could be used for other TraitContainer functions as well
for further improvements.
Test result for calling on a dummy trait on 20k actors a 1000 times:
1315 ms traitcontainer.AllEnumerator (current)
989 ms traitcontainer.Apply (this commit)
2020-10-29 21:21:12 +00:00
Mustafa Alperen Seki
4cdbf74256
Add Align: to SupportPowerTimerWidget.
2020-10-29 19:46:51 +01:00
Andrew Odintsov
bd0738c5c4
Determine stance for spectators based on shroud selection
2020-10-26 23:39:42 +00:00
Paul Chote
72c82cb080
Remove BuildingInfluence trait.
2020-10-26 16:51:12 +01:00
Paul Chote
b9dd59cd63
Remove BuildingInfluence from building adjacency check.
2020-10-26 16:51:12 +01:00
Paul Chote
79019b06ca
Remove BuildingInfluence from Plug placement.
2020-10-26 16:51:12 +01:00
Paul Chote
90b25be1b6
Remove BuildingInfluence from ResourceLayer.
2020-10-26 16:51:12 +01:00
Paul Chote
e4faa6b0f0
Remove BuildingInfluence from Aircraft.
2020-10-26 16:51:12 +01:00
Paul Chote
1a3dfdc67f
Remove BuildingInfluence from LaysTerrain.
2020-10-26 16:51:12 +01:00
Paul Chote
8d2156fb30
Remove BuildingInfluence from BuildableTerrainLayer.
2020-10-26 16:51:12 +01:00
Paul Chote
5e032edd28
Remove redundant BuildingInfluence checks.
...
Buildings are already excluded by the ActorMap checks.
2020-10-26 16:51:12 +01:00
Vapre
63d597e4ad
ShroudRenderer UpdateShroud only when at least one cell is dirty.
...
UpdateShroud shows up in profile reports as one of the most
active methods (2.3% CPU time, main mono thread).
This commit introduces `anyCellDirty` to indicate that at lease one
of the cells was marked as dirty.
Avoiding the need to traverse all projected cells of the map
to find any dirty cell.
This reduces the number of shroud updates by at least 50% during a
test game. I assume this is related to renders occurring more
often than logic ticks(?).
2020-10-25 23:01:19 +01:00
Pavel Penev
4135045ca4
Added valid TerrainTypes to the Minelayer trait
...
Also added a configurable deploy cursor and fixed Minelayer target cell validation checks, which should make for a much better experiencing when dragging over an area with blocking terrain, shroud, fog, etc.
2020-10-24 12:20:15 +02:00
abcdefg30
538623c835
Add a lint check for player counts
2020-10-24 10:09:22 +02:00
abcdefg30
3674583053
Throw an exception at load when a map has more than 64 players
2020-10-24 10:09:22 +02:00
Paul Chote
daa8c74c37
Improve Replaceable logic:
...
- Remove BuildingInfluence checks
- Support multiple Replaceable/Replacement traits on the same actors
- Fix description typos
2020-10-22 22:15:43 +02:00
Mustafa Alperen Seki
8aeec24c9b
Add DamageTypes to Demolition
2020-10-21 18:41:16 +02:00
RoosterDragon
54c4a05062
Classes derived from Stream override ReadByte.
...
The Stream.ReadByte method is implemented by allocating a 1 byte buffer and calling into Read(byte[], int, int). Override ReadByte in derived classes to avoid needing to allocate this small temp buffer.
Also, fix some bugs in the stream implementations. Remove Write capability from MergedStream that didn't make sense. Add guards into SegmentStream to ensure reads and writes belonged to the segment - otherwise a reader or writer could access regions of the base stream that were outside the intended segment.
2020-10-20 22:53:32 +02:00
RoosterDragon
466de89e17
PackageEntry.HashFilename avoids stream reads .
...
Operate directly on the array to avoid overhead of stream reads.
2020-10-20 22:53:32 +02:00
RoosterDragon
6eaf51d450
CursorManager avoids use of BitConverter.
...
Avoid allocating a small temp array via BitConverter.GetBytes, and instead use bitwise ops to isolate the components of the color.
2020-10-20 22:53:32 +02:00
RoosterDragon
7c8dc5d5f4
XccGlobalDatabase allocation improvements
...
- Use the count to size the capacity of the list.
- Use a char array as a buffer, so will can build each string directly rather than needing a ToArray call first.
2020-10-20 22:53:32 +02:00
RoosterDragon
4f34d3edb3
Improvements in MiniYaml allocation
...
- Clone method will use the node count to create the correct capacity.
- ResolveInherits will use the node count as the suggested initial capacity.
- FromStream will now stream lines, rather than reading the whole file into memory and then splitting into lines.
2020-10-20 22:53:32 +02:00
RoosterDragon
0efdbc762d
Avoid ReadBytes calls in some StreamExts methods.
...
Read individual bytes to avoid allocating small temp arrays.
2020-10-20 22:53:32 +02:00
Matthias Mailänder
5e42c03afc
Replace more \n characters with write lines.
2020-10-19 22:37:01 +01:00
Matthias Mailänder
58726160a9
Reduce the indention level to show the table of contents.
2020-10-19 22:37:01 +01:00
Matthias Mailänder
8cd9215756
Add an additional new line before the unordered list.
2020-10-19 22:37:01 +01:00
Orb
0e33640b14
Code Polish TD Commit
2020-10-19 13:33:25 +02:00
reaperrr
a1c8cbab0b
Enable recoil anim on RA/TD Gun Turrets
2020-10-18 20:39:22 +02:00
reaperrr
50b484df56
Fix RA/TD defense turrets facing issues
...
By using WithSpriteTurret instead of
WithEmbeddedTurretSpriteBody.
2020-10-18 20:39:22 +02:00
reaperrr
99facd2797
Fix default facing of RA/TD Gun Turrets
...
Compare with make anim and original, 224 was
one facing too far.
2020-10-18 20:39:22 +02:00
Paul Chote
f79e1cacf0
Fix and document FMV scanline rendering.
2020-10-18 20:15:11 +02:00
Paul Chote
82069db724
Fix FMV aspect ratio.
2020-10-18 20:15:11 +02:00
Paul Chote
5a7dc385a3
Remove obsolete LocomotorInfo caching.
2020-10-18 18:19:56 +02:00
darkademic
49e7a33db0
Fixed WithRangeCircle when Visibility is set to Always.
2020-10-18 18:06:22 +02:00
Paul Chote
90b26681eb
Remove trait queries from Actor ctor.
2020-10-18 18:00:17 +02:00
Matthias Mailänder
14fc0254c6
Make all range circles fully configurable.
2020-10-18 15:08:17 +01:00
Matthias Mailänder
214aa64ce3
Fix Analyzer warning: V3128 field is used before initialized
2020-10-18 14:53:35 +01:00
abcdefg30
a7bb217887
Make the calculation of DesiredLocalFacing more readable
2020-10-18 14:48:05 +01:00
abcdefg30
10cb8090ec
Remove the second arrow on the preview of gdi08a
2020-10-18 14:33:52 +01:00
abcdefg30
1fdecb4e9d
Fix briefing text and video of nod04a
2020-10-18 14:33:52 +01:00
abcdefg30
575596c9ad
Fix map previews and order in TD
2020-10-18 14:33:52 +01:00
RoosterDragon
e11c8436bd
Misc changes to reduce allocation:
...
- Avoid creating new strings in SpriteRenderer.Flush.
- ProductionQueue.CancelUnbuildableItems can exit early if the queue is empty. It can also use a set of names for quicker lookups.
- OpenGL.CheckGLError avoids a Enum.HasFlag call.
2020-10-17 23:48:48 +02:00
RoosterDragon
c23efea402
Comments to justify GC.Collect calls, compact LOH during load.
2020-10-17 23:48:48 +02:00
RoosterDragon
8d3cec5bea
When a render method has nothing to render, eagerly return.
...
By eagerly returning an empty enumerable in these cases, this avoids allocating an enumerable for the whole render method if nothing will be drawn.
2020-10-17 23:48:48 +02:00
RoosterDragon
87389d3051
Reuse a list in FrozenActor.RefreshState
2020-10-17 23:48:48 +02:00
RoosterDragon
71e3ca4493
Sort renderables in-place in WorldRenderer.GenerateRenderables
2020-10-17 23:48:48 +02:00
RoosterDragon
2adee1e374
Use HasMovementType to avoid Enum.HasFlag allocations.
2020-10-17 23:48:48 +02:00
RoosterDragon
094ccf76b0
Prefer Min/MaxBy overloads to OrderBy().First() patterns
2020-10-17 23:48:48 +02:00
RoosterDragon
bb116034c7
Avoid or reduce LINQ allocations required in various areas.
2020-10-17 23:48:48 +02:00
Paul Chote
da53d5b776
Fix a divide by zero crash in Move.
2020-10-17 22:31:35 +02:00
abcdefg30
75fe0e524f
Fix units not attack moving to waypoints after resupply/takeoff
2020-10-17 19:48:54 +01:00
Matthias Mailänder
0ded0355c1
Allow mod code to set rally point indicators.
2020-10-16 18:14:33 +01:00
Matthias Mailänder
4da14cee0a
Disable UPnP on local games.
2020-10-16 18:14:33 +01:00
Orb
90c8e112e2
Stealth C17 Checkbox
2020-10-16 18:09:43 +01:00
Orb
d49bf81d95
TD Balance 2020 3 Commit
2020-10-16 17:52:41 +01:00
abcdefg30
abbe16b6ec
Remove default parameters
2020-10-15 10:53:06 +02:00
abcdefg30
274bf06eae
Fix evacuated civilians not staying at the GDI base
2020-10-15 10:53:06 +02:00
abcdefg30
dcf7b6b3f6
Add an alternative escape route to the south
2020-10-15 10:53:06 +02:00
abcdefg30
4173e40a9d
Use actor names instead of searching for actors with a type
2020-10-15 10:53:06 +02:00
abcdefg30
1abd272862
Fix actor naming since those are not Nod soldiers
2020-10-15 10:53:06 +02:00
abcdefg30
946bf7b9fa
Let civilians flee away from - not towards - the player in Nod04b
2020-10-15 10:53:06 +02:00
Matthias Mailänder
0d64fa549b
Fix the command bar selecting dead units
...
and crashing while doing a trait lookup on them.
2020-10-14 19:58:24 +02:00
abcdefg30
8a7020b4ef
Ignore the length requirement of sync orders we want to drop
2020-10-14 19:53:49 +02:00
abcdefg30
1bc19e788c
Drop and log sync orders with mismatching length
2020-10-14 19:53:49 +02:00
abcdefg30
c17110dac5
Make OrderManager fields readonly where possible
2020-10-14 19:53:49 +02:00
abcdefg30
d07b34e67e
Style fixups in ReplayConnection.cs
2020-10-14 19:53:49 +02:00
abcdefg30
accecee018
Fix savegames not saving sync packets correctly
2020-10-14 19:53:49 +02:00
abcdefg30
1861174d38
Add a Order.SyncHashOrderLength const
2020-10-14 19:53:49 +02:00
Curtis Shmyr
8d5ed65feb
Remove effective owner check when choosing armament
2020-10-14 19:52:34 +02:00
Paul Chote
a375f0e58a
Rewrite spawn point assignment logic.
2020-10-13 20:41:39 +02:00
RoosterDragon
b2b639434c
ThreadedGraphicsContext improvements.
...
- VertexBuffer interface redefined to remove an IntPtr overload for SetData. This removes some unsafe code in TerrainSpriteLayer. This also allows the ThreadedVertexBuffer to use a buffer and post these calls, meaning the SetData call can now be non-blocking.
- ThreadedTexture SetData now checks the incoming array size. As the arrays sent here are usually large (megabytes) this allows us to avoid creating temp arrays in the LOH and skip Array.Copy calls on large arrays. This means the call is now blocking more often, but significantly reduces memory churn and GC Gen2 collections.
2020-10-13 15:54:53 +02:00
Curtis Shmyr
5eadd26f66
Set lobby bool display values to start uppercase
2020-10-12 22:05:35 +02:00
Curtis Shmyr
c0cbca26ea
Use lobby option display values when clients join
2020-10-12 22:05:35 +02:00
RoosterDragon
8fb65fd9bf
Use string pooling in MiniYaml to de-duplicate strings in memory.
...
These config files often contain many repeated strings which result in different string references in memory. By using a pool, we can detect when the strings are equal and reuse an existing reference as strings are immutable.
The FromLines will now use a pool to de-duplicate strings for a single call. By allowing a pool to be provided as a parameter, we can reuse even more strings. The MapCache defines such a pool so that strings are reused across all maps in the cache for even more savings.
2020-10-12 21:57:08 +02:00
RoosterDragon
9072d645fd
Use TrimExcess to shrink lists used by MiniYaml after loading
2020-10-12 21:57:08 +02:00
Paul Chote
597b8b1caa
Hide legacy GL support behind a feature flag.
2020-10-12 12:24:22 +02:00
Paul Chote
2c0d512727
Package and default to GLES via ANGLE on windows.
2020-10-12 12:24:22 +02:00
Paul Chote
87c5cc96ad
Add an "Automatic" GL profile.
2020-10-12 12:24:22 +02:00
Paul Chote
fc844cfa6d
Print the GL_RENDERER string to stdout on engine start.
2020-10-12 12:24:22 +02:00
Paul Chote
1ab1c30e39
Remove glGetTexImage/glBindFragDataLocation on GLES.
...
These functions are not available in GLES3.
2020-10-12 12:24:22 +02:00
reaperrr
f2a1a497c7
Fix Pillbox damage
...
These were overlooked during the RA target type
refactor.
2020-10-12 11:56:55 +02:00
Paul Chote
1ddbe50b3f
Add inline node inclusion support to mod.yaml.
2020-10-11 01:42:59 +02:00
Paul Chote
dd7b8b24af
Use tileset ID in sequences instead of the TileSet object.
2020-10-11 01:23:15 +02:00
abcdefg30
6dcb701d1d
Fix a crash in AIUtils
2020-10-10 17:54:55 +02:00
reaperrr
f67b7ad837
Cache IResolveOrder traits on Actor
...
Avoids looking up all of them each time
an actor is given an order.
2020-10-10 13:59:40 +01:00
reaperrr
a4a409f39b
Pass world directly to UnitOrders.ResolveOrder
...
Avoids order.Subject.World look-ups.
Also removes validOrders parameter,
we can get that directly from World now.
2020-10-10 13:59:40 +01:00
reaperrr
904a5f60d1
Cache IOrderValidator traits on World
2020-10-10 13:59:40 +01:00
dnqbob
ca8341d432
Avoid WaterCheck crash in base builder
2020-10-10 11:44:43 +02:00
Clément Bœsch
815bbc6ee8
Save disconnect frame in the GameInformation
...
This information is useful to infer a winner in case the winstate is
unknown.
2020-10-10 01:17:39 +02:00
Clément Bœsch
ca8870a5cf
Server: handle wins/losses using Sync hash
...
Signed-off-by: Paul Chote <pchote@users.noreply.github.com >
2020-10-10 01:17:39 +02:00
Clément Bœsch
e5da58e2b4
Server: add basic replay recording
...
Signed-off-by: Paul Chote <pchote@users.noreply.github.com >
2020-10-10 01:17:39 +02:00
Paul Chote
dd18829def
Traits: add ICreatePlayersInfo
...
Signed-off-by: Clément Bœsch <u@pkh.me >
2020-10-10 01:17:39 +02:00
Paul Chote
41814a881d
Player: move player name resolve in a dedicated function
...
Signed-off-by: Paul Chote <pchote@users.noreply.github.com >
2020-10-10 01:17:39 +02:00
Clément Bœsch
d708f46d50
Orders: make SyncHash packet size check more accurate
2020-10-10 01:17:39 +02:00
Clément Bœsch
11f57b2b26
Protocol: add defeat state bitfields to Sync packets
...
Signed-off-by: Paul Chote <pchote@users.noreply.github.com >
2020-10-10 01:17:39 +02:00
Paul Chote
60df247416
Streamline SpawnOccupant management.
2020-10-09 12:19:19 +02:00
Trevor Nichols
6f32196f89
Support List<> for FieldSaver/FieldLoader
2020-10-07 22:04:10 +02:00
abcdefg30
d647aab7fe
Fix d2k conyards granting an unconsumed "auto-concrete" condition
2020-10-06 23:25:12 +01:00
Mustafa Alperen Seki
be88c33399
Add a lobby option to disable Concrete in D2k.
2020-10-06 13:29:33 +02:00
Mustafa Alperen Seki
7372da150a
Make LaysTerrain Conditional.
2020-10-06 13:29:33 +02:00
Mustafa Alperen Seki
3ec3eac160
Don't StartOnThreshold if the trait is disabled.
2020-10-06 13:29:33 +02:00
reaperrr
0990caefd7
Fix turreted defenses always realigning
...
This looks weird, doesn't match the originals
and makes map-defined custom facings useless.
2020-10-06 12:53:11 +02:00
Paul Chote
fc1786e243
Fix turrets immediately realigning on actor creation.
2020-10-05 15:13:48 +02:00
Matthias Mailänder
7e61199458
Fix a link in the Lua documentation.
2020-10-05 10:11:30 +02:00
Paul Chote
0672553a07
Lock Server.LobbyInfo to prevent races with callback threads.
2020-10-04 20:31:07 +02:00
reaperrr
8d1f72c104
Fix for SquadManagerBotModule
...
Aircraft and ships are immediately assigned a squad,
so adding them to `unitsHangingAroundTheBase` is bogus.
2020-10-04 00:31:35 +01:00
reaperrr
6337067032
Clean up property names + defaults of smudge smoke
2020-10-02 23:46:48 +02:00
reaperrr
7395a3ed2d
Use cached world instead of query in SmudgeLayer
2020-10-02 23:46:48 +02:00
abcdefg30
e4e1878a4b
Remove an used TerrainTemplateInfo constructor
2020-10-02 12:09:42 +02:00
abcdefg30
cc8908d7eb
Make ProductionParadrop and ProductionAirdrop refund undelivered actors
2020-10-02 11:51:48 +02:00
abcdefg30
0dac4520ad
Add a 'refundableValue' parameter to 'Produce'
2020-10-02 11:51:48 +02:00
Paul Chote
cc2e369475
Fix corrupted final frame in VQA playback.
2020-10-02 11:37:00 +02:00
tovl
92189e4b50
Let docking angle be determined by the host building.
2020-10-02 11:28:14 +02:00
abcdefg30
2e8c85ff0b
Add support for querying the Passengers of an actor via Lua
2020-10-02 11:24:52 +02:00
abcdefg30
798aff1140
Fix ValidStances of RevealsMap not working
2020-10-02 11:17:03 +02:00
Niklas Holma
8596ce00cc
Add a text field next to the map editor actor initializer sliders.
2020-09-28 15:46:19 +02:00
Matthias Mailänder
b5613acad8
Don't put absolute paths of developer machines in there.
2020-09-28 12:47:27 +02:00
Matthias Mailänder
7e992d44c8
Fix a crash when refineries share a cell.
2020-09-28 12:45:20 +02:00
Matthias Mailänder
7a7393b9f0
cachedWidth is never assigned.
2020-09-27 22:56:41 +01:00
Matthias Mailänder
f13e6fb76d
Fix Analyzer warning V3008 variable is assigned values twice.
2020-09-27 22:56:41 +01:00
Mustafa Alperen Seki
3e83346915
Add DamageTypes to SoundOnDamageTransition.
2020-09-27 21:22:52 +01:00
Mustafa Alperen Seki
761d3583c4
Add DeathTypes to ShakeOnDeath.
2020-09-27 21:22:52 +01:00
abcdefg30
1a4b773fda
Replace 'is' by 'as' and a null check in ScriptMemberWrapper
2020-09-27 22:17:20 +02:00
Matthias Mailänder
930f8ab207
Reset lobby ready state when options change server side.
2020-09-27 15:06:48 +02:00
Matthias Mailänder
2e438f1da9
Remove superfluous null checks.
2020-09-27 00:11:25 +01:00
abcdefg30
4627387ae3
Document the 'CancelActivity' field
2020-09-26 23:20:00 +01:00
abcdefg30
fd69bce609
Use CancelActivity instead of hackily using ResolveOrder
2020-09-26 23:20:00 +01:00
abcdefg30
391d9030cb
Move update rules into their correct subfolder
2020-09-26 23:20:00 +01:00
abcdefg30
1ad9a4b65d
Move shared color definitions to common metrics
2020-09-26 23:05:28 +01:00
abcdefg30
c6cc2405d3
Move shared sound definitions to common metrics
2020-09-26 23:05:28 +01:00
Matthias Mailänder
0e39cc7829
Tooltip is a conditional trait.
...
Fix Analyzer warning: V3146 Possible null dereference.
2020-09-26 22:59:39 +01:00
Matthias Mailänder
8d7e5f4663
Fix Analyzer warning: V3022 Expression is always true.
2020-09-26 22:59:39 +01:00
Paul Chote
e320bbfc87
Add disclaimer in readme.
2020-09-26 13:40:20 +02:00
Paul Chote
2e104046d4
Remove music downloads.
2020-09-26 13:40:20 +02:00
reaperrr
9cf38c1784
Increase Pillbox muzzle anim length
...
Length of muzzle anim now roughly matches the length
of the sound and impact animations.
2020-09-20 20:34:44 +02:00
Paul Chote
1aca6da1ea
Hide "Furthest" battlefield camera option if the mod disables it.
2020-09-20 20:28:28 +02:00
abcdefg30
ce4d263b52
Fix AttackMove getting unarmed units stuck
2020-09-20 12:02:20 +02:00
abcdefg30
53c02eb2b9
Fix a crash in the Move activity
2020-09-18 20:12:42 +02:00
abcdefg30
82a2148300
Fix grouped orders not being validated correctly
2020-09-15 10:16:50 +02:00
Paul Chote
b72a58b917
Add missing ActorReferences to yaml dictionaries.
2020-09-15 09:27:50 +02:00
Paul Chote
7f7bce50dc
Add dictionary support for ActorReference.
2020-09-15 09:27:50 +02:00
Paul Chote
290e214638
Remove unexpected RenderSprite.FactionImage fallback.
2020-09-12 17:52:46 +02:00
Paul Chote
ad4d6eaec9
Improve --check-missing-sprites error handling.
2020-09-12 17:52:46 +02:00
Paul Chote
cd9bf53e1a
Use nameof() to reference image fields.
2020-09-12 17:52:46 +02:00
Paul Chote
ac8b312140
Generalize --check-sequence-sprites to --check-missing-sprites.
2020-09-12 17:52:46 +02:00
Paul Chote
3e849568ff
Improve exception message for bogus tileset definitions.
2020-09-12 17:52:46 +02:00
Paul Chote
5d6961619d
Fix WithIdleOverlayInfo Image override.
2020-09-12 17:52:46 +02:00
Paul Chote
94180f6a0a
Add SequenceReference support for dictionaries.
2020-09-12 17:52:46 +02:00
Paul Chote
7803686aec
Rewrite sequence linting / missing file handling.
...
- Distinguish between missing sequences and missing sprites
- Lint default sequences as well as maps
- Improved performance
- Correctly handle null images
2020-09-12 17:52:46 +02:00
Paul Chote
b8e60ca8ec
Fix SequenceReference definitions.
2020-09-12 17:52:46 +02:00
Paul Chote
b985edbc29
Add ModData to ILintRulesPass.Run.
2020-09-12 17:52:46 +02:00
Paul Chote
ffdb3f86d7
Move mod-specific lint attributes to Mods.Common.
2020-09-12 17:52:46 +02:00
Paul Chote
c9b2a34561
Save SubCellInit as an integer.
2020-09-12 17:17:26 +02:00
Paul Chote
e5dc0309f1
Support OPENRA_DISPLAY_SCALE environment variable on Windows.
2020-09-12 00:37:20 +02:00
abcdefg30
57a3ad8ae2
Replace 'inner' with 'move' inside AttackMoveActivity
2020-09-12 00:30:33 +02:00
abcdefg30
ad3722e19f
Add support for circumventing the target scan limit in AttackMove
2020-09-12 00:30:33 +02:00
abcdefg30
a12d127fd6
Rework the internals of AttackMoveActivity
...
Avoids creating and throwing away inner activities unnecessarily
2020-09-12 00:30:33 +02:00
abcdefg30
e80ebfae35
Use readonly where possible in AttackMoveActivity
2020-09-12 00:30:33 +02:00
abcdefg30
4669d6b378
Work around a sound issue when loading saves
2020-09-12 00:18:25 +02:00
abcdefg30
9f093da61e
Unhardcode the leeway range of AttackFollow
2020-09-11 23:55:57 +02:00
abcdefg30
c0d31688c4
Exclude walls from the assets value
2020-09-11 23:44:30 +02:00
abcdefg30
86698e7822
Exclude C17, A10 and carryall.reinforce from the assets value
2020-09-11 23:44:30 +02:00
abcdefg30
3fc5859f08
Add 'AddToAssetsValue' to 'UpdatesPlayerStatistics'
2020-09-11 23:44:30 +02:00
tovl
f9bb663f6b
Allow thieves to capture landed aircraft in RA mod.
2020-09-10 18:18:09 +02:00
tovl
5e8121bd0b
Properly cancel EnterActor when target capturable trait is disabled.
2020-09-10 18:18:09 +02:00
Paul Chote
9cd6df2929
Replace DecorationPosition with mod-defined string ids.
2020-09-09 23:16:05 +02:00
Matthias Mailänder
b16cbeacb6
Sort contents before merging to unify UIDs across filesystems.
2020-09-07 17:25:24 +02:00
Matthias Mailänder
4d46464bc6
Fix an invalid target crash
...
target.CenterPosition is referenced in warhead orientation later
2020-09-06 12:21:15 +01:00
Matthias Mailänder
7746dc55f0
Remove the table of content
...
which is auto-generated by mkdocs.
2020-09-06 11:44:23 +01:00
Matthias Mailänder
5d9e8b56c5
Use fewer hard-coded HTML tags to improve mkdocs rendering.
2020-09-06 11:44:23 +01:00
Matthias Mailänder
d1c06365a8
Move automatic API documentation to docs.openra.net
2020-09-06 11:44:23 +01:00
Matthias Mailänder
b56ddc1a08
Check global scripts for Lua errors.
2020-09-05 21:13:47 +01:00
Orb
ae8c8e781f
TD Balance Summer 2020 2
2020-09-05 21:02:59 +01:00
reaperrr
1344b1f2e3
Remove system order checks from PlayerStatistics
...
ResolveOrder for actors isn't even used
for these.
2020-09-05 17:22:04 +01:00
reaperrr
36df25dcb4
GivesExperience performance optimization
...
Move some look-ups to creation to reduce contribution
to actor death cost.
2020-09-05 17:16:00 +01:00
reaperrr
84246d287d
Merge two ifs into one in SpawnActorOnDeath
2020-09-05 17:16:00 +01:00
reaperrr
6d0fbfa21f
Explodes performance optimization
...
Cache armaments on creation, avoid LINQ.
Also merge and put first the DamageThreshold == 0
check in Damaged, because the common default IS 0,
so most of the time the IsTraitDisabled and
IsInWorld checks are redundant.
2020-09-05 17:16:00 +01:00
abcdefg30
034c6824de
Fix MiG missiles damaging airborne actors
2020-09-05 18:06:30 +02:00
reaperrr
c8afa4a2a8
Remove defenderStats look-up from UpdatePlayerStatistics
...
playerStats is updated on owner change,
so it should always be identical to the removed defenderStats.
2020-09-05 11:12:38 +02:00
abcdefg30
1a77f7320b
Fix a crash when updating the DiscordPresence party size
2020-09-05 10:36:35 +02:00
abcdefg30
183ece1360
Remove the unused SetPlayers method
2020-09-05 10:36:35 +02:00
abcdefg30
035cc3da99
Turn DiscordService's 'GetService' into property
2020-09-05 10:36:35 +02:00
ABrandau
c01c39954a
Update Harpy Rotor
2020-09-01 18:57:43 +02:00
Matthias Mailänder
c48eb572e3
Remove MuzzleSplitFacings and expose MuzzleSequence to testing.
2020-09-01 18:53:43 +02:00
Paul Chote
b03ab1212f
Remove install-core target.
2020-09-01 18:48:54 +02:00
Paul Chote
8a9b5e7e01
Split a separate "compat" macOS package that uses the system mono.
2020-09-01 18:48:54 +02:00
Paul Chote
9b90e4f25a
Remove Coverity references.
2020-09-01 18:48:54 +02:00
Paul Chote
8a4401bdcb
Fix Appveyor GeoIP download.
2020-09-01 18:48:54 +02:00
Paul Chote
d52e90cf23
Improve .travis.yml compatibility for non-OpenRA deploys.
2020-09-01 18:48:54 +02:00
Paul Chote
14ef0a7740
Remove markdown/html pages from windows install.
2020-09-01 18:48:54 +02:00
Paul Chote
c1f79b348a
Generate platform-specific artwork from common source files.
2020-09-01 18:48:54 +02:00
Paul Chote
62166a50d9
Move itch upload script.
2020-09-01 18:48:54 +02:00
Brent Gardner
283b330403
Workaround for GLES 2.0 hardware
2020-09-01 18:00:51 +02:00
teinarss
2cf6b74295
Refactoring on GetEventBounds in Widget
2020-09-01 17:56:12 +02:00
abcdefg30
1a9f707d18
Remove the last reference to DedicatedLoop
2020-08-30 18:12:48 +02:00
Aigamo
06a1c88e86
Replace 0x7FFFFFFF with int.MaxValue
2020-08-29 12:37:20 +01:00
ycanardeau
f358b566b1
Replace NetFrameNumber >= 1 with GameStarted
2020-08-29 12:37:20 +01:00
reaperrr
15fc27d142
Use cached selected in SelectionDecorationsBase
2020-08-28 12:24:07 +02:00
reaperrr
ad20597d74
Cache hue picker sprite in HueSliderWidget
2020-08-27 21:17:37 +02:00
reaperrr
6d409a7c97
Cache indicator sprite in ResourceBarWidget at initialization
2020-08-27 21:17:37 +02:00
reaperrr
36d5ae5421
Cache SupportPowersWidget offsets at initialization
...
As well as overlay font.
2020-08-27 21:17:37 +02:00
tovl
db9744ea7f
Let TS aircraft turn slower when circling.
2020-08-27 21:15:38 +02:00
tovl
5e62fe86fc
Add IdleSpeed to aircraft trait.
2020-08-27 21:15:38 +02:00
Paul Chote
6cfa27c33b
Replace per-color font caches with tinted rendering.
2020-08-24 18:38:08 +02:00
Taryn Hill
a405969199
docs: link to docs.openra.net instead of wiki.openra.net in readme for generated trait docs
2020-08-23 11:20:02 +02:00
Paul Praet
9a6f3b4c05
Reset Ready status of players in Lobby when options change
...
Addresses #11274
2020-08-23 00:05:55 +03:00
Matthias Mailänder
7be059a79b
Download our cached version after they blocked Travis CI...
2020-08-22 13:06:08 +02:00
reaperrr
29b55de042
Cache rectangles and font in ProductionTabsWidget
2020-08-21 18:06:18 +02:00
reaperrr
235fb19aa8
Cache overlay traits in ProductionPaletteWidget
...
Instead of looking this up every Draw tick,
cache and update it only when a non-null new
CurrentQueue is set (as the overlays can only change
at that time).
2020-08-21 18:06:18 +02:00
reaperrr
c0f54fa4fc
Cache offsets in ProductionPaletteWidget
...
At least those that never change.
2020-08-21 18:06:18 +02:00
reaperrr
cdc216aca0
Fix airborne husk target types
...
Doesn't really make a difference, since it only matters
for effect warheads and those already could target both
air and ground actors, but GroundActor was still wrong.
2020-08-20 20:46:58 +02:00
reaperrr
4505053618
Simplify CreateEffectWarhead code
...
Simplified and streamlined code,
based on past feedback and suggestions.
Note: The new methods will move to
Warhead later, once they're used by more
than one warhead.
2020-08-20 20:46:58 +02:00
abcdefg30
e0d53126d6
Remove the Light Tank husk
2020-08-20 19:17:39 +02:00
abcdefg30
12ff1dd14c
Add RAGL balance changes
2020-08-20 19:17:39 +02:00
abcdefg30
50db3152f6
Fix the windows uninstaller name
2020-08-20 17:33:48 +02:00
teinarss
9c4fd0e3d3
Use Null-Propagation Operator
2020-08-19 18:11:07 +01:00
teinarss
8d27d22100
Use discard syntax
2020-08-19 18:11:07 +01:00
teinarss
27f1a7ab27
Use out var syntax
2020-08-19 18:11:07 +01:00
teinarss
d52e4793fe
Refactor classes to structs
2020-08-19 11:54:29 +02:00
teinarss
544ac6cb33
Fix crash after entering manage content
2020-08-19 11:40:43 +02:00
Paul Chote
06fbc1a6cf
Hide TraitInfo.InstanceName from FieldLoader.
2020-08-17 20:13:32 +02:00
abcdefg30
edab10e6a6
Make the Phase Transport uncloak during repair by mechanics
2020-08-16 21:01:16 +02:00
abcdefg30
dd99fc93e4
Uncloak during resupply when "UncloakOn: Dock" is defined
2020-08-16 21:01:16 +02:00
abcdefg30
dbe824d4e5
Correct "offseted" to "offset"
2020-08-16 15:02:56 +02:00
Paul Chote
6e73d7f5c2
Tidy MapEditorLogic ctor.
2020-08-16 14:17:45 +02:00
Paul Chote
960056d300
Fix mod switcher icon handling.
2020-08-16 14:17:45 +02:00
Paul Chote
3efac3287e
Fix Session.Deserialize error handling.
2020-08-16 14:17:45 +02:00
Paul Chote
c4b4a8c8a5
Fix incorrect ramp fill in Map.Resize.
2020-08-16 14:17:45 +02:00
Paul Chote
b833f033bf
Remove redundant check from LabelWithHighlightWidget.
2020-08-16 14:17:45 +02:00
Paul Chote
ad75e2be89
Remove redundant check from SupportPowerInstance.
2020-08-16 14:17:45 +02:00
Orb
7ee4fbeb0d
New Money Settings
2020-08-15 21:02:01 +01:00
Paul Chote
9886f0ca9a
Fix Harvester crash when multiple resource renderers are used.
2020-08-15 18:43:40 +02:00
Paul Chote
46cf56d6ff
Remove editor-specific resource rendering.
...
Mods must manually move their *ResourceRenderer definitions from
World onto BaseWorld to restore resource rendering in the editor.
2020-08-15 18:43:40 +02:00
Matthias Mailänder
e7af295b5e
Allow news per mod.
2020-08-15 16:21:21 +01:00
Matthias Mailänder
9d179d9a1a
Initialize the font only once and make it configurable.
2020-08-15 16:13:21 +01:00
Matthias Mailänder
15010f9567
Fix production palette ignoring yaml font overrides.
2020-08-15 16:13:21 +01:00
Oliver Brakmann
a7f4f6c1cf
Use LeaveMapAtClosestEdge for scripted MiGs on Intervention
2020-08-15 13:38:57 +01:00
Oliver Brakmann
3eeb677f14
Add LeaveMapAtClosestEdge idle behaviour for Aircraft
2020-08-15 13:38:57 +01:00
Paul Chote
ef69a3de66
Use nameof() in PaletteReference.
2020-08-15 13:41:45 +02:00
abcdefg30
0aa5e07252
Send the 'minefieldStart' along with a 'PlaceMinefield' order
2020-08-15 11:34:00 +01:00
abcdefg30
07d58337f1
Let order generators account for selection changes
2020-08-15 11:34:00 +01:00
abcdefg30
b5e3f25418
Fix CashTrickler crashing without IOccupiesSpace
2020-08-15 11:21:39 +01:00
teinarss
19b02875c7
Use Tuple syntax
2020-08-15 10:37:10 +01:00
Taryn Hill
8a74f6ea18
change whitespace-only lines to empty lines in Lua scripts
2020-08-14 15:08:14 +02:00
abcdefg30
a847f3eafa
Fix actors not yet in the world improperly updating power state
2020-08-14 11:46:38 +02:00
Curtis Shmyr
a751f074e7
Added actor parameter to Lua UnloadPassenger
2020-08-10 10:38:35 +02:00
Paul Chote
75cb5c2166
Convert turret facings to WAngle relative to the body.
2020-08-09 19:43:53 +02:00
Paul Chote
70a86bed7a
Optimize WRot negation.
...
The conjugate of a quaternion just negates the x/y/z components, so
there is no need to recalculate from scratch and throw away precision
by forcing a quat->euler->quat round trip.
2020-08-09 19:43:53 +02:00
dnqbob
f67f8ed05e
WithLandingCraftAnimation can stop on all movement
2020-08-09 13:22:56 +02:00
Mustafa Alperen Seki
1ae53220d6
Add CurrentMuzzleFacing to FireClusterWarhead.
2020-08-09 13:18:39 +02:00
Matthias Mailänder
c546cb552e
Make the fonts configurable.
2020-08-09 13:14:32 +02:00
Matthias Mailänder
10f8836d7b
Fix a null reference exception.
2020-08-09 13:14:32 +02:00
dnqbob
7ecd4124ce
Make "RepairableNear" public, helpful for modder
2020-08-08 13:20:39 +02:00
abcdefg30
54cd77be8e
Add Tiberium near the transformable tree in cnc64gdi01
2020-08-05 11:45:11 +02:00
Mustafa Alperen Seki
43388cb7fc
Don't check HasAdequateRefineryCount if no RefineryTypes defined.
2020-08-05 11:29:22 +02:00
Mustafa Alperen Seki
4cc5104fde
Unhardcode AI's MinimumRefineryCount numbers.
2020-08-05 11:29:22 +02:00
Curtis Shmyr
d519cabae3
Add actor experience to the Lua API
2020-08-03 18:35:50 +02:00
abcdefg30
9852e29835
Fix subs targeting naval structures by default
2020-08-03 17:50:36 +02:00
Matthias Mailänder
3a427c3630
Add a sequence reference attribute to label fallbacks.
2020-08-02 22:15:13 +02:00
Matthias Mailänder
336656e8f7
Remove superflous warning as null is a valid value here.
2020-08-02 22:15:13 +02:00
Matthias Mailänder
06ad9666e8
Replace burns with more modular and testable trait combinations.
2020-08-02 22:15:13 +02:00
Matthias Mailänder
728e0c6600
If it defaults to the actor type, then it shouldn't be required.
2020-08-02 22:15:13 +02:00
Matthias Mailänder
657e690bdd
Add an image override.
2020-08-02 22:15:13 +02:00
Matthias Mailänder
2d36d0a659
Reflect in naming that negative SelfHealing is a thing.
2020-08-02 22:15:13 +02:00
Matthias Mailänder
c42fd5d2e2
Add IsDecoration as a configurable option.
2020-08-02 22:15:13 +02:00
Trevor Nichols
10bf97eff6
Reduce severity of editorconfig and prefer multiline braces
2020-08-02 14:37:39 +02:00
Matthias Mailänder
ea9992247d
Reorder string placeholders.
2020-08-02 12:00:53 +02:00
Matthias Mailänder
b90fecff76
Remove the prefixed method name.
2020-08-02 12:00:53 +02:00
Matthias Mailänder
a4fc9fea3b
Unify AIUtils.BotDebug prefixes.
2020-08-02 12:00:53 +02:00
abcdefg30
b7c7eff2a2
Fix the position of the red cross in RA
2020-08-02 11:56:15 +02:00
Stuart McHattie
8c10dc406a
Prevent Mac's Cmd+Q from exiting the game
...
This operation can be devastating if you were trying to assign a control group using Cmd + 1 but accidentally catch the Q key during gameplay.
2020-07-28 23:12:39 +01:00
Stuart McHattie
05c3861426
Add myself to the authors list
2020-07-28 23:12:39 +01:00
Matthias Mailänder
1ef5db8896
Document the built in hitshape types.
2020-07-28 23:42:26 +02:00
Andre Mohren
006a87692a
Removed unused imports.
2020-07-28 18:22:51 +02:00
Oliver Brakmann
e019b70420
Fix actor previews for actors with types written in capital letters
2020-07-26 10:57:18 +02:00
Smittytron
70ec5b0344
Add flash to mission paranukes
2020-07-26 10:52:06 +02:00
abcdefg30
5401ace540
Add a death animation to Visceroids
2020-07-24 18:13:11 +02:00
abcdefg30
ab9081c852
Force enable Visceroids in the default rules
2020-07-24 18:13:11 +02:00
Matthias Mailänder
3a9b35980c
Revert "Reduce order latency locally"
...
This reverts commit 20e5219cf4 .
2020-07-21 21:58:31 +02:00
Matthias Mailänder
150439d215
Revert "Change where we send orders"
...
This reverts commit 616d9421d6 .
2020-07-21 21:58:31 +02:00
Matthias Mailänder
b01a534a98
Revert "Refactor the OrderManager and world tick loop, improves input latency"
...
This reverts commit f642cead44 .
2020-07-21 21:58:31 +02:00
Trevor Nichols
758b0b08d0
Add to .editorconfig additional naming rules to match this codebase's style
2020-07-21 16:15:30 +02:00
teinarss
f87ba1d8a4
Update SP maps with transformable trees
2020-07-20 14:05:52 +02:00
teinarss
67fa7bdcc9
Add TransformsNearResources
2020-07-20 14:05:52 +02:00
Matthias Mailänder
0b03aca104
Fix linter for player palettes.
2020-07-19 10:44:55 +02:00
Paul Chote
3bf61f1043
Fix incorrect rotation calculation in ThrowsShrapnel.
2020-07-19 10:41:05 +02:00
Paul Chote
ac975f4139
Convert yaml-exposed facings to WAngle.
2020-07-19 10:41:05 +02:00
abcdefg30
6d12301f88
Fix the aircraft facing slider in the editor
2020-07-18 01:45:00 +02:00
Andre Mohren
914950c4a5
When zooming using the mousewheel, zoom towards the pointer location.
2020-07-17 20:12:10 +02:00
Paul Chote
b417b267dd
Store quaternion components directly.
...
This avoids precision loss when combining rotations.
The equivalent Euler angles are calculated for external use
but the quaternion components are preferred for any further
internal calculations.
2020-07-17 15:02:32 +02:00
Paul Chote
aae497eff1
Pass pre-combined rotations into the rendering code.
2020-07-17 15:02:32 +02:00
Paul Chote
3c9db4c2ac
Add WRot.Rotate to allow rotations to be combined.
2020-07-17 15:02:32 +02:00
Paul Chote
8c3793e7ea
Rename WRot.Zero to WRot.None.
2020-07-17 15:02:32 +02:00
Oliver Brakmann
60a7f53491
Fix target lines appearing not long enough on screen
...
Also changes the Delay attribute from ticks to milliseconds.
2020-07-16 00:28:05 +02:00
Mustafa Alperen Seki
04bfd62f2f
Fix FireClusterWarhead playing wrong Report sound.
2020-07-15 23:55:01 +02:00
Paul Chote
117b8b3653
Change tiberium colors to match the original game.
2020-07-13 14:02:02 +02:00
Paul Chote
70cb0d2924
Improve TS map importer and reimport classic maps.
2020-07-13 14:02:02 +02:00
Paul Chote
c5ea496c45
Add terrain lighting definitions to TS.
2020-07-13 14:02:02 +02:00
Paul Chote
01e955ca37
Implement TS-style terrain lighting.
2020-07-13 14:02:02 +02:00
Paul Chote
fdb66c769c
Change terrain layers to track sequences instead of sprites.
2020-07-13 14:02:02 +02:00
Paul Chote
38b3fbbdbe
Fix [RequireExplicitImplementation] failures on event properties.
2020-07-13 14:02:02 +02:00
Paul Chote
3bc5d2d02c
Add INotifyEditorPlacementInfo interface.
...
This allows TraitInfos to act when the actor preview is placed
in the editor, returning arbitrary data which the editor stores
and gives back if the preview is removed.
2020-07-13 14:02:02 +02:00
Paul Chote
ac7eda8ca2
Add support for rendering tinted artwork.
2020-07-13 14:02:02 +02:00
reaperrr
baf58f53b3
Adapt SpreadDamageWH to ImpactOrientation
...
The ImpactOrientation needs to be computed from
point of impact to target if the target wasn't hit directly.
Also adapted warhead code to use WarheadArgs consistently,
as well as pass HitShape instead of just HitShapeInfo
(both needed for future and/or downstream features).
2020-07-12 19:52:55 +02:00
reaperrr
8513a83331
Add ImpactOrientation to WarheadArgs
...
Allows to pass the horizontal facing/yaw
and vertical angle/pitch of the carrier
projectile to warheads for further use.
Add ImpactPosition to WarheadArgs
InflictDamage doesn't pass the impact pos
directly, and the very point of WarheadArgs
is to avoid adding more and more arguments
to the warhead methods.
2020-07-12 19:52:55 +02:00
Orb
bf7fecff10
TD Balance Summer 2020
2020-07-12 19:31:59 +02:00
Oliver Brakmann
6e1f2f636c
Increase GameOverDelay for missions from 1.5 to 3 secs
2020-07-12 15:06:55 +02:00
Oliver Brakmann
8b3db6f3d6
Allow granting a condition to Carryalls currently carrying units
2020-07-12 14:36:01 +02:00
Matthias Mailänder
39d0abe982
Remove bit rot.
2020-07-12 14:32:32 +02:00
teinarss
c2026dc254
Add Discord Rich Presence
2020-07-12 14:27:59 +02:00
Matthias Mailänder
cae6c28754
Change the prefix in front of replays.
2020-07-12 13:43:05 +02:00
Sly
3b99924799
Corrected spelling error
2020-07-10 14:48:22 +02:00
Sly
b2b548b103
Corrected spelling error
2020-07-10 14:46:40 +02:00
Pavel Penev
c2e3806a77
Added a FlashPaletteEffect to RA nukes and removed from D2k
2020-07-10 13:22:54 +02:00
Pavel Penev
25500a7dda
Updated a stale copyright header
2020-07-10 13:22:54 +02:00
Pavel Penev
8c394a4cb5
Created FlashPaletteEffectWarhead and removed the hardcoded flashing from NukeLaunch
...
Not actually hardcoded, but there was a hard dependency in NukeLaunch on FlashPaletteEffect and explicit flashing checks.
2020-07-10 13:22:54 +02:00
Pavel Penev
2e7bd4de4b
Fixed a bug with the NukeLaunch's Player palette
2020-07-10 13:22:54 +02:00
Matthias Mailänder
7261322e41
Add support for Visual Studio Code.
2020-07-10 12:33:57 +03:00
abcdefg30
cada396733
Fix a crash when previewing an actor using WithCrateBody in the editor
2020-07-09 20:31:03 +02:00
Chris
9f9709f058
Add python3 support to launch-game.sh
2020-07-09 20:21:48 +02:00
abcdefg30
26fc65209d
Fix the bogus Actors iterator
2020-07-09 18:11:53 +02:00
Adam Mitchell
f642cead44
Refactor the OrderManager and world tick loop, improves input latency
2020-07-09 13:48:55 +02:00
Adam Mitchell
616d9421d6
Change where we send orders
2020-07-09 13:48:55 +02:00
Adam Mitchell
20e5219cf4
Reduce order latency locally
2020-07-09 13:48:55 +02:00
Vapre
9edda21b06
Avoid three time array lookup in TraitContainer.Actors.
2020-07-09 12:16:04 +02:00
Paul Chote
6d6822ca15
Update map inits in RA/TD/D2k.
2020-07-08 20:38:30 +02:00
Paul Chote
a2269e7ee7
Convert (Dynamic)FacingInit, (Dynamic)TurretFacingInit to WAngle.
2020-07-08 20:38:30 +02:00
Paul Chote
e8f443f4a9
Remove TurretFacingsInit and PlugsInit.
2020-07-08 20:38:30 +02:00
Ivaylo Draganov
67f8452178
Add button to override duplicate hotkey bindings
2020-07-08 19:59:07 +02:00
Ivaylo Draganov
47f6e407d9
Cancel hotkey rebind on Esc key press
2020-07-08 19:59:07 +02:00
abcdefg30
889e2152a4
Cache ProjectedCellBounds during load time
2020-07-08 18:37:50 +02:00
abcdefg30
173aae1f81
Directly check the map bounds instead of converting to PPos
2020-07-08 18:37:50 +02:00
abcdefg30
baed80983b
Fix the launch-game.sh newlines not displaying in the console
2020-07-07 22:30:55 +02:00
abcdefg30
b00423dc76
Correct the crash dialog title
2020-07-07 22:30:55 +02:00
abcdefg30
376ed15079
Correct the support folder location in the crash dialog
2020-07-07 22:30:55 +02:00
abcdefg30
a6d8d6cd8e
Use tabs as indentation consistently
2020-07-07 22:30:55 +02:00
Paul Chote
b3ee8b447e
Reduce duplication between Map and PlayerRadarTerrain.
2020-07-07 22:12:22 +02:00
Paul Chote
5f588561b6
Rewrite TS minimap rendering:
...
* Rename LeftColor and RightColor to MinColor and MaxColor
These are mapped from LowRadarColor and HighRadarColor in
the original inis, and appear to be used to set the bounding
values for selecting a random colour, NOT for left/right
pixels (which caused noticeably wrong banding).
* Adjust brightness based on terrain height.
MinHeightColorBrightness and MaxHeightColorBrightness
were chosen by trial/error to match the original
map preview rendering.
2020-07-07 22:12:22 +02:00
Smittytron
83c53e17e0
Allow repairable tech buildings in campaign-rules
2020-07-07 19:47:10 +02:00
Smittytron
c028488894
Add Soviet 09
2020-07-07 19:47:10 +02:00
abcdefg30
b066005f7e
Fix AttackBomber marking aircraft that are not in the world as in range
2020-07-06 22:30:41 +02:00
abcdefg30
87e33a75c6
Fix a crash when calling an airstrike at the map edge
2020-07-06 22:30:41 +02:00
Matthias Mailänder
4961b0943b
Add a text base spy disguise decoration.
2020-07-05 21:43:12 +02:00
Smittytron
eda1e9c266
Add Counterstrike mission Siberian Conflict 1: Fresh Tracks
2020-07-05 21:33:56 +02:00
abcdefg30
bc7bf174d8
Don't tick the announcement timer when not in low power
...
When entering low power it will be reset to 0 again anyway
2020-07-05 20:37:17 +02:00
abcdefg30
2e06d5790b
Update the PowerState only when power is added or removed
2020-07-05 20:37:17 +02:00
abcdefg30
ab8790e8f1
Style/Readability changes
2020-07-05 20:37:17 +02:00
abcdefg30
7d630e63e7
Let Railgun implement ISync
2020-07-05 18:10:14 +02:00
Smittytron
77899191f3
Add Aftermath mission Situation Critical
2020-07-05 17:21:43 +02:00
Smittytron
6871873e93
Add Counterstrike mission Fall of Greece 1: Personal War
2020-07-05 15:59:18 +02:00
Smittytron
fc4bd131cd
Add Aftermath mission: Production Disruption
2020-07-05 15:58:10 +02:00
Pavel Penev
d866286f82
Added back the DescAttributes on projectiles' Inaccuracy fields
2020-07-05 13:04:18 +02:00
Pavel Penev
76dfda164e
Moved projectile inaccuracy calculations to Common.Util
...
Also moved the InaccuracyType enum there. This also quietly adds the RangeModifiers to the calculations for all projectiles, while they were only used on Bullet so far, which seemed very wrong.
2020-07-05 13:04:18 +02:00
Pavel Penev
134d47e48c
Added InaccuracyType.Absolute to projectiles
2020-07-05 13:04:18 +02:00
Pavel Penev
a2dbd5e013
Changed weapons in D2k to use the new PerCellIncrement inaccuracy
...
Also adjusted the inaccuracy values. This should bring inaccuracy in D2k pretty much in line with the original game, with the potential liberty of decreased inaccuracy for the Deviator tank.
2020-07-05 13:04:18 +02:00
Pavel Penev
c27412c83a
Added InaccuracyType enum and updated projectiles accordingly
...
Also updated the inaccuracy calculations to account for the new inaccuracy type - either based on distance up to a max defined inaccuracy at max range (old style) or based on distance with each cell (1024 range) increasing the inaccuracy with a set step.
2020-07-05 13:04:18 +02:00
Pavel Penev
4143aba595
Added syncing to some Railgun projectile fields
2020-07-05 13:04:18 +02:00
Ivaylo Draganov
39ccac4022
Refactor command bar buttons to use unified widget state names
2020-07-05 11:50:45 +01:00
Ivaylo Draganov
7943f4deb6
Unify widget state image suffixes (disabled, pressed, hover, focus)
...
- Add a property for arrows image collection (in drop-downs, scrollbars
and production tabs)
- Add a property for separators image collection (in drop-downs)
- Add hover and disable states to the drop-down separator
- Unify button, textfield and checkbox state suffixes
2020-07-05 11:50:45 +01:00
Curtis Shmyr
2dda2d7689
Added lua IsCloaked actor property
2020-07-04 21:06:52 +02:00
Matthias Mailänder
b8f2a14ea0
Automatically upload release to itch.io using butler.
2020-07-04 20:59:10 +02:00
Oliver Brakmann
595809f090
Fix Carryalls waiting for actors on transit-only tiles
2020-07-04 16:47:17 +02:00
abcdefg30
477db9cd4a
Fix travis builds not failing when errors occur during static checking
2020-07-03 21:29:25 +01:00
teinarss
67ff292d62
Refactor WorldRenderer to use less allocations
2020-07-03 17:41:41 +02:00
darkademic
ae882b85a9
Make AI randomly scan map for targets for its air squads.
2020-07-02 23:05:49 +02:00
abcdefg30
5e92915095
Fix the cargo unload regression with scripted transports
...
The activity is not interruptible, so we'd continue after the Move regardless
2020-07-02 21:14:35 +02:00
Smittytron
95809db03c
Move Harvester overrides to campaign-rules.yaml
2020-07-02 19:29:37 +02:00
Smittytron
6d5a5121bc
Remove worthless function from Allies08
2020-07-02 19:29:37 +02:00
Smittytron
86992751c7
Update Soviet-08a
2020-07-02 19:29:37 +02:00
Smittytron
2eba8b6c37
Add Soviet-08b
2020-07-02 19:29:37 +02:00
Smittytron
e1523e939d
Utilize Panic function with added OnDamaged trigger
2020-06-28 17:30:24 +02:00
Smittytron
15a92f443d
Replace paraprop power with scripted drops in Soviet01
2020-06-28 17:30:24 +02:00
KorGgenT
b57c68e392
Fix units walk over tunnels and under bridges.
2020-06-28 17:21:54 +02:00
Matthias Mailänder
e95fcb6bc0
Don't let blossom tree poof all at the same time.
2020-06-28 13:43:33 +02:00
Matthias Mailänder
6581fcb6a7
Add a random interval to idle animations.
2020-06-28 13:43:33 +02:00
tovl
6551337bd8
Make TS walkers AlwaysTurnInPlace.
2020-06-28 00:11:26 +02:00
tovl
137df52fdd
Make infantry AlwaysTurnInPlace.
2020-06-28 00:11:26 +02:00
tovl
b79aa7eb6a
Add AlwaysTurnInPlace option to Mobile.
2020-06-28 00:11:26 +02:00
Alfred Lang
1c8c49dc8e
Fix do allow AI do place plugbuildings like RBG Tower on GDI Component Tower
2020-06-27 10:35:06 +02:00
Andrew Odintsov
f0c808d2fc
Replace FloodFill with IEditorAction implementation
2020-06-24 19:08:54 +02:00
Curtis Shmyr
26d9ae88df
Replace TargetAndAttack with a global aircraft attack function
2020-06-23 20:09:42 +02:00
Curtis Shmyr
3c7f119bb1
Add a damage parameter to Lua OnDamage callback
2020-06-23 19:58:31 +02:00
Ian T. Jacobsen
fea35923f0
Minefield now shows red when out of map bounds and Minelayer now does not get stuck at edge of map
...
Made it impossible to detect enemy units again
Fix whitespace
2020-06-21 20:16:57 +02:00
Paul Chote
9627776318
Add pitch and roll to TS aircraft.
2020-06-21 18:05:40 +02:00
Paul Chote
6dcde3af72
Allow voxel-based aircraft to pitch and roll.
2020-06-21 18:05:40 +02:00
Paul Chote
43717a89b5
Add Orientation getter to IFacing.
2020-06-21 18:05:40 +02:00
Matthias Mailänder
c7ba359688
Add drop pod reinforcements.
2020-06-21 17:28:24 +02:00
Matthias Mailänder
dc3dbf6d85
Remove uneccessary parentheses.
2020-06-21 17:28:24 +02:00
Smittytron
71664c85ff
Fix TargetTypes regression in SnipeWeapon
2020-06-21 12:34:43 +02:00
Nikita Pozdeev
cb41be113a
Fix map editor radar ignoring color from terrain
2020-06-20 14:37:23 +02:00
Matthias Mailänder
4fe7daa85e
Fix juggernaut preview being disabled by default.
2020-06-19 21:30:34 +02:00
abcdefg30
f75afc6ee4
Fix a compilation error in WithInfantryBody.cs
2020-06-19 20:01:04 +02:00
abcdefg30
67fd71ab92
Add a ProjectedCellLayer and use it in Shroud.cs
2020-06-19 18:31:51 +02:00
abcdefg30
385e70552e
Create CellLayerBase
2020-06-19 18:31:51 +02:00
Matthias Mailänder
1e2c67bfca
Increase UPnP device discovery timeout.
2020-06-19 18:00:27 +02:00
Paul Chote
56739f87fb
Allow plugs to be configured in the map editor.
2020-06-19 17:57:56 +02:00
Paul Chote
571eb7614f
Support multiple turrets in the editor.
2020-06-19 17:57:56 +02:00
Paul Chote
c6c3a8c60d
Make ActorPreview and EditorActorPreview wrap ActorReference.
2020-06-19 17:57:56 +02:00
Paul Chote
ae7cfa56b7
Restrict IActorPreviewInitInfo to ActorInit.
2020-06-19 17:57:56 +02:00
Paul Chote
b856613194
Add ISingleInstanceInit interface.
...
Inits that are logically singletons (e.g. actor
location or owner) should implement this interface
to avoid runtime inconsistencies.
Duplicate instances are rejected at init-time,
allowing simpler queries when they are used.
2020-06-19 17:57:56 +02:00
Paul Chote
86305879cb
Parse Enum *ValueInit as string values, not integers.
2020-06-19 17:28:01 +02:00
Paul Chote
e5a1a8a706
Replace deprecated API usage.
2020-06-19 17:28:01 +02:00
Paul Chote
27602a4a97
Add WAngle-compatible airstrike/paratrooper APIs.
2020-06-19 17:28:01 +02:00
Paul Chote
a98e460257
Expose WAngle to Lua API and deprecate old Facing.
2020-06-19 17:28:01 +02:00
Paul Chote
0349435650
Remove deprecated Paratrooper API methods.
2020-06-19 17:28:01 +02:00
Paul Chote
c3fbdca18f
Add yellow-shirt technician.
2020-06-19 17:09:13 +02:00
Paul Chote
acb5245a28
Restore correct palette and voices for RA civilians.
...
A new C11 infantry has been added to use the custom
c3 sprite that was originally added back when only
c1 and c2 were used in OpenRA.
2020-06-19 17:09:13 +02:00
Paul Chote
23561cd76b
Add custom palette support to WithInfantryBody.
2020-06-19 17:09:13 +02:00
Paul Chote
d3ab3d7d78
Move IndexedPlayerPalette to Mods.Common and add a non-player version.
2020-06-19 17:09:13 +02:00
Matthias Mailänder
5b870be83f
Let the 2nd civilian panic when his mate gets electrocuted.
2020-06-19 16:50:28 +02:00
Matthias Mailänder
6130d5622c
Add a panic function to the Lua API.
2020-06-19 16:50:28 +02:00
abcdefg30
318c4e3456
Remove InitialStanceAI overrides from campaign missions
2020-06-19 16:46:34 +02:00
abcdefg30
ab701449e2
Change Subs to use the Defend stance by default
2020-06-19 16:46:34 +02:00
abcdefg30
9a3447d863
Fix airstrike and paratroopers power not removing cameras at the map edge
2020-06-19 16:04:54 +02:00
matjaeck
5280637adf
Fix PickupUnit not validating cargo on first run.
2020-06-19 15:59:14 +02:00
Matthias Mailänder
3bce55ac44
Cancel the attack when no traits are active.
2020-06-19 13:43:03 +02:00
Curtis Shmyr
a3f79503ed
Fix Lua DisplaySystemMessage writing twice
2020-06-16 13:11:02 +02:00
Curtis Shmyr
02d462a82c
Fix copying public key to clipboard if already authed
2020-06-13 19:15:27 +02:00
Smittytron
3d17328d0d
Fix regression and cleanup scu35ea
2020-06-12 23:50:44 +02:00
reaperrr
0e81abc21b
Fix weapons not accounting for Air
...
If a weapon was aiming at a target position rather
than an actor target, it would always check target types
of the terrain below, ignoring altitude (and therefore ignoring
"InvalidTargets: Air").
2020-06-12 21:00:53 +02:00
Paul Chote
803b930405
Change IFacing.TurnSpeed to WAngle.
2020-06-12 18:35:41 +02:00
Paul Chote
6adf45bcb4
Convert IFacing.Facing and TurnSpeed to WAngle.
2020-06-12 18:35:41 +02:00
Matthias Mailänder
01417c88c5
Add missing actor reference for lint testing.
2020-06-10 19:07:14 +02:00
abcdefg30
60bbbe0d93
Fix the Death Hand launch notification playing for the player not enemy
2020-06-10 18:57:08 +02:00
Matthias Mailänder
888dfd3654
Stop the boat to remove it immediately.
2020-06-09 22:40:32 +02:00
Matthias Mailänder
12de56ff62
Fix crash notication "AlertBeep" not found.
2020-06-09 22:40:32 +02:00
Matthias Mailänder
b7cee41c54
Fix TD gunboat not updating actor map influence.
2020-06-09 22:40:32 +02:00
Paul Chote
10aac03f75
Add CompositeActorInit and simplify chronoshift inits.
2020-06-08 19:18:38 +02:00
Paul Chote
0eb0041f90
Allow ActorInits to target a specific trait by matching the @ suffix.
2020-06-08 19:18:38 +02:00
Paul Chote
b38018af9c
Replace IActorInit with an abstract class.
...
A shared ValueActorInit<T> is introduced to reduce duplication
in the most common init cases, and an ActorInitActorReference
allow actors to be referenced by map.yaml name.
2020-06-08 19:18:38 +02:00
Unknown
4df5ac0385
Change default to ground-attack
2020-06-07 10:31:44 -05:00
Unknown
a7476bc303
Improve detail + double fire rate/half damage
2020-06-07 10:31:44 -05:00
Unknown
cc4b3cb361
Add APC ground attack sprite turret
2020-06-07 10:31:44 -05:00
Ivaylo Draganov
31a965b29a
Add suffix to player name in shroud selector
2020-06-06 14:40:48 +01:00
Ivaylo Draganov
7a213338a2
Add helper method to add suffix to player name label
2020-06-06 14:40:48 +01:00
abcdefg30
fb27a25e52
Fix a crash with support powers and units without selection decorations
2020-06-06 13:46:27 +01:00
abcdefg30
534b09ae4a
Fix bots not working after adminship was transferred
2020-06-03 18:30:18 +02:00
abcdefg30
341a9f370c
Fix a crash in Evacuation
2020-06-02 22:53:40 +02:00
Matthias Mailänder
607d9b2d5c
Fix index out of bounds exception for off world aircraft.
2020-06-02 19:25:53 +01:00
abcdefg30
507ce40ad2
Fix a crash in LegacyBridgeLayer
2020-06-02 19:22:19 +01:00
reaperrr
f58c3aed32
Use OccupiesSpace to save more trait look-ups
...
This time in Locomotor.IsBlockedBy.
2020-06-02 20:08:34 +02:00
reaperrr
55e85bd9ca
Save Mobile look-up in BasePathSearch
...
By casting to OccupiesSpace and then
looking up Info.LocomotorInfo directly.
2020-06-02 20:08:34 +02:00
reaperrr
4bf614c5cd
Use OccupiesSpace to avoid Mobile look-up in Move
...
While individual trait look-ups may be cheap,
if a large army that is currently standing still gets
its first move-including order, the look-ups of dozens
or even hundreds of actors may happen on the same tick.
Therefore this may help reducing that first-order lag spike,
at least a little bit.
2020-06-02 20:08:34 +02:00
abcdefg30
96b06c75d1
Make Resupply display target lines for all queued move activities
2020-06-02 18:23:54 +02:00
Matthias Mailänder
d261648ab0
Fix BeingCapturedCondition getting revoked from the wrong actor.
2020-06-02 10:45:49 +02:00
Paul Chote
7b81b9e806
Bullet Facing -> WAngle.
2020-06-01 21:34:32 +02:00
Paul Chote
a93aea3e4e
AreaBeam Facing -> WAngle.
2020-06-01 21:34:32 +02:00
Paul Chote
2cfacc2c7d
ProjectileArgs facing -> WAngle.
2020-06-01 21:34:32 +02:00
Paul Chote
6d6b21a0eb
Convert Aircraft.Facing to WAngle.
2020-06-01 20:25:38 +02:00
Matthias Mailänder
7a78c37851
Add .NET Coding Conventions
2020-05-31 13:27:03 +01:00
Ivaylo Draganov
b8a9f41892
Add missing trait descriptions for cursors and unify the language
2020-05-31 00:12:04 +02:00
Ivaylo Draganov
227567dfe1
Formatting: wrap and indent long argument lists
2020-05-31 00:12:04 +02:00
Ivaylo Draganov
d5ff5c672b
Add configurable cursors for entering allied actor targeters
2020-05-31 00:12:04 +02:00
Ivaylo Draganov
393f6eca3a
Add configurable target cursors to various traits
2020-05-31 00:12:04 +02:00
Paul Chote
d193ef856e
Fix harvest animation facing glitch.
2020-05-30 19:58:03 +02:00
abcdefg30
44d3691fa1
Assign Player.IsBot before calling INotifyCreated.Created
2020-05-30 19:47:29 +02:00
abcdefg30
27d0465891
Remove workarounds for querying the PlayerActor in Created
2020-05-30 19:47:29 +02:00
abcdefg30
52a9fcef3c
Rename "Created" to "Initialize" and let it handle adding to the world
2020-05-30 19:47:29 +02:00
abcdefg30
7386816f52
Manually construct the PlayerActor to fix crashes during actor creation
2020-05-30 19:47:29 +02:00
abcdefg30
9c0075b233
Move hardcoded PlayerActorTypes to shared const variables
2020-05-30 19:47:29 +02:00
abcdefg30
e4c5700baf
Remove an unused using
2020-05-30 19:47:29 +02:00
reaperrr
e1b7df8b6a
Use OccupiesSpace to avoid Mobile look-ups
...
in PathFinder.FindUnitPath and FindUnitPathToRange.
2020-05-30 04:05:29 -05:00
Paul Chote
c999b2d778
Convert QuantizeFacing to WAngle facings.
2020-05-28 21:23:51 +02:00
Paul Chote
bfb6c671fb
Change QuantizeFacing to return a facing instead of an index.
2020-05-28 21:23:51 +02:00
Paul Chote
7c6ec577dc
Rewrite ActorInit queries.
2020-05-28 19:04:53 +02:00
Paul Chote
626b40f31b
Account for ramps in terrain height calculations.
2020-05-28 09:41:55 -05:00
Paul Chote
5af12440ba
Replace MapGrid.CellCorners with a new CellRamp struct.
2020-05-28 09:41:55 -05:00
Paul Chote
4614f6febe
Cache cell ramps to avoid repeated tileset lookups.
2020-05-28 09:41:55 -05:00
Pavel Penev
1354ffc32e
Added multiple production speedup to D2k
...
Based on the specification in issue 18051.
2020-05-27 10:32:35 +02:00
Pavel Penev
3723939c99
Adjusted D2k build times to match the original game
...
Removed custom production queue speedups and custom actor build time slowdowns and adjusted BuildDurations based on the specifications in issue 18051.
2020-05-27 10:32:35 +02:00
Pavel Penev
e099739e13
Reduced HitShape radius of D2k units to minimum
...
Since they are only used to hold the armor type anyway.
2020-05-27 10:28:25 +02:00
Pavel Penev
21a48cc41d
Switched D2k to use the new DamageCalculationType
...
This brings D2k in line with the damage model of the original game.
2020-05-27 10:28:25 +02:00
Pavel Penev
4740266308
Added DamageCalculationType enum to SpreadDamageWarhead
2020-05-27 10:28:25 +02:00
Pavel Penev
78139413d7
Equalized the DoImpact methods in damage warheads
2020-05-27 10:28:25 +02:00
Pavel Penev
f0578a75f4
Cleaned up DamageWarhead
...
Reordered methods and fixed access modifiers. Also removed unused using statements from warheads.
2020-05-27 10:28:25 +02:00
abcdefg30
7a0e55a02a
Restore trailing whitespaces to windows batch scripts
2020-05-26 22:57:11 +02:00
reaperrr
f132bac80d
Add Tree armor type and remove tree-only warheads
...
This simplifies #12467 .
Using a tree-exclusive amor type is far more efficient
than adding more warheads, which cost performance
due to their huge Spread
This also restores the 100% efficiency vs. trees for
some of the incendiary nuke warheads (which have
reduced efficiency vs. Wood since #13643 ).
Note: Atomic had two tree-only warheads with a Delay
of 15, I believe the first one to be a copy-paste error
and moved the damage to the regular SpreadDamage
with a Delay of 10.
2020-05-26 22:51:29 +02:00
reaperrr
109ea4fe5b
Fix Barrel explosion damage
2020-05-26 22:46:26 +02:00
Matthias Mailänder
f33feafd0e
Add TurnOnIdle.
2020-05-25 13:07:19 +02:00
reaperrr
9195356e3a
Upgrade DepthCharge effect setup
...
- med_explosion instead of small_explosion on surface hit
- only play explosion on surfaced subs
- only play h2obomb2.aud when hitting a submerged sub
2020-05-24 13:26:40 +02:00
reaperrr
eff91108f4
Make RA ships show both explosion and splash
...
...when destroyed, to imply sinking.
2020-05-24 13:26:40 +02:00
reaperrr
e40c0516e6
Adapt RA warheads to new target types
2020-05-24 13:26:40 +02:00
reaperrr
c580a94ab7
Fix RA weapon ValidTargets
2020-05-24 13:26:40 +02:00
reaperrr
6a545bb942
Streamline RA target types
...
No more sharing of target types between terrain
and actors (except bridges), removed 'Ground(Actor)'
from WaterActors (was only used by weapons/warheads,
which can just list both ground- and water types.
2020-05-24 13:26:40 +02:00
Matthias Mailänder
672bd2d9fe
Don't crash when putting the trait on the World actor.
2020-05-24 12:36:26 +02:00
Ivaylo Draganov
3ab4a584ab
Remove trailing white-space from various files
2020-05-23 11:38:44 +02:00
Ivaylo Draganov
150d02ac0d
Remove trailing white-space from lua files
2020-05-23 11:38:44 +02:00
Ivaylo Draganov
6d26f60904
Remove trailing white-space from yaml files
2020-05-23 11:38:44 +02:00
abcdefg30
b42276953f
Fix a crash when a harvester is rebuilt in cnc64gdi01
2020-05-22 21:25:58 +02:00
abcdefg30
7c290b9f76
Fix not all harvesters in cnc64gdi01 being rebuilt
2020-05-22 21:25:58 +02:00
abcdefg30
51fe1d6629
Let AI autotargeting in D2k ignore sandworms
2020-05-22 20:40:36 +02:00
Matthias Mailänder
8f558d2b47
Add a bullet bounce sound.
2020-05-21 14:44:13 +02:00
abcdefg30
3f5fadf2e9
Move stray update rules into the correct subfolder
2020-05-21 14:08:14 +02:00
abcdefg30
07c16cee1d
Add TargetTypes to HealActorsCrateAction
2020-05-21 14:08:14 +02:00
abcdefg30
24130dfcdc
Add an update rule for the RenameHealCrateAction rename
2020-05-21 14:08:14 +02:00
abcdefg30
15a2341a91
Rename HealUnitsCrateAction to HealActorsCrateAction
2020-05-21 14:08:14 +02:00
Paul Chote
86f61298e6
Replace ITraitInfo interface with TraitInfo class.
2020-05-21 13:01:04 +02:00
abcdefg30
3cd7ec3878
Make the TS Test AI build aircraft
2020-05-21 10:05:05 +02:00
abcdefg30
8b13d3e4c7
Fix resupply not displaying target lines correctly
2020-05-19 22:11:20 +02:00
Ivaylo Draganov
327d451abc
Add trim_trailing_whitespace to .editorconfig
2020-05-18 17:39:24 +02:00
atlimit8
2dac16ee02
add SquadManagerBotModuleInfo.IgnoredEnemyTargetTypes
2020-05-17 22:02:32 +01:00
abcdefg30
d4b92a19d7
Remove bogus weapon override defintions from TD campaign maps
2020-05-17 13:39:51 +01:00
tovl
e0357596f5
Correct aircraft repulsion direction when outside of the map.
2020-05-17 12:46:17 +02:00
atlimit8
1ef27d18c1
check name for Actor.GrantCondition()
2020-05-17 12:33:29 +02:00
Matthias Mailänder
1d2d8ed107
Don't hard-code the transparent background color.
2020-05-16 22:28:52 +01:00
reaperrr
1bf01bc214
Remove WaterStructure TargetType from RA SYRD/SPEN
...
- only used for auto-targeting
- inconsistent with their fakes (which didn't have this)
- unnecessary, since the 'Ship' target type covers all
surface water actors we want to be auto-targetable by default,
while 'Structure' is enough to add syard/spen in AttackAnything.
2020-05-15 08:22:02 +02:00
reaperrr
0015deca47
Fix TS Tiberium Fiend target types
...
Was missing Creep, preventing actors from
auto-targeting it (unlike all other critters).
2020-05-15 08:22:02 +02:00
reaperrr
ddfdc6e90f
Clean up TD weapon ValidTargets
...
- Missiles can now force-fire on water like other weapons
- Superweapons can now target empty water
- made Chemspray null InvalidTargets to avoid yaml-merge issues
- Improved APCGun effect warhead perf by ignoring actors
- removed stale Tiberium weapon mission overrides
2020-05-15 08:22:02 +02:00
abcdefg30
5db2ad54f2
Fix a scripting error in nod04b
2020-05-14 22:40:44 +01:00
teinarss
b8a5750529
Add map.contains check to CanStayInCell
2020-05-14 20:06:21 +02:00
Andrew Odintsov
98d5b8c7cc
Remove redundant call to OnTextEdited
2020-05-14 11:01:48 +02:00
Andrew Odintsov
3f34154a1e
Add OnTextEdited call to RemoveSelectedText
...
This would allow expty text box to be processed and disable filtering
2020-05-14 11:01:48 +02:00
thisisjacob
3119f831b3
Added notice for entering vehicles in docs
2020-05-13 17:25:49 -05:00
thisisjacob
8a07b762a2
Changed documentation for OnEnterComplete
2020-05-13 17:25:49 -05:00
Matthias Mailänder
551ab2fc59
Cache the footprint LINQ for performance.
2020-05-12 20:53:05 -05:00
Zimmermann Gyula
99957e57b9
Update the default mods.
2020-05-12 20:53:05 -05:00
Matthias Mailänder
be2c59bc6e
Add upgrade rule to convert ranges to footprints.
2020-05-12 20:53:05 -05:00
Zimmermann Gyula
57f9a49b66
Use footprints in ChronoshiftPower.
2020-05-12 20:53:05 -05:00
Zimmermann Gyula
54bd0eb99d
Use footprints in GrantExternalConditionPower.
2020-05-12 20:53:05 -05:00
Zimmermann Gyula
485faac294
Implement SupportPower.CellsMatching.
2020-05-12 20:53:05 -05:00
Andrew Odintsov
d531d6f3ef
Simplify groupActors condition
2020-05-12 15:06:50 +02:00
Andrew Odintsov
3a9fdb82f5
Add IsInWorld check for controlled groups
2020-05-12 15:06:50 +02:00
reaperrr
5024ae1156
TS ClusterMissile typo fix
2020-05-10 15:20:25 +02:00
abcdefg30
0135dd9ed3
Use inheritance to shorten the desert shellmap custom rules
2020-05-09 14:36:50 -05:00
abcdefg30
a6e9b86bbe
Remove AnnounceOnKill Tanya overwrites from the desert shellmap
2020-05-09 14:36:50 -05:00
abcdefg30
237c4444b5
Remove DeathSounds overwrites from the desert shellmap
2020-05-09 14:36:50 -05:00
reaperrr
a68467292e
Use TargetType.Invalid checks instead of IsValidFor
2020-05-09 17:59:23 +02:00
reaperrr
978c69d0c3
Make Warhead.IsValidTarget method protected
...
IsValidTarget is never called from outside warheads.
2020-05-09 17:59:23 +02:00
reaperrr
3eabc59921
Make resource warheads AirThreshold-aware
2020-05-09 17:59:23 +02:00
reaperrr
2b3d99fac2
Sanitize resource warheads
...
- Fix potential crash due to invalid target (no CenterPosition)
- Fix potential crash on multiple ResourceLayers
2020-05-09 17:59:23 +02:00
reaperrr
2bdefe0e9e
Move AirThreshold to Warhead
...
To reduce duplication and for later use in more warheads.
2020-05-09 17:59:23 +02:00
reaperrr
de81fc2aca
Minor CreateEffectWarhead optimization
...
Palette only matters if we actually display an explosion.
2020-05-09 17:59:23 +02:00
reaperrr
b514e0a6e7
D2k yaml comment removal
...
Naming the warhead for its purpose is cleaner
than comments, in my opinion.
2020-05-09 17:56:08 +02:00
reaperrr
715dfa4541
Use args in FireClusterWarhead methods
...
Instead of directly passing damage modifiers.
2020-05-09 17:56:08 +02:00
reaperrr
ac57a37224
DamageWarhead polish
...
Use BitSet.IsEmpty.
2020-05-09 17:56:08 +02:00
Paul Chote
afd620b092
Reimplement ClassicQuantizeFacing using a look-up-table.
2020-05-09 10:40:50 -05:00
Paul Chote
552bceb07c
SpriteEffect facing -> WAngle.
2020-05-09 10:20:23 -05:00
Paul Chote
fe58ed1283
Animation facing -> WAngle.
2020-05-09 10:20:23 -05:00
Paul Chote
361e2d463c
ISpriteSequence facing -> WAngle.
2020-05-09 10:20:23 -05:00
atlimit8
259c8d2c98
Merge ConditionManager trait directly into Actor
2020-05-09 15:46:11 +02:00
abcdefg30
e12c1dc9aa
Retire the "release-20190314" path
2020-05-09 13:08:10 +01:00
abcdefg30
7fb49e383d
Update and fix the latest update path and rules
2020-05-09 13:08:10 +01:00
Matthias Mailänder
1df3e28253
Initialize RangeModifiers.
2020-05-08 20:58:27 +02:00
Paul Chote
bacec2689d
Remove error message duplication.
2020-05-08 15:17:44 +02:00
jrb0001
bf397591f9
Implement IPv6 support for server and direct connect
2020-05-08 15:17:44 +02:00
Matthias Mailänder
bd1a936c7a
Add the armed technician.
2020-05-08 09:42:14 +02:00
Matthias Mailänder
0871d6e321
Setup the Firestorm civilian voices.
2020-05-08 09:42:14 +02:00
abcdefg30
265d296db6
Add infiltration sounds support to InfiltrateForSupportPowerReset
2020-05-05 15:16:09 -05:00
Matthias Mailänder
5ec136b57c
Don't play the make animation on the wall sprite body.
2020-05-05 13:23:58 +02:00
atlimit8
f1e8f9c9d0
Fixed PNG frame count calculation
...
This fixes the order of operations and rounding issue, making it columns * rows.
2020-05-02 23:14:31 +02:00
Paul Chote
f03841c4e4
Hide selection decorations when spectators zoom too far out.
2020-05-02 14:30:04 -05:00
Pavel Penev
0ae58ff0ea
Adjusted damage spread ranges on weapons in D2k to match the original game
2020-05-02 20:22:01 +01:00
Pavel Penev
390c1899ca
Changed weapons in D2k to have a linear damage falloff to match the original game
2020-05-02 20:22:01 +01:00
Matthias Mailänder
89aa6d1e4e
Don't attack during buildup.
2020-05-02 20:07:09 +01:00
Matthias Mailänder
24638b02a9
Fix turret build sounds.
2020-05-02 20:07:09 +01:00
Matthias Mailänder
4b0ab6ab37
Add the crumble overlay to the turrets.
2020-05-02 20:07:09 +01:00
Matthias Mailänder
1f02d9f141
Add the make animation for the turrets.
2020-05-02 20:07:09 +01:00
Matthias Mailänder
0103c38c13
Don't change the animation when it's not your turn.
2020-05-02 20:07:09 +01:00
Matthias Mailänder
3cc76f91b4
Fix the make animation for the silos.
2020-05-02 20:07:09 +01:00
abcdefg30
10dc248f07
Remove unused usings from BaseBuilderBotModule
2020-05-02 14:05:44 -05:00
abcdefg30
d1f89c6217
Update the Desc of GrantCondition
2020-05-02 14:05:44 -05:00
abcdefg30
76ba4fc32d
Use a modular AI in soviet05
2020-05-02 14:05:44 -05:00
abcdefg30
37f90fff44
Throw LuaExceptions instead of InvalidDataExceptions in ConditionProperties
2020-05-02 14:05:44 -05:00
abcdefg30
9fa6da3bc7
Add PlayerConditionProperties
2020-05-02 14:05:44 -05:00
abcdefg30
aa8cf237ab
Make Greece the owner of all starting actors in soviet05
2020-05-02 14:05:44 -05:00
Matthias Mailänder
c131728aa4
Give more context when crashing during .png sheet loading.
2020-05-02 13:26:06 -05:00
Paul Chote
2abd137494
Remove OpenRA.PostProcess.exe.
...
The LAA flag is now set when packaging
Windows release installers.
2020-05-02 17:26:54 +02:00
Paul Chote
90815ace59
Add a decoration glyph for friendly units in tunnels.
2020-05-02 16:16:16 +02:00
Matthias Mailänder
53d916d7f1
Add some basic error handling to png metadata writing.
2020-05-02 04:13:34 -05:00
reaperrr
2b4035979b
Make all warheads use WarheadArgs
...
Instead of passing damageModifiers directly.
2020-05-02 03:09:18 +03:00
Matthias Mailänder
38cdc93010
Default the optional effect sequence to null
2020-05-01 19:43:36 +03:00
Matthias Mailänder
346dad3898
Remove trailing spaces.
2020-05-01 19:43:36 +03:00
Matthias Mailänder
42256bc262
Add an out of bounds check.
2020-05-01 19:41:06 +03:00
Matthias Mailänder
70babb4067
Validate the target before querying it's center position.
2020-05-01 16:53:29 +02:00
Matthias Mailänder
3603e6373d
Check for invalid targets.
2020-04-30 01:42:19 -05:00
Matthias Mailänder
bd1760682f
Rename WithNukeLaunch* traits to WithSupportPower*.
2020-04-30 01:37:05 -05:00
Matthias Mailänder
52d0490f95
Supersede INotifyNuke
2020-04-30 01:37:05 -05:00
Matthias Mailänder
b3b0aa75ae
Add new interfaces for support powers.
2020-04-30 01:37:05 -05:00
Paul Chote
e42d177920
Include selection decorations when calculating ScreenMap bounds.
2020-04-30 00:09:57 +02:00
Paul Chote
c2156af7b0
Restore missing minelayer pips.
2020-04-29 22:59:48 +02:00
dnqbob
86394eb56c
"FindEnemy" functions ignore hidden actors
...
(helped by reaperrr and abcdefg30)
2020-04-28 15:35:02 +02:00
dnqbob
2d7790f5e4
StateBase.cs modified:
...
1. Optimize & move "ammo" related function from "AirStates.cs" to StateBase.cs
2. Optimize & move "IsRearm" function from "AirStates.cs" to StateBase.cs, name changed to "IsRearming"
(optimized by reaperrr)
2020-04-28 15:35:02 +02:00
Matthias Mailänder
3df43529a6
Document BitSet<TargetableType>
2020-04-27 16:06:32 +02:00
Matthias Mailänder
a1c9b27057
Add InfiltrateForSupportPowerReset
2020-04-27 16:06:32 +02:00
abcdefg30
089dd233a5
Correct the support dir location in ExtractSettingsDocsCommand
2020-04-26 12:38:11 +01:00
Matthias Mailänder
86a7a0bd6c
Move Render*Circle traits to their base traits.
2020-04-26 10:30:50 +02:00
Paul Chote
7ebca36a9c
Disable debug callbacks on Intel HD 4000.
2020-04-25 21:03:43 +02:00
Paul Chote
d5aed5a88a
Expose GL Profile in settings menu.
2020-04-25 21:03:43 +02:00
Paul Chote
dac1f270ce
Restore legacy OpenGL 2.1 support.
2020-04-25 21:03:43 +02:00
Paul Chote
839be24053
Replace PreferGLES settings flag with GLProfile enum.
2020-04-25 21:03:43 +02:00
Paul Chote
91c4179f05
Split GLProfile from GLFeatures.
2020-04-25 21:03:43 +02:00
Matthias Mailänder
a4b427bfac
Clarify AttackPanicChance and add PanicChance.
2020-04-24 18:38:54 +02:00
reaperrr
250f5bec18
Misc yaml style fixes
2020-04-24 18:22:35 +02:00
reaperrr
336e2a10e0
Fixed RA STNK turret not using fudged facings
2020-04-24 18:22:35 +02:00
reaperrr
b5e9b7635e
MoveClassicFacingFudge update rule
2020-04-24 18:22:35 +02:00
reaperrr
0df7fa1596
Add sequence update rule support
2020-04-24 18:22:35 +02:00
reaperrr
c10487d635
Move ClassicFacingFudge support to Mods.Cnc
...
This moves the TD/RA-specific re-mapping of sprite facings
and coordinates to Mods.Cnc.
2020-04-24 18:22:35 +02:00
abcdefg30
bc9b3bef74
Fix a crash when completing objectives in Allies06 out of order
2020-04-23 21:56:46 +01:00
abcdefg30
e57462e7ca
Make attack moving and guarding use a grouped order
2020-04-21 01:35:40 -05:00
abcdefg30
78bf27709f
Add basic support for grouped orders
2020-04-21 01:35:40 -05:00
Matthias Mailänder
fc84cd9204
Add an is in world check to fix a crash.
2020-04-21 01:15:43 -05:00
Matthias Mailänder
e361f7b246
The category field has been pluralized.
2020-04-19 15:21:10 +02:00
Matthias Mailänder
b0497b7505
Fix double whitespace.
2020-04-19 15:21:10 +02:00
Zimmermann Gyula
a894e31fa5
Remove now obsolete tileset palette entry.
2020-04-19 15:21:10 +02:00
Matthias Mailänder
dd062adec2
Add descriptions as those are not obvious in this context.
2020-04-18 13:56:26 -05:00
Matthias Mailänder
d187575a2c
Make support power icons configurable and testable.
2020-04-18 13:56:26 -05:00
teinarss
85096c4ba2
Update CoordinateTest to be compatible with new nunit version.
2020-04-18 11:36:25 -05:00
teinarss
e13fd693c3
Add Nuget packages for all dependencies
2020-04-18 11:36:25 -05:00
Mustafa Alperen Seki
cc35512472
Add a trait to reveal the whole map when conditions are met.
2020-04-18 10:49:25 -05:00
abcdefg30
4e548291ce
Treat transit-only tiles as invalid locations for minelayers
2020-04-18 13:35:06 +01:00
abcdefg30
3ba86f329f
Remove Game.HasInputFocus
2020-04-17 22:26:03 -05:00
Mustafa Alperen Seki
5b34af0f12
Change all instances of ToLower() to ToLowerInvariant()
2020-04-17 17:01:42 -05:00
Adam Mitchell
0a9eb1ff83
Fix units stuck on transit-only when resupplying
2020-04-17 11:13:46 +02:00
abcdefg30
942dd0e5f7
Adapt the utility commands to import crates as well
2020-04-17 10:52:59 +02:00
abcdefg30
400102f3d3
Remove a TODO about grey nod colors
2020-04-17 10:52:59 +02:00
abcdefg30
9ccdeb3d36
Set the wcrate and scrate sequences up
2020-04-17 10:52:59 +02:00
abcdefg30
7e0f0dd2d2
Add missing money crates to TD campaign missions
2020-04-17 10:52:59 +02:00
abcdefg30
d920cbb7f6
Move money crates to a default in the shared campaign rules
2020-04-17 10:52:59 +02:00
Paul Chote
417677e6f4
Work around and explain color picker conversion issue.
2020-04-17 10:41:08 +02:00
Paul Chote
33f3038316
Fix map-specific factions remaining selected when changing map.
2020-04-16 16:49:00 +02:00
Paul Chote
429dbe3e0c
Block profiles with revoked keys from joining auth-only servers.
2020-04-16 16:43:10 +02:00
abcdefg30
471fc44751
Add more engineers to the wave in nod07
...
Otherwise buildings will only be damaged
2020-04-16 13:21:33 +02:00
abcdefg30
1b8e346307
Fix APC reinforcements in nod07a and b
2020-04-16 13:21:33 +02:00
abcdefg30
a456583a08
Fix a crash in nod07b
2020-04-16 13:21:33 +02:00
Paul Chote
a63c17baab
Disable IP tooltip in skirmish games.
2020-04-15 23:16:24 +02:00
Paul Chote
9c4faddc0f
Switch GeoIP database from MaxMind to IP2Location.
...
The IP2Location data is licensed under CC BY-SA, which
allows us to distribute the database with releases.
2020-04-15 23:16:24 +02:00
Paul Chote
6828c4c1e9
Fix long player locations overrunning the player tooltip.
2020-04-15 23:16:24 +02:00
Matthias Mailänder
80131e7ec0
Group readonly fields.
2020-04-15 21:42:50 +02:00
Matthias Mailänder
ac381a6f58
Allow multiple ResourceRenderer traits.
2020-04-15 21:42:50 +02:00
Matthias Mailänder
521b516bf9
Mark suggested fields as readonly.
2020-04-15 21:42:50 +02:00
netnazgul
6a825f8e60
Modify preset colors to not get flagged by color validator
2020-04-14 18:31:18 +02:00
Paul Chote
f0a243ca10
Fix mine layer desync.
...
World.FogObscures depends on the local RenderPlayer and should not
be used from simulation code!
2020-04-12 23:06:55 +02:00
Matthias Mailänder
e5457a3390
Allow wall renderers in mod code.
2020-04-11 16:29:00 +02:00
Matthias Mailänder
47e21f8bef
Remove unused using.
2020-04-11 16:29:00 +02:00
Matthias Mailänder
331b854e4e
Add a lint check for production bar types.
2020-04-10 21:00:26 +02:00
Matthias Mailänder
274bc9cbba
Add missing sequence reference.
2020-04-10 20:56:54 +02:00
Matthias Mailänder
827f8d95b4
Remove unused using.
2020-04-10 20:56:54 +02:00
Matthias Mailänder
2946dd35d5
Spaces to tabs.
2020-04-10 20:14:39 +02:00
Matthias Mailänder
74d884787d
Remove trailing tabs/spaces.
2020-04-09 22:32:05 +02:00
Matthias Mailänder
5516e16fb8
Make the default player color configurable in mod.yaml
2020-04-09 22:32:05 +02:00
reaperrr
cadf4eb322
Limit TS fona to temperate theater
...
Their art wasn't drawn with snow terrain in mind,
so no point in allowing to place them on snow maps.
2020-04-07 22:04:16 +02:00
Matthias Mailänder
269249e86e
Fix the fona sequence definitions.
2020-04-07 22:04:16 +02:00
Matthias Mailänder
30f87d2308
Port some Translucent=yes from Art.ini
2020-04-07 22:00:31 +02:00
Zimmermann Gyula
8b7e72b95e
Add three additional blending modes.
2020-04-07 22:00:31 +02:00
abcdefg30
1e64048956
Cache PlayerResources and unit cost in Resupply
2020-04-07 21:27:16 +02:00
abcdefg30
8512e696f5
Add Creeps as enemy in all D2k missions
2020-04-07 21:19:08 +02:00
abcdefg30
6a03a9ec5f
Fix a yaml error in GDI08a
2020-04-07 20:59:17 +02:00
netnazgul
5e04c99d57
Fix tile errors on the map "Pie of Animosity"
2020-04-07 20:53:28 +02:00
Mustafa Alperen Seki
82f15491c0
Allow Engineers in RA to enter undamaged (Camo) PillBoxes.
2020-04-03 04:09:43 -05:00
Mustafa Alperen Seki
101843fbb7
Make EngineerRepairable conditional.
2020-04-03 04:09:43 -05:00
Zimmermann Gyula
9e534f3804
Add damagetypes to repairing.
2020-03-31 01:10:51 -05:00
Punsho
ca3cfc0184
RA Balance patch
2020-03-29 21:57:12 +02:00
Paul Chote
d62fb901e2
Fix actors with no footprint leaving stale data when deleted.
2020-03-29 21:10:45 +02:00
Matthias Mailänder
73a2b59c2c
Add additional notification support to infiltration.
2020-03-29 12:00:16 -05:00
Paul Chote
2c7a56625c
Move selectableActor check inside InputOverridesSelection.
2020-03-29 13:20:10 +02:00
Ivaylo Draganov
e2572b214f
Adjust spacing and width in editor category dropdown
2020-03-28 20:41:03 +00:00
abcdefg30
d22cd3a74f
Adjust the map visibility panel height
2020-03-28 20:41:03 +00:00
abcdefg30
0c8fcedfdf
Start with randomized wind strength
2020-03-28 19:46:47 +01:00
Paul Chote
99009c37ce
Fix and simplify WeatherOverlay:
...
- Fix rendering issues
- Track particles in world pixels instead of screen pixels
- Removed un/underused fade in/out support
- Update wind once per tick instead of once per particle
- Make Particle struct readonly
2020-03-28 19:46:47 +01:00
Paul Chote
d9f5771778
Make the right edge of the airfield transitable.
2020-03-28 19:13:14 +01:00
Paul Chote
d35b5070fb
Fix minelayers leaking enemy mine positions through the fog.
2020-03-28 18:49:07 +01:00
Paul Chote
02f41f9afc
Fix SpriteEffect updating twice in the first tick.
2020-03-28 17:12:25 +01:00
abcdefg30
c797aa1d5e
Change syrf to syrd on the desert shellmap
2020-03-27 19:24:22 +01:00
Paul Chote
b2f7f67756
Fix and simplify ScrollPanelWidget thumb rect calculation.
2020-03-26 16:54:46 +01:00
dnqbob
09014ab6d5
transformation can pass exp to new actor
2020-03-26 02:04:44 -05:00
Matthias Mailänder
8f8747d65e
Always show the building fake tags
2020-03-26 00:52:24 -05:00
Ivaylo Draganov
be19e137e2
Align lobby bits in the player tab in TD
2020-03-25 13:01:49 +01:00
Paul Chote
3155291064
Restore ability to configure RMB orders + RMB panning.
2020-03-25 12:36:21 +01:00
Paul Chote
a5b22e6a36
Remove text caching from CncLoadScreen.
...
We have repeatedly failed at invalidating these
cached values when things change, so the small perf
win is not worth the hassle.
2020-03-25 12:20:14 +01:00
Paul Chote
9c251e8b6a
Fix detection circle line rendering.
2020-03-24 20:59:46 +01:00
Matthias Mailänder
6056568182
Remove unused terrain type.
2020-03-24 19:48:54 +01:00
Zimmermann Gyula
7b7c1da18d
Add a shared parallel production queue.
2020-03-24 13:35:15 -05:00
Paul Chote
fb5b4b3547
Rename Defense button tooltip to Support.
2020-03-24 13:13:18 -05:00
Paul Chote
19918d485e
Disable plugs when there are no sockets to place them.
2020-03-24 13:13:18 -05:00
Paul Chote
45c6c6ba10
Fix Waste Refinery bib.
2020-03-24 13:13:18 -05:00
Paul Chote
0e436bc686
Move plugs and superweapons to Building queue.
2020-03-24 13:13:18 -05:00
Ivaylo Draganov
b0dfea0a09
Adjust the stroke of the muted indicator glyph
2020-03-24 16:56:49 +01:00
Paul Chote
2c4e6c4188
Remove special-case rollover rendering.
2020-03-24 00:07:10 -05:00
Paul Chote
9f3254dbd1
Implement isometric selection boxes for TS structures.
2020-03-24 00:07:10 -05:00
Paul Chote
88cdad4189
Add support for polygon selection shapes.
2020-03-24 00:07:10 -05:00
Paul Chote
4ba50a4379
Remove IEquatable from ActorBoundsPair.
2020-03-24 00:07:10 -05:00
Paul Chote
2b6c104011
Update RA decorations.
2020-03-24 00:07:10 -05:00
Paul Chote
4b446d100e
Update D2k decorations.
2020-03-24 00:07:10 -05:00
Paul Chote
f9ca2114a9
Update TS decorations.
2020-03-24 00:07:10 -05:00
Paul Chote
afc9c6ef85
Update TD decorations.
2020-03-24 00:07:10 -05:00
Paul Chote
ac200f6173
Rework decoration renderable traits:
...
- Removed implicit pip definitions and IPips interface.
New decoration traits have been added to render them.
Pip types are no longer hardcoded in OpenRA.Game.
- Decoration rendering is now managed by SelectionDecorations(Base),
which allows us to remove assumptions about the selection box
geometry from the decoration traits.
- RenderNameTag has been replaced by WithNameTagDecoration, which is
an otherwise normal decoration trait.
- Unify the configuration and reduce duplication between traits.
- Removed hardcoded references to specific selection box renderables.
- Remove legacy cruft.
2020-03-24 00:07:10 -05:00
Paul Chote
73a78eadb1
Move Interactable and Selectable to Mods.Common.
2020-03-24 00:07:10 -05:00
Matthias Mailänder
c5139fb6c2
Remove the hard-coded ban of placing buildings on resources.
2020-03-23 23:48:33 -05:00
Paul Chote
9faf9aa1b9
Replace deprecated native OpenAL with OpenAL Soft on macOS.
2020-03-23 11:13:31 +01:00
unknown
3c2e9be248
Add gdi09ea
2020-03-21 21:09:52 +01:00
Matthias Mailänder
5b59f6612f
Remove .lua scripts from the .NET solution file.
2020-03-21 17:30:26 +00:00
abcdefg30
3d69363f35
Add support for destroying enemy carryalls
2020-03-21 10:58:17 +01:00
abcdefg30
b580b4fd33
Add support for an announcement function for carryall reinforcements
2020-03-21 10:58:17 +01:00
abcdefg30
74f86d70f8
Add Ordos06a
2020-03-21 10:58:17 +01:00
abcdefg30
3959104f9b
Let VS2019 remove a duplicate line from the solution
2020-03-21 10:58:17 +01:00
Paul Chote
1ff037a257
Remove invalid caching from GCOT.
2020-03-20 17:43:24 +01:00
abcdefg30
32700df117
Fix the settings tooltip container being overwritten ingame
2020-03-20 16:06:06 +01:00
Matthias Mailänder
b4edec215e
Fix spy ignoring the target's faction.
2020-03-19 23:11:38 +01:00
Michael Silber
dffa1e45f4
Add gdi08a
2020-03-17 19:04:36 +01:00
Paul Chote
df3b6dde34
Update macOS launcher to fix "View Logs" button.
2020-03-16 20:15:58 +01:00
Matthias Mailänder
834bbf467e
Make GlobalLightingPaletteEffect public
2020-03-16 11:10:30 +01:00
Paul Chote
4d4f94208e
Cache CandidateMovementCells within the same tick.
2020-03-12 17:07:14 +01:00
Paul Chote
416713de0c
Fix infantry switching subcells and blocking eachother while moving.
2020-03-11 15:40:12 +01:00
Paul Chote
c523ca8efe
Fix FreeSubCell ignoring preferred subcell requests.
2020-03-11 15:40:12 +01:00
Paul Chote
9acea56108
Fix pathing across transit-only cells.
2020-03-11 15:40:12 +01:00
Paul Chote
44a7422375
Fix variable naming in Locomotor.
2020-03-11 15:40:12 +01:00
abcdefg30
0d0e7eb179
Fix aircraft not taking off properly
2020-03-08 17:20:39 +01:00
abcdefg30
ea6c840343
Fix the panic chance calculation in ScaredyCat
2020-03-08 16:33:23 +01:00
abcdefg30
d2db0913ac
Fix the missle jamming chance calculation
2020-03-08 16:33:23 +01:00
Punsho
3721dae74d
Making missiles properly go over terrrain and track air units
2020-03-07 13:00:28 +01:00
Matthias Mailänder
9050a2447b
Add remappable support to production icons.
2020-03-04 22:02:30 +01:00
abcdefg30
df4c363e9c
Notify blockers upon paradropping
2020-03-03 20:51:39 +00:00
abcdefg30
a909a3e692
Ignore self and actors not at ground level in Parachutable.OnLanded
2020-03-03 20:51:39 +00:00
abcdefg30
dd26253905
Fix the IgnoreActor check in Parachutable
2020-03-03 20:51:39 +00:00
abcdefg30
69b7ba2d22
Fix NREs in ProductionParadrop
2020-03-03 20:51:39 +00:00
Paul Chote
d2f306e488
Fix GetActorsAt(CPos, SubCell) with special-case subcells.
...
If given FullCell or Any we should be returning actors in
any subcell, not none.
2020-03-03 20:06:51 +01:00
Paul Chote
4a6fefa434
Disable idle scanning on RA planes.
2020-03-02 22:22:56 +01:00
Paul Chote
16e0ea611e
Revert "Fix AttackFollow ignoring allowMove flag when auto-targeting."
...
This reverts commit 3e116060cf .
2020-03-02 22:22:56 +01:00
Paul Chote
05a2e77be2
Add support for uncompressed databases.
2020-03-02 17:29:30 +01:00
Paul Chote
dd2fa36261
Fix invalid channel server crash.
2020-03-02 17:29:30 +01:00
abcdefg30
5fa1dec6d8
Fix a crash in --clear-invalid-mod-registrations
2020-03-02 17:26:34 +01:00
Paul Chote
f86d96794d
Add explicitly defined version strings to the lua docs.
2020-03-02 17:24:17 +01:00
Paul Chote
304307df5a
Fix wiki script again.
2020-03-01 16:41:19 +00:00
Paul Chote
c8856749f3
Only update the wiki from the Linux host.
2020-03-01 16:10:07 +00:00
Paul Chote
ce91c5a76f
Fix WithDisguisingInfantryBody idle animation crash.
2020-03-01 14:43:12 +01:00
Paul Chote
e6314a944c
Round dropdown arrow position to an integer pixel.
2020-03-01 14:41:17 +01:00
Paul Chote
93d006e14e
Fix incorrect end point rendering in DrawConnectedLine.
2020-02-29 18:13:54 +01:00
Paul Chote
d73ed7670a
Port missions to the new Paratroopers API.
2020-02-29 16:07:24 +01:00
Paul Chote
c0587cc568
Introduce ActivateParatroopers Lua API.
...
SendParatroopers and SendParatroopersFrom are now deprecated.
The paratrooper actors themselves can be accessed using the
Trigger.OnPassengerExited trigger.
2020-02-29 16:07:24 +01:00
Paul Chote
ed415cb637
Remove deprecated *Upgrade Lua API methods.
2020-02-29 16:07:24 +01:00
abcdefg30
a10deddf53
Update the Lua API
2020-02-28 18:48:05 +01:00
abcdefg30
a5bc841355
Ignore the types of an exit when the production type is null or empty
2020-02-28 18:48:05 +01:00
Paul Chote
41657dd291
Allow spectators to be kicked after the game starts.
2020-02-28 00:04:49 +01:00
abcdefg30
a7d5b7b8b0
Fix FreeActorWithDelivery not being properly conditional
2020-02-27 18:50:51 +01:00
reaperrr
eb007fc43c
Add Frames support to Combine
2020-02-27 18:44:34 +01:00
Paul Chote
301d09ea8f
Remove undefined RequiresForceMove from TransformsIntoTransforms.
2020-02-27 18:42:48 +01:00
Paul Chote
ac46b4b791
Fix transparent pixels in Mobile Flack icon.
2020-02-27 00:11:39 +01:00
Paul Chote
fb7c781a66
Add multi-resolution mod icon support.
2020-02-26 23:47:15 +01:00
Paul Chote
e5309ee586
Remove unused InstalledMods.Icons cache.
2020-02-26 23:47:15 +01:00
Paul Chote
84df61c672
Add multi-resolution badge support.
2020-02-26 23:47:15 +01:00
Paul Chote
de4a7cecf0
Rework multi-resolution sprite handling:
...
- Sprite.Bounds now refers to rectangles in the source image.
Use this when copying pixels, etc.
- Sprite.Size now refers to sizes in effective pixel coordinates.
Use this when rendering.
- Sheet.DPIScale has been removed.
- "Density" term is introduced to refer to the number of artwork
pixels per effective pixel.
2020-02-26 23:47:15 +01:00
abc013
c0ece00c4b
Prevent production cycling when producing actor does not occupy space
2020-02-26 23:25:41 +01:00
Paul Chote
6ba02800ab
Add TransformsIntoTransforms to enable queued MCV redeploy.
2020-02-24 12:56:49 +01:00
Paul Chote
84419e4259
Add queued argument to CanIssueDeployOrder.
2020-02-24 12:56:49 +01:00
Paul Chote
2016ab105e
Fix Reverses parsing.
2020-02-23 16:41:57 +01:00
Paul Chote
def65b10bd
Don't crash with an unhelpful IndexOutOfRangeException.
2020-02-23 16:41:57 +01:00
Matthias Mailänder
31d98cc802
Reduce the electro death loop length.
2020-02-23 16:41:57 +01:00
Matthias Mailänder
ccbaa4f816
Setup the original laser zap death animation.
2020-02-23 16:41:57 +01:00
Matthias Mailänder
2049d1b26a
Allow guessing of sprite sequence length from number of frames.
2020-02-23 16:41:57 +01:00
Matthias Mailänder
15f8469272
Use the original elongated tesla zap death animation.
2020-02-23 16:41:57 +01:00
Matthias Mailänder
43cac2f051
Don't complain about shadow frame length when there are none.
2020-02-23 16:41:57 +01:00
Matthias Mailänder
39b7db2703
Allow repetition of frames in sequence setups.
2020-02-23 16:41:57 +01:00
Paul Chote
d3291ea585
Fix script error in ordos05.
2020-02-23 11:03:23 +01:00
Ivaylo Draganov
2e8740d6a8
Change default hotkey bindings for select and cycle production buildings
2020-02-22 20:06:21 +00:00
Ivaylo Draganov
1bcad55c1f
Add a hotkey to select the current production facility
2020-02-22 20:06:21 +00:00
Paul Chote
7ffc689037
Fix TD panel-transparent definition.
2020-02-22 12:39:11 -06:00
Paul Chote
7d17916e3f
Load badges on the main thread.
2020-02-22 19:19:20 +01:00
abcdefg30
e877bb1206
Fix GrantConditionOnProduction not using ShowSelectionBar
2020-02-22 18:05:40 +00:00
reaperrr
226159d220
AttackBase ResolveOrder optimization
...
Only check for "Stop" when the other 'if' didn't apply.
2020-02-22 17:56:47 +00:00
reaperrr
da4ed24064
Mobile ResolveOrder optimization
...
When the order is "Move", the other two 'if' checks
are redundant, so 'else if' makes more sense here.
2020-02-22 17:56:47 +00:00
reaperrr
b524dc9b72
Carryall ResolveOrder optimization
...
There can be only one OrderString at a time,
so we make 'PickupUnit' an "else if", too.
2020-02-22 17:56:47 +00:00
reaperrr
1e43a8f590
Minor Aircraft ResolveOrder optimization
...
Streamline RTB if checks.
2020-02-22 17:56:47 +00:00
Matthias Mailänder
805a8fc556
Specify unicode without BOM as standard.
2020-02-22 18:44:10 +01:00
Robert
885931ae74
Run every color validation together
...
This ensures that color picks that have multiple issues will
have them all checked at the same time, including ensuring that
the fix for one issue doesn't cause another issue.
Handling of the onError action has been changed from being called
at once to collecting the potential errors in a HashSet to deduplicate
them and then calling onError after a valid color has been found.
(Otherwise you would in the worst case get 256 error messages logged!)
2020-02-22 16:31:29 +00:00
Robert
4d4f1d6068
Avoid null vectors when making colors valid
...
If the picked color and a forbidden color are identical (like
if they both picked the same palette color and in the special case
when a picked color is outside of the allowed range and the method
returns the picked color as the forbidden color),
the vector between them is zero and the maths for adjusting
the color fails by hitting the iteration limit. This changes
the zero vector to the smallest possible vector in order to
avoid the issue.
This can result in some seriously close adjustments in the case of
picking identical palette colors, which might
be undesirable compared to picking a new palette color.
2020-02-22 16:31:29 +00:00
Robert
fafa219d11
Added error message if color could not be adjusted
...
The failsafe in ColorValidator aborts after 255 iterations of
adjusting the color and picks a random color. This message makes it
clearer to the user. Results in two messages being displayed,
first one about adjusting and the about a random color pick.
2020-02-22 16:31:29 +00:00
Paul Chote
eae287efc3
Fix travis packaging.
2020-02-22 10:28:48 -06:00
Paul Chote
8903577227
Update native libraries shipped in the AppImages:
...
* SDL2 reverted back to 2.0.8 (2.0.9 and 2.0.10 generate compilation
errors so are missing from the libs tarball)
* Package Freetype 2.0.10
2020-02-22 10:28:48 -06:00
Matthias Mailänder
103cb61020
Add a new rallypoint established notification.
2020-02-22 17:16:17 +01:00
Ivaylo Draganov
1dd1786469
Reduce duplication of "Battlefield Control" chat line label
2020-02-22 15:58:00 +00:00
Ivaylo Draganov
3e2022a3dd
Allow players to mute shellmap background music
2020-02-22 15:50:01 +00:00
Paul Chote
28f7604172
Reset nextScanTime only when actually scanning for targets.
2020-02-22 16:30:07 +01:00
Paul Chote
96463634c7
Add --debug-chrome-regions utility command.
2020-02-22 16:18:45 +01:00
Paul Chote
01f5ecb2f9
Fix save game loading screen stripe bounds.
2020-02-22 16:14:32 +01:00
reaperrr
d835090d0b
Move LCWCompression support to Mods.Cnc
2020-02-22 15:40:37 +01:00
reaperrr
c687600d66
Duplicate part of LCWCompression to VqaReader
...
Duplicates the part needed by the VqaReader,
so we can move LCWCompression to Mods.Cnc
ahead of VQA (which has some additional prerequisites).
2020-02-22 15:40:37 +01:00
reaperrr
ed618c807d
Streamline LCWCompression code
...
Just making it more concise to reduce line count.
No functionality/efficiency changes.
2020-02-22 15:40:37 +01:00
Paul Chote
85faa5edf6
Add visual indicator when the game is muted.
2020-02-22 14:42:11 +01:00
Paul Chote
3f601e1ec1
Update color picker hue slider when the color changes.
2020-02-22 14:00:12 +01:00
teinarss
9d68b815a1
Fix tooltip in Observer widgets
2020-02-22 11:38:53 +01:00
teinarss
cffe5e3d9d
Add owner token to TooltipContainer
2020-02-22 11:38:53 +01:00
Paul Chote
7e72cd262c
Fix FlyAttack invalid target crash.
2020-02-19 23:35:16 -06:00
Paul Chote
9a6602656b
Ignore nearEnough if we think the actor can get closer.
2020-02-18 19:37:17 +01:00
Matthias Mailänder
57da756f2f
Set the camera pitch to 30°
2020-02-18 00:49:04 +01:00
abcdefg30
40bb45a02b
Deprecate the release-20181215 path
2020-02-17 20:14:56 +00:00
abcdefg30
f73d23661f
Update the update paths for release-20200202
2020-02-17 20:14:56 +00:00
Paul Chote
09a019f9c6
Add a lint check for LockFaction on mission players.
2020-02-16 20:51:29 +01:00
Paul Chote
4ec258cbdd
Add missing LockFaction definitions to nod09, 10a, 10b.
2020-02-16 20:51:29 +01:00
Paul Chote
41d7a2d429
Fix an integer overflow when calculating selection priorities.
2020-02-16 17:57:04 +01:00
abcdefg30
7cec1b771d
Fix Actor.CurrentActivity bogusly pointing to finished activities
2020-02-16 16:58:06 +01:00
abcdefg30
b1b74c13c3
Ensure that we never tick an activity before calling OnFirstRun
2020-02-16 16:58:06 +01:00
abcdefg30
c4a5540bfd
Ensure that we never run Done child activities
2020-02-16 16:58:06 +01:00
abcdefg30
abcb2ea512
Directly mark queued activities that are cancelled as Done
2020-02-16 16:58:06 +01:00
Paul Chote
f45dd24781
Update AppImage SDL2 dependency to 2.0.10.
2020-02-16 14:53:42 +01:00
Paul Chote
8d23994a04
Update Windows SDL2 dependency to 2.0.10.
2020-02-16 14:53:42 +01:00
Paul Chote
46e0b3b363
Update macOS SDL2 dependency to 2.0.10.
2020-02-16 14:53:42 +01:00
Paul Chote
689049cc12
Fix NRE in ArmyUnit constructor.
2020-02-16 13:57:19 +01:00
Paul Chote
1485194ef3
Automatically scale DPI under Linux.
2020-02-16 13:44:50 +01:00
Paul Chote
4203a3191f
Overhaul macOS packaging:
...
- Build on Travis-CI macOS VM
- Sign and notarize for distribution
- Create macOS-specific files from generic sources during packaging
- Add volume icon
- Rename osx directory to macos
2020-02-15 18:51:21 +01:00
Paul Chote
7b4019577d
Force disable glDebugMessageCallback on Linux+AMD.
2020-02-15 11:38:30 +01:00
Paul Chote
52f4e24e22
Fix spectator minimap not updating when in "Disable Shroud" view.
2020-02-14 23:07:31 +01:00
Paul Chote
ab196a23e6
Fix AttackFollow ignoring allowMove flag when auto-targeting.
2020-02-14 17:30:38 +01:00
Paul Chote
3a688e03f0
Add multiple levels of fallback.
2020-02-12 21:17:39 +00:00
Paul Chote
a43335c7b0
Restore transient blocker check in pathfinding queries.
2020-02-12 21:17:39 +00:00
Paul Chote
585b8dc13c
Set default rally point to an empty path.
2020-02-09 16:52:22 +01:00
Paul Chote
b2f0ac15e8
Generalize RallyPointInfo.Offset to support arbitrary length paths.
2020-02-09 16:52:22 +01:00
Paul Chote
9dc4ea8541
Fix production door not closing if the actor stays on the exit cell.
2020-02-09 16:52:22 +01:00
teinarss
817f75c808
Add unique ingame-observer.yaml for D2K
2020-02-09 16:37:21 +01:00
teinarss
7e3830e053
Updated production spec widget to handle overflow
2020-02-09 16:37:21 +01:00
teinarss
b81ede2d64
Added widget showing the army for players in spec
2020-02-09 16:37:21 +01:00
Mustafa Alperen Seki
6ab0ace9e1
Add PlayLaunchSounds() to SupportPowers which are missing it.
2020-02-09 13:34:46 +01:00
Paul Chote
85a5b6cc17
Fix subcell crusher logic.
2020-02-09 13:18:57 +01:00
Ivaylo Draganov
62af58c2e6
Calculate position of dropdown arrow glyph based on image width
2020-02-09 12:53:30 +01:00
abcdefg30
aeacc86028
Remove a loop closure guard variable
2020-02-09 12:18:09 +01:00
abcdefg30
5c4ec1bf0e
Fix a crash when a SourceActor does not occupy space
2020-02-09 12:18:09 +01:00
abcdefg30
e3f545cae9
Make WarheadArgs.Source nullable
2020-02-09 12:18:09 +01:00
Paul Chote
71cbfc5968
Change default player color to dark red.
2020-02-08 20:09:02 +01:00
Paul Chote
fdc3a6a32d
Change default name from Newbie to Commander.
2020-02-08 20:09:02 +01:00
Paul Chote
e6c1356d59
Add introduction prompt on first run.
2020-02-08 20:09:02 +01:00
Paul Chote
e8df28c518
Extract sysinfo logic to its own class.
2020-02-08 20:09:02 +01:00
Martin Bertsche
98aef70e88
Added display selection option to settings for fullscreen modes.
2020-02-08 18:14:35 +00:00
abcdefg30
de0bb9ee39
Fix a crash in the ReplaceAttackTypeStrafe update rule
2020-02-06 21:52:46 +00:00
tovl
c18857f15d
Let immovable actors block individual minefield cells.
2020-02-06 22:26:15 +01:00
Paul Chote
9a0916afbb
Add UI Scale dropdown to the settings menu.
2020-02-04 19:56:15 +01:00
Paul Chote
6388a6bff4
Add Graphics.UIScale setting to modify UI size.
2020-02-04 19:56:15 +01:00
Paul Chote
ce445f993c
Add SupportDir argument to the launch-dedicated scripts.
2020-02-04 00:21:52 +01:00
Paul Chote
0e39c98989
Ignore empty support directory overrides.
2020-02-04 00:21:52 +01:00
Paul Chote
c2bc313bf0
Fix key repeat events queueing many deploy/scatter/stop orders.
2020-02-01 13:18:04 +01:00
Paul Chote
5c76a6e7a7
Fix key up events queueing duplicate deploy/scatter/stop orders.
2020-02-01 13:18:04 +01:00
Matthias Mailänder
1e8912b4e4
Fix the namespace.
2020-02-01 02:42:25 +01:00
abcdefg30
6cc27eaa76
Fix the description of VeteranProductionIconOverlay
2020-01-31 13:55:56 +01:00
Ivaylo Draganov
1020a7bfab
Use common notice colors for UPnP status labels
2020-01-31 00:50:25 +01:00
Ivaylo Draganov
b80928bd95
Display a confirmation prompt on settings panel reset
2020-01-30 23:06:49 +01:00
abcdefg30
a6371f6fa9
Fix mission specific buildings not granting prerequisites
2020-01-29 20:59:45 +00:00
Paul Chote
bf314fdc7b
Define window size in effective pixel coordinates.
2020-01-26 20:22:49 +01:00
Paul Chote
f0033c44c7
Use full window resolution on Windows.
2020-01-26 20:22:49 +01:00
Paul Chote
fd64ad7c89
Support rendering at non-integer display scales:
...
* 2x and 3x DPI artwork can be specified using
Image2x and Image3x in chrome.yaml.
* Images are rendered using bilinear interpolation.
* For non-integer screen scales, prefer downscaling
the next biggest resolution image over upscaling.
2020-01-26 20:22:49 +01:00
Paul Chote
809b1507a6
Fix font rendering at non-integer display scales.
2020-01-26 20:22:49 +01:00
Paul Chote
d91495a041
Allocate 1px empty margin between sprites.
2020-01-26 20:22:49 +01:00
Paul Chote
84daf890d3
Use antialiasing filter when rendering world annotations.
2020-01-26 20:22:49 +01:00
Paul Chote
1bc6fb0f46
Use antialiasing filter when rendering UI icons and actors.
2020-01-26 20:22:49 +01:00
Paul Chote
1f849e9f7d
Add antialiasing support for paletted sprites.
2020-01-26 20:22:49 +01:00
Paul Chote
bd4724842c
Fix software cursor rendering at fractional scales.
2020-01-26 20:22:49 +01:00
Paul Chote
25a7299c67
Fix scroll event position calculation.
2020-01-26 20:22:49 +01:00
Paul Chote
518450cd8a
Extract load screen sheet handling into a superclass.
2020-01-26 20:22:49 +01:00
Paul Chote
57a8cf7a59
Rework Display settings tab.
2020-01-26 17:11:45 +01:00
Paul Chote
83732f299b
Add DropDownButtonWidget.PanelAlign.
2020-01-26 17:11:45 +01:00
Paul Chote
f730b55255
Move hardware cursor control to hidden DisableHardwareCursors setting.
2020-01-26 17:11:45 +01:00
Paul Chote
370f7a44fa
Restore cursor doubling for "default" cursor.
2020-01-26 17:11:45 +01:00
Paul Chote
f7e5111123
Apply cursor doubling setting without requiring a restart.
2020-01-26 17:11:45 +01:00
Paul Chote
847db5e59b
Merge HardwareCursor and SoftwareCursor into CursorManager.
2020-01-26 17:11:45 +01:00
Mustafa Alperen Seki
d7f43b33c7
Make GrantConditionOnAttack PausableConditional
2020-01-26 17:05:02 +01:00
Paul Chote
3a6d88cfef
Align settings to the standard row height.
2020-01-26 16:52:14 +01:00
Paul Chote
70f899c8d1
Remove unused localization options from settings.yaml.
2020-01-26 16:52:14 +01:00
Paul Chote
e138afc328
Overhaul Input settings.
2020-01-26 16:52:14 +01:00
Paul Chote
a84c914317
Move highlighting logic into a dedicated widget.
2020-01-26 16:52:14 +01:00
Paul Chote
46d59eef5e
Update TD cash glyphs.
2020-01-25 22:02:43 +01:00
Paul Chote
79d25b9eca
Update RA cash glyphs.
2020-01-25 22:02:43 +01:00
Paul Chote
cc530649c7
Fix horizontal positioning of dropdown arrow glyph.
2020-01-25 21:56:02 +01:00
abcdefg30
aeb623498f
Remove old update rules
2020-01-25 21:29:36 +01:00
Mustafa Alperen Seki
d4b08850f3
Fix conditionality of DisguiseTooltipInfo.
2020-01-25 17:28:15 +02:00
Paul Chote
1fada0f2b4
Add KHR suffix as defined by the KHR_debug spec.
2020-01-25 13:44:06 +01:00
Paul Chote
b08f9886be
Add Graphics.DisableGLDebugMessageCallback setting.
2020-01-25 13:44:06 +01:00
reaperrr
46384d25f2
Improve Rectangle HitShape debug overlay
...
Showing vertical sides, too.
2020-01-25 13:38:35 +01:00
reaperrr
9dcba8710b
Add turret-linking support to HitShape
...
Allows to link a HitShape to the
position and facing of a turret.
2020-01-25 13:38:35 +01:00
reaperrr
b839204c7f
Minor WithInfantryBody reorganisation
...
Move PlayStandAnimation to a more suitable position
inside the file.
2020-01-25 13:26:25 +01:00
reaperrr
595b6c8923
Greatly simplified WithInfantryBody TickIdle code
...
There was a lot of redundancy and unnecessary
complexity in several checks.
This now also prevents infantry from randomly
restarting and potentially switching between stand
sequences if there are no idle sequences.
Old behavior can still be replicated by listing
stand sequences as IdleSequences.
2020-01-25 13:26:25 +01:00
Ivaylo Draganov
9474bdba5c
Use proper glyph for in-game chat close button
2020-01-25 13:17:09 +01:00
abcdefg30
f5aa304e09
Add stray update rules to the correct path
2020-01-25 10:48:50 +00:00
Pavel Penev
93bec9e430
Updated the default mods' weapons
2020-01-24 13:09:37 +01:00
Pavel Penev
d33a5bf94e
Added an UpgradeRule CreateScreenShakeWarhead
2020-01-24 13:09:37 +01:00
Pavel Penev
b00154e2bc
Created ShakeScreenWarhead and removed the hardcoded shaking from NukeLaunch and MadTank
2020-01-24 13:09:37 +01:00
reaperrr
6220d7e62e
Introduce WarheadArgs
...
- Passes additional arguments to warheads on impact
- Uses that to reduce parameter count of DoImpact by 1
2020-01-21 19:31:34 +01:00
Paul Chote
fdc0a6e2b9
Rework TS Chrome in preparation for UI scaling.
2020-01-19 20:36:59 +01:00
Paul Chote
f37d9a7010
Rework D2k Chrome in preparation for UI scaling.
2020-01-19 20:34:18 +01:00
abcdefg30
9f66e3936d
Add issue templates for the new issue template chooser
2020-01-19 17:27:43 +01:00
Paul Chote
f1325e12d4
Extract text contrast radius to ChromeMetrics and reduce to 1px.
2020-01-19 17:18:22 +01:00
Paul Chote
7611449d3d
Reimplement text contrast using greyscale dilation.
2020-01-19 17:18:22 +01:00
abcdefg30
15b2d6b9e0
Let all Positionable traits notify visual position changes
2020-01-18 23:07:23 +00:00
Paul Chote
d0f44143c2
Fix activity cancellation on FlyAttack RTB.
...
* AbortOnResupply will now cancel queued activities
in addition to the current attack.
* Resupply if no ammo is available during a standard attack.
* Don't resupply (move directly to target) if no ammo is available
during an attack move (C&C3 style).
2020-01-18 16:38:53 +01:00
Paul Chote
51870a471a
Add AttackSource enum.
2020-01-18 16:38:53 +01:00
Paul Chote
6f52365f9d
Don't run NextActivity if it has been canceled.
2020-01-18 16:38:53 +01:00
Paul Chote
66b8689957
Use 32bit modcontent cursor.
2020-01-17 16:49:58 +01:00
Paul Chote
4fd475f7c2
Add RGBA cursor support.
2020-01-17 16:49:58 +01:00
Paul Chote
522861e484
Support 32 bit png sprites.
2020-01-17 16:49:58 +01:00
Paul Chote
1111ce4754
Add support for 32 bit BGRA sprites.
2020-01-17 16:49:58 +01:00
Paul Chote
cdbee49280
Fix slider ticks in TD.
2020-01-17 13:42:51 +01:00
reaperrr
aa63696933
Update rule for WithPermanentInjury removal
2020-01-16 22:56:39 +01:00
reaperrr
10540839f6
Make crippled TS Cyborgs use permanent TakeCover
...
This is more in line with original behavior.
Also allows us to remove WithPermanentInjury.
2020-01-16 22:56:39 +01:00
reaperrr
a9eca2cf54
Add support for enabling prone state permanently
...
Negative ProneTime now activates prone state
permanently as soon as the trait is enabled.
2020-01-16 22:56:39 +01:00
Paul Chote
d6436858a9
Fix IPAddress capitalization.
2020-01-15 12:12:54 +01:00
Paul Chote
38cb818469
Anonymise client IPs and allow server operators to disable sharing.
2020-01-15 12:12:54 +01:00
Paul Chote
422cc2b0d0
Hide location and IP labels if not known.
2020-01-15 12:12:54 +01:00
Paul Chote
d74a5065b9
Require GeoLite2 database path to be specified by the server operator.
2020-01-15 12:12:54 +01:00
Paul Chote
6b2c019caa
Evaluate player location on the server.
2020-01-15 12:12:54 +01:00
Paul Chote
c430884c8b
Require GeoLite2 database path to be specified by the server operator.
2020-01-15 12:12:54 +01:00
Matthias Mailänder
8dda6d8e3d
Remove unnecessary null check.
2020-01-14 22:08:57 +01:00
Matthias Mailänder
c43d581e7f
Add cursor palette support to GIMP/Jasc palette definitions.
2020-01-14 22:08:57 +01:00
teinarss
f0b69f8b8d
Separated resource rendering into another trait
2020-01-14 19:38:47 +01:00
Matthias Mailänder
0e93d85273
Move the AssetBrowserFileEndingsFilter to IGlobalModData
...
to avoid mods having to duplicate the whole chrome layout.
2020-01-13 13:46:34 +01:00
Paul Chote
adb3c8e39c
Split fixed-wing attack and strafe attack types.
2020-01-12 21:06:35 +01:00
tovl
85bc843554
Fix aircraft failing to engage targets within range.
2020-01-12 21:06:35 +01:00
Matthias Mailänder
c95216cd19
Move the hard-coded shroud palette to the C&C folder.
2020-01-12 19:35:41 +00:00
Paul Chote
cc05621c10
Draw editor terrain/resource preview as part of the world.
2020-01-12 18:30:50 +01:00
Paul Chote
e74033bded
Render editor actor previews as part of the world.
2020-01-12 18:30:50 +01:00
Paul Chote
fe25fdf0ff
Improve robustness of editor actor cell checks.
2020-01-12 18:30:50 +01:00
Paul Chote
1282650274
Rework RA Chrome in preparation for UI scaling.
2020-01-12 18:16:41 +01:00
Paul Chote
d622015b59
Fix Texture.GetData under GLES.
2020-01-12 17:04:23 +01:00
Paul Chote
524e8875d0
Restore MODIFIER_OVERRIDES handling of unmodified attack move hotkey.
2020-01-12 16:33:35 +01:00
Paul Chote
8c2a2d2cb8
Rework TD/modcontent chrome in preparation for UI scaling.
2020-01-12 15:52:12 +01:00
abcdefg30
a28992aa38
Default LocalClientId in ReplayConnection to -1
...
We do not have a local client in replays.
This change prevents anything from accidentally using (sometimes there might be clients with ID 0 present).
2020-01-12 14:23:34 +01:00
Paul Chote
0db4085950
Load and save registrations to both the active and legacy support directories.
2020-01-12 14:10:23 +01:00
Paul Chote
f162d90e9f
Rework support dir initialization.
2020-01-12 14:10:23 +01:00
abcdefg30
abfb28a4f3
Fix the Build function in gdi04b
2020-01-12 14:04:51 +01:00
abcdefg30
c15a555cff
Fix cargo initialisation
2020-01-12 13:58:04 +01:00
abcdefg30
e1c07d32d5
Prevent cell triggers in sarin-gas-2 from firing several times
2020-01-12 13:49:25 +01:00
tovl
fbfef903ac
Let movement trigger visibility recalculation.
2020-01-12 04:50:25 +01:00
tovl
695d9a6cb1
Centralize shroud changes in one pass to improve performance.
2020-01-12 04:50:25 +01:00
Paul Chote
0106ed3669
Restore red lines for harvester targets.
2020-01-12 04:08:59 +01:00
abcdefg30
ac42dd79ca
Make the command bar directly check if a GuardOrderGenerator is active
2020-01-12 00:54:38 +00:00
abcdefg30
deffc2dd15
Add support for defining the palette of WithResourceLevelOverlay
2020-01-12 00:47:20 +00:00
reaperrr
bb1d5f1d5c
Fix ReloadAmmoPool.ResetFire ignoring multipliers
2020-01-11 23:29:37 +00:00
teinarss
43eabdf54a
Fix naming in editor
2020-01-11 22:03:26 +00:00
tovl
0e32cbee5e
Fix crash in RallyPointIndicator.
2020-01-11 21:26:47 +00:00
reaperrr
308c64c7b1
Fix trait order issues with KillsSelf
2020-01-06 21:47:53 +00:00
reaperrr
16c2062d9d
Replace LandOnCondition with landing when paused
2020-01-06 21:47:53 +00:00
reaperrr
ac44367440
Refactor Spin to MaximumSpinSpeed
...
Additionally, add descriptions to
other FallsToEarth properties.
2020-01-06 21:47:53 +00:00
reaperrr
20beb4abe1
Fix Harpy husk rotor offset
2020-01-06 21:47:53 +00:00
reaperrr
a369634ea8
Display EMP effect on EMP'd aircraft's husks
...
When EMP'd while airborne.
2020-01-06 21:47:53 +00:00
reaperrr
7a095f30ec
Make TS aircraft crash when EMP'd mid-air
...
And refuse move orders if EMP'd while landed.
Matches original behaviour.
2020-01-06 21:47:53 +00:00
Punsho
59bcac410f
Make EMP effect carryall and orca transport
2020-01-06 21:47:53 +00:00
reaperrr
4499343ed2
Make Aircraft actually pausable/disableable
...
This commit makes aircraft
- ignore any aircraft-specific orders while disabled
- show blocked move cursor while paused
- set speeds to zero while paused or disabled
2020-01-06 21:47:53 +00:00
reaperrr
4b006bc484
Make Aircraft PausableConditional
...
Note: This commit only does the minimum changes
to implement PausableConditional, there are no
logic changes yet (like disabling movement on PauseOnCondition).
2020-01-06 21:47:53 +00:00
abcdefg30
23b3c237b7
Update the year numbers in all license headers to 2020
2020-01-05 17:00:34 +00:00
Matthias Mailänder
e33cf8a8ae
Fix a crash when cursor is null.
2020-01-05 13:27:53 +00:00
Matthias Mailänder
7e9a3d3bc9
Unhardcode transparent index in manual palettes as well.
2020-01-05 13:17:43 +00:00
Matthias Mailänder
6ea85a1a62
Don't hard-code the transparent background color.
2020-01-05 13:17:43 +00:00
Ivaylo Draganov
535144b208
Use system chat line for audio muted/unmuted notifications
2020-01-04 23:05:25 +00:00
Paul Chote
439cd4aded
Rework HardwareCursor sprite padding.
...
All frames in a sequence now use the same bounds
and hotspot, and have a size that is a multiple of 8.
2020-01-04 22:45:51 +01:00
tovl
2094142b7d
Include tunnel check in CanStayInCell.
2020-01-04 16:04:27 +00:00
tovl
196d9670d3
Disallow units from idling on bibs in TS.
2020-01-04 16:04:27 +00:00
tovl
434c46058f
Disallow units idling on service depot.
2020-01-04 16:04:27 +00:00
tovl
c360d8bcef
Make service depot passable.
2020-01-04 16:04:27 +00:00
teinarss
76221471ff
Remove unused code from Cargo trait
2020-01-03 19:34:56 +01:00
teinarss
a9d7535915
Remove cargo initialization from Tick
2020-01-03 19:34:56 +01:00
teinarss
20610d05a2
Remove CurrentAdjacentCells update on each tick in Cargo
2020-01-03 19:34:56 +01:00
Ivaylo Draganov
af5d8a3bbe
Add a hotkey to cycle harvesters
2020-01-02 23:42:22 +01:00
abcdefg30
ab348336f5
Fix ants teleporting into the map area
...
Waypoint17 is not at the map edge, waypoint7 is.
Also fixes a path, since waypoint20 -> waypoint10 is going back and makes no sense.
Going directly waypoint20 -> waypoint2 works and as compensation I added waypoint21 -> waypoint10 -> waypoint2.
2020-01-02 16:34:38 +00:00
reaperrr
804d61a6a1
Fix DeliverUnit-related crash
2020-01-01 20:42:36 +01:00
Paul Chote
baa5b3d25e
Bypass fingerprint validation for skirmish/mission servers.
2020-01-01 20:33:30 +01:00
Paul Chote
8f2bf27edf
Replace Server.Dedicated with Server.Type.
2020-01-01 20:33:30 +01:00
abcdefg30
a9f37bc9f1
Remove a leftover geoip reference from the linux packaging script
2019-12-31 17:03:05 +00:00
unknown
79136a520f
Remove dublicate function
2019-12-31 17:32:43 +01:00
Paul Chote
adf1c0b616
Remove GeoIP database from install/packaging scripts.
2019-12-31 17:28:30 +01:00
Paul Chote
e063e13ff4
Remove automatic GeoIP download from the build scripts.
...
The database file is now locked behind an account login.
https://blog.maxmind.com/2019/12/18/significant-changes-to-accessing-and-using-geolite2-databases/
2019-12-31 17:28:30 +01:00
reaperrr
9d7ecdbc2c
Disable SupportPowerInstances when player lost
...
Fixes bots using player actor powers after defeat.
2019-12-30 22:50:54 +01:00
reaperrr
7a57f0e6ef
Expose delay of WithDeathAnimation
...
Allows to show it a few ticks after death if the modder
wishes so.
2019-12-30 18:01:09 +00:00
reaperrr
c55c65f6d7
Add delay support to SpriteEffect
2019-12-30 18:01:09 +00:00
reaperrr
037ce9ebf3
Rename ProneTime to Duration
...
More in line with our property naming conventions.
Additionally, added descs to ProneOffset and
ProneSequencePrefix, since at least the purpose of
the former isn't entirely clear without looking at the code.
2019-12-30 11:34:41 +01:00
reaperrr
cef940fea9
Fix TakeCover to be disabled properly
...
Speed and Damage modifiers were ignoring IsTraitDisabled.
2019-12-30 11:34:41 +01:00
Paul Chote
a7ae93978a
Disable sound controls when no audio device is available.
2019-12-29 17:53:44 +01:00
Paul Chote
4052620f94
Rename dummy sound label to "No Sound Output".
2019-12-29 17:53:44 +01:00
Paul Chote
032c412e09
Fix WithTextDecoration rendering.
2019-12-28 21:44:26 +01:00
Paul Chote
5a686b3289
Fix duplicated/distorted SequencePlaceBuildingPreview annotations.
2019-12-28 20:56:09 +01:00
Paul Chote
2bf16a34d6
Filter invalid actor IDs when restoring selection save data.
2019-12-28 20:48:46 +01:00
Paul Chote
7ccc63b51c
Fix incorrect region definitions.
2019-12-28 19:15:36 +01:00
Paul Chote
e7253fd643
Manual chrome.yaml cleanups.
2019-12-28 19:15:36 +01:00
Paul Chote
f3d7bf403e
Rework chrome.yaml format and panel rendering.
2019-12-28 19:15:36 +01:00
Paul Chote
0b8a367867
Fix MiniYaml parsing of empty comments
2019-12-28 19:15:36 +01:00
abcdefg30
aabfd91001
Fix an indentation style issue in TransformsIntoAircraft
2019-12-28 19:16:21 +03:00
Ivaylo Draganov
3d1b4c2509
Remove "Surrender" button for single player games
2019-12-28 15:06:26 +00:00
Ivaylo Draganov
14bc7885b3
Always prompt the user to confirm when leaving a game
2019-12-28 15:06:26 +00:00
Ivaylo Draganov
2204e807b8
Add restart button to main menu for single player (missions, skirmish, replays)
2019-12-28 15:06:26 +00:00
abcdefg30
baa50c9c53
Pass DamageTypes in Explodes
2019-12-28 10:54:27 +01:00
Paul Chote
7d887f0332
Fix NV shader compile errors in combined.frag.
2019-12-27 20:20:42 +01:00
Paul Chote
51eaa17b1e
Replace frame limit text field with a slider.
2019-12-26 17:25:38 +01:00
Paul Chote
35a36b4cdf
Disable frame limiter by default
...
VSync does a more reliable job of this.
2019-12-26 17:25:38 +01:00
Paul Chote
2231183fe0
Account for game ticks when applying the frame limiter.
2019-12-26 17:25:38 +01:00
Paul Chote
656a260171
Add VSync setting.
2019-12-26 17:25:38 +01:00
abcdefg30
959c750851
Move voice playing for orders into a helper function
2019-12-23 15:01:36 +01:00
abcdefg30
4d407da3e6
Fix a potential crash in PlayVoiceForOrders
2019-12-23 15:01:36 +01:00
abcdefg30
bb1d1f8140
Remove a nowadays unnecessary loop safeguard
2019-12-23 14:57:50 +01:00
abcdefg30
d2db707521
Move unit order resolving into a helper function
2019-12-23 14:53:13 +01:00
Abdurrahmaan Iqbal
a107da0888
Fix for mod credits overriding engine credits
2019-12-23 13:48:47 +00:00
Paul Chote
b1f7c5c4e3
Remove overlapping vision ranges from RA actors.
...
This brings a significant perf saving by reducing
the number of evaluated tiles.
2019-12-23 13:53:08 +01:00
Paul Chote
04bad1ae66
Add MinRange support to AffectsShroud.
2019-12-23 13:53:08 +01:00
Paul Chote
5830d4de6c
Fix ATEK vision ranges.
2019-12-23 13:53:08 +01:00
abcdefg30
bb85146544
Make orcas buildable on nod07c
2019-12-21 00:48:03 +01:00
abcdefg30
c4ab5d4561
Fix/Update the patrols on nod07c
2019-12-21 00:48:03 +01:00
abcdefg30
54e2aad1cd
Fix broken reinforcements on gdi04 and limit them to 3 waves
2019-12-21 00:48:03 +01:00
abcdefg30
b1f6c69fce
Use a global script in Tiberian Dawn
2019-12-21 00:48:03 +01:00
abcdefg30
dbe73a06ad
Remove ISync from RallyPoint
2019-12-15 23:21:27 +01:00
Paul Chote
f36d0cc214
Fix ModContent cursor.
2019-12-15 22:29:26 +01:00
abcdefg30
1e138a9774
Drop invisible invalid targets immediately when changing stance
2019-12-14 17:17:36 +01:00
abcdefg30
905e02b765
Prevent a crash in AutoTarget.HasValidTargetPriority
2019-12-14 17:17:36 +01:00
Paul Chote
3487846636
Restore NukePower support for proxy actors.
2019-12-14 17:07:16 +01:00
tovl
203fff0ab7
Allow queued structure rallypoints.
2019-12-13 23:51:03 +01:00
tovl
3236499fb7
Increase IMove.MoveTo call flexibility.
2019-12-13 23:51:03 +01:00
Paul Chote
28dbda29e3
Add zoom hotkeys.
2019-12-13 21:29:43 +01:00
Paul Chote
1dcb903580
Implement new viewport size/zoom UI.
2019-12-13 21:29:43 +01:00
Paul Chote
860117daf9
Implement optimized pixel-art antialiasing mode for non-integer world zoom.
2019-12-13 21:29:43 +01:00
Paul Chote
cd368b43df
Draw GPS dots using the UI renderers.
2019-12-13 21:29:43 +01:00
Torleif West
ae4b2591bf
fix for RA2 cloning vats
...
formatting
minor formatting
passing CI
closing line bracket
use production unit
opening should not be followed by a blank line
revert tab change
2019-12-12 22:08:25 +01:00
Paul Chote
b0c65c5eb9
Overhaul cursor double setting.
2019-12-11 13:38:52 +01:00
Paul Chote
010fafc6d3
Fix hardware cursors on systems with >150% DPI scaling.
2019-12-11 13:38:52 +01:00
Paul Chote
79aac08a48
Fix turret positioning in the map editor.
2019-12-11 11:02:04 +01:00
Paul Chote
630ca0aefb
Draw editor selection box using the UI renderers.
2019-12-11 11:02:04 +01:00
abcdefg30
2918ecadaa
Fix team chat messages not always being displayed
2019-12-10 13:05:38 +01:00
reaperrr
82be8d9990
Move AUD support to Mods.Cnc
2019-12-09 22:06:53 +01:00
reaperrr
4d92fde5f7
Remove VqaReader dependency on AudReader
...
Use ImaAdpcmReader directly, since VQAs only contain
header-less raw IMA ADPCM audio.
2019-12-09 22:06:53 +01:00
reaperrr
5afc1c1443
Remove duplication between IMA and AUD readers
...
These parts were identical duplicates, so I removed them
and made AudReader depend on ImaAdpcmReader instead.
Applied some style fixes while I was at it.
2019-12-09 22:06:53 +01:00
abcdefg30
22374ed732
Remove the bogus 'GameSaved' speech notification definition
2019-12-08 21:56:24 +01:00
abcdefg30
bc484a9858
Add 'AirstrikeReady' to 'DisablePrefixes'
2019-12-08 21:56:24 +01:00
abcdefg30
9a57980952
Remove 'AbilityInsufficientPower' from cnc's notifications
2019-12-08 21:56:24 +01:00
Ivaylo Draganov
0900ac2b2f
Remove stray "Hotkeys" label in the Input Settings panel in TD
2019-12-08 21:38:28 +01:00
reaperrr
4751b1a176
Move ShpTDLoader, LZO and XORDelta formats to Mods.Cnc
...
They're pretty much RA/TD-specific formats.
2019-12-08 19:43:51 +00:00
reaperrr
cd123830c3
Move VocLoader from D2k to Cnc
...
My assumption that the D2 mod would want,
let alone need Mods.D2k was wrong.
Meanwhile, it does need Mods.Cnc for at least
the Pak format as well, so this is a good enough
compromise.
2019-12-08 18:14:17 +00:00
Ivaylo Draganov
93e42b0b27
Add selection tiers as inheritable templates
2019-12-08 18:39:21 +01:00
tovl
088919fecc
Change color of selection box based on selection mode.
2019-12-08 17:34:10 +01:00
reaperrr
efc06a020b
Move WithDeliveryAnimation to Mods.Common
2019-12-08 16:03:14 +00:00
reaperrr
fe1d3b3821
Move ProductionAirdrop to Mods.Common
2019-12-08 16:03:14 +00:00
reaperrr
948a9c9b19
Add ProductionAirdrop.ActorType update rule
2019-12-08 16:03:14 +00:00
Paul Chote
2603a495e6
Add render_world perf sampler.
2019-12-08 04:36:31 +01:00
Paul Chote
8c41e6a3f7
Remove redundant zoom parameter.
2019-12-08 04:36:31 +01:00
Paul Chote
327866ffc3
Render world via an intermediate FrameBuffer.
2019-12-08 04:36:31 +01:00
Paul Chote
0c8a47b5af
Add scissor support to IFrameBuffer.
2019-12-08 04:36:31 +01:00
Paul Chote
e7de7b4c05
Introduce World and UI rendering phases.
2019-12-08 04:36:31 +01:00
Paul Chote
ebd1557523
Draw voxel debug annotations using the UI renderers.
2019-12-08 04:36:31 +01:00
abcdefg30
9a5eaa7cb7
Don't throw an exception when a field is missing
2019-12-07 09:15:38 +01:00
Curtis Shmyr
f037436536
Added TooltipName as an actor Lua property
2019-12-06 09:33:23 +01:00
abcdefg30
b1571ad17a
Make Parachutable public
2019-12-05 23:13:35 +01:00
Paul Chote
494a7870d6
Add fallback exits to RA Kennel.
2019-12-05 18:01:09 +01:00
Paul Chote
dbe1d2d928
Add fallback exits to TS barracks.
2019-12-05 18:01:09 +01:00
Paul Chote
2146dd29bb
Add priority levels to Exit.
2019-12-05 18:01:09 +01:00
matjaeck
5ac9d2c2f1
Fix botmodules querying the Player actor before it is assigned.
2019-12-05 01:48:56 +01:00
reaperrr
a74235bdbc
Move ShpD2 and TmpRA/TD loaders to Mods.Cnc
...
Reducing the count of proprietary formats in Mods.Common.
Note: Moving ShpD2 to Mods.Cnc is intentional. RA/TD
use it for their original mouse shp files, and any D2(k) mod
will normally need Mods.Cnc anyway, while we can avoid
adding a Mods.D2k dependency to RA/TD this way.
2019-12-01 16:23:54 +01:00
reaperrr
a98a96b05d
Update update rule paths
2019-11-30 20:08:27 +01:00
abc013
b4c116cb31
Fix ExtractLanguageStrings utility command
2019-11-29 16:40:00 +01:00
reaperrr
074ebefee1
Fix FCOM still providing space while being captured
2019-11-27 23:04:28 +01:00
tovl
6fb3dc050b
Let CreateGroup use ExtraActors field.
2019-11-26 22:06:37 +01:00
tovl
00ce1d7ee6
Allow additional actor IDs to be send with orders.
2019-11-26 22:06:37 +01:00
reaperrr
b8e15fbe40
Move FastByteReader from LCW to own file
...
And make it public.
Making it easier to move formats that depend on it
to Mods.Cnc independently later.
2019-11-23 19:04:27 +01:00
reaperrr
3f06541b2b
Move Shp conversion/remap commands to Mods.Cnc
2019-11-23 19:04:27 +01:00
reaperrr
65728bc032
Move VocLoader to Mods.D2k
...
While this is strictly speaking a D2 format, any
D2 mod is pretty much guaranteed to use Mods.D2k,
so this should be a good enough place to move it to.
2019-11-23 19:04:27 +01:00
reaperrr
c4597b5c6b
Fix RA desert tree fire palette
...
By default WithDamageOverlay uses the actors'
palette, but RA's desert terrain uses the TD desert.pal
which isn't compatible with RA's fire animation shps.
2019-11-23 18:40:27 +01:00
abcdefg30
142f823e6f
Explain that CanEnterCell ignores 'subCell' if there is a free subcell
2019-11-21 14:13:17 +01:00
abcdefg30
25b7386f0d
Let Mobile's CanEnterCell consider ToSubCell
2019-11-21 14:13:17 +01:00
abcdefg30
4717e98c48
Add a subCell parameter to IPositionableInfo.CanEnterCell
2019-11-21 14:13:17 +01:00
abcdefg30
980c1e1b6a
Fix McvManagerBotModule spamming deploy orders
...
Removes the 'activeMCVs' list since it was not useful.
The real bugfix is not iterating over 'activeMCVs' when issueing new orders
(this was previously needed for already discovered mcvs that stopped)
but over 'newMCVs' instead.
2019-11-20 16:44:39 +01:00
teinarss
a47f60d3a6
Add a trait PlayerRadarTerrain to track explored terrain
2019-11-20 16:24:56 +01:00
reaperrr
ee00954f2e
Replace AmmoPool lookup methods with properties
...
And gave the more suitable names while at it.
This is more in line with how we do things in
other places.
2019-11-20 15:45:41 +01:00
teinarss
c77aa4c8f9
Add IsDead check to FerryUnit OnFirstRun
2019-11-19 15:59:27 +01:00
reaperrr
8181a452cb
Fix some header dates
...
Seems these were overlooked or merged after
the dates of the other files were updated.
2019-11-17 22:32:51 +01:00
Paul Chote
f39b688c39
Add GrantPrerequisiteChargeDrainPower and DrainPrerequisitePowerOnDamage.
...
These traits implement the Firestorm defense charge/drain logic.
2019-11-17 17:06:29 +01:00
Paul Chote
1fa90c0474
Allow support powers to override the icon overlay/tooltip labels.
2019-11-17 17:06:29 +01:00
Paul Chote
70b020205d
Rename *Time to *Ticks and increase internal resolution.
2019-11-17 17:06:29 +01:00
Paul Chote
e03abdc0da
Add support for custom SupportPowerInstances.
2019-11-17 17:06:29 +01:00
Paul Chote
61c56dcb00
Fix DamageModifier crashes when an actor is demolished.
...
Demolish calls GetDamageModifier with a null Damage.
2019-11-17 17:06:29 +01:00
Paul Chote
6b1e81a7b5
Spawn ejected pilots inside a FrameEndTask.
2019-11-16 23:07:58 +01:00
RoosterDragon
04912ea996
Expose a setting for Weighted A*
...
Replace Constants.CellCost and Constants.DiagonalCellCost with a dynamically calculated value based on the lowest cost terrain to traverse. Using a fixed value meant the pathfinder heuristics would be incorrect.
In the four default mods, the minimum cost is in fact 100, not 125. This increase would essentially allow the pathfinder to return suboptimal paths up to 25% longer in the worst case, but it would be quicker to do so.
This is exactly what Weighted A* does - overestimate the heuristic by some factor in order to speed up the search by checking fewer routes. This makes the heuristic inadmissible and it may now return suboptimal paths, but their worst case length is bounded by the weight. A weight of 125% will never produce paths more than 25% longer than the shortest, optimal, path.
We set the default weight to 25% to effectively maintain the existing, suboptimal, behaviour due to the choice of the old constant - in future it may prove a useful tuning knob for performance.
2019-11-15 13:05:41 +01:00
Abdurrahmaan Iqbal
72eb4e1749
Fix #17230 : Dummy audio output class
2019-11-14 23:46:14 +01:00
blackhand1001
70b1df6ce7
Fix squadmanager adding naval units to ground attack forces.
...
Fix squadmanager adding naval units to ground attack forces. This was breaking the behavior of both naval and ground squads.
2019-11-09 11:19:09 +01:00
abcdefg30
a586f10875
Don't allow movement for actors without IMove
...
However, this does not check if any existing IMove traits are enabled.
2019-11-08 23:31:59 +01:00
abcdefg30
980c0c9cd4
Fix actors returning fire at invisible attackers
2019-11-08 23:31:59 +01:00
blackhand1001
d20182f158
Simplify for loop structure now that it only has one check
...
Simplify for loop structure now that it only has one check
2019-11-08 21:04:32 +01:00
blackhand1001
49d07e9d64
Fix MCV Manager glitch when restrict building area is enabled.
...
Fix MCV Manager glitch when restrict building area is enabled. It was checking if the location was close enough to the Base center instead of using the MCV Managers min and max ranges. This would cause it to often have no valid locations despite having a huge range.
2019-11-08 21:04:32 +01:00
matjaeck
ba73842747
Allow GrantCondition to grant conditions permanently.
2019-11-08 16:37:13 +01:00
matjaeck
900e857bfa
Let AI ignore frozen actors and target original actors instead.
2019-11-08 15:32:06 +01:00
Abdurrahmaan Iqbal
d2819dca77
Show dialogue only when there are unsaved changes
2019-11-07 20:33:43 +01:00
blackhand1001
780982dbe2
Add PlaceDefenseTowardsEnemyChance trait to basebuilderbotmodule
...
Add PlaceDefenseTowardsEnemyChance trait to basebuilderbotmodule. This defeaults to 100 which is the current behavior. This change now allows you to set the chance that bots will place defenses evenly around the base like the AI in stock red alert and Tiberian sun did.
2019-11-06 10:30:36 +01:00
reaperrr
2de51ae73c
Cache IPathFinder in Mobile at creation
...
Avoiding look-ups on every move order,
as well as reducing line lengths.
2019-11-03 20:53:29 +01:00
Paul Chote
27205b30e5
Remove landing behaviour from force-move orders on selectable buildings.
2019-11-02 18:29:16 +00:00
abcdefg30
34f4c9bdaa
Prevent chronoshifting an empty selection
2019-11-02 11:29:28 +01:00
Abdurrahmaan Iqbal
023750db06
Prevent showing wall connections in unexplored terrain
2019-11-01 22:13:38 +01:00
teinarss
c94cf61069
Fix OccupiedCells for units sharing cells
2019-10-31 21:49:07 +00:00
Paul Chote
5315f8603f
Override selection if the mouse is over an already selected actor.
2019-10-30 14:53:23 +01:00
Paul Chote
0e4cb53ada
Pass contextual information to TargetOverridesSelection.
2019-10-30 14:53:23 +01:00
Paul Chote
3d6621f7ff
Force selection cursor when selection overrides input.
2019-10-30 14:53:23 +01:00
Paul Chote
9d4f683d80
Remove WorldRenderer argument from InputOverridesSelection.
2019-10-30 14:53:23 +01:00
Paul Chote
0cfd6337ff
Fix InputOverridesSelection only considering the closest actor.
2019-10-30 14:53:23 +01:00
Paul Chote
230a0b330c
Fix EjectOnDeath pilot spawning.
2019-10-29 23:03:11 +01:00
Paul Chote
3ee697a54d
Install x64 release into correct Program Files on Windows.
2019-10-28 21:03:49 +01:00
tovl
d2991247a3
Add separate condition to mobile for disabling nudging only.
2019-10-28 19:35:32 +01:00
tovl
38caadfdf0
Clean up nudging code.
2019-10-28 19:35:32 +01:00
tovl
c4d1468f62
Make locomotor cache and nudging logic aware of mobile trait status.
2019-10-28 19:35:32 +01:00
reaperrr
7e5b1abc0e
Simplified initial Wanders countdown initialization
...
I don't see a technical reason for the old approach.
2019-10-27 18:03:34 +02:00
RoosterDragon
b98123d9f8
Use SegmentStream.CreateWithoutOwningStream to avoid reading data into memory.
...
To avoid creating copied data in memory (e.g. via MemoryStream), this method can be used to reference offsets on files on disk, reducing memory requirements.
2019-10-24 20:48:14 +02:00
blackhand1001
9a9bf441ba
Add UseResourceStorage trait to CashTrickler
2019-10-23 20:20:03 +02:00
Paul Chote
1599eac66c
Rename SelectionBoxRenderable to SelectionBoxAnnotationRenderable.
2019-10-20 23:46:33 +02:00
Paul Chote
43e84c89ef
Rename SelectionBarsRenderable to SelectionBarsAnnotationRenderable.
2019-10-20 23:46:33 +02:00
Paul Chote
8e280ef0a7
Rename RangeCircleRenderable to RangeCircleAnnotationRenderable.
2019-10-20 23:46:33 +02:00
Paul Chote
81d9b705a6
Rename DetectionCircleRenderable to DetectionCircleAnnotationRenderable.
2019-10-20 23:46:33 +02:00
Paul Chote
4ec0fa299d
Rename TextRenderable to TextAnnotationRenderable.
2019-10-20 23:46:33 +02:00
Paul Chote
7937383bf4
Replace scaleSizeWithZoom with SpriteAnnotation.
2019-10-20 23:46:33 +02:00
Paul Chote
e772adb0a9
Draw annotations using the UI renderers.
2019-10-20 23:46:33 +02:00
Paul Chote
8c1b0f1afe
Add IEffectAnnotation interface.
2019-10-20 23:46:33 +02:00
Paul Chote
0ff078968d
Change IPlaceBuildingDecorationInfo to use annotations.
2019-10-20 23:46:33 +02:00
Paul Chote
7d1ce0c83b
Add annotation support to IOrderGenerator.
2019-10-20 23:46:33 +02:00
Paul Chote
1dc84f48de
Migrate traits to IRenderAnnotations.
2019-10-20 23:46:33 +02:00
Paul Chote
edaa7918fc
Add IRenderAnnotations(WhenSelected) interfaces.
2019-10-20 23:46:33 +02:00
Paul Chote
060ea80ca4
Fix infantry idle animations playing immediately after creation.
2019-10-20 16:38:25 +02:00
Paul Chote
c15a0a54bb
Don't consider unit creation as movement.
2019-10-20 16:38:25 +02:00
Paul Chote
252c833320
Don't override spawn CenterPosition for non-aircraft reinforcements.
2019-10-19 23:45:42 +02:00
abcdefg30
fdd3bffa1d
Throw a lua exception when setting an owner to null/nil
2019-10-19 13:34:43 +02:00
Paul Chote
988d6079e3
Disable Carryable while submerged.
2019-10-19 13:11:00 +02:00
Paul Chote
f14d3985a0
Allow carryall pickup orders on deployed vehicles.
2019-10-19 13:11:00 +02:00
Paul Chote
5f8fa7a35a
Add UndeployOnPickup to GrantConditionOnDeploy.
2019-10-19 13:11:00 +02:00
Paul Chote
69970d42f3
Prevent movement pausing at invalid position.
2019-10-19 13:11:00 +02:00
Paul Chote
ae34410c80
Replace MoveIntoWorld with ReturnToCell/AssociateWithAirfield.
2019-10-17 23:31:15 +02:00
Paul Chote
9b4d149a06
Revert "Suppress MoveIntoWorldInit for map-placed Mobile actors."
...
This reverts commit f0c28cc153 .
2019-10-17 23:31:15 +02:00
abcdefg30
f5f626cd89
Revert "Production should set SubCellInit"
...
This reverts commit fa1ca981ac .
2019-10-17 23:31:15 +02:00
Abdurrahmaan Iqbal
763e6d8109
Fix #17229 : Refactor ReturnToBase.cs
2019-10-17 10:28:43 +02:00
reaperrr
aa953ba5a1
Remove unused and buggy stand2 sequence from ants
...
They were unused, their settings were wrong,
and even if fixed they'd make idle ants look
glitchy, because the game switches between
stand sequences randomly.
2019-10-15 14:48:11 +02:00
reaperrr
33bba98773
Fix zombie stand2 sequence and run tickrate
2019-10-14 17:28:46 +02:00
abc013
8b1f1b21e7
Adjusted die sequence length of zombie
2019-10-14 17:28:46 +02:00
abc013
3ec0aa55b9
Fixed zombie.shp
...
Added missing zombie attack frame
and other fixes.
2019-10-14 17:28:46 +02:00
tovl
33d089a9d6
Fix lastVisibleTarget not being set in FlyAttack and AttackActivity.
2019-10-14 01:22:04 +02:00
abcdefg30
1d90e08bd0
Guard against overlaps on HiDPI by having a 5px border on graphs
2019-10-14 01:02:23 +02:00
abcdefg30
acf028581a
Special case the TD spectator UI to fit the minimum width
2019-10-14 01:02:23 +02:00
abcdefg30
9084295d7c
Reduce the width of the combat stats tab
2019-10-14 01:02:23 +02:00
abcdefg30
3f89f74d8e
Reduce the Width of INGAME_OBSERVERSTATS_BG
2019-10-14 01:02:23 +02:00
reaperrr
88d930579b
Fix missing rules in prep update path
2019-10-13 22:37:03 +01:00
abc013
3d3814f336
Add isDead-check to the flamethrowers in allies06b
2019-10-13 18:14:10 +02:00
abc013
3e244998cd
Make normal difficulty on allies06b easier
2019-10-13 18:14:10 +02:00
Nakarin Srijumrat
17bec1435b
increased ingame edge scrollspeed to 30 from 10
2019-10-13 13:20:24 +02:00
teinarss
fa1ca981ac
Production should set SubCellInit
2019-10-12 00:08:15 +02:00
abcdefg30
e9020048fb
Add an update rule to remove 'yes' and 'no'
2019-10-12 00:07:05 +02:00
abcdefg30
76ad9962d7
Split off a new UpdatePath for changes not going into prep-1908
2019-10-12 00:07:05 +02:00
abcdefg30
55c3f313b1
Remove 'yes' and 'no' in favor of 'true' and 'false'
2019-10-12 00:07:05 +02:00
abc013
c4f48ad521
Use another plug location for placing plugs on a building when current plug location is already blocked
2019-10-11 22:52:55 +02:00
Paul Chote
ba2d2299d9
Update macOS launcher package.
...
This pulls in a fix for the missing libmono-native-compat.dylib
2019-10-11 21:58:32 +02:00
abcdefg30
f9f1167b62
Minor style fixes
2019-10-11 21:48:24 +02:00
abcdefg30
e2bbbde494
Reduce string allocations in ObserverStatsLogic
2019-10-11 21:48:24 +02:00
abcdefg30
3672b4e674
Keep army and income graph disabled if they were disabled once
2019-10-11 21:48:24 +02:00
abcdefg30
ee839869fc
Replace "$/min" by "Income" and increase graph update rates
2019-10-11 21:48:24 +02:00
abcdefg30
4ca42f6e83
Remove $/min from the basic stats
2019-10-11 21:48:24 +02:00
abcdefg30
0ad8320bff
Add an XAxisTicksPerLabel property to LineGraphWidget
2019-10-11 21:48:24 +02:00
abcdefg30
feb58801e0
Work around a recursive loop in TargetAndAttack
2019-10-11 21:00:53 +02:00
Paul Chote
3860cd1b98
Add "Deployed" checkbox in the map editor actor properties.
2019-10-10 19:50:05 +02:00
Paul Chote
c08e290f44
Add "Spawn Child Actor" checkbox in the map editor actor properties.
2019-10-10 19:50:05 +02:00
Paul Chote
966290a623
Add EditorActorCheckbox plumbing.
2019-10-10 19:50:05 +02:00
Paul Chote
5eaa99827d
Suppress MoveIntoWorldInit for map-placed Mobile actors.
2019-10-07 19:02:48 +02:00
tovl
eed00ded0d
pause MovePart when Mobile is paused.
2019-10-06 20:28:20 +01:00
Jonas A. Lind
1557f4c134
Redo buildpaletteorder for RA vehicles
...
Restructure RA's vehicle build tab. More streamlined and better looking.
2019-10-06 20:22:16 +02:00
abcdefg30
acea19312d
Fix FallsToEarth queueing an activity in its ctor
2019-10-06 14:42:50 +01:00
abcdefg30
56726a0533
Add an ICreationActivity interface
2019-10-06 14:42:50 +01:00
abcdefg30
39f8d34494
Fix setting the position of the wrong actor
2019-10-06 14:42:50 +01:00
abcdefg30
ab87e78dff
Fix the XAxis of LineGraphWidget not being updated properly
2019-10-06 13:10:58 +01:00
abcdefg30
548ff411ef
Cache method call results in variables in Draw of LineGraphWidget
2019-10-06 13:10:58 +01:00
Chris Cameron
36c48e1785
feat: Using a glDebugMessageCallback instead of glGetError on devices that support it
2019-10-05 21:26:20 +01:00
Punsho
460f5bbb30
Make EMP dissable subterranean units while they're underground
2019-10-05 19:19:57 +02:00
Punsho
d9ec3e0d88
Make EMP dissable detection of mobile sensor array
2019-10-05 19:19:57 +02:00
Punsho
e1e7691fb4
Make laser fence dissable on emp
2019-10-05 19:19:57 +02:00
tovl
ac6431acf8
Clean up usage of CancelActivity.
2019-10-05 19:07:54 +02:00
teinarss
1e786b8e31
Add null check to EditorDefaultBrush for resources
2019-10-05 18:39:39 +02:00
Paul Chote
575541ff4e
Remove double-negative from appimage wrapper.
2019-10-05 18:25:13 +02:00
Paul Chote
e94f20f7ca
Reset environment variables before switching mods.
2019-10-05 18:25:13 +02:00
Paul Chote
3bda890f7b
Add Engine.LaunchWrapper launch argument for mod switching.
2019-10-05 18:25:13 +02:00
Paul Chote
bdd0f68a4a
Compile using Mono 6.4.0.
2019-10-05 18:24:45 +02:00
Paul Chote
275365917c
Update packaged mono to 6.4.0.
2019-10-05 18:24:45 +02:00
SoScared
b9b7f435dd
Redo buildpaletteorder for D2K buildings
2019-10-05 18:21:08 +02:00
Andre Mohren
7f7341a369
Fixed incorrect sequence frame amount checks using Stride.
2019-10-05 18:03:09 +02:00
Paul Chote
c30bb28210
Filter invalid actors when loading and saving games.
2019-10-05 17:50:10 +02:00
Paul Chote
3ad3c39b21
Replace actor list with count in UnitBuilderBotModule.
2019-10-05 17:50:10 +02:00
abcdefg30
b839796b89
Fix double clicking a save in the save game dialogue loading it
2019-10-05 17:39:23 +02:00
abcdefg30
ca92e13b24
Fix harvesters idling on Infiltration
2019-10-05 16:09:42 +02:00
abcdefg30
294908485f
Fix the town attackers in Infiltration not stopping
2019-10-05 16:09:42 +02:00
abcdefg30
d2a2c11326
Remove unnecessary SearchFromHarvesterRadius overwrites from TD missions
2019-10-05 16:03:32 +02:00
abcdefg30
716aeb1e8c
Add SearchFromProcRadius to TD missions that need it
2019-10-05 16:03:32 +02:00
abcdefg30
321c891bc0
Fix a crash when MaxLevel of GainsExperience is zero
2019-10-05 15:56:59 +02:00
teinarss
d34bce9eab
Remove CanEnterCell from OccupiedCells
2019-10-05 14:37:54 +02:00
teinarss
9bfc324c04
Mark cells that have changed MovementType as dirty
2019-10-05 14:37:54 +02:00
Ivaylo Draganov
ad02adff3e
Set duplicates flag for hotkeys in HotkeyManager
2019-10-05 13:17:20 +02:00
Punsho
38f5d2c100
RA balance changes for September 2019
2019-10-05 11:03:06 +01:00
Michael Silber
81eb939d4d
Fix destroyed truck escaping ra mission sarin-gas-1
2019-10-04 22:41:10 +01:00
Paul Chote
865d8d77e0
Expire invalid instances from the SupportPowerBotModule cache.
2019-10-01 19:25:30 +02:00
Paul Chote
cf427f8cb3
Drop invalid power references when loading save games.
2019-10-01 19:25:30 +02:00
abcdefg30
6f85711252
Increase the SearchFromProcRadius radius in soviet05
2019-09-30 20:28:26 +02:00
abcdefg30
70c278dec5
Remove the now unnecessary Helper refinery
2019-09-30 20:28:26 +02:00
Punsho
9ca7eb6ab1
Make mine targetable on attack everything stance for AutoTargetGround
2019-09-28 14:20:23 +02:00
teinarss
93704ccfcf
Add check to see if transport is dead to UnreserveSpace
2019-09-28 14:08:01 +02:00
abcdefg30
411316726b
Fix the expansion mcv in soviet05 being transported off the map
2019-09-28 14:01:36 +02:00
abcdefg30
4d2b70acd1
Revert the search radius decrease in D2k
2019-09-28 13:58:24 +02:00
abcdefg30
c0620bd186
Revert the search radius decrease in TS
2019-09-28 13:58:24 +02:00
teinarss
0e6fa51bb0
Rename duplicated actors
2019-09-27 18:04:29 +02:00
teinarss
76034c198e
Added Undo Redo to editor
2019-09-27 17:40:32 +02:00
teinarss
1f78b3a425
Cleanup in MapEditorTabsLogic
2019-09-27 17:40:32 +02:00
tovl
48059e8249
Skip rally point if order is queued after resupply.
2019-09-26 18:39:44 +02:00
tovl
09cd56b367
Add missing target line to aircraft taking off from resupplying.
2019-09-26 18:39:44 +02:00
tovl
145b6a05a3
Refactor unreserve actions.
2019-09-26 18:39:44 +02:00
tovl
5787f74af9
Prevent bogus attackmove on take-off.
2019-09-26 18:39:44 +02:00
Punsho
78d7f79817
Fix ctank and stank building faster then they should
2019-09-26 17:13:42 +02:00
abcdefg30
9356c8afd0
Fix unarmed units idling on the ts shellmap
2019-09-24 16:48:52 +02:00
abcdefg30
72bff74ca5
Fix passengers idling on the ts shellmap
2019-09-24 16:48:52 +02:00
abcdefg30
2d304efb73
Convert all spaces to tabs in the ts shellmap script
2019-09-24 16:48:52 +02:00
abcdefg30
c7784cbc8e
Fix reinforcements on the ts shellmap not attack moving
2019-09-24 16:48:52 +02:00
Punsho
e1a5a725b0
Fix MRV not auto targeting vehicles
2019-09-22 18:46:56 +02:00
tovl
3d4838b5bc
Make airlift landing direction configurable.
2019-09-21 18:16:34 +02:00
tovl
b4270af170
Fix airlift direction in isometric mods.
2019-09-21 18:16:34 +02:00
tovl
3fb54ea6ea
Add option for airlift to arrive from player baseline.
2019-09-21 18:16:34 +02:00
tovl
ed7667683b
Fix deployed units being nudgeable.
2019-09-19 20:52:13 +02:00
SoScared
61aaac888b
Add map Climax to RA map pool
2019-09-16 00:21:47 +02:00
RoosterDragon
6c9fbd40dc
Implement IEquatable on structs.
...
Any struct which overrides object.Equals(object obj) should implement IEquatable<T> to gain a more efficient Equals(T other) overload. This overload will be used by hashing collections like Dictionary which enables them to check equality without boxing the struct.
2019-09-15 19:56:58 +02:00
tovl
4a609bbee8
Allow units to give way when path is blocked by oncoming unit.
2019-09-15 17:51:34 +01:00
Ivaylo Draganov
32309bb8ea
Add duplicate hotkey tracking with a boolean property on the definition
2019-09-15 16:35:18 +02:00
Paul Chote
df2300bee0
Fix player viewport saving for non-spectators.
2019-09-15 15:11:47 +02:00
Oliver Brakmann
6e18de4370
Fix idling aircraft on Intervention
2019-09-15 15:02:01 +02:00
abcdefg30
0462cfa507
Remove selling from Infilitration
...
It is weird, unsatisfying for the player and inconsistent with the rest of our missions
2019-09-15 14:51:32 +02:00
abcdefg30
aee9ee6187
Fix potentially bogus usages of OnAllRemovedFromWorld
2019-09-15 14:51:32 +02:00
RoosterDragon
31918e8712
Add UnionRectangles extension method.
2019-09-14 22:09:40 +02:00
Paul Chote
0e6c37d765
Convert TerrainGeometryOverlay to IRenderAboveShroud.
2019-09-14 18:49:44 +02:00
Paul Chote
f45423ed76
Convert EditorSelectionLayer to IRenderAboveShroud.
2019-09-14 18:49:44 +02:00
Paul Chote
b3984c8db4
Convert WarheadDebugOverlay to IRenderAboveShroud.
2019-09-14 18:49:44 +02:00
Paul Chote
999ad0e18a
Convert CustomTerrainDebugOverlay to IRenderAboveShroud.
2019-09-14 18:49:44 +02:00
Paul Chote
ccd07b6cfe
Convert ExitsDebugOverlay to IRenderAboveShroudWhenSelected.
2019-09-14 18:49:44 +02:00
Paul Chote
60e42c1ea1
Convert CombatDebugOverlay to IRenderAboveShroud.
2019-09-14 18:49:44 +02:00
Paul Chote
c9ed749908
Add (Polygon|Circle|Line)AnnotationRenderable.
2019-09-14 18:49:44 +02:00
Paul Chote
a9a43d54f7
Convert WithRangeCircle to IRenderAboveShroud.
2019-09-14 18:49:44 +02:00
abcdefg30
7f6149713e
Fix actors with no footprint not being copied and pasted
2019-09-13 23:55:48 +01:00
tovl
eb39080248
Allow minefields to start and end on occupied cells.
2019-09-13 23:47:34 +01:00
matt barbier
97fe36af5a
Moved GrantExternalConditionToProduced into the Traits/Conditions folder
2019-09-13 22:04:35 +01:00
teinarss
c15f66aa62
PlayerStatistics should stop ticking after lost/win
2019-09-13 21:42:11 +01:00
reaperrr
694680720e
Updated AcceptsOrder check to be more readable
...
This hopefully also fixes handling of multiple enabled
RejectsOrders traits.
2019-09-13 19:49:19 +01:00
abcdefg30
465ee97090
Prevent users from selecting a directional target outside the map
2019-09-13 14:47:29 +02:00
Paul Chote
a8b1762464
Fix ActorPreviewWidget viewport manipulation.
2019-09-13 11:24:57 +02:00
tovl
46c0b4cf31
Fix crash with dead cargo.
2019-09-13 10:34:15 +02:00
Jan Beich
4f99982ef1
Extend Linux dllmap to other systems
...
- Drop `os` in Eluant config as it's only used on Linux
- Make generic to help BSDs and Solaris
- Update OpenAL-CS and SDL2-CS to get the same
Exception of type `System.DllNotFoundException`: lua51.dll
TypeName=``
at (wrapper managed-to-native) Eluant.LuaApi.lua_newstate(Eluant.LuaRuntime/LuaAllocator,intptr)
at Eluant.LuaRuntime..ctor ()
at Eluant.MemoryConstrainedLuaRuntime..ctor ()
at OpenRA.Scripting.ScriptContext..ctor (OpenRA.World world, OpenRA.Graphics.WorldRenderer worldRenderer, System.Collections.Generic.IEnumerable`1[T] scripts)
at OpenRA.Mods.Common.Scripting.LuaScript.OpenRA.Traits.IWorldLoaded.WorldLoaded (OpenRA.World world, OpenRA.Graphics.WorldRenderer worldRenderer)
at OpenRA.World.LoadComplete (OpenRA.Graphics.WorldRenderer wr)
at OpenRA.Game.StartGame (System.String mapUID, OpenRA.WorldType type)
at OpenRA.Game.LoadShellMap ()
at OpenRA.Mods.Common.LoadScreens.BlankLoadScreen.StartGame (OpenRA.Arguments args)
at OpenRA.Game.InitializeMod (System.String mod, OpenRA.Arguments args)
at OpenRA.Game.Initialize (OpenRA.Arguments args)
at OpenRA.Game.InitializeAndRun (System.String[] args)
at OpenRA.Program.Main (System.String[] args)
2019-09-13 00:25:50 +02:00
Jan Beich
fe48eede0e
command -v with more than one argument is non-portable
...
On FreeBSD build fails, so check if `msbuild` exists without arguments.
$ gmake
command: wrong number of arguments
OpenRA requires the 'msbuild -verbosity:m -nologo' tool provided by Mono >= 5.4.
gmake: *** [Makefile:154: core] Error 1
# FreeBSD sh
$ command -v echo ls
command: wrong number of arguments
# dash
$ command -v echo ls
echo
# ksh, bash, zsh
$ command -v echo ls
echo
/bin/ls
2019-09-13 00:25:50 +02:00
Paul Chote
afe3e24cda
Remove duplication in Texture.
2019-09-12 18:58:37 +01:00
Paul Chote
ce8112fb5a
Migrate rendering to OpenGL 3.2 / OpenGL ES 3.0.
2019-09-12 18:58:37 +01:00
Paul Chote
91c63034d3
Clean references to disposed textures.
2019-09-12 18:58:37 +01:00
teinarss
d712bdea85
Locomotor cache should handle custom layers
2019-09-09 21:39:25 +02:00
abcdefg30
912a424596
Replaced "Earned this min" by an Oil Derrick count in the economy statistics
2019-09-08 12:47:33 +02:00
abcdefg30
1e6660ecb2
Add an "UpdatesDerrickCount" trait
2019-09-08 12:47:33 +02:00
Paul Chote
8f267ebcef
Remove IronCurtainable from RA aircraft.
2019-09-08 12:24:27 +02:00
teinarss
c13fb80257
Fix crushable logic for actors in cell
2019-09-07 13:31:57 +01:00
abcdefg30
ca8ca2df5c
Fix a division by zero error in FindAndDeliverResources
...
by preventing an overflow through dividing directly
2019-09-07 10:48:20 +01:00
puritylake
aff3bf369b
#17018 Gets rif of cutoff line in chat window
2019-09-06 23:02:50 +02:00
teinarss
6fe31e44cb
More robust logic for ThisMinute stats
2019-09-06 14:00:42 +02:00
teinarss
6795fb6967
GetAvailableSubCell should block cells outside the map
2019-09-06 13:32:09 +02:00
abcdefg30
9516ee511d
Remove the duplicate Selectable trait on TENF
2019-09-06 13:18:37 +02:00
Paul Chote
1d106e71c4
Save screenshots via the frame buffer.
2019-09-04 20:20:04 +02:00
Paul Chote
c0ee346c1c
Render via an intermediate frame buffer.
2019-09-04 20:20:04 +02:00
Paul Chote
d2298b6f04
Allow FrameBuffer clear color to be customized.
2019-09-04 20:20:04 +02:00
Paul Chote
09dd66fd5a
Correctly fix BlendMode.Subtractive alpha handling.
2019-09-04 20:20:04 +02:00
Paul Chote
b93c7cabb3
Render voxels before BeginFrame.
2019-09-04 20:20:04 +02:00
Oliver Brakmann
5d786f411f
Update comment in Activity.cs
...
SequenceActivities() was removed.
2019-09-02 01:45:35 +02:00
reaperrr
801f5ba525
Rename FlyCircle to FlyIdle and make it tick TickIdle
...
It now handles both hovering and circling aircraft, for consistency.
2019-09-01 16:38:44 +02:00
teinarss
ce29dcad87
Update PlayerResources capacity from INotify* methods
2019-08-28 00:32:01 +02:00
reaperrr
8edd202b64
Move InflictDamage method back to DamageWarhead
...
From TargetDamageWarhead.
Saves a few lines and allows warheads that are not
TargetDamageWarhead-based to use it.
2019-08-27 23:05:19 +02:00
reaperrr
07de3ba5e0
Change default preview facing to 96
...
92 is not a multiple of 8, and all sprite actors
in the official mods have at most 32 facings.
2019-08-27 22:59:22 +02:00