コード例 #1
0
        void SendEvents(Management.Hospital.Core.DepartmentType departmentType, int level)
        {
            System.Collections.Generic.Dictionary <string, object> analyticsData = new Dictionary <string, object>();
            analyticsData["Department"]       = departmentType.ToString();
            analyticsData["Department_Level"] = level.ToString();

            Management.Services.AnalyticsManager.Instance.CustomEvent(Management.Services.EventStrings.DEPARTMENT_UPGRADE, analyticsData);
        }
コード例 #2
0
        /// <summary>
        /// Gets the Path towards hospital main exit door
        /// </summary>
        /// <param name="currentNearestDepartment"></param>
        /// <returns></returns>
        public List <Vector3> GetPathTowardsExitDoor(Management.Hospital.Core.DepartmentType currentNearestDepartment)
        {
            Transform entryDoor = GetDepartmentMainDoorTransform(currentNearestDepartment);

            List <Vector3> path = getWaypointsInVector3List(entryDoor, startPointNearConsulation);

            path.AddRange(getWaypointsInVector3List(searchPointForExitDoor, hospitalExitGate));
            return(path);
        }
コード例 #3
0
        /// <summary>
        /// Analyze the condition and returns the result
        /// </summary>
        /// <param name="conditionLineStr"></param>
        /// <returns></returns>
        bool AnalyzeSingleLineConditionResult(string conditionLineStr, List <Department> departments)
        {
            string[] decodedCondition = DecodeTheCondition(Condition);
            bool     isTrue           = decodedCondition[1].ToUpper() == "TRUE";

            Management.Hospital.Core.DepartmentType departmentType = (Management.Hospital.Core.DepartmentType)System.Enum.Parse(typeof(Management.Hospital.Core.DepartmentType), decodedCondition[0]);
            Department department = departments.Find(obj => obj.DepartmentType == departmentType);

            return(department.IsUnlocked == isTrue);
        }
コード例 #4
0
/*        public enum Result
 *      {
 *          HIDE = 0,
 *          UNHIDE
 *      }
 */
        /*[Tooltip("1. EYE_SPECILIST=true"
         + "2.EYE_SPECILIST = true & EYE_SPECILIST = true & EYE_SPECILIST = true"
         + "3.EYE_SPECILIST = true | EYE_SPECILIST = true | EYE_SPECILIST = true"
         + "4.EYE_SPECILIST = true & (EYE_SPECILIST = true | EYE_SPECILIST = true)"
         + "5.EYE_SPECILIST = true & (EYE_SPECILIST = true & EYE_SPECILIST = true) & (EYE_SPECILIST = true & EYE_SPECILIST = false)")]*/
        //[SerializeField] string condition;
        //public string Condition { get => condition; }
        //[SerializeField] Result result;
        //public Result PResult { get => result; }

        /// <summary>
        /// Analyzes and update the object based on the condition and result
        /// </summary>
        /// <param name="departments"></param>
        public void AnalyzeConditionAndUpdateResult(List <Department> departments)
        {
            /*int assignerIndex = condition.IndexOf("=");
             * string conditionStr = Condition.Substring(0, assignerIndex);
             * string resultStr = Condition.Substring(assignerIndex + 1, Condition.Length - assignerIndex - 1);*/
            string[] decodedCondition = DecodeTheCondition(Condition);
            bool     isTrue           = decodedCondition[1].ToUpper() == "TRUE";

            Management.Hospital.Core.DepartmentType departmentType = (Management.Hospital.Core.DepartmentType)System.Enum.Parse(typeof(Management.Hospital.Core.DepartmentType), decodedCondition[0]);
            Department department = departments.Find(obj => obj.DepartmentType == departmentType);

            if (department.IsUnlocked == isTrue)
            {
                gameObject.SetActive(result == Result.UNHIDE);
            }
        }
コード例 #5
0
        void CbOnDepartmentBuyClicked(Management.Hospital.Core.DepartmentType departmentType)
        {
            currUnlockingDepartment = departmentType;
            uiHolder.StateController.HospitalManager.UnlockNewDepartment(departmentType, CbUnlockeFuncCallback);

            decimal departmentUnlockCost = adminDepartmentScriptable.DepartmentDataList.Find(obj => obj.departmentType == departmentType).buyValue;

            uiHolder.StateController.GameManager.MasterLoader.PlayerScoreModel.DeductCash(departmentUnlockCost);
            uiHolder.ReloadPlayerScoreInHeaderUI();

            for (int i = 0; i < uiAdminDepartmentsList.Count; i++)
            {
                if (!uiAdminDepartmentsList[i].IsAlreadyPurchased)
                {
                    uiAdminDepartmentsList[i].UpdateBuyButton();
                }
            }
        }
コード例 #6
0
        /// <summary>
        /// Gets the path towards department
        /// </summary>
        /// <param name="departmentType"></param>
        /// <returns></returns>
        public List <Vector3> GetPath(Management.Hospital.Core.DepartmentType departmentType, bool scatter = true)
        {
            Transform entryDoor = GetDepartmentMainDoorTransform(departmentType);

            return(getWaypointsInVector3List(startPointNearConsulation, entryDoor, scatter));
        }
コード例 #7
0
 /// <summary>
 /// Gets the transform of department main door
 /// </summary>
 /// <param name="departmentType"></param>
 /// <returns></returns>
 private Transform GetDepartmentMainDoorTransform(Management.Hospital.Core.DepartmentType departmentType)
 {
     return(departmentMainDoorList.Find(obj => obj.departmentType == departmentType).mainDoorEntryPoint);
 }