Exemplo n.º 1
0
 public virtual void Demote()
 {
     GameLibOfMethods.AddChatMessege("You got fired from your job.");
     CurrentPerfomanceLevel         = 3;
     JobManager.Instance.CurrentJob = DemoteJob ? DemoteJob : null;
     CareerUi.Instance.UpdateJobUi();
 }
Exemplo n.º 2
0
 protected virtual void LevelUp()
 {
     data.xp     = 0;
     data.level += 1;
     Stats.InvokeLevelUp(type);
     Effect();
     GameLibOfMethods.CreateFloatingText($"{name} Leveled UP!", 3);
     GameLibOfMethods.AddChatMessege(name + " level UP!");
 }
Exemplo n.º 3
0
 public virtual void PositiveWorkProgress()
 {
     CurrentPerfomanceLevel += 1;
     GameLibOfMethods.AddChatMessege("You are doing well in your job!");
     if (CurrentPerfomanceLevel > 5)
     {
         Promote();
     }
     CareerUi.Instance.UpdateJobUi();
 }
Exemplo n.º 4
0
 public virtual void Penalize()
 {
     GameLibOfMethods.AddChatMessege("You performing badly on your job.");
     CurrentPerfomanceLevel -= 1;
     if (CurrentPerfomanceLevel == 0)
     {
         Demote();
     }
     CareerUi.Instance.UpdateJobUi();
 }
Exemplo n.º 5
0
    public void Accomplish()
    {
        if (accomplished == false)
        {
            accomplished = true;
            GetRewardButton.gameObject.SetActive(true);
            GetRewardButton.onClick.AddListener(GetReward);

            MissionHandler.missionHandler.activeMissions.Remove(MissionHandler.missionHandler.activeMissions.Where(obj => obj.name == name).FirstOrDefault());
            MissionHandler.missionHandler.CheckMissions();

            GameLibOfMethods.AddChatMessege("You've completed a quest, collect the reward to get " + MoneyBonus + " £!");
        }
    }
Exemplo n.º 6
0
    public virtual void Promote()
    {
        int i = 0;

        foreach (Skill.Type type in RequiredSkills.Keys)
        {
            i++;
            if (Stats.Skill(type).CurrentLevel >= RequiredSkills[type])
            {
            }
            else
            {
                return;
            }
        }
        CurrentPerfomanceLevel         = 3;
        JobManager.Instance.CurrentJob = PromotionJob ? PromotionJob : this;
        GameLibOfMethods.AddChatMessege("You got promoted on your job!");
        CareerUi.Instance.UpdateJobUi();
    }
Exemplo n.º 7
0
    IEnumerator <float> Sleeping()
    {
        HandlePlayerSprites(enable: false);

        //PlayerAnimationHelper.ResetPlayer();
        yield return(0f);

        Debug.Log("Went to sleep");

        Physics2D.IgnoreLayerCollision(GameLibOfMethods.player.layer, 10, true);
        GameLibOfMethods.isSleeping = true;
        GameLibOfMethods.cantMove   = true;
        GameLibOfMethods.animator.SetBool("Sleeping", true);
        GameLibOfMethods.player.GetComponent <Rigidbody2D>().velocity = Vector2.zero;

        yield return(MEC.Timing.WaitForSeconds(0.5f));

        GameLibOfMethods.AddChatMessege("Went to sleep.");

        float T = 0;

        GameClock.ChangeSpeedToSleepingSpeed();
        while (true)
        {
            GameLibOfMethods.concecutiveSleepTime += (Time.deltaTime * GameClock.TimeMultiplier) * GameClock.Speed;
            float Multi = (Time.deltaTime / GameClock.Speed) * GameClock.TimeMultiplier;

            Stats.Status(Type.Energy).Add(EnergyGainPerHour * Multi);
            Stats.Status(Type.Mood).Add(MoodGainPerHour * Multi);
            Stats.Status(Type.Health).Add(HealthGainPerHour * Multi);

            if (Input.GetKeyUp(KeyCode.E))
            {
                break;
            }

            if (Stats.Status(Type.Energy).CurrentAmount >= Stats.Status(Type.Energy).MaxAmount)
            {
                T += Time.deltaTime;

                if (T >= 2)
                {
                    GameLibOfMethods.CreateFloatingText("Can't sleep more", 2);
                    break;
                }
            }
            yield return(0f);
        }

        PlayExitSound();

        GameLibOfMethods.animator.SetBool("Sleeping", false);
        yield return(0f);

        while (true)
        {
            var state = GameLibOfMethods.animator.GetCurrentAnimatorStateInfo(0);
            if (!state.IsName("JumpOffToBed"))
            {
                Debug.Log("Something is wrong.. this finished before firing the method. Make sure you don't call this from FixedUpdate.");
                break;
            }

            if (state.normalizedTime >= 40 / 50f)
            {
                break;
            }
            yield return(0f);
        }

        HandlePlayerSprites(enable: true);

        PlayerCommands.JumpOff(JumpOffSpeed);

        GameClock.ResetSpeed();
    }
