private void getsHit(MovableObject hitObj, MovableObject attackObj) { hitObj.Hit(attackObj.getDamage()); if (hitObj.CollisionBox.Right > attackObj.CollisionBox.Left) { hitObj.Move(Direction.Right, 1f); } if (hitObj.CollisionBox.Left < attackObj.CollisionBox.Right) { hitObj.Move(Direction.Left, 1f); } }
public void CheckThrowObjectCollission(MovableObject movableObject) { ThrowObject throwObject = movableObject.hasCollissionWithThrowObject(); if (throwObject != null) { MovableObject thrower = throwObject.GetThrower(); if (movableObject is Enemy && Player.GetAttack() is ThrowAttack) { Enemy enemy = (Enemy)movableObject; ThrowAttack attack = ((ThrowAttack)Player.GetAttack()); attack.ThrownObjectHasCollidedWithEnemy(enemy, throwObject); } else if (movableObject is Player && thrower is Enemy && ((Enemy)thrower).GetAttack() is ThrowAttack) { ThrowAttack attack = ((ThrowAttack)((Enemy)thrower).GetAttack()); attack.ThrownObjectHasCollidedWithPlayer(Player, throwObject); } } }