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

@@ -4,13 +4,12 @@ using Continentis.MainGame.Card;
using Continentis.MainGame.Character;
using SLSFramework.General;
using UnityEngine;
using CombatBuffBase = Continentis.MainGame.Character.CombatBuffBase;
namespace Continentis.Mods.Basic.Buffs
{
public sealed class Basic_Bleed : CombatBuffBase
public sealed class Bleed : CharacterCombatBuffBase
{
public Basic_Bleed(int stack)
public Bleed(int stack)
{
Initialize(BuffType.Negative, BuffDispelLevel.Basic);

View File

@@ -4,14 +4,9 @@ using UnityEngine;
namespace Continentis.Mods.Basic.Buffs
{
public sealed class Basic_Blind : CombatBuffBase
public sealed class Blind : CharacterCombatBuffBase
{
private string GetDescription(int rounds, int stacks)
{
return $"This character's start damage in Dodge Check is decreased by {stacks}% for {rounds} rounds.";
}
public Basic_Blind(int initialCount, int stack = 25)
public Blind(int initialCount, int stack = 25)
{
Initialize(BuffType.Negative, BuffDispelLevel.Basic);
@@ -27,7 +22,7 @@ namespace Continentis.Mods.Basic.Buffs
generalAttributeSubmodule.numericChange.Add("DodgeCheckStartDamageMultiplier", -0.01f * stack);
}
public override bool OnBuffApply(out CombatBuffBase existingBuff)
public override bool OnBuffApply(out CharacterCombatBuffBase existingBuff)
{
MainGameManager.Instance.basePrefabs.GenerateInfoText("Blind", attachedCharacter.characterView);

View File

@@ -4,13 +4,12 @@ using Continentis.MainGame.Card;
using Continentis.MainGame.Character;
using SLSFramework.General;
using UnityEngine;
using CombatBuffBase = Continentis.MainGame.Character.CombatBuffBase;
namespace Continentis.Mods.Basic.Buffs
{
public sealed class Basic_Burn : CombatBuffBase
public sealed class Burn : CharacterCombatBuffBase
{
public Basic_Burn(int stack)
public Burn(int stack)
{
Initialize(BuffType.Negative, BuffDispelLevel.Basic);
@@ -25,7 +24,7 @@ namespace Continentis.Mods.Basic.Buffs
this.eventSubmodule.onAfterPlayCard.Add("Burn", new EventUnit<CardInstance, List<CharacterBase>>(OnAfterPlayCard));
}
public override bool OnBuffApply(out CombatBuffBase existingBuff)
public override bool OnBuffApply(out CharacterCombatBuffBase existingBuff)
{
MainGameManager.Instance.basePrefabs.GenerateInfoText("Burn", attachedCharacter.characterView);

View File

@@ -5,9 +5,9 @@ using UnityEngine;
namespace Continentis.Mods.Basic.Buffs
{
public sealed class Basic_Corrosion : CombatBuffBase
public sealed class Corrosion : CharacterCombatBuffBase
{
public Basic_Corrosion(int stack)
public Corrosion(int stack)
{
Initialize(BuffType.Negative, BuffDispelLevel.Basic);

View File

@@ -6,9 +6,9 @@ using UnityEngine;
namespace Continentis.Mods.Basic.Buffs
{
public sealed class Basic_Firm : CombatBuffBase, IBuffExtension_IntegerRange
public sealed class Firm : CharacterCombatBuffBase, IBuffExtension_IntegerRange
{
public Basic_Firm(int stack)
public Firm(int stack)
{
Initialize(BuffType.Positive, BuffDispelLevel.Strong);
@@ -25,7 +25,7 @@ namespace Continentis.Mods.Basic.Buffs
(this as IBuffExtension_IntegerRange).Initialize(stack);
}
public override bool OnBuffApply(out CombatBuffBase existingBuff)
public override bool OnBuffApply(out CharacterCombatBuffBase existingBuff)
{
MainGameManager.Instance.basePrefabs.GenerateInfoText("Firm", attachedCharacter.characterView);

View File

@@ -4,9 +4,9 @@ using UnityEngine;
namespace Continentis.Mods.Basic.Buffs
{
public sealed class Basic_Freeze : CombatBuffBase
public sealed class Freeze : CharacterCombatBuffBase
{
public Basic_Freeze(int initialCount, int stack = 25)
public Freeze(int initialCount, int stack = 25)
{
Initialize(BuffType.Negative, BuffDispelLevel.Basic);
@@ -24,7 +24,7 @@ namespace Continentis.Mods.Basic.Buffs
generalAttributeSubmodule.numericChange.Add("DodgeGainMultiplier", -0.01f * stack);
}
public override bool OnBuffApply(out CombatBuffBase existingBuff)
public override bool OnBuffApply(out CharacterCombatBuffBase existingBuff)
{
MainGameManager.Instance.basePrefabs.GenerateInfoText("Freeze", attachedCharacter.characterView);

View File

@@ -0,0 +1,44 @@
using Continentis.MainGame;
using Continentis.MainGame.Character;
using UnityEngine;
namespace Continentis.Mods.Basic.Buffs
{
public class Heavy : CharacterCombatBuffBase
{
private readonly bool isAdditive;
public Heavy(bool additive = false, int actionCount = 1)
{
Initialize(BuffType.Negative, BuffDispelLevel.Basic);
this.isAdditive = additive;
this.contentSubmodule = new ContentSubmodule(this)
.AddParameterGetter("Count", () => actionCountSubmodule.remainingCount.ToString());
this.iconSubmodule = new IconSubmodule(this);
this.actionCountSubmodule = new CountSubmodule(this, actionCount);
this.statusSubmodule = new StatusSubmodule(this, StatusType.Heavy);
}
public override bool OnBuffApply(out CharacterCombatBuffBase existingBuff)
{
MainGameManager.Instance.basePrefabs.GenerateInfoText("Heavy", attachedCharacter.characterView);
if (FindExistingSameBuff(out existingBuff))
{
if (this.isAdditive) //可叠加型状态
{
existingBuff.actionCountSubmodule.AddMaxCount(this.actionCountSubmodule.maximumCount);
}
return false;
}
return true;
}
}
}

View File

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

View File

@@ -6,9 +6,9 @@ using UnityEngine;
namespace Continentis.Mods.Basic.Buffs
{
public sealed class Basic_Nimble : CombatBuffBase, IBuffExtension_IntegerRange
public sealed class Nimble : CharacterCombatBuffBase, IBuffExtension_IntegerRange
{
public Basic_Nimble(int stack)
public Nimble(int stack)
{
Initialize(BuffType.Positive, BuffDispelLevel.Strong);
@@ -25,7 +25,7 @@ namespace Continentis.Mods.Basic.Buffs
(this as IBuffExtension_IntegerRange).Initialize(stack);
}
public override bool OnBuffApply(out CombatBuffBase existingBuff)
public override bool OnBuffApply(out CharacterCombatBuffBase existingBuff)
{
MainGameManager.Instance.basePrefabs.GenerateInfoText("Nimble", attachedCharacter.characterView);

View File

@@ -6,9 +6,9 @@ using UnityEngine;
namespace Continentis.Mods.Basic.Buffs
{
public sealed class Basic_Prowess : CombatBuffBase, IBuffExtension_IntegerRange
public sealed class Prowess : CharacterCombatBuffBase, IBuffExtension_IntegerRange
{
public Basic_Prowess(int stack)
public Prowess(int stack)
{
Initialize(BuffType.Positive, BuffDispelLevel.Strong);
@@ -25,7 +25,7 @@ namespace Continentis.Mods.Basic.Buffs
(this as IBuffExtension_IntegerRange).Initialize(stack);
}
public override bool OnBuffApply(out CombatBuffBase existingBuff)
public override bool OnBuffApply(out CharacterCombatBuffBase existingBuff)
{
MainGameManager.Instance.basePrefabs.GenerateInfoText("Prowess", attachedCharacter.characterView);

View File

@@ -3,15 +3,14 @@ using Continentis.MainGame;
using Continentis.MainGame.Character;
using SLSFramework.General;
using UnityEngine;
using CombatBuffBase = Continentis.MainGame.Character.CombatBuffBase;
namespace Continentis.Mods.Basic.Buffs
{
public sealed class Basic_Resonance : CombatBuffBase, IBuffExtension_IntegerRange
public sealed class Resonance : CharacterCombatBuffBase, IBuffExtension_IntegerRange
{
public Func<string> GetDescription { get; set; }
public Basic_Resonance(int stack)
public Resonance(int stack)
{
Initialize(BuffType.Positive, BuffDispelLevel.Strong);
@@ -28,7 +27,7 @@ namespace Continentis.Mods.Basic.Buffs
(this as IBuffExtension_IntegerRange).Initialize(stack);
}
public override bool OnBuffApply(out CombatBuffBase existingBuff)
public override bool OnBuffApply(out CharacterCombatBuffBase existingBuff)
{
MainGameManager.Instance.basePrefabs.GenerateInfoText("Resonance", attachedCharacter.characterView);

View File

@@ -5,9 +5,9 @@ using UnityEngine;
namespace Continentis.Mods.Basic.Buffs
{
public sealed class Basic_Vulnerable : CombatBuffBase
public sealed class Vulnerable : CharacterCombatBuffBase
{
public Basic_Vulnerable(int duration)
public Vulnerable(int duration)
{
Initialize(BuffType.Negative, BuffDispelLevel.Basic);
@@ -22,7 +22,7 @@ namespace Continentis.Mods.Basic.Buffs
generalAttributeSubmodule.numericChange.Add("PhysicsDamageGainMultiplier", 0.5f);
}
public override bool OnBuffApply(out CombatBuffBase existingBuff)
public override bool OnBuffApply(out CharacterCombatBuffBase existingBuff)
{
MainGameManager.Instance.basePrefabs.GenerateInfoText("Vulnerable", attachedCharacter.characterView);

View File

@@ -4,9 +4,9 @@ using UnityEngine;
namespace Continentis.Mods.Basic.Buffs
{
public sealed class Basic_Weak : CombatBuffBase
public sealed class Weak : CharacterCombatBuffBase
{
public Basic_Weak(int duration)
public Weak(int duration)
{
Initialize(BuffType.Negative, BuffDispelLevel.Basic);
@@ -21,7 +21,7 @@ namespace Continentis.Mods.Basic.Buffs
generalAttributeSubmodule.numericChange.Add("PhysicsDamageDealtMultiplier", -0.25f);
}
public override bool OnBuffApply(out CombatBuffBase existingBuff)
public override bool OnBuffApply(out CharacterCombatBuffBase existingBuff)
{
MainGameManager.Instance.basePrefabs.GenerateInfoText("Weak", attachedCharacter.characterView);

View File

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

View File

@@ -0,0 +1,45 @@
using Continentis.MainGame;
using Continentis.MainGame.Character;
using Continentis.MainGame.Combat;
using SLSFramework.General;
using UnityEngine;
namespace Continentis.Mods.Basic.Buffs
{
public class GuardianAura : CharacterCombatBuffBase
{
public GuardianAura(int stack)
{
Initialize(BuffType.Focusing, BuffDispelLevel.Strong);
this.contentSubmodule = new ContentSubmodule(this)
.AddParameterGetter("Stack", () => unitedStackSubmodule.stackAmount.ToString());
this.iconSubmodule = new IconSubmodule(this);
this.unitedStackSubmodule = new UnitedStackSubmodule(this, stack);
this.eventSubmodule = new EventSubmodule(this);
this.eventSubmodule.onActionStart.Add("GuardianAura", new EventUnit(() =>
{
CombatMainManager.Instance.characterController.playerHeroes.ForEach(hero =>
{
hero.AddBlock(this.unitedStackSubmodule.stackAmount, false);
});
}));
}
public override bool OnBuffApply(out CharacterCombatBuffBase existingBuff)
{
MainGameManager.Instance.basePrefabs.GenerateInfoText(contentSubmodule.displayName, attachedCharacter.characterView);
if (FocusingCheck(out existingBuff))
{
existingBuff.unitedStackSubmodule.PickHigherStack(this.unitedStackSubmodule.stackAmount);
return false;
}
return true;
}
}
}

View File

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

View File

@@ -4,11 +4,10 @@ using Continentis.MainGame.Card;
using Continentis.MainGame.Character;
using SLSFramework.General;
using UnityEngine;
using CombatBuffBase = Continentis.MainGame.Character.CombatBuffBase;
namespace Continentis.Mods.Basic.Buffs
{
public sealed class Basic_Hellfire : CombatBuffBase
public sealed class Basic_Hellfire : CharacterCombatBuffBase
{
public Basic_Hellfire(int stack)
{
@@ -25,7 +24,7 @@ namespace Continentis.Mods.Basic.Buffs
this.eventSubmodule.onAfterPlayCard.Add("Basic_Hellfire", new EventUnit<CardInstance, List<CharacterBase>>(OnAfterPlayCard));
}
public override bool OnBuffApply(out CombatBuffBase existingBuff)
public override bool OnBuffApply(out CharacterCombatBuffBase existingBuff)
{
MainGameManager.Instance.basePrefabs.GenerateInfoText("Hellfire", attachedCharacter.characterView);

View File

@@ -3,11 +3,10 @@ using Continentis.MainGame;
using Continentis.MainGame.Card;
using Continentis.MainGame.Character;
using UnityEngine;
using CombatBuffBase = Continentis.MainGame.Character.CombatBuffBase;
namespace Continentis.Mods.Basic.Buffs
{
public sealed class Basic_SoulAbsorption : CombatBuffBase
public sealed class Basic_SoulAbsorption : CharacterCombatBuffBase
{
public Basic_SoulAbsorption(int stack)
{
@@ -24,7 +23,7 @@ namespace Continentis.Mods.Basic.Buffs
this.generalAttributeSubmodule.numericChange["LifeStealMultiplier"] = stack * 0.01f;
}
public override bool OnBuffApply(out CombatBuffBase existingBuff)
public override bool OnBuffApply(out CharacterCombatBuffBase existingBuff)
{
MainGameManager.Instance.basePrefabs.GenerateInfoText("Soul Absorption", attachedCharacter.characterView);

View File

@@ -116,7 +116,7 @@ MonoBehaviour:
index: 14
isKeyDuplicated: 0
- Key: MaximumStamina
Value: 0
Value: 2
index: 15
isKeyDuplicated: 0
- Key: MaximumMana
@@ -167,6 +167,18 @@ MonoBehaviour:
Value: 0
index: 27
isKeyDuplicated: 0
- Key: Block
Value: 0
index: 28
isKeyDuplicated: 0
- Key: Dodge
Value: 0
index: 29
isKeyDuplicated: 0
- Key: Shield
Value: 0
index: 30
isKeyDuplicated: 0
dividerPosProp: 0.5
runtimeGeneralAttributes:
dictionaryList:
@@ -189,10 +201,12 @@ MonoBehaviour:
derivativeCardDataRefs: []
derivativeCharacterDataRefs: []
initialDeckRef:
- CardData_Basic_Strike
- CardData_Basic_KnightStrike
- CardData_Basic_Cohesion
- CardData_Basic_Recollection
- CardData_Basic_Smite
- CardData_Basic_HeavySlash
- CardData_Basic_ThinkingCountermeasures
- CardData_Basic_GuardianAura
hudDataRefs:
- HUDData_Basic_Default

View File

@@ -17,10 +17,11 @@ MonoBehaviour:
modName: Basic
className: Mage
displayName: Mage
tags: []
avatar: {fileID: 21300000, guid: b63325d4cba3da84c9e7dc7d0e7c5a8a, type: 3}
portrait: {fileID: 0}
characterDescription: Test Description.
tags: []
characterStory:
coreAttributes:
dictionaryList:
- Key: Level
@@ -103,7 +104,7 @@ MonoBehaviour:
index: 11
isKeyDuplicated: 0
- Key: MaximumStamina
Value: 0
Value: 2
index: 12
isKeyDuplicated: 0
- Key: MaximumMana
@@ -154,6 +155,30 @@ MonoBehaviour:
Value: 0
index: 24
isKeyDuplicated: 0
- Key: FinalDamageDealtMultiplier
Value: 1
index: 25
isKeyDuplicated: 0
- Key: FinalDamageGainMultiplier
Value: 1
index: 26
isKeyDuplicated: 0
- Key: DodgeCheckStartDamageMultiplier
Value: 1
index: 27
isKeyDuplicated: 0
- Key: Shield
Value: 0
index: 28
isKeyDuplicated: 0
- Key: Dodge
Value: 0
index: 29
isKeyDuplicated: 0
- Key: Block
Value: 0
index: 30
isKeyDuplicated: 0
dividerPosProp: 0.5
runtimeGeneralAttributes:
dictionaryList:

View File

@@ -116,7 +116,7 @@ MonoBehaviour:
index: 14
isKeyDuplicated: 0
- Key: MaximumStamina
Value: 0
Value: 2
index: 15
isKeyDuplicated: 0
- Key: MaximumMana

View File

@@ -17,10 +17,11 @@ MonoBehaviour:
modName: Basic
className: SkeletonGuard
displayName: Skeleton Guard
tags: []
avatar: {fileID: 21300000, guid: d54a00073ed0a454e9fc275b297350dc, type: 3}
portrait: {fileID: 0}
characterDescription: Test Description.
tags: []
characterStory:
coreAttributes:
dictionaryList:
- Key: Level
@@ -103,7 +104,7 @@ MonoBehaviour:
index: 11
isKeyDuplicated: 0
- Key: MaximumStamina
Value: 0
Value: 2
index: 12
isKeyDuplicated: 0
- Key: MaximumMana
@@ -154,6 +155,30 @@ MonoBehaviour:
Value: 0
index: 24
isKeyDuplicated: 0
- Key: FinalDamageDealtMultiplier
Value: 1
index: 25
isKeyDuplicated: 0
- Key: FinalDamageGainMultiplier
Value: 1
index: 26
isKeyDuplicated: 0
- Key: DodgeCheckStartDamageMultiplier
Value: 1
index: 27
isKeyDuplicated: 0
- Key: Block
Value: 0
index: 28
isKeyDuplicated: 0
- Key: Dodge
Value: 0
index: 29
isKeyDuplicated: 0
- Key: Shield
Value: 0
index: 30
isKeyDuplicated: 0
dividerPosProp: 0.5
runtimeGeneralAttributes:
dictionaryList:

View File

@@ -157,6 +157,18 @@ MonoBehaviour:
Value: 0
index: 27
isKeyDuplicated: 0
- Key: Block
Value: 0
index: 28
isKeyDuplicated: 0
- Key: Dodge
Value: 0
index: 29
isKeyDuplicated: 0
- Key: Shield
Value: 0
index: 30
isKeyDuplicated: 0
dividerPosProp: 0.75
runtimeGeneralAttributes:
dictionaryList: