From 3b01ea2797c4ab48ce88eb69ee2efa399b06466a Mon Sep 17 00:00:00 2001 From: auroxy <romaric.blonde@laposte.net> Date: Mon, 5 Aug 2019 15:34:32 +0200 Subject: [PATCH] unlimited card draw --- Assets/Scripts/Alterations/AddScoreOnCardDraw.cs | 2 ++ Assets/Scripts/CardEvents.cs | 3 ++- Assets/Scripts/Deck/Hand.cs | 1 + Assets/Scripts/GameManager.cs | 2 ++ Assets/Scripts/Ui/HandUi.cs | 1 + 5 files changed, 8 insertions(+), 1 deletion(-) diff --git a/Assets/Scripts/Alterations/AddScoreOnCardDraw.cs b/Assets/Scripts/Alterations/AddScoreOnCardDraw.cs index 8b1ba11..ea4ff0d 100644 --- a/Assets/Scripts/Alterations/AddScoreOnCardDraw.cs +++ b/Assets/Scripts/Alterations/AddScoreOnCardDraw.cs @@ -8,6 +8,7 @@ public class AddScoreOnCardDraw : Alteration public AddScoreOnCardDraw(AlterationInfo info, AlterationPool pool) : base(info, pool) { CardEvent<Card>.Register(Event.CARD_DRAW, OnCardPlayed); + CardEvent<Card>.Register(Event.EXTRA_CARD_DRAW, OnCardPlayed); } public void OnCardPlayed(Card card) @@ -22,6 +23,7 @@ public class AddScoreOnCardDraw : Alteration public override void CleanUp() { CardEvent<Card>.Unregister(Event.CARD_DRAW, OnCardPlayed); + CardEvent<Card>.Unregister(Event.EXTRA_CARD_DRAW, OnCardPlayed); mPool.Remove(this); } } diff --git a/Assets/Scripts/CardEvents.cs b/Assets/Scripts/CardEvents.cs index dff366c..7c06a97 100644 --- a/Assets/Scripts/CardEvents.cs +++ b/Assets/Scripts/CardEvents.cs @@ -8,7 +8,8 @@ public enum Event CARD_PLAYED, CARD_DRAW, CARD_DISCARD, - CARD_EFFECT_APPLIED + CARD_EFFECT_APPLIED, + EXTRA_CARD_DRAW } public class CardEvent<T> diff --git a/Assets/Scripts/Deck/Hand.cs b/Assets/Scripts/Deck/Hand.cs index 31644ed..1715686 100644 --- a/Assets/Scripts/Deck/Hand.cs +++ b/Assets/Scripts/Deck/Hand.cs @@ -61,6 +61,7 @@ public class Hand : MonoBehaviour newCard.transform.SetParent(transform); newCard.gameObject.SetActive(true); newCard.GetComponent<CardUi>().Show(); + CardEvent<Card>.Trigger(Event.EXTRA_CARD_DRAW, newCard); } else { diff --git a/Assets/Scripts/GameManager.cs b/Assets/Scripts/GameManager.cs index 7cd231e..62636d7 100644 --- a/Assets/Scripts/GameManager.cs +++ b/Assets/Scripts/GameManager.cs @@ -106,6 +106,7 @@ public class GameManager : MonoBehaviour currentState = GameState.FIGHT; CardEvent<Card>.Register(global::Event.CARD_DRAW, OnCardDraw); + CardEvent<Card>.Register(global::Event.EXTRA_CARD_DRAW, OnCardDraw); CardEvent<Card>.Register(global::Event.CARD_DISCARD, OnCardDiscard); mIsRegistered = true; } @@ -113,6 +114,7 @@ public class GameManager : MonoBehaviour public void StartDraft() { CardEvent<Card>.Unregister(global::Event.CARD_DRAW, OnCardDraw); + CardEvent<Card>.Unregister(global::Event.EXTRA_CARD_DRAW, OnCardDraw); CardEvent<Card>.Unregister(global::Event.CARD_DISCARD, OnCardDiscard); mIsRegistered = false; diff --git a/Assets/Scripts/Ui/HandUi.cs b/Assets/Scripts/Ui/HandUi.cs index 39d4001..8ee0a8b 100644 --- a/Assets/Scripts/Ui/HandUi.cs +++ b/Assets/Scripts/Ui/HandUi.cs @@ -12,6 +12,7 @@ public class HandUi : MonoBehaviour private void Awake() { CardEvent<Card>.Register(Event.CARD_DRAW, OnCardEvent); + CardEvent<Card>.Register(Event.EXTRA_CARD_DRAW, OnCardEvent); CardEvent<Card>.Register(Event.CARD_DISCARD, OnCardEvent); } -- GitLab