This commit is contained in:
SoulliesOfficial
2025-11-14 01:40:00 -05:00
parent c09dae7783
commit 9a8eadef24
49 changed files with 245 additions and 190 deletions

View File

@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 8155160458c0f9f47807872413e96088
guid: 6e5d85e43b11d0544be47b1b97d6c083
folderAsset: yes
DefaultImporter:
externalObjects: {}

View File

@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 53ad5c109a3d9244eb28840b69d3abbb
guid: a18ff060dd48a1f49a5eba17d132923f
folderAsset: yes
DefaultImporter:
externalObjects: {}

View File

@@ -13,17 +13,36 @@ MonoBehaviour:
m_Name: CardData_Basic_ArmyOfTheDead
m_EditorClassIdentifier: Assembly-CSharp::Continentis.MainGame.Card.CardData
modName: Basic
categoryName:
className: ArmyOfTheDead
displayName: Card_Basic_ArmyOfTheDead_DisplayName
cardRarity: 40
cardType: 10
tags: []
keywords:
- TargetSelf
cardSprite: {fileID: 21300000, guid: 38466aa09b7b3dc468a47c6ca7251524, type: 3}
cardLayoutTags: []
functionText: Card_Basic_ArmyOfTheDead_FunctionText
cardDescription: Spawn 2 Skeleton Guards.
cardDescription:
baseWeight: 1
variableAttributes:
dictionaryList: []
dictionaryList:
- Key: TargetCount
Value: 0
index: 0
isKeyDuplicated: 0
- Key: SummonCount
Value: 2
index: 1
isKeyDuplicated: 0
- Key: StaminaCost
Value: 2
index: 2
isKeyDuplicated: 0
- Key: ManaCost
Value: 0
index: 3
isKeyDuplicated: 0
dividerPosProp: 0.5
originalAttributes:
dictionaryList: []
@@ -40,4 +59,5 @@ MonoBehaviour:
customDescriptions: []
prefabRefs: []
derivativeCardDataRefs: []
derivativeCharacterDataRefs: []
derivativeCharacterDataRefs:
- CharacterData_Basic_SkeletonGuard

View File

@@ -10,21 +10,40 @@ MonoBehaviour:
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 9a4129cdd7011ca46b83d8c17d9f3623, type: 3}
m_Name: CardData_Basic_WrathOfTheUnderworld
m_Name: CardData_Basic_GreatswordSweep
m_EditorClassIdentifier:
modName: Basic
className: WrathOfTheUnderworld
displayName: Card_Basic_WrathOfTheUnderworld_DisplayName
cardRarity: 50
categoryName:
className: GreatswordSweep
displayName: Card_Basic_GreatswordSweep_DisplayName
cardRarity: 30
cardType: 0
tags: []
keywords:
- TargetEnemies
cardSprite: {fileID: 21300000, guid: 37468a98d6a5a824d880a27afec07d29, type: 3}
functionText: Card_Basic_WrathOfTheUnderworld_FunctionText
cardLayoutTags: []
functionText: Card_Basic_GreatswordSweep_FunctionText
cardDescription: '$Keyword("Sorcery"), $Keyword("LifeSteal"): $Attribute("LifeStealPercent",
true, true), deal $Attribute("Damage") darkness damage 3 times to all enemies.'
baseWeight: 99999
baseWeight: 0
variableAttributes:
dictionaryList: []
dictionaryList:
- Key: TargetCount
Value: -1
index: 0
isKeyDuplicated: 0
- Key: Damage
Value: 8
index: 1
isKeyDuplicated: 0
- Key: StaminaCost
Value: 2
index: 2
isKeyDuplicated: 0
- Key: ManaCost
Value: 0
index: 3
isKeyDuplicated: 0
dividerPosProp: 0.5
originalAttributes:
dictionaryList: []

View File

