This commit is contained in:
SoulliesOfficial
2025-10-24 09:11:22 -04:00
parent 61a397dd4c
commit 76157e3cb1
329 changed files with 8609 additions and 4549 deletions

View File

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

View File

@@ -0,0 +1,45 @@
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 AblazeInPurgatory : CardLogicBase
{
public override void TargetingEffect(CharacterBase target)
{
SetAttribute("DisplayHellfireStack", GetAttribute("HellfireStack"));
}
public override void UntargetingEffect()
{
SetAttribute("DisplayHellfireStack", GetAttribute("HellfireStack"));
}
protected override CommandBase PlayEffect(List<CharacterBase> targetList)
{
base.PlayEffect(targetList);
CommandGroup mainGroup = TargetListCommandGroup(targetList, ExecutionMode.Parallel, ExecutionMode.Parallel,
new Cmd_ParamFunction<CharacterBase>(0.2f, target =>
{
Debug.Log(target.data.className + " is ablaze in purgatory!");
Basic_Hellfire buff = new Basic_Hellfire(GetAttribute("HellfireStack"));
buff.Apply(target, user, this);
}));
return mainGroup;
}
public override void ApplyAttributeChangesByCard()
{
int offsetFromInt = user.GetAttribute("OffsetFromIntelligence");
SetVariableAttribute("HellfireStack", offsetFromInt);
}
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 9785c79f83b4b9d4baa2d261f06ee45d

View File

@@ -0,0 +1,44 @@
%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_AblazeInPurgatory
m_EditorClassIdentifier:
modName: Basic
className: AblazeInPurgatory
displayName: Card_Basic_AblazeInPurgatory_DisplayName
cardRarity: 30
cardType: 10
tags: []
cardSprite: {fileID: 21300000, guid: 28e24068cd6a78b448d1bf09241b6905, type: 3}
functionText: Card_Basic_AblazeInPurgatory_FunctionText
cardDescription: $Keyword("Arcane"), apply $Attribute("HellfireStack") stacks of
Hellfire to all enemy targets.
baseWeight: 1
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: []

View File

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

View File

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

View File

@@ -0,0 +1,26 @@
using System.Collections.Generic;
using Continentis.MainGame.Card;
using Continentis.MainGame.Character;
using Continentis.MainGame.Combat;
using Continentis.MainGame.Commands;
using SLSFramework.General;
using UnityEngine;
namespace Continentis.Mods.Basic.Cards
{
public class ArmyOfTheDead : CardLogicBase
{
protected override CommandBase PlayEffect(List<CharacterBase> targetList)
{
base.PlayEffect(targetList);
CommandGroup mainGroup = new CommandGroup(ExecutionMode.Parallel, new Cmd_Function(() =>
{
CharacterData minion = cardData.GetDerivativeCharacterData(0);
CombatMainManager.Instance.characterController.AddCombatNPCs((minion, Fraction.Enemy), (minion, Fraction.Enemy));
}));
return mainGroup;
}
}
}

View File

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

View File

@@ -0,0 +1,43 @@
%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_ArmyOfTheDead
m_EditorClassIdentifier: Assembly-CSharp::Continentis.MainGame.Card.CardData
modName: Basic
className: ArmyOfTheDead
displayName: Card_Basic_ArmyOfTheDead_DisplayName
cardRarity: 40
cardType: 10
tags: []
cardSprite: {fileID: 21300000, guid: 38466aa09b7b3dc468a47c6ca7251524, type: 3}
functionText: Card_Basic_ArmyOfTheDead_FunctionText
cardDescription: Spawn 2 Skeleton Guards.
baseWeight: 1
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: []

View File

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

View File

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

View File

@@ -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_HellfireBlast
m_EditorClassIdentifier:
modName: Basic
className: HellfireBlast
displayName: Card_Basic_HellfireBlast_DisplayName
cardRarity: 30
cardType: 0
tags: []
cardSprite: {fileID: 21300000, guid: 1b371965578c19a4c934f642b8a7420e, type: 3}
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.'
baseWeight: 1
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: []

View File

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

View File

@@ -0,0 +1,52 @@
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 HellfireBlast : CardLogicBase
{
protected override void SetUpLogicComponents()
{
AddLogicComponent<CardLogicComponent_Attack>();
}
public override void TargetingEffect(CharacterBase target)
{
SetAttribute("DisplayHellfireStack", GetAttribute("HellfireStack"));
}
public override void UntargetingEffect()
{
SetAttribute("DisplayHellfireStack", GetAttribute("HellfireStack"));
}
protected override 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);
}));
return mainGroup;
}
public override void ApplyAttributeChangesByCard()
{
int offsetFromStr = user.GetAttribute("OffsetFromStrength");
LogicComponent<CardLogicComponent_Attack>().SetDamage(offsetFromStr);
int offsetFromInt = user.GetAttribute("OffsetFromIntelligence");
SetVariableAttribute("HellfireStack", offsetFromInt);
}
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 5a31506bee1e6de4882180f399c6a316

