This commit is contained in:
SoulliesOfficial
2026-04-17 12:01:50 -04:00
parent dd2657573a
commit ac98ec3aef
438 changed files with 4505 additions and 428 deletions

View File

@@ -0,0 +1,28 @@
using System.Collections.Generic;
using Continentis.MainGame.Card;
using Continentis.MainGame.Character;
using Continentis.MainGame.Commands;
using SLSUtilities.General;
namespace Continentis.Mods.Basic.Cards
{
public class BattlefieldExperience : CardLogicBase
{
public override void SetUpLogicComponents()
{
AddLogicComponent<CardLogicComponent_GenerateCards>();
}
public override CommandGroup PlayEffect(List<CharacterBase> targetList)
{
return Cmd.Sequential(
new Cmd_PlayAnimation(user.characterView, "Skill"),
Cmd.Do(() =>
{
CardData tacticData = GetDerivativeCardData(0);
CardInstance.GenerateCardInstance(tacticData, user.team, "Hand");
})
);
}
}
}

View File

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

View File

@@ -0,0 +1,25 @@
using System.Collections.Generic;
using Continentis.MainGame.Card;
using Continentis.MainGame.Character;
using Continentis.MainGame.Commands;
using SLSUtilities.General;
namespace Continentis.Mods.Basic.Cards
{
public class BodyAsShield : CardLogicBase
{
public override void SetUpLogicComponents()
{
AddLogicComponent<CardLogicComponent_Protect>();
}
public override CommandGroup PlayEffect(List<CharacterBase> targetList)
{
return ForEachTarget(targetList, target => Cmd.Parallel(
new Cmd_PlayAnimation(user.characterView, "Skill"),
Cmd.Do(() => LogicComponent<CardLogicComponent_Protect>()
.GenerateProtection(user, target, GetAttribute("BuffCount_Protecting")))
));
}
}
}

View File

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

View File