@@ -13,19 +13,41 @@ MonoBehaviour:
m_Name: CardData_Basic_HellfireBlast
m_EditorClassIdentifier:
modName: Basic
categoryName:
className: HellfireBlast
displayName: Card_Basic_HellfireBlast_DisplayName
cardRarity: 30
cardType: 0
tags: []
keywords:
- TargetEnemies
- Magic
cardSprite: {fileID: 21300000, guid: 1b371965578c19a4c934f642b8a7420e, type: 3}
cardLayoutTags: []
functionText: Card_Basic_HellfireBlast_FunctionText
cardDescription: '$Keyword("Strike"): Deal $Attribute("Damage") fire & physics
damage. $Keyword("Arcane"): Apply $Attribute("HellfireStack") stacks of Hellfire
to the target.'
cardDescription:
baseWeight: 1
variableAttributes:
dictionaryList: []
dictionaryList:
- Key: TargetCount
Value: 1
index: 0
isKeyDuplicated: 0
- Key: Damage
Value: 18
index: 1
isKeyDuplicated: 0
- Key: BuffStack_Burn
Value: 2
index: 2
isKeyDuplicated: 0
- Key: StaminaCost
Value: 2
index: 3
isKeyDuplicated: 0
- Key: ManaCost
Value: 0
index: 4
isKeyDuplicated: 0
dividerPosProp: 0.5
originalAttributes:
dictionaryList: []

View File

