예제 #1
0
        public override IObject2D CreateObject2D(LandWorld2D landWorld2D, IObject obj)
        {
            GroundElementLandObject groundElementLandObject = obj as GroundElementLandObject;

            if (groundElementLandObject != null)
            {
                return(new GroundElementObject2D(this, groundElementLandObject));
            }
            return(null);
        }
예제 #2
0
        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);
        }