Пятница, 22 Ноября 2024, 11:22

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 3 из 3
  • «
  • 1
  • 2
  • 3
Помогите с элементарной механикой игры!!!
RenusДата: Понедельник, 13 Сентября 2010, 10:57 | Сообщение # 41
почетный гость
Сейчас нет на сайте
Снова всем привет)
Вот решил с хге поиграться и собственно нарисовался один вопрос, он правда скорее относиться к тонкостям самого С++ чем к движку, но думаю те кто работали с хге поймут о чем я.

Все объекты в моей игре, являются объектами определенного класса и создаются динамически в нужный момент через new. Думаю это у большинства так и всем понятно. В этих классах содержаться такие переменные таких типов как hgeSprite* и hgeRect*, которые сами являются вспомогательными классами хге. Так вот вопрос, как можно и можно ли, задать параметр переменным типа hgeSprite* и hgeRect* прямо из конструктора создаваемого объекта?

Изначально я задавал спрайт через определенную ранее глобальную переменную, таким образом:

Code
player_spr = manager->GetSprite("player_spr");

Но ведь все равно при создании любого игрового объекта, внутренняя переменная sprite, соответствующего класса, берет значение из заранее объявленных и определенных глобальных переменных. Так вот я и подумал, что легче было бы определять сразу локальную переменную класса, без глобальных. Но при попытке это сделать отладчик пишет что не может определить внутренние переменные классов hgeSprite* и hgeRect*, хоть они и заданы в конструкторе...

Подскажите пожалуйста, возможно ли это как то сделать...
А то определять глобально все переменные спрайтов и ректов для коллизий, как то стремно выглядит(((

shnaketДата: Понедельник, 13 Сентября 2010, 16:07 | Сообщение # 42
частый гость
Сейчас нет на сайте
Renus, тебе разделение кода на файлы ещё нужно? Если да, то вот пример простейшей программы, разбитой на части:
1.Создаешь в "Обозреватель решений->заголовочные файлы->file.h":
Code
#include "stdafx.h"

//объявляем функции, классы и т.д.
void My_Func();

2.Создаешь в "Обозреватель решений->файлы исходного кода->file.cpp"
Code
#include "stdafx.h"

//здесь описываем функции, классы и т.д.
void My_Func()
{
  printf("Hello!");
};

2.В главном файле проекта:
Code
#include "stdafx.h"
//включаем свой заголовочный файл
#include "file.h"

int _tmain(int argc, _TCHAR* argv[])
{
  My_Func();
}


RenusДата: Понедельник, 13 Сентября 2010, 16:33 | Сообщение # 43
почетный гость
Сейчас нет на сайте
Да не на файлы уже давно все разбил, там лажа компилятора была, а не кода. но спс...
Мне бы ответ вопрос с хге получить...
  • Страница 3 из 3
  • «
  • 1
  • 2
  • 3
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг