public Vector3 GetParkingFocusPoint(int parkingId)
        {
            var dinst = GlobalDataManager.GetInstance();

            Config.parkingCell parkingCell = null;
            foreach (var cell in Config.parkingConfig.getInstace().AllData.Values)
            {
                if (cell.scene == dinst.playerData.playerZoo.currSceneID)
                {
                    parkingCell = cell;
                    break;
                }
            }
            Vector3    ret         = Vector3.zero;
            Transform  centerTrans = null;
            GameObject go          = GameObject.Find("damen");

            if (go != null)
            {
                ret         = go.transform.position;
                centerTrans = go.transform.Find(parkingCell.prefabsname + "/Center");
            }
            if (centerTrans != null)
            {
                ret = centerTrans.position;
            }
            return(ret);
        }
        public override void Init()
        {
            currSceneID            = playerData.playerZoo.currSceneID;
            sortGateIDs            = GlobalDataManager.GetInstance().logicTableEntryGate.GetSortGateIDs(currSceneID);
            trigerLoadLittleZooIDs = new List <int>();
            parkingCell            = GlobalDataManager.GetInstance().logicTableParkingData.GetParkingCell(currSceneID);
            ticketCell             = GetTicketCell();
            InitLeaveSceneCD();

            MessageManager.GetInstance().Regist((int)GameMessageDefine.SetParkingProfitLevelOfPlayerData, this.OnSetParkingProfitLevelOfPlayerData);
            MessageManager.GetInstance().Regist((int)GameMessageDefine.SetParkingSpaceLevelOfPlayerData, this.OnSetParkingSpaceLevelOfPlayerData);
            MessageManager.GetInstance().Regist((int)GameMessageDefine.SetParkingEnterCarSpawnLevelOfPlayerData, this.OnSetParkingEnterCarSpawnLevelOfPlayerData);

            //MessageManager.GetInstance().Regist((int)GameMessageDefine.SetCoinOfPlayerData, this.OnSetCoinOfPlayerData);
            MessageManager.GetInstance().Regist((int)GameMessageDefine.AddCoinOfPlayerDataMSSC, this.OnSetCoinOfPlayerDataMSSC);
            MessageManager.GetInstance().Regist((int)GameMessageDefine.SetDiamondOfPlayerData, this.OnSetDiamondOfPlayerData);
            MessageManager.GetInstance().Regist((int)GameMessageDefine.SetStarOfPlayerData, this.OnSetStarOfPlayerData);

            MessageManager.GetInstance().Regist((int)GameMessageDefine.SetLittleZooTicketsLevelPlayerData, this.OnSetLittleZooTicketsLevelPlayerData);
            MessageManager.GetInstance().Regist((int)GameMessageDefine.SetLittleZooVisitorLocationLevelOfPlayerData, this.OnSetLittleZooVisitorLocationLevelOfPlayerData);
            MessageManager.GetInstance().Regist((int)GameMessageDefine.SetLittleZooEnterVisitorSpawnLevelOfPlayerData, this.OnSetLittleZooEnterVisitorSpawnLevelOfPlayerData);


            MessageManager.GetInstance().Regist((int)GameMessageDefine.OpenNewLittleZoo, this.OnOpenNewLittleZoo);
            MessageManager.GetInstance().Regist((int)GameMessageDefine.VisitorVisitCDFinshedReply, OnVisitorVisitCDFinshedReply);
            MessageManager.GetInstance().Regist((int)GameMessageDefine.EntryGateCheckInCDFinshedReply, OnEntryGateCheckGoToZoo);
            MessageManager.GetInstance().Regist((int)GameMessageDefine.SetAnimalLevel, this.OnSetAnimalLevelData);

            MessageManager.GetInstance().Regist((int)GameMessageDefine.SetEntryGateLevelOfPlayerData, this.OnSetEntryGateLevelOfPlayerData);
            MessageManager.GetInstance().Regist((int)GameMessageDefine.SetEntryGatePureLevelOfPlayerData, this.OnSetEntryGatePureLevelOfPlayerData);
            MessageManager.GetInstance().Regist((int)GameMessageDefine.SetEntryGateNumOfPlayerData, this.OnSetEntryGateNumOfPlayerData);


            MessageManager.GetInstance().Regist((int)GameMessageDefine.IncreaseCrossRoadStageID, this.OnIncreaseCrossRoadStageID);
        }
