Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

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

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

Ответ
 
Опции темы
Старый 12.12.2010, 02:21   #1
DeyaInferi
 
Регистрация: 01.11.2010
Сообщений: 9
Репутация: 10
По умолчанию Графика. Написание игры

Здравствуйте господа программисты.
Обращаюсь к вам с такой просьбой:
Я написала примитивную игру(если ее вообще игрой назвать можно) "арканоид". Т.е. у меня есть плитка. Мячик отбиваются от стен и как только он попадает на эту самую "плитку" начисляются балы.
Каким образом можно сделать так, что бы при попадание на плитку игра заново не начиналась, а мячик отбивался от этой плитки?
Вот код задачи:
Код:

Uses graph, crt;
var
 xa,ya,k,dv,mv,sx,sy,x0,y0:integer;
 x,y,p:integer;
 z:char;
 st:string;


 procedure ark(cva:byte; xa,y:integer);
  begin
  setcolor(cva);
  setfillstyle(3,cva);
  bar(xa,ya,xa+100,ya+20);
  end;

  begin
   dv:=detect;
   initgraph(dv,mv,'');

   k:=0;
  repeat
   cleardevice;
   x:=20;
   y:=460;
   sx:=1;
   sy:=1;
   xa:=560;
   ya:=460;
   ark(15,xa,ya);
   str(k,st);
   setcolor(12);
   outtextxy(320,240,st); delay(9999);
   repeat

    if (y>479) or (y<5) then  sy:=-sy;
    if (x>620) or (x<20) then sx:=-sx;
    x:=x+sx;
    y:=y-sy;
    setcolor(13);
    circle(x,y,5);
    delay(100);
    setcolor(0);
    circle(x,y,5);
    if keypressed then
   begin
      z:=readkey;
      ark(0, xa, ya);
      case z of
        #75: begin xa:=xa-15; if xa<1 then xa:=1 end;
        #77: begin xa:=xa+15; if xa>540 then xa:=540 end;
        #27:exit;
      end;
        ark(15, xa,ya);
    end;
        setcolor(15);
   until (getpixel(x,y)=15) or (y>475) ;
        If  (getpixel(x,y)=15)  then
        begin
        k:=k+1;
        str(k,st);
        setcolor(0);
        setfillstyle(1,0);
        bar(310,230,330,250);
        outtextxy(320,240,st);
         end
       else
         begin
        k:=k-1;
        str(k,st);
        setcolor(0);
        setfillstyle(1,0);
        bar(310,230,330,250);
  end;
  until (z=#27);
  readkey;
         end.

Заранее большое спасибо.
DeyaInferi вне форума   Ответить с цитированием
Старый 12.12.2010, 12:19   #2
Вадим Буренков
Профессионал
 
Аватар для Вадим Буренков
 
Регистрация: 06.03.2009
Сообщений: 1,346
Репутация: 383
По умолчанию

Если мячик коснулся плитки изменять скорость мячика по y на противоположную...
Вадим Буренков вне форума   Ответить с цитированием
Старый 12.12.2010, 14:42   #3
DeyaInferi
 
Регистрация: 01.11.2010
Сообщений: 9
Репутация: 10
По умолчанию

Цитата:
Сообщение от Вадим Буренков Посмотреть сообщение
Если мячик коснулся плитки изменять скорость мячика по y на противоположную...
Как не пробовала, у меня он все равно проваливается сквозь плитку(
DeyaInferi вне форума   Ответить с цитированием
Старый 15.12.2010, 21:22   #4
Shadow_1329
Форумчанин
 
Аватар для Shadow_1329
 
Регистрация: 23.02.2009
Сообщений: 237
Репутация: 40
По умолчанию

Надо пересмотреть условия. Поставить их по-другому.
Shadow_1329 вне форума   Ответить с цитированием
Старый 28.12.2010, 12:34   #5
FullVenic
Форумчанин
 
Регистрация: 19.07.2010
Адрес: Украина, Киев.
Сообщений: 59
Репутация: 10
По умолчанию

я думаю проще будет нарисовать, загрузить изображения, присвоить изображению(ям) имя, в случае чего создать масив, а потом делать проверку столкновения
if ball\,ball\y = block\x,block\y
delete block
FullVenic вне форума   Ответить с цитированием
Старый 03.01.2011, 21:51   #6
Sabin4ik
Форумчанин
 
Регистрация: 03.01.2011
Адрес: Питер
Сообщений: 80
Репутация: 10

skype: SABIN4IK58
По умолчанию

написала игру калах)) с ИИ)
Sabin4ik вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Написание простой 2D игры на C++ Pirotexnik Visual C++ 12 08.05.2012 21:42
Совместное написание игры. Casper-SC Свободное общение 20 14.06.2010 21:16
Написание простенькой 2д игры romec1 Gamedev - cоздание игр: Unity, OpenGL, DirectX 14 08.03.2010 00:11
С чего начать написание игры? Dalagardi Помощь студентам 3 17.02.2010 16:16
написание онлайн игры jah Фриланс 1 06.10.2009 15:46


22:16.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru