Merge pull request #6613 from pchote/remove-mp-tooltips

Remove the MP tooltip row from campaign missions.
This commit is contained in:
obrakmann
2014-10-04 12:20:14 +02:00
23 changed files with 559 additions and 69 deletions

View File

@@ -32,7 +32,7 @@ namespace OpenRA.Traits
public IRenderable[] Renderables { private get; set; } public IRenderable[] Renderables { private get; set; }
public Player Owner; public Player Owner;
public string TooltipName; public ITooltipInfo TooltipInfo;
public Player TooltipOwner; public Player TooltipOwner;
public int HP; public int HP;

View File

@@ -26,6 +26,7 @@ namespace OpenRA.Traits
[Flags] [Flags]
public enum Stance public enum Stance
{ {
None = 0,
Enemy = 1, Enemy = 1,
Neutral = 2, Neutral = 2,
Ally = 4, Ally = 4,
@@ -126,10 +127,17 @@ namespace OpenRA.Traits
bool Disguised { get; } bool Disguised { get; }
Player Owner { get; } Player Owner { get; }
} }
public interface IToolTip public interface IToolTip
{ {
string Name(); ITooltipInfo TooltipInfo { get; }
Player Owner(); Player Owner { get; }
}
public interface ITooltipInfo
{
string TooltipForPlayerStance(Stance stance);
bool IsOwnerRowVisible { get; }
} }
public interface IDisable { bool Disabled { get; } } public interface IDisable { bool Disabled { get; } }

View File

@@ -114,7 +114,7 @@ namespace OpenRA.Widgets
} }
var frozen = world.ScreenMap.FrozenActorsAt(world.RenderPlayer, worldRenderer.Viewport.ViewToWorldPx(Viewport.LastMousePos)) var frozen = world.ScreenMap.FrozenActorsAt(world.RenderPlayer, worldRenderer.Viewport.ViewToWorldPx(Viewport.LastMousePos))
.Where(a => a.TooltipName != null && a.IsValid) .Where(a => a.TooltipInfo != null && a.IsValid)
.WithHighestSelectionPriority(); .WithHighestSelectionPriority();
if (frozen != null) if (frozen != null)

View File

@@ -36,19 +36,17 @@ namespace OpenRA.Mods.RA
disguise = self.Trait<Disguise>(); disguise = self.Trait<Disguise>();
} }
public string Name() public ITooltipInfo TooltipInfo
{ {
if (disguise.Disguised) get
{ {
if (self.Owner == self.World.LocalPlayer) return disguise.Disguised ? disguise.AsTooltipInfo : info;
return "{0} ({1})".F(info.Name, disguise.AsName);
return disguise.AsName;
} }
return info.Name;
} }
public Player Owner() public Player Owner
{
get
{ {
if (disguise.Disguised) if (disguise.Disguised)
{ {
@@ -57,17 +55,19 @@ namespace OpenRA.Mods.RA
return disguise.AsPlayer; return disguise.AsPlayer;
} }
return self.Owner; return self.Owner;
} }
} }
}
class DisguiseInfo : TraitInfo<Disguise> { } class DisguiseInfo : TraitInfo<Disguise> { }
class Disguise : IEffectiveOwner, IIssueOrder, IResolveOrder, IOrderVoice, IRadarColorModifier, INotifyAttack class Disguise : IEffectiveOwner, IIssueOrder, IResolveOrder, IOrderVoice, IRadarColorModifier, INotifyAttack
{ {
public Player AsPlayer; public Player AsPlayer { get; private set; }
public string AsSprite; public string AsSprite { get; private set; }
public string AsName; public ITooltipInfo AsTooltipInfo { get; private set; }
public bool Disguised { get { return AsPlayer != null; } } public bool Disguised { get { return AsPlayer != null; } }
public Player Owner { get { return AsPlayer; } } public Player Owner { get { return AsPlayer; } }
@@ -117,13 +117,13 @@ namespace OpenRA.Mods.RA
if (target != null) if (target != null)
{ {
var tooltip = target.TraitsImplementing<IToolTip>().FirstOrDefault(); var tooltip = target.TraitsImplementing<IToolTip>().FirstOrDefault();
AsName = tooltip.Name(); AsTooltipInfo = tooltip.TooltipInfo;
AsPlayer = tooltip.Owner(); AsPlayer = tooltip.Owner;
AsSprite = target.Trait<RenderSprites>().GetImage(target); AsSprite = target.Trait<RenderSprites>().GetImage(target);
} }
else else
{ {
AsName = null; AsTooltipInfo = null;
AsPlayer = null; AsPlayer = null;
AsSprite = null; AsSprite = null;
} }

View File

@@ -101,8 +101,8 @@ namespace OpenRA.Mods.RA
if (tooltip.Value != null) if (tooltip.Value != null)
{ {
actor.TooltipName = tooltip.Value.Name(); actor.TooltipInfo = tooltip.Value.TooltipInfo;
actor.TooltipOwner = tooltip.Value.Owner(); actor.TooltipOwner = tooltip.Value.Owner;
} }
} }
} }

