AmbushStance
This commit is contained in:
@@ -43,7 +43,7 @@ MonoBehaviour:
|
||||
Value: 5
|
||||
index: 3
|
||||
isKeyDuplicated: 0
|
||||
- Key: BuffStack_Sharpness
|
||||
- Key: BuffStack
|
||||
Value: 5
|
||||
index: 4
|
||||
isKeyDuplicated: 0
|
||||
|
||||
@@ -39,7 +39,7 @@ MonoBehaviour:
|
||||
Value: 0
|
||||
index: 2
|
||||
isKeyDuplicated: 0
|
||||
- Key: BuffStack_KnifeTrick
|
||||
- Key: BuffStack
|
||||
Value: 4
|
||||
index: 3
|
||||
isKeyDuplicated: 0
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
using Continentis.MainGame.Card;
|
||||
using Continentis.MainGame.Character;
|
||||
using Continentis.MainGame.Commands;
|
||||
using SLSFramework.General;
|
||||
using System.Collections.Generic;
|
||||
|
||||
@@ -9,7 +10,12 @@ namespace Continentis.Mods.Basic.Cards
|
||||
{
|
||||
protected override List<CommandBase> PlayEffect(List<CharacterBase> targetList)
|
||||
{
|
||||
return base.PlayEffect(targetList);
|
||||
CommandGroup mainGroup = TargetListCommandGroup(targetList,
|
||||
new Cmd_ParamFunction<CharacterBase>(0.05f, target =>
|
||||
{
|
||||
CreateCharacterBuff<Buffs.AmbushStance>(GetAttribute("BuffStack")).Apply(target, user, this);
|
||||
}));
|
||||
return new List<CommandBase> { mainGroup };
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -26,7 +26,7 @@ namespace Continentis.Mods.Basic.Cards
|
||||
}));
|
||||
mainGroup.AddCommand(new Cmd_Function(() =>
|
||||
{
|
||||
CreateCharacterBuff<Sharpness>(GetAttribute("BuffStack_Sharpness")).Apply(user, user, this);
|
||||
CreateCharacterBuff<Sharpness>(GetAttribute("BuffStack")).Apply(user, user, this);
|
||||
}));
|
||||
return new List<CommandBase> { mainGroup };
|
||||
}
|
||||
|
||||
@@ -14,7 +14,7 @@ namespace Continentis.Mods.Basic.Cards
|
||||
new Cmd_PlayAnimation(user.characterView, "Skill"),
|
||||
new Cmd_Function(() =>
|
||||
{
|
||||
CreateCharacterBuff<Buffs.KnifeTrick>(GetAttribute("BuffStack_KnifeTrick")).Apply(user, user, this);
|
||||
CreateCharacterBuff<Buffs.KnifeTrick>(GetAttribute("BuffStack")).Apply(user, user, this);
|
||||
}));
|
||||
|
||||
return new List<CommandBase> { mainGroup };
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
using Continentis.MainGame;
|
||||
using Continentis.MainGame.Card;
|
||||
using Continentis.MainGame.Character;
|
||||
using SLSFramework.General;
|
||||
using System.Collections.Generic;
|
||||
using static UnityEngine.GraphicsBuffer;
|
||||
|
||||
namespace Continentis.Mods.Basic.Buffs
|
||||
{
|
||||
public class AmbushStance : CharacterCombatBuffBase
|
||||
{
|
||||
public AmbushStance(int stack)
|
||||
{
|
||||
Initialize(BuffType.Positive, BuffDispelLevel.Strong);
|
||||
this.contentSubmodule = new ContentSubmodule(this, false)
|
||||
.AddParameterGetter("Stack", () => unitedStackSubmodule.stackAmount.ToString());
|
||||
this.iconSubmodule = new IconSubmodule(this);
|
||||
this.unitedStackSubmodule = new UnitedStackSubmodule(this, stack);
|
||||
this.eventSubmodule = new EventSubmodule(this);
|
||||
this.eventSubmodule.onBeforePlayCard.Add("AmbushStance", new PrioritizedAction<CardInstance, List<CharacterBase>>(((card, targets) =>
|
||||
{
|
||||
if (this.attachedCharacter is PlayerHero player)
|
||||
{
|
||||
CreateCharacterBuff<Buffs.Sharpness>(this.unitedStackSubmodule.stackAmount).Apply(attachedCharacter, attachedCharacter);
|
||||
}
|
||||
})));
|
||||
}
|
||||
|
||||
public override bool OnBuffApply(out CharacterCombatBuffBase existingBuff)
|
||||
{
|
||||
MainGameManager.Instance.basePrefabs.GenerateInfoText("Ambush Stance", attachedCharacter.characterView);
|
||||
if (FindExistingSameBuff(out existingBuff))
|
||||
{
|
||||
existingBuff.unitedStackSubmodule.ModifyStack(this.unitedStackSubmodule.stackAmount);
|
||||
int newStack = existingBuff.unitedStackSubmodule.stackAmount;
|
||||
existingBuff.coreAttributeSubmodule.numericChange["DodgeChanceOffset"] = newStack;
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ea92fd3a2cd5a524db12d16fad06ab7b
|
||||
@@ -1,18 +1,12 @@
|
||||
using Continentis.MainGame;
|
||||
using Continentis.MainGame.Card;
|
||||
using Continentis.MainGame.Character;
|
||||
using Continentis.Mods.Basic.Buffs;
|
||||
using SLSFramework.General;
|
||||
using System.Collections.Generic;
|
||||
using SLSFramework.UModAssistance;
|
||||
using UnityEngine;
|
||||
|
||||
namespace Continentis.Mods.Basic.Buffs
|
||||
{
|
||||
public class KnifeTrick : CharacterCombatBuffBase
|
||||
{
|
||||
private bool _canTrigger = false;
|
||||
|
||||
public KnifeTrick(int stack)
|
||||
{
|
||||
Initialize(BuffType.Positive, BuffDispelLevel.Strong);
|
||||
@@ -21,7 +15,7 @@ namespace Continentis.Mods.Basic.Buffs
|
||||
this.iconSubmodule = new IconSubmodule(this);
|
||||
this.unitedStackSubmodule = new UnitedStackSubmodule(this, stack);
|
||||
this.eventSubmodule = new EventSubmodule(this);
|
||||
|
||||
|
||||
this.eventSubmodule.onOtherBuffRemoved.Add("KnifeTrick_AddSharpness", new PrioritizedAction<BuffBase<CharacterBase>>((buff) =>
|
||||
{
|
||||
if (buff is Sharpness)
|
||||
@@ -31,25 +25,6 @@ namespace Continentis.Mods.Basic.Buffs
|
||||
CreateCharacterBuff<Sharpness>(unitedStackSubmodule.stackAmount).Apply(attachedCharacter, attachedCharacter);
|
||||
}
|
||||
}));
|
||||
|
||||
//TODO: Event listener for adding/removing buffs
|
||||
|
||||
//this.eventSubmodule.onPreAttack.Add("KnifeTrick", new PrioritizedAction<int>((damage) =>
|
||||
//{
|
||||
// if (this.attachedCharacter.combatBuffSubmodule.HasBuff<Sharpness>())
|
||||
// {
|
||||
// _canTrigger = true;
|
||||
// }
|
||||
//}));
|
||||
|
||||
//this.eventSubmodule.onDealAttack.Add("KnifeTrick", new PrioritizedAction<AttackResult>((result) =>
|
||||
//{
|
||||
// if (_canTrigger)
|
||||
// {
|
||||
// CreateCharacterBuff<Sharpness>(this.unitedStackSubmodule.stackAmount).Apply(this.attachedCharacter, this.attachedCharacter);
|
||||
// _canTrigger = false;
|
||||
// }
|
||||
//}));
|
||||
}
|
||||
|
||||
public override bool OnBuffApply(out CharacterCombatBuffBase existingBuff)
|
||||
|
||||
@@ -5,3 +5,5 @@ Buff_Basic_Sharpness_DisplayName,Sharpness,锋利,,,,,
|
||||
Buff_Basic_Sharpness_FunctionText,TODO,下次攻击将造成额外$ParameterInt("Stack")点伤害并失去所有层数。,,,,,
|
||||
Buff_Basic_KnifeTrick_DisplayName,Knife Trick,刀具把戏,,,,,
|
||||
Buff_Basic_KnifeTrick_FunctionText,TODO,每次失去所有$Keyword("Basic_Sharpness")后,获得$ParameterInt("Stack")层$Keyword("Basic_Sharpness")。,,,,,
|
||||
Buff_Basic_AmbushStance_DisplayName,Ambush Stance,伺机待发,,,,,
|
||||
Buff_Basic_AmbushStance_FunctionText,TODO,每当你打出一张牌,获得$ParameterInt("Stack")层$Keyword("Basic_Sharpness")。,,,,,
|
||||
|
||||
|
Can't render this file because it contains an unexpected character in line 3 and column 84.
|
@@ -13,10 +13,10 @@ Card_Basic_KnifeTrick_DisplayName,Knife Trick,刀具把戏,,,,,
|
||||
Card_Basic_KnifeTrick_FunctionText,Test Description,每次失去所有$Keyword("Basic_Sharpness")后,获得$Attribute("BuffStack")层$Keyword("Basic_Sharpness")。,,,,,
|
||||
Card_Basic_ExtremePain_DisplayName,Extreme Pain,极端痛苦,,,,,
|
||||
Card_Basic_ExtremePain_FunctionText,Test Description,造成$Attribute("Damage")点伤害,目标额外受到$Keyword("Basic_Corrosion")层数点伤害。,,,,,
|
||||
Card_Basic_BladeOfFear_DisplayName,Blade of Fear,怖刃(TODO),,,,,
|
||||
Card_Basic_BladeOfFear_FunctionText,Test Description,TODO,,,,,
|
||||
Card_Basic_AmbushStance_DisplayName,Ambush Stance,伺机待发(TODO),,,,,
|
||||
Card_Basic_AmbushStance_FunctionText,Test Description,TODO,,,,,
|
||||
Card_Basic_BladeOfFear_DisplayName,Blade of Fear,怖刃,,,,,
|
||||
Card_Basic_BladeOfFear_FunctionText,Test Description,造成$Attribute("Damage")点伤害。\n获得$Attribute("BuffStack")层$Keyword("Basic_Sharpness")。,,,,,
|
||||
Card_Basic_AmbushStance_DisplayName,Ambush Stance,伺机待发,,,,,
|
||||
Card_Basic_AmbushStance_FunctionText,Test Description,每当你打出一张牌,获得$Attribute("BuffStack")层$Keyword("Basic_Sharpness")。,,,,,
|
||||
Card_Basic_Backstab_DisplayName,Backstab,背刺(TODO),,,,,
|
||||
Card_Basic_Backstab_FunctionText,Test Description,TODO,,,,,
|
||||
Card_Basic_FlashTerror_DisplayName,FlashTerror,快速威吓(TODO),,,,,
|
||||
|
||||
|
Can't render this file because it contains an unexpected character in line 3 and column 64.
|
BIN
Assets/Mods/Basic/Sprites/Buffs/BuffIcon_Basic_AmbushStance.png
Normal file
BIN
Assets/Mods/Basic/Sprites/Buffs/BuffIcon_Basic_AmbushStance.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 520 KiB |
@@ -0,0 +1,119 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 0b37c9cae0000dc4c8fb905f8af16351
|
||||
labels:
|
||||
- UnityAI
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 13
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 1
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
flipGreenChannel: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMipmapLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 1024
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
swizzle: 50462976
|
||||
cookieLightType: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 4
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 4
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
customData:
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
spriteCustomMetadata:
|
||||
entries: []
|
||||
nameFileIdTable: {}
|
||||
mipmapLimitGroupName:
|
||||
pSDRemoveMatte: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Reference in New Issue
Block a user