继续
This commit is contained in:
@@ -0,0 +1,45 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!114 &11400000
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 9a4129cdd7011ca46b83d8c17d9f3623, type: 3}
|
||||
m_Name: CardData_Basic_SoulCleave
|
||||
m_EditorClassIdentifier:
|
||||
modName: Basic
|
||||
className: SoulCleave
|
||||
displayName: Card_Basic_SoulCleave_DisplayName
|
||||
cardRarity: 40
|
||||
cardType: 0
|
||||
tags: []
|
||||
cardSprite: {fileID: 21300000, guid: 2d851da5310713a4781f00abaa57e48e, type: 3}
|
||||
functionText: Card_Basic_SoulCleave_FunctionText
|
||||
cardDescription: '$Keyword("Strike"), $Keyword("LifeSteal"): $Attribute("LifeStealPercent",
|
||||
true, true), deal $Attribute("Damage") darkness & fire damage, it will explode
|
||||
2*stacks of Hellfire as extra damage.'
|
||||
baseWeight: 10
|
||||
variableAttributes:
|
||||
dictionaryList: []
|
||||
dividerPosProp: 0.5
|
||||
originalAttributes:
|
||||
dictionaryList: []
|
||||
dividerPosProp: 0.5
|
||||
runtimeCurrentAttributes:
|
||||
dictionaryList: []
|
||||
dividerPosProp: 0.5
|
||||
upgradeNode:
|
||||
sourceCard: {fileID: 0}
|
||||
isTerminalNode: 0
|
||||
isInfiniteUpgrade: 0
|
||||
maxUpgradeLevel: 0
|
||||
upgradeCards: []
|
||||
customDescriptions: []
|
||||
prefabRefs: []
|
||||
derivativeCardDataRefs: []
|
||||
derivativeCharacterDataRefs: []
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: aceffe41cc487054b80de681b48dc448
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,50 @@
|
||||
using System.Collections.Generic;
|
||||
using Continentis.MainGame.Card;
|
||||
using Continentis.MainGame.Character;
|
||||
using Continentis.MainGame.Commands;
|
||||
using Continentis.Mods.Basic.Buffs;
|
||||
using SLSFramework.General;
|
||||
using UnityEngine;
|
||||
|
||||
namespace Continentis.Mods.Basic.Cards
|
||||
{
|
||||
public class SoulCleave : CardLogicBase
|
||||
{
|
||||
protected override void SetUpLogicComponents()
|
||||
{
|
||||
AddLogicComponent<CardLogicComponent_Attack>();
|
||||
AddLogicComponent<CardLogicComponent_LifeSteal>();
|
||||
}
|
||||
|
||||
protected override CommandBase PlayEffect(List<CharacterBase> targetList)
|
||||
{
|
||||
base.PlayEffect(targetList);
|
||||
|
||||
CommandGroup mainGroup = TargetListCommandGroup(targetList,
|
||||
new Cmd_ParamFunction<CharacterBase>(0.2f, target =>
|
||||
{
|
||||
int hurt = user.Attack(target, GetFinalDamage(target));
|
||||
LogicComponent<CardLogicComponent_LifeSteal>().LifeSteal(hurt);
|
||||
|
||||
Basic_Hellfire hellfireBuff = target.combatBuffSubmodule.GetBuff<Basic_Hellfire>();
|
||||
hellfireBuff?.unitedStackSubmodule.ClearAllStacks();
|
||||
}));
|
||||
|
||||
return mainGroup;
|
||||
}
|
||||
|
||||
public override int GetFinalDamage(CharacterBase target, List<string> elementalTags = null)
|
||||
{
|
||||
int damage = base.GetFinalDamage(target, elementalTags);
|
||||
Basic_Hellfire hellfireBuff = target.combatBuffSubmodule.GetBuff<Basic_Hellfire>();
|
||||
int hellfireStack = hellfireBuff != null ? hellfireBuff.unitedStackSubmodule.stackAmount : 0;
|
||||
damage += hellfireStack * 2;
|
||||
return damage;
|
||||
}
|
||||
|
||||
public override void ApplyAttributeChangesByCard()
|
||||
{
|
||||
LogicComponent<CardLogicComponent_Attack>().SetDamage_Strike();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 49fc9f9a93733cd409519d499531a199
|
||||
Reference in New Issue
Block a user