-
Notifications
You must be signed in to change notification settings - Fork 0
/
LimberSporesGeneration.cs
41 lines (36 loc) · 1.44 KB
/
LimberSporesGeneration.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
namespace XRL.World.Parts.Mutation {
using System;
using XRL.World.Limber;
[Serializable]
public class LimberSporesGeneration : GasGeneration {
public readonly string Color;
public LimberSporesGeneration(string Color) {
this.Color = Color;
GasObject = Utility.GetFungalGasFromColor(Color);
SyncFromBlueprint();
DisplayName = Color + " Spore Puffing";
}
public override int GetReleaseDuration(int Level) => 1;
public override int GetReleaseCooldown(int Level) => 50;
public override string GetReleaseAbilityName() => "Puff " + Color + " Spores";
public override void PumpGas() {
Utility.Puff(Color, ParentObject.CurrentCell, ParentObject);
}
}
[Serializable]
public class LimberGoldSporesGeneration : LimberSporesGeneration {
public LimberGoldSporesGeneration() : base("Gold") { }
}
[Serializable]
public class LimberAzureSporesGeneration : LimberSporesGeneration {
public LimberAzureSporesGeneration() : base("Azure") { }
}
[Serializable]
public class LimberRoseSporesGeneration : LimberSporesGeneration {
public LimberRoseSporesGeneration() : base("Rose") { }
}
[Serializable]
public class LimberJadeSporesGeneration : LimberSporesGeneration {
public LimberJadeSporesGeneration() : base("Jade") { }
}
}