Поиск:

Ответ в темуСоздание новой темы Создание опроса
> игра сокобан 
:(
    Опции темы
ratgunter
Дата 11.10.2009, 19:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 63
Регистрация: 17.11.2008

Репутация: нет
Всего: нет



подскажите, как организовать игровое поле размером 10 на 10?
PM MAIL   Вверх
ИванМ
Дата 11.10.2009, 19:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1260
Регистрация: 19.6.2006
Где: СПб

Репутация: 5
Всего: 23



Легче всего пользоваться компонентом типа TDrawGrid: RowCount=10, ColCount=10. 
Также можно свой компонент написать, можно вручную рисовать в канве, можно воспользоваться OpenGL/DirectX, ...
PM MAIL   Вверх
ratgunter
Дата 12.10.2009, 09:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 63
Регистрация: 17.11.2008

Репутация: нет
Всего: нет



помогите преобразовать код с паскаля в билдер
Код

function done:boolean;
var i1,j1:integer;
k:boolean;
begin
k:=true;
for i1:=1 to max_i do
for j1:=1 to max_j do if stage[i1,j1]=4 then begin
                                             k:=false;
                                             break;
                                             end;
done:=k;
end;

PM MAIL   Вверх
Usper
Дата 12.10.2009, 12:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 325
Регистрация: 13.4.2007

Репутация: 15
Всего: 15



Примерно так:
Код

bool done ()
{
bool k;
k=true;
for(int i1=1; i1<=max_i; i1++)
   for(int j1=1; j1<=max_j; j1++)
      if(stage[i1,j1]=4 {k=false; break;}
return k;
}


Честно говоря, я подзабыл уже как организуются циклы в паскале, поэтому возможно надо вместо "<=" поставить "<" здесь i1<=max_i и здесь  j1<=max_j


--------------------
На посохе волшебном нехилый набалдашник, большой такой, огромный, нехилый набалдашник.
PM MAIL   Вверх
ИванМ
Дата 12.10.2009, 19:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1260
Регистрация: 19.6.2006
Где: СПб

Репутация: 5
Всего: 23



Код

bool done()
{
for(int i1=0; i1<max_i; i1++)
   for(int j1=0; j1<max_j; j1++)
      if(stage[i1][j1]==4) return false;
return true; 
}

PM MAIL   Вверх
ratgunter
Дата 15.10.2009, 05:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 63
Регистрация: 17.11.2008

Репутация: нет
Всего: нет



Спасибо!
PM MAIL   Вверх
ratgunter
Дата 19.10.2009, 15:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 63
Регистрация: 17.11.2008

Репутация: нет
Всего: нет



Помогите заставить двигаться крота и ящики! вот прога: 
http://rapidshare.com/files/295030201/____...______.rar.html
или подскажите как всеже сделать игровое поле, а то я тупо изображениями его построил.
PM MAIL   Вверх
ratgunter
Дата 28.10.2009, 20:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 63
Регистрация: 17.11.2008

Репутация: нет
Всего: нет



подскажите как выполнить данный код:

 for (int i=100;i<107;i++)
   {
      Imagei->Visible=false;
   }
Надо чтоб все Image с 100 по 107 стали невидимыми
PM MAIL   Вверх
xvr
Дата 29.10.2009, 14:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 48
Всего: 223



Цитата(ratgunter @ 28.10.2009,  20:58)
подскажите как выполнить данный код:

 for (int i=100;i<107;i++)
   {
      Imagei->Visible=false;
   }
Надо чтоб все Image с 100 по 107 стали невидимыми

Код

for (int i=100;i<108;i++)
   {
     ((TControl*)FindComponent(String("Image")+i))->Visible=false;
   }

PM MAIL   Вверх
ratgunter
Дата 29.10.2009, 17:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 63
Регистрация: 17.11.2008

Репутация: нет
Всего: нет



Огромное спасибо!!!!
PM MAIL   Вверх
ratgunter
Дата 31.10.2009, 14:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 63
Регистрация: 17.11.2008

Репутация: нет
Всего: нет



Подскажите, как сделать чтобы не вручную для Image1 загружать картинку?
Должно по моему быть вот так, но почему то не работает:
Код

Image1->Picture->LoadFromFile(OpnDlg->FileName)

хотя так у меня на OpnDlg ругается.
Например у меня картинка называется 'Крот'
подскажите как написать.

PM MAIL   Вверх
xvr
Дата 31.10.2009, 16:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 48
Всего: 223



Цитата(ratgunter @ 31.10.2009,  14:54)
Подскажите, как сделать чтобы не вручную для Image1 загружать картинку?
Должно по моему быть вот так, но почему то не работает:
Код

Image1->Picture->LoadFromFile(OpnDlg->FileName)


Вроде правильно
Цитата

хотя так у меня на OpnDlg ругается.
Видимо OpnDlg отсуствует

PM MAIL   Вверх
ratgunter
Дата 31.10.2009, 17:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 63
Регистрация: 17.11.2008

Репутация: нет
Всего: нет



Еще раз скажу что надо: например у меня есть Image1. Если Image2->Top==80, то надо чтобы Image1 автоматически загрузила картинку например с такого пути C:\Users\Ratgunter\Desktoр

Это сообщение отредактировал(а) ratgunter - 31.10.2009, 18:18
PM MAIL   Вверх
xvr
Дата 1.11.2009, 09:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 48
Всего: 223



Цитата(ratgunter @ 31.10.2009,  17:33)
Еще раз скажу что надо: например у меня есть Image1. Если Image2->Top==80, то надо чтобы Image1 автоматически загрузила картинку например с такого пути C:\Users\Ratgunter\Desktoр

Код

if (Image2->Top==80) Image1->Picture->LoadFromFile("C:\\Users\\Ratgunter\\Desktoр");

PM MAIL   Вверх
ratgunter
Дата 1.11.2009, 12:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 63
Регистрация: 17.11.2008

Репутация: нет
Всего: нет



Выдает такую ошибку:
http://pixs.ru/showimage/1jpg_9070974_337452.jpg
Правильно ли я все делаю?
Код

Image1->Picture->LoadFromFile("C:\\Users\\Ratgunter\\Desktop\\Крот");

Рисунок надо в формате jpeg или bmp?

PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.1361 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.