Converted combatant to a abstract class instead of interface