public void EditUnit() { if (AI.Unit == null) { AI.Unit = AI.GetComponent <Unit> (); } #region Edit Unit EnableEditUnit = EditorGUILayout.BeginToggleGroup("Edit Unit : " + AI.Unit.Name, EnableEditUnit); if (EnableEditUnit) { //EditBasicUnitProperty (); AI.Unit = (Unit)EditorCommon.EditBasicUnitProperty(AI.Unit); //Edit Start AI AbstractAI[] AllAI = AI.gameObject.GetComponents <AbstractAI> (); AI.Unit.StartAIName = EditorCommon.EditPopup("Unit Start AI:", AI.Unit.StartAIName, AllAI.Select(x => x.Name).ToArray()); //Edit Idle Data if (EnableEditIdleData = EditorGUILayout.BeginToggleGroup("---Edit Idle Data", EnableEditIdleData)) { AI.Unit.IdleData = EditorCommon.EditIdleDataArray(AI.Unit.gameObject, AI.Unit.IdleData); } EditorGUILayout.EndToggleGroup(); //Edit rotate data if (EnableEditRotateData = EditorGUILayout.BeginToggleGroup("---Edit Rotate Data", EnableEditRotateData)) { AI.Unit.RotateData = EditorCommon.EditRotateDataArray(AI.Unit.gameObject, AI.Unit.RotateData); } EditorGUILayout.EndToggleGroup(); //Edit Move Data if (EnableEditMoveData = EditorGUILayout.BeginToggleGroup("---Edit Move Data", EnableEditMoveData)) { AI.Unit.MoveData = EditorCommon.EditMoveDataArray(AI.Unit.gameObject, AI.Unit.MoveData); } EditorGUILayout.EndToggleGroup(); //Edit attack data if (EnableEditAttackData = EditorGUILayout.BeginToggleGroup("---Edit Attack Data---", EnableEditAttackData)) { AI.Unit.AttackData = EditorCommon.EditAttackDataArray(AI.Unit, AI.Unit.AttackData); } EditorGUILayout.EndToggleGroup(); //Edit Effect Data if (EnableEditEffectData = EditorGUILayout.BeginToggleGroup("---Edit Effect Data---", EnableEditEffectData)) { AI.Unit.EffectData = EditorCommon.EditEffectData(AI.Unit.EffectData); } EditorGUILayout.EndToggleGroup(); //Edit Decal data if (EnableEditDecalData = EditorGUILayout.BeginToggleGroup("---Edit Decal Data---", EnableEditDecalData)) { AI.Unit.DecalData = EditorCommon.EditDecalData(AI.Unit.DecalData); } EditorGUILayout.EndToggleGroup(); //Edit receive damage data: if (EnableEditReceiveDamageData = EditorGUILayout.BeginToggleGroup("---Edit ReceiveDamage Data---", EnableEditReceiveDamageData)) { AI.Unit.ReceiveDamageData = EditorCommon.EditReceiveDamageData(AI.Unit, AI.Unit.ReceiveDamageData); } EditorGUILayout.EndToggleGroup(); //Edit death data if (EnableEditDeathData = EditorGUILayout.BeginToggleGroup("---Edit Death Data---", EnableEditDeathData)) { AI.Unit.DeathData = EditorCommon.EditDeathData(AI.Unit, AI.Unit.DeathData); } EditorGUILayout.EndToggleGroup(); //Edit audio data if (EnableEditAudioData = EditorGUILayout.BeginToggleGroup("---Edit Audio Data---", EnableEditAudioData)) { AI.Unit.AudioData = EditorCommon.EditAudioData(AI.Unit, AI.Unit.AudioData); } EditorGUILayout.EndToggleGroup(); } EditorGUILayout.EndToggleGroup(); #endregion }
public override void OnInspectorGUI() { Predator3rdPersonalUnit PlayerPredatorUnit = this.target as Predator3rdPersonalUnit; if (UseBaseInspector = EditorGUILayout.BeginToggleGroup("Base Inspector", UseBaseInspector)) { base.OnInspectorGUI(); } EditorGUILayout.EndToggleGroup(); if (UseAdvancedInspector = EditorGUILayout.BeginToggleGroup("Advanced Inspector", UseAdvancedInspector)) { PlayerPredatorUnit = (Predator3rdPersonalUnit)EditorCommon.EditBasicUnitProperty(PlayerPredatorUnit); if (GUILayout.Button("Save change")) { EditorUtility.SetDirty(PlayerPredatorUnit.gameObject); } //Edit Idle Data if (EnableEditIdleData = EditorGUILayout.BeginToggleGroup("---Edit Idle Data", EnableEditIdleData)) { PlayerPredatorUnit.IdleData = EditorCommon.EditIdleData(PlayerPredatorUnit.gameObject, PlayerPredatorUnit.IdleData); } EditorGUILayout.EndToggleGroup(); //Edit Move Data if (EnableEditMoveData = EditorGUILayout.BeginToggleGroup("---Edit Move Data", EnableEditMoveData)) { PlayerPredatorUnit.MoveData = EditorCommon.EditMoveData(PlayerPredatorUnit.gameObject, PlayerPredatorUnit.MoveData); } EditorGUILayout.EndToggleGroup(); //Edit Jump Data if (EnableEditJumpData = EditorGUILayout.BeginToggleGroup("---Edit Jump Data", EnableEditJumpData)) { PlayerPredatorUnit.JumpData = EditJumpData(PlayerPredatorUnit.gameObject, PlayerPredatorUnit.JumpData); } EditorGUILayout.EndToggleGroup(); //Edit PredatorPlayerAttackData array if (EnableEditAttackData = EditorGUILayout.BeginToggleGroup("---Edit Predator Attack Data", EnableEditAttackData)) { PlayerPredatorUnit.PredatorAttackData = EditPredatorPlayerAttackDataArray(PlayerPredatorUnit, PlayerPredatorUnit.PredatorAttackData); } EditorGUILayout.EndToggleGroup(); //Edit attack basic variables if (EnableEditCombatData = EditorGUILayout.BeginToggleGroup("---Edit attack variables", EnableEditCombatData)) { PlayerPredatorUnit.RushRadius = EditorGUILayout.FloatField(new GUIContent("Rush radius:", "Inside rush radius, predator rush to the target"), PlayerPredatorUnit.RushRadius); // PlayerPredatorUnit.AttackAnimationLayer = EditorGUILayout.IntField ("Attack animation layer:", PlayerPredatorUnit.AttackAnimationLayer); PlayerPredatorUnit.CombatCoolDown = EditorGUILayout.FloatField("common combat cooldown:", PlayerPredatorUnit.CombatCoolDown); //Edit attack animation array // if (EnableEditAttackAnimation = EditorGUILayout.BeginToggleGroup (" ----- Edit attack animation string array ----", EnableEditAttackAnimation)) { // PlayerPredatorUnit.AttackAnimations = EditorCommon.EditStringArray ("All attack animation:", // PlayerPredatorUnit.AttackAnimations, // EditorCommon.GetAnimationNames (PlayerPredatorUnit.gameObject)); // } // EditorGUILayout.EndToggleGroup (); //Edit default combat - left claw if (EnableEditDefaultLeftClawCombat = EditorGUILayout.BeginToggleGroup(" ---Edit default combat : left claw", EnableEditDefaultLeftClawCombat)) { PlayerPredatorUnit.DefaultCombat_LeftClaw = Editor_Predator3rdPersonalUnit.EditCombat( "Edit default left claw combat:", PlayerPredatorUnit, PlayerPredatorUnit.DefaultCombat_LeftClaw); PlayerPredatorUnit.DefaultCombat_LeftClaw.userInput = UserInputType.Button_Left_Claw_Tap; } EditorGUILayout.EndToggleGroup(); //Edit default combat - right claw if (EnableEditDefaultRightClawCombat = EditorGUILayout.BeginToggleGroup(" ---Edit default combat : right claw", EnableEditDefaultRightClawCombat)) { PlayerPredatorUnit.DefaultCombat_RightClaw = Editor_Predator3rdPersonalUnit.EditCombat( "Edit default right claw combat:", PlayerPredatorUnit, PlayerPredatorUnit.DefaultCombat_RightClaw); PlayerPredatorUnit.DefaultCombat_RightClaw.userInput = UserInputType.Button_Right_Claw_Tap; } EditorGUILayout.EndToggleGroup(); //Edit default combat - dual claw if (EnableEditDefaultDualClawCombat = EditorGUILayout.BeginToggleGroup(" ---Edit default combat : dual claw", EnableEditDefaultDualClawCombat)) { PlayerPredatorUnit.DefaultCombat_DualClaw = Editor_Predator3rdPersonalUnit.EditCombat( "Edit default dual claw combat:", PlayerPredatorUnit, PlayerPredatorUnit.DefaultCombat_DualClaw); PlayerPredatorUnit.DefaultCombat_DualClaw.userInput = UserInputType.Button_Dual_Claw_Tap; } EditorGUILayout.EndToggleGroup(); //Edit ComboCombat Data if (EnableEditComboCombatData = EditorGUILayout.BeginToggleGroup(" ---Edit ComboCombat Data---", EnableEditComboCombatData)) { PlayerPredatorUnit.ComboCombat = Editor_Predator3rdPersonalUnit.EditComboCombatData( PlayerPredatorUnit, PlayerPredatorUnit.ComboCombat); } EditorGUILayout.EndToggleGroup(); } EditorGUILayout.EndToggleGroup(); //Edit Effect Data if (EnableEditEffectData = EditorGUILayout.BeginToggleGroup("---Edit Effect Data---", EnableEditEffectData)) { PlayerPredatorUnit.EffectData = EditPlayerEffectDataArray(PlayerPredatorUnit.gameObject, PlayerPredatorUnit.EffectData); } EditorGUILayout.EndToggleGroup(); //Edit Audio Data if (EnableEditAudioData = EditorGUILayout.BeginToggleGroup("---Edit Audio Data---", EnableEditAudioData)) { PlayerPredatorUnit.AudioData = EditAudioDataArray(PlayerPredatorUnit.gameObject, PlayerPredatorUnit.AudioData); } EditorGUILayout.EndToggleGroup(); } EditorGUILayout.EndToggleGroup(); }