diff options
| -rw-r--r-- | EmbeddedResources.cs | 2 | ||||
| -rw-r--r-- | Main.cs | 3 | ||||
| -rw-r--r-- | Oneko.cs | 10 |
3 files changed, 11 insertions, 4 deletions
diff --git a/EmbeddedResources.cs b/EmbeddedResources.cs index 7daa6c0..8fdc1f8 100644 --- a/EmbeddedResources.cs +++ b/EmbeddedResources.cs @@ -9,7 +9,7 @@ static class EmbeddedResources public static byte[] GetResource(string name) { - using Stream EmbeddedFile = Assembly.GetExecutingAssembly().GetManifestResourceStream($"{assemblyName}.{name}")!; + using Stream EmbeddedFile = assembly.GetManifestResourceStream($"{assemblyName}.{name}")!; using BinaryReader reader = new(EmbeddedFile); return reader.ReadBytes((int)EmbeddedFile.Length); } @@ -1,5 +1,4 @@ -using System.Globalization; -using System.Numerics; +using System.Numerics; using Raylib_cs; namespace OnekoOnline; @@ -1,5 +1,5 @@ using System.Numerics; -using OnekoOnline.Net; +using System.Collections.ObjectModel; using Raylib_cs; namespace OnekoOnline; @@ -17,6 +17,9 @@ abstract class Oneko : Drawable public string Name = "Oneko"; + protected static List<Oneko> allNekos = []; + public static ReadOnlyCollection<Oneko> AllNekos => allNekos.AsReadOnly(); + protected readonly static byte[] FallbackImg = EmbeddedResources.GetResource("nekos.oneko.png"); public Oneko() : base() @@ -32,6 +35,8 @@ abstract class Oneko : Drawable Console.WriteLine("Path to spritesheet was invalid or the file was too big, using the default."); SpriteSheet = Bitmap.FromPNGMemory(FallbackImg, 256, 128); } + + allNekos.Add(this); } public Oneko(Bitmap spriteSheet) : base() @@ -39,6 +44,8 @@ abstract class Oneko : Drawable Size = new(32,32); Position = new(0, 0); SpriteSheet = spriteSheet; + + allNekos.Add(this); } public override void Draw() @@ -54,6 +61,7 @@ abstract class Oneko : Drawable public override void Dispose() { + allNekos.Remove(this); SpriteSheet.Dispose(); base.Dispose(); } |
