Merge pull request #12796 from pchote/external-conditions-rework

Add support for per-source and total external condition caps.
This commit is contained in:
reaperrr
2017-02-19 15:44:53 +01:00
committed by GitHub
20 changed files with 266 additions and 135 deletions

View File

@@ -123,8 +123,8 @@
CloakSound: trans1.aud
UncloakSound: trans1.aud
RequiresCondition: cloak
ExternalConditions@CLOAK:
Conditions: cloak
ExternalCondition@CLOAK:
Condition: cloak
^Vehicle:
Inherits@1: ^ExistsInWorld

View File

@@ -34,20 +34,20 @@ HACKE6:
CaptureTypes: building
Targetable:
RequiresCondition: !jail
ExternalConditions@JAIL:
Conditions: jail
Targetable@PRISONER:
TargetTypes: Prisoner
RenderSprites:
Image: E6
ExternalCondition@JAIL:
Condition: jail
MEDI:
Targetable:
RequiresCondition: !jail
ExternalConditions@JAIL:
Conditions: jail
Targetable@PRISONER:
TargetTypes: Prisoner
ExternalCondition@JAIL:
Condition: jail
PRISON:
HiddenUnderShroud:

View File

@@ -35,20 +35,20 @@ HACKE6:
WithInfantryBody:
Targetable:
RequiresCondition: !jail
ExternalConditions@JAIL:
Conditions: jail
Targetable@PRISONER:
TargetTypes: Prisoner
RenderSprites:
Image: E6
ExternalCondition@JAIL:
Condition: jail
MEDI:
Targetable:
RequiresCondition: !jail
ExternalConditions@JAIL:
Conditions: jail
Targetable@PRISONER:
TargetTypes: Prisoner
ExternalCondition@JAIL:
Condition: jail
PRISON:
HiddenUnderShroud:

View File

@@ -22,8 +22,8 @@ World:
DamageMultiplier@UNKILLABLE:
RequiresCondition: unkillable
Modifier: 0
ExternalConditions:
Conditions: unkillable
ExternalCondition@UNKILLABLE:
Condition: unkillable
^Tank:
GivesBounty:
@@ -33,8 +33,8 @@ World:
DamageMultiplier@UNKILLABLE:
RequiresCondition: unkillable
Modifier: 0
ExternalConditions:
Conditions: unkillable
ExternalCondition@UNKILLABLE:
Condition: unkillable
^Infantry:
GivesBounty:
@@ -50,8 +50,8 @@ World:
DamageMultiplier@UNKILLABLE:
RequiresCondition: unkillable
Modifier: 0
ExternalConditions:
Conditions: unkillable
ExternalCondition@UNKILLABLE:
Condition: unkillable
^Ship:
GivesBounty:
@@ -61,8 +61,8 @@ World:
DamageMultiplier@UNKILLABLE:
RequiresCondition: unkillable
Modifier: 0
ExternalConditions:
Conditions: unkillable
ExternalCondition@UNKILLABLE:
Condition: unkillable
^Plane:
GivesBounty:
@@ -70,8 +70,8 @@ World:
DamageMultiplier@UNKILLABLE:
RequiresCondition: unkillable
Modifier: 0
ExternalConditions:
Conditions: unkillable
ExternalCondition@UNKILLABLE:
Condition: unkillable
^Building:
GivesBounty:
@@ -79,8 +79,8 @@ World:
DamageMultiplier@UNKILLABLE:
RequiresCondition: unkillable
Modifier: 0
ExternalConditions:
Conditions: unkillable
ExternalCondition@UNKILLABLE:
Condition: unkillable
OILB:
CashTrickler:

View File

@@ -59,8 +59,14 @@ V05:
DOG:
# HACK: Disable experience without killing the linter
-GainsExperience:
ExternalConditions@EXPERIENCE:
Conditions: rank-veteran-1, rank-veteran-2, rank-veteran-3, rank-elite
ExternalCondition@RANK-VETERAN-1:
Condition: rank-veteran-1
ExternalCondition@RANK-VETERAN-2:
Condition: rank-veteran-2
ExternalCondition@RANK-VETERAN-3:
Condition: rank-veteran-3
ExternalCondition@RANK-ELITE:
Condition: rank-elite
SPY:
Mobile:

