void Awake() { canvas.gameObject.SetActive(true); pathfind = GetComponent <s_pathfind>(); nl = this; InEditor = false; InitializeLoader(); InitializeGameWorld(); colmp.color = Color.clear; foreach (KeyValuePair <string, int> v in s_globals.GlobalFlags) { s_globals.SetGlobalFlag(v.Key, 0); } //LoadMap(maps[0]); }
public override void OnInspectorGUI() { if (mapdat == null) { mapdat = GameObject.Find("General").GetComponent <s_ninjaloader>(); } o_trigger tra = (o_trigger)target; base.OnInspectorGUI(); for (int i = 0; i < Labelmap().Count; i++) { if (GUILayout.Button(Labelmap()[i].Item1)) { tra.LabelToJumpTo = Labelmap()[i].Item2; } } }
public List <s_map.s_tileobj> GetNodes() { if (nl == null) { nl = this; } s_object[] tiles = GetTileObjects(); List <s_map.s_tileobj> t = new List <s_map.s_tileobj>(); int nodeID = 0; foreach (s_object c in tiles) { s_map.s_tileobj til = new s_map.s_tileobj(c.ID); til.pos_x = (int)c.transform.position.x; til.pos_y = (int)c.transform.position.y; switch (c.ID) { case "Node": o_nodeobj nod = c.GetComponent <o_nodeobj>(); if (nod.nieghbours != null) { foreach (o_nodeobj no in nod.nieghbours) { if (no == null) { continue; } if (til.CustomTypes != null) { til.CustomTypes.Add(new s_map.s_customType("node", no.nodeID)); } } } t.Add(til); nodeID++; continue; default: continue; } } return(t); }
public override void OnInspectorGUI() { GameObject obj = Selection.activeGameObject; if (obj != null) { o_nodeobj anim = obj.GetComponent <o_nodeobj>(); if (anim != null) { anim.nodeID = EditorGUILayout.IntField(anim.nodeID); EditorGUILayout.LabelField("Node neighbours"); for (int i = 0; i < anim.nieghbours.Count; i++) { o_nodeobj nod = anim.nieghbours[i]; if (nod == null) { continue; } if (GUILayout.Button(nod.ID + " " + nod.nodeID)) { nod.nieghbours.Remove(anim); anim.nieghbours.Remove(nod); } } EditorGUILayout.LabelField("Nodes in map"); if (nodes == null) { s_ninjaloader nin = GameObject.Find("General").GetComponent <s_ninjaloader>(); s_ninjaloader.nl = nin; nodes = nin.GetNodes(); } else { for (int i = 0; i < nodes.Count; i++) { s_map.s_tileobj nod = nodes[i]; if (nod.TYPENAME != "Node") { continue; } if (i == anim.nodeID) { continue; } if (anim.nieghbours != null) { if (anim.nieghbours.Find(x => x.nodeID == i)) { continue; } } if (GUILayout.Button(i + "")) { o_nodeobj nud = s_ninjaloader.nl.GetNode(i); anim.nieghbours.Add(nud); nud.nieghbours.Add(anim); } } } } } Repaint(); }
private new void OnGUI() { ed = GameObject.Find("General").GetComponent <s_ninjaloader>(); base.OnGUI(); }
public override void OnInspectorGUI() { base.OnInspectorGUI(); GameObject obj = Selection.activeGameObject; if (obj != null) { npc_guard anim = obj.GetComponent <npc_guard>(); if (anim != null) { anim.ID = EditorGUILayout.TextField(anim.ID); anim.faction = EditorGUILayout.TextField(anim.faction); EditorGUILayout.LabelField("Teleport location"); anim.teleportLoc = EditorGUILayout.TextField(anim.teleportLoc); anim.marchPoint = EditorGUILayout.IntField(anim.marchPoint); EditorGUILayout.LabelField("Pathfinding"); if (anim.path != null) { for (int i = 0; i < anim.path.Count; i++) { EditorGUILayout.LabelField(anim.path[i].id + ""); } } EditorGUILayout.LabelField("Path to follow"); for (int i = 0; i < anim.marchDirection.Count; i++) { int nod = anim.marchDirection[i]; if (GUILayout.Button("ID: " + nod)) { anim.marchDirection.Remove(nod); } } EditorGUILayout.LabelField("Nodes in map"); if (nodes == null) { s_ninjaloader nin = GameObject.Find("General").GetComponent <s_ninjaloader>(); s_ninjaloader.nl = nin; nodes = nin.GetNodes(); } else { for (int i = 0; i < nodes.Count; i++) { s_map.s_tileobj nod = nodes[i]; if (nod.TYPENAME != "Node") { continue; } if (GUILayout.Button(i + "")) { anim.marchDirection.Add(i); } } } EditorGUILayout.LabelField("Targets"); if (anim.targets != null) { for (int i = 0; i < anim.targets.Count; i++) { EditorGUILayout.LabelField(anim.targets[i].name + ""); } } } } Repaint(); }