/////////////////////////////////////////////////////////////////////////// public static void SpawnMulti(WalkerSpawner spawner) { for (int i = 0; i < 20; ++i) { spawner.SpawnWalker(i / 20.0f, (i == 0)); } }
// Start is called before the first frame update void Start() { spawner = GetComponentInParent <WalkerSpawner>(); walking = GetComponent <MoveForwardAtRandomSpeed>(); anim = GetComponent <Animator>(); hipRB = animHolder.GetComponent <Rigidbody>(); ragdollRigidbodies = animHolder.GetComponentsInChildren <Rigidbody>(); ragdollColliders = animHolder.GetComponentsInChildren <Collider>(); TurnOnRagdoll(false); DestroyAfterSeconds(maximumLifeTime); }
/////////////////////////////////////////////////////////////////////////// public override void OnInspectorGUI() { WalkerManager walkerManager = (WalkerManager)target; DrawDefaultInspector(); // We only want to modify Scene data during play mode GUI.enabled = Application.isPlaying; if (GUILayout.Button("KillAll")) { walkerManager.KillAllWalkers(); } if (GUILayout.Button("Spawn Small")) { WalkerSpawner spawner = GameObject.FindObjectOfType <WalkerSpawner>(); WalkerSpawnerEditor.SpawnSingle(spawner, false); } if (GUILayout.Button("Spawn Big")) { WalkerSpawner spawner = GameObject.FindObjectOfType <WalkerSpawner>(); WalkerSpawnerEditor.SpawnSingle(spawner, true); } if (GUILayout.Button("Spawn Multiple")) { WalkerSpawner[] spawners = GameObject.FindObjectsOfType <WalkerSpawner>(); for (int s = 0; s < spawners.Length; ++s) { WalkerSpawnerEditor.SpawnMulti(spawners[s]); } } if (GUILayout.Button(walkerManager.enabled ? "Stop Spawning" : "Resume Spawning")) { WalkerSpawner[] spawners = GameObject.FindObjectsOfType <WalkerSpawner>(); for (int s = 0; s < spawners.Length; ++s) { spawners[s].enabled = !spawners[s].enabled; } } GUI.enabled = true; }
/////////////////////////////////////////////////////////////////////////// public override void OnInspectorGUI() { WalkerSpawner walkerSpawner = (WalkerSpawner)target; DrawDefaultInspector(); // We only want to modify Scene data during play mode GUI.enabled = Application.isPlaying; if (GUILayout.Button("KillAll")) { WalkerManager.Get().KillAllWalkers(); } if (GUILayout.Button("Spawn Smal")) { SpawnSingle(walkerSpawner, false); } if (GUILayout.Button("Spawn Big")) { SpawnSingle(walkerSpawner, true); } if (GUILayout.Button("Spawn Multiple")) { for (int i = 0; i < 20; ++i) { SpawnMulti(walkerSpawner); } } if (GUILayout.Button(walkerSpawner.enabled ? "Stop Spawning" : "Resume Spawning")) { walkerSpawner.enabled = !walkerSpawner.enabled; } GUI.enabled = true; }
/////////////////////////////////////////////////////////////////////////// public static void SpawnSingle(WalkerSpawner spawner, bool isBig) { spawner.SpawnWalker(0.0f, isBig); }