Exemplo n.º 8
0
 public virtual void AssignToThisJob()
 {
     JobManager.Instance.CurrentJob = this;
     GameLibOfMethods.AddChatMessege("You are working on " + JobManager.Instance.CurrentJob.name + " job now.");
     CareerUi.Instance.UpdateJobUi();
 }
Exemplo n.º 9
0
    public void ChooseWeatherForTheDay()
    {
        ResetWeather();
        float temp = Random.Range(0, 100);

        Debug.Log(temp);
        WeatherIcon.sprite = NormalWeatherSprite;
        if (temp < snowChance)
        {
            foreach (ParticleSystemRenderer weather in WeatherRenderers)
            {
                if (weather.gameObject.name == "Snow")
                {
                    StartCoroutine(ChangeSound(SnowSound));
                    var tempWeather  = weather.GetComponent <ParticleSystem>();
                    var tempEmission = tempWeather.emission;
                    tempEmission.enabled = true;
                    WeatherIcon.sprite   = SnowWeatherSprite;
                }
            }
            GameLibOfMethods.AddChatMessege("Snow weather choosed");
            return;
        }
        if (temp < fogChance)
        {
            StartCoroutine(ChangeSound(FogSound));
            FogScript.DensityBeforeFadingAway = Random.Range(0.4f, 0.6f);
            FogScript.Size = Random.Range(2f, 8f);
            fogToday       = true;
            GameLibOfMethods.AddChatMessege("Fog weather choosed");
            return;
        }
        if (temp <= rainChance)
        {
            foreach (ParticleSystemRenderer weather in WeatherRenderers)
            {
                if (weather.gameObject.name == "Rain")
                {
                    StartCoroutine(ChangeSound(RainSound));
                    var tempWeather  = weather.GetComponent <ParticleSystem>();
                    var tempMain     = tempWeather.main;
                    var tempEmission = tempWeather.emission;
                    tempEmission.rateOverTime = Random.Range(500, 3000);
                    tempMain.startSize        = Random.Range(0.3f, 0.7f);
                    tempEmission.enabled      = true;
                    WeatherIcon.sprite        = RainWeatherSprite;
                }
            }
            GameLibOfMethods.AddChatMessege("Today is raining.");
            return;
        }
        if (temp < sunnyChance)
        {
            StartCoroutine(ChangeSound(SunnySound));
            sunnyToday = true;
            GameLibOfMethods.AddChatMessege("Today is sunny weather");
            WeatherIcon.sprite = SunnyWeatherSprite;
            return;
        }
        if (temp < cloudyChance)
        {
            foreach (ParticleSystemRenderer weather in WeatherRenderers)
            {
                if (weather.gameObject.name == "Clouds")
                {
                    StartCoroutine(ChangeSound(CloudySound));
                    var tempWeather  = weather.GetComponent <ParticleSystem>();
                    var tempEmission = tempWeather.emission;
                    tempEmission.enabled = true;
                    WeatherIcon.sprite   = CloudyWeatherSprite;
                }
            }
            cloudyToday = true;
            GameLibOfMethods.AddChatMessege("Cloudy weather today.");
            return;
        }



        foreach (ParticleSystemRenderer weather in WeatherRenderers)
        {
            var tempWeather  = weather.GetComponent <ParticleSystem>();
            var tempEmission = tempWeather.emission;
            tempEmission.enabled = false;
        }
        StartCoroutine(TurnOffSound());
    }