Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
TeamArmorShaderData.cs
Go to the documentation of this file.
4
6
8{
9 private static bool isInitialized;
10
12
13 public TeamArmorShaderData(Ref<Effect> shader, string passName)
14 : base(shader, passName)
15 {
16 if (!isInitialized)
17 {
18 isInitialized = true;
20 for (int i = 1; i < Main.teamColor.Length; i++)
21 {
22 dustShaderData[i] = new ArmorShaderData(shader, passName).UseColor(Main.teamColor[i]);
23 }
24 dustShaderData[0] = new ArmorShaderData(shader, "Default");
25 }
26 }
27
28 public override void Apply(Entity entity, DrawData? drawData)
29 {
30 Player player = entity as Player;
31 if (player == null || player.team == 0)
32 {
33 dustShaderData[0].Apply(player, drawData);
34 return;
35 }
36 UseColor(Main.teamColor[player.team]);
37 base.Apply(player, drawData);
38 }
39
41 {
42 Player player = entity as Player;
43 return dustShaderData[player.team];
44 }
45}
TeamArmorShaderData(Ref< Effect > shader, string passName)
override ArmorShaderData GetSecondaryShader(Entity entity)
override void Apply(Entity entity, DrawData? drawData)
ArmorShaderData(Ref< Effect > shader, string passName)
ArmorShaderData UseColor(float r, float g, float b)
static Microsoft.Xna.Framework.Color[] teamColor
Definition Main.cs:1276