public override IObject2D CreateObject2D(LandWorld2D landWorld2D, IObject obj) { GroundElementLandObject groundElementLandObject = obj as GroundElementLandObject; if (groundElementLandObject != null) { return(new GroundElementObject2D(this, groundElementLandObject)); } return(null); }
public GroundElementObject2D(IObject2DFactory factory, GroundElementLandObject landObject) : base() { Texture texture = factory.GetTextureByIndex(0); // Random random = new Random(landObject.Position.X - landObject.Position.Y * landObject.Position.Y); int elementIndex = landObject.ElementIndex; //if (landObject.LandMountainType == MountainType.DRY) //{ // elementIndex = 0; //} this.ObjectSprite = new Sprite(texture, new IntRect(elementIndex * 2 * MainWindow.MODEL_TO_VIEW, 0 * MainWindow.MODEL_TO_VIEW, 2 * MainWindow.MODEL_TO_VIEW, 2 * MainWindow.MODEL_TO_VIEW)); this.ObjectSprite.Scale = new Vector2f(0.5f, 0.5f); this.Position = new Vector2f(landObject.Position.X, landObject.Position.Y); }