View File

@@ -13,29 +13,58 @@ using OpenRA.Traits;
namespace OpenRA.Mods.RA namespace OpenRA.Mods.RA
{ {
[Desc("Shown in the build palette widget.")] [Desc("Shown in the build palette widget.")]
public class TooltipInfo : ITraitInfo public class TooltipInfo : ITraitInfo, ITooltipInfo
{ {
[Translate] public readonly string Description = ""; [Translate] public readonly string Description = "";
[Translate] public readonly string Name = ""; [Translate] public readonly string Name = "";
[Desc("An optional generic name (i.e. \"Soldier\" or \"Structure\")" +
"to be shown to chosen players.")]
[Translate] public readonly string GenericName = null;
[Desc("Prefix generic tooltip name with 'Enemy' or 'Allied'.")]
public readonly bool GenericStancePrefix = true;
[Desc("Player stances that the generic name should be shown to.")]
public readonly Stance GenericVisibility = Stance.None;
[Desc("Show the actor's owner and their faction flag")]
public readonly bool ShowOwnerRow = true;
[Desc("Sequence of the actor that contains the cameo.")] [Desc("Sequence of the actor that contains the cameo.")]
public readonly string Icon = "icon"; public readonly string Icon = "icon";
public virtual object Create(ActorInitializer init) { return new Tooltip(init.self, this); } public virtual object Create(ActorInitializer init) { return new Tooltip(init.self, this); }
public string TooltipForPlayerStance(Stance stance)
{
if (stance == Stance.None || !GenericVisibility.HasFlag(stance))
return Name;
if (GenericStancePrefix && stance == Stance.Ally)
return "Allied " + GenericName;
if (GenericStancePrefix && stance == Stance.Enemy)
return "Enemy " + GenericName;
return GenericName;
}
public bool IsOwnerRowVisible { get { return ShowOwnerRow; } }
} }
public class Tooltip : IToolTip public class Tooltip : IToolTip
{ {
Actor self; readonly Actor self;
TooltipInfo Info; readonly TooltipInfo info;
public string Name() { return Info.Name; } public ITooltipInfo TooltipInfo { get { return info; } }
public Player Owner() { return self.Owner; } public Player Owner { get { return self.Owner; } }
public Tooltip(Actor self, TooltipInfo info) public Tooltip(Actor self, TooltipInfo info)
{ {
this.self = self; this.self = self;
Info = info; this.info = info;
} }
} }
} }

View File