@@ -0,0 +1,37 @@
using System.Collections.Generic;
using Continentis.MainGame.Card;
using Continentis.MainGame.Character;
using Continentis.MainGame.Commands;
using SLSUtilities.General;
using UnityEngine;
namespace Continentis.Mods.Basic.Cards
{
public class EchoOfHonor : CardLogicBase
{
public override void SetUpLogicComponents()
{
AddLogicComponent<CardLogicComponent_GenerateCards>();
}
public override CommandGroup PlayEffect(List<CharacterBase> targetList)
{
return Cmd.Sequential(
new Cmd_PlayAnimation(user.characterView, "Skill"),
Cmd.Do(() =>
{
if (user.deckSubmodule.HandPile.Exclude(this.card).TryGetRandom(out CardInstance randomHandCard))
{
CardInstance newCard = CardInstance.GenerateCardInstance(randomHandCard, user, "Hand");
newCard.cardLogic.SetAttribute("StaminaCost", 0);
newCard.GenerateHandCardView("Hand");
}
else
{
Debug.LogWarning("EchoOfHonor: No other cards in hand to copy.");
}
})
);
}
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 282b6253d383eac43817c8c9bd79aafe

View File

@@ -0,0 +1,37 @@
using System.Collections.Generic;
using Continentis.MainGame.Card;
using Continentis.MainGame.Character;
using Continentis.MainGame.Commands;
using SLSUtilities.General;
namespace Continentis.Mods.Basic.Cards
{
public class EstablishFormation : CardLogicBase
{
public override void SetUpLogicComponents()
{
AddLogicComponent<CardLogicComponent_Defense>();
}
public override CommandGroup PlayEffect(List<CharacterBase> targetList)
{
base.PlayEffect(targetList);
return ForEachTarget(targetList, target => Cmd.Parallel(
new Cmd_PlayAnimation(user.characterView, "Skill"),
Cmd.After(0.2f, () =>
{
target.AddBlock(GetAttribute("Block"));
int stack = GetAttribute("BuffStack_EstablishFormation");
int count = GetAttribute("BuffCount_EstablishFormation");
CreateCharacterBuff<Buffs.EstablishFormation>(stack, count).Apply(target, user, this);
})
));
}
public override void ApplyAttributeChangesByCard()
{
LogicComponent<CardLogicComponent_Defense>().SetBlock();
}
}
}

View File

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

View File

@@ -0,0 +1,37 @@
using System.Collections.Generic;
using Continentis.MainGame.Card;
using Continentis.MainGame.Character;
using Continentis.MainGame.Commands;
using SLSUtilities.General;
namespace Continentis.Mods.Basic.Cards
{
public class FirmBelief : CardLogicBase
{
public override void Initialize(CardInstance card)
{
base.Initialize(card);
this.card.eventSubmodule.onInitiativeDiscard.Add("FirmBelief_PlayWhenDiscard",
new PrioritizedCheckAndEffect(() => true, () => card.Play(new List<CharacterBase>(), user, false, true)));
}
public override void SetUpLogicComponents()
{
AddLogicComponent<CardLogicComponent_Defense>();
}
public override CommandGroup PlayEffect(List<CharacterBase> targetList)
{
return Cmd.Parallel(
new Cmd_PlayAnimation(user.characterView, "Skill"),
Cmd.Do(() => user.AddBlock(GetAttribute("Block"))),
user.deckSubmodule.DrawCards(GetAttribute("DrawCardAmount"))
);
}
public override void ApplyAttributeChangesByCard()
{
LogicComponent<CardLogicComponent_Defense>().SetBlock();
}
}
}

View File

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

View File

@@ -0,0 +1,22 @@
using System.Collections.Generic;
using Continentis.MainGame.Card;
using Continentis.MainGame.Character;
using Continentis.MainGame.Commands;
using SLSUtilities.General;
namespace Continentis.Mods.Basic.Cards
{
public class GuardianAura : CardLogicBase
{
public override CommandGroup PlayEffect(List<CharacterBase> targetList)
{
return Cmd.Sequential(
new Cmd_PlayAnimation(user.characterView, "Skill"),
Cmd.Do(() =>
{
CreateCharacterBuff<Buffs.GuardianAura>(GetAttribute("GuardianAuraCount")).Apply(user, user, this);
})
);
}
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 31c38b15ea4ef464cb81f5c301a6afe3

View File

@@ -0,0 +1,24 @@
using System.Collections.Generic;
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 IronWall : CardLogicBase
{
public override CommandGroup PlayEffect(List<CharacterBase> targetList)
{
CommandGroup mainGroup = new CommandGroup(ExecutionMode.Sequential,
new Cmd_PlayAnimation(user.characterView, "Skill"),
Cmd.Do(() => {
CreateCharacterBuff<Withstand>(GetAttribute("BuffCount_Withstand")).Apply(user, user, this);
}));
return mainGroup;
}
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 62b78a6b24f5eac43a9ec432f9ad7f3e

View File

@@ -0,0 +1,34 @@
using System.Collections.Generic;
using Continentis.MainGame.Card;
using Continentis.MainGame.Character;
using Continentis.MainGame.Commands;
using Continentis.Mods.Basic.Buffs;
using SLSUtilities.General;
namespace Continentis.Mods.Basic.Cards
{
public class OathOfCourage : CardLogicBase
{
public override void SetUpLogicComponents()
{
AddLogicComponent<CardLogicComponent_Defense>();
}
public override CommandGroup PlayEffect(List<CharacterBase> targetList)
{
return ForEachTarget(targetList, _ => Cmd.Parallel(
new Cmd_PlayAnimation(user.characterView, "Skill"),
Cmd.Do(() =>
{
user.AddBlock(GetAttribute("Block"));
CreateCharacterBuff<Consolidate>(GetAttribute("BuffCount_Consolidate")).Apply(user, user, this);
})
));
}
public override void ApplyAttributeChangesByCard()
{
LogicComponent<CardLogicComponent_Defense>().SetBlock();
}
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 4b4fa3f1ad4c3ef4a97a643f206291cd

View File

@@ -0,0 +1,19 @@
using System.Collections.Generic;
using Continentis.MainGame.Card;
using Continentis.MainGame.Character;
using Continentis.MainGame.Commands;
using SLSUtilities.General;
namespace Continentis.Mods.Basic.Cards
{
public class OathOfHonor : CardLogicBase
{
public override CommandGroup PlayEffect(List<CharacterBase> targetList)
{
return Cmd.Sequential(
new Cmd_PlayAnimation(user.characterView, "Skill"),
Cmd.Do(() => user.ModifyStamina(GetAttribute("StaminaRestore")))
);
}
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 9d72f88c86e4d994f874c94972855107