public void FRenderSet(List <DATA_ORoute> rRoutes, List <ED_RP_Rec> rRecs, int grdToYards, ED_RP_Grd grd) { // ------------ delete the old graphics from the scene. ED_RP_GFX_Rt[] rtGfx = FindObjectsOfType <ED_RP_GFX_Rt>(); foreach (ED_RP_GFX_Rt g in rtGfx) { Destroy(g.gameObject); } // ------------ render the routes for (int i = 0; i < rRoutes.Count; i++) { for (int j = 0; j < rRecs.Count; j++) { if (rRecs[j].mTag == rRoutes[i].mOwner) { // now render the route from his perspective. TDC_IntVec iVecConv = new TDC_IntVec(rRecs[j].mIxX, rRecs[j].mIxY); for (int k = 1; k < rRoutes[i].mSpots.Count; k++) { Vector2 vSpot = rRoutes[i].mSpots[k]; TDC_IntVec v = new TDC_IntVec((int)vSpot.x + iVecConv.x, (int)vSpot.y + iVecConv.y); vSpot = rRoutes[i].mSpots[k - 1]; TDC_IntVec v1 = new TDC_IntVec((int)vSpot.x + iVecConv.x, (int)vSpot.y + iVecConv.y); ED_RP_GFX_Rt g = Instantiate(GFX_RtNd, grd.mSquares[v.x, v.y].transform.position, transform.rotation); g.transform.SetParent(grd.transform); RenderTrail(grd.mSquares[v.x, v.y].transform.position, grd.mSquares[v1.x, v1.y].transform.position, grd); } } } } }
// Massive side effects, but it's worth it for readibility. Passing in state to make it more obvious. private void MoveSelectedEntity(int wd, int ht, ED_RP_Man.STATE state) { if(state == ED_RP_Man.STATE.S_SELECTED_PLAYER){ TDC_IntVec v = FuncGetNewPos(cMan.rRecs[cMan.ixRec].mIxX, cMan.rRecs[cMan.ixRec].mIxY, wd, ht, cMan.rGrd.mAxLth); cMan.rRecs[cMan.ixRec].mIxX = v.x; cMan.rRecs[cMan.ixRec].mIxY = v.y; cMan.rRecs[cMan.ixRec].transform.position = cMan.rGrd.mSquares[cMan.rRecs[cMan.ixRec].mIxX, cMan.rRecs[cMan.ixRec].mIxY].transform.position; }else if(state == ED_RP_Man.STATE.S_SELECTED_HOOP){ TDC_IntVec v = FuncGetNewPos(cMan.rHoops[cMan.ixHoop].mIxX, cMan.rHoops[cMan.ixHoop].mIxY, wd, ht, cMan.rGrd.mAxLth); cMan.rHoops[cMan.ixHoop].mIxX = v.x; cMan.rHoops[cMan.ixHoop].mIxY = v.y; cMan.rHoops[cMan.ixHoop].transform.position = cMan.rGrd.mSquares[cMan.rHoops[cMan.ixHoop].mIxX, cMan.rHoops[cMan.ixHoop].mIxY].transform.position; } }
public List <Vector2> FConvNodesToRoute(TDC_IntVec recPos) { List <Vector2> spots = new List <Vector2>(); for (int i = 0; i < rRouteNodes.Count; i++) { Vector2 v = new Vector2(); v.x = rRouteNodes[i].mIxX; v.y = rRouteNodes[i].mIxY; v.x -= recPos.x; v.y -= recPos.y; spots.Add(v); } return(spots); }