12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- using System;
- using System.Collections;
- using System.Collections.Generic;
- using TrafficSimulation;
- using UnityEditor;
- using UnityEngine;
- public class CarSpawnManipulator : MonoBehaviour
- {
- private void Start()
- {
-
- }
- private void Update()
- {
-
- }
- }
- [CustomEditor(typeof(CarSpawnManipulator))]
- public class CarSpawnManipulatorEditor : Editor
- {
- private SpawnWatcher[] spawns;
- private int spawnRate = 2;
- private void OnEnable()
- {
- this.spawns = ((CarSpawnManipulator) target).GetComponentsInChildren<SpawnWatcher>();
- }
- public override void OnInspectorGUI()
- {
- EditorGUILayout.LabelField("Sets All Car Spawns in the Conditions!");
- //Debug.Log("Found Spawns: " + this.spawns.Length);
- if (GUILayout.Button("Position Y to 0", GUILayout.Width(256)))
- {
- SetPosY(0);
- }
- if (GUILayout.Button("BoxCollider Size (6,1,6)", GUILayout.Width(256)))
- {
- SetSize(10,10);
- }
- this.spawnRate = EditorGUILayout.IntSlider("Spawn Rate", this.spawnRate,0, 10);
- if (GUILayout.Button("Set Spawn Rate", GUILayout.Width(256)))
- {
- SetSpawnRate(spawnRate);
- }
- }
- private void SetSpawnRate(int rate)
- {
- CarSituationSpawner[] spawners = ((CarSpawnManipulator)target).GetComponentsInChildren<CarSituationSpawner>();
- foreach(CarSituationSpawner spawner in spawners)
- {
- spawner.spawnRate = rate;
- }
- }
- private void SetSize(float xVal, float yVal)
- {
- foreach (SpawnWatcher spawn in this.spawns)
- {
- spawn.gameObject.GetComponent<BoxCollider>().size = new Vector3(6, 1, 6);
- }
- }
- private void SetPosY(float value)
- {
- foreach(SpawnWatcher spawn in this.spawns)
- {
- spawn.gameObject.transform.position = new Vector3(spawn.gameObject.transform.position.x, value, spawn.gameObject.transform.position.z);
- }
- }
- }
|