protected void AddChips(Transform parent, long chips) { for (int i = parent.childCount - 1; i >= 0; i--) { GameObject.DestroyImmediate(parent.GetChild(i).gameObject); } BetData bd = BlackJack_Data.GetInstance().m_BetData[m_BjGameBase.m_RoomInfo.m_nRoomLevel - 1]; int[] grades = bd.m_nGrades; for (int i = grades.Length - 1; i >= 0; i--) { if (chips >= grades[i] || i == 0) { int index = i + (chips > grades[i] ? 2 : 1); UnityEngine.Object obj = (GameObject)m_BjGameBase.m_AssetBundle.LoadAsset("Model_chouma" + index); GameObject gameObj = GameMain.instantiate(obj) as GameObject; gameObj.transform.SetParent(parent, false); gameObj.GetComponentInChildren <TextMesh>().text = GameFunction.FormatCoinText(chips); break; } } CustomAudioDataManager.GetInstance().PlayAudio(1003); }
/// <summary> /// 播放UI动画 /// </summary> /// <param name="animationName">动画名称</param> /// <param name="lifeTime">动画时间</param> /// <param name="parentTfm">动画挂载点</param> /// <param name="assetBundle">动画资源包</param> /// <param name="audioID">音效ID</param> public static GameObject PlayUIAnim(string animationName, float lifeTime, Transform parentTfm, AssetBundle assetBundle, int audioID = 0) { if (string.IsNullOrEmpty(animationName)) { return(null); } if (parentTfm == null) { Debug.Log("动画挂载点不存在!!!"); return(null); } if (assetBundle == null) { Debug.Log("动画资源加载失败!!!"); return(null); } UnityEngine.Object obj = assetBundle.LoadAsset(animationName); GameObject gameObj = (GameObject)GameMain.instantiate(obj); gameObj.transform.SetParent(parentTfm, false); DragonBones.UnityArmatureComponent animate = gameObj.GetComponentInChildren <DragonBones.UnityArmatureComponent>(); animate.animation.Play("newAnimation"); if (lifeTime > 0f) { GameObject.Destroy(gameObj, lifeTime); } if (audioID != 0) { CustomAudioDataManager.GetInstance().PlayAudio(audioID); } return(gameObj); }
public static CustomAudioDataManager GetInstance() { if (instance_ == null) { instance_ = new CustomAudioDataManager(); } return(instance_); }
public void Init(CGame_Fishing game, splineMove move, uint index, byte typeId) { AssetBundle ab = game.FishingAssetBundle; m_Animator = GetComponent <Animator>(); m_Animator.speed = 0f; m_SplineMove = move; m_nOnlyId = index; m_nTypeId = typeId; m_Renderers = gameObject.GetComponentsInChildren <Renderer>(); foreach (Renderer child in m_Renderers) { child.enabled = false; } if (m_SplineMove != null) { if (m_SplineMove.loopType != splineMove.LoopType.loop) { m_SplineMove.tween.OnComplete(OnComplete); } m_SplineMove.tween.OnPlay(OnPlay); } else { OnPlay(); } m_LockSitList.Clear(); m_LockPointTfm = transform.parent.Find("Point_LockTarget"); FishingFishData fd = Fishing_Data.GetInstance().m_FishData[m_nTypeId]; if (fd.m_nHitAudio != 0) { m_HitSound = gameObject.AddComponent <AudioSource>(); m_HitSound.clip = ab.LoadAsset <AudioClip>(CustomAudioDataManager.GetInstance().GetSoundName(fd.m_nHitAudio)); } if (fd.m_nDeadAudio != 0) { m_DeadSound = gameObject.AddComponent <AudioSource>(); m_DeadSound.clip = ab.LoadAsset <AudioClip>(CustomAudioDataManager.GetInstance().GetSoundName(fd.m_nDeadAudio)); } if (fd.m_szTalk.Length > 0) { m_TalkObj = (GameObject)ab.LoadAsset("talk_Image_BG"); m_TalkObj = (GameObject)Instantiate(m_TalkObj); m_TalkObj.GetComponentInChildren <Text>().text = fd.m_szTalk; m_TalkObj.transform.SetParent(game.MainUITfm.Find("point_talk"), false); Invoke("ShowTalk", fd.m_nTalkInterval); Invoke("HideTalk", fd.m_nTalkInterval + fd.m_nTalkShowTime); UpdateTalk(); m_TalkObj.SetActive(false); } }
public void PlaySound(int audioId) { if (hall) { CustomAudio.GetInstance().PlayCustomAudio((uint)audioId); } else { CustomAudioDataManager.GetInstance().PlayAudio(audioId); } }
// Use this for initialization void Start() { //获取声音 m_FireSound = GetComponent <AudioSource>(); m_FireSound.Stop(); m_AnimCtrl = transform.Find("Anime_01").GetComponent <DragonBones.UnityArmatureComponent>(); m_AnimCtrl.AddEventListener(DragonBones.EventObject.COMPLETE, AnimationEventHandler); m_LineImg = transform.Find(m_Data.m_szBulletPoint[0]).GetComponentInChildren <Image>(); PlayAnim("up"); CustomAudioDataManager.GetInstance().PlayAudio(1005); }
IEnumerator DealChargeCard() { yield return(new WaitWhile(() => m_bDealPoker)); int playerNum = 0; int startPos = 0; byte card = 0; Black_Role role; for (int i = RoomInfo.PlayerNum - 1; i >= 0; i--) { role = m_BjGameBase.m_RoomInfo.m_PlayerList[i]; if (role.m_vecBlackPoker[0].Count > 0) { if (playerNum == 0) { startPos = i; card = role.m_vecBlackPoker[1].Count > 0 ? role.m_vecBlackPoker[1][0] : role.m_vecBlackPoker[0][0]; } if (i == 0) { m_Animator.SetBool("HavePlayerRight", true); } playerNum++; } } if (playerNum != 0) { CustomAudioDataManager.GetInstance().PlayAudio(1006); m_Animator.SetTrigger("EndIdle"); m_Animator.SetBool("Charge", true); m_Animator.SetFloat("PlayerNum", playerNum); m_Animator.SetInteger("StartChargeNum", startPos); ChangePokerMat(card); yield return(new WaitWhile(() => m_bChargeCard)); m_bChargeCard = false; m_BjGameBase.OnEnd(); } Init(); }
protected void AddPoker(byte card, Transform parent) { string mat = GameCommon.GetPokerMat(card); //DebugLog.LogWarning("userid:" + m_nUserId + " card mat:" + mat); //UnityEngine.Object obj = (GameObject)m_BjGameBase.m_AssetBundle.LoadAsset("Model_Pai"); //GameObject gameObj = GameMain.instantiate(obj) as GameObject; //gameObj.transform.SetParent(parent, false); //gameObj.transform.GetComponentInChildren<MeshRenderer>().material = // m_BjGameBase.m_AssetBundle.LoadAsset<Material>(mat); parent.gameObject.SetActive(true); parent.GetComponent <MeshRenderer>().material = m_BjGameBase.m_AssetBundle.LoadAsset <Material>(mat); CustomAudioDataManager.GetInstance().PlayAudio(1005); }
void ClearChips(int cardPos = -1, int index = -1, bool playSound = true) { if (m_ChipPointArray != null) { bool bHaveChip = false; if (cardPos < 0) { foreach (Transform tfm in m_ChipPointArray) { foreach (Transform tfmChild in tfm) { bHaveChip = true; GameObject.Destroy(tfmChild.gameObject); } } } else { if (index < 0) { for (int i = 0; i < 3; i++) { foreach (Transform tfmChild in m_ChipPointArray[cardPos, i]) { bHaveChip = true; GameObject.Destroy(tfmChild.gameObject); } } } else { foreach (Transform tfmChild in m_ChipPointArray[cardPos, index]) { bHaveChip = true; GameObject.Destroy(tfmChild.gameObject); } } } if (bHaveChip && playSound) { CustomAudioDataManager.GetInstance().PlayAudio(1004); } } }
public static Fishing_Cannon Create(AssetBundle ab, Transform parent, byte id, byte level, uint bulletCost) { FishingCannonData fcd = Fishing_Data.GetInstance().m_CannonData[id]; GameObject obj = (GameObject)ab.LoadAsset(fcd.m_szCannon); obj = ((GameObject)GameMain.instantiate(obj)); obj.transform.SetParent(parent, false); obj.transform.Find(fcd.m_szLvPoint).GetComponent <UnityEngine.UI.Text>().text = level.ToString(); Fishing_Cannon fc = obj.AddComponent <Fishing_Cannon>(); fc.m_Data = fcd; fc.m_nTypeId = id; fc.m_nBulletCost = bulletCost * (uint)fcd.m_szBulletPoint.Length; if (fcd.m_nAudio != 0) { AudioSource audioSrc = obj.AddComponent <AudioSource>(); audioSrc.clip = ab.LoadAsset <AudioClip>(CustomAudioDataManager.GetInstance().GetSoundName(fcd.m_nAudio)); } return(fc); }
IEnumerator PopCoin(Fishing_Fish fish, FishingFishData fd, bool bLocal, long getCoin, Vector3 center, Vector3 targetPos, byte getSkillId) { //DebugLog.Log("num:" + num + " center:" + center + " target:" + targetPos); if (getCoin <= 0) { yield break; } CGame_Fishing game = fish.m_CatchRole.GameBase; AssetBundle ab = game.FishingAssetBundle; Canvas cv = game.GameCanvas; Transform root = cv.transform.Find("Root"); GameObject prefab; GameObject big = null; if (fd.m_nMultiple >= 20) { prefab = (GameObject)ab.LoadAsset("FishCoin_big"); big = ((GameObject)GameMain.instantiate(prefab)); big.transform.SetParent(root, false); big.transform.localPosition = center; game.m_AddItems.Add(big); Camera.main.DOShakePosition(1f, 1f).OnComplete(() => { Camera.main.transform.position = game.CameraSourcePos; }); CustomAudioDataManager.GetInstance().PlayAudio(1004); } else { CustomAudioDataManager.GetInstance().PlayAudio(1003); } yield return(new WaitUntil(() => m_bDeathEnd)); Transform effectTfm = fish.transform.parent.Find("Effect"); if (effectTfm != null) { effectTfm.DOScale(Vector3.zero, 1f); } fish.transform.parent.DOScale(Vector3.zero, 1f); prefab = (GameObject)ab.LoadAsset(bLocal ? "Text_HurtNum" : "Text_HurtNum_other"); GameObject textObj = ((GameObject)GameMain.instantiate(prefab)); textObj.transform.SetParent(root.Find("HurtNum"), false); textObj.transform.localPosition = center; textObj.transform.localScale = Vector3.zero; textObj.transform.GetComponent <Text>().text = GameFunction.FormatCoinText(getCoin, true, false); game.m_AddItems.Add(textObj); textObj.transform.DOScale(new Vector3(1f, 1f, 1f), 0.5f).OnComplete(() => { textObj.transform.DOScale(new Vector3(1f, 1f, 1f), 0.5f).OnComplete(() => { game.m_AddItems.Remove(textObj); Destroy(textObj); }); }); bool bCoin = true; if (getSkillId > 0 && bLocal) { if (getSkillId == RoomInfo.NoSit)//lottery { prefab = (GameObject)ab.LoadAsset("Skill_Ticket"); bCoin = false; } else { prefab = (GameObject)ab.LoadAsset("Skill_" + getSkillId); } if (prefab != null) { GameObject skillObj = Instantiate(prefab); skillObj.transform.SetParent(root, false); skillObj.transform.localPosition = center; game.m_AddItems.Add(skillObj); skillObj.transform.DOLocalMove(center + new Vector3(0, 100f, 0f), 1f).OnComplete(() => { game.m_AddItems.Remove(skillObj); Destroy(skillObj); }); } } if (bCoin) { int num = Mathf.CeilToInt((float)fd.m_nMultiple / 5) + 2; float radius = (num - 1) * 10f; float halfPi = Mathf.PI * 0.5f; float angle; prefab = (GameObject)ab.LoadAsset("FishCoin"); GameObject coin; Vector3 pos; List <GameObject> coinList = new List <GameObject>(); for (int i = 0; i < num; i++) { angle = Random.Range(0f, halfPi) * 4f; coin = ((GameObject)GameMain.instantiate(prefab)); coin.transform.SetParent(root, false); coin.transform.localPosition = center; pos = center + new Vector3(Mathf.Sin(angle), Mathf.Cos(angle)) * Random.Range(0f, radius); coin.transform.DOLocalMove(pos, 0.5f); //DebugLog.Log(i + ": angle:" + angle + " pos:" + pos); coinList.Add(coin); game.m_AddItems.Add(coin); yield return(new WaitForEndOfFrame()); } yield return(new WaitForSecondsRealtime(1f)); CustomAudioDataManager.GetInstance().PlayAudio(1002); float flyTime = 0.5f; foreach (GameObject obj in coinList) { if (obj == null) { continue; } Vector3 dir = targetPos - obj.transform.localPosition; Vector3 speed = new Vector3(dir.x / flyTime, 0f); float a = dir.y * 2f / (flyTime * flyTime); DOTween.To(() => obj.transform.localPosition, r => { obj.transform.localPosition += (speed * Time.unscaledDeltaTime); speed.y = speed.y + a * Time.unscaledDeltaTime; }, targetPos, flyTime); } yield return(new WaitForSecondsRealtime(flyTime)); foreach (GameObject obj in coinList) { if (obj == null) { continue; } game.m_AddItems.Remove(obj); Destroy(obj); } } if (big != null) { game.m_AddItems.Remove(big); Destroy(big); } }
public void OnStateChange(BlackRoomState_Enum state) { if (m_eRoomState == state) { return; } DebugLog.Log(string.Format("room state change: ({0}->{1})", m_eRoomState, state)); //OnQuitSate switch (m_eRoomState) { case BlackRoomState_Enum.BlackRoomState_ChipIn: { if (m_BjGameBase.m_nLocalPlayerSit < RoomInfo.PlayerNum) { CustomAudioDataManager.GetInstance().PlayAudio(1006); } foreach (Black_Player player in m_PlayerList) { player.OnLocalPlayerSit(false, m_BjGameBase.m_nLocalPlayerSit); } } break; default: break; } m_eRoomState = state; //OnEnterState switch (m_eRoomState) { case BlackRoomState_Enum.BlackRoomState_WaitBoss: { foreach (Black_Player player in m_PlayerList) { player.OnLocalPlayerSit(true, m_BjGameBase.m_nLocalPlayerSit); } } break; case BlackRoomState_Enum.BlackRoomState_ChipIn: { m_fCountTime = m_fStateTime = BlackJack_Data.GetInstance().m_fChipInTime; foreach (Black_Player player in m_PlayerList) { player.OnLocalPlayerSit(true, m_BjGameBase.m_nLocalPlayerSit, true); } } break; case BlackRoomState_Enum.BlackRoomState_DealCards: { m_fCountTime = m_fStateTime = BlackJack_Data.GetInstance().m_fAskNeedTime; } break; case BlackRoomState_Enum.BlackRoomState_BuySafe: { m_fCountTime = m_fStateTime = BlackJack_Data.GetInstance().m_fBuySafeTime; } break; case BlackRoomState_Enum.BlackRoomState_End: { OnEnd(); } break; default: { m_fCountTime = 0.0f; } break; } }
void TimeUpWarn() { CustomAudioDataManager.GetInstance().PlayAudio(1009); }