Пример #1
0
    ///////////////////////////////////////////////////////////////////////////

    public static void SpawnMulti(WalkerSpawner spawner)
    {
        for (int i = 0; i < 20; ++i)
        {
            spawner.SpawnWalker(i / 20.0f, (i == 0));
        }
    }
Пример #2
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;
    }
Пример #4
0
    ///////////////////////////////////////////////////////////////////////////

    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;
    }
Пример #5
0
    ///////////////////////////////////////////////////////////////////////////

    public static void SpawnSingle(WalkerSpawner spawner, bool isBig)
    {
        spawner.SpawnWalker(0.0f, isBig);
    }