/// <summary> /// 获取JPBoss和战车Npc的血值数据. /// </summary> internal void GetTotalHealthData(SSCaiPiaoDataManage.GameCaiPiaoData.DaiJinQuanState type) { m_CurrentDaiJinQuanState = type; float caiChiVal = XkPlayerCtrl.GetInstanceFeiJi().m_SpawnNpcManage.m_CaiPiaoDataManage.m_GameCaiPiaoData.GetCaiChiData(type); float caiChiChuPiaoTiaoJian = XkPlayerCtrl.GetInstanceFeiJi().m_SpawnNpcManage.m_CaiPiaoDataManage.m_GameCaiPiaoData.GetChuPiaoTiaoJian(type); //彩池是否足够. bool isCaiChiZuGou = caiChiVal - caiChiChuPiaoTiaoJian >= 0f ? true : false; //if (type == SSCaiPiaoDataManage.GameCaiPiaoData.DaiJinQuanState.JPBossDaiJinQuan) //{ // SSDebug.LogWarning("caiChiVal =========== " + caiChiVal + ", caiChiChuPiaoTiaoJian ============= " + caiChiChuPiaoTiaoJian); //} float baoJiangLv = XKGlobalData.GetInstance().GetDaiJinQuanBaoJiangLv(type); float randVal = Random.Range(0f, 100f) / 100f; //是否爆奖. bool isDaiJinQuanBaoJiang = randVal < baoJiangLv ? true : false; if (SSGameLogoData.m_GameDaiJinQuanMode == SSGameLogoData.GameDaiJinQuanMode.HDL_CaiPinQuan) { //海底捞菜品券游戏. if (SSHaiDiLaoBaoJiang.GetInstance() != null) { isDaiJinQuanBaoJiang = SSHaiDiLaoBaoJiang.GetInstance().GetIsCanJiBaoNpc(type); } } //isCaiChiZuGou = false; //test //SSDebug.LogWarning("isDaiJinQuanBaoJiang == " + isDaiJinQuanBaoJiang + ", randVal == " + randVal + ", baoJiangLv == " + baoJiangLv); if (isCaiChiZuGou == true && isDaiJinQuanBaoJiang == true) { //可以爆奖. int indexVal = Random.Range(0, 100) % m_BaoJiangHealthDt.Length; if (m_TestBaoJiangData != null) { if (m_TestBaoJiangData.IsOpenTest == true) { if (m_TestBaoJiangData.IndexHealth >= 0 && m_TestBaoJiangData.IndexHealth <= 2) { //测试数据信息. indexVal = m_TestBaoJiangData.IndexHealth; } } } m_CurrentTotalHealthDt = m_BaoJiangHealthDt[indexVal]; } else { //不可以爆奖. int indexVal = Random.Range(0, 100) % m_NoBaoJiangHealthDt.Length; if (m_TestBaoJiangData != null) { if (m_TestBaoJiangData.IsOpenTest == true) { if (m_TestBaoJiangData.IndexHealth >= 0 && m_TestBaoJiangData.IndexHealth <= 2) { //测试数据信息. indexVal = m_TestBaoJiangData.IndexHealth; } } } m_CurrentTotalHealthDt = m_NoBaoJiangHealthDt[indexVal]; } //SSDebug.Log("GetTotalHealData -> m_CurentTotalHealthDt == " + m_CurrentTotalHealthDt.ToString()); }
private void Awake() { _Instance = this; Init(); }
/// <summary> /// 更新所有服务器配置数据. /// </summary> internal void UpdataAllServerConfigData() { //SSDebug.Log("UpdataAllServerConfigData..."); if (XKGlobalData.GetInstance() != null) { //更新游戏弹幕信息. if (GameDanMuInfo.Length > 10) { GameDanMuInfo = GameDanMuInfo.Substring(0, 10); } XKGlobalData.GetInstance().UpdateDanMuInfo(GameDanMuInfo); } if (XkPlayerCtrl.GetInstanceFeiJi() != null && XkPlayerCtrl.GetInstanceFeiJi().m_SpawnNpcManage != null && XkPlayerCtrl.GetInstanceFeiJi().m_SpawnNpcManage.m_CaiPiaoDataManage != null && XkPlayerCtrl.GetInstanceFeiJi().m_SpawnNpcManage.m_CaiPiaoDataManage.m_GameCaiPiaoData != null) { //更新代金券奖池相关数据信息. SSCaiPiaoDataManage.GameCaiPiaoData gmCaiPiaoData = XkPlayerCtrl.GetInstanceFeiJi().m_SpawnNpcManage.m_CaiPiaoDataManage.m_GameCaiPiaoData; float chuCaiLv = SuiJiDaoJuChuPiaoLv + ZhanCheChuPiaoLv_01 + ZhanCheChuPiaoLv_02 + JPBossChuPiaoLv; if (chuCaiLv > 1f) { //出票率(返奖率)之和必须为1f. JPBossChuPiaoLv = 1f; ZhanCheChuPiaoLv_01 = 0f; ZhanCheChuPiaoLv_01 = 0f; SuiJiDaoJuChuPiaoLv = 0f; } gmCaiPiaoData.UpdateChuPiaoLvInfo(SuiJiDaoJuChuPiaoLv, ZhanCheChuPiaoLv_01, ZhanCheChuPiaoLv_02, JPBossChuPiaoLv); gmCaiPiaoData.UpdateDaiJinQuanInfo(SuiJiDaoJuDaiJinQuan, ZhanCheDaiJinQuan_01, ZhanCheDaiJinQuan_02, JPBossDaiJinQuan); gmCaiPiaoData.UpdateDaiJinQuanCaiChiInfo(SuiJiDaoJuDeCai, ZhanCheDeCai_01, ZhanCheDeCai_02, JPBossDeCai); gmCaiPiaoData.UpdateJPBossDaiJinQuanShangHuZhiFu(JPBossDaiJinQuanShangHuZhiFu); if (XKGlobalData.GetInstance() != null) { XKGlobalData.GetInstance().SetIsWuXianJiangChi(IsWuQiongDaJiangChiJPBossDaiJinQuan, SSCaiPiaoDataManage.GameCaiPiaoData.DaiJinQuanState.JPBossDaiJinQuan); XKGlobalData.GetInstance().SetIsWuXianJiangChi(IsWuQiongDaJiangChiZhanCheDaiJinQuan_01, SSCaiPiaoDataManage.GameCaiPiaoData.DaiJinQuanState.ZhanCheDaiJinQuan_01); XKGlobalData.GetInstance().SetIsWuXianJiangChi(IsWuQiongDaJiangChiZhanCheDaiJinQuan_02, SSCaiPiaoDataManage.GameCaiPiaoData.DaiJinQuanState.ZhanCheDaiJinQuan_02); XKGlobalData.GetInstance().SetIsWuXianJiangChi(IsWuQiongDaJiangChiSuiJiDaoJuDaiJinQuan, SSCaiPiaoDataManage.GameCaiPiaoData.DaiJinQuanState.SuiJiDaoJuDaiJinQuan); } } if (pcvr.GetInstance().m_HongDDGamePadInterface != null) { //更新游戏免费试玩信息. pcvr.GetInstance().m_HongDDGamePadInterface.UpdateMianFeiCountInfo(MianFeiShiWanCount); XKGlobalData.GetInstance().SetMianFeiShiWanCount(MianFeiShiWanCount); //更新游戏一币等于多少人民币的信息. pcvr.GetInstance().m_HongDDGamePadInterface.UpdateGameCoinToMoney(GameCoinToMoney); } //设置游戏彩池返奖率信息. XKGlobalData.GetInstance().SetCaiChiFanJiangLv(CaiChiFanJiangLv); //设置游戏彩池爆奖率信息. XKGlobalData.GetInstance().SetCaiChiBaoJiangLv(SuiJiDaoJuBaoJiangLv, ZhanCheBaoJiangLv_01, ZhanCheBaoJiangLv_02, JPBossBaoJiangLv); if (SSHaiDiLaoBaoJiang.GetInstance() != null) { SSHaiDiLaoBaoJiang.GetInstance().UpdateBaoJiangDt(SSCaiPiaoDataManage.GameCaiPiaoData.DaiJinQuanState.JPBossDaiJinQuan, (int)JPBossBaoJiangLv); SSHaiDiLaoBaoJiang.GetInstance().UpdateBaoJiangDt(SSCaiPiaoDataManage.GameCaiPiaoData.DaiJinQuanState.ZhanCheDaiJinQuan_01, (int)ZhanCheBaoJiangLv_01); SSHaiDiLaoBaoJiang.GetInstance().UpdateBaoJiangDt(SSCaiPiaoDataManage.GameCaiPiaoData.DaiJinQuanState.ZhanCheDaiJinQuan_02, (int)ZhanCheBaoJiangLv_02); SSHaiDiLaoBaoJiang.GetInstance().UpdateBaoJiangDt(SSCaiPiaoDataManage.GameCaiPiaoData.DaiJinQuanState.SuiJiDaoJuDaiJinQuan, (int)SuiJiDaoJuBaoJiangLv); } }
/// <summary> /// 创建随机道具. /// </summary> public void CreatSuiJiDaoJu(PlayerEnum indexPlayer) { if (!IsCreatSuiJiDaoJu) { return; } int indexVal = (int)indexPlayer - 1; if (indexVal < 0 || indexVal > 2) { return; } //if (XkPlayerCtrl.GetInstanceFeiJi().m_SpawnNpcManage.m_CaiPiaoDataManage.m_PlayerCoinData[indexVal].XuBiVal <= 0) //{ // //不是续币玩家. // return; //} if (!XkPlayerCtrl.GetInstanceFeiJi().m_SpawnNpcManage.m_CaiPiaoDataManage.m_GameCaiPiaoData.GetIsChuCaiPiaoByDeCaiState(SSCaiPiaoDataManage.GameCaiPiaoData.DeCaiState.SuiJiDaoJu)) { //随机道具彩池的彩票积累的不够. return; } if (SSGameLogoData.m_GameDaiJinQuanMode == SSGameLogoData.GameDaiJinQuanMode.HDL_CaiPinQuan) { //海底捞菜品券版本游戏. if (SSHaiDiLaoBaoJiang.GetInstance() != null) { if (SSHaiDiLaoBaoJiang.GetInstance().GetIsCanJiBaoNpc(SSCaiPiaoDataManage.GameCaiPiaoData.DaiJinQuanState.SuiJiDaoJuDaiJinQuan) == false) { //不允许发出随机道具. return; } } } bool isUseOldMethod = false; if (isUseOldMethod == true) { if (Random.Range(0f, 100f) / 100f > 0.4f) { //没有随机上产生随机道具. return; } if (XkGameCtrl.GetInstance().GetIsCreateSuiJiDaoJu() == false) { //产生随机道具的间隔时间未到. return; } } else { if (XkGameCtrl.GetInstance().GetIsCreateSuiJiDaoJu(indexPlayer) == false) { //产生随机道具的间隔时间未到. return; } } //UnityLog("CreatSuiJiDaoJu...................."); GameObject suiJiDaoJuPrefab = XkPlayerCtrl.GetInstanceFeiJi().m_SpawnNpcManage.m_CaiPiaoDataManage.GetSuiJiDaoJuPrefab(indexPlayer); if (suiJiDaoJuPrefab != null) { GameObject obj = (GameObject)Instantiate(suiJiDaoJuPrefab, XkGameCtrl.GetInstance().DaoJuArray, transform); if (obj != null) { BuJiBaoCtrl buJiBao = obj.GetComponent <BuJiBaoCtrl>(); if (buJiBao != null) { buJiBao.IsCaiPiaoDaoJu = true; buJiBao.SetIsSpawnDaoJu(indexPlayer); buJiBao.DelayRemoveSelf(indexPlayer); } //SSCaiPiaoSuiJiDaoJu suiJiDaoJu = obj.GetComponent<SSCaiPiaoSuiJiDaoJu>(); //if (suiJiDaoJu != null) //{ // suiJiDaoJu.CreatLiZi(indexPlayer); //} //else //{ // UnityLogWarning("CreatSuiJiDaoJu -> SSCaiPiaoSuiJiDaoJu was null.........."); //} } } else { UnityLogWarning("CreatSuiJiDaoJu -> suiJiDaoJuPrefab was null!"); } }