46 lines
1.5 KiB
C#
46 lines
1.5 KiB
C#
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);
|
|
}
|
|
|
|
}
|
|
}
|