From dd9b360bfc0326f7256087a70cadb3fd71ea49c1 Mon Sep 17 00:00:00 2001 From: henriquenakashima Date: Sun, 20 Sep 2020 22:09:53 -0400 Subject: [PATCH] Implement GraniteDefense --- Assets/Battle/BattleScene.unity | 2 +- .../CardsMonsters/GraniteDefenseMCard.cs | 21 +++++++++++++++++++ .../CardsMonsters/GraniteDefenseMCard.cs.meta | 11 ++++++++++ Assets/Battle/MonsterCardDatabase.cs | 2 ++ TODO.txt | 5 ++++- 5 files changed, 39 insertions(+), 2 deletions(-) create mode 100644 Assets/Battle/CardsMonsters/GraniteDefenseMCard.cs create mode 100644 Assets/Battle/CardsMonsters/GraniteDefenseMCard.cs.meta diff --git a/Assets/Battle/BattleScene.unity b/Assets/Battle/BattleScene.unity index 905cbb6..31523fc 100644 --- a/Assets/Battle/BattleScene.unity +++ b/Assets/Battle/BattleScene.unity @@ -306,7 +306,7 @@ MonoBehaviour: heroIds: 010000000000000002000000 monsterIds: 010000000000000000000000 cardIds: 00000000000000000000000001000000010000000100000004000000030000000300000000000000 - mCardIds: 0800000008000000080000000800000008000000 + mCardIds: 0600000006000000060000000800000008000000 mCardOwnerIndexes: 0000000000000000000000000000000000000000 heroUIPrefab: {fileID: 6641511084601005557, guid: ef1b469b45cedee418e4c4adf577cd00, type: 3} diff --git a/Assets/Battle/CardsMonsters/GraniteDefenseMCard.cs b/Assets/Battle/CardsMonsters/GraniteDefenseMCard.cs new file mode 100644 index 0000000..6e867e1 --- /dev/null +++ b/Assets/Battle/CardsMonsters/GraniteDefenseMCard.cs @@ -0,0 +1,21 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class GraniteDefenseMCard : MonsterCard +{ + public GraniteDefenseMCard(BattleParticipant owner) + : base(owner, MCardId.GolemBerserk, "Granite Defense", 3, CardType.Skill, + "Block 5 damage on other allies.") { + } + + public override IEnumerator Use(IBattleEffectApplier effectApplier, MonsterViewpoint monsterViewpoint) { + yield return new WaitForSeconds(1f); + foreach (BattleMonster monster in monsterViewpoint.Monsters) { + if (monster != this.owner) { + effectApplier.Apply(new BlockEffect(monster, 5)); + yield return new WaitForSeconds(1f); + } + } + } +} diff --git a/Assets/Battle/CardsMonsters/GraniteDefenseMCard.cs.meta b/Assets/Battle/CardsMonsters/GraniteDefenseMCard.cs.meta new file mode 100644 index 0000000..c5554ee --- /dev/null +++ b/Assets/Battle/CardsMonsters/GraniteDefenseMCard.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f39c6f5691c165540b6ea0ee1c2bde57 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Battle/MonsterCardDatabase.cs b/Assets/Battle/MonsterCardDatabase.cs index 385635c..f400adf 100644 --- a/Assets/Battle/MonsterCardDatabase.cs +++ b/Assets/Battle/MonsterCardDatabase.cs @@ -27,6 +27,8 @@ public class MonsterCardDatabase : CardDatabase return new VampireFangsMCard(owner); case MCardId.GolemFist: return new GolemFistMCard(owner); + case MCardId.GraniteDefense: + return new GraniteDefenseMCard(owner); case MCardId.GolemCharge: return new GolemChargeMCard(owner); case MCardId.GolemBerserk: diff --git a/TODO.txt b/TODO.txt index 04fa99d..376b25b 100644 --- a/TODO.txt +++ b/TODO.txt @@ -1,3 +1,6 @@ - Rename CardId to HCardId - Animate rearrange hand after card is used -- Make hero cards be used in sequence Coroutines, not in parallel \ No newline at end of file +- Make hero cards be used in sequence Coroutines, not in parallel +- Do not Highlight unusable cards +- Dim unusable cards +- Add stun marker \ No newline at end of file