Exemple #3
0
        /// <summary>
        /// 其他场景停车场每分钟招揽游客速度
        /// </summary>
        /// <param name="level">停车场每分钟招揽游客等级(流量等级)</param>
        /// <returns></returns>
        public static int GetOtherSceneParkingEnterCarSpawn(int sceneID)
        {   /*  Y=base+lv*1   */
            int level = GlobalDataManager.GetInstance().playerData.GetParkingCenterDataIDIndexOfDataIdx(sceneID).parkingEnterCarSpawnLevel;

            Config.parkingCell parkingCell = GlobalDataManager.GetInstance().logicTableParkingData.GetParkingCell(sceneID);
            int baseVal = parkingCell.touristbase;
            int number  = baseVal + level * 1;

            return(number);
        }
Exemple #4
0
        public Config.parkingCell GetParkingCell(int sceneID)
        {
            Config.parkingCell cell = null;
            foreach (var val in Config.parkingConfig.getInstace().AllData.Values)
            {
                if (val.scene == sceneID)
                {
                    return(val);
                }
            }

            return(cell);
        }
Exemple #5
0
        /// <summary>
        /// 停车场停车位数量最大位置
        /// </summary>
        /// <param name="level">停车场停车位等级</param>
        /// <returns></returns>
        public static int GetParkingSpace(int level = -1)
        {   /*  Y=base+lv*6   */
            if (level == -1)
            {
                level = GlobalDataManager.GetInstance().playerData.GetParkingCenterDataIDIndexOfDataIdx().parkingSpaceLevel;
            }
            int sceneID = GlobalDataManager.GetInstance().playerData.playerZoo.currSceneID;

            Config.parkingCell parkingCell = GlobalDataManager.GetInstance().logicTableParkingData.GetParkingCell(sceneID);
            int baseVal = parkingCell.spacebase;
            int number  = baseVal + level * 6;

            return(number);
        }
Exemple #6
0
        /// <summary>
        /// 停车场每分钟招揽游客速度
        /// </summary>
        /// <param name="level">停车场每分钟招揽游客等级(流量等级)</param>
        /// <returns></returns>
        public static int GetParkingEnterCarSpawn(int level = -1)
        {   /*  Y=base+lv*0.8   */
            if (level == -1)
            {
                level = GlobalDataManager.GetInstance().playerData.GetParkingCenterDataIDIndexOfDataIdx().parkingEnterCarSpawnLevel;
            }

            int sceneID = GlobalDataManager.GetInstance().playerData.playerZoo.currSceneID;

            Config.parkingCell parkingCell = GlobalDataManager.GetInstance().logicTableParkingData.GetParkingCell(sceneID);

            int baseVal = parkingCell.touristbase;
            int number  = GetInteger(baseVal + level * 0.8f);

            return(number);
        }
Exemple #7
0
        /// <summary>
        /// 地面停车场的停车位数量
        /// </summary>
        /// <param name="level"></param>
        /// <returns></returns>
        public static int GetGroundParkingNumber(int level = -1)
        {
            /*  Y=min(base+lv*6,48)   */
            if (level == -1)
            {
                level = GlobalDataManager.GetInstance().playerData.GetParkingCenterDataIDIndexOfDataIdx().parkingSpaceLevel;
            }
            int sceneID = GlobalDataManager.GetInstance().playerData.playerZoo.currSceneID;

            Config.parkingCell parkingCell = GlobalDataManager.GetInstance().logicTableParkingData.GetParkingCell(sceneID);
            int baseVal  = parkingCell.spacebase;
            int number01 = Config.globalConfig.getInstace().NumGroundParkingGroupSpace *Config.globalConfig.getInstace().MaxNumGroundParkingGroup;
            int number   = Mathf.Min(baseVal + level * 6, number01);

            return(number);
        }
