RoosterDragon
5f97e2de5a
Make Color use uint for ARGB.
...
This is a more natural representation than int that allows removal of casts in many places that require uint. Additionally, we can change the internal representation from long to uint, making the Color struct smaller. Since arrays of colors are common, this can save on memory.
2024-03-09 21:10:02 +02:00
Wojciech Walaszek
7b82d85b27
Editor actor move
2024-03-03 14:27:35 +02:00
michaeldgg2
63247d2d11
ParallelProductionQueue: pause production, when all Production traits are paused
2024-02-25 11:52:25 +01:00
Gustas
d3c44de5d2
Fix force rally point not setting building as primary
2024-02-23 19:10:35 +01:00
atlimit8
a054d2115d
remove unused RenderSprite trait fields
2024-02-16 09:36:44 +02:00
michaeldgg2
9d29303142
Hovers: remove dependency on IMove trait
2024-02-13 11:30:35 -06:00
atlimit8
8fda46e241
Prevent reading not yet cached Actor.Crushable() in Crate ctor using HierarchicalPathFinder.ActorIsBlocking(Actor actor).
...
Only occurs if the crate might be blocked.
Test Mod: td
Test Map: Island Duel
Line:
foreach (var crushable in actor.Crushables)
Stack trace:
OpenRA.Mods.Common.dll!OpenRA.Mods.Common.Pathfinder.HierarchicalPathFinder.ActorIsBlocking(OpenRA.Actor actor) Line 660 (OpenRA.Mods.Common/Pathfinder/HierarchicalPathFinder.cs:660)
OpenRA.Mods.Common.dll!OpenRA.Mods.Common.Pathfinder.HierarchicalPathFinder.RequireBlockingRefreshInCell(OpenRA.CPos cell) Line 607 (OpenRA.Mods.Common/Pathfinder/HierarchicalPathFinder.cs:607)
OpenRA.Mods.Common.dll!OpenRA.Mods.Common.Traits.ActorMap.AddInfluence(OpenRA.Actor self, OpenRA.Traits.IOccupySpace ios) Line 428 (OpenRA.Mods.Common/Traits/World/ActorMap.cs:428)
OpenRA.Mods.Common.dll!OpenRA.Mods.Common.Traits.Crate.SetLocation(OpenRA.Actor self, OpenRA.CPos cell) Line 224 (OpenRA.Mods.Common/Traits/Crates/Crate.cs:224)
OpenRA.Mods.Common.dll!OpenRA.Mods.Common.Traits.Crate.SetPosition(OpenRA.Actor self, OpenRA.CPos cell, OpenRA.Traits.SubCell subCell) Line 203 (OpenRA.Mods.Common/Traits/Crates/Crate.cs:203)
OpenRA.Mods.Common.dll!OpenRA.Mods.Common.Traits.Crate.Crate(OpenRA.ActorInitializer init, OpenRA.Mods.Common.Traits.CrateInfo info) Line 94 (OpenRA.Mods.Common/Traits/Crates/Crate.cs:94)
OpenRA.Mods.Common.dll!OpenRA.Mods.Common.Traits.CrateInfo.Create(OpenRA.ActorInitializer init) Line 33 (OpenRA.Mods.Common/Traits/Crates/Crate.cs:33)
OpenRA.Game.dll!OpenRA.Actor.Actor(OpenRA.World world, string name, OpenRA.Primitives.TypeDictionary initDict) Line 163 (OpenRA.Game/Actor.cs:163)
OpenRA.Game.dll!OpenRA.World.CreateActor(bool addToWorld, string name, OpenRA.Primitives.TypeDictionary initDict) Line 339 (OpenRA.Game/World.cs:339)
OpenRA.Game.dll!OpenRA.World.CreateActor(string name, OpenRA.Primitives.TypeDictionary initDict) Line 329 (OpenRA.Game/World.cs:329)
OpenRA.Mods.Common.dll!OpenRA.Mods.Common.Traits.CrateSpawner.SpawnCrate.AnonymousMethod__0(OpenRA.World w) Line 168 (OpenRA.Mods.Common/Traits/World/CrateSpawner.cs:168)
OpenRA.Game.dll!OpenRA.World.Tick() Line 464 (OpenRA.Game/World.cs:464)
OpenRA.Game.dll!OpenRA.Game.InnerLogicTick(OpenRA.Network.OrderManager orderManager) Line 634 (OpenRA.Game/Game.cs:634)
OpenRA.Game.dll!OpenRA.Game.LogicTick() Line 658 (OpenRA.Game/Game.cs:658)
OpenRA.Game.dll!OpenRA.Game.Loop() Line 830 (OpenRA.Game/Game.cs:830)
OpenRA.Game.dll!OpenRA.Game.Run() Line 883 (OpenRA.Game/Game.cs:883)
OpenRA.Game.dll!OpenRA.Game.InitializeAndRun(string[] args) Line 313 (OpenRA.Game/Game.cs:313)
OpenRA.dll!OpenRA.Launcher.Program.Main(string[] args) Line 26 (OpenRA.Launcher/Program.cs:26)
[External Code] (Unknown Source:0)
2024-02-09 16:30:05 +02:00
Gustas
1a4f366e4b
Make notifyAttacks more consistent
2024-02-07 15:30:41 +01:00
Gustas
2d332d0a13
Fix pillbox not uncloaking upon firing
2024-02-07 15:30:41 +01:00
David Wilson
d630a6ef7d
Fix editor area/actor deselection bugs
2024-02-07 15:30:23 +02:00
N.N
4e031a6ea5
Selection info into Area selection tab
...
Selection info into Area selection tab
add Resource counter and measure info into Area selection tab
2024-02-03 12:26:21 +02:00
LipkeGu
311d55ff45
Add [FieldLoader.Require] to TooltipInfoBase.Name
2024-02-03 12:17:58 +02:00
Vapre
64cdfcbeab
Cache ICrushable traits in actor.
2024-01-31 13:29:58 +02:00
Gustas
6026d088c8
Use HashSets instead of .Distinct
...
And don't cast to array / list where unnecessary
2024-01-30 22:06:58 -06:00
David Wilson
2ced4abc24
Editor selection refactor pt1
2024-01-24 10:11:39 +02:00
dnqbob
32121a38f4
Fix Hovers desync caused by changing 'WorldVisualOffset' in renderer.
2024-01-15 15:21:45 +02:00
Wojciech Walaszek
00857df990
adds tilting on slopes to suitable actor previews
2024-01-09 14:56:30 +02:00
Gustas
1a037c06bf
Fix smudges incorrectly generating on slopes
2024-01-08 18:22:41 +01:00
Wojciech Walaszek
680144b24f
adds Hovers WorldVisualOffset to muzzle calculations
2024-01-06 13:06:08 +02:00
reaperrr
1f10dafbea
Add MaxSmokeOffsetDistance to SmudgeLayer
2024-01-06 12:31:17 +02:00
N.N
d83a871520
Add RemoveOrders into RejectOrders trait
2023-12-27 17:28:10 +02:00
dnqbob
ba951b6470
Add Translation to TooltipDescription
2023-12-15 18:20:00 +02:00
Paul Chote
6c56ea4c55
Introduce Renderer.WorldBufferSnapshot().
2023-12-15 13:37:05 +02:00
N.N
aa5b193746
Exlude DamageTypes from HarvesterNotifier
2023-12-15 13:04:36 +02:00
dnqbob
264564d006
Allow WeatherOverlay fade in/out when enabled/disabled
2023-12-15 11:48:54 +02:00
Paul Chote
ad833a6fbb
Add support for additional cloak styles and use native alpha in RA,D2k,TS.
2023-12-04 10:10:28 +02:00
Paul Chote
9f196f2693
Fix Cloak.UncloakSound not being used.
2023-12-04 10:10:28 +02:00
Gustas
d8100cb9f2
Simplify harvester's creation activity
2023-12-03 19:27:02 +00:00
Gustas
2733ed4b1c
Fix war factory not opening its door properly
2023-12-03 19:27:02 +00:00
Gustas
018777472a
Fix harvesters teleporting when produced
...
And allow to interrupt actor creation child activities
2023-12-03 19:27:02 +00:00
Gustas
20f6e01afe
Fix crashing when transports are loaded via lua
2023-12-03 19:27:02 +00:00
Oliver Brakmann
3904576574
Draw border around capture area in ProximityCapturable
2023-12-03 17:14:47 +00:00
Oliver Brakmann
8529512edb
Add CellTrigger support to ProximityCapturable
2023-12-03 17:14:47 +00:00
Paul Chote
07ed6a889e
Move ColorShift traits into the main repo.
2023-12-02 21:44:58 +02:00
Gustas
d67e0a4eef
Allow harvester definitions to exist on non-mobile actors
2023-12-02 13:50:46 +01:00
Gustas
8e7fa26709
Add TransformsIntoDockClient
2023-12-02 13:50:46 +01:00
dnqbob
deacc7ad65
Fix InitialActor in Carryall not initialized correctly
2023-12-02 13:56:36 +02:00
N.N
bb1e830264
Add initial delay for ActorSpawnManager
2023-12-02 11:36:42 +02:00
Gustas
0f5b78442b
Extract unit names and descriptions
2023-11-25 16:28:19 +01:00
RoosterDragon
e6914f707a
Introduce FirstOrDefault extensions method for Array.Find and List.Find.
...
This allows the LINQ spelling to be used, but benefits from the performance improvement of the specific methods for these classes that provide the same result.
2023-11-19 19:28:57 +02:00
RoosterDragon
acca837142
Fix RCS1246
2023-11-19 19:28:57 +02:00
RoosterDragon
330ca92045
Fix RCS1077
2023-11-19 19:28:57 +02:00
RoosterDragon
c8efc5fdd7
Fix CA1854
2023-11-16 09:29:17 +02:00
RoosterDragon
2996a1ddde
Fix CA1868
2023-11-16 09:29:17 +02:00
RoosterDragon
9f526610dd
Fix CA1864
2023-11-16 09:29:17 +02:00
RoosterDragon
360f24f609
Fix IDE0055
...
This rule no longer appears to be buggy, so enforce it. Some of the automated fixes are adjusted in order to improve the result. #pragma directives have no option to control indentation, so remove them where possible.
2023-11-16 08:45:10 +02:00
RoosterDragon
f6614c1c58
Fix CA1860
2023-11-15 19:13:17 +02:00
RoosterDragon
889de5e08a
Fix CA1822
2023-11-15 19:13:17 +02:00
RoosterDragon
b97d1a4c6c
Fix IDE0090
2023-11-15 19:13:17 +02:00
RoosterDragon
31c37662cf
Play game started audio notifications just as the game starts.
...
Previously the StartGameNotification and MusicPlaylist traits used the IWorldLoaded interface to play an audio notification and begin music when the game started. However this interface is used by many traits to perform initial loading whilst the load screen was visible, and this loading can take time. Since the traits could run in any order, then audio notification might fire before another trait with a long loading time. This is not ideal as we want the time between the audio notification occurring and the player being able to interact to be as short and reliable as possible.
Now, we introduce a new IPostWorldLoaded which runs after all other loading activity, and we switch StartGameNotification and MusicPlaylist to use it. This allows timing sensitive traits that want to run right at the end of loading to fire reliably and with minimal delay. The player perception of hearing the notification and being able to interact is now much snappier.
2023-11-12 20:18:41 +02:00