Pavel Penev
7fa7ebe657
Merge pull request #9384 from Mailaender/lint-player-palettes
...
Added a lint check for player palette references.
2015-09-27 18:44:55 +03:00
Matthias Mailänder
defba7aece
lint check player palette reference
...
and tell which actor is affected when a problem is found
2015-09-27 14:57:58 +02:00
Pavel Penev
642468ce0c
Add MapGrid class
...
MapGrid is a mod Manifest field which includes (and thus makes redundant) TileSize, TileShape, SubCells info and MaximumTerrainHeight.
2015-09-27 04:14:43 +03:00
RoosterDragon
d70eea5adc
Refactor occupied cells visibility checks.
...
Provide some common extension methods to reduce code duplication, and also use loops instead of LINQ to reduce allocations and provide a minor speedup.
2015-09-26 21:12:05 +01:00
RoosterDragon
e016227ddf
Merge pull request #9327 from Mailaender/bridge-render-sizes
...
Fixed bridge rendering glitches
2015-09-26 19:54:43 +01:00
Oliver Brakmann
d667271ab7
Merge pull request #9262 from RoosterDragon/frozen-unify-dict
...
Speed up FrozenUnderFog.Tick
2015-09-26 20:45:58 +02:00
RoosterDragon
285a3eab2e
Merge pull request #8760 from atlimit8/RangeMultiplier
...
Added [I]RangeMultiplier & made UpgradeMultiplierTraitInfo implement ITraitInfo
2015-09-26 16:24:17 +01:00
Paul Chote
9aa5828155
Merge pull request #9307 from obrakmann/fix6174_beacon-key-in-replays
...
Make some navigation keys available to spectators
2015-09-26 11:30:50 +01:00
abcdefg30
589e673aa9
Replace the float WaterChance by an integer percentage
2015-09-25 17:00:06 +02:00
abcdefg30
277f9acb89
Replace seconds by ticks
2015-09-25 16:53:45 +02:00
abcdefg30
10c2a897f4
Small code cleanup
2015-09-25 16:53:44 +02:00
abcdefg30
a2af88da21
Add a InitialSpawnDelay to CrateSpawner
2015-09-25 16:53:43 +02:00
reaperrr
59a96ab0ef
Make sure silo animation is properly updated on owner change
2015-09-25 14:26:22 +02:00
reaperrr
522e7d5d04
Add custom sequence support to WithSiloAnimation
...
Additionally add description to Stages property, and remove unnecessary var (information is only needed once anyway).
2015-09-25 14:26:21 +02:00
atlimit8
74a9dc6793
Added IRangeMultiplier
2015-09-24 16:37:43 -05:00
atlimit8
a8106a9999
Made UpgradeMultiplierTraitInfo implement ITraitInfo
2015-09-24 16:17:06 -05:00
atlimit8
527675db8d
Attack activities use armaments directly through constructor
2015-09-24 16:17:06 -05:00
reaperrr
5b5164211e
Rename WithMuzzleFlash to WithMuzzleOverlay
2015-09-24 20:23:31 +02:00
Pavel Penev
cdd4590ece
Merge pull request #8839 from RoosterDragon/test-sync-implementations
...
Test sync implementations
2015-09-24 15:17:33 +03:00
Pavel Penev
c41446e022
Merge pull request #9139 from Mailaender/editor-cash-counter
...
Added a total resource cash counter to the map editor
2015-09-24 15:07:15 +03:00
RoosterDragon
6b62aa1ad5
Add missing sync interfaces.
2015-09-21 22:17:06 +01:00
atlimit8
9acf121eb1
Replace ActorInfo.Traits.WithInterface with ActorInfo.TraitInfos<T>()
2015-09-21 15:50:57 -05:00
atlimit8
6e39a5e264
Replace .WithInterface<T>().Any() => .HasTraitInfo<T>()
2015-09-21 15:50:57 -05:00
Paul Chote
7f4663f606
Pull out a temporary variable in ProductionQueue.
2015-09-20 22:46:07 +01:00
Oliver Brakmann
379b5a181f
Make (Harvester|Base)AttackNotifiers visible to team mates and spectators
2015-09-20 22:37:34 +02:00
Paul Chote
ef55d646f7
Unstatic the Sound class.
2015-09-20 14:11:06 +01:00
Matthias Mailänder
7845577553
Add descriptions to the SelectionSize traits.
2015-09-20 14:58:23 +02:00
Paul Chote
ff10fe3e07
Merge pull request #9377 from reaperrr/fix-bldplace-overlay
...
Fixed TS crane overlay's last frame hiding idle overlay
2015-09-20 12:13:52 +01:00
reaperrr
58e474ec80
Make repair overlay invisible when not repairing
2015-09-19 20:37:58 +02:00
reaperrr
e99c951a0c
Hide WithBuildingPlacedOverlay after it has been played
...
Fixes #9319 .
2015-09-19 20:37:57 +02:00
Paul Chote
7dfd5ade3a
Merge pull request #9301 from atlimit8/WDistTraitRangeFields
...
Make Range WDist for all traits with circular ranges.
2015-09-19 19:10:34 +01:00
Paul Chote
3fec4c2032
Merge pull request #9298 from atlimit8/AffectsShroud
...
Create abstract class AffectsShroud[Info] with RevealsShroud core logic also used by CreatesShroud
2015-09-19 18:46:23 +01:00
Matthias Mailänder
fea59346a5
add a total resource cash counter to the map editor
2015-09-19 18:21:07 +02:00
atlimit8
de7f5a4288
Make Range WDist for all traits with circular ranges.
2015-09-19 11:02:28 -05:00
atlimit8
09984683a7
Add ActorInfo.TraitInfo[OrDefault]<T>() requiring ITraitIfo types
2015-09-19 09:56:14 -05:00
atlimit8
6970959ef1
.Trait[OrDefault]<Trait> => .Info.Traits.Get[OrDefault]<TraitInfo> where applicable
2015-09-19 09:49:24 -05:00
atlimit8
8162fa27ab
Add ActorInfo.HasTraitInfo<T>() requiring ITraitInfo types
2015-09-19 09:49:24 -05:00
atlimit8
85fab45451
Remove Actor.HasTrait<T>()
2015-09-19 09:49:23 -05:00
Matthias Mailänder
c0dd9c4566
Merge pull request #9359 from RoosterDragon/fix-pathfinder-layer-pooling
...
Fixed pooling of layers used for pathfinding
2015-09-19 13:07:33 +02:00
Matthias Mailänder
b5a5dfdb54
Merge pull request #9365 from atlimit8/HealUnitsCrateAction_use_ActorsWithTrait
...
HealUnitsCrateAction.Activate() use ActorsWithTrait<Health>()
2015-09-19 12:53:25 +02:00
atlimit8
be010249d7
Replace only use of Linq syntax
2015-09-18 10:31:41 -05:00
atlimit8
1d9d28b540
HealUnitsCrateAction.Activate() use ActorsWithTrait<Health>()
2015-09-17 23:55:38 -05:00
reaperrr
4fa20e78fa
Merge pull request #9304 from atlimit8/Fix_AttackBase_GetMinimumRange
...
Make AttackBase.GetMinimumRange() return WDist.Zero if there are no available armaments
2015-09-18 01:26:35 +02:00
RoosterDragon
519be4374c
Fixed pooling of layers used for pathfinding.
...
The previous implementation:
- Was failing to dispose of pooled layers.
- Was using a finalizer to allow undisposed layers to be reused.
This means all pooled layers are kept alive indefinitely until the map changes. If the finalizer is slow for any reason then the pathfiinder will allocate new layers when the pool runs out. Since these new layers are eventually stuffed back into the pool when the finalizer does run, this can theoretically leak unbounded memory until the pool goes out of scope. In practice it would leak tens of megabytes.
The new implementation ensures layers are disposed and pooled correctly to allow proper memory reuse. It also introduces some safeguards against memory leaks:
- A cap is set on the number of pooled layers. If more concurrent layers are needed than this, then the excess layers will not be pooled but instead be allowed to be garbage collected.
- No finalizer. An implementation that fails to call dispose simply allows the layer to be garbage collected instead.
2015-09-16 21:25:46 +01:00
atlimit8
45112cfa76
Remove redundant IBodyOrientation[Info] & replace with BodyOrientation[Info]
2015-09-15 22:57:08 -05:00
reaperrr
6613db7a15
Fix RotationPaletteEffect tileset validity check
...
If Tilesets was empty but ExcludeTilesets was not, it would always return false even though that combination is supposed to mean only the excluded tileset(s) is/are not valid for this effect.
2015-09-14 16:36:56 +02:00
Pavel Penev
3fc41238d8
Merge pull request #9333 from atlimit8/DuplicateUnitCrateAction_EnabledTargetting
...
Make DuplicateUnitCrateAction only check enabled targetability
2015-09-14 02:45:19 +03:00
abcdefg30
48ecc717b2
Merge pull request #8996 from Mailaender/alpha-cloak
...
Added pre-multiplied alpha palettes for cloak effects
2015-09-13 18:53:17 +02:00
atlimit8
578a92370b
Make DuplicateUnitCrateAction only check enabled targetability
2015-09-12 21:30:35 -05:00
reaperrr
181e934ee8
Merge pull request #9311 from atlimit8/Fix9310
...
DeathType Count check in Explodes
2015-09-10 17:57:26 +02:00