zxl
/
CTT
forked from Cal/CTT
1
0
Fork 0

modifier配置增加Tag

develope
Cal 2021-04-10 22:49:00 +08:00
parent c1e8c8a005
commit 9818b1307d
9 changed files with 73 additions and 5 deletions

View File

@ -40,7 +40,16 @@ namespace ET
var _target = skillSender.caster.GetComponent<TargetableUnitComponent>().currTarget; var _target = skillSender.caster.GetComponent<TargetableUnitComponent>().currTarget;
await TimerComponent.Instance.WaitAsync(skillOption.time); await TimerComponent.Instance.WaitAsync(skillOption.time);
var targetComponent = skillSender.caster.GetComponent<TargetableUnitComponent>(); var targetComponent = skillSender.caster.GetComponent<TargetableUnitComponent>();
if (targetComponent == null) return; if (!_target)
{
Log.Error($"taget is null where id is {target?.Id}");
return;
}
if (!skillSender.caster)
{
Log.Error($"caster is null where id is {target?.Id}");
return;
}
var oldTarget = targetComponent.currTarget; var oldTarget = targetComponent.currTarget;
targetComponent.currTarget = _target; targetComponent.currTarget = _target;
foreach (var Id in skillOption.modifierIds) foreach (var Id in skillOption.modifierIds)

View File

@ -18,6 +18,16 @@ namespace ET
return; return;
var target = skillSender.caster.GetComponent<TargetableUnitComponent>().currTarget; var target = skillSender.caster.GetComponent<TargetableUnitComponent>().currTarget;
await TimerComponent.Instance.WaitAsync((long)delayTime * 1000); await TimerComponent.Instance.WaitAsync((long)delayTime * 1000);
if (!target)
{
Log.Error($"taget is null where id is {target?.Id}");
return;
}
if (!skillSender.caster)
{
Log.Error($"caster is null where id is {target?.Id}");
return;
}
var targetComponent = skillSender.caster.GetComponent<TargetableUnitComponent>(); var targetComponent = skillSender.caster.GetComponent<TargetableUnitComponent>();
var oldTarget = targetComponent.currTarget; var oldTarget = targetComponent.currTarget;
targetComponent.currTarget = target; targetComponent.currTarget = target;

View File

@ -538,7 +538,6 @@ namespace ET
Log.Error(e); Log.Error(e);
} }
} }
private static List<(ModifierEventCondition, ModifierLogic)> needRemoveModifierSet = new List<(ModifierEventCondition, ModifierLogic)>();
public static void RemoveModifier(this ModifierContainerComponent self, ModifierLogic modifierLogic) public static void RemoveModifier(this ModifierContainerComponent self, ModifierLogic modifierLogic)
{ {
try try
@ -585,7 +584,8 @@ namespace ET
self.timeDic.Remove(modifierId); self.timeDic.Remove(modifierId);
needRemoveModifierSet.Clear(); using var listComponent = ListComponent<(ModifierEventCondition, ModifierLogic)>.Create();
var needRemoveModifierSet = listComponent.List;
foreach (var kv in self.modifierOptionByConditionDic.GetDictionary()) foreach (var kv in self.modifierOptionByConditionDic.GetDictionary())
{ {
foreach (var _logic in kv.Value) foreach (var _logic in kv.Value)

View File

@ -211,6 +211,38 @@ namespace Cal
, ,
, ,
} }
public enum ModifierTag
{
=0,
=1,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
}
[Flags] [Flags]
public enum ModifierAttribute public enum ModifierAttribute
{ {

View File

@ -144,11 +144,15 @@
HpRecover = 1044, HpRecover = 1044,
HpRecoverBase = HpRecover * 10 + 1, HpRecoverBase = HpRecover * 10 + 1,
HpRecoverAdd = HpRecover * 10 + 2, HpRecoverAdd = HpRecover * 10 + 2,
/// <summary>
/// 物理加成
/// </summary>
PhyDA = 1045, PhyDA = 1045,
PhyDABase = PhyDA * 10 + 1, PhyDABase = PhyDA * 10 + 1,
PhyDAAdd = PhyDA * 10 + 2, PhyDAAdd = PhyDA * 10 + 2,
/// <summary>
/// 精神加成
/// </summary>
MicDA = 1046, MicDA = 1046,
MicDABase = MicDA * 10 + 1, MicDABase = MicDA * 10 + 1,
MicDAAdd = MicDA * 10 + 2, MicDAAdd = MicDA * 10 + 2,

View File

@ -223,6 +223,8 @@ MonoBehaviour:
Value: 10000113 Value: 10000113
name: "\u62A4\u76FE" name: "\u62A4\u76FE"
levelList: 01000000 levelList: 01000000
tag: 2
immuneTag: 2
attribute: 8 attribute: 8
overlayType: 0 overlayType: 0
perOverlay: perOverlay:
@ -512,6 +514,8 @@ MonoBehaviour:
Value: 10000112 Value: 10000112
name: name:
levelList: 01000000 levelList: 01000000
tag: 0
immuneTag: 0
attribute: 8 attribute: 8
overlayType: 0 overlayType: 0
perOverlay: perOverlay:
@ -1863,6 +1867,8 @@ MonoBehaviour:
Value: 10000114 Value: 10000114
name: "\u53CD\u51FB" name: "\u53CD\u51FB"
levelList: 01000000 levelList: 01000000
tag: 0
immuneTag: 0
attribute: 8 attribute: 8
overlayType: 0 overlayType: 0
perOverlay: perOverlay:

View File

@ -155,6 +155,13 @@ namespace Cal
[LabelText("包括的等级"), PropertyOrder(3)] [LabelText("包括的等级"), PropertyOrder(3)]
public List<int> levelList = new List<int> { 1 }; public List<int> levelList = new List<int> { 1 };
[FoldoutGroup("属性")]
[LabelText("Tag"), PropertyOrder(4)]
public ModifierTag tag;
[FoldoutGroup("属性")]
[LabelText("免疫的Tag"), PropertyOrder(4)]
public ModifierTag immuneTag;
[FoldoutGroup("属性")] [FoldoutGroup("属性")]
[LabelText("属性"), PropertyOrder(4)] [LabelText("属性"), PropertyOrder(4)]
public ModifierAttribute attribute = ModifierAttribute.; public ModifierAttribute attribute = ModifierAttribute.;