unhardcode and self-document the notification
This commit is contained in:
@@ -24,6 +24,12 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
|
|
||||||
[PaletteReference] public readonly string IndicatorPalette = "chrome";
|
[PaletteReference] public readonly string IndicatorPalette = "chrome";
|
||||||
|
|
||||||
|
public readonly string PowerupSound = null;
|
||||||
|
public readonly string PowerdownSound = null;
|
||||||
|
|
||||||
|
public readonly string PowerupSpeech = null;
|
||||||
|
public readonly string PowerdownSpeech = null;
|
||||||
|
|
||||||
public override object Create(ActorInitializer init) { return new CanPowerDown(init.Self, this); }
|
public override object Create(ActorInitializer init) { return new CanPowerDown(init.Self, this); }
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -45,7 +51,19 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
if (!IsTraitDisabled && order.OrderString == "PowerDown")
|
if (!IsTraitDisabled && order.OrderString == "PowerDown")
|
||||||
{
|
{
|
||||||
disabled = !disabled;
|
disabled = !disabled;
|
||||||
Game.Sound.PlayNotification(self.World.Map.Rules, self.Owner, "Sounds", disabled ? "EnablePower" : "DisablePower", self.Owner.Faction.InternalName);
|
|
||||||
|
if (Info.PowerupSound != null && disabled)
|
||||||
|
Game.Sound.PlayNotification(self.World.Map.Rules, self.Owner, "Sounds", Info.PowerupSound, self.Owner.Faction.InternalName);
|
||||||
|
|
||||||
|
if (Info.PowerdownSound != null && !disabled)
|
||||||
|
Game.Sound.PlayNotification(self.World.Map.Rules, self.Owner, "Sounds", Info.PowerdownSound, self.Owner.Faction.InternalName);
|
||||||
|
|
||||||
|
if (Info.PowerupSpeech != null && disabled)
|
||||||
|
Game.Sound.PlayNotification(self.World.Map.Rules, self.Owner, "Speech", Info.PowerupSpeech, self.Owner.Faction.InternalName);
|
||||||
|
|
||||||
|
if (Info.PowerdownSpeech != null && !disabled)
|
||||||
|
Game.Sound.PlayNotification(self.World.Map.Rules, self.Owner, "Speech", Info.PowerdownSpeech, self.Owner.Faction.InternalName);
|
||||||
|
|
||||||
power.UpdateActor(self);
|
power.UpdateActor(self);
|
||||||
|
|
||||||
if (disabled)
|
if (disabled)
|
||||||
@@ -68,7 +86,13 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
if (!disabled || !Info.CancelWhenDisabled)
|
if (!disabled || !Info.CancelWhenDisabled)
|
||||||
return;
|
return;
|
||||||
disabled = false;
|
disabled = false;
|
||||||
Game.Sound.PlayNotification(self.World.Map.Rules, self.Owner, "Sounds", "EnablePower", self.Owner.Faction.InternalName);
|
|
||||||
|
if (Info.PowerupSound != null)
|
||||||
|
Game.Sound.PlayNotification(self.World.Map.Rules, self.Owner, "Sound", Info.PowerupSound, self.Owner.Faction.InternalName);
|
||||||
|
|
||||||
|
if (Info.PowerupSpeech != null)
|
||||||
|
Game.Sound.PlayNotification(self.World.Map.Rules, self.Owner, "Speech", Info.PowerupSpeech, self.Owner.Faction.InternalName);
|
||||||
|
|
||||||
power.UpdateActor(self);
|
power.UpdateActor(self);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -460,6 +460,8 @@ HQ:
|
|||||||
Bounds: 48,36,0,12
|
Bounds: 48,36,0,12
|
||||||
RequiresPower:
|
RequiresPower:
|
||||||
CanPowerDown:
|
CanPowerDown:
|
||||||
|
PowerupSound: EnablePower
|
||||||
|
PowerdownSound: DisablePower
|
||||||
DisabledOverlay:
|
DisabledOverlay:
|
||||||
WithSpriteBody:
|
WithSpriteBody:
|
||||||
PauseAnimationWhenDisabled: true
|
PauseAnimationWhenDisabled: true
|
||||||
@@ -547,6 +549,8 @@ EYE:
|
|||||||
Bounds: 48,36,0,12
|
Bounds: 48,36,0,12
|
||||||
RequiresPower:
|
RequiresPower:
|
||||||
CanPowerDown:
|
CanPowerDown:
|
||||||
|
PowerupSound: EnablePower
|
||||||
|
PowerdownSound: DisablePower
|
||||||
DisabledOverlay:
|
DisabledOverlay:
|
||||||
WithSpriteBody:
|
WithSpriteBody:
|
||||||
PauseAnimationWhenDisabled: true
|
PauseAnimationWhenDisabled: true
|
||||||
@@ -598,6 +602,8 @@ TMPL:
|
|||||||
Bounds: 72,48,0,16
|
Bounds: 72,48,0,16
|
||||||
RequiresPower:
|
RequiresPower:
|
||||||
CanPowerDown:
|
CanPowerDown:
|
||||||
|
PowerupSound: EnablePower
|
||||||
|
PowerdownSound: DisablePower
|
||||||
DisabledOverlay:
|
DisabledOverlay:
|
||||||
Health:
|
Health:
|
||||||
HP: 2000
|
HP: 2000
|
||||||
|
|||||||
@@ -444,6 +444,8 @@ outpost:
|
|||||||
Inherits: ^Building
|
Inherits: ^Building
|
||||||
RequiresPower:
|
RequiresPower:
|
||||||
CanPowerDown:
|
CanPowerDown:
|
||||||
|
PowerupSound: EnablePower
|
||||||
|
PowerdownSound: DisablePower
|
||||||
DisabledOverlay:
|
DisabledOverlay:
|
||||||
Buildable:
|
Buildable:
|
||||||
Prerequisites: construction_yard, barracks, ~techlevel.medium
|
Prerequisites: construction_yard, barracks, ~techlevel.medium
|
||||||
@@ -528,6 +530,8 @@ starport:
|
|||||||
PrimaryBuilding:
|
PrimaryBuilding:
|
||||||
RequiresPower:
|
RequiresPower:
|
||||||
CanPowerDown:
|
CanPowerDown:
|
||||||
|
PowerupSound: EnablePower
|
||||||
|
PowerdownSound: DisablePower
|
||||||
DisabledOverlay:
|
DisabledOverlay:
|
||||||
ProvidesPrerequisite@atreides:
|
ProvidesPrerequisite@atreides:
|
||||||
Prerequisite: starport.atreides
|
Prerequisite: starport.atreides
|
||||||
@@ -672,6 +676,8 @@ large_gun_turret:
|
|||||||
InitialFacing: 128
|
InitialFacing: 128
|
||||||
RequiresPower:
|
RequiresPower:
|
||||||
CanPowerDown:
|
CanPowerDown:
|
||||||
|
PowerupSound: EnablePower
|
||||||
|
PowerdownSound: DisablePower
|
||||||
DisabledOverlay:
|
DisabledOverlay:
|
||||||
Power:
|
Power:
|
||||||
Amount: -60
|
Amount: -60
|
||||||
@@ -923,6 +929,8 @@ palace:
|
|||||||
Production:
|
Production:
|
||||||
Produces: Palace
|
Produces: Palace
|
||||||
CanPowerDown:
|
CanPowerDown:
|
||||||
|
PowerupSound: EnablePower
|
||||||
|
PowerdownSound: DisablePower
|
||||||
DisabledOverlay:
|
DisabledOverlay:
|
||||||
RequiresPower:
|
RequiresPower:
|
||||||
SupportPowerChargeBar:
|
SupportPowerChargeBar:
|
||||||
|
|||||||
@@ -40,6 +40,8 @@ MSLO:
|
|||||||
CameraActor: camera
|
CameraActor: camera
|
||||||
FlashType: Nuke
|
FlashType: Nuke
|
||||||
CanPowerDown:
|
CanPowerDown:
|
||||||
|
PowerupSound: EnablePower
|
||||||
|
PowerdownSound: DisablePower
|
||||||
RequiresPower:
|
RequiresPower:
|
||||||
DisabledOverlay:
|
DisabledOverlay:
|
||||||
SupportPowerChargeBar:
|
SupportPowerChargeBar:
|
||||||
@@ -274,6 +276,8 @@ IRON:
|
|||||||
Dimensions: 2,1
|
Dimensions: 2,1
|
||||||
RequiresPower:
|
RequiresPower:
|
||||||
CanPowerDown:
|
CanPowerDown:
|
||||||
|
PowerupSound: EnablePower
|
||||||
|
PowerdownSound: DisablePower
|
||||||
DisabledOverlay:
|
DisabledOverlay:
|
||||||
Selectable:
|
Selectable:
|
||||||
Bounds: 48,28,0,2
|
Bounds: 48,28,0,2
|
||||||
@@ -322,6 +326,8 @@ PDOX:
|
|||||||
Dimensions: 2,2
|
Dimensions: 2,2
|
||||||
RequiresPower:
|
RequiresPower:
|
||||||
CanPowerDown:
|
CanPowerDown:
|
||||||
|
PowerupSound: EnablePower
|
||||||
|
PowerdownSound: DisablePower
|
||||||
DisabledOverlay:
|
DisabledOverlay:
|
||||||
Health:
|
Health:
|
||||||
HP: 1000
|
HP: 1000
|
||||||
@@ -394,6 +400,8 @@ TSLA:
|
|||||||
SelectionDecorations:
|
SelectionDecorations:
|
||||||
VisualBounds: 24,36,0,4
|
VisualBounds: 24,36,0,4
|
||||||
CanPowerDown:
|
CanPowerDown:
|
||||||
|
PowerupSound: EnablePower
|
||||||
|
PowerdownSound: DisablePower
|
||||||
DisabledOverlay:
|
DisabledOverlay:
|
||||||
Health:
|
Health:
|
||||||
HP: 400
|
HP: 400
|
||||||
@@ -439,6 +447,8 @@ AGUN:
|
|||||||
VisualBounds: 24,36,0,12
|
VisualBounds: 24,36,0,12
|
||||||
RequiresPower:
|
RequiresPower:
|
||||||
CanPowerDown:
|
CanPowerDown:
|
||||||
|
PowerupSound: EnablePower
|
||||||
|
PowerdownSound: DisablePower
|
||||||
DisabledOverlay:
|
DisabledOverlay:
|
||||||
Health:
|
Health:
|
||||||
HP: 400
|
HP: 400
|
||||||
@@ -486,6 +496,8 @@ DOME:
|
|||||||
TargetTypes: Ground, Structure, C4, DetonateAttack, SpyInfiltrate
|
TargetTypes: Ground, Structure, C4, DetonateAttack, SpyInfiltrate
|
||||||
RequiresPower:
|
RequiresPower:
|
||||||
CanPowerDown:
|
CanPowerDown:
|
||||||
|
PowerupSound: EnablePower
|
||||||
|
PowerdownSound: DisablePower
|
||||||
DisabledOverlay:
|
DisabledOverlay:
|
||||||
Health:
|
Health:
|
||||||
HP: 1000
|
HP: 1000
|
||||||
|
|||||||
Reference in New Issue
Block a user