using cfg.SkillCfg; using Framework; using UnityEditor; namespace SkillEditor { public class EmitSubBulletHandler : EmitBulletHandler { public EmitSubBulletHandler(DataSkill skillConfig): base(skillConfig) { } public override void HandleAction(SkillActionClip clip) { if (clip == null) { ShowErrorMessage("无效的技能逻辑"); return; } DrawWarningLabel("如果没有想要的子弹,需要先去Bullet表中进行配置"); DrawWarningLabel("id改为提前预先配置,然后通过index进行索引"); DrawBulletInfo(clip, _skillConfig); _DrawEffectInfo(clip); } private void _DrawEffectInfo(SkillActionClip clip) { clip.intParam1 = EditorGUILayout.IntField("特效ID", clip.intParam1); var effectConfig = EditorTableManager.instance.tables.EffectConfig.GetOrDefault(clip.intParam1); if (effectConfig == null) { EditorGUILayout.HelpBox("无效的特效ID", MessageType.Error); return; } EditorGUILayout.LabelField("特效名字:", effectConfig.PrefabPath); EditorGUILayout.LabelField("特效持续时间:", effectConfig.ExistTime.ToString("F2")); clip.floatParam1 = EditorGUILayout.FloatField("分离导弹发射时间", clip.floatParam1); } } }