View File

@@ -123,8 +123,8 @@
Modifier: 0
TimedConditionBar:
Condition: invulnerability
ExternalConditions@INVULNERABILITY:
Conditions: invulnerability
ExternalCondition@INVULNERABILITY:
Condition: invulnerability
^Vehicle:
Inherits@1: ^ExistsInWorld

View File

@@ -539,8 +539,6 @@ DOME:
Bib:
ProvidesRadar:
RequiresCondition: !jammed && !disabled
ExternalConditions@JAMMED:
Conditions: jammed
InfiltrateForExploration:
DetectCloaked:
Range: 10c0
@@ -550,6 +548,8 @@ DOME:
ProvidesPrerequisite@buildingname:
GrantConditionOnDisabled@IDISABLE:
Condition: disabled
ExternalCondition@JAMMED:
Condition: jammed
PBOX:
Inherits: ^Defense

View File

@@ -1448,17 +1448,17 @@ Rules:
DamageMultiplier@UNKILLABLE:
RequiresCondition: unkillable
Modifier: 0
ExternalConditions:
Conditions: unkillable
ExternalCondition@UNKILLABLE:
Condition: unkillable
NAOBEL:
DamageMultiplier@UNKILLABLE:
RequiresCondition: unkillable
Modifier: 0
ExternalConditions:
Conditions: unkillable
ExternalCondition@UNKILLABLE:
Condition: unkillable
NALASR:
DamageMultiplier@UNKILLABLE:
RequiresCondition: unkillable
Modifier: 0
ExternalConditions:
Conditions: unkillable
ExternalCondition@UNKILLABLE:
Condition: unkillable

View File

@@ -1296,7 +1296,8 @@ GALITE:
SelectionDecorations:
VisualBounds: 25, 35, 0, -12
-Cloak@EXTERNALCLOAK:
-ExternalConditions@EXTERNALCLOAK:
-ExternalCondition@CLOAKGENERATOR:
-ExternalCondition@CRATE-CLOAK:
TSTLAMP:
Inherits: GALITE

View File

@@ -75,8 +75,12 @@
SpeedMultiplier@CRATES:
RequiresCondition: crate-speed
Modifier: 170
ExternalConditions@CRATES:
Conditions: crate-firepower, crate-damage, crate-speed
ExternalCondition@CRATE-FIREPOWER:
Condition: crate-firepower
ExternalCondition@CRATE-DAMAGE:
Condition: crate-damage
ExternalCondition@CRATE-SPEED:
Condition: crate-speed
^EmpDisable:
WithColoredOverlay@EMPDISABLE:
@@ -96,8 +100,8 @@
PowerMultiplier@EMPDISABLE:
RequiresCondition: empdisable
Modifier: 0
ExternalConditions@EMPDISABLE:
Conditions: empdisable
ExternalCondition@EMPDISABLE:
Condition: empdisable
^Cloakable:
Cloak@EXTERNALCLOAK:
@@ -108,8 +112,10 @@
CloakSound: cloak5.aud
UncloakSound: cloak5.aud
UncloakOn: Attack, Unload, Infiltrate, Demolish, Damage
ExternalConditions@EXTERNALCLOAK:
Conditions: cloakgenerator, crate-cloak
ExternalCondition@CLOAKGENERATOR:
Condition: cloakgenerator
ExternalCondition@CRATE-CLOAK:
Condition: crate-cloak
^BasicBuilding:
Inherits@1: ^ExistsInWorld
@@ -206,7 +212,8 @@
RenderSprites:
Palette: player
-Cloak@EXTERNALCLOAK:
-ExternalConditions@EXTERNALCLOAK:
-ExternalCondition@CLOAKGENERATOR:
-ExternalCondition@CRATE-CLOAK:
^CivBillboard:
Inherits: ^CivBuilding