public void RemoveMovement_RemovesMovementFromDefaultCharacterAsWell() { //arrange MovableCharacter character = TestObjectFactory.MovableCharacterUnderTest; MovableCharacter defaultCharacter = TestObjectFactory.DefaultCharacterUnderTest; Movement mov = TestObjectFactory.MovementUnderTest; AnimatedCharacterRepository repo = defaultCharacter.Repository; repo.Characters.Add(character); character.Repository = repo; Movement mov1 = TestObjectFactory.MovementUnderTest; Movement mov2 = TestObjectFactory.MovementUnderTest; character.AddMovement(mov1); character.AddMovement(mov2); // first check if default character has both these movemements Assert.IsTrue(defaultCharacter.Movements.Any(m => m.Movement == mov1)); Assert.IsTrue(defaultCharacter.Movements.Any(m => m.Movement == mov2)); //act character.RemoveMovement(mov1); character.RemoveMovement(mov2); //assert Assert.IsFalse(defaultCharacter.Movements.Any(m => m.Movement == mov1)); Assert.IsFalse(defaultCharacter.Movements.Any(m => m.Movement == mov2)); }
public AnimatedCharacterImpl(DesktopCharacterTargeter targeter, KeyBindCommandGenerator generator, Camera camera, CharacterActionList <Identity> identities, AnimatedCharacterRepository repo) : base(targeter, generator, camera, identities) { _loadedFXs = new List <FXElement>(); //Abilities = new CharacterActionListImpl<AnimatedAbility>(CharacterActionType.Ability, generator, this); //loadDefaultAbilities(); _repo = repo; }
public void AddMovement_CreatesCharacterMovementForDefaultCharacter() { //arrange MovableCharacter character = TestObjectFactory.MovableCharacterUnderTest; MovableCharacter defaultCharacter = TestObjectFactory.DefaultCharacterUnderTest; AnimatedCharacterRepository repo = defaultCharacter.Repository; repo.Characters.Add(character); character.Repository = repo; Movement mov = TestObjectFactory.MovementUnderTest; //act character.AddMovement(mov); //assert Assert.IsTrue((defaultCharacter.Movements.Any(m => m.Movement == mov))); }
public void AddDefaultMovements_AddsWalkRunSwimForCharacter() { //arrange MovableCharacter character = TestObjectFactory.MovableCharacterUnderTest; MovableCharacter defaultCharacter = TestObjectFactory.DefaultCharacterUnderTest; Movement mov = TestObjectFactory.MovementUnderTest; AnimatedCharacterRepository repo = defaultCharacter.Repository; repo.Characters.Add(character); character.Repository = repo; //act character.AddDefaultMovements(); //assert Assert.IsTrue(defaultCharacter.Movements.Any(m => m.Movement.Name == "Walk")); Assert.IsTrue(defaultCharacter.Movements.Any(m => m.Movement.Name == "Run")); Assert.IsTrue(defaultCharacter.Movements.Any(m => m.Movement.Name == "Swim")); }
public MovableCharacterImpl(DesktopCharacterTargeter targeter, DesktopNavigator desktopNavigator, KeyBindCommandGenerator generator, Camera camera, CharacterActionList <Identity> identities, AnimatedCharacterRepository repo) : base(targeter, generator, camera, identities, repo) { this.DesktopNavigator = desktopNavigator; }