/// <summary> /// 其他场景的动物栏收益和 /// </summary> /// <param name="isNeedMulBuff"></param> /// <returns></returns> public static System.Numerics.BigInteger GetOtherSceneAllZooPrice(int sceneID, bool isNeedMulBuff = false) { int parkNumber = ParkingCenter.GetOtherSceneParkingEnterCarSpawn(sceneID); float entryGateNumber = EntryGateModule.GetAllEntryChargeValMs(sceneID); //LogWarp.LogErrorFormat("其他场景 停车场来人速度{0} 售票口收费速度{1}", parkNumber, entryGateNumber); System.Numerics.BigInteger littleZooNumber = 0; PlayerData playerData = GlobalDataManager.GetInstance().playerData; var littleZooModuleDataList_MS = GlobalDataManager.GetInstance().playerData.playerZoo.littleZooModuleDatasMSS; //int sceneID = GlobalDataManager.GetInstance().playerData.playerZoo.currSceneID; for (int i = 0; i < littleZooModuleDataList_MS.Count; i++) { if (littleZooModuleDataList_MS[i].littleZooTicketsLevel == 0 || littleZooModuleDataList_MS[i].sceneID != sceneID) { continue; } //每分钟动物栏基础收益=动物栏产出*min(停车场来人速度,售票口收费速度(全),60/(观光速度*观光点数)) //动物栏产出 var number1 = LittleZooModule.GetLittleZooPrice(littleZooModuleDataList_MS[i].littleZooID, littleZooModuleDataList_MS[i].littleZooTicketsLevel, isNeedMulBuff); //观光速度*观光点数 var number4 = LittleZooModule.GetLittleZooVisitorNumberMS(littleZooModuleDataList_MS[i].littleZooID, littleZooModuleDataList_MS[i]); var number5 = (int)(Mathf.Min(parkNumber, entryGateNumber, number4)) * number1; //LogWarp.LogErrorFormat("测试:非 parkNumber={0} entryGateNumber={1} number4={2} number1={3} ",parkNumber, entryGateNumber, number4,number1); littleZooNumber += number5; } return(littleZooNumber); }
//protected void AddCoin(BigInteger addNum) //{ // BigInteger currCoin = BigInteger.Parse(this.playerData.playerZoo.coin); // currCoin += addNum; // this.playerData.playerZoo.coin = currCoin.ToString(); // BroadcastValueOfPlayerData.Send((int)GameMessageDefine.BroadcastCoinOfPlayerData, // 0, 0, currCoin, addNum); //} /// <summary> /// 动物栏CD收益 /// </summary> /// <param name="msg"></param> protected void OnVisitorVisitCDFinshedReply(Message msg) { #if NO_BIGINT PlaySceneMoneyMusic(); #else //只有最新解锁的场景动物栏和大门产钱 if (playerData.playerZoo.currSceneID != playerData.playerZoo.lastUnLockSceneID) { return; } var _msg = msg as VisitorVisitCDFinshedReply; int littleZooEnterVisitorSpawnLevel = GlobalDataManager.GetInstance().playerData.GetLittleZooModuleData(_msg.littleZooID).littleZooTicketsLevel; BigInteger price = LittleZooModule.GetLittleZooPrice(_msg.littleZooID, littleZooEnterVisitorSpawnLevel); PlaySceneMoneyMusic(); playerData.playerZoo.playerCoin.WarpAddCoin(playerData, price, false); #endif }