Ejemplo n.º 1
0
        public void Init(int playerHP, DataTableLevels.AgeTypes age, int level)
        {
            //Выбранное оружие
            SelectedWeaponManager = GetComponent <WeaponManager>();
            SelectedWeaponManager.Init();

            //Выбранная еда
            SelectedFoodManager = GetComponent <FoodManager>();
            SelectedFoodManager.Init();

            //Инициализация игрока
            Player.OnCharacterDestroyed += PlayerDestroyedHandler;
            Player.Init(playerHP);
            Player.HPController.TakeDamage(10);

            //Инициализация населения
            PopulationManager = GetComponent <PopulationManager>();
            PopulationManager.Init();

            //UI собранной награды
            GameManager.Instance.Manager_UI.CreateUI_Coins(GameManager.Instance.Manager_UI.UIParent_LeftTop, DataManager.Instance.PlayerAccount.Coins, true);

            SubscribeForGlobalEvent();

            //Инициализация ввода для атаки
            GameManager.Instance.Manager_Input.OnInput += InputHandler;
            GameManager.Instance.Manager_Input.EnableInput(true);

            //Начало создания врагов
            m_LevelController = GetComponent <level.LevelController>();
            m_LevelController.OnLevelFinished += LevelFinishedHandler;
            m_LevelController.Init(age, level);
            //m_LevelController.StartSpawn();
        }
Ejemplo n.º 2
0
        public static Workers GetWorkersData(DataTableLevels.AgeTypes ageType)
        {
            if (m_Workers.ContainsKey(ageType))
            {
                return(m_Workers[ageType]);
            }

            return(null);
        }
Ejemplo n.º 3
0
        public static int GetPriceForUpgrade(DataTableLevels.AgeTypes ageType, int workersLvl)
        {
            if (m_Workers.ContainsKey(ageType))
            {
                int basePrice = m_Workers[ageType].BaseUpgradePrice;

                return(basePrice * workersLvl);
            }

            return(0);
        }
Ejemplo n.º 4
0
        public static int GetPriceForBuy(DataTableLevels.AgeTypes ageType, int workersAmount)
        {
            if (m_Workers.ContainsKey(ageType))
            {
                int basePrice = m_Workers[ageType].BaseBuyPrice;

                return(basePrice + basePrice * workersAmount);
            }

            return(0);
        }
Ejemplo n.º 5
0
        public static float GetTickPeriodForLvl(DataTableLevels.AgeTypes ageType, int lvl)
        {
            if (m_Workers.ContainsKey(ageType))
            {
                float baseTickPeriod = m_Workers[ageType].BaseTickPeriod;
                int   maxWorkersLvl  = m_Workers[ageType].MaxWorkerLvl;

                return(baseTickPeriod - m_Workers[ageType].LevelDelta * (lvl - 1));
            }

            return(1);
        }
Ejemplo n.º 6
0
 public Workers(DataTableLevels.AgeTypes ageType, int maxWorkers, int maxWorkerLvl, float baseTickPeriod, float levelDelta, int baseBuyPrice, int baseUpgradePrice)
 {
     //Base
     m_AgeType    = ageType;
     m_MaxWorkers = maxWorkers;
     //Level
     m_MaxWorkerLvl   = maxWorkerLvl;
     m_BaseTickPeriod = baseTickPeriod;
     m_LevelDelta     = levelDelta;
     //Prices
     m_BaseBuyPrice     = baseBuyPrice;
     m_BaseUpgradePrice = baseUpgradePrice;
 }
Ejemplo n.º 7
0
 public Account(int accountID, int hp, int craftTime, DataTableLevels.AgeTypes age, int level, int coins, int workersAmount, int workersLvl,
                DataTableItems.ItemTypes[] selectedWeapon, DataTableItems.ItemTypes[] selectedFood, Dictionary <ItemFilterTypes, int> bags,
                Dictionary <UpgradeTypes, (int, int)> upgradeStates)