An encyclopedia for all the creachers in the lyraverse!
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

53 lines
1.6 KiB

using System;
using Newtonsoft.Json;
namespace creachopedia {
internal enum Locomotion {
None, //barnacles, plants and so on
Walker,
Swimmer,
Hopper,
Flier,
Slitherer,
Incher // snails et al
}
internal enum SurfaceRel {
Below,
At,
Above
}
internal class Creacher {
public string name {get; set;}
[JsonProperty]
private int _footsies { get; set; }
[JsonIgnore]
public int footsies {get { return this._footsies; } set { Console.WriteLine("What do you think you're doing?! 0uo Leave those footsies alone!!!"); }}
public string type = "simple creacher";
private Locomotion locoStyle {get; set;}
private SurfaceRel height {get; set;}
public Creacher(string name, int footsyCount = 4, string biome = "land", Locomotion locoStyle = Locomotion.Walker, SurfaceRel height = SurfaceRel.At) {
this.name = name;
this._footsies = footsyCount;
this.type = $"creacher of the {biome}";
this.locoStyle = locoStyle;
this.height = height;
}
public void Introduce() {
Console.WriteLine($"Hello, my name is... {this.name}. I am a {this.type}, and I have {this.footsies} footsies.");
}
public void Step(){
if(this.footsies == 0){
Console.WriteLine("I cannot stip or step! I have 0 footsies! I am however quite powerful in my own way 0u0");
Console.WriteLine("Silly creacher...");
} else if(footsies == 1){
Console.WriteLine($"The {this.name} only has 1 footsie, but it does its best.");
} else {
Console.WriteLine($"The {this.name} steps, and rather well I might add.");
}
}
}
}