Esempio n. 1
0
 void PopulateLists()
 {
     _player         = GameObject.FindWithTag("Player");
     _endGame        = GameObject.Find("HarbourCanvas").GetComponent <EndGame>();
     _dayTimer       = GameObject.Find("Timer").GetComponent <DayTimer>();
     _dayCycle       = GameObject.Find("MainLight").GetComponent <DayCycle>();
     _rumourScript   = GameObject.Find("TownCanvas").GetComponent <RumourGenerator>();
     _playerControls = _player.GetComponent <PlayerControls_WM>();
     _towns.AddRange(GameObject.FindGameObjectsWithTag("Town"));
     for (int i = 0; i < _towns.Count; i++)
     {
         _buildingScripts.Add(_towns[i].GetComponent <TownManager>());
     }
     _factoryGO.AddRange(GameObject.FindGameObjectsWithTag("Factory"));
     for (int i = 0; i < _factoryGO.Count; i++)
     {
         _factories.Add(_factoryGO[i].GetComponent <Factories>());
     }
     _resourceSpawns.AddRange(GameObject.FindGameObjectsWithTag("ResourceSpawn"));
     for (int i = 0; i < _resourceSpawns.Count; i++)
     {
         _resourceGens.Add(_resourceSpawns[i].GetComponent <ResourceGen>());
     }
     _fowGO.AddRange(GameObject.FindGameObjectsWithTag("FOW"));
     for (int i = 0; i < _fowGO.Count; i++)
     {
         _fow.Add(_fowGO[i].GetComponent <FOW>());
     }
     _spawnGOs.AddRange(GameObject.FindGameObjectsWithTag("Spawn Point"));
     for (int i = 0; i < _spawnGOs.Count; i++)
     {
         _spawns.Add(_spawnGOs[i].GetComponent <SpawnPoint>());
     }
 }
Esempio n. 2
0
 void Start()
 {
     _dayTimer = GameObject.Find("Timer").GetComponent <DayTimer>();
     _endGame  = GameObject.Find("HarbourCanvas").GetComponent <EndGame>();
     _col      = gameObject.GetComponent <BoxCollider>();
     ChangeSightSize();
 }
    private static IEnumerator WaitUntilTimeGetsTo(float time)
    {
        DayTimer.Instance.SetTimeScale(DayTimer.Instance.IntialTimeScale);
        yield return(new WaitUntil(() => DayTimer.Instance.elapsedTime >= DayTimer.GetScaledTime(time)));

        DayTimer.Instance.SetTimeScale(0);
    }
Esempio n. 4
0
 private void Start()
 {
     _timerForWindow = DayTimeSystem.CreateDayTimer(TIME_DAYS_MAX, false);
     _timerForWindow.AddTimerFinishedListener(ShowWindow);
     _inProcess = false;
     _window.AddConfirmListener(OnConfirm);
 }
Esempio n. 5
0
 void Start()
 {
     _cam        = GameObject.Find("CameraParent").GetComponent <Transform>();
     _townCanvas = GameObject.Find("TownCanvas").GetComponent <TownCanvas>();
     _player     = GameObject.Find("Player").GetComponent <Transform>();
     _playerNav  = GameObject.Find("Player").GetComponent <NavMeshAgent>();
     _dayTimer   = GameObject.Find("Timer").GetComponent <DayTimer>();
 }
 public static void StartTaskRestoration(ITaskCard card, int days)
 {
     if (card.State == TaskCardStates.Executed)
     {
         DayTimer dt = DayTimeSystem.CreateDayTimer(days);
         dt.AddTimerFinishedListener(card.Restore);
         dt.StartTimer();
     }
 }
