public bool MoveEntityAttempt(int entityId, int levelId, int oldX, int oldY, int newX, int newY) { if (SystemProvider.LevelSystem.IsValidMapCoord(levelId, newX, newY)) { var positionComponent = (PositionComponent)(SystemProvider.EntitySystem.GetComponent(entityId, ComponentType.Position)); positionComponent.UpdatePosition(newX, newY); MoveEntityEvent.NewMovementEvent(entityId, oldX, oldY, newX, newY); return(true); } return(false); // TODO: If this is the player, print a message to the screen. }
public void TestMoveEntityEvent() { var testSystem = new TestSystem(); MoveEntityEvent.NewMovementEvent(1, 5, 6, 8, 4); GameEvent.ProcessEvents(); var gameEvent = (MoveEntityEvent)testSystem.GetNextEvent(); Assert.AreEqual(1, gameEvent.EntityId); Assert.AreEqual(5, gameEvent.OldX); Assert.AreEqual(6, gameEvent.OldY); Assert.AreEqual(8, gameEvent.NewX); Assert.AreEqual(4, gameEvent.NewY); }