public bool UpdateGridInfo(Vector3 p_target_position, CA_Grid original_grid, BaseUnit p_unit) { if (original_grid == null) { return(false); } CA_Grid newGrid = FindGridByWorldPosition(p_target_position); original_grid.mapComponent = null; //Pass in a false position, simply override originalGrid if (newGrid == null) { return(true); } //Couldn't find newGrid if (newGrid.position == Vector2.zero) { return(false); } //Debug.Log("Change pos unit " + p_unit.name); newGrid.mapComponent = p_unit; return(true); }
public CA_Grid IsPosAvailable(Vector3 p_position, Vector3 p_direction) { Vector3 aheadPosition = p_position + p_direction; CA_Grid caGrid = FindGridByWorldPosition(aheadPosition); return(caGrid); }
private void ClearUpInvalidUnit(AIAgent p_agent, int p_index) { CA_Grid grid = _map.IsPosAvailable(p_agent.transform.position, Vector3.zero); //If out of grid index, should be eradicate if (grid.position == Vector2.zero) { RemoveAgent(p_agent, p_index); } }
public T GetUnitInGrid <T>(Vector3 p_world_position) where T : MapComponent { CA_Grid caGrid = FindGridByWorldPosition(p_world_position); if (caGrid.mapComponent == null || caGrid.mapComponent.GetType() != typeof(ObstacleComponent)) { return(default(T)); } return((T)caGrid.mapComponent); }
private void BindGrid(string docnum) { DM_Grid.DataSource = Preview.DirectMaterials(docnum); DM_Grid.KeyFieldName = "PK"; DM_Grid.DataBind(); OP_Grid.DataSource = Preview.OperatingExpense(docnum); OP_Grid.KeyFieldName = "PK"; OP_Grid.DataBind(); CA_Grid.DataSource = Preview.CapitalExpenditure(docnum); CA_Grid.KeyFieldName = "PK"; CA_Grid.DataBind(); }
public bool UpdateGridInfo(Vector3 p_target_position, BaseUnit p_unit) { CA_Grid originalGrid = FindGridByWorldPosition(p_unit.transform.position); return(UpdateGridInfo(p_target_position, originalGrid, p_unit)); }