using Godot; namespace FOU.Scripts.Elements; public class Snow : Solid { public Snow(int x, int y, ref Level level) : base(x, y, ref level) { Color = Colors.White; Color = AddColorVariance(Color); } public override bool Update(int currentFrame) { if (!base.Update(currentFrame)) return false; Vector2I freePos = Check(this, Vector2I.Down); if (freePos != Vector2I.Zero) { // diagonally right Level.Swap(this, freePos); return true; } return true; // not necessarily end, subclasses could do some more things } }