|
Опубликовано 13.01.2009 06:45 (16 лет назад) # |
можно с помощью щаблонов такое сотворить
class A
{
}
class B
{
}
template <class T>
T* CreateMyClass()
{
return new T;
}
{
A* obj = CreateMyClass<A>();
B* obj = CreateMyClass<B>();
}
код не проверял, скорее всего не работает, но идея думаю понятна :)
редакция от Silver Ogre, 13.01.2009 07:08 |
|
|
|
Опубликовано 13.01.2009 07:11 (16 лет назад) # |
Шаблоны это чит, так не честно (: Без них можно сделать? |
|
|
|
Опубликовано 13.01.2009 07:15 (16 лет назад) # |
я не мастер cpp, но думаю нет, разве что можно применить другой чит - макросы :) |
|
|
Инженер‑космогоник
|
Опубликовано 13.01.2009 07:57 (16 лет назад) # |
2 Division
круче человека - это сильно сказано. Нет. просто он едет идеально (щас как раз разброс делаю) по маршруту, с максимальной скоростью (тока на поворотах она чуть падает). Если ты не срезаешь, то у тебя не получается так-же хорошо входить в повороты, как у него. А так как у меня пока препятствий нет, карта - открытое поле с нарисованной на ней трассой, то срезать ты можешь до бесконечности :)
А вообще мне еще делать и делать.
Вот сейчас (в смысле вчера вечером, сейчас я на работе) я делаю столкновения - машинки как 2 связанные окружности уже сделал, осталось сделать то, как изменяется вектор движения при ударе о препятствие(линию) |
|
|
|
Опубликовано 13.01.2009 08:13 (16 лет назад) # |
Mefistofel
Это странно) Ты разброс делаешь, а я вот думаю как ИИ в минимальный радиус научить входить)
UPD: хотя наверно всё дело в вейпоинтах. У меня они точно посередине дороги. Я бы сказал даже что сама дорога формируется исходя из вейпоинтов.
редакция от Division, 13.01.2009 08:15 |
|
|
Инженер‑космогоник
|
Опубликовано 13.01.2009 09:39 (16 лет назад) # |
да, из-за этого
я смотрел прошлый конкурс Race или както так, там вейпонты и дорога вместе делается, я тоже сначала хотел так сделать, но потом решил - где маршрут, там и дорога. сам размечу где дорога будет пустыней, а где - чем-то другим(и соответственно изменятся свойства проходимости) |
|
|
|
Опубликовано 13.01.2009 11:39 (16 лет назад) # |
ViZgl
А ты в своем редакторе в Drive(Lektor) дорогу, делал через сплайны? да.
Division
Вот код на Delphi: можно кручё. :) точнее ущё удобнее. Типа -> перегружаешь Create у потомков предка c виртуальным Create; формируешь массив из типов классов потомков. А потом можно смело пробежаться по этому массиву циклом и создать туеву хучу разных экземпляров разных классов. Так сделано в игре на DelphiX(Samples\Sprite\Basic). Зачётно сделано, я когда первый раз увидел, потом 2 недели в исходниках этой игры ковырялся не мог понять чё за уличная магия, но всё рано как-то дошёл сам.
редакция от Adler, 13.01.2009 11:43 |
|
|
|
Опубликовано 13.01.2009 11:43 (16 лет назад) # |
Adler
Можешь набросать как это может выглядеть? Не совсем понял, а DelphiX искать лень (: |
|
|
|
Опубликовано 13.01.2009 15:06 (16 лет назад) # |
Упс... не Basic, а Shoot игра называется :).
Division
ну вот так выглядит массив.
const EnemyAdventTable: array[0..27] of TEnemyAdvent = (
(f: 100; c: TEnemyUFO; x: 0; y: 0),
(f: 400; c: TEnemyAttacker; x: 0; y: 100),
(f: 600; c: TEnemyBoss; x: 0; y: 200)
... А вот примерно так, всё это дело создаётся.
with EnemyAdventTable[FEnemyAdventPos] do
begin
Enemy := c.Create(SpriteEngine.Engine);
Enemy.x := 640+x;
Enemy.y := y;
end; |
|
|
|
Опубликовано 13.01.2009 15:40 (16 лет назад) # |
Спасибо, понял что ты имел в виду) |
|
|
Инженер‑космогоник
|
Опубликовано 15.01.2009 13:43 (16 лет назад) # |
так что, будет +5 дней? |
|
|
Администратор
|
Опубликовано 15.01.2009 16:57 (16 лет назад) # |
Да, конкурс продлю. Про 5 дней я ничего не говорил. Делайте, не расслабляйтесь. |
|
|
|
Опубликовано 16.01.2009 10:09 (16 лет назад) # |
Блин а у меня из-за работы почти не удается найти времени на игру ( Чем больше продлят, тем лучше ))) Я тогда хоть успею сделать :) |
|
|
|
Опубликовано 16.01.2009 11:41 (16 лет назад) # |
DRON
Аналогично. Дык у меня кроме работы ещё и тренировки (: Продлить бы подольше... |
|
|
|
Опубликовано 16.01.2009 17:28 (16 лет назад) # |
судя по правилам гонки делать необязательно, насколько я понял |
|
|
|
Опубликовано 16.01.2009 17:56 (16 лет назад) # |
Ну да, там кажется гонки вообще не упоминаются
редакция от Division, 16.01.2009 17:56 |
|
|
|
Опубликовано 18.01.2009 15:36 (16 лет назад) # |
Народ, как успехи? (:
Я вроде прикрутил систему частиц. Её придётся переписать в дальнейшем, но для гоночек покатит)
Ещё я научился на коньках разворачиваться и ехать спиной вперёд. Раньше на ходу не мог развернуться)
редакция от Division, 18.01.2009 15:49 |
|
|
Администратор
|
Опубликовано 18.01.2009 19:18 (16 лет назад) # |
Division, очень красиво |
|
|
|
Опубликовано 18.01.2009 22:03 (16 лет назад) # |
grouzdev
Спасибо за столь щедрое продление конкурса (: |
|
|
|
Опубликовано 18.01.2009 22:53 (16 лет назад) # |
Division
Ого!(скрин) Круто.
Наконец-то сделал столкновения из не выпуклыми многоугольниками, вроде работает нормально ;)
Теперь нужно довести до ума редактор, и делать карты, и походу добавлять какие-нибудь еффекты(частицами):)
Боты как были тупыми, так ими и остались(пока):(
P.S. началась учёба так-что времени стало меньше :(
редакция от ViZgl, 18.01.2009 22:55 |
|
|