diff --git a/Assets/Mods/Basic/Cards/Data/PlayerHeros/Cleric/CardData_Basic_Sanctuary.asset b/Assets/Mods/Basic/Cards/Data/PlayerHeros/Cleric/CardData_Basic_Sanctuary.asset index 107f5e85..790b0a60 100644 --- a/Assets/Mods/Basic/Cards/Data/PlayerHeros/Cleric/CardData_Basic_Sanctuary.asset +++ b/Assets/Mods/Basic/Cards/Data/PlayerHeros/Cleric/CardData_Basic_Sanctuary.asset @@ -21,6 +21,7 @@ MonoBehaviour: keywords: - TargetAllies - TargetSelf + - Reuseable cardSprite: {fileID: 21300000, guid: c7e0489a5e85e65499fcacddb7c1391e, type: 3} cardLayoutTags: [] functionText: Card_Basic_Sanctuary_FunctionText diff --git a/Assets/Mods/Basic/Cards/Data/PlayerHeros/Knight/CardData_Basic_BodyAsShield.asset b/Assets/Mods/Basic/Cards/Data/PlayerHeros/Knight/CardData_Basic_BodyAsShield.asset index 7a66ce56..c445877b 100644 --- a/Assets/Mods/Basic/Cards/Data/PlayerHeros/Knight/CardData_Basic_BodyAsShield.asset +++ b/Assets/Mods/Basic/Cards/Data/PlayerHeros/Knight/CardData_Basic_BodyAsShield.asset @@ -13,12 +13,13 @@ MonoBehaviour: m_Name: CardData_Basic_BodyAsShield m_EditorClassIdentifier: modName: Basic + categoryName: className: BodyAsShield displayName: Card_Basic_BodyAsShield_DisplayName cardRarity: 10 cardType: 10 keywords: - - Reuse + - Reuseable - TargetAllies cardSprite: {fileID: 21300000, guid: 08151241767bc164da8ba328a76a9ced, type: 3} cardLayoutTags: [] diff --git a/Assets/Mods/Basic/Cards/Scripts/Cleric/Sanctuary.cs b/Assets/Mods/Basic/Cards/Scripts/Cleric/Sanctuary.cs index e55b51bd..9821099e 100644 --- a/Assets/Mods/Basic/Cards/Scripts/Cleric/Sanctuary.cs +++ b/Assets/Mods/Basic/Cards/Scripts/Cleric/Sanctuary.cs @@ -1,7 +1,9 @@  +using Continentis.MainGame; using Continentis.MainGame.Card; using Continentis.MainGame.Character; +using Continentis.MainGame.Commands; using SLSFramework.General; using System.Collections.Generic; @@ -11,7 +13,13 @@ namespace Continentis.Mods.Basic.Cards.Cleric { protected override List PlayEffect(List targetList) { - return base.PlayEffect(targetList); + CommandGroup mainGroup = TargetListCommandGroup(targetList, + new Cmd_PlayAnimation(user.characterView, "Skill"), + new Cmd_ParamFunction((target) => + target.combatBuffSubmodule.Dispel(BuffDispelLevel.Basic, user) + )); + + return new List { mainGroup }; } } } diff --git a/Assets/Mods/Basic/Keywords/KeywordData_Basic_Default.asset b/Assets/Mods/Basic/Keywords/KeywordData_Basic_Default.asset index f5fe4dbe..9dfcdd37 100644 --- a/Assets/Mods/Basic/Keywords/KeywordData_Basic_Default.asset +++ b/Assets/Mods/Basic/Keywords/KeywordData_Basic_Default.asset @@ -116,5 +116,17 @@ MonoBehaviour: description: Keyword_Blessing_Description index: 16 isKeyDuplicated: 0 + - Key: Purify + Value: + name: Keyword_Purify + description: Keyword_Purify_Description + index: 17 + isKeyDuplicated: 0 + - Key: Reuseable + Value: + name: Keyword_Reuseable + description: Keyword_Reuseable_Description + index: 18 + isKeyDuplicated: 0 dividerPosProp: 0.2 - keywordToAdd: Blessing + keywordToAdd: Reuseable diff --git a/Assets/Mods/Basic/Localization/Localization_Basic_ClericCards.csv b/Assets/Mods/Basic/Localization/Localization_Basic_ClericCards.csv index 3c2ab7b2..0b322a74 100644 --- a/Assets/Mods/Basic/Localization/Localization_Basic_ClericCards.csv +++ b/Assets/Mods/Basic/Localization/Localization_Basic_ClericCards.csv @@ -1,12 +1,12 @@ Key,English,Simplified Chinese,Traditional Chinese,Japanese,Korean,Vietnamese,Thai Card_Basic_LessRestoration_DisplayName,Less Restoration,次级恢复术,,,,, -Card_Basic_LessRestoration_FunctionText,"$Keyword(""Exhaustible""): $Attribute(""ExhaustibleCount""), Heal $Attribute(""HealAmount"") and basic dispel target.",$Keyword("Exhaustible"): $Attribute("ExhaustibleCount")\n治疗目标$Attribute("Heal")点生命值,并施加弱驱散。,,,,, +Card_Basic_LessRestoration_FunctionText,"$Keyword(""Exhaustible""): $Attribute(""ExhaustibleCount""), Heal $Attribute(""HealAmount"") and basic dispel target.",$Keyword("Exhaustible"): $Attribute("ExhaustibleCount")\n$Keyword("Purify")并治疗目标$Attribute("Heal")点生命值。,,,,, Card_Basic_PrayerOfHealing_DisplayName,Prayer Of Healing,治疗祷言,,,,, Card_Basic_PrayerOfHealing_FunctionText,TODO,$Keyword("Exhaustible"): $Attribute("ExhaustibleCount")\n治疗所有友方目标$Attribute("Heal")点生命值。,,,,, Card_Basic_BlessedHolyWater_DisplayName,Blessed Holy Water,祝福圣水,,,,, Card_Basic_BlessedHolyWater_FunctionText,TODO,将1张“圣水”加入公共牌组。,,,,, Card_Basic_Sanctuary_DisplayName,Sanctuary,庇护术,,,,, -Card_Basic_Sanctuary_FunctionText,TODO,,,,,, +Card_Basic_Sanctuary_FunctionText,TODO,$Keyword("Purify")一名友方目标。\n$Keyword("Reuseable")。,,,,, Card_Basic_ShieldOfDevotion_DisplayName,Shield Of Devotion,虔诚护盾,,,,, Card_Basic_ShieldOfDevotion_FunctionText,TODO,,,,,, Card_Basic_FreedomOfMovement_DisplayName,Freedom Of Movement,行动自如,,,,, diff --git a/Assets/Mods/Basic/Localization/Localization_Basic_GeneralKeywords.csv b/Assets/Mods/Basic/Localization/Localization_Basic_GeneralKeywords.csv index 9ece4a7c..5082460f 100644 --- a/Assets/Mods/Basic/Localization/Localization_Basic_GeneralKeywords.csv +++ b/Assets/Mods/Basic/Localization/Localization_Basic_GeneralKeywords.csv @@ -29,3 +29,7 @@ Keyword_Exhaustible,Exhaustible,消耗性,,,,, Keyword_Exhaustible_Description,"After play this card for certain times, exhaust it.",在你打出这张牌一定次数之后,消耗它。,,,,, Keyword_Blessing,Blessing,赐福,,,,, Keyword_Blessing_Description,This card is able to target allies.,可以对队友使用这张卡牌。,,,,, +Keyword_Purify,Purify,净化,,,,, +Keyword_Purify_Description,Remove debuffs.,驱散负面效果。,,,,, +Keyword_Reuseable,Reuseable,复用,,,,, +Keyword_Reuseable_Description,This card will not be discarded after use.,这张卡在使用之后不会被丢弃。,,,,, diff --git a/Assets/Scripts/MainGame/Card/CardMainFunctions.cs b/Assets/Scripts/MainGame/Card/CardMainFunctions.cs index 31af1dcd..4ff14f74 100644 --- a/Assets/Scripts/MainGame/Card/CardMainFunctions.cs +++ b/Assets/Scripts/MainGame/Card/CardMainFunctions.cs @@ -266,7 +266,7 @@ namespace Continentis.MainGame.Card if (user is PlayerHero playerHero) { - if(!HasKeyword("Reuse")) + if(!HasKeyword("Reuseable")) { CommandQueueManager.Instance.AddCommand(playerHero.deckSubmodule.DiscardCard(cardInstance, false)); CommandQueueManager.Instance.AddCommand(new Cmd_Function(() =>