Здавалка
Главная | Обратная связь

Практический пример на создание примитивного текстового квеста.



Постановка задачи

Вы конечно знакомы с таким жанром игр, как квест. Герой такой игры должен выполнять различные задания, отвечать на вопросы, принимать решения, от которых зависит результат игры. Мы с вами пропробуем сейчас создать так называемый текстовый квест (квест без графики). Наша задача предлагать герою варианты действий, и в зависимости от его выбора строить ситуацию.

Код релизации.

#include <iostream>using namespace std;void main(){ // Добро пожаловать. Три испытания чести. Злой маг похитил //принцессу и ее судьба в твоих руках. Он предлагает тебе //пройти 3 испытания чести в его лабиринте. cout<<"Welcome. Three tests of honour. The malicious magician has stolen\n\n"; cout<<"\nprincess and its destiny in your hands. It suggests you\n"; cout<<"\nto pass 3 tests of honour in its labyrinth.\n"; bool goldTaken, diamondsTaken, killByDragon; //Ты входишь в первую комнату, здесь очень много золота. cout<<"You enter into the first room, here it is a lot of gold.\n\n"; //Возьмешь ли ты его? cout<<"Whether you will take it?(1-yes, 0-no)\n\n"; cin>>goldTaken; if(goldTaken) // если возьмешь { //Золото остается тебе, но ты провалил испытание. ИГРА ОКОНЧЕНА!!! cout<<"Gold remains to you, but you have ruined test. GAME is over!!!\n\n"; } else // если нет { //Поздравляю, ты прошел первое испытание чести! cout<<"I congratulate, you have passed the first test abuse!\n\n"; //Ты переходишь в следующую комнату. Она полна бриллиантов cout<<"You pass in a following room. It is full of brilliants \n\n"; //Возьмешь ли ты бриллианты? cout<<"Whether you will take brilliants? (1-yes,0-no)\n\n"; cin>>diamondsTaken; if(diamondsTaken)// если возьмешь { //Бриллианты остаются тебе, но ты провалил второе испытание cout<<"Brilliants remain to you, but you have ruined the second test\n\n"; //ИГРА ОКОНЧЕНА!!! cout<<"GAME is over!!!\n\n"; } else //если нет { //Поздравляю, ты прошел второе испытание чести!!! cout<<"I congratulate, you have passed the second test abuse!!!\n\n"; //Ты входишь в третью комнату. cout<<"You enter into the third room. \n\n"; //На крестьянина напал дракон! Двигаться дальше cout<<"The person was attacked by a dragon! To move further \n\n"; //не обращая на них внимания cout<<"Not paying to them of attention (1-yes,0-no)?\n\n"; cin>>killByDragon; if(killByDragon)//если возьмешь { //Ты пытаешься проскользнуть мимо, но дракон cout<<"You try to pass past, but a dragon \n\n"; //замечает твое присутствие. cout<<"notices your presence\n\n"; //Oн превращает тебя в пепел. Ты мертв!!! cout<<"It transforms you into ashes. You are dead!!!\n\n"; //ИГРА ОКОНЧЕНА!!! cout<<"GAME is over!!!\n\n"; } else//если нет { //Поздравляю, ты с честью прошел все испытания!!! cout<<"I congratulate, you with honour have was tested all!!! \n\n"; //Принцесса достается тебе!!! cout<<"Princess gets to you!!!\n\n"; } } } }

Несмотря на примитивность примера, вы можете убедиться в том, что уже сейчас, имея минимальные знания мы можем написать программу, способную развлечь среднестатистического малыша. Это происходит потому, что у нас в руках есть мощное средство - условные операторы.

Предыдущая Оглавление Следующая  
Предыдущая Оглавление Следующая
           






©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.