コード例 #1
0
        public Animal(Texture2D texture, SpriteFont font, Map map)
            : base()
        {
            _animationComponent = new TextureAnimatedComponent(this, texture, 4, 4, 0.3f)
            {
                SetAnimation = (gameTime) => SetAnimationEvent(gameTime),
                GetLayer     = () => MathHelper.Clamp((_moveComponent.CurrentRectangle.Y) / 1000f, 0, 1),
            };

            _interactComponent = new InteractComponent(this, () => _moveComponent.CurrentRectangle)
            {
                OnInteract = () => OnInteractEvent(),
            };

            _moveComponent = new MoveComponent(this, map, (gameTime) => SetMovementEvent(gameTime))
            {
                Speed = 1,
            };

            _mapComponent = new MapComponent(this, map, GetMapRectangle);

            Components.Add(_moveComponent);
            Components.Add(_interactComponent);
            Components.Add(_animationComponent);
            Components.Add(_mapComponent);

            _font = font;
        }
コード例 #2
0
        public Player(Texture2D texture, Map map)
            : base()
        {
            _animationComponent = new TextureAnimatedComponent(this, texture, 4, 4, 0.3f)
            {
                SetAnimation = (gameTime) => SetAnimationEvent(gameTime),
                GetLayer     = () => MathHelper.Clamp((_moveComponent.CurrentRectangle.Y) / 1000f, 0, 1),
            };

            _interactComponent = new InteractComponent(this, () => _moveComponent.CurrentRectangle)
            {
            };

            _moveComponent = new MoveComponent(this, map, (gameTime) => SetMovementEvent(gameTime))
            {
                Speed = 2,
                CurrentRectangleOffset = new Rectangle(0, 40, 0, 0),
                OnBattle = () => EnterBattle = true,
            };

            _mapComponent = new MapComponent(this, map, GetMapRectangle);

            Components.Add(_moveComponent);
            Components.Add(_interactComponent);
            Components.Add(_animationComponent);
            //Components.Add(_mapComponent);
        }