@@ -0,0 +1,63 @@
%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_WrathOfUnderworld
m_EditorClassIdentifier:
modName: Basic
categoryName:
className: WrathOfUnderworld
displayName: Card_Basic_WrathOfUnderworld_DisplayName
cardRarity: 50
cardType: 0
keywords:
- TargetEnemies
- Magic
cardSprite: {fileID: 21300000, guid: 1b371965578c19a4c934f642b8a7420e, type: 3}
cardLayoutTags: []
functionText: Card_Basic_WrathOfUnderworld_FunctionText
cardDescription:
baseWeight: 1
variableAttributes:
dictionaryList:
- Key: TargetCount
Value: 1
index: 0
isKeyDuplicated: 0
- Key: Damage
Value: 5
index: 1
isKeyDuplicated: 0
- Key: StaminaCost
Value: 2
index: 2
isKeyDuplicated: 0
- Key: ManaCost
Value: 0
index: 3
isKeyDuplicated: 0
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: []

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 48406db0406bf2d4d851d2bccf85ea21
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: bc26238c26933b845b4efec43ee942ce
guid: 6d003cedcc9e4d1428b63909b5f72798
folderAsset: yes
DefaultImporter:
externalObjects: {}

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: d5624af2d49c1704e9ab5a65bc927398
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 407cb8d52d035514f94999dc568358ce
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -14,10 +14,14 @@ namespace Continentis.Mods.Basic.Cards
{
base.PlayEffect(targetList);
CommandGroup mainGroup = new CommandGroup(ExecutionMode.Parallel, new Cmd_Function(() =>
CommandGroup mainGroup = new CommandGroup(new Cmd_Function(() =>
{
CharacterData minion = cardData.GetDerivativeCharacterData(0);
CombatMainManager.Instance.characterController.AddCombatNPCs((minion, Fraction.Enemy), (minion, Fraction.Enemy));
for (int i = 0; i < GetAttribute("SummonCount"); i++)
{
CombatMainManager.Instance.characterController.AddCombatNPC((minion, Fraction.Enemy));
}
}));
return new List<CommandBase> { mainGroup };

View File

@@ -0,0 +1,36 @@
using System.Collections.Generic;
using Continentis.MainGame.Card;
using Continentis.MainGame.Character;
using Continentis.MainGame.Commands;
using SLSFramework.General;
using UnityEngine;
namespace Continentis.Mods.Basic.Cards
{
public class GreatswordSweep : CardLogicBase
{
protected override void SetUpLogicComponents()
{
AddLogicComponent<CardLogicComponent_Attack>();
}
protected override List<CommandBase> PlayEffect(List<CharacterBase> targetList)
{
CommandGroup mainGroup = new CommandGroup(new Cmd_PlayAnimation(user.characterView, "Attack"));
mainGroup.AddCommand(TargetListCommandGroup(targetList,
ExecutionMode.Parallel, ExecutionMode.Sequential,
new Cmd_ParamFunction<CharacterBase>(target =>
{
user.Attack(target, GetFinalDamage(target));
})));
return new List<CommandBase> { mainGroup };
}
public override void ApplyAttributeChangesByCard()
{
LogicComponent<CardLogicComponent_Attack>().SetDamage_Slash();
}
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: a75438b2c74d2ce4886a72b3a42c667d

View File

@@ -14,27 +14,14 @@ namespace Continentis.Mods.Basic.Cards
{
AddLogicComponent<CardLogicComponent_Attack>();
}
public override void TargetingEffect(CharacterBase target)
{
SetAttribute("DisplayHellfireStack", GetAttribute("HellfireStack"));
}
public override void UntargetingEffect()
{
SetAttribute("DisplayHellfireStack", GetAttribute("HellfireStack"));
}
protected override List<CommandBase> PlayEffect(List<CharacterBase> targetList)
{
base.PlayEffect(targetList);
CommandGroup mainGroup = TargetListCommandGroup(targetList,
new Cmd_ParamFunction<CharacterBase>(0.2f, target =>
{
user.Attack(target, GetFinalDamage(target));
Basic_Hellfire buff = new Basic_Hellfire(GetAttribute("HellfireStack"));
buff.Apply(target, user, this);
CreateCharacterBuff<Burn>(GetAttribute("BuffStack_Burn")).Apply(target, user, this);
}));
return new List<CommandBase> { mainGroup };
@@ -42,11 +29,7 @@ namespace Continentis.Mods.Basic.Cards
public override void ApplyAttributeChangesByCard()
{
int offsetFromStr = user.GetAttribute("OffsetFromStrength");
LogicComponent<CardLogicComponent_Attack>().SetDamage(offsetFromStr);
int offsetFromInt = user.GetAttribute("OffsetFromIntelligence");
SetVariableAttribute("HellfireStack", offsetFromInt);
LogicComponent<CardLogicComponent_Attack>().SetDamage_Strike();
}
}
}

View File

@@ -9,12 +9,11 @@ using UnityEngine;
namespace Continentis.Mods.Basic.Cards
{
public class WrathOfTheUnderworld : CardLogicBase
public class WrathOfUnderworld : CardLogicBase
{
protected override void SetUpLogicComponents()
{
AddLogicComponent<CardLogicComponent_Attack>();
AddLogicComponent<CardLogicComponent_LifeSteal>();
}
protected override List<CommandBase> PlayEffect(List<CharacterBase> targetList)
@@ -23,15 +22,14 @@ namespace Continentis.Mods.Basic.Cards
CommandGroup singleTargetGroup = new CommandGroup(ExecutionMode.Parallel,
new Cmd_PlayAnimation(user.characterView, "Attack"),
new Cmd_ParamFunction<CharacterBase>(0.5f, target =>
new Cmd_ParamFunction<CharacterBase>(0.4f, target =>
{
int hurt = user.Attack(target, GetFinalDamage(target)).hurtDamage;
LogicComponent<CardLogicComponent_LifeSteal>().LifeSteal(hurt);
user.Attack(target, GetFinalDamage(target));
})
);
CommandGroup mainGroup = TargetListCommandGroup(targetList, ExecutionMode.Parallel, ExecutionMode.Sequential,
singleTargetGroup, singleTargetGroup, singleTargetGroup);
singleTargetGroup, singleTargetGroup, singleTargetGroup, singleTargetGroup, singleTargetGroup);
return new List<CommandBase> { mainGroup };
}