teinarss
27f1a7ab27
Use out var syntax
2020-08-19 18:11:07 +01: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
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
Paul Chote
7c6ec577dc
Rewrite ActorInit queries.
2020-05-28 19:04:53 +02:00
Paul Chote
fe58ed1283
Animation facing -> WAngle.
2020-05-09 10:20:23 -05:00
Matthias Mailänder
0103c38c13
Don't change the animation when it's not your turn.
2020-05-02 20:07:09 +01:00
abcdefg30
23b3c237b7
Update the year numbers in all license headers to 2020
2020-01-05 17:00:34 +00:00
Paul Chote
78a70be0d4
Fix and enable SA1133, SA1134 style rules.
2019-05-24 10:47:57 +02:00
abcdefg30
cadbd0d9ab
Change the year number in all cs headers from 2018 to 2019
2019-01-26 23:15:21 +01:00
Paul Chote
14607f55c5
Replace INotifyBuildComplete in render traits with conditions.
2018-10-07 19:29:34 +02:00
Paul Chote
d110a21bfe
Add missing EnabledByDefault checks to WithSpriteBodyInfo subclasses.
2018-08-11 14:30:01 +02:00
Arular101
8a60918841
Update copyright notice year to 2018
2018-01-17 00:47:34 +01:00
RoosterDragon
7a7eed4fb7
Add FirstEnabledTraitOrDefault helper method.
...
This avoids the allocations caused by LINQ when using traits.FirstOrDefault(Exts.IsTraitEnabled). This is important in FrozenActorLayer.RefreshState which is called very often. We apply the new helper method to all areas using the old pattern. An overload that takes an array allows arrays to be enumerated without causing allocations.
2017-12-10 13:39:24 +00:00
reaperrr
8533debc44
Require explicit INotifyAddedToWorld and INotifyRemovedFromWorld
2017-10-07 10:17:11 +02:00
Paul Chote
227655f9aa
Fix wall artwork interaction with conditions.
2017-04-23 00:44:09 +01:00
Taryn Hill
43317e0f5d
Update copyright notice year to 2017
2016-12-31 23:46:13 -06:00
reaperrr
ce52bc9d7b
Some more misc explicit interface implementations
...
'Fallout' from working on other things.
2016-10-30 19:17:41 +01:00
reaperrr
7955aeb1c3
Implement INotifyDamageStateChanged explicitly in WithSpriteBody
2016-10-22 18:21:52 +02:00
reaperrr
a6b09342bc
Make INotifyBuildComplete require explicit implementation
2016-10-22 18:21:52 +02:00
teees
8724ed29bc
Support dynamic offsets in ActorPreviews.
2016-06-15 20:36:08 +01:00
Paul Chote
08100dc49b
Fix initial render state for walls.
2016-04-21 17:21:29 +01:00
reaperrr
fd5a597966
Move Render traits to Traits.Render namespace
2016-04-15 20:43:04 +02:00
Paul Chote
e71225496b
Clarify GPL version.
2016-02-21 16:30:48 +00:00
Paul Chote
b396965fd9
Update licence header year.
2016-02-21 16:27:31 +00:00
teees
5ca9f52a62
IWallConnectorInfo to allow gates connect to walls in map editor
2016-01-25 09:25:36 +01:00
teees
18e26d87c7
Add support for multiple IWallConnector traits
2016-01-25 09:14:00 +01:00
Paul Chote
1de1458fda
Fix wall adjacency for multi-cell neighbours.
2016-01-25 09:14:00 +01:00
teees
7f2feb29cd
Added IWallConnector trait interface
2016-01-25 09:14:00 +01:00
reaperrr
2f69711341
Rename ActorMap *UnitsAt* occurences to *ActorsAt*
...
These enumerate actors in general, not just mobile actors (which the term 'unit' usually refers to).
2015-10-16 00:07:06 +02:00
Pavel Penev
8b83fac306
Fix WithWallSpriteBody hijacking WithSpriteBody's DefaultAnimation before/during the "make" animation
2015-10-04 04:02:40 +03:00
atlimit8
09984683a7
Add ActorInfo.TraitInfo[OrDefault]<T>() requiring ITraitIfo types
2015-09-19 09:56:14 -05:00
reaperrr
bf51e0600d
RenderBuildingWall -> WithWallSpriteBody
2015-08-30 00:22:53 +02:00