public Vector3 GetLocationHand(PlayerControllerChan p, int i, bool isGetAngle, bool isTouch) { int numberCard = p.mCardHand.FindAll(c => c.gameObject != null).Count; float angleBetween = numberCard * maxAngleBetween; float range = Mathf.Clamp(angleBetween, minRange, maxRange); float angle = range / numberCard; float startAngle = 170f; float fixRotate = 100f; if (numberCard <= 17) { startAngle += (maxRange - range) / 2f; fixRotate -= (maxRange - range) / 2f; } if (isGetAngle) { return(new Vector3(0, 0, (fixRotate + angle) - angle * (i + 1 + 0.5f))); } Vector3 offset = GetPointCircle(locationHand.localPosition, isTouch ? radiusOnTouch : radius, angle * (i + 0.5f) + startAngle); offset.z = -5 + (-1) * i; //if (isTouch) // offset.z = -20f; return(offset); }
/** * cardID: Cây đánh ra * currentPlayer: Người đánh bài * nextPlayer: Người có lượt * **/ public void playAudioDisCard(int cardID, PlayerControllerChan currentPlayer, PlayerControllerChan nextPlayer, PlayerControllerChan lastPlayer) { if (!currentPlayer.isBatBao) { if (checkDiMotCayDa(cardID, nextPlayer)) { AudioManager.Instance.Play(AudioManager.SoundEffect.DiMotMinhCayDa); } else if (checkTranhBiNhaTrenDi(cardID, lastPlayer)) { if (!currentPlayer.playSounChayKoNhaTrenDe) { AudioManager.SoundEffect soundPlayCheKoDi = getSoundChayThoiKoNhaTrenUDe(); AudioManager.Instance.Play(AudioManager.SoundEffect.ChayThoiKoNhaTrenUDe); if (soundPlayCheKoDi == AudioManager.SoundEffect.ChayThoiKoNhaTrenUDe) { currentPlayer.playSounChayKoNhaTrenDe = true; } } } else { // kiểm tra cây đỏ dánh lần đầu tiên if (GameUtil.IscardRed(cardID) && isFirstRound(currentPlayer)) { // kiểm tra cây tiếp cây đỏ cây gì if (checkChayDiDauSound(nextPlayer)) { AudioManager.Instance.Play(AudioManager.SoundEffect.ChayDiDau); } else { AudioManager.SoundEffect soundPlay = getSoundRedCard(); // kiểm tra đã ăn cây đỏ nào chưa! if (!checkAnCayDo(cardID, currentPlayer)) { AudioManager.Instance.Play(soundPlay); // kiểm tra âm thanh đang bật là lên xe là phóng hay là thử một cây xem sao if (soundPlay == AudioManager.SoundEffect.LenXeLaPhong) { currentPlayer.playSoundLenXeLaPhong = true; } else if (soundPlay == AudioManager.SoundEffect.ThuMotConXemSao) { currentPlayer.playSoundThuMotConXemSao = true; } } else { playSoundNormal(cardID, currentPlayer); } } } else { playSoundNormal(cardID, currentPlayer); } } } }
private bool checkAnChoSo(int[] listCardID, PlayerControllerChan lastPlayer, PlayerControllerChan currentPlayer) { if (lastPlayer.playSoundThuMotConXemSao) { lastPlayer.playSoundThuMotConXemSao = false; if (lastPlayer.mCardDiscarded.Count == 1) { if (currentPlayer.mCardDiscarded.Count > 1) { return(false); } else if (currentPlayer.mCardDiscarded.Count == 1 && currentPlayer.mCardDiscardedAndDraw[0].CardId == listCardID[0]) { return(false); } else { if (listCardID.Length == 2) { if (listCardID[0] == lastPlayer.mCardDiscarded[0].CardId) { return(true); } } } } } return(false); }
private void Server_EventPluginMessageOnProcess(string command, string action, EsObject eso) { if (command == "getHandRobot") { if (eso.variableExists("players")) { foreach (EsObject obj in eso.getEsObjectArray("players")) { string username = obj.getString("userName"); PlayerControllerChan p = GameModelChan.GetPlayer(username); if (obj.getIntegerArray("hand").Length != p.mCardHand.Count) { Debug.LogWarning("Số lượng card không phù hợp giũa client và server: " + p.username); } else { if (p.mCardHand.FindAll(c => c.CardId == -1).Count == 0) { return; } foreach (int cardId in obj.getIntegerArray("hand")) { ECard card = p.mCardHand.Find(c => c.CardId == cardId); if (card == null) { p.mCardHand.Find(c => c.CardId == -1).CardId = cardId; } } } } } } }
public static CUIPlayerChan Create(PlayerControllerChan p, Transform parentTransform) { if (listNoSlot.ContainsKey(p.slotServer)) { GameObject.Destroy(listNoSlot[p.slotServer]); } GameObject obj = (GameObject)GameObject.Instantiate(Resources.Load("Prefabs/Gameplay/PlayerInfoPrefab")); obj.name = "Player " + (int)p.mSide; obj.transform.parent = parentTransform; obj.transform.localPosition = Vector3.zero; obj.transform.localScale = scaleAvatar; CUIPlayerChan cui = obj.GetComponent <CUIPlayerChan>(); cui.player = p; p.cuiPlayer = cui; p.AvatarTexture(delegate(Texture _texture) { if (cui != null && cui.avatar != null) { //if(cui.avatar.GetComponentInChildren<UITexture>() !=null) cui.avatar.GetComponentInChildren <UITexture>().mainTexture = _texture; } }); if (p.mSide == ESide.Slot_0 && GameModelChan.YourController != null) { cui.avatar.GetComponentInChildren <UITexture>().enabled = false; for (int i = 0; i < cui.avatar.childCount; i++) { GameObject.Destroy(cui.avatar.GetChild(i).gameObject); } GameObject.Destroy(cui.GetComponentInChildren <UISprite>().gameObject); cui.timerCountDown.FindChild("Background").GetComponent <UISprite>().spriteName = "bgYourTimer"; cui.timerCountDown.FindChild("Background").GetComponent <UISprite>().MakePixelPerfect(); cui.timerCountDown.FindChild("Foreground").GetComponent <UISprite>().spriteName = "bgYourTimer-1"; cui.timerCountDown.FindChild("Foreground").GetComponent <UISprite>().MakePixelPerfect(); Transform iconWarning = cui.gameObject.transform.FindChild("IconWarning"); Transform iconMaster = cui.gameObject.transform.FindChild("IconMaster"); iconWarning.parent = GameModelChan.game.mPlaymat.locationHand.parent.parent; iconMaster.parent = GameModelChan.game.mPlaymat.locationHand.parent.parent; iconWarning.localPosition = new Vector3(40f, 10f, -5f); iconMaster.localPosition = new Vector3(-50f, 10f, -5f); iconWarning.GetComponent <UISprite>().depth = 22; iconWarning.parent = cui.transform; iconMaster.parent = cui.transform; cui.ChangePositionYouLevelBar(); } else { cui.labelUserName.text = p.username; } cui.UpdateInfo(); return(cui); }
public void AddWaitingPlayer(PlayerControllerChan player) { PlayerWaitingView view = PlayerWaitingView.Create(player, tableListWaiting); view.gameObject.name = waitingViews.Count + " " + player.username; waitingViews.Add(view); tableListWaiting.Reposition(); tableListWaiting.transform.parent.GetComponent <UIScrollView>().ResetPosition(); }
public void UpdateInfo() { PlayerControllerChan your = GameModelChan.YourController; if (avatar != null) { if (GameManager.PlayGoldOrChip == "chip") { labelMoney.text = Utility.Convert.Chip(player.chip); } else if (GameManager.PlayGoldOrChip == "gold") { labelMoney.text = Utility.Convert.Chip(player.gold); } } if ((int)GameModelChan.CurrentState <= (int)GameModelChan.EGameState.waitingForReady) { if (player.PlayerState == EPlayerController.EPlayerState.ready && player != your) { if (imageReady == null) { imageReady = (GameObject)GameObject.Instantiate(Resources.Load("Prefabs/Gameplay/ReadyAvatarPrefab")); imageReady.transform.parent = avatar; imageReady.transform.localPosition = new Vector3(0f, 0f, -10f); imageReady.transform.localScale = Vector3.one; } } } if (GameModelChan.CurrentState == GameModelChan.EGameState.finalizing) { if (GameModelChan.MiniState == GameModelChan.EGameStateMini.summary_point) { ShowTinhDiem(); } else if (GameModelChan.MiniState == GameModelChan.EGameStateMini.summary_result || GameModelChan.MiniState == GameModelChan.EGameStateMini.summary_exchange) { if (objTinhDiem != null) { GameObject.Destroy(objTinhDiem); } ShowEffect(); } else { if (objEffect != null) { GameObject.Destroy(objEffect); } if (objLabelExchange != null) { GameObject.Destroy(objLabelExchange); } } } CheckIcon(); }
public static void SkipCard(int soundId, int index) { PlayerControllerChan currentPlayer = GetPlayer(index); if (currentPlayer.mCardTrash.Count > 0) { currentPlayer.mCardDiscardedAndDraw.Add(currentPlayer.mCardTrash[currentPlayer.mCardTrash.Count - 1]); } SoundGameplay.Instances.PlaySoundInGame(soundId, GetPlayer(index)); }
private Boolean checkDiMotCayDa(int cardID, PlayerControllerChan nextPlayer) { if (nextPlayer.mCardTrash.Count > 0) { if (cardID == nextPlayer.mCardTrash[nextPlayer.mCardTrash.Count - 1].CardId) { return(true); } } return(false); }
private Boolean checkChayDiDauSound(PlayerControllerChan nextPlayer) { if (nextPlayer.mCardDiscardedAndDraw.Count > 0 && GameUtil.IscardRed(nextPlayer.mCardDiscardedAndDraw[nextPlayer.mCardDiscardedAndDraw.Count - 1].CardId) && nextPlayer.playSoundLenXeLaPhong) { return(true); } else { return(false); } }
public static PlayerWaitingView Create(PlayerControllerChan player, UIGrid parent) { GameObject gobj = (GameObject)GameObject.Instantiate(Resources.Load("Prefabs/Gameplay/PlayerWaiting/PlayerWaitingView")); gobj.transform.parent = parent.transform; gobj.transform.localPosition = Vector3.zero; gobj.transform.localScale = Vector3.one; PlayerWaitingView item = gobj.GetComponent <PlayerWaitingView>(); item.SetData(player); return(item); }
public bool checkTranhBiNhaTrenDi(int cardID, PlayerControllerChan lastPlayer) { if (null != lastPlayer && lastPlayer.mCardSteal.Count > 0) { if (cardID == lastPlayer.mCardSteal[lastPlayer.mCardSteal.Count - 1].steals[0].CardId && cardID == lastPlayer.mCardSteal[lastPlayer.mCardSteal.Count - 1].steals[1].CardId) { return(true); } } return(false); }
private bool checkAnCayDo(int cardId, PlayerControllerChan currentPlayer) { if (currentPlayer.mCardSteal.Count > 0) { for (int i = 0; i < currentPlayer.mCardSteal.Count; i++) { if (GameUtil.IscardRed(currentPlayer.mCardSteal[i].steals[0].CardId) || GameUtil.IscardRed(currentPlayer.mCardSteal[i].steals[1].CardId)) { return(true); } } } return(false); }
public int isPlayBoTomOmLeo(PlayerControllerChan currentPlayer) { int count = 0; for (int i = 0; i < currentPlayer.mCardDiscarded.Count; i++) { for (int j = 0; j < cardTom.Length; j++) { if (currentPlayer.mCardDiscarded[i].CardId == (int)cardTom[i]) { count++; } } } return(count); }
public void SetData(PlayerControllerChan player) { this.player = player; player.AvatarTexture(delegate(Texture texture) { avatar.mainTexture = texture; }); lbUserName.text = player.username; if (GameManager.PlayGoldOrChip == "chip") { lbChip.text = Utility.Convert.ChipToK(player.chip) + " chip"; } else if (GameManager.PlayGoldOrChip == "gold") { lbChip.text = Utility.Convert.ChipToK(player.gold) + " gold"; } lbUserName.transform.parent.GetComponent <UITable>().Reposition(); GetComponent <UIToggle>().value = player.isPriority; }
private void playSoundNormal(int cardID, PlayerControllerChan currentPlayer) { switch ((GameUtil.ListCardID)cardID) { case GameUtil.ListCardID.NGU_VAN_W: AudioManager.Instance.Play(AudioManager.SoundEffect.DanhChiNgoiChoChiDung); break; case GameUtil.ListCardID.CHI_CHI: AudioManager.Instance.Play(AudioManager.SoundEffect.DanhChiDungChoChiNgoi); break; case GameUtil.ListCardID.TAM_VAN_J: case GameUtil.ListCardID.TAM_SACH: case GameUtil.ListCardID.THAT_VAN_W: { if (!currentPlayer.playSoundBoTomOmLeo) { AudioManager.SoundEffect soundBotom = getSoundBoTomOmLeo(); AudioManager.Instance.Play(AudioManager.SoundEffect.BoTomLeoOmLeo); if (soundBotom == AudioManager.SoundEffect.BoTomLeoOmLeo) { currentPlayer.playSoundBoTomOmLeo = true; } } } break; case GameUtil.ListCardID.BAT_VAN_J: AudioManager.Instance.Play(AudioManager.SoundEffect.BatVangoiNhiVan); break; case GameUtil.ListCardID.NHI_VAN_W: AudioManager.Instance.Play(AudioManager.SoundEffect.NhiVanGoiBatVan); break; case GameUtil.ListCardID.TAM_VAN_W: AudioManager.Instance.Play(AudioManager.SoundEffect.TamVanGoiThatSach); break; case GameUtil.ListCardID.THAT_SACH: AudioManager.Instance.Play(AudioManager.SoundEffect.ThatSachGoiTamVan); break; } }
public static PlayerChat Create(string chatContent, PlayerControllerChan player) { if (chatContent.Length > 21) { chatContent = chatContent.Substring(0, 20) + "..."; } GameObject obj = (GameObject)GameObject.Instantiate(Resources.Load("Prefabs/Gameplay/sfx/PlayerChatPrefab")); obj.name = "Chat Content"; obj.transform.parent = player.cuiPlayer.gameObject.transform; obj.transform.localPosition = new Vector3(player.mSide == ESide.Slot_1 ? -40f : 40f, 70f, -10f); obj.transform.localScale = Vector3.one; obj.GetComponent <PlayerChat>().textChat.text = chatContent; obj.GetComponent <PlayerChat>().type = player.mSide == ESide.Slot_1 ? Type.Brackets_Right : Type.Brackets_Left; obj.GetComponent <PlayerChat>().ReDraw(); return(obj.GetComponent <PlayerChat>()); }
public void PlaySoundStealCard(int[] listCardId, PlayerControllerChan currentPlayer, PlayerControllerChan lastPlayer) { if (listCardId.Length == 4)// chiu' { AudioManager.Instance.Play(AudioManager.SoundEffect.ChiuCHiu); } else if (checkDinhMucRoi(listCardId, currentPlayer)) { AudioManager.Instance.Play(AudioManager.SoundEffect.DinhMucRoi); } else if (checkCauDay(listCardId, currentPlayer)) { AudioManager.Instance.Play(AudioManager.SoundEffect.CauDay); } else if (checkAnChoSo(listCardId, lastPlayer, currentPlayer)) { AudioManager.Instance.Play(AudioManager.SoundEffect.AnChoSo); } }
//đánh cây đỏ vòng 1,2 sau đó lại ăn cây đỏ nhưng phải hạ cây đen xuống private bool checkCauDay(int[] listCardID, PlayerControllerChan currentPlayer) { // check vòng 1,2 if (currentPlayer.mCardDiscardedAndDraw.Count < 3) { // check ăn cây đỏ và hạ cây đen if (listCardID.Length == 2 && GameUtil.IscardRed(listCardID[0]) && !GameUtil.IscardRed(listCardID[1])) { //đánh cây đỏ foreach (ECard card in currentPlayer.mCardDiscarded) { if (GameUtil.IscardRed(card.CardId)) { return(true); } } } } return(false); }
public Vector3 GetLocationSteals(PlayerControllerChan p, int indexSteal, int index) { float CARD_STEAL_HEIGHT = -30f; if (p.mCardSteal[indexSteal].steals.Count == 4) { CARD_STEAL_HEIGHT /= 3; } float x = indexSteal * CARD_STEAL_SPACE; //if (index > 0) // x += 1f; if (p.mSide == ESide.Slot_1 || (p.mSide == ESide.Slot_0 && GameModelChan.YourController == null)) { return(new Vector3(-x, index * CARD_STEAL_HEIGHT, -index)); } return(new Vector3(x, index * CARD_STEAL_HEIGHT, -index)); }
//Dính mực rồi (Đánh quân đỏ sau lại ăn chẵn đỏ) private bool checkDinhMucRoi(int[] listCardID, PlayerControllerChan currentPlayer) { if (isFirstRound(currentPlayer)) { if (currentPlayer.mCardDiscarded.Count > 0) { ECard card = currentPlayer.mCardDiscarded[currentPlayer.mCardDiscarded.Count - 1]; //???? if (GameUtil.IscardRed(card.CardId)) // cây đánh ngay trước là cây đỏ { if (listCardID.Length == 2) { if (listCardID[0] == listCardID[1] && GameUtil.IscardRed(listCardID[0]))// ăn chắn đỏ { return(true); } } } } } return(false); }
/// <summary> /// Khi người chơi thoát ra khỏi bàn /// </summary> public IEnumerator PlayerLeftOut(PlayerControllerChan p) { while (GameModelChan.DealCardDone == false) { yield return(new WaitForEndOfFrame()); } foreach (ChanCard c in p.mCardHand) { c.SetColor(); } foreach (ChanCard c in p.mCardTrash) { c.SetColor(); } foreach (Meld m in p.mCardMelds) { foreach (ChanCard c in m.meld) { c.SetColor(); } } }
public override void OnPublicMessage(Electrotank.Electroserver5.Api.PublicMessageEvent e) { #region VIEW CONTENT CHAT if (e.UserName != GameManager.Instance.mInfo.username) { PlayerControllerChan player = GameModelChan.GetPlayer(e.UserName); if (player != null) { if (playerChats.ContainsKey(player)) { if (playerChats[player] != null) { playerChats[player].DestroyMe(); } playerChats.Remove(player); } playerChats.Add(GameModelChan.GetPlayer(e.UserName), PlayerChat.Create(e.Message, GameModelChan.GetPlayer(e.UserName))); } } #endregion str = string.Format("{0}" + e.UserName.ToUpper() + ":[-] " + e.Message + "\n", GameModelChan.ListWaitingPlayer.Find(plc => plc.username == e.UserName) != null ? "[FFCC00]" : "[FF6600]"); base.OnPublicMessage(e); }
public static void SetPlayer(int index, PlayerControllerChan p) { if (p == null) { if (model._listPlayer[index] != null) { GameModelChan.game.Listener.RegisterEventPlayerListChanged(model._listPlayer[index], true); model._listPlayer[index].Reset(); if (model._listPlayer[index].cuiPlayer != null && model._listPlayer[index].cuiPlayer.gameObject) { GameObject.Destroy(model._listPlayer[index].cuiPlayer.gameObject); } } } model._listPlayer[index] = p; if (p == null) { DrawInfoPlayerNoSlot(); } }
public Vector3 GetLocationTrash(PlayerControllerChan p, int i) { float space = CARD_STEAL_SPACE; int maxTrash = 12; if (p.mSide == ESide.Slot_0) { maxTrash = 9; } if (p.mCardTrash.Count > maxTrash) { space = CARD_STEAL_SPACE * maxTrash / p.mCardTrash.Count; } if (p.mSide == ESide.Slot_3 || p.mSide == ESide.Slot_0) { return(new Vector3(i * space, 0f, -i)); } else { return(new Vector3(-i * space, 0f, -i)); } }
/// <summary> /// Thực hiện sau khi người chơi pick lần thứ 2 /// </summary> IEnumerator OnPickDone(ECard card) { #region THÔNG BÁO VỚI SERVER LÀ ĐÃ THỰC HIỆN XONG BƯỚC 2 if (!serverRequestUpdateHandStep2 && GameModelChan.YourController != null && GameModelChan.IndexInTurn == GameModelChan.YourController.slotServer) { int index = Array.FindIndex <GameObject>(listPickObject, obj => obj == card.gameObject); GameManager.Server.DoRequestPluginGame(Utility.SetEsObject(Fields.GAMEPLAY.PLAY, new object[] { Fields.ACTION, "getHand", "slotChoice", Utility.SetEsObject(null, "donePick", index) })); } #endregion #region CHỜ SERVER TRẢ VỀ THÔNG TIN NGƯỜI CHƠI while (string.IsNullOrEmpty(firstPlayer) || firstCardServerResponse == -1) { yield return(new WaitForEndOfFrame()); } pickAfterDealcard.CardId = firstCardServerResponse; pickAfterDealcard.gameObject.transform.parent = card.gameObject.transform.parent; pickAfterDealcard.gameObject.transform.localPosition = Vector3.zero; pickAfterDealcard.gameObject.SetActive(true); pickAfterDealcard.gameObject.transform.localPosition = new Vector3(pickAfterDealcard.gameObject.transform.localPosition.x, pickAfterDealcard.gameObject.transform.localPosition.y, -2f); iTween.RotateTo(pickAfterDealcard.gameObject, new Vector3(0f, 0f, 0f), 0.5f); yield return(new WaitForSeconds(0.5f)); #endregion List <DealCardRotation> listDealcard = new List <DealCardRotation>(); #region QUY ĐỊNH VỊ TRÍ SẼ ĐẾN CỦA CÁC MÔ BÀI PlayerControllerChan playerFirst = GameModelChan.ListPlayerInGame.Find(p => p.username == firstPlayer); DealCardRotation dealFirst = DealCardRotation.GetListRotation.Find(d => d.transform.childCount == 2); listDealcard.Add(dealFirst); dealFirst.StartRotate(playerFirst.mSide); PlayerControllerChan nextPlayer = GameModelChan.GetNextPlayer(playerFirst.slotServer); DealCardRotation nextDeal = dealFirst.GetNextAvalible; for (int i = 0; i < GameModelChan.ListPlayerInGame.Count - 1; i++) { listDealcard.Add(nextDeal); nextDeal.StartRotate(nextPlayer.mSide); nextPlayer = GameModelChan.GetNextPlayer(nextPlayer.slotServer); nextDeal = nextDeal.GetNextAvalible; } #endregion while (!listDealcard.TrueForAll(d => d.isComplete)) { yield return(new WaitForFixedUpdate()); } #region DI CHUYỂN VỀ VỊ TRÍ CÓ AVATAR DealCardRotation.GetListRotation.ForEach(dealCard => { if (dealCard.transform.childCount > 0) { MoveAllChildToTransform(dealCard.transform, GameModelChan.ListPlayerInGame.Find(p => p.mSide == dealCard.sideEnd).cuiPlayer.transform, 0.5f); } } ); #endregion yield return(new WaitForSeconds(0.6f)); currentStep = StepDealCard.DONE; Array.ForEach <GameObject>(listPickObject, obj => GameObject.Destroy(obj)); }
/// <summary> /// Khi có người chơi đánh bài /// </summary> /// <param name="index">Người đánh bài</param> /// <param name="cardValue">Card đã đánh</param> public static void Discard(int soundId, int index, int cardValue, params string[] discardToPlayer) { ECard card = GetCard_FromHandPlayer(index, cardValue); if (GameModelChan.YourController == null || GameModelChan.YourController.slotServer != index) { card = new ChanCard(index, cardValue); card.Instantiate(game.mPlaymat.locationPlayer[(int)GetPlayer(index).mSide]); GetPlayer(index).mCardHand.Add(card); card.UpdateParent(index); } GetPlayer(index).mCardDiscardedAndDraw.Add(card); GetPlayer(index).mCardDiscarded.Add(card); GetPlayer(index).mCardHand.Remove(card); if (discardToPlayer != null && discardToPlayer.Length > 0 && discardToPlayer[0] != null) { PlayerControllerChan p = GetPlayer(discardToPlayer[0]); GetPlayer(discardToPlayer[0]).mCardTrash.Add(card); card.ChangeSide(p.slotServer); card.UpdateParent(p.slotServer); } else { GetPlayer(index).mCardTrash.Add(card); } game.fullLaying = false; card.UpdateParent(index); if (YourController != null && YourController.slotServer == index) { game.OnClickSort(game.btSorted.gameObject); } else { game.UpdateHand(index, 0.5f); } if (discardToPlayer != null && discardToPlayer.Length > 0 && discardToPlayer[0] != null) { game.UpdateHand(GetPlayer(discardToPlayer[0]).slotServer, 0.5f); } if (discardToPlayer != null && discardToPlayer.Length > 0 && discardToPlayer[0] != null)// co' chiu' tra? cua { Debug.Log(GameModelChan.GetPlayer(discardToPlayer[0]).username + " PlayerState " + GameModelChan.GetPlayer(index).PlayerState.ToString()); if (GameModelChan.GetPlayer(discardToPlayer[0]).PlayerState == EPlayerController.EPlayerState.inTurnStealOrIgnore) { // Chíu cây bốc MiniState = EGameStateMini.stealCard_or_skip; //SoundGameplay.Instances.playAudioDisCard(cardValue, GetPlayer(index), GetPlayer(discardToPlayer[0]), null); } else { // Chíu cây bốc đánh MiniState = EGameStateMini.stealCard_or_draw; //SoundGameplay.Instances.playAudioDisCard(cardValue, GetPlayer(index), GetNextPlayer(discardToPlayer[0]), null); } } else { MiniState = EGameStateMini.stealCard_or_draw; //SoundGameplay.Instances.playAudioDisCard(cardValue, GetPlayer(index), GetNextPlayer(index), GetLastPlayer(index)); } SoundGameplay.Instances.PlaySoundInGame(soundId, GetPlayer(index)); }
public void PlaySoundInGame(int soundId, PlayerControllerChan currentPlayer) { switch ((AudioManager.SoundEffect)soundId) { case AudioManager.SoundEffect.TayDo: AudioManager.Instance.Play(AudioManager.SoundEffect.TayDo); break; case AudioManager.SoundEffect.ThuMotConXemSao: currentPlayer.playSoundThuMotConXemSao = true; AudioManager.Instance.Play(AudioManager.SoundEffect.ThuMotConXemSao); break; case AudioManager.SoundEffect.BoTomLeoOmLeo: AudioManager.Instance.Play(AudioManager.SoundEffect.BoTomLeoOmLeo); break; case AudioManager.SoundEffect.ChayThoiKoNhaTrenUDe: AudioManager.Instance.Play(AudioManager.SoundEffect.ChayThoiKoNhaTrenUDe); break; case AudioManager.SoundEffect.BatVangoiNhiVan: AudioManager.Instance.Play(AudioManager.SoundEffect.BatVangoiNhiVan); break; case AudioManager.SoundEffect.NhiVanGoiBatVan: AudioManager.Instance.Play(AudioManager.SoundEffect.NhiVanGoiBatVan); break; case AudioManager.SoundEffect.TamVanGoiThatSach: AudioManager.Instance.Play(AudioManager.SoundEffect.TamVanGoiThatSach); break; case AudioManager.SoundEffect.ThatSachGoiTamVan: AudioManager.Instance.Play(AudioManager.SoundEffect.ThatSachGoiTamVan); break; case AudioManager.SoundEffect.DanhChiNgoiChoChiDung: AudioManager.Instance.Play(AudioManager.SoundEffect.DanhChiNgoiChoChiDung); break; case AudioManager.SoundEffect.DanhChiDungChoChiNgoi: AudioManager.Instance.Play(AudioManager.SoundEffect.DanhChiDungChoChiNgoi); break; case AudioManager.SoundEffect.LenXeLaPhong: AudioManager.Instance.Play(AudioManager.SoundEffect.LenXeLaPhong); currentPlayer.playSoundLenXeLaPhong = true; break; case AudioManager.SoundEffect.DiMotMinhCayDa: AudioManager.Instance.Play(AudioManager.SoundEffect.DiMotMinhCayDa); break; // an bai case AudioManager.SoundEffect.ChayDiDau: AudioManager.Instance.Play(AudioManager.SoundEffect.ChayDiDau); break; case AudioManager.SoundEffect.CauDay: AudioManager.Instance.Play(AudioManager.SoundEffect.CauDay); break; case AudioManager.SoundEffect.DinhMucRoi: AudioManager.Instance.Play(AudioManager.SoundEffect.DinhMucRoi); break; case AudioManager.SoundEffect.ChiuCHiu: AudioManager.Instance.Play(AudioManager.SoundEffect.ChiuCHiu); break; case AudioManager.SoundEffect.AnChoSo: AudioManager.Instance.Play(AudioManager.SoundEffect.AnChoSo); break; case AudioManager.SoundEffect.AnGiDanhDay: AudioManager.Instance.Play(AudioManager.SoundEffect.AnGiDanhDay); break; case AudioManager.SoundEffect.AnLuon: AudioManager.Instance.Play(AudioManager.SoundEffect.AnLuon); break; case AudioManager.SoundEffect.CauLai: AudioManager.Instance.Play(AudioManager.SoundEffect.CauLai); break; case AudioManager.SoundEffect.DanhCaiLayAiMaU: AudioManager.Instance.Play(AudioManager.SoundEffect.DanhCaiLayAiMaU); break; case AudioManager.SoundEffect.DeDuoiAn: AudioManager.Instance.Play(AudioManager.SoundEffect.DeDuoiAn); break; case AudioManager.SoundEffect.DuoiDung: AudioManager.Instance.Play(AudioManager.SoundEffect.DuoiDung); break; case AudioManager.SoundEffect.DuoiLuon: AudioManager.Instance.Play(AudioManager.SoundEffect.DuoiLuon); break; case AudioManager.SoundEffect.HetDoRoi: AudioManager.Instance.Play(AudioManager.SoundEffect.HetDoRoi); break; case AudioManager.SoundEffect.Duoi: AudioManager.Instance.Play(AudioManager.SoundEffect.Duoi); break; case AudioManager.SoundEffect.BaoLangKoChan: AudioManager.Instance.Play(AudioManager.SoundEffect.BaoLangKoChan); break; } }
private Boolean isFirstRound(PlayerControllerChan currentPlayer) { return(currentPlayer.mCardDiscardedAndDraw.Count == 1); }