Esempio n. 7
0
 private void OnTaskCardRemoved(MonitoredStorage storage, ICard card)
 {
     if (storage.Timers.ContainsKey(card))
     {
         DayTimer dt = storage.Timers[card];
         dt.Deactivate();
         storage.Timers.Remove(card);
     }
 }
 public static void StartTaskExecuting(ITaskCard card, int days)
 {
     if (card.State == TaskCardStates.Standalone)
     {
         DayTimer dt = DayTimeSystem.CreateDayTimer(days);
         card.State = TaskCardStates.Executing;
         dt.AddTimerFinishedListener(card.Execute);
         dt.StartTimer();
     }
 }
    private void PauseProvidingTimer(ResourceCardData data)
    {
        if (!_requestsTimers.ContainsKey(data))
        {
            return;
        }
        DayTimer timer = _requestsTimers[data];

        timer.PauseTimer();
    }
Esempio n. 10
0
    public static DayTimer CreateDayTimer(int days, bool oneOff = true)
    {
        DayTimer dt = new DayTimer(ticksInDay, days, _tickChannel, oneOff);

        if (oneOff)
        {
            // dt.AddTimerFinishedListener(dt.Deactivate);
            dt.AddTimerFinishedListener(() => RemoveDayTimerFromTimers(dt));
        }
        _timers.Add(dt);
        return(dt);
    }
Esempio n. 11
0
 void Start()
 {
     CollectTextElements();
     _saveGame            = GameObject.Find("Loader").GetComponent <SaveGame>();
     _dayTimer            = GameObject.Find("Timer").GetComponent <DayTimer>();
     _buildButton         = GameObject.Find("BuildButton").GetComponent <Button>();
     _additionalResources = gameObject.GetComponent <AdditionalResources>();
     _rumourGen           = gameObject.GetComponent <RumourGenerator>();
     _caravan             = gameObject.GetComponent <Caravan>();
     _canvas    = gameObject.GetComponent <Canvas>();
     _market    = gameObject.GetComponent <Market>();
     _welcomeGO = GameObject.Find("Welcome");
     PopulateGOList();
     _canvas.enabled = false;
 }
Esempio n. 12
0
    protected override void Awake()
    {
        base.Awake();

        if (_instance != null)
        {
            Destroy(gameObject);
            return;
        }

        _instance = this;

        levelData    = LevelManager.Instance.LevelData;
        dayTimeScale = levelData.TimeScale;
        dayHasEnded  = false;

        elapsedTime = DayStartTime;
    }
Esempio n. 13
0
    private void OnTaskCardAdded(MonitoredStorage storage, GameObject card, ICard cardData)
    {
        ITaskCard         taskCard = cardData as ITaskCard;
        TaskCardFormatter cf       = card.GetComponent <TaskCardFormatter>();

        if (cf == null || taskCard == null)
        {
            return;
        }
        int time = storage.Days;

        cf.ActivateCardRemainTime(time);
        DayTimer dt = DayTimeSystem.CreateDayTimer(time);

        dt.AddNewDayListener(cf.UpdateCardRemainTime);
        dt.AddTimerFinishedListener(cf.DeactivateCardRemainTime);
        dt.AddTimerFinishedListener(() => storage.Storage.RemoveCard(cardData));
        dt.AddTimerFinishedListener(() => storage.OnExpired.Invoke(taskCard));
        storage.Timers[cardData] = dt;
        dt.StartTimer();
    }
Esempio n. 14
0
    private void Init()
    {
        if (_initialized)
        {
            return;
        }
        _numberLimit = _generalParameters.tasksDisplayLimitation;
        int time = _intervalParameters.baseProvidingPeriod;

        foreach (var p in _intervalParameters.providingPeriods)
        {
            if (p.Card == _taskData)
            {
                time = p.Period;
            }
        }
        _creationTimer = DayTimeSystem.CreateDayTimer(time, false);
        _creationTimer.AddTimerFinishedListener(Create);
        _placeForCreation.numberChanged.AddListener(CheckCardPlace);
        _initialized = true;
    }