Exemple #8
0
        /// <summary>
        /// 停车位数量最大位置升级消耗
        /// </summary>
        /// <returns></returns>
        public static System.Numerics.BigInteger GetUpGradeNumberConsumption(int level = -1)
        {   /*   Y=base*停售消耗基数【停车位数期望等级】*加成预期【停车位数期望等级】   */
            if (level == -1)
            {
                level = GlobalDataManager.GetInstance().playerData.GetParkingCenterDataIDIndexOfDataIdx().parkingSpaceLevel;
            }
            int expectlevel = ParkingSpaceExpectLevel(level);
            int sceneID     = GlobalDataManager.GetInstance().playerData.playerZoo.currSceneID;

            Config.parkingCell parkingCell = GlobalDataManager.GetInstance().logicTableParkingData.GetParkingCell(sceneID);
            string             str         = parkingCell.spaceupcastbase;

            System.Numerics.BigInteger baseVal = System.Numerics.BigInteger.Parse(str);
            var computePowFloatToBigInteger    = PlayerDataModule.GetComputePowFloatToBigInteger(parkingCell.basenumber, expectlevel - 1);
            int number = (int)(PlayerDataModule.GetAdditionExpect(sceneID, expectlevel) * 100);

            var price = baseVal * computePowFloatToBigInteger.str_numerator * number / (100 * computePowFloatToBigInteger.str_denominator);

            return(price);
        }
        /// <summary>
        /// 加载停车场场景
        /// </summary>
        /// <param name="idx"></param>
        public static void LoadParkingScene(int idx)
        {
            GameObject parckingSencePos = GlobalDataManager.GetInstance().zooGameSceneData.ParckingSencePos;

            if (parckingSencePos != null)
            {
                for (int i = 0; i < parckingSencePos.transform.childCount; i++)
                {
                    GameObject.Destroy(parckingSencePos.transform.GetChild(i).gameObject);
                }
            }
            else
            {
                string e = string.Format("报错:停车场挂点资源对象为  null");
                throw new System.Exception(e);
            }

            //LogWarp.LogError(" 测试:当前停车场模型 cellBuild.openggroup[idx]=" + cellBuild.openggroup[idx]);
            int sceneID = GlobalDataManager.GetInstance().playerData.playerZoo.currSceneID;

            Config.parkingCell parkingCell = GlobalDataManager.GetInstance().logicTableParkingData.GetParkingCell(sceneID);
            var cellRes     = Config.resourceConfig.getInstace().getCell(parkingCell.openggroup[idx]);
            var goLittleZoo = ResourceManager.GetInstance().LoadGameObject(cellRes.prefabpath);

            //LogWarp.LogError(" 测试:当前停车场模型 name=" + goLittleZoo.name);


            goLittleZoo.transform.position = new UnityEngine.Vector3(0, 0, 0);

            goLittleZoo.transform.SetParent(parckingSencePos.transform, false);

            //添加停车场的升级特效
            Transform trans = null;

            trans = ResourceManager.GetInstance().LoadGameObject(Config.globalConfig.getInstace().ParkingUpEffect).transform;
            trans.SetParent(GlobalDataManager.GetInstance().zooGameSceneData.ParckingSencePos.transform, false);

            UFrame.SimpleParticle particlePlayer = new UFrame.SimpleParticle();
            particlePlayer.Init(GlobalDataManager.GetInstance().zooGameSceneData.ParckingSencePos);
            particlePlayer.Play();
        }
Exemple #10
0
        /// <summary>
        /// 每分钟招揽游客升级消耗
        /// </summary>
        /// <returns></returns>
        public static System.Numerics.BigInteger GetUpGradeEnterCarSpawnConsumption(int level = -1)
        {   /*   Y=base*停售消耗基数【来客速度期望等级】*加成预期【来客速度期望等级】   */
            if (level == -1)
            {
                level = GlobalDataManager.GetInstance().playerData.GetParkingCenterDataIDIndexOfDataIdx().parkingEnterCarSpawnLevel;
            }
            int expectlevel = ParkingEnterCarSpawnExpectLevel(level);
            int sceneID     = GlobalDataManager.GetInstance().playerData.playerZoo.currSceneID;

            Config.parkingCell parkingCell = GlobalDataManager.GetInstance().logicTableParkingData.GetParkingCell(sceneID);
            string             str         = parkingCell.touristcastbase;

            System.Numerics.BigInteger baseVal = System.Numerics.BigInteger.Parse(str);
            float basenumber = parkingCell.basenumber;
            var   computePowFloatToBigInteger = PlayerDataModule.GetComputePowFloatToBigInteger(basenumber, expectlevel - 1);
            int   number = (int)(PlayerDataModule.GetAdditionExpect(sceneID, expectlevel) * 100);

            var price = baseVal * computePowFloatToBigInteger.str_numerator * number / (computePowFloatToBigInteger.str_denominator * 100);

            //LogWarp.LogErrorFormat("测试:  baseVal={0}, computePowFloatToBigInteger.str_numerator={1}, number={2}, computePowFloatToBigInteger.str_denominator={3}", baseVal, computePowFloatToBigInteger.str_numerator, number, computePowFloatToBigInteger.str_denominator);
            return(price);
        }
