public override void OnInspectorGUI() { base.OnInspectorGUI(); var oldVerticalEnemyPath = EditorManager.verticalEnemyPath; EditorManager.verticalEnemyPath = CurrentVerticalEnemyPath(); if (oldVerticalEnemyPath != EditorManager.verticalEnemyPath) { InspectorEventSignals.DoSpawnEnemyInspectorUpdated(); } }
public override void OnInspectorGUI() { base.OnInspectorGUI(); var inspectedTarget = target as EnemyMissile; var oldSwitchDirCount = inspectedTarget.switchDirCount; if (!EditorManager.verticalEnemyPath) { inspectedTarget.switchDirCount = EditorGUILayout.IntSlider(new GUIContent( "Switch Dir Count", "The number of times an enemy missile switches its direction before going straight towards one of the cannons" ), inspectedTarget.switchDirCount, 0, 8); } if (oldSwitchDirCount != inspectedTarget.switchDirCount) { InspectorEventSignals.DoEnemySwitchDirCountUpdated(inspectedTarget.switchDirCount, inspectedTarget.gameObject); } }
protected override void Awake() { if (!SpawnEnemy.Ins.verticalEnemyPath) { float intervalCount = switchDirCount + 1; for (float i = intervalCount - 1; i > 0; --i) { path.Enqueue(new Vector3( Random.Range(ManageSceneSetup.Ins.spawnHorizontalRange.x, ManageSceneSetup.Ins.spawnHorizontalRange.y) , ManageSceneSetup.Ins.spawnVerticalRange.x + i / intervalCount * ManageSceneSetup.Ins.playFieldLength , ManageSceneSetup.Ins.playField.transform.position.z)); } } if (isFirstInstance && !SpawnEnemy.Ins.verticalEnemyPath) { isFirstInstance = false; InspectorEventSignals.DoEnemySwitchDirCountUpdated(switchDirCount, gameObject); } base.Awake(); }