Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > разработка игр, графический дизайн и моделирование > Gamedev - cоздание игр: Unity, OpenGL, DirectX
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Результаты опроса: Насколько все плохо?
очень 5 50.00%
не очень 2 20.00%
не не очень 1 10.00%
не не не очень 2 20.00%
Голосовавшие: 10. Вы ещё не голосовали в этом опросе

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 26.05.2013, 21:30   #1
intmain
Играюсь с Python
Форумчанин
 
Аватар для intmain
 
Регистрация: 12.12.2012
Сообщений: 340
Лампочка Запилил игру на коленке из того что было под ногой. Зацените.

Вот она.
Код:
program programalka;

{$APPTYPE CONSOLE}

uses
  SysUtils;     //Привет Мир!

type
  TSomething = class
    public
      name : AnsiString;
      procedure Process(var T : TSomething); virtual;abstract;
  end;

  TRock = class;
  TPaper = class;
  TScissors = class;


  TRock = class(TSomething)
    public
      procedure Process(var T : TSomething);override;
      constructor Create();
  end;

  TPaper = class(TSomething)
    public
      procedure Process(var T : TSomething);override;
      constructor Create();
  end;

  TScissors = class(TSomething)
    public
      procedure Process(var T : TSomething);override;
      constructor Create();
  end;


procedure TRock.Process(var T : TSomething);
begin
  if T is TRock then
    writeln ('Replay! No one win')
  else if T is TPaper then
    writeln('TPaper wins TRock!')
  else
    writeln('TRock wins TScissors!')

end;

constructor TRock.Create;
begin
  name := 'Rock';
end;

procedure TPaper.Process(var T : TSomething);
begin
  if T is TPaper then
    writeln ('Replay! No one win')
  else if T is TRock then
    writeln('TPaper wins TRock!')
  else
    writeln('TScissors wins TPaper!')

end;

constructor TPaper.Create;
begin
  name := 'Paper';
end;

procedure TScissors.Process(var T : TSomething);
begin
  if T is TScissors then
    writeln ('Replay! No one win')
  else if T is TRock then
    writeln('TRock wins TScissors!')
  else
    writeln('TScissors wins TPaper!')

end;

constructor TScissors.Create;
begin
  name := 'Scissors';
end;

function GenerateRandomThing() : TSomething;
var
 i : Integer;
begin
  i := Random(3);

  case i of
    0:
    begin
      Result := TRock.Create;
    end;
    1:
    begin
      Result := TPaper.Create;
    end;
    2:
    begin
      Result := TScissors.Create;
    end;

  end;

end;

function PromtUserSelect() : TSomething;
var
  n : integer;
  T : TSomething;
begin
  writeln ('Select something...');
  writeln ('1. Rock');
  writeln ('2. Paper');
  writeln ('3. Scissors');

  T := nil;

  readln(n);
  case n of
  1:
  begin
    T := TRock.Create;
  end;
  2:
  begin
    T := TPaper.Create;
  end;
  3:
  begin
    T := TScissors.Create;
  end;

  else begin // default
    writeln('choiced num out of range.');

  end;

  end;

  Result := T;

end;

var
  Game  : Boolean = True;
  yn    : AnsiString;
  PlayerThing   : TSomething;
  ComputerThing : TSomething;
begin
  while (Game) do
  begin
    Writeln('===========================================');
    Writeln('Do you wanna play again? y/n');
    readln(yn);
    yn := UpperCase(yn);
    if (yn ='Y') then begin
      ComputerThing := GenerateRandomThing();
      if (ComputerThing <> nil) then begin
        PlayerThing := PromtUserSelect();
        if (PlayerThing <> nil) then begin
          Writeln(Format('Player have an %s thing',[PlayerThing.name]));
          Writeln(Format('Computer have an %s thing',[ComputerThing.name]));

          PlayerThing.Process(ComputerThing);

          Writeln('===========================================');

        end;
      end;
    end
    else begin
      Game := False;
    end;

  end;

  writeln('Exit game...');
  readln;
