public void Move(MoveCardCommand command) { var card = _dbContext.Cards.SingleOrDefault(x => x.Id == command.CardId); card.ColumnId = command.ColumnId; _dbContext.SaveChanges(); }
private IEnumerator PlayResource(Transform card, Card cardData) { card.Find("CardBack").gameObject.SetActive(false); AdjustHeroResources(cardData); DelayCommand dc = new DelayCommand(GameManager.Instance.GetActiveHand(true), 1f); dc.AddToQueue(); yield return(new WaitForSeconds(1)); MoveCardCommand mc = new MoveCardCommand(card.gameObject, GameManager.Instance.GetActiveDiscardPile(true)); mc.AddToQueue(); if (cardData is StarterData) { StarterData sd = (StarterData)cardData; RemoveCardFromHand(sd); AddCardToDiscardPile(sd); } else if (cardData is EssentialsData) { EssentialsData ed = (EssentialsData)cardData; RemoveCardFromHand(ed); AddCardToDiscardPile(ed); } }
public IActionResult MoveCard([FromBody] MoveCardCommand command) { return(Ok(new { Moved = true })); }
private IEnumerator PromoteMinion(Transform card, CardVisual cv) { yield return(new WaitForSeconds(1)); int cost = int.Parse(cv.cost.text); GameManager.Instance.ActiveHero(true).AdjustMana(cost, false); DelayCommand dc = new DelayCommand(GameManager.Instance.GetActiveHand(true), 1f); dc.AddToQueue(); yield return(new WaitForSeconds(1)); MoveCardCommand mc = new MoveCardCommand(card.gameObject, GameManager.Instance.GetActiveMinionZone(true)); mc.AddToQueue(); cv.AdjustHealth(2, true); cv.PromotedHealth = cv.CurrentHealth; if (cv.Md != null) { RemoveCardFromHand(cv.Md); } else { RemoveCardFromHand(cv.Sd); } card.Find("CardBack").gameObject.SetActive(false); }
public Task <MoveCardCommandResult> MoveCard(MoveCardCommand command) { Task <MoveCardCommandResult> result; result = _mediator.Send(command); return(result); }
public IActionResult MoveCard([FromBody] MoveCardCommand command) { _boardService.Move(command); return(Ok(new { Moved = true })); }
public void Move(MoveCardCommand command) { var card = _dbContext.Cards.SingleOrDefault(x => x.CardID == command.CardId); if (card != null) { card.ColumnID = command.ColumnId; } _dbContext.SaveChanges(); }
//This function is called when PostNotification is called on the SACRIFICE_SELECTED event and isPromoting is true public void PromoteMinionWithPlayback() { DelayCommand dc = new DelayCommand(GameManager.Instance.GetActiveHand(true), 1f); dc.AddToQueue(); MoveCardCommand mc = new MoveCardCommand(GameManager.Instance.MinionToSacrifice, GameManager.Instance.GetActiveDiscardPile(true), UIManager.Instance.GetActiveDiscardList(true)); mc.AddToQueue(); //GameManager.Instance.MoveCard(GameManager.Instance.MinionToSacrifice, GameManager.Instance.GetActiveDiscardPile(true), GameManager.Instance.GetActiveDiscardPileList(true), true); MoveCardFromHand(true); }
public void move(MoveCardCommand cmd) { cmd.run(); // remove commands after prev cmd idx // becase new cmd comming, old cmd history branch should remove int n = _cmds.Count - (PrevCmdIdx + 1); if (n > 0) { _cmds.RemoveRange(PrevCmdIdx + 1, n); } _cmds.Add(cmd); PrevCmdIdx = _cmds.Count - 1; }
private IEnumerator SendCardToDiscard(Transform card, CardVisual cv) { DelayCommand dc = new DelayCommand(GameManager.Instance.GetActiveHand(true), 1f); dc.AddToQueue(); yield return(new WaitForSeconds(1f)); MoveCardCommand mc = new MoveCardCommand(card.gameObject, GameManager.Instance.GetActiveDiscardPile(true)); mc.AddToQueue(); if (cv.Md != null) { AddCardToDiscardPile(cv.Md); } else { AddCardToDiscardPile(cv.Sd); } }
//This function is called when PostNotification is called on the SACRIFICE_SELECTED event and isPromoting is true public void PromoteMinionWithPlayback() { DelayCommand dc = new DelayCommand(GameManager.Instance.GetActiveHand(true), 1f); dc.AddToQueue(); MoveCardCommand mc = new MoveCardCommand(GameManager.Instance.MinionToSacrifice, GameManager.Instance.GetActiveDiscardPile(true), UIManager.Instance.GetActiveDiscardList(true)); mc.AddToQueue(); //GameManager.Instance.MoveCard(GameManager.Instance.MinionToSacrifice, GameManager.Instance.GetActiveDiscardPile(true), GameManager.Instance.GetActiveDiscardPileList(true), true); CardVisual cv = GameManager.Instance.MinionToSacrifice.GetComponent <CardVisual>(); MinionDataPhoton mdp; StarterDataPhoton sdp; byte[] cardByte; string type; if (cv.Md != null) { mdp = new MinionDataPhoton(cv.Md); cardByte = DataHandler.Instance.ObjectToByteArray(mdp); type = "Minion"; } else { sdp = new StarterDataPhoton(cv.Sd); cardByte = DataHandler.Instance.ObjectToByteArray(sdp); type = "Starter"; } object[] data = new object[] { cardByte, type }; PlayCardPun.Instance.SendData(REMOVE_MINION, data); MoveCardFromHand(true); }
private void MoveCardFromHand(bool isMinion) { bool promote = false; DelayCommand dc = new DelayCommand(GameManager.Instance.GetActiveHand(true), 1f); dc.AddToQueue(); card = gameObject; CardVisual cv = card.GetComponent <CardVisual>(); byte[] cardByte; MinionDataPhoton mdp; StarterDataPhoton sdp; EssentialsDataPhoton edp; string type; if (isMinion) { Card cardData = card.GetComponent <CardVisual>().CardData; if (UIManager.Instance.GetActiveHandList(true).Contains(cardData)) { UIManager.Instance.GetActiveHandList(true).Remove(cardData); } if (GameManager.Instance.IsPromoting) { card = GameManager.Instance.MinionToPromote; StartOrCancelPromotionEvent(false); summonPanel.SetActive(false); cv.AdjustHealth(2, true); cv.IsPromoted = true; cv.PromotedHealth = cv.CurrentHealth; promote = true; } MoveCardCommand mc = new MoveCardCommand(card, GameManager.Instance.GetActiveMinionZone(true)); mc.AddToQueue(); //Add Condition Scripts if (thisCard is MinionData) { GameManager.Instance.GetComponent <ConditionAndEffectAssigner>().Md = thisCard as MinionData; GameManager.Instance.GetComponent <ConditionAndEffectAssigner>().Card = card; EventManager.Instance.PostNotification(EVENT_TYPE.ASSIGN_CONDITIONS); } if (!StartGameController.Instance.tutorial) { if (thisCard is MinionData) { mdp = new MinionDataPhoton(cv.Md); cardByte = DataHandler.Instance.ObjectToByteArray(mdp); type = "Minion"; } else { sdp = new StarterDataPhoton(cv.Sd); cardByte = DataHandler.Instance.ObjectToByteArray(sdp); type = "Starter"; } object[] data = new object[] { cardByte, type }; if (!promote) { PlayCardPun.Instance.SendData(PLAY_MINION, data); } else { PlayCardPun.Instance.SendData(PROMOTE_MINION, data); } } } else { Card cardData = card.GetComponent <CardVisual>().CardData; if (UIManager.Instance.GetActiveHandList(true).Contains(cardData)) { UIManager.Instance.GetActiveHandList(true).Remove(cardData); } //GameManager.Instance.MoveCard(card, GameManager.Instance.GetActiveDiscardPile(true), GameManager.Instance.GetActiveDiscardPileList(true), true); int position = 0; if (thisCard is StarterData) { position = gameObject.transform.GetSiblingIndex(); type = "Starter"; } else { position = gameObject.transform.GetSiblingIndex(); type = "Essential"; } if (!StartGameController.Instance.tutorial) { object[] data = new object[] { position, type }; PlayCardPun.Instance.SendData(PLAY_RESOURCE, data); } MoveCardCommand mc = new MoveCardCommand(card, GameManager.Instance.GetActiveDiscardPile(true), UIManager.Instance.GetActiveDiscardList(true)); mc.AddToQueue(); } AdjustHeroResources(); }
public async Task <IActionResult> MoveCard([FromBody] MoveCardCommand command) { return(Ok(await Mediator.Send(command))); }
private void MoveCardFromHand(bool isMinion) { DelayCommand dc = new DelayCommand(GameManager.Instance.GetActiveHand(true), 1f); dc.AddToQueue(); card = gameObject; CardVisual cv = card.GetComponent <CardVisual>(); if (isMinion) { Card cardData = card.GetComponent <CardVisual>().CardData; if (UIManager.Instance.GetActiveHandList(true).Contains(cardData)) { UIManager.Instance.GetActiveHandList(true).Remove(cardData); } if (GameManager.Instance.IsPromoting) { card = GameManager.Instance.MinionToPromote; StartOrCancelPromotionEvent(false); summonPanel.SetActive(false); cv.AdjustHealth(2, true); cv.IsPromoted = true; cv.PromotedHealth = cv.CurrentHealth; } MoveCardCommand mc = new MoveCardCommand(card, GameManager.Instance.GetActiveMinionZone(true)); mc.AddToQueue(); //Add Condition Scripts if (thisCard is MinionData) { //GameManager.Instance.GetComponent<ConditionAndEffectAssigner>().Md = thisCard as MinionData; //GameManager.Instance.GetComponent<ConditionAndEffectAssigner>().Card = card; //EventManager.Instance.PostNotification(EVENT_TYPE.ASSIGN_CONDITIONS); gameObject.AddComponent <TutorialConditionListener>(); gameObject.GetComponent <TutorialConditionListener>().ConditionEvent = EVENT_TYPE.TAP_MINION; if (thisCard.MinionID == 4) { gameObject.AddComponent <DrawCardListener>(); } else if (thisCard.MinionID == 101) { gameObject.AddComponent <BuffMinionStarter>(); gameObject.AddComponent <EssentialListener>(); gameObject.GetComponent <EssentialListener>().Type = "Gold"; } gameObject.GetComponent <TutorialConditionListener>().Card = gameObject; gameObject.GetComponent <TutorialConditionListener>().Md = thisCard as MinionData; gameObject.GetComponent <TutorialConditionListener>().enabled = true; } cv.particleGlow.gameObject.SetActive(false); } else { Card cardData = card.GetComponent <CardVisual>().CardData; if (UIManager.Instance.GetActiveHandList(true).Contains(cardData)) { UIManager.Instance.GetActiveHandList(true).Remove(cardData); } MoveCardCommand mc = new MoveCardCommand(card, GameManager.Instance.GetActiveDiscardPile(true), UIManager.Instance.GetActiveDiscardList(true)); mc.AddToQueue(); //GameManager.Instance.MoveCard(card, GameManager.Instance.GetActiveDiscardPile(true), GameManager.Instance.GetActiveDiscardPileList(true), true); } AdjustHeroResources(); //Increase Count in TutorialUI int count = StartGameController.Instance.TutorialObject.GetComponent <TutorialTextController>().count; int maxCount = StartGameController.Instance.TutorialObject.GetComponent <TutorialTextController>().maxCount; if (count < maxCount) { StartGameController.Instance.TutorialObject.GetComponent <TutorialTextController>().count++; } else { StartGameController.Instance.TutorialObject.GetComponent <TutorialTextController>().ShowUI(); } TutorialPlayCard tpc = gameObject.GetComponent <TutorialPlayCard>(); Destroy(tpc); }