Esempio n. 15
0
 // Use this for initialization
 void Start()
 {
     _rumourText       = GameObject.Find("RumourText").GetComponent <Text>();
     _rumourButton     = GameObject.Find("Get Rumour").GetComponent <Button>();
     _restButton       = GameObject.Find("Rest").GetComponent <Button>();
     _rumourButtonText = GameObject.Find("RumourButtonText").GetComponent <Text>();
     _rumourTypeTxt    = GameObject.Find("RumourType").GetComponent <Text>();
     _rumourTownTxt    = GameObject.Find("RumourTown").GetComponent <Text>();
     _rumourModTxt     = GameObject.Find("RumourMod").GetComponent <Text>();
     _rumourTimeTxt    = GameObject.Find("TimeRemaining").GetComponent <Text>();
     _rumourGO         = GameObject.Find("RumourGO");
     _dayTimer         = GameObject.Find("Timer").GetComponent <DayTimer>();
     _townCanvas       = gameObject.GetComponent <TownCanvas>();
     _rumourGO.SetActive(false);
     GetTowns();
     _saveGame = GameObject.Find("Loader").GetComponent <SaveGame>();
     if (_rumourActive)
     {
         LoadRumour();
     }
 }
Esempio n. 16
0
        public void Reload()
        {
            SimulationTimer.Stop();
            DayTimer.Stop();
            Day = 0;
            RefreshLabels();
            SimulationTimer.Interval = Settings.SimulationTime;
            Console.WriteLine($"Percentuale contagio: {Settings.SpreadProbability}%");
            People = new Person[Settings.PeopleNum];
            Random rand = new Random();

            for (int i = 0; i < People.Length; i++)
            {
                int   diameter = 7;
                int   x        = rand.Next(SimulationPanel.Width - diameter);
                int   y        = rand.Next(SimulationPanel.Height - diameter);
                Point point    = new Point(x, y);
                int   speedX;
                do
                {
                    speedX = rand.Next(MinSpeed, MaxSpeed + 1);
                } while (speedX == 0);
                int speedY;
                do
                {
                    speedY = rand.Next(MinSpeed, MaxSpeed + 1);
                } while (speedY == 0);
                People[i] = new Person(point, diameter, speedX, speedY, rand);
            }
            int j = rand.Next(Settings.PeopleNum);

            People[j].Infect();
            RefreshLabels();
            ChartThread             = new ChartThread(this);
            SimulationTimer.Enabled = true;
            DayTimer.Enabled        = true;
            SimulationTimer.Start();
            DayTimer.Start();
        }
    public void ProcessRequest(CardResourceRequest request)
    {
        CardResourceRequest reqToDisplace = null;

        foreach (CardResourceRequest r in _requests)
        {
            if (r.Data == request.Data)
            {
                reqToDisplace = r;
                break;
            }
        }
        _requests.Remove(reqToDisplace);
        _requests.Add(request);
        if (reqToDisplace == null)
        {
            DayTimer timer = InitProvidingTimer(request.Data);
            timer.AddTimerFinishedListener(() => InjectByRequest(request));
        }
        ResetProvidingTimer(request.Data);
        // CheckRequests();
    }
Esempio n. 18
0
 protected override void OnDestroy()
 {
     base.OnDestroy();
     _instance = null;
 }
 private void SetupDayTimer()
 {
     DayTimer.GetInstance().NotifyDaysOnElapse += ProcessDay;
     DayTimer.DayLengthInSeconds = 3;
     DayTimer.GetInstance().Start();
 }
Esempio n. 20
0
 private static void RemoveDayTimerFromTimers(DayTimer dt)
 {
     _timers.Remove(dt);
 }
Esempio n. 21
0
	// Use this for initialization
	void Awake () {
		_mainLight = gameObject.GetComponent<Light>();
		_playerLight = GameObject.Find("PlayerLight").GetComponent<Light>();
		_dayTimer = GameObject.Find("Timer").GetComponent<DayTimer>();
		SetLightColor();
	}