zxl
/
CTT
forked from Cal/CTT
1
0
Fork 0
CTT/Server/Model/Game/Entity/Skill/Component/SkillSender.cs

65 lines
1.7 KiB
C#
Executable File

using Cal;
using System;
using System.Collections.Generic;
namespace ET
{
public interface ISkillSender
{
Unit caster { get; }
int skillConfigId { get; }
}
public class SkillSender : ISkillSender
{
private readonly Unit _caster;
private readonly int _skillConfigId;
public Unit caster => this._caster;
public int skillConfigId => this._skillConfigId;
public SkillSender(Unit caster1, int skillConfigId1)
{
this._caster = caster1;
this._skillConfigId = skillConfigId1;
}
public override string ToString()
{
return $"{caster?.Id} 技能逻辑为{skillConfigId}";
}
}
public class ModifierSkillSender : ISkillSender
{
private readonly Unit _caster;
private readonly Unit _target;
private readonly int _skillConfigId;
private readonly ModifierLogic _modifierLogic;
public Unit caster => this._caster;
/// <summary>
/// 附着者
/// </summary>
public Unit target => this._target;
public int skillConfigId => this._skillConfigId;
public ModifierLogic modifierLogic => this._modifierLogic;
public ModifierSkillSender(Unit caster, Unit target, int skillConfigId, ModifierLogic modifierId)
{
this._caster = caster;
this._target = target;
this._skillConfigId = skillConfigId;
this._modifierLogic = modifierId;
}
public override string ToString()
{
return $"{caster?.Id} 对 {target?.Id} 技能逻辑为{skillConfigId} modifierId = {this._modifierLogic?.modifierId}";
}
}
}