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