end.
Что ел то - в долг, что жил то - зря.
Для избранных. ))
Секретные разработки
intmain вне форума
Старый 26.05.2013, 22:07   #2
ROD
Linux C++ Qt ARM
Старожил
 
Аватар для ROD
 
Регистрация: 30.11.2008
Сообщений: 3,030
По умолчанию

И как вы в это играть предлагаете? У меня вот нет компилятора для делфей.
Дилетант широкого профиля.

"Слова ничего не стоят - покажите мне код!" © Линус Торвальдс
ROD вне форума
Старый 27.05.2013, 00:23   #3
Beermonza
Инженер ИС
Старожил
 
Аватар для Beermonza
 
Регистрация: 13.12.2006
Сообщений: 2,671
По умолчанию

Заценивать что? ...дети на уроке информатики подобное пишут, ...или ты серьёзно?
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Beermonza вне форума
Старый 27.05.2013, 00:31   #4
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

что-то не видно где уничтожаются something-и
eval вне форума
Старый 27.05.2013, 06:22   #5
intmain
Играюсь с Python
Форумчанин
 
Аватар для intmain
 
Регистрация: 12.12.2012
Сообщений: 340
По умолчанию

Цитата:
У меня вот нет компилятора для делфей.
Это часть игрового процесса - установить его )

Цитата:
Заценивать что? ...дети на уроке информатики подобное пишут, ...или ты серьёзно?
Это. Да дети разное пишут, кто-то матерные стихи писал на этих уроках прямо на парте.
В этот раз нет.

Цитата:
что-то не видно где уничтожаются something-и
Блин забыл да, спс. И тут кроме этого есть еще проблемы. В общем не пределу совершенства.
Что ел то - в долг, что жил то - зря.
Для избранных. ))
Секретные разработки
intmain вне форума
Старый 27.05.2013, 08:17   #6
ROD
Linux C++ Qt ARM
Старожил
 
Аватар для ROD
 
Регистрация: 30.11.2008
Сообщений: 3,030
По умолчанию

Цитата:
Сообщение от intmain Посмотреть сообщение
Это часть игрового процесса - установить его )
Ага... скачать компилятор ради трешовой игры класса "Хелоу канвас".
Дилетант широкого профиля.

"Слова ничего не стоят - покажите мне код!" © Линус Торвальдс
ROD вне форума
Старый 27.05.2013, 13:00   #7
Kix.IV
Участник клуба
 
Регистрация: 11.08.2012
Сообщений: 1,226
По умолчанию

А какой смысл в этом?
Kix.IV вне форума
Старый 27.05.2013, 14:10   #8
intmain
Играюсь с Python
Форумчанин
 
Аватар для intmain
 
Регистрация: 12.12.2012
Сообщений: 340
По умолчанию

Цитата:
Ага... скачать компилятор ради трешовой игры класса "Хелоу канвас".
Ага, мал по малу потом и кризис сделаю. Это же прототип геймплея без графы.

Цитата:
А какой смысл в этом?
Сакральный.
Что ел то - в долг, что жил то - зря.
Для избранных. ))
Секретные разработки
intmain вне форума
Старый 27.05.2013, 14:18   #9
Smitt&Wesson
Старожил
 
Аватар для Smitt&Wesson
 
Регистрация: 31.05.2010
Сообщений: 13,543
По умолчанию

В опросе нет одной графы:
Очень даже не очень...
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder
Smitt&Wesson вне форума
Старый 27.05.2013, 14:39   #10
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

где v2 ?
eval вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Зацените игру MaratZahidyl Gamedev - cоздание игр: Unity, OpenGL, DirectX 1 19.09.2012 14:24
что нужно сделать с <td> что бы между картинками другого <table> не было разделения? alex555 HTML и CSS 22 24.04.2012 16:43
Зацените первую игру Вадим21 Gamedev - cоздание игр: Unity, OpenGL, DirectX 12 13.06.2011 20:56
Зацените игру! Terrance! Gamedev - cоздание игр: Unity, OpenGL, DirectX 14 16.10.2010 11:34
Зацените игру snake-as Софт 3 08.01.2008 00:16