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; }
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); }