Commit Graph

3144 Commits

Author SHA1 Message Date
reaperrr
faf9f7cede Change Explodes.Weapon default to null
FieldLoader.Require makes the default pointless, so it makes more sense to change it to null.
2017-07-02 16:03:40 -05:00
reaperrr
a6b9bab033 Make Explodes conditional 2017-07-02 16:03:40 -05:00
Jean-Rémy Buchs
2e4cd8d820 Make SpawnActorOnDeath conditional 2017-07-02 10:00:08 -05:00
reaperrr
9e138178ad WithAttackAnimation style fix
Looks better this way.
2017-07-01 12:33:51 +01:00
reaperrr
9c2e3aaa05 Make WithMoveAnimation conditional and modify only a single assigned sprite body
The latter to match what we do on WithAttackAnimation already.
2017-07-01 12:33:51 +01:00
Paul Chote
fdafbd9f15 Remove hardcoded references to FacingInit and TurretFacingInit. 2017-07-01 10:35:22 +01:00
Paul Chote
2a2bd676a3 Remove hardcoded references to HideBibPreviewInit. 2017-07-01 10:35:22 +01:00
rob-v
3e7bf1880f Fix Map editor total ore money 2017-06-27 22:05:40 +01:00
rob-v
7772ebedf4 Check for Carryall, RevealOnFire FrozenActor.Actor is null 2017-06-24 11:42:50 +01:00
rob-v
78bf530a4e Check for EnterTunnel FrozenActor.Actor is null 2017-06-24 11:42:50 +01:00
reaperrr
0a1083e554 Merge the Valid(...)Weapons methods 2017-06-24 11:24:17 +01:00
reaperrr
33e8bf9928 Adapt Attack logic to Weapon.TargetActorCenter 2017-06-24 11:24:17 +01:00
reaperrr
edffaa4987 Introduce Weapon.TargetActorCenter and adapt projectiles
This also fixes issues with attackers that don't have their own Attack
trait.
2017-06-24 11:24:17 +01:00
reaperrr
8e9f20cf4b Cache traits implementing INotifyAttack 2017-06-22 04:13:47 -05:00
reaperrr
779218f381 Cache traits implementing modifiers 2017-06-22 04:13:47 -05:00
reaperrr
243ed3d76a Cache traits implementing INotifyBurstComplete 2017-06-22 04:13:47 -05:00
Forcecore
100abe3246 Requested changes applied
* private this.info --> public Info for GCOnDeploy
* Parameter change for (un)deploy activities
2017-06-20 23:42:14 -05:00
Forcecore
a7cedc54ff Deploy activities for mods and future AI scripting 2017-06-20 23:42:14 -05:00
Paul Chote
4040863707 Fix queued move activities. 2017-06-18 20:55:50 +02:00
Forcecore
a3c9d72cfd Unbreak queued order 2017-06-18 12:03:29 +01:00
Forcecore
07a2ee5eab Engineer repair activity can be queued 2017-06-18 12:03:29 +01:00
Paul Chote
4b4172f757 Make the Enter activity use the closest target position. 2017-06-17 21:18:28 +02:00
Paul Chote
995a3da43a Rename Enter.targetCenter to repathWhileMoving. 2017-06-17 21:18:28 +02:00
Forcecore
728162e688 GCOnDeploy's ValidTerrain() takes location parameter
Fixes ##13394.

Possible use: AI's future deploy planning when the actor isn't actually
there yet. Also used in my mod for Slave Miner's deploy planning
2017-06-17 19:00:07 +02:00
reaperrr
da7433a95f Add plumbing for targeting of target center instead of closest targetable position
Note: Projectiles that can track their target need minor additional changes, but for InstantHit (which already implemented support for this) and unguided projectiles (Bullet, GravityBomb) this commit is already sufficient.
2017-06-15 01:32:37 +02:00
Paul Chote
6ca0208694 Rename VoxelPreview to ModelPreview. 2017-06-14 18:56:06 +02:00
Paul Chote
736e70df78 Rename VoxelRenderable to ModelRenderable. 2017-06-14 18:56:06 +02:00
Paul Chote
34810756c2 Move Voxel code to Mods.Cnc. 2017-06-14 18:56:06 +02:00
Paul Chote
4f42778d26 Rename VoxelAnimation to ModelAnimation. 2017-06-14 18:56:06 +02:00
reaperrr
d52313ab18 Rename WithAttackAnimation.BodyName to just .Body
Shorter and more consistent with Armament.Turret, WithTurretedAttackAnimation.Turret, WithSpriteBarrel.Armament etc.
2017-06-12 19:01:10 -05:00
reaperrr
fef388834e Throw yaml exception if WithAttackAnimation has no assigned sprite body
...or too many assigned bodies.

Also, further simplify WithAttackAnimation code.
2017-06-12 19:01:10 -05:00
reaperrr
5fb468922e Make WithAttackAnimation conditional 2017-06-12 19:01:10 -05:00
reaperrr
2e70b6931b Refactor WithAttackAnimation
- made trait compatible with actors that have more than one sprite body or enable/disable sprite bodies via conditions
- added check for running attack anim and prevent aim/reload sequences from overriding it
- added caching of whether trait has either aim or reload sequence, to avoid some string.IsNullOrEmpty look-ups every tick
2017-06-12 19:01:10 -05:00
Paul Chote
716343732f Add AutoTargetPriority trait for smarter AutoTarget logic. 2017-06-11 17:14:21 -05:00
Paul Chote
e8d6d63707 Add IIssueDeployOrder. 2017-06-06 08:53:54 -06:00
reaperrr
6a212eea53 Make attacking actors/turrets face the targeted position 2017-06-05 14:22:47 +02:00
reaperrr
7acc6dacbc Fix armaments/projectiles to aim at closest Target.Positions
Instead of CenterPosition.
TargetablePositions were already used for targeting/attack decisions, but not armaments/projectiles.
2017-06-05 14:22:47 +02:00
Markus Hartung
2a0b3b39ea INotifyCreated.Created now calls base properly 2017-06-04 17:11:44 +02:00
Markus Hartung
f7ddb969c6 Change so Attack* calls Created on base class 2017-06-04 17:11:44 +02:00
abcdefg30
40e8c5136d Fix the close enough check in Repair.cs 2017-06-04 15:35:40 +02:00
reaperrr
82758a8bef Add TargetableOffsets to HitShape
And remove ITargetablePositions from Building.
Also, added UseFootprintOffsets to replicate the old Building behavior for easier setup of TargetablePositions for buildings.
2017-06-04 00:07:08 +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
atlimit8
afa5a7772d Split ConditionByStance in AutoTarget 2017-05-29 20:41:10 +01:00
atlimit8
cadfbe8a29 Grant condition by unit stance 2017-05-29 20:41:10 +01:00
reaperrr
8d69d26542 Add debug overlay for custom TargetPositions 2017-05-29 07:41:20 -05:00
Paul Chote
45b13dabfb Explicitly implement interfaces in AttackBase. 2017-05-29 06:27:19 -05:00
Paul Chote
34844e87a3 Replace Lazy trait lookups with INotifyCreated. 2017-05-29 06:27:19 -05:00
evgeniysergeev
c06df1ed21 make IsCloseEnoughToBase function virtual 2017-05-29 11:50:56 +02:00
abcdefg30
aecfff905d Throw a more detailed error message when creating invalid frozen actors 2017-05-28 14:02:18 +02:00