public List <RawSlime> GetSlimesInAttackRange(RawSlime slime) { List <RawSlime> canAttack = new List <RawSlime> (); Vector2 myPos = slime.GetActualTile().getPosition(); foreach (RawPlayer p in players) { if (p != slime.GetPlayer()) { foreach (RawSlime s in p.GetSlimes()) { Vector2 slPos = s.GetActualTile().getPosition(); if (Matrix.GetDistance(slPos, myPos) <= slime.GetAttackRange()) { canAttack.Add(s); } } } } return(canAttack); }