@@ -10,6 +10,7 @@
using System; using System;
using System.Drawing; using System.Drawing;
using OpenRA.Traits;
using OpenRA.Widgets; using OpenRA.Widgets;
namespace OpenRA.Mods.RA.Widgets.Logic namespace OpenRA.Mods.RA.Widgets.Logic
@@ -17,7 +18,7 @@ namespace OpenRA.Mods.RA.Widgets.Logic
public class WorldTooltipLogic public class WorldTooltipLogic
{ {
[ObjectCreator.UseCtor] [ObjectCreator.UseCtor]
public WorldTooltipLogic(Widget widget, TooltipContainerWidget tooltipContainer, ViewportControllerWidget viewport) public WorldTooltipLogic(Widget widget, World world, TooltipContainerWidget tooltipContainer, ViewportControllerWidget viewport)
{ {
widget.IsVisible = () => viewport.TooltipType != WorldTooltipType.None; widget.IsVisible = () => viewport.TooltipType != WorldTooltipType.None;
var label = widget.Get<LabelWidget>("LABEL"); var label = widget.Get<LabelWidget>("LABEL");
@@ -41,6 +42,8 @@ namespace OpenRA.Mods.RA.Widgets.Logic
if (viewport == null || viewport.TooltipType == WorldTooltipType.None) if (viewport == null || viewport.TooltipType == WorldTooltipType.None)
return; return;
showOwner = false;
Player o = null; Player o = null;
switch (viewport.TooltipType) switch (viewport.TooltipType)
{ {
@@ -48,14 +51,24 @@ namespace OpenRA.Mods.RA.Widgets.Logic
labelText = "Unexplored Terrain"; labelText = "Unexplored Terrain";
break; break;
case WorldTooltipType.Actor: case WorldTooltipType.Actor:
labelText = viewport.ActorTooltip.Name(); {
o = viewport.ActorTooltip.Owner(); o = viewport.ActorTooltip.Owner;
showOwner = !o.NonCombatant && viewport.ActorTooltip.TooltipInfo.IsOwnerRowVisible;
var stance = o == null || world.RenderPlayer == null? Stance.None : o.Stances[world.RenderPlayer];
labelText = viewport.ActorTooltip.TooltipInfo.TooltipForPlayerStance(stance);
break; break;
}
case WorldTooltipType.FrozenActor: case WorldTooltipType.FrozenActor:
labelText = viewport.FrozenActorTooltip.TooltipName; {
o = viewport.FrozenActorTooltip.TooltipOwner; o = viewport.FrozenActorTooltip.TooltipOwner;
showOwner = !o.NonCombatant && viewport.FrozenActorTooltip.TooltipInfo.IsOwnerRowVisible;
var stance = o == null || world.RenderPlayer == null? Stance.None : o.Stances[world.RenderPlayer];
labelText = viewport.FrozenActorTooltip.TooltipInfo.TooltipForPlayerStance(stance);
break; break;
} }
}
var textWidth = font.Measure(labelText).X; var textWidth = font.Measure(labelText).X;
if (textWidth != cachedWidth) if (textWidth != cachedWidth)
@@ -64,8 +77,6 @@ namespace OpenRA.Mods.RA.Widgets.Logic
widget.Bounds.Width = 2*label.Bounds.X + textWidth; widget.Bounds.Width = 2*label.Bounds.X + textWidth;
} }
showOwner = o != null && !o.NonCombatant;
if (showOwner) if (showOwner)
{ {
flagRace = o.Country.Race; flagRace = o.Country.Race;

View File

@@ -465,10 +465,48 @@ Rules:
-ConquestVictoryConditions: -ConquestVictoryConditions:
MissionObjectives: MissionObjectives:
EarlyGameOver: true EarlyGameOver: true
^Infantry:
MustBeDestroyed:
^Vehicle: ^Vehicle:
MustBeDestroyed: MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Tank:
MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Helicopter:
MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Infantry:
MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Plane:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Ship:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Building:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Wall:
Tooltip:
ShowOwnerRow: false
^Husk:
Tooltip:
GenericVisibility: Enemy, Ally, Neutral
GenericStancePrefix: false
ShowOwnerRow: false
HARV:
-MustBeDestroyed:
PROC: PROC:
Buildable: Buildable:
Prerequisites: ~disabled Prerequisites: ~disabled

View File

@@ -747,10 +747,48 @@ Rules:
-ConquestVictoryConditions: -ConquestVictoryConditions:
MissionObjectives: MissionObjectives:
EarlyGameOver: true EarlyGameOver: true
^Infantry:
MustBeDestroyed:
^Vehicle: ^Vehicle:
MustBeDestroyed: MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Tank:
MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Helicopter:
MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Infantry:
MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Plane:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Ship:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Building:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Wall:
Tooltip:
ShowOwnerRow: false
^Husk:
Tooltip:
GenericVisibility: Enemy, Ally, Neutral
GenericStancePrefix: false
ShowOwnerRow: false
HARV:
-MustBeDestroyed:
PROC: PROC:
Buildable: Buildable:
Prerequisites: ~disabled Prerequisites: ~disabled

View File

@@ -908,8 +908,48 @@ Rules:
-ConquestVictoryConditions: -ConquestVictoryConditions:
MissionObjectives: MissionObjectives:
EarlyGameOver: true EarlyGameOver: true
^Vehicle:
MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Tank:
MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Helicopter:
MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Infantry: ^Infantry:
MustBeDestroyed: MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Plane:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Ship:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Building:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Wall:
Tooltip:
ShowOwnerRow: false
^Husk:
Tooltip:
GenericVisibility: Enemy, Ally, Neutral
GenericStancePrefix: false
ShowOwnerRow: false
HARV:
-MustBeDestroyed:
WEAP: WEAP:
Buildable: Buildable:
Prerequisites: ~disabled Prerequisites: ~disabled

View File

@@ -553,12 +553,48 @@ Rules:
-ConquestVictoryConditions: -ConquestVictoryConditions:
MissionObjectives: MissionObjectives:
EarlyGameOver: true EarlyGameOver: true
^Infantry:
MustBeDestroyed:
^Vehicle: ^Vehicle:
MustBeDestroyed: MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Tank: ^Tank:
MustBeDestroyed: MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Helicopter:
MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Infantry:
MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Plane:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Ship:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Building:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Wall:
Tooltip:
ShowOwnerRow: false
^Husk:
Tooltip:
GenericVisibility: Enemy, Ally, Neutral
GenericStancePrefix: false
ShowOwnerRow: false
HARV:
-MustBeDestroyed:
CRATE: CRATE:
Crate: Crate:
Lifetime: 9999 Lifetime: 9999

View File

@@ -632,12 +632,48 @@ Rules:
-ConquestVictoryConditions: -ConquestVictoryConditions:
MissionObjectives: MissionObjectives:
EarlyGameOver: true EarlyGameOver: true
^Infantry:
MustBeDestroyed:
^Vehicle: ^Vehicle:
MustBeDestroyed: MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Tank: ^Tank:
MustBeDestroyed: MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Helicopter:
MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Infantry:
MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Plane:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Ship:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Building:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Wall:
Tooltip:
ShowOwnerRow: false
^Husk:
Tooltip:
GenericVisibility: Enemy, Ally, Neutral
GenericStancePrefix: false
ShowOwnerRow: false
HARV:
-MustBeDestroyed:
E3: E3:
AutoTarget: AutoTarget:
ScanRadius: 5 ScanRadius: 5

View File

@@ -899,12 +899,48 @@ Rules:
-ConquestVictoryConditions: -ConquestVictoryConditions:
MissionObjectives: MissionObjectives:
EarlyGameOver: true EarlyGameOver: true
^Infantry:
MustBeDestroyed:
^Vehicle: ^Vehicle:
MustBeDestroyed: MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Tank: ^Tank:
MustBeDestroyed: MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Helicopter:
MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Infantry:
MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Plane:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Ship:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Building:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Wall:
Tooltip:
ShowOwnerRow: false
^Husk:
Tooltip:
GenericVisibility: Enemy, Ally, Neutral
GenericStancePrefix: false
ShowOwnerRow: false
HARV:
-MustBeDestroyed:
^CivInfantry: ^CivInfantry:
Health: Health:
HP: 125 HP: 125

View File

@@ -323,11 +323,48 @@ Rules:
MustBeDestroyed: MustBeDestroyed:
^CivInfantry: ^CivInfantry:
MustBeDestroyed: MustBeDestroyed:
^Infantry:
MustBeDestroyed:
^Vehicle: ^Vehicle:
MustBeDestroyed: MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Tank:
MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Helicopter:
MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Infantry:
MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Plane:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Ship:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Building:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Wall:
Tooltip:
ShowOwnerRow: false
^Husk:
Tooltip:
GenericVisibility: Enemy, Ally, Neutral
GenericStancePrefix: false
ShowOwnerRow: false
HARV:
-MustBeDestroyed:
Sequences: Sequences:
VoxelSequences: VoxelSequences:

View File

@@ -537,10 +537,48 @@ Rules:
Scripts: nod03a.lua Scripts: nod03a.lua
ObjectivesPanel: ObjectivesPanel:
PanelName: MISSION_OBJECTIVES PanelName: MISSION_OBJECTIVES
^Infantry:
MustBeDestroyed:
^Vehicle: ^Vehicle:
MustBeDestroyed: MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Tank:
MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Helicopter:
MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Infantry:
MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Plane:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Ship:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Building:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Wall:
Tooltip:
ShowOwnerRow: false
^Husk:
Tooltip:
GenericVisibility: Enemy, Ally, Neutral
GenericStancePrefix: false
ShowOwnerRow: false
HARV:
-MustBeDestroyed:
NUK2: NUK2:
Buildable: Buildable:
Prerequisites: ~disabled Prerequisites: ~disabled

View File

@@ -582,10 +582,48 @@ Rules:
Scripts: nod03b.lua Scripts: nod03b.lua
ObjectivesPanel: ObjectivesPanel:
PanelName: MISSION_OBJECTIVES PanelName: MISSION_OBJECTIVES
^Infantry:
MustBeDestroyed:
^Vehicle: ^Vehicle:
MustBeDestroyed: MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Tank:
MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Helicopter:
MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Infantry:
MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Plane:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Ship:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Building:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Wall:
Tooltip:
ShowOwnerRow: false
^Husk:
Tooltip:
GenericVisibility: Enemy, Ally, Neutral
GenericStancePrefix: false
ShowOwnerRow: false
HARV:
-MustBeDestroyed:
NUK2: NUK2:
Buildable: Buildable:
Prerequisites: ~disabled Prerequisites: ~disabled

View File

@@ -30,6 +30,8 @@
Guard: Guard:
Guardable: Guardable:
BodyOrientation: BodyOrientation:
Tooltip:
GenericName: Vehicle
UpdatesPlayerStatistics: UpdatesPlayerStatistics:
Cloak: Cloak:
RequiresUpgrade: cloak RequiresUpgrade: cloak
@@ -84,6 +86,8 @@
Guard: Guard:
Guardable: Guardable:
BodyOrientation: BodyOrientation:
Tooltip:
GenericName: Tank
UpdatesPlayerStatistics: UpdatesPlayerStatistics:
Cloak: Cloak:
RequiresUpgrade: cloak RequiresUpgrade: cloak
@@ -133,6 +137,8 @@
Huntable: Huntable:
LuaScriptEvents: LuaScriptEvents:
ScriptTriggers: ScriptTriggers:
Tooltip:
GenericName: Helicopter
GainsStatUpgrades: GainsStatUpgrades:
SelfHealing@ELITE: SelfHealing@ELITE:
Step: 2 Step: 2
@@ -191,6 +197,8 @@
Guard: Guard:
Guardable: Guardable:
BodyOrientation: BodyOrientation:
Tooltip:
GenericName: Soldier
SelfHealing@HOSPITAL: SelfHealing@HOSPITAL:
Step: 5 Step: 5
Ticks: 100 Ticks: 100
@@ -236,6 +244,7 @@
Cost: 70 Cost: 70
Tooltip: Tooltip:
Name: Civilian Name: Civilian
GenericVisibility: None
Mobile: Mobile:
Speed: 56 Speed: 56
Health: Health:
@@ -400,6 +409,8 @@
Guardable: Guardable:
Range: 3 Range: 3
BodyOrientation: BodyOrientation:
Tooltip:
GenericName: Structure
FrozenUnderFog: FrozenUnderFog:
UpdatesPlayerStatistics: UpdatesPlayerStatistics:
Huntable: Huntable:
@@ -430,6 +441,7 @@
Building: Building:
Tooltip: Tooltip:
Name: Civilian Building Name: Civilian Building
GenericVisibility: None
FrozenUnderFog: FrozenUnderFog:
StartsRevealed: true StartsRevealed: true
@@ -443,6 +455,7 @@
RelativeToTopLeft: yes RelativeToTopLeft: yes
Tooltip: Tooltip:
Name: Civilian Building (Destroyed) Name: Civilian Building (Destroyed)
GenericVisibility: None
BodyOrientation: BodyOrientation:
FrozenUnderFog: FrozenUnderFog:
StartsRevealed: true StartsRevealed: true
@@ -485,6 +498,7 @@
RelativeToTopLeft: yes RelativeToTopLeft: yes
Tooltip: Tooltip:
Name: Field (Destroyed) Name: Field (Destroyed)
GenericVisibility: None
BelowUnits: BelowUnits:
BodyOrientation: BodyOrientation:
RenderBuilding: RenderBuilding:
@@ -614,6 +628,8 @@
ForceHealthPercentage: 25 ForceHealthPercentage: 25
BelowUnits: BelowUnits:
BodyOrientation: BodyOrientation:
Tooltip:
GenericName: Destroyed Vehicle
LuaScriptEvents: LuaScriptEvents:
DisabledOverlay: DisabledOverlay:
ScriptTriggers: ScriptTriggers:

View File

@@ -43,6 +43,7 @@ HARV:
Cost: 1000 Cost: 1000
Tooltip: Tooltip:
Name: Harvester Name: Harvester
GenericName: Harvester
Description: Collects Tiberium for processing.\n Unarmed Description: Collects Tiberium for processing.\n Unarmed
Buildable: Buildable:
BuildPaletteOrder: 10 BuildPaletteOrder: 10

View File

@@ -604,6 +604,42 @@ Rules:
EINSTEIN: EINSTEIN:
Passenger: Passenger:
CargoType: Einstein CargoType: Einstein
^Vehicle:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Tank:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Infantry:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Ship:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Plane:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Helicopter:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Building:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Wall:
Tooltip:
ShowOwnerRow: false
^Husk:
Tooltip:
GenericVisibility: Enemy, Ally, Neutral
GenericStancePrefix: false
ShowOwnerRow: false
^CivInfantry: ^CivInfantry:
RevealsShroud: RevealsShroud:
Range: 0c0 Range: 0c0

View File

@@ -879,12 +879,45 @@ Rules:
LuaScripts: allies02.lua LuaScripts: allies02.lua
ObjectivesPanel: ObjectivesPanel:
PanelName: MISSION_OBJECTIVES PanelName: MISSION_OBJECTIVES
^Infantry:
MustBeDestroyed:
^Tank:
MustBeDestroyed:
^Vehicle: ^Vehicle:
MustBeDestroyed: MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Tank:
MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Infantry:
MustBeDestroyed:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Ship:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Plane:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Helicopter:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Building:
Tooltip:
GenericVisibility: Enemy
ShowOwnerRow: false
^Wall:
Tooltip:
ShowOwnerRow: false
^Husk:
Tooltip:
GenericVisibility: Enemy, Ally, Neutral
GenericStancePrefix: false
ShowOwnerRow: false
APWR: APWR:
Buildable: Buildable:
Prerequisites: ~disabled Prerequisites: ~disabled

View File

@@ -37,6 +37,8 @@
Guard: Guard:
Guardable: Guardable:
BodyOrientation: BodyOrientation:
Tooltip:
GenericName: Vehicle
EjectOnDeath: EjectOnDeath:
PilotActor: e1 PilotActor: e1
SuccessRate: 20 SuccessRate: 20
@@ -106,6 +108,8 @@
Guard: Guard:
Guardable: Guardable:
BodyOrientation: BodyOrientation:
Tooltip:
GenericName: Tank
EjectOnDeath: EjectOnDeath:
PilotActor: e1 PilotActor: e1
SuccessRate: 20 SuccessRate: 20
@@ -183,6 +187,8 @@
Guard: Guard:
Guardable: Guardable:
BodyOrientation: BodyOrientation:
Tooltip:
GenericName: Soldier
SelfHealing@HOSPITAL: SelfHealing@HOSPITAL:
Step: 5 Step: 5
Ticks: 100 Ticks: 100
@@ -250,6 +256,8 @@
Guard: Guard:
Guardable: Guardable:
BodyOrientation: BodyOrientation:
Tooltip:
GenericName: Ship
Huntable: Huntable:
LuaScriptEvents: LuaScriptEvents:
ScriptTriggers: ScriptTriggers:
@@ -300,6 +308,8 @@
UpdatesPlayerStatistics: UpdatesPlayerStatistics:
CombatDebugOverlay: CombatDebugOverlay:
BodyOrientation: BodyOrientation:
Tooltip:
GenericName: Plane
Huntable: Huntable:
LuaScriptEvents: LuaScriptEvents:
ScriptTriggers: ScriptTriggers:
@@ -320,6 +330,8 @@
^Helicopter: ^Helicopter:
Inherits: ^Plane Inherits: ^Plane
Tooltip:
GenericName: Helicopter
GpsDot: GpsDot:
String: Helicopter String: Helicopter
@@ -366,6 +378,8 @@
Range: 3 Range: 3
BodyOrientation: BodyOrientation:
FrozenUnderFog: FrozenUnderFog:
Tooltip:
GenericName: Structure
GpsDot: GpsDot:
String: Structure String: Structure
Huntable: Huntable:
@@ -434,6 +448,7 @@
Type: Wood Type: Wood
Tooltip: Tooltip:
Name: Civilian Building Name: Civilian Building
GenericVisibility: None
ProximityCaptor: ProximityCaptor:
Types: CivilianBuilding Types: CivilianBuilding
-WithMakeAnimation: -WithMakeAnimation:
@@ -472,6 +487,7 @@
Cost: 70 Cost: 70
Tooltip: Tooltip:
Name: Civilian Name: Civilian
GenericVisibility: None
Health: Health:
HP: 20 HP: 20
Mobile: Mobile:
@@ -551,6 +567,8 @@
TargetableUnit: TargetableUnit:
TargetTypes: Ground TargetTypes: Ground
RequiresForceFire: true RequiresForceFire: true
Tooltip:
GenericName: Destroyed Vehicle
AutoTargetIgnore: AutoTargetIgnore:
Capturable: Capturable:
Type: husk Type: husk

View File

@@ -245,6 +245,7 @@ HARV:
Cost: 1100 Cost: 1100
Tooltip: Tooltip:
Name: Ore Truck Name: Ore Truck
GenericName: Harvester
Description: Collects Ore and Gems for processing.\n Unarmed Description: Collects Ore and Gems for processing.\n Unarmed
Selectable: Selectable:
Priority: 7 Priority: 7