update developer commentary
for weapon traits, crates and palettes clarify that you don't need to update the wiki page manually
This commit is contained in:
@@ -20,8 +20,11 @@ namespace OpenRA.Traits
|
||||
{
|
||||
[Desc("Defaults to the actor name.")]
|
||||
public readonly string Image = null;
|
||||
[Desc("custom palette name")]
|
||||
public readonly string Palette = null;
|
||||
[Desc("custom PlayerColorPalette: BaseName")]
|
||||
public readonly string PlayerPalette = "player";
|
||||
[Desc("Change the sprite image size.")]
|
||||
public readonly float Scale = 1f;
|
||||
|
||||
public virtual object Create(ActorInitializer init) { return new RenderSimple(init.self); }
|
||||
|
||||
@@ -8,15 +8,12 @@
|
||||
*/
|
||||
#endregion
|
||||
|
||||
using OpenRA.FileFormats;
|
||||
|
||||
namespace OpenRA.Traits
|
||||
{
|
||||
public class FogInfo : TraitInfo<Fog>
|
||||
{
|
||||
/*
|
||||
* This tag trait will enable fog of war in ShroudRenderer.
|
||||
* Don't forget about HiddenUnderFog and FrozenUnderFog.
|
||||
*/
|
||||
}
|
||||
[Desc("This tag trait will enable fog of war in ShroudRenderer. Don't forget about HiddenUnderFog and FrozenUnderFog.")]
|
||||
public class FogInfo : TraitInfo<Fog> { }
|
||||
|
||||
public class Fog { }
|
||||
}
|
||||
@@ -13,10 +13,14 @@ using OpenRA.Graphics;
|
||||
|
||||
namespace OpenRA.Traits
|
||||
{
|
||||
[Desc("Add this to the Player actor definition.")]
|
||||
public class PlayerColorPaletteInfo : ITraitInfo
|
||||
{
|
||||
[Desc("The Name of the palette to base off.")]
|
||||
public readonly string BasePalette = null;
|
||||
[Desc("The prefix for the resulting player palettes")]
|
||||
public readonly string BaseName = "player";
|
||||
[Desc("Remap these indices to player colors.")]
|
||||
public readonly int[] RemapIndex = {};
|
||||
public readonly bool AllowModifiers = true;
|
||||
|
||||
|
||||
@@ -25,13 +25,16 @@ namespace OpenRA.Mods.RA
|
||||
public int Facing; // deviation from turret facing
|
||||
}
|
||||
|
||||
[Desc("Allows you to attach weapons to the unit (use @IdentifierSuffix for > 1)")]
|
||||
public class ArmamentInfo : ITraitInfo, Requires<AttackBaseInfo>
|
||||
{
|
||||
[WeaponReference]
|
||||
[Desc("Has to be defined here and in weapons.yaml.")]
|
||||
public readonly string Weapon = null;
|
||||
public readonly string Turret = "primary";
|
||||
[Desc("Move the turret backwards when firing.")]
|
||||
public readonly int Recoil = 0;
|
||||
[Desc("Time (in frames) until the weapon can fire again.")]
|
||||
public readonly int FireDelay = 0;
|
||||
|
||||
public readonly float RecoilRecovery = 0.2f;
|
||||
|
||||
@@ -21,7 +21,9 @@ namespace OpenRA.Mods.RA
|
||||
{
|
||||
public readonly bool CanAttackGround = true;
|
||||
|
||||
[Desc("Ticks to wait until next AutoTarget: attempt.")]
|
||||
public readonly int MinimumScanTimeInterval = 30;
|
||||
[Desc("Ticks to wait until next AutoTarget: attempt.")]
|
||||
public readonly int MaximumScanTimeInterval = 60;
|
||||
|
||||
public abstract object Create(ActorInitializer init);
|
||||
|
||||
@@ -9,10 +9,12 @@
|
||||
#endregion
|
||||
|
||||
using System;
|
||||
using OpenRA.FileFormats;
|
||||
using OpenRA.Traits;
|
||||
|
||||
namespace OpenRA.Mods.RA
|
||||
{
|
||||
[Desc("Unit got to face the target")]
|
||||
public class AttackFrontalInfo : AttackBaseInfo
|
||||
{
|
||||
public readonly int FacingTolerance = 1;
|
||||
|
||||
@@ -14,7 +14,7 @@ using OpenRA.FileFormats;
|
||||
|
||||
namespace OpenRA.Mods.RA
|
||||
{
|
||||
[Desc("Give the unit a \"heal-weapon\".",
|
||||
[Desc("Give the unit a \"heal-weapon\" that attacks friendly targets if they are damaged.",
|
||||
"It conflicts with any other weapon or Attack*: trait because it will hurt friendlies during the",
|
||||
"heal process then. It also won't work with buildings (use RepairsUnits: for them)")]
|
||||
public class AttackMedicInfo : AttackFrontalInfo
|
||||
|
||||
@@ -9,13 +9,15 @@
|
||||
#endregion
|
||||
|
||||
using System.Linq;
|
||||
using OpenRA.FileFormats;
|
||||
using OpenRA.Traits;
|
||||
|
||||
namespace OpenRA.Mods.RA
|
||||
{
|
||||
public class ConquestVictoryConditionsInfo : ITraitInfo
|
||||
{
|
||||
public int NotificationDelay = 1500; // Milliseconds
|
||||
[Desc("Milliseconds")]
|
||||
public int NotificationDelay = 1500;
|
||||
|
||||
public object Create(ActorInitializer init) { return new ConquestVictoryConditions(this); }
|
||||
}
|
||||
@@ -85,13 +87,11 @@ namespace OpenRA.Mods.RA
|
||||
}
|
||||
}
|
||||
|
||||
/* tag trait for things that must be destroyed for a short game to end */
|
||||
|
||||
[Desc("Tag trait for things that must be destroyed for a short game to end.")]
|
||||
public class MustBeDestroyedInfo : TraitInfo<MustBeDestroyed> { }
|
||||
public class MustBeDestroyed { }
|
||||
|
||||
// Provides game mode information for players/observers
|
||||
// Goes on WorldActor - observers don't have a player it can live on
|
||||
[Desc("Provides game mode information for players/observers. Goes on WorldActor - observers don't have a player it can live on.")]
|
||||
public class ConquestObjectivesPanelInfo : ITraitInfo
|
||||
{
|
||||
public string ObjectivesPanel = null;
|
||||
|
||||
@@ -10,16 +10,21 @@
|
||||
|
||||
using System.Linq;
|
||||
using OpenRA.Mods.RA.Effects;
|
||||
using OpenRA.FileFormats;
|
||||
using OpenRA.Traits;
|
||||
|
||||
namespace OpenRA.Mods.RA
|
||||
{
|
||||
public class CrateActionInfo : ITraitInfo
|
||||
{
|
||||
[Desc("Chance of getting this crate, assuming the collector is compatible.")]
|
||||
public int SelectionShares = 10;
|
||||
[Desc("An animation defined in sequence yaml(s) to draw.")]
|
||||
public string Effect = null;
|
||||
[Desc("Audio clip to play when the crate is collected.")]
|
||||
public string Notification = null;
|
||||
[ActorReference]
|
||||
[Desc("Comma-separated list of actor types the crate action should not apply to.")]
|
||||
public string[] ExcludedActorTypes = { };
|
||||
|
||||
public virtual object Create(ActorInitializer init) { return new CrateAction(init.self, this); }
|
||||
|
||||
@@ -12,6 +12,7 @@ using System.Collections.Generic;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using OpenRA.Effects;
|
||||
using OpenRA.FileFormats;
|
||||
using OpenRA.GameRules;
|
||||
using OpenRA.Graphics;
|
||||
using OpenRA.Traits;
|
||||
@@ -22,7 +23,8 @@ namespace OpenRA.Mods.RA.Effects
|
||||
{
|
||||
public readonly int Speed = 1;
|
||||
public readonly string Trail = null;
|
||||
public readonly float Inaccuracy = 0; // pixels at maximum range
|
||||
[Desc("Pixels at maximum range")]
|
||||
public readonly float Inaccuracy = 0;
|
||||
public readonly string Image = null;
|
||||
public readonly bool High = false;
|
||||
public readonly int RangeLimit = 0;
|
||||
|
||||
@@ -13,10 +13,12 @@ using System.Drawing;
|
||||
using OpenRA.Effects;
|
||||
using OpenRA.GameRules;
|
||||
using OpenRA.Graphics;
|
||||
using OpenRA.FileFormats;
|
||||
using OpenRA.Traits;
|
||||
|
||||
namespace OpenRA.Mods.RA.Effects
|
||||
{
|
||||
[Desc("Not a sprite, but an engine effect.")]
|
||||
class LaserZapInfo : IProjectileInfo
|
||||
{
|
||||
public readonly int BeamRadius = 1;
|
||||
|
||||
@@ -32,6 +32,7 @@ namespace OpenRA.Mods.RA.Effects
|
||||
public readonly string Image = null;
|
||||
[Desc("Rate of Turning")]
|
||||
public readonly int ROT = 5;
|
||||
[Desc("Explode when following the target longer than this.")]
|
||||
public readonly int RangeLimit = 0;
|
||||
public readonly bool TurboBoost = false;
|
||||
public readonly int TrailInterval = 2;
|
||||
|
||||
@@ -15,8 +15,10 @@ using OpenRA.Traits;
|
||||
|
||||
namespace OpenRA.Mods.RA
|
||||
{
|
||||
[Desc("Adds the hard-coded fog palette to the game")]
|
||||
class FogPaletteInfo : ITraitInfo
|
||||
{
|
||||
[Desc("internal palette name")]
|
||||
public readonly string Name = "fog";
|
||||
public object Create(ActorInitializer init) { return new FogPalette(this); }
|
||||
}
|
||||
|
||||
@@ -15,6 +15,7 @@ using OpenRA.Traits;
|
||||
|
||||
namespace OpenRA.Mods.RA
|
||||
{
|
||||
[Desc("Palette effect used for blinking \"animations\" on actors.")]
|
||||
class LightPaletteRotatorInfo : ITraitInfo
|
||||
{
|
||||
public readonly string[] ExcludePalettes = {};
|
||||
|
||||
@@ -13,9 +13,12 @@ using OpenRA.Traits;
|
||||
|
||||
namespace OpenRA.Mods.RA
|
||||
{
|
||||
[Desc("Loads the palette specified in the tileset definition")]
|
||||
class PaletteFromCurrentTilesetInfo : ITraitInfo
|
||||
{
|
||||
[Desc("internal palette name")]
|
||||
public readonly string Name = null;
|
||||
[Desc("Map listed indices to shadow. Ignores previous color.")]
|
||||
public readonly int[] ShadowIndex = { };
|
||||
public readonly bool AllowModifiers = true;
|
||||
|
||||
|
||||
@@ -16,9 +16,13 @@ namespace OpenRA.Mods.RA
|
||||
{
|
||||
class PaletteFromFileInfo : ITraitInfo
|
||||
{
|
||||
[Desc("internal palette name")]
|
||||
public readonly string Name = null;
|
||||
[Desc("If defined, load the palette only for this tileset.")]
|
||||
public readonly string Tileset = null;
|
||||
[Desc("filename to load")]
|
||||
public readonly string Filename = null;
|
||||
[Desc("Map listed indices to shadow. Ignores previous color.")]
|
||||
public readonly int[] ShadowIndex = { };
|
||||
public readonly bool AllowModifiers = true;
|
||||
|
||||
|
||||
@@ -15,13 +15,20 @@ using OpenRA.Graphics;
|
||||
|
||||
namespace OpenRA.Mods.RA
|
||||
{
|
||||
[Desc("Creates a single color palette without any base palette file.")]
|
||||
class PaletteFromRGBAInfo : ITraitInfo
|
||||
{
|
||||
[Desc("internal palette name")]
|
||||
public readonly string Name = null;
|
||||
[Desc("If defined, load the palette only for this tileset.")]
|
||||
public readonly string Tileset = null;
|
||||
[Desc("red color component")]
|
||||
public readonly int R = 0;
|
||||
[Desc("green color component")]
|
||||
public readonly int G = 0;
|
||||
[Desc("blue color component")]
|
||||
public readonly int B = 0;
|
||||
[Desc("alpha channel (transparency)")]
|
||||
public readonly int A = 255;
|
||||
public readonly bool AllowModifiers = true;
|
||||
|
||||
|
||||
@@ -15,8 +15,11 @@ namespace OpenRA.Mods.RA
|
||||
{
|
||||
class PlayerPaletteFromCurrentTilesetInfo : ITraitInfo
|
||||
{
|
||||
[Desc("internal palette name")]
|
||||
public readonly string Name = null;
|
||||
[Desc("Map listed indices to shadow.")]
|
||||
public readonly int[] ShadowIndex = { };
|
||||
[Desc("Apply palette rotatotors or not.")]
|
||||
public readonly bool AllowModifiers = true;
|
||||
|
||||
public object Create(ActorInitializer init) { return new PlayerPaletteFromCurrentTileset(init.world, this); }
|
||||
|
||||
@@ -15,8 +15,10 @@ using OpenRA.Traits;
|
||||
|
||||
namespace OpenRA.Mods.RA
|
||||
{
|
||||
[Desc("Adds the hard-coded shroud palette to the game")]
|
||||
class ShroudPaletteInfo : ITraitInfo
|
||||
{
|
||||
[Desc("internal palette name")]
|
||||
public readonly string Name = "shroud";
|
||||
public object Create(ActorInitializer init) { return new ShroudPalette(this); }
|
||||
}
|
||||
|
||||
@@ -10,6 +10,7 @@
|
||||
|
||||
using System.Collections.Generic;
|
||||
using OpenRA.Mods.RA.Render;
|
||||
using OpenRA.FileFormats;
|
||||
using OpenRA.Traits;
|
||||
|
||||
namespace OpenRA.Mods.RA
|
||||
@@ -17,6 +18,7 @@ namespace OpenRA.Mods.RA
|
||||
public class TurretedInfo : ITraitInfo, UsesInit<TurretFacingInit>
|
||||
{
|
||||
public readonly string Turret = "primary";
|
||||
[Desc("Rate of Turning")]
|
||||
public readonly int ROT = 255;
|
||||
public readonly int InitialFacing = 128;
|
||||
public readonly int[] Offset = {0,0};
|
||||
|
||||
@@ -15,6 +15,7 @@ using OpenRA.Traits;
|
||||
|
||||
namespace OpenRA.Mods.RA
|
||||
{
|
||||
[Desc("Palette effect used for sprinkle \"animations\" on terrain tiles.")]
|
||||
class WaterPaletteRotationInfo : ITraitInfo
|
||||
{
|
||||
public readonly string[] ExcludePalettes = {};
|
||||
|
||||
@@ -493,10 +493,10 @@ namespace OpenRA.Utility
|
||||
|
||||
Console.WriteLine("## Documentation");
|
||||
Console.WriteLine(
|
||||
"This documentation is aimed at modders and contributers of OpenRA. It displays all traits with default values and developer commentary. " +
|
||||
"This documentation is aimed at modders and contributors of OpenRA. It displays all traits with default values and developer commentary. " +
|
||||
"Please do not edit it directly, but add new `[Desc(\"String\")]` tags to the source code. This file has been automatically generated on {0}. " +
|
||||
"Type `make docs` to create a new one and put it on https://github.com/OpenRA/OpenRA/wiki/Traits afterwards. " +
|
||||
"A copy of this is compiled to HTML and shipped with every release during the automated packaging process.", DateTime.Now);
|
||||
"Type `make docs` to create a new one. A copy of this is uploaded to https://github.com/OpenRA/OpenRA/wiki/Traits " +
|
||||
"as well as compiled to HTML and shipped with every release during the automated packaging process.", DateTime.Now);
|
||||
Console.WriteLine("```yaml");
|
||||
Console.WriteLine();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user