Commit Graph

2512 Commits

Author SHA1 Message Date
Paul Chote
6528edecb1 Fix order queuing on Repairable. 2018-05-30 18:06:59 +02:00
Paul Chote
e5701ecb20 Remove order.TargetActor from Repairable. 2018-05-30 18:06:59 +02:00
Paul Chote
2e2f982e41 Fix order queuing on Passenger. 2018-05-30 18:06:59 +02:00
Paul Chote
c78ee66d92 Remove order.TargetActor from Passenger. 2018-05-30 18:06:59 +02:00
Paul Chote
fde531b808 Fix order queuing on RepairableNear. 2018-05-30 18:06:59 +02:00
Paul Chote
148b5cad2c Remove order.TargetActor from RepairableNear. 2018-05-30 18:06:59 +02:00
Paul Chote
ae056e969f Remove order.TargetActor from Harvester. 2018-05-30 18:06:59 +02:00
Paul Chote
883834f1c3 Remove order.TargetActor from Aircraft. 2018-05-30 18:06:59 +02:00
Paul Chote
4a7bb39fbe Remove order.TargetActor from Infiltrates, EngineerRepair, ExternalCaptures.
These cases already checked order.Target.Type so these are simple swaps.
2018-05-30 18:06:59 +02:00
Mustafa Alperen Seki
367a7f617c Added OwnerLostAction
Allows customisation of what will happen to an actor when its owner
loses.
2018-05-28 10:42:45 +01:00
reaperrr
9e95cd5331 Considerably raise Locomotor WaitAverage and WaitSpread
This considerably reduces frequency of repathing attempts without too much of an impact of in-game repathing speed, since most of the time the blocking actor doesn't move out of the way that fast anyway.
2018-05-22 13:10:43 +02:00
lawando
32c7869718 Add stance filter to TooltipDescription; Add YAML descriptions. 2018-05-20 20:04:59 +02:00
Zimmermann Gyula
c4b5ec5241 Shift temporary owner-change logic from D2k to Common. 2018-05-20 19:44:35 +02:00
teinarss
dcc11c7a41 Added HpPerStep to Repairable for enable repair speed to be changed per unit. 2018-05-14 19:56:35 +02:00
Michael Silber
b199f45f04 Account for custom terrain layers in GrantConditionOnTerrain. 2018-05-10 20:57:01 +02:00
Paul Chote
579cc090a7 Suppress 0-cash ticks on CashTricker and GivesCashOnCapture. 2018-05-07 19:47:41 +02:00
Paul Chote
0eeb38a310 Show negative bounty cash ticks. 2018-05-07 19:47:41 +02:00
Paul Chote
c65d6d1484 Suppress negative cash crate action if the collector has no cash. 2018-05-07 19:47:41 +02:00
GSonderling
bf4dbd9b80 Added checks to make sure cash can't be < 0. 2018-05-07 19:47:41 +02:00
Paul Chote
b8fd4abc4a Fix NRE in Guard when the target actor is dead. 2018-05-07 19:41:13 +02:00
reaperrr
ff8f147955 Some Mobile and Harvester clean-ups
Made Harvester interface implementations explicit.
Made Mobile internal VisualMove activity private.
2018-05-07 19:40:07 +02:00
reaperrr
545ca5da61 Made some interface implementations in Mobile explicit 2018-05-07 19:40:07 +02:00
reaperrr
98289d8573 Reorganized Mobile.cs to be more readable and structured
Implicit interface members, explicit interface members, local method etc. were happily scattered all over the place.
We can't explicitly implement most IMove/IPositionable interface members without some large rewrite,
so we should at least organize the file in a way that makes it less of a pain to tell which parts belong to which interface.
2018-05-07 19:40:07 +02:00
reaperrr
030902f691 Style fixes to some code comments in Mobile 2018-05-07 19:40:07 +02:00
Mustafa Alperen Seki
6c5c4a129f Add CargoCondition(s) to Passenger 2018-05-06 20:09:39 +01:00
abcdefg30
7ae6326f2a Fix Repairable not accounting for multiple ICallForTransport traits 2018-05-06 16:31:21 +01:00
abcdefg30
917fd2103f Use ShakeOnDeath instead of the hardcoded shaking for bridges 2018-05-06 04:51:03 +02:00
abcdefg30
e7b060c1be Fix ShakeOnDeath using intensity as duration 2018-05-06 04:51:03 +02:00
reaperrr
3c34330925 Skip check for ITemporaryBlocker entirely if rules don't contain any temporary blockers
This benefits all mods without temporary blockers like gates or energy walls.
2018-05-04 19:40:18 +02:00
reaperrr
e7fb32b09c Replace DomainIndex passability hack with Locomotor boolean 2018-05-03 10:49:21 +02:00
reaperrr
5364515004 Don't pass movement class via IsPassable directly
Let IsPassable get that info from the locomotor instead.
2018-05-03 10:49:21 +02:00
reaperrr
a52e83ca49 Add Locomotor lint check 2018-05-03 10:49:21 +02:00
reaperrr
81343926b6 Split Locomotor trait from Mobile
Add GrantConditionOn*Layer traits

