/// <summary> /// 获取设备状态 /// </summary> /// <param name="cardPos">卡片位置</param> /// <param name="boxNum">回收箱卡数量</param> /// <returns></returns> public static Status GetStatus(ref CardPos cardPos, ref BoxCardNum boxNum) { if (!IsUse) { return(Status.CARD_SUCC); } try { int iCardPos, iBoxNum; Status ret = (Status)Card_GetStatus(out iCardPos, out iBoxNum); if (ret != Status.CARD_SUCC) { AppLog.Write("[CardIssuer][GetStatus]" + ret.ToString(), AppLog.LogMessageType.Warn); } else { cardPos = (CardPos)iCardPos; boxNum = (BoxCardNum)iBoxNum; } return(ret); } catch (System.Exception e) { AppLog.Write("[CardIssuer][GetStatus]Error!\n" + e.ToString(), AppLog.LogMessageType.Error); return(Status.CARD_FAIL); } }
void EnterHand(CardData card, CardPos from = CardPos.Deck) { handCards.Add(card); cardViewControl.OpenCard(card); //cardViewControl.HandCardPosUpdate(); }
public void SetInfo(CardData _card, CardPos _form, CardPos _to) { card = _card; burstNum = 0; from = _form; to = _to; }
public void SetInfo(CardData _card) { card = _card; burstNum = 0; from = CardPos.Null; to = CardPos.Null; }
public void SetInfo(CardData _card, int _burstNum) { card = _card; burstNum = _burstNum; from = CardPos.Null; to = CardPos.Null; }
public void CmdPush() { //カード操作todo.....例)ポジション、正反面、など... CardPosition = new Vector3Int(1, 1, 1); //カードをクリエイト、クライアントを同期処理 GameObject Card = Instantiate(CardPrefab, CardPosition, CardRotion.rotation); NetworkServer.Spawn(CardPos, CardPos.GetComponent <NetworkIdentity>().assetId); //クライアントのエフェクト表す CardEffect(); }
public void CardMove(CardData card, CardPos to, int condition = 0) { CardPos from = GetCardPosition(card); if (from == to) { return; } RemoveOriPos(card); if (to == CardPos.Hand) { EnterHand(card); } else if (to == CardPos.Deck) { deck.Add(card); if (condition == 0) { Shuffle(); } } else if (to == CardPos.Cemetery) { cemetery.Add(card); } else if (to == CardPos.Banish) { banish.Add(card); } CardInfo cif = TriggerManager.instance.GetTriggerInfo <CardInfo>(); cif.SetInfo(card, from, to); cif.GoTrigger(TriggerType.CardMove); if (from == CardPos.Deck && to == CardPos.Hand) { cif.GoTrigger(TriggerType.Draw); } }
void moveCard(CardViewModel card, CardPos pos) { switch (pos) { case CardPos.Hand: card.transform.SetParent(cardSpawnRoot); break; case CardPos.Servant: card.transform.SetParent(servantRoot); card.transform.localPosition = Vector3.zero; break; case CardPos.Throw: card.transform.SetParent(throwRoot); break; default: return; } }
public object CheckStatus() { BoxCardNum num = BoxCardNum.Null; CardPos pos = CardPos.CardOnErrorPos; Status ret = GetStatus(ref pos, ref num); if (ret == Status.CARD_SUCC) { if (num == BoxCardNum.Null) { ret = Status.Null; } else if (num == BoxCardNum.CardFew) { ret = Status.CardFew; } else if (num == BoxCardNum.CardEnough) { ret = Status.CardEnough; } } return(ret); }
/// <summary> /// 读取此道信息 /// </summary> /// <param name="track1"></param> /// <param name="track2"></param> /// <param name="track3"></param> /// <returns></returns> public static Status ReadCardTrack(ref string track1, ref string track2, ref string track3) { if (!IsUse) { return(Status.CARD_SUCC); } try { CardPos cardPos = CardPos.CardOnErrorPos; BoxCardNum boxNum = BoxCardNum.Null; Status ret = (Status)GetStatus(ref cardPos, ref boxNum); if (ret == Status.CARD_SUCC && cardPos == CardPos.CardOnTrackReadPos) { byte[] bTrack1 = new byte[128]; byte[] bTrack2 = new byte[128]; byte[] bTrack3 = new byte[128]; ret = (Status)Card_ReadAll(bTrack1, bTrack2, bTrack3); if (ret == Status.CARD_SUCC) { track1 = Encoding.Default.GetString(bTrack1).Trim(); track2 = Encoding.Default.GetString(bTrack2).Trim(); track3 = Encoding.Default.GetString(bTrack3).Trim(); } } else { ret = Status.CARD_FAIL; } return(ret); } catch (System.Exception e) { AppLog.Write("[CardIssuer][ReadCardTrack]Error!", AppLog.LogMessageType.Error, e); return(Status.CARD_FAIL); } }
CardPos RemoveOriPos(CardData card) { CardPos pos = GetCardPosition(card); if (pos == CardPos.Hand) { ExitHand(card); } else if (pos == CardPos.Deck) { deck.Remove(card); } else if (pos == CardPos.Cemetery) { cemetery.Remove(card); } else if (pos == CardPos.Banish) { banish.Remove(card); } return(pos); }
public MoveCard(CardData _card, CardPos _to) { card = _card; to = _to; }