public static Vector2 LeftOfEnemyPositionRelativeToSelfSpriteColliderSize(SpriteRectangleColliderData SelfSpriteCollider, GameObject TargetGO) { Bounds EnemyBounds = TargetGO.GetComponent <Collider2D>().bounds; Bounds SelfBounds = SelfSpriteCollider.GetRectBoxColliderBounds; Vector2 Position = new Vector2(EnemyBounds.min.x - (SelfBounds.max.x - SelfBounds.center.x), EnemyBounds.min.y + (SelfBounds.center.y - SelfBounds.min.y)); return(Position); }
public static void MoveUnitToBottomLeftSideOfEnemy(SpriteRectangleColliderData SelfSpriteCollider, GameObject EnemyGO, GameObject ThisGO, float speed) { ThisGO.transform.position = Vector2.MoveTowards(ThisGO.transform.position, UnitUtils.LeftOfEnemyPositionRelativeToSelfSpriteColliderSize(SelfSpriteCollider, EnemyGO), Time.deltaTime * speed); }