Files
JJBB/Assets/Project/Script/Player/Impact/Impact_ModeMatPro.cs

49 lines
1.5 KiB
C#
Raw Normal View History

2024-08-23 15:49:34 +08:00
using GCGame.Table;
using UnityEngine;
/// <summary>
/// 模型材质属性相关修改
/// Effect.txt 表格扩展参数说明
/// Param1 EffectParam.txt中id值 身体材质属性相关配置
/// Param2 EffectParam.txt中id值 右武器材质属性相关配置
/// Param3 EffectParam.txt中id值 左武器材质属性相关配置
/// Param4 EffectParam.txt中id值 预留参数
///
/// EffectParams 参考ChangeMatPro
/// </summary>
public class Impact_ModeMatPro : ImpactEffectBase
{
private ChangeMatPro _materialPropertyMod;
public override EffectLogic.EffectType ImpactEffectType
{
get { return EffectLogic.EffectType.TYPE_CHANGMATPRO; }
}
public override void StartEffect()
{
base.StartEffect();
if (objCharacter != null && Data != null)
{
var paramid = Data.GetParamValuebyIndex(bodyPart);
var param = TableManager.GetEffectParamByID(paramid, 0);
if (param != null && _materialPropertyMod == null)
{
_materialPropertyMod = new ChangeMatPro(objCharacter, BodyToModelPart(bodyPart), param);
_materialPropertyMod.Start(param, Data.Duration);
}
}
}
public override void StopEffect()
{
base.StopEffect();
if (_materialPropertyMod != null)
_materialPropertyMod.StopEffect();
}
protected override void UpdateInherited()
{
if (_materialPropertyMod != null)
_materialPropertyMod.OnUpdate();
}
}