public void zz_CopyAndPaste(CardFunction card) { if (dedicate(card.getCompany())) { Services.playerBuffManager.GainNewBuff(new CopyAndPaste(), 1); } }
public void zz_Effect_ChangeIP(CardFunction card) { if (dedicate(card.getCompany())) { Services.actionManager.LowerDecompressCost(10); } }
public void zz_FileRecovery(CardFunction card) { if (dedicate(card.getCompany())) { Services.statsManager.GainHp(8); } }
private void InitializeCardProperties() { GetParam(Regs.SPC_PCITYP, out cardType); GetParam(Regs.SPC_MIINST_MINADCLOCK, out minSampleRate); GetParam(Regs.SPC_MIINST_MAXADCLOCK, out maxSampleRate); GetParam(Regs.SPC_MIINST_MODULES, out moduleCount); GetParam(Regs.SPC_MIINST_CHPERMODULE, out maxChannels); GetParam(Regs.SPC_MIINST_BYTESPERSAMPLE, out bytesPerSample); int fncType; GetParam(Regs.SPC_FNCTYPE, out fncType); switch (fncType) { case Regs.SPCM_TYPE_AI: cardFunction = CardFunction.AnalogIn; break; case Regs.SPCM_TYPE_AO: cardFunction = CardFunction.AnalogOut; break; case Regs.SPCM_TYPE_DI: cardFunction = CardFunction.DigitalIn; break; case Regs.SPCM_TYPE_DO: cardFunction = CardFunction.DigitalOut; break; case Regs.SPCM_TYPE_DIO: cardFunction = CardFunction.DigitalIO; break; } }
public CardThreading() { CardChecking = new CardFunction(CardCk); CardReading = new CardFunction(CardRead); CardWriting = new CardFunction(CardWrite); CardReseting = new CardFunction(CardReset); }
public void CheckInitial(CardFunction card) { if (Services.actionManager.AttackField.Count == 0) { card.initial = true; } }
public void CheckSequence(CardFunction card) { if (Services.actionManager.AttackField.Count >= 3) { card.sequence = true; } }
public void zz_DiskStorage(CardFunction card) { if (dedicate(card.getCompany())) { Services.actionManager.GenerateCardAddToHand(wipe); } }
public void zz_initialDraw2(CardFunction card) { if (card.initial) { zz_Draw_Cards(2); card.initial = false; } }
public void zz_initialDealExtra(CardFunction card) { if (card.initial) { zz_Deal_Damage(2 * Services.actionManager.AttackField.Count); card.initial = false; } }
public void zz_OffenseUplink(CardFunction card) { if (card.sequence) { zz_Deal_Damage(8); card.sequence = false; } }
public void zz_SecurityUplink(CardFunction card) { if (card.sequence) { zz_Effect_GainArmor(10); card.sequence = false; } }
public void zz_reallocateMemory(CardFunction card) { zz_Deal_Damage(7); if (dedicate(card.getCompany())) { Services.resourceManager.GainAttackBar(15); } }
public void Zz_OneCardInHand(CardFunction card) { if (checkCurrentCanPlay(card.GetComponent <CardFunction>())) { if (Services.actionManager.PlayerHand.Count != 1) { card.GetComponent <CardFunction>().canBePlayed = false; } } }
public void zz_NoCardInAttackField(CardFunction card) { if (checkCurrentCanPlay(card.GetComponent <CardFunction>())) { if (Services.actionManager.AttackField.Count > 0) { card.GetComponent <CardFunction>().canBePlayed = false; } } }
private bool dedicate(Card.CardCompany company) { CardFunction temp = Services.actionManager.DrawCard(); if (temp != null) { return(temp.getCompany() == company); } return(false); }
public void zz_Effect_BatchedWipe(CardFunction card) { if (card.sequence) { card.sequence = false; for (int i = 0; i < Services.actionManager.AttackField.Count; i++) { Services.actionManager.GenerateCardAddToHand(wipe); } } }
public void AddToDrawPile(CardFunction card) { if (card.getKeywords() != null && card.getKeywords().Contains(Card.Keywords.priority)) { Debug.Log("priority"); PriorityDeck.Add(card); } DrawDeck.Add(card); card.gameObject.transform.position = drawDeck.position; //StartCoroutine(MoveFromTo(card.transform, card.transform.position, drawPile.position, 50)); should cards move towards the draw position or just instantly be there? }
public void zz_Dedicate_burn(CardFunction card) { if (dedicate(card.getCompany())) { Services.actionManager.currentTargetEnemy.GainNewBuff(new Burn(), 8); } else { Services.actionManager.currentTargetEnemy.GainNewBuff(new Burn(), 4); } }
public GameObject IDtoGameobeject(int ID) //輸入ID就可以抓到卡牌 { int[] cardIDmanager = CardIDManager(ID); Color color = cardColor[cardIDmanager[0]]; CardFunction cardfunction = cardFunctions[cardIDmanager[1]]; int repeatTimes = cardIDmanager[2]; string CardName = "Card_" + color.ToString() + " " + cardfunction.ToString() + " " + repeatTimes.ToString(); GameObject TheCard = GameObject.Find(CardName); return(TheCard); }
public void zz_Dedicate_harden(CardFunction card) { if (dedicate(card.getCompany())) { Services.playerBuffManager.GainNewBuff(new Evasion(), 1); } else { Services.statsManager.GainArmor(6); } }
public void AddToHand(CardFunction card) { if (PlayerHand.Count <= playerHandMaxSize - 1) { PlayerHand.Add(card); card.gameObject.GetComponent <SortingGroup>().sortingOrder = PlayerHand.IndexOf(card); } else { AddToDiscardPile(card); } }
public void zz_RiskyArchive(CardFunction card) { if (card.initial) { zz_GainRedMana(50); card.initial = false; } else { zz_GainRedMana(20); } }
public void PressChooseButton() { GameObject a = Instantiate(currentSelectCard.gameObject); AddToRunReck(a.GetComponent <CardFunction>()); currentSelectCard = null; draftLeft--; if (draftLeft == 0) { ChangeState(new BeforeCombat(this)); } else if (draftLeft > 0) { ChangeState(new Reward(this)); } }
void AddNewCard(Color color, CardFunction cardfunction, int ID, int repeatTimes) //新增一張牌 { GameObject card = Instantiate(Resources.Load <GameObject>("Prefabs/TheCard")); card.GetComponent <Card>().color = color; card.GetComponent <Card>().CardFunction = cardfunction; card.GetComponent <Card>().ID = ID; card.name = "Card_" + color.ToString() + " " + cardfunction.ToString() + " " + repeatTimes.ToString(); card.GetComponent <Card>().cardState = CardState.InDeck; GameObject graphic = Instantiate(Resources.Load <GameObject>("Prefabs/Pattern")); graphic.GetComponent <SpriteRenderer>().sprite = Resources.Load <Sprite>("graphic/" + color.ToString() + cardfunction.ToString()); graphic.transform.SetParent(card.transform); graphic.transform.localPosition = new Vector3(0, 0, -0.1f); graphic.transform.eulerAngles = new Vector3(0, 180, 0); }
public void PlayCard(CardFunction card) { if (currentTargetEnemy == null) { //Pop up Services.visualEffectManager.PlayErrorPopUp("Please select a target first!"); } else if (card.CanPlay()) { Services.resourceManager.ConsumeDrawBar(card.GetDrawCost()); Services.resourceManager.ConsumeAttackBar(card.GetAttackCost()); card.Played(); PlayerHand.Remove(card); Services.eventManager.Fire(new PlayerPlayCardEvent(card)); UpdateCardCanPlay(); } }
private bool CheckBan() //確認上一家是否禁止自己出牌 { bool result = false; GameObject LastCard = gameManager.IDtoGameobeject(gameManager.LastCardID); CardState cardState = LastCard.GetComponent <Card>().cardState; CardFunction cardFunction = LastCard.GetComponent <Card>().CardFunction; if (cardState == CardState.Played) //先確認功能牌尚未發揮作用 { if ((cardFunction == CardFunction.DrawTwo || cardFunction == CardFunction.Skip) || cardFunction == CardFunction.WildDrawFour) { gameManager.BanAction(); float[] NameToPosition = gameManager.Name_To_Position(name); float Xpos = NameToPosition[0]; float Ypos = NameToPosition[1]; GameObject Stop = Instantiate(Resources.Load <GameObject>("Prefabs/Stop")); Stop.transform.localPosition = new Vector3(Xpos, Ypos, -2f); StartCoroutine(WaitForDestroy("Stop(Clone)")); switch (cardFunction) { case CardFunction.DrawTwo: SoundEffect.PlusTwoVoice(); EnergyManager(2); break; case CardFunction.WildDrawFour: SoundEffect.PlusFourVoice(); EnergyManager(4); break; case CardFunction.Skip: SoundEffect.StopVoice(); EnergyManager(1); break; } result = true; } } return(result); }
private void CheckReverse() //確認是否打出迴轉 { GameObject LastCard = gameManager.IDtoGameobeject(gameManager.LastCardID); CardState cardState = LastCard.GetComponent <Card>().cardState; CardFunction cardFunction = LastCard.GetComponent <Card>().CardFunction; if (cardFunction == CardFunction.Reverse) //先確認功能牌尚未發揮作用 { if (cardState == CardState.Played) { Debug.Log("Reverse"); turnScript.ChangeOrder(order); LastCard.GetComponent <Card>().cardState = CardState.Used; GameObject Rotation = Instantiate(Resources.Load <GameObject>("Prefabs/Rotation")); Rotation.transform.localPosition = new Vector3(0, 0, -8f); StartCoroutine(WaitForDestroy("Rotation(Clone)")); SoundEffect.ReverseVoice(); } } }
private void DrawCardAction() //依照功能牌,進行抽卡 { GameObject LastCard = gameManager.IDtoGameobeject(gameManager.LastCardID); CardFunction cardFunction = LastCard.GetComponent <Card>().CardFunction; if (cardFunction == CardFunction.DrawTwo) { for (int i = 1; i <= 2; i++) { DrawCard(); } } else if (cardFunction == CardFunction.WildDrawFour) { for (int i = 1; i <= 4; i++) { DrawCard(); } } }
IEnumerator AttackCoroutine() { while (AttackField.Count != 0) { CardFunction card = AttackField[0]; card.TriggerEffect(); AttackField.RemoveAt(0); yield return(new WaitForSeconds(1.0f)); } Debug.Log("end attack"); //currentTargetEnemy.TakeDamage(Services.statsManager.GetCurrentAttackDmg()); Services.combatManager.ContinueTimeCycle(); attacking = false; //Services.statsManager.LoseAllTempAttack(); currentAttackCost = attackActionCost; UpdateBasicActionCostDisplay(); attackButton.interactable = true; UpdateCardCanPlay(); yield return(null); }