public Mushroom(int id, Terrain terrain) : base(Config.MushroomCylinderRadius, Config.MushroomCylinderHeight) { Id = id; Terrain = terrain; Level = 1; Scale = newScale = originalScale = Config.MushroomScale; Range = Config.MushroomRange; Stone = new Stone(this) { Enabled = false }; growSpeed = Config.MushroomGrowSpeed; }
public bool CheckCollision(Stone stone) { Client client = GetClientList().FirstOrDefault(c => !c.Leprechaun.IsInvulnerable && c.Leprechaun != stone.Mushroom.Owner && c.Leprechaun.Intersects(stone)); if (client != null) client.Send(new NetworkPacketStoneHit()); return client != null || VegetationManager.IntersectsAny(stone) || stone.Position.Y < Terrain.GetHeight(stone.Position).Y; }
public NetworkPacketStone(Stone stone) : base(NetworkPacketTypes.Stone, (byte)stone.Mushroom.Id, 0, stone) { AddBool(stone.Enabled); }