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
86f61298e6
Replace ITraitInfo interface with TraitInfo class.
2020-05-21 13:01:04 +02: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
4723e5ddb9
Expose common actor Inits in the map editor.
2018-12-08 22:53:13 +01:00
Paul Chote
f6768fe624
Remove legacy editor actor properties plumbing.
2018-12-08 22:53:13 +01:00
Andre Mohren
640078a2b1
Refactored Health usage to IHealth.
2018-09-29 18:12:40 +02:00
reaperrr
1f7edf9f0b
Cache *Notify traits in Health where applicable
...
During heated battles, those TraitsImplementing look-ups in Health might cause bursty CPU load on warhead impacts. Caching the notify traits of the actor + owner can reduce the trait look-ups per impact by more than half.
2018-09-29 12:54:34 +01:00
reaperrr
13769d48a1
Minor Health readability style fix
2018-09-29 12:54:34 +01:00
reaperrr
43693d84d1
Migrate DamageState thresholds to integer
...
While avoiding divisions.
While there haven't been any desyncs to speak of recently (not in this part of the code, in any case), this still looks like an oversight from when we migrated away from using floats.
This also makes it easier to expose the thresholds to modders later.
2018-09-29 12:54:34 +01:00
reaperrr
0b0c3b7170
Changed an 'if' to 'else' in Health.Tick
...
Since the two 'if's were mutually exclusive, the 2nd 'if' was turned into an 'else' to potentially skip that check if the 1st succeeds.
2018-09-29 12:54:34 +01:00
Chris Forbes
d4ef841678
Convert masses of HashSet<string> to BitSet<DamageType>
2018-07-28 20:12:42 +01:00
Mustafa Alperen Seki
5e7e3bb011
Add DamageTypes to Kill() and make some traits use it.
2018-03-09 00:25:29 +01:00
Arular101
8a60918841
Update copyright notice year to 2018
2018-01-17 00:47:34 +01:00
Arular101
24b7f7a23f
Cast to long to avoid overflow when multiplying by the health (part 2)
2018-01-13 17:32:34 +01:00
reaperrr
28e1f391e0
Make ITick require explicit implementation
2017-09-16 15:51:37 +02:00
reaperrr
7fd0a3aa58
Lint check and yaml enforcement for HitShape
...
Now that Health no longer provides a HitShape, actors with Health need at
least one HitShape trait.
2017-06-04 00:07:08 +02:00
reaperrr
43b55ae333
Move Shape from Health to new HitShape trait
...
Renamed Shape to Type
2017-06-04 00:07:08 +02:00
Taryn Hill
43317e0f5d
Update copyright notice year to 2017
2016-12-31 23:46:13 -06:00
Matthias Mailänder
5b61206ac6
Merge pull request #11513 from GraionDilach/idamage
...
Remove passing the warheads from DamageWarhead to AttackInfo.
2016-07-16 14:26:43 +02:00
Oliver Brakmann
417e9ca71f
Add a single-argument constructor to HealthInit
...
...which is a requirement for an ActorInit to be usable with the Lua API's Actor.Create() method.
2016-07-14 19:45:03 +02:00
Zimmermann Gyula
cf8fff2b99
Remove passing the warheads from DamageWarhead to AttackInfo.
...
Added a Damage class to pass damage value and damage(types) instead.
This removes a great amount of overhead and longterm opens possibilities to have damagetypes without warheads.
2016-07-12 10:09:49 +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
RoosterDragon
8e89a6a696
Simplify names, remove unused usings, remove redundant casts.
2016-01-17 21:35:36 +00:00
Huw Pascoe
a8299221db
Integrated HitShapes
...
Integrated hit shapes with field loader and warhead calculations.
2015-12-28 23:25:35 +00:00
abcdefg30
6cd8649156
Small code style fixes
2015-11-18 21:16:58 +01:00
Huw Pascoe
c95fc793e4
Moved Health trait to OpenRA.Mods.Common
...
In preparation for custom hitboxes.
2015-10-12 01:56:00 +01:00