This allows to
- drop some booleans from Locomotor
- drop a good part of the subterranean- and jumpjet-specific code/hacks from Mobile
- grant more than 1 condition per layer type (via multiple traits)
- easily add more traits of this kind for other layers
2018-05-03 10:49:21 +02:00
reaperrr
83f100618b Make INotifyAppliedDamage require explicit implementation 2018-04-29 11:59:49 +01:00
reaperrr
3a82b13093 Make INotifyKilled require explicit implementation 2018-04-29 11:59:49 +01:00
reaperrr
7ca9aa5e0b Make INotifyDamage require explicit implementation 2018-04-29 11:59:49 +01:00
reaperrr
ccd070afd6 Make IRenderModifier require explicit implementation 2018-04-29 11:59:49 +01:00
reaperrr
cc4c5a5492 Make IVoiced require explicit implementation 2018-04-29 11:59:49 +01:00
Paul Chote
da29250711 Move PlayerResources to Mods.Common. 2018-04-28 20:42:10 +02:00
Paul Chote
160ade1060 Add CaptureTypes to GiveCashOnCapture. 2018-04-26 08:27:35 +02:00
Paul Chote
0654f18f22 Break out of cancellation loop when there is nothing left to cancel. 2018-04-22 18:01:57 +02:00
Paul Chote
f2cf51d1a4 Play appropriate audio notifications when build/production limit is reached. 2018-04-22 18:01:57 +02:00
Paul Chote
da10e94b41 Add per-item and total queue length limits to ProductionQueue.
Implement 999 per-actor limit.
2018-04-22 18:01:57 +02:00
reaperrr
18ed04eab5 Only use largest blocker instead of largest actor for projectile blocker overscan
Before this, we unconditionally used the largest OuterRadius of all actors inside a mod for overscanning of blockable projectiles.
However, in many mods the only blockable actors are 1-cell walls, and even if there are gates like in TS, they usually aren't the largest actors in terms of hit-shape.

So this measure should save a bit of performance by reducing the overscan radius of blockable projectiles, especially in mods where walls are the only blocking actors.
2018-04-22 10:55:23 +02:00
Mustafa Alperen Seki
dc71a71a09 Change the way NukePower>SkipAscent works 2018-04-12 08:19:18 +02:00
Andre Mohren
5b7d43f1e0 Virtual ProductionQueue.AllQueued 2018-04-12 08:08:45 +02:00
JordanBergin
0226c06b93 No longer check Carryable IsInWorld when Carryall is killed. Also the Carryable's position is updated to Carryall's position when the Carryall is killed. 2018-04-10 12:52:42 +02:00
Chris Forbes
770f14fa2a Use IPositionable.CanExistInCell in Bridge/GroundLevelBridge
We don't care whether there's empty space for the actor now -- we care whether
the terrain the actor is ALREADY standing on remains suitable after the
bridge state change.
2018-04-10 01:01:53 +02:00
Chris Forbes
dddd057e3d Add IPositionable.CanExistInCell
This is like CanEnterCell, but doesn't take into account conflicting
actors, etc.
2018-04-10 01:01:53 +02:00
Paul Chote
4f0aa89c01 Remove TileSet.Palette and PaletteFromCurrentTileset. 2018-04-08 21:14:29 +02:00