更新
This commit is contained in:
8
Assets/Mods/Basic/Cards/Scripts/Mage/Attack.meta
Normal file
8
Assets/Mods/Basic/Cards/Scripts/Mage/Attack.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c44dbee688cf3a5478f9a37f1417300c
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
36
Assets/Mods/Basic/Cards/Scripts/Mage/Attack/ArcaneBolt.cs
Normal file
36
Assets/Mods/Basic/Cards/Scripts/Mage/Attack/ArcaneBolt.cs
Normal file
@@ -0,0 +1,36 @@
|
||||
using System.Collections.Generic;
|
||||
using Continentis.MainGame;
|
||||
using Continentis.MainGame.Card;
|
||||
using Continentis.MainGame.Character;
|
||||
using Continentis.MainGame.Commands;
|
||||
using Continentis.Mods.Basic.Buffs;
|
||||
using SLSUtilities.General;
|
||||
using UnityEngine;
|
||||
|
||||
namespace Continentis.Mods.Basic.Cards
|
||||
{
|
||||
public class ArcaneBolt : CardLogicBase
|
||||
{
|
||||
public override void SetUpLogicComponents()
|
||||
{
|
||||
AddLogicComponent<CardLogicComponent_Attack>();
|
||||
}
|
||||
|
||||
public override CommandGroup PlayEffect(List<CharacterBase> targetList)
|
||||
{
|
||||
return ForEachTarget(targetList, target => Cmd.Parallel(
|
||||
new Cmd_PlayAnimation(user.characterView, "Attack"),
|
||||
Cmd.Do(() =>
|
||||
{
|
||||
AttackContext mainCtx = AttackContext.Default(card);
|
||||
AttackTarget(target, GetTargetedFinalDamage(target, mainCtx), mainCtx);
|
||||
})
|
||||
));
|
||||
}
|
||||
|
||||
public override void ApplyAttributeChangesByCard()
|
||||
{
|
||||
LogicComponent<CardLogicComponent_Attack>().SetDamage_Magic();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: fffed369530a5324399bb7ba6b50ee4a
|
||||
@@ -0,0 +1,60 @@
|
||||
using System.Collections.Generic;
|
||||
using Continentis.MainGame;
|
||||
using Continentis.MainGame.Card;
|
||||
using Continentis.MainGame.Character;
|
||||
using Continentis.MainGame.Combat;
|
||||
using Continentis.MainGame.Commands;
|
||||
using Continentis.Mods.Basic.Buffs;
|
||||
using SLSUtilities.General;
|
||||
|
||||
namespace Continentis.Mods.Basic.Cards
|
||||
{
|
||||
/// <summary>
|
||||
/// 链式闪电:对主目标造成雷(Storm)属性伤害。
|
||||
/// 若任意敌方角色有感电(Shocked)Buff,则对这些角色额外执行一次伤害。
|
||||
/// </summary>
|
||||
public class ChainLightning : CardLogicBase
|
||||
{
|
||||
private AttackContext StormCtx => AttackContext.Default(card)
|
||||
.WithDamageKeywords(CardKeywords.Storm);
|
||||
|
||||
public override void SetUpLogicComponents()
|
||||
{
|
||||
AddLogicComponent<CardLogicComponent_Attack>();
|
||||
}
|
||||
|
||||
public override CommandGroup PlayEffect(List<CharacterBase> targetList)
|
||||
{
|
||||
CharacterBase mainTarget = targetList[0];
|
||||
|
||||
// 获取所有敌方角色
|
||||
List<CharacterBase> allEnemies = CombatMainManager.Instance.characterController.GetAllEnemies(user);
|
||||
|
||||
return Cmd.Sequential(
|
||||
new Cmd_PlayAnimation(user.characterView, "Attack"),
|
||||
Cmd.Do(() =>
|
||||
{
|
||||
// 对主目标造成雷属性伤害
|
||||
AttackTarget(mainTarget, GetTargetedFinalDamage(mainTarget, StormCtx), StormCtx);
|
||||
}),
|
||||
Cmd.Do(() =>
|
||||
{
|
||||
// 检查所有敌人,对有Shocked buff的目标额外执行一次伤害
|
||||
foreach (CharacterBase enemy in allEnemies)
|
||||
{
|
||||
if (enemy.combatBuffSubmodule.HasBuff<Shocked>())
|
||||
{
|
||||
// 使用相同的Storm context造成额外伤害
|
||||
AttackTarget(enemy, GetTargetedFinalDamage(enemy, StormCtx), StormCtx);
|
||||
}
|
||||
}
|
||||
})
|
||||
);
|
||||
}
|
||||
|
||||
public override void ApplyAttributeChangesByCard()
|
||||
{
|
||||
LogicComponent<CardLogicComponent_Attack>().SetDamage_Magic();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8a22bd19c1b959043bf6e5ed061ac546
|
||||
8
Assets/Mods/Basic/Cards/Scripts/Mage/Obsolete.meta
Normal file
8
Assets/Mods/Basic/Cards/Scripts/Mage/Obsolete.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 377fa3fb8c904ab489781b0843cd42b3
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -4,7 +4,7 @@ using Continentis.MainGame.Card;
|
||||
using Continentis.MainGame.Character;
|
||||
using Continentis.MainGame.Commands;
|
||||
using Continentis.Mods.Basic.Buffs;
|
||||
using SLSFramework.General;
|
||||
using SLSUtilities.General;
|
||||
|
||||
namespace Continentis.Mods.Basic
|
||||
{
|
||||
@@ -3,7 +3,7 @@ using Continentis.MainGame.Card;
|
||||
using Continentis.MainGame.Character;
|
||||
using Continentis.MainGame.Commands;
|
||||
using Continentis.Mods.Basic.Buffs;
|
||||
using SLSFramework.General;
|
||||
using SLSUtilities.General;
|
||||
|
||||
namespace Continentis.Mods.Basic.Cards
|
||||
{
|
||||
@@ -3,7 +3,7 @@ using Continentis.MainGame;
|
||||
using Continentis.MainGame.Card;
|
||||
using Continentis.MainGame.Character;
|
||||
using Continentis.MainGame.Commands;
|
||||
using SLSFramework.General;
|
||||
using SLSUtilities.General;
|
||||
|
||||
namespace Continentis.Mods.Basic.Cards
|
||||
{
|
||||
@@ -2,7 +2,7 @@ using System.Collections.Generic;
|
||||
using Continentis.MainGame.Card;
|
||||
using Continentis.MainGame.Character;
|
||||
using Continentis.MainGame.Commands;
|
||||
using SLSFramework.General;
|
||||
using SLSUtilities.General;
|
||||
|
||||
namespace Continentis.Mods.Basic.Cards
|
||||
{
|
||||
@@ -2,7 +2,7 @@ using System.Collections.Generic;
|
||||
using Continentis.MainGame.Card;
|
||||
using Continentis.MainGame.Character;
|
||||
using Continentis.MainGame.Commands;
|
||||
using SLSFramework.General;
|
||||
using SLSUtilities.General;
|
||||
|
||||
namespace Continentis.Mods.Basic.Cards
|
||||
{
|
||||
@@ -3,7 +3,7 @@ using Continentis.MainGame.Card;
|
||||
using Continentis.MainGame.Character;
|
||||
using Continentis.MainGame.Commands;
|
||||
using Continentis.Mods.Basic.Buffs;
|
||||
using SLSFramework.General;
|
||||
using SLSUtilities.General;
|
||||
|
||||
namespace Continentis.Mods.Basic.Cards
|
||||
{
|
||||
@@ -2,7 +2,7 @@ using System.Collections.Generic;
|
||||
using Continentis.MainGame.Card;
|
||||
using Continentis.MainGame.Character;
|
||||
using Continentis.MainGame.Commands;
|
||||
using SLSFramework.General;
|
||||
using SLSUtilities.General;
|
||||
|
||||
namespace Continentis.Mods.Basic.Cards
|
||||
{
|
||||
8
Assets/Mods/Basic/Cards/Scripts/Mage/Power.meta
Normal file
8
Assets/Mods/Basic/Cards/Scripts/Mage/Power.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ca074715f9a9eda4784881d3e2569711
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -3,7 +3,7 @@ using Continentis.MainGame.Card;
|
||||
using Continentis.MainGame.Character;
|
||||
using Continentis.MainGame.Commands;
|
||||
using Continentis.Mods.Basic.Buffs;
|
||||
using SLSFramework.General;
|
||||
using SLSUtilities.General;
|
||||
|
||||
namespace Continentis.Mods.Basic.Cards
|
||||
{
|
||||
@@ -14,9 +14,8 @@ namespace Continentis.Mods.Basic.Cards
|
||||
return Cmd.Sequential(
|
||||
new Cmd_PlayAnimation(user.characterView, "Skill"),
|
||||
Cmd.Do(() =>
|
||||
CreateCharacterBuff<Buffs.ConcentratedSpellcasting>(GetAttribute("BuffStack_ConcentratedSpellcasting"))
|
||||
.Apply(user, user, this)
|
||||
)
|
||||
CreateCharacterBuff<Buffs.ConcentratedSpellcasting>(
|
||||
GetAttribute("Buff_ConcentratedSpellcasting_Stack")).Apply(user, user, this))
|
||||
);
|
||||
}
|
||||
}
|
||||
8
Assets/Mods/Basic/Cards/Scripts/Mage/Skill.meta
Normal file
8
Assets/Mods/Basic/Cards/Scripts/Mage/Skill.meta
Normal file
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 18117d1982ce0314ba2bd607911c9924
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -3,7 +3,7 @@ using Continentis.MainGame.Card;
|
||||
using Continentis.MainGame.Character;
|
||||
using Continentis.MainGame.Commands;
|
||||
using Continentis.Mods.Basic.Buffs;
|
||||
using SLSFramework.General;
|
||||
using SLSUtilities.General;
|
||||
|
||||
namespace Continentis.Mods.Basic.Cards
|
||||
{
|
||||
@@ -13,11 +13,11 @@ namespace Continentis.Mods.Basic.Cards
|
||||
{
|
||||
return ForEachTarget(targetList, target => Cmd.Parallel(
|
||||
new Cmd_PlayAnimation(user.characterView, "Skill"),
|
||||
Cmd.After(0.1f, () =>
|
||||
Cmd.Do(() =>
|
||||
{
|
||||
if (target.combatBuffSubmodule.TryGetBuff(out Burn burn))
|
||||
{
|
||||
int stacksToAdd = burn.unitedStackSubmodule.stackAmount * GetAttribute("BuffStackAmplifier_Burn");
|
||||
int stacksToAdd = burn.unitedStackSubmodule.stackAmount * GetAttribute("Buff_Burn_StackAmplifier");
|
||||
burn.unitedStackSubmodule.AddStack(stacksToAdd);
|
||||
}
|
||||
})
|
||||
Reference in New Issue
Block a user