Exemple #11
0
        /// <summary>
        /// 停车场利润升级消耗
        /// </summary>
        /// <returns></returns>
        public static System.Numerics.BigInteger GetUpGradeParkingProfitConsumption(int level = -1)
        {   /*   Y=base*停售消耗基数【停车位数期望等级】*加成预期【停车位数期望等级】   */
            if (level == -1)
            {
                level = GlobalDataManager.GetInstance().playerData.GetParkingCenterDataIDIndexOfDataIdx().parkingProfitLevel;
            }
            int expectLevel = ParkingProfitExpectLevel(level);
            int sceneID     = GlobalDataManager.GetInstance().playerData.playerZoo.currSceneID;

            Config.parkingCell parkingCell = GlobalDataManager.GetInstance().logicTableParkingData.GetParkingCell(sceneID);
            string             str         = parkingCell.depletebase;

            System.Numerics.BigInteger baseVal = System.Numerics.BigInteger.Parse(str);
            var computePowFloatToBigInteger    = PlayerDataModule.GetComputePowFloatToBigInteger(parkingCell.basenumber, expectLevel - 1);
            int additionExpect = (int)(PlayerDataModule.GetAdditionExpect(sceneID, expectLevel) * 100);

            var price = baseVal * computePowFloatToBigInteger.str_numerator * additionExpect / (100 * computePowFloatToBigInteger.str_denominator);

            //LogWarp.LogErrorFormat("测试:  depbase ={0},分子={1},AA={2},加成预期={3},等级={4}",
            //   baseVal, computePowFloatToBigInteger.str_numerator, parkingCell.basenumber, additionExpect, level);
            return(price + level);
        }
Exemple #12
0
        //protected List<LittleZooModuleData> GetlittleZooModuleDatas(int sceneID)
        //{
        //    var result = new List<LittleZooModuleData>();
        //    var littleZooModuleDatas = this.playerData.playerZoo.littleZooModuleDatas;
        //    for (int i = 0; i < littleZooModuleDatas.Count; i++)
        //    {
        //        var littleZooModuleData = littleZooModuleDatas[i];
        //        if (littleZooModuleData.sceneID == sceneID)
        //        {
        //            result.Add(littleZooModuleData);
        //        }
        //    }

        //    return result;
        //}



        /// <summary>
        /// 加载停车场地块
        /// </summary>
        protected void LoadParking()
        {
            GlobalDataManager.GetInstance().zooGameSceneData.ParckingSencePos = GameObject.Find("ParckingSencePos");
            var allData = Config.parkingConfig.getInstace().AllData;

            Config.parkingCell parkingCell = GlobalDataManager.GetInstance().logicTableParkingData.GetParkingCell(sceneID);

            //var cellBuildUp = Config.parkingConfig.getInstace().getCell(sceneID);
            bool retCode = this.playerData.playerZoo.IsExistPackingModuleDatas(sceneID);

            if (!retCode)
            {
                this.playerData.playerZoo.SetDefaultParkingCenterData(sceneID);
            }
            var parkingSpaceLevel = this.playerData.GetParkingCenterDataIDIndexOfDataIdx(sceneID).parkingSpaceLevel;
            int currResIdx        = ParkingCenter.FindLevelRangIndex(parkingCell.openlv, parkingSpaceLevel);
            var cellRes           = Config.resourceConfig.getInstace().getCell(parkingCell.openggroup[currResIdx]);
            var parkingModel      = ResourceManager.GetInstance().LoadGameObject(cellRes.prefabpath);

            parkingModel.transform.position = new UnityEngine.Vector3(0, 0, 0);
            parkingModel.SetActive(true);
            parkingModel.transform.SetParent(GlobalDataManager.GetInstance().zooGameSceneData.ParckingSencePos.transform, false);
        }