View File

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

View File

@@ -0,0 +1,43 @@
%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_HellfireBrand
m_EditorClassIdentifier: Assembly-CSharp::Continentis.MainGame.Card.CardData
modName: Basic
className: HellfireBlast
displayName: Card_Basic_HellfireBlast_DisplayName
cardRarity: 0
cardType: 0
tags: []
cardSprite: {fileID: 0}
functionText: Card_Basic_HellfireBlast_FunctionText
cardDescription:
baseWeight: 1
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: []

View File

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

View File

@@ -0,0 +1,16 @@
using UnityEngine;
public class HellfireBrand : MonoBehaviour
{
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Start()
{
}
// Update is called once per frame
void Update()
{
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 102fb406dd495f14b9441687aebc4462

View File

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

View File

@@ -0,0 +1,44 @@
%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_NecromanticInfusion
m_EditorClassIdentifier:
modName: Basic
className: NecromanticInfusion
displayName: Card_Basic_NecromanticInfusion_DisplayName
cardRarity: 40
cardType: 10
tags: []
cardSprite: {fileID: 21300000, guid: 4319eef242cf5a94cace1528f74bfe42, type: 3}
functionText: Card_Basic_NecromanticInfusion_FunctionText
cardDescription: $Keyword("Exhaust"), Apply 50% Lifesteal amplification to all
allies.
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: []

View File

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

View File

@@ -0,0 +1,27 @@
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 NecromanticInfusion : CardLogicBase
{
protected override CommandBase PlayEffect(List<CharacterBase> targetList)
{
base.PlayEffect(targetList);
CommandGroup mainGroup = TargetListCommandGroup(targetList, ExecutionMode.Parallel, ExecutionMode.Parallel,
new Cmd_ParamFunction<CharacterBase>(0.2f, target =>
{
Basic_SoulAbsorption buff = new Basic_SoulAbsorption(50);
buff.Apply(target, user, this);
}));
return mainGroup;
}
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 45fc6635536539b4eaeba839b4816238

View File

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

View File

@@ -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: []

View File

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

View File

@@ -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();
}
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 49fc9f9a93733cd409519d499531a199

View File

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

View File

@@ -0,0 +1,44 @@
%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_WrathOfTheUnderworld
m_EditorClassIdentifier:
modName: Basic
className: WrathOfTheUnderworld
displayName: Card_Basic_WrathOfTheUnderworld_DisplayName
cardRarity: 50
cardType: 0
tags: []
cardSprite: {fileID: 21300000, guid: 37468a98d6a5a824d880a27afec07d29, type: 3}
functionText: Card_Basic_WrathOfTheUnderworld_FunctionText
cardDescription: '$Keyword("Sorcery"), $Keyword("LifeSteal"): $Attribute("LifeStealPercent",
true, true), deal $Attribute("Damage") darkness damage 3 times to all enemies.'
baseWeight: 99999
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: []

View File

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

View File

@@ -0,0 +1,44 @@
using System.Collections.Generic;
using System.Linq;
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 WrathOfTheUnderworld : CardLogicBase
{
protected override void SetUpLogicComponents()
{
AddLogicComponent<CardLogicComponent_Attack>();
AddLogicComponent<CardLogicComponent_LifeSteal>();
}
protected override CommandBase PlayEffect(List<CharacterBase> targetList)
{
base.PlayEffect(targetList);
CommandGroup singleTargetGroup = new CommandGroup(ExecutionMode.Parallel,
new Cmd_PlayAnimation(user.characterView, "Attack"),
new Cmd_ParamFunction<CharacterBase>(0.5f, target =>
{
int hurt = user.Attack(target, GetFinalDamage(target));
LogicComponent<CardLogicComponent_LifeSteal>().LifeSteal(hurt);
})
);
CommandGroup mainGroup = TargetListCommandGroup(targetList, ExecutionMode.Parallel, ExecutionMode.Sequential,
singleTargetGroup, singleTargetGroup, singleTargetGroup);
return mainGroup;
}
public override void ApplyAttributeChangesByCard()
{
LogicComponent<CardLogicComponent_Attack>().SetDamage_Sorcery();
}
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 7e60cfc491b0a1243a5457e974ca619c