private Vector2 DirectuinForEnemy(IntarectableObject enemy, out Vector2Int tempNewPosition) { pathfinding.SetIntactableObjects(GetIntarectalePositoin3Int()); List <Vector2Int> path; path = pathfinding.FindPath(enemy.Position, player.Position); if (path == null) { tempNewPosition = (Vector2Int)map.WorldToCell(enemy.Position); return(new Vector2(0, 0)); } else { tempNewPosition = path[0]; } Vector2Int vector2 = (Vector2Int)map.WorldToCell(enemy.Position); //Debug.Log(path); Vector2 directionForEnemy = (Vector2)(path[0] - vector2); //Debug.Log("map.WorldToCell(intarectableObjects[i].Position " + // map.WorldToCell(intarectableObjects[i].Position) + // "path[0] " + path[0]); //Debug.Log(directionForEnemy); if (directionForEnemy.x > 0) { directionForEnemy.x = (directionForEnemy.x - 0.5f); //Debug.Log(directionForEnemy.x); } if (directionForEnemy.x < 0) { directionForEnemy.x = (directionForEnemy.x + 0.5f); } if (directionForEnemy.y > 0) { directionForEnemy.y = (directionForEnemy.y - 0.5f); } if (directionForEnemy.y < 0) { directionForEnemy.y = (directionForEnemy.y + 0.5f); } return(directionForEnemy); }
public void DeleteIntarectale(IntarectableObject intarectableObject) { Destroy(intarectableObject.gameObject); intarectableObjects.Remove(intarectableObject); }
public void RemoveIntarectable(IntarectableObject intarectableObject) { intarectableObjects.Remove(intarectableObject); }
public void AddIntarectable(IntarectableObject intarectableObject) { intarectableObjects.Add(intarectableObject); }
private void OnTriggerExit2D(Collider2D collision) { targetIntarectable = null; }
private void OnTriggerEnter2D(Collider2D collision) { targetIntarectable = collision.GetComponent <IntarectableObject>(); targetIntarectable.TakeHit(damage); }