Воскресенье, 01 Декабря 2024, 15:22

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 2 из 3
  • «
  • 1
  • 2
  • 3
  • »
Результаты поиска
valekoДата: Вторник, 23 Августа 2011, 00:33 | Сообщение # 21 | Тема: 2D NoteWar
частый гость
Сейчас нет на сайте
Quote (Demeron)
Выложи демку, хочу глянуть.


Как только разберусь с тем, почему не получается башни расставлять - сразу выложу.

Добавлено (23.08.2011, 00:33)
---------------------------------------------
Добавил демку.


2D NoteWar
valekoДата: Вторник, 23 Августа 2011, 00:15 | Сообщение # 22 | Тема: Вопрос - Ответ (Game Maker)
частый гость
Сейчас нет на сайте
А мне кто-нибудь поможет??? sad :( sad

2D NoteWar
valekoДата: Понедельник, 22 Августа 2011, 00:53 | Сообщение # 23 | Тема: 2D NoteWar
частый гость
Сейчас нет на сайте
Quote (server-doom3)
Раскажите больше. Жанр, цель, возможности...


Рассказал.


2D NoteWar
valekoДата: Понедельник, 22 Августа 2011, 00:16 | Сообщение # 24 | Тема: 2D NoteWar
частый гость
Сейчас нет на сайте
Скачать демо 0.26. (4 мега)

Для какого жанра игра: Тower defence
На каком движке/конструкторе: Game Maker
В каком пространстве: 2D
Какой вид в игре: Сверху
Какие есть похожие игры: Очень много
Сроки разработки: с 1 августа по 11 октября
Состав имеющейся команды: Сам

Краткое описание:

Вы директор научно-исследовательской деревни, занимающейся спецпроектами оборонной промышленности. Землю, понятное дело, захватили злобные пришельцы. Все военные базы и крупные города разрушены, любое сопротивление подавлено. Ваша деревня расположена в такой глуши, что о событиях в мире никто не знает.

По необъяснимому стечению обстоятельств ваша деревня не уничтожена, и более того, ученые как раз закончили разработку турели нового поколения и даже выпустили один опытный образец. И даже ухитрились не сломать его по дороге на полигон.

Вот тут-то пришельцы вас и заметили. И как оказалось, турель не такая уж и плохая, а детали остающиеся от врага, вдохновляют ваших ученых на новые изобретения.

Особенности

* "Рисованый" интерфейс
* 10 различных карт, с разными уровнями сложности
* 5 видов башен
* Возможность обновить башни до 15 уровня
* Дополнительные возможности башен
* Разнообразие врагов (наземные, воздушные, босы)
* Изменение пути врага в процессе игры

Скриншот:



Некоторые подробности:



Прогресс создания:



Проблемы:



Новые идеи:



2D NoteWar

Сообщение отредактировал valeko - Понедельник, 12 Сентября 2011, 18:45
valekoДата: Воскресенье, 21 Августа 2011, 23:40 | Сообщение # 25 | Тема: Вопрос - Ответ (Game Maker)
частый гость
Сейчас нет на сайте
Добрый день всем. Помогите, мы не местные. Сам файл - http://zalil.ru/31587936

Проблема в следующем: есть объект Inventar, который создает объект Osnovanie.

Osnovanie проверяет, свободна ли клетка, и, если она свобода - рисует фиолетовую окружность. Иначе красную.

По какой-то причине, все события, связанные с объектом основание выполняются только в пределах объекта Инвентарь.

Что я не так делаю?


2D NoteWar

Сообщение отредактировал valeko - Понедельник, 22 Августа 2011, 01:38
valekoДата: Среда, 17 Августа 2011, 21:55 | Сообщение # 26 | Тема: Вопрос - Ответ (Game Maker)
частый гость
Сейчас нет на сайте
В кратце суть проблемы: при расстановке башен мышью они игнорируют столкновения с объектами.

Теперь подробнее.
Upor – невидимый объект, которым я маркирую занятые области.
Inventar – окно инвентаря. В зависимости от индекса меняется тип башни, которую оно создает. По клику создает объект Osnovanie.
Osnovanie – промежуточный объект, который привязан к курсору мыши для расстановки башен. Он проверяет свободные области.

Для проверки я пока написал, чтобы Osnovanie рисовал фиолетовую окружность, когда нет столкновения и красную, когда есть. В итоге он всегда рисует красную. Я даже понял почему: несмотря на то, что проверка столкновения стоит в объекте Osnovanie, проверяется почему-то столкновение объекта Inventar. Т.е. как только я убираю Upor из-под инвентаря – круг становится фиолетовым.

Как это победить – не представляю.

Спасибо.


2D NoteWar

Сообщение отредактировал valeko - Четверг, 18 Августа 2011, 12:50
valekoДата: Понедельник, 15 Августа 2011, 14:37 | Сообщение # 27 | Тема: Вопрос - Ответ (Game Maker)
частый гость
Сейчас нет на сайте
Quote (Лер_да_Рим)
valeko, вообще-то это женщина.


Теперь уже вижу. smile


2D NoteWar
valekoДата: Понедельник, 15 Августа 2011, 09:59 | Сообщение # 28 | Тема: Вопрос - Ответ (Game Maker)
частый гость
Сейчас нет на сайте
Quote (аТнОтХоАн)
Не index, а object_index - индекс объекта.


Ну или bonus_index - это же всего лишь переменная, которая бонусу при создании присваивается.

А адресовано Уайльду


2D NoteWar
valekoДата: Понедельник, 15 Августа 2011, 02:48 | Сообщение # 29 | Тема: Вопрос - Ответ (Game Maker)
частый гость
Сейчас нет на сайте
Уайльд, аТнОтХоАн правильно про скорость написал:
Quote (аТнОтХоАн)
speed = 8; alarm[0] = room_speed*кол-во_секунд действия бонуса;


Но, чтобы сделать механизм универсальным, ты все равно должен продумать, какие бонусы у тебя будут. smile

Объект бонус можно сделать 1. Отличаться между собой бонусы будут индексом.

1. Скорость
2. Сила
3. Размер
..
9. Невидимость и т.д.

Рисуем все бонусы в 1 анимированый гиф и выводим спрайт бонуса так:

draw_sprite_ext(bonus,index,x,y,1,1,image_angle,c_white,1) // бонус - название спрайта, индекс - номер кадра в спрайте.

Предположим, что параметры этих бонусов заранее не известны, изменяются случайным образом. Тогда нужно их как-то получать из самого бонуса при столкновении.

В итоге код в событии Collision персонажа (а не бонуса!) будет следующим:

switch (other.index) // проверяем переменную индекс другого объекта, участвующего в столкновении
{
case 1: // скорость
old_speed=speed; speed=other.new_speed; alarm[1]=other.time; break;
// запоминаем текущую скорость, присваиваем нашему персонажу новую скорость

case 2: // сила
old_power=power; power=other.new_power; alarm[2]=other.time; break;
// запоминаем текущую силу, присваиваем нашему персонажу новую силу

..

case 9: // невидимость
invisibility=true; alarm[9]=other.time; break;
// включаем невидимость

}


А в соответствующих Alarm восстанавливаешь значения, бывшие до бонуса

Alarm[1]:
speed=old_speed;


Правда, здесь я не продумал действие 2 одинаковых бонусов взятых подряд. Есть несколько вариантов - самый простой и логичной, завести еще флаги по типу: если такой бонус взят, то пока его не брать, а алярме флаг убирать при восстановлении параметра.

Надеюсь, понятно объяснил.


2D NoteWar

Сообщение отредактировал valeko - Понедельник, 15 Августа 2011, 02:48
valekoДата: Воскресенье, 14 Августа 2011, 20:33 | Сообщение # 30 | Тема: Вопрос - Ответ (Game Maker)
частый гость
Сейчас нет на сайте
Я так понял, что вопрос не в том, как на какое-то время изменить переменную smile

Скорее всего его интересует универсальных механизм бонусов, о которых ты заранее не знаешь, что он в себе содержит.

Типа ситуации: взял ускорение, когда оно почти закончилось, взял еще одно ускорение - время ускорения продлилось, а потом взял еще и невидимость - ускорение закончилось, а невидимость все еще есть.


2D NoteWar
valekoДата: Суббота, 13 Августа 2011, 18:18 | Сообщение # 31 | Тема: Вопрос - Ответ (Game Maker)
частый гость
Сейчас нет на сайте
Как получить реальную скорость объекта, движущегося по пути, учитывая, что при создании пути в некоторых точках коэффициент скорости не равен 100%.

Спасибо.

UPD: Спасибо всем, не успевшим ответить, я уже сам разобрался smile

path_get_speed(path_index,path_position)*path_speed

// коэффициент скорости пути с текущим индексом в текущей позиции * скорость объекта на пути


2D NoteWar

Сообщение отредактировал valeko - Суббота, 13 Августа 2011, 19:29
valekoДата: Пятница, 12 Августа 2011, 00:44 | Сообщение # 32 | Тема: Вопрос - Ответ (Game Maker)
частый гость
Сейчас нет на сайте
О, спасибо уважаемые, все заработало.

2D NoteWar
valekoДата: Четверг, 11 Августа 2011, 13:07 | Сообщение # 33 | Тема: Вопрос - Ответ (Game Maker)
частый гость
Сейчас нет на сайте
Вопрос:

Если пуля вылетела из башни дальше определенной длины - она уничтожается. Изначально измерял расстояние до ближайшей башни.
if (distance_to_object(instance_nearest(x,y,turel)) > dlina_poleta ) instance_destroy()

Но с увеличением мощности башни это уже не срабатывает, т.к. пуля успевает пролететь до другой башни и та становится ближайшей.

При создании пули я сохраняю ID башни, которая ее создала:
id_puli=instance_create(x,y,pulia)
id_puli.id_tureli=id


Как мне изменить код, чтобы мерять длину до нужной мне башни?

Спасибо.


2D NoteWar

Сообщение отредактировал valeko - Четверг, 11 Августа 2011, 13:07
valekoДата: Четверг, 11 Августа 2011, 11:38 | Сообщение # 34 | Тема: Вопрос - Ответ (Game Maker)
частый гость
Сейчас нет на сайте
Quote (LunarPixel)
alarm - это таймер. Т.е. он служит, чтобы какое либо действие выполнялось через определенное время.


Подожди... Если я правильно понял, то alarm - это не задержка (ну, типа delay). Т.е. я его инициирую в любой части кода, и через нужное мне время выполнится то, что прописано в самом alarm?
Вот же блин... А то я все думаю, чего мне им так пользоваться неудобно smile


2D NoteWar
valekoДата: Четверг, 11 Августа 2011, 10:49 | Сообщение # 35 | Тема: Вопрос - Ответ (Game Maker)
частый гость
Сейчас нет на сайте
Очень простой вопрос.

Не могу разобраться толком с алармом.

1. Он задерживает весь объект или только то событие в котором размещен?
2. Зачем их так много.
3. Можно ли используя аларм сделать такую задержку, чтобы объект не стрелял, но перемещение врага отслеживал.


2D NoteWar
valekoДата: Вторник, 09 Августа 2011, 15:24 | Сообщение # 36 | Тема: Вопрос - Ответ (Game Maker)
частый гость
Сейчас нет на сайте
Quote (LunarPixel)
разобрался с вопросом по уничтожению определенного количества объектов


LunarPixel, если честно, то пока на другие задачи переключился, чтобы не простаивать зря smile Скоро тебе новую версию вышлю посмотреть smile


2D NoteWar
valekoДата: Вторник, 09 Августа 2011, 10:39 | Сообщение # 37 | Тема: Вопрос - Ответ (Game Maker)
частый гость
Сейчас нет на сайте
Quote (LunarPixel)
Все объекты, у которых этот родитель указан, будут уничтожены.


Спасибо, твои объяснения, как всегда, не требуют уточнений.


2D NoteWar
valekoДата: Вторник, 09 Августа 2011, 01:04 | Сообщение # 38 | Тема: Вопрос - Ответ (Game Maker)
частый гость
Сейчас нет на сайте
Quote (SalahAdDin)

К дочерним обьектам можно обращаться через обьект родитель или же как ко всем другим обьектам через айди. Что конкретно не понятно


1. Не понятно, как создать дочерний объект. Например, у меня есть враг. Ездящий. Как на его основе создать врага летящего?
2. Как башня, которая стреляет только по летающим, будет их отличать?


2D NoteWar
valekoДата: Понедельник, 08 Августа 2011, 23:50 | Сообщение # 39 | Тема: Вопрос - Ответ (Game Maker)
частый гость
Сейчас нет на сайте
Не, не получится. И с уничтожением я тоже ошибся. Думал использовать position_destroy(x,y), но он проверяет конкретную точку, а мне нужно на дистанции поражения, т.е. все объекты, попадающие в окружность. Не могу продумать, как это организовать.

1. Есть башня, которая стреляет по всему, что попадает в зону ее поражения.
2. Поражать она может, например 5 объектов.
3. При поражении переменная, отвечающая за жизнь врага уменьшается на определенную величину.
4. Шестой объект не поражается.
5. Башня перезаряжается определенное время.

Как сделать, чтобы враг, попавший между 2 такими башнями, получал поражение от каждой из них соответствующее уровню развития башни.

Добавлено (08.08.2011, 23:50)
---------------------------------------------
И еще с наследованием не понятно.

Если есть объект, как на его основе создать потомка и как к ним потом обращаться?


2D NoteWar
valekoДата: Понедельник, 08 Августа 2011, 15:59 | Сообщение # 40 | Тема: Вопрос - Ответ (Game Maker)
частый гость
Сейчас нет на сайте
Как организовать одновременное уменьшение жизни у определенного количества врагов в зоне достижимости объекта? Как убить всех в определенно радиусе - разобрался, а как уменьшить переменную отвечающую за жизнь у определенного количества врагов не могу придумать.

2D NoteWar
  • Страница 2 из 3
  • «
  • 1
  • 2
  • 3
  • »
Поиск:

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