public void Jump(WalkPoint thisWP, Vector3 thisDir, string trigger = "Jump") { next = thisWP; child.forward = thisDir; anim.SetTrigger(trigger); moving = true; }
public static WalkPoint GetWPAtPos(Vector3 pos, WalkPoint except = null) { foreach (var wP in wPs) { if (wP.transform.position.Approximate(pos) && wP != except) { return(wP); } //if (wP.transform.position == pos && wP != except) return wP; } return(null); }
IEnumerator Move(Vector3 pos) { moving = Player.prevent = true; yield return(new WaitForSeconds(time * 2)); moving = Player.prevent = false; transform.position = pos; RemoveDoubles(); WalkPoint.GeneratePaths(); }
void ManageCut() { if (!cut) { return; } wPAtPos.gameObject.SetActive(true); //wPAtPos.SetWork(true);// wPAtPos.Work = true; //wPAtPos.gameObject.SetActive(true); if (Player.player.current == topWP) { Player.player.Jump(WalkPoint.GetWPAtPos(transform.position + 2 * transform.forward), transform.forward, "Tree"); } topWP.gameObject.SetActive(false); //topWP.SetWork(false); //topWP.Work = false;// topWP.gameObject.SetActive(false); //print("for " + gameObject + ", sideWP.transform.position:" + sideWP.transform.position + ", WalkPoint.GetWPAtPos(sideWP.transform.position, sideWP): " + WalkPoint.GetWPAtPos(sideWP.transform.position, sideWP)); sideWP.gameObject.SetActive(WalkPoint.GetWPAtPos(sideWP.transform.position, sideWP) == null || WalkPoint.GetWPAtPos(sideWP.transform.position, sideWP).block);//sideWP.Work = WalkPoint.GetWPAtPos(sideWP.transform.position, sideWP) == null;//sideWP.SetWork(WalkPoint.GetWPAtPos(sideWP.transform.position, sideWP) == null); //sideWP.Work = WalkPoint.GetWPAtPos(sideWP.transform.position, sideWP) == null;// sideWP.gameObject.SetActive(WalkPoint.GetWPAtPos(sideWP.transform.position, sideWP) == null); }
public static void TryCutAll() { foreach (var tree in trees) { tree.TryCut(); } //for (int i = 0; i < 5; i++) //{ foreach (var tree in trees) { tree.ManageCut(); } WalkPoint.GeneratePaths(); }
void RemoveDoubles() { foreach (var wP in GetComponentsInChildren <WalkPoint>()) { //child.GetChild(0).gameObject.SetActive(true); //WalkPoint wP = child.GetComponentInChildren<WalkPoint>(); //print("wP " + wP); wP.gameObject.SetActive(WalkPoint.GetWPAtPos(wP.transform.position, wP) == null); } //foreach (Transform child in transform/* GetComponentsInChildren<WalkPoint>()*/) //{ // //child.GetChild(0).gameObject.SetActive(true); // WalkPoint wP = child.GetComponentInChildren<WalkPoint>(); // //print("wP " + wP); // wP.gameObject.SetActive(WalkPoint.GetWPAtPos(wP.transform.position, wP) == null); //} }
void Start() { Current = origin; }
public void EndMove() { Current = next; }