Похожие темы
Вход
Переводчик
Моя игра
Stickman Admirably :: Общение :: Блоги :: Бложик Cracker'а
Страница 1 из 1
20100510
Моя игра
Я не знаю почему, но псто с программами отредактировать не удалось - создаю новый. Я написал игру всё в том же FPC. Это простенький текстовый квест с очень крутым сюжетом(Warner Bros. уже выкупили права на экранизацию). Вобщем меньше слов, больше дела:
Скачать
rghost.ru
Когда в конце предлагают сыграть еще раз - вводите Y, если хотите, N - если не хотите.rghost.ru
- Исходный код(НЕ ЧИТАТЬ, ПОКА НЕ ПРОШЛИ ИГРУ):
Program Game;
var EnemyBlock, YouBlock, EnemyStrike, YouStrike, Answer, hits, youHits:integer; Again:string;
label start, ending, oneYes, oneNo,street, nearShop, farShop, gopstop, win1, win2, lose1, lose2, police, silence, shoot, unhappyEnd, YouBlocked, EnemyBlocked, YouAttack, EnemyAttack, Fight, Run, FightGop, YouBlocked1, EnemyBlocked1, YouAttack1, EnemyAtt
begin
hits:=0;
start:
Writeln('-Коля... Коля... Коля! Вставай!');
Writeln('-А? Что?!... А, мам, это ты... Зачем ты меня так рано разбудила?');
Writeln('-Ты что, забыл? У твоего отца сегодня день рождения! Я решила ');
Writeln('испечь торт, но у меня нет сливок. Сходишь за ними?');
Writeln('Выберите ответ:');
Writeln('1. Да, конечно');
Writeln('2. Нет!');
Readln(Answer);
if Answer=1 then goto oneYes else goto oneNo;
oneYes:
Writeln('-Спасибо, Коленька. Вот, держи деньги, одевайся и иди в магазин.*уходит*');
goto street;
oneNo:
Writeln('Что значит нет?! А ну быстро взял деньги, оделся и пошёл!');
street:
Writeln('Вы вышли на улицу. Что будете делать?');
Writeln('1. Пойду в магазин возле дома.');
Writeln('2. Поеду в магазин на другом конце города');
Writeln('3. Пойду гулять по городу.');
Readln(Answer);
if Answer=1 then goto nearShop else
if Answer=2 then goto farShop else
if Answer=3 then goto gopstop;
nearShop:
Writeln('Вы подходите к магазину и видите табличку "Закрыто на учёт". Что будете делать?');
Writeln('1. Поеду в магазин на другом конце города');
Writeln('2. Пойду гулять по городу.');
Readln(Answer);
if Answer=1 then goto farShop else
if Answer=2 then goto gopstop else
farShop:
Writeln('Вы приезжаете на другой конец города. Заходите в магазин, берете сливки,');
Writeln('идёте к кассе. Вдруг в магазин вламывается человек в черной маске с пистолетом');
Writeln('-Все на пол, быстро! Это ограбление! И можете не звать охранника, о нём я уже позаботился');
Writeln('Все, включая вас, ложатся на пол. Грабитель подходит к кассе, прицеливается в продавщицу, та начинает доставать деньги из кассы');
Writeln('Что будете делать?');
Writeln('1. Попытаюсь незаметно позвонить в милицию');
Writeln('2. Буду тихо лежать на полу');
Readln(Answer);
if Answer=1 then goto police else;
if Answer=2 then goto silence;
silence:
Writeln('Вы лежите на полу, грабитель забирает все деньги из кассы и убегает. Через некоторое время приезжает милиция, назначает всем свидетелям явку в отделение на завтра. В магазин никого не пускают.');
Writeln('Что будете делать?');
Writeln('1. Пойду искать какой-нибудь еще магазин.');
Writeln('2. Пойду домой.');
Readln(Answer);
if Answer=1 then goto gopstop else goto unhappyEnd;
police:
Writeln('Вы тихонько достаете телефон и пытаетесь набрать 02');
Writeln('-Ты что делаешь, гаденыш?! - вопит грабитель и наводит на вас пистолет');
Writeln('Продавщица, набравшись смелости, бьёт грабителя по голове бутылкой, тот роняет пистолет.');
Writeln('Что будете делать?');
Writeln('1. Полезете в драку с грабителем');
Writeln('2. Схватите упавший пистолет и выстрелите грабителю в ногу');
Readln(Answer);
if Answer=1 then goto Fight else goto shoot;
Fight:
Writeln('Начинается драка');
YouAttack:
Writeln('Вы атакуете:');
Writeln('1. Ударить в голову');
Writeln('2. Ударить в живот');
Writeln('3. Ударить по ногам');
readln(YouStrike);
Randomize;
EnemyBlock:=random(2)+1;
if YouStrike=EnemyBlock then goto YouBlocked else;
Writeln('Вы попали по противнику!');
hits:=hits+1;
if hits=3 then goto win1 else goto EnemyAttack;
YouBlocked:
Writeln('Ваш удар был заблокирован!');
goto EnemyAttack;
EnemyAttack:
Writeln('Теперь атакует противиник. Cтавьте блок:');
Writeln('1. Защищать голову');
Writeln('2. Защищать живот');
Writeln('3. Защищать ноги');
Readln(YouBlock);
Randomize;
EnemyStrike:=random(2)+1;
if YouBlock=EnemyStrike then goto EnemyBlocked else
Writeln('Противник попал по вам!');
youHits:=youHits+1;
if YouHits=3 then goto Lose1 else goto YouAttack;
EnemyBlocked:
Writeln('Вы заблокировали удар противника!');
goto YouAttack;
win1:
Writeln('Вы нокаутировали вора! Занятия боксом не прошли даром! Вскоре приехала милиция и вы были вознаграждены, и естественно получили заветные сливки, причём абсолютно бесплатно!');
Writeln('Хотите попробовать еще раз и завершить игру с другой концовкой?');
Readln(Again);
if again=('Y') then goto start else goto ending;
Goto Ending;
lose1:
Writeln('Противник нокаутировал вас. Что было потом вы помните весьма смутно. Несколько часов спустя вы очнулись в больничной койке. Похоже Вам придётся провести здесь пару недель!');
Writeln('Хотите попробовать еще раз и завершить игру с другой концовкой?');
Readln(Again);
if again=('Y') then goto start else goto ending;
shoot:
Writeln('Вы выстрелили грабителю в ногу. Он упал, корчась от боли. Через некоторе время приехала милиция и вас осудили за "Превышение норм самообороны" и дали срок - полгода.');
Writeln('Хотите попробовать еще раз и завершить игру с другой концовкой?');
Readln(Again);
if again=('Y') then goto start else goto ending;
unhappyend:
Writeln('Вы пришли домой и рассказали обо всём случившемся. Все были очень рады, что с вами всё в порядке, но папа остался без торта.');
Writeln('Хотите попробовать еще раз и завершить игру с другой концовкой?');
Readln(Again);
if again=('Y') then goto start else goto ending;
gopstop:
Writeln('В поисках магазина вы нечайно заходите в какой-то тёмный переулок.');
Writeln('-Эй, пацан! Стой, слыш! - доносится голос сзади.');
Writeln('Вы оборачиваетесь и видите гопника. Что будете делать?');
Writeln('1. Постараюсь убежать.');
Writeln('2. Буду защищатся.');
Readln(Answer);
if Answer=1 then goto run else goto FightGop;
Run:
Writeln('Вы пытаетесь убежать из закоулка, но гопник догоняет вас. Что было потом вы помните весьма смутно. Несколько часов спустя вы очнулись в больничной койке. Похоже Вам придётся провести здесь пару недель!');
Writeln('Хотите попробовать еще раз и завершить игру с другой концовкой?');
Readln(Again);
if again=('Y') then goto start else goto ending;
FightGop:
hits:=0;
youHits:=0;
Writeln('Начинается драка');
YouAttack1:
Writeln('Вы атакуете:');
Writeln('1. Ударить в голову');
Writeln('2. Ударить в живот');
Writeln('3. Ударить по ногам');
readln(YouStrike);
Randomize;
EnemyBlock:=random(2)+1;
if YouStrike=EnemyBlock then goto YouBlocked1 else;
Writeln('Вы попали по противнику!');
hits:=hits+1;
if hits=3 then goto win2 else goto EnemyAtt1;
YouBlocked1:
Writeln('Ваш удар был заблокирован!');
goto EnemyAtt1;
EnemyAtt1:
Writeln('Теперь атакует противиник. Cтавьте блок:');
Writeln('1. Защищать голову');
Writeln('2. Защищать живот');
Writeln('3. Защищать ноги');
Readln(YouBlock);
Randomize;
EnemyStrike:=random(2)+1;
if YouBlock=EnemyStrike then goto EnemyBlocked1 else
Writeln('Противник попал по вам!');
youHits:=youHits+1;
if YouHits=3 then goto Lose2 else goto YouAttack1;
EnemyBlocked1:
Writeln('Вы заблокировали удар противника!');
goto YouAttack1;
Win2:
Writeln('Вы победили! Гопник сам отдал вам свой кошелёк, и убежал, а вы купили сливок и вернулись домой.');
Writeln('Хотите попробовать еще раз и завершить игру с другой концовкой?');
Readln(Again);
if again=('Y') then goto start else goto ending;
Lose2:
Writeln('Противник нокаутировал вас. Что было потом вы помните весьма смутно. Несколько часов спустя вы очнулись в больничной койке. Похоже Вам придётся провести здесь пару недель!');
Writeln('Хотите попробовать еще раз и завершить игру с другой концовкой?');
Readln(Again);
if again=('Y') then goto start else goto ending;
Ending:
end.
Cracker- Модератор
- Постов : 2728
Дата регистрации : 2009-01-09
Моя игра :: Комментарии
Valve сосёт.
Последний раз редактировалось: Good (Пн Май 10, 2010 3:41 pm), всего редактировалось 2 раз(а)
Последний раз редактировалось: Good (Пн Май 10, 2010 3:41 pm), всего редактировалось 2 раз(а)
Права доступа к этому форуму:
Вы не можете отвечать на сообщения
|
|