Пример #1
0
        private void BattleCave(CharacterInfo inf, MobsInfo itsmob)
        {
            i = rand.Next(1, 4);
            string txt;

            switch (i)
            {
            case 1:
                txt = string.Format("Вы оазались окружены сталагмитами. " +
                                    "За одним из них оказался {0}. " +
                                    "Вы вступаете в бой.\n", itsmob.Name);
                Print.Print2(txt);
                Console.ReadKey();
                break;

            case 2:
                txt = string.Format("Вы нашли вход в шахту и решили пойти вдоль рельсов. " +
                                    "После череды поворотов влево или вправо на развилках, рельсы, наконец, закончились. " +
                                    "Вас уже поджидал {0}. " +
                                    "Вы вступаете в бой.\n", itsmob.Name);
                Print.Print2(txt);
                Console.ReadKey();
                break;

            case 3:
                txt = string.Format("Вы нашли пещерное озеро. " +
                                    "Стоя и наблюдая красоту подземной водной глади, Вы не заметили, как сзади подкрался {0} " +
                                    "Вы вступаете в бой.\n", itsmob.Name);
                Print.Print2(txt);
                Console.ReadKey();
                break;
            }
            string text;

            if (inf.Strength >= itsmob.Strength)
            {
                text      = string.Format("Вы одержали победу!\nВы возвращаетесь в лагерь, приобретя {0} опыта и {1} золота.\n", itsmob.Exp, itsmob.Gold);
                inf.Exp  += itsmob.Exp;
                inf.Gold += itsmob.Gold;
                inf.Itsvictory++;
                Print.Print2(text);
                Console.ReadKey();
            }
            else
            {
                text = string.Format("Вражеский {0} одержал победу! Вы возвращаетесь в лагерь ни с чем.", itsmob.Name);
                Print.Print2(text);
                Console.ReadKey();
            }
        }
Пример #2
0
        private void BattleWood(CharacterInfo character, MobsInfo itsmob)
        {
            int    i = rand.Next(1, 4);
            string txt;

            switch (i)
            {
            case 1:
                txt = string.Format("Вы шли по лесу и вышли на небольшую чащу, в центре которой был {0}. " +
                                    "Вы вступаете в бой.\n", itsmob.Name);
                Print.Print2(txt);
                Console.ReadKey();
                break;

            case 2:
                txt = string.Format("За очередным деревом, располагающимся у лесной тропы, вдоль которой Вы шли, оказался враждебный {0}. " +
                                    "Вы вступаете в бой.\n", itsmob.Name);
                Print.Print2(txt);
                Console.ReadKey();
                break;

            case 3:
                txt = string.Format("Лесная тропа заводила Вас всё глубже в лес, пока не Вы не оказались в тупике, в котором Вас уже ждал {0}. " +
                                    "Вы вступаете в бой.\n", itsmob.Name);
                Print.Print2(txt);
                Console.ReadKey();
                break;
            }
            string text;

            if (character.Strength >= itsmob.Strength)
            {
                text                 = string.Format("Вы одержали победу!\nВы возвращаетесь в лагерь, приобретя {0} опыта и {1} золота.\n", itsmob.Exp, itsmob.Gold);
                character.Exp       += itsmob.Exp;
                character.Gold      += itsmob.Gold;
                character.Itsvictory = 1;
                Print.Print2(text);
                Console.ReadKey();
            }
            else
            {
                text = string.Format("Вражеский {0} одержал победу! Вы возвращаетесь в лагерь ни с чем.", itsmob.Name);
                Print.Print2(text);
                Console.ReadKey();
            }
            Camp(character);
        }
Пример #3
0
    void CreateLevel(MobsInfo info)
    {
        float currentMobHealth = (float)info.health - ProgressForIndex(CurrentLevelIndex).damage;

        if (Mathf.Approximately(currentMobHealth, 0f))
        {
            SetProgressForIndex(CurrentLevelIndex, 0f);
            currentMobHealth = (float)info.health;
        }
        ResertSprite();

        CurrentMobHealth  = currentMobHealth;
        gameSprite.sprite = info.image;
        lastTimerDamage   = 0f;
        isLevelStarted    = true;
        OnLevelSpawned?.Invoke();
    }