Пятница, 15 Ноября 2024, 18:35

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
Вопрос - Ответ (Game Maker)
KrososДата: Воскресенье, 18 Августа 2013, 05:15 | Сообщение # 4161
постоянный участник
Сейчас нет на сайте
if M_damage=1{
if collision_rectangle(id.x-150,id.y-30,id.x+150,id.y+30,global.AttackPoint,0,1) and global.Sunit.FireLevel>=7
or collision_rectangle(id.x-30,id.y-150,id.x+30,id.y+150,global.AttackPoint,0,1) and global.Sunit.FireLevel>=7
or collision_rectangle(id.x-85,id.y-85,id.x++85,id.y+85,global.AttackPoint,0,1) and global.Sunit.FireLevel>=7
or collision_rectangle(id.x-64,id.y-16,id.x+64,id.y+16,global.AttackPoint,0,1) and global.Sunit.FireLevel>3
or collision_rectangle(id.x-16,id.y-64,id.x+16,id.y+64,global.AttackPoint,0,1) and global.Sunit.FireLevel>3
or collision_rectangle(id.x-16,id.y-16,id.x+16,id.y+16,global.AttackPoint,0,1) and global.Sunit.FireLevel<=3
{
/////Коды/////
M_damage=0
}else{M_damage=0}}


В общем , проблему вызывает красная строка...ну ,думаю , понятно почему.
Что тут можно сделать так ,чтобы срабатывали все случаи?

Добавлено (18.08.2013, 05:15)
---------------------------------------------
опять туплю....
or collision_rectangle(id.x-16,id.y-16,id.x+16,id.y+16,global.AttackPoint,0,1) and global.Sunit.FireLevel>0 bag
Блин , я там столько перепробовал , а тут такая простотища... facepalm





Мой проект


Сообщение отредактировал Krosos - Воскресенье, 18 Августа 2013, 05:16
Dmi7ryДата: Воскресенье, 18 Августа 2013, 09:37 | Сообщение # 4162
почетный гость
Сейчас нет на сайте
Цитата (GameMix)
beril, для Draw нужно будет просто увеличить кол-во шагов для таймера, т.к. Draw быстрее, чем Step.

Draw быстрее, чем Step? Поясните.
GameMixДата: Воскресенье, 18 Августа 2013, 11:05 | Сообщение # 4163
старожил
Сейчас нет на сайте
Dmi7ry, событие Draw предназначено для рисования, поэтому требует более частого выполнения, чем Step. Поэтому, если не хватает частоты выполнения действий в Step, то можно использовать Draw. Если рисовать ничего не требуется, то можно воспользоваться и End Step. Вот только я не знаю, что быстрее End Step или Draw.

Steel Standoff - 2D аркада.
Мои статьи
Dmi7ryДата: Воскресенье, 18 Августа 2013, 11:21 | Сообщение # 4164
почетный гость
Сейчас нет на сайте
Цитата (Dmi7ry)
Dmi7ry, событие Draw предназначено для рисования, поэтому требует более частого выполнения, чем Step. Поэтому, если не хватает частоты выполнения действий в Step, то можно использовать Draw. Если рисовать ничего не требуется, то можно воспользоваться и End Step. Вот только я не знаю, что быстрее End Step или Draw.

Это не так. События определяют исключительно порядок исполнения, а не время, затрачиваемое на код.
KrososДата: Воскресенье, 18 Августа 2013, 11:23 | Сообщение # 4165
постоянный участник
Сейчас нет на сайте
Драв - рисует , степ - не рисует - вот и вся разница.




Мой проект
Dmi7ryДата: Воскресенье, 18 Августа 2013, 11:36 | Сообщение # 4166
почетный гость
Сейчас нет на сайте
Цитата (Krosos)
Драв - рисует , степ - не рисует - вот и вся разница.

Это также не верно. Рисовать можно в любом событии. Для Студии есть особенность, что рисовать в других событиях получится только на сюрфейсе, а в GM - хоть на экране, хоть на сюрфейсе.
GameMixДата: Воскресенье, 18 Августа 2013, 14:38 | Сообщение # 4167
старожил
Сейчас нет на сайте
Dmi7ry, я не пойму, ты мне задал вопрос, чтобы выпендриться?

Steel Standoff - 2D аркада.
Мои статьи
KrososДата: Воскресенье, 18 Августа 2013, 15:26 | Сообщение # 4168
постоянный участник
Сейчас нет на сайте
Dmi7ry, нет , в step события рисования не действуют.




Мой проект
t111Дата: Воскресенье, 18 Августа 2013, 16:20 | Сообщение # 4169
почетный гость
Сейчас нет на сайте
подскажите пожалуйста, где скачать про версию game maker 8 крякнутую (взломанную), возможно такое? Хорошо, откуда вы скачали свою полную game maker или вы покупали? Неужели все пользуются lite версией?!

как известно, встречают по
одежке, а провожают
uninstall'ом"

KrososДата: Воскресенье, 18 Августа 2013, 16:21 | Сообщение # 4170
постоянный участник
Сейчас нет на сайте
t111, у гугла спроси , там таких дохрена.




Мой проект
Dmi7ryДата: Воскресенье, 18 Августа 2013, 16:29 | Сообщение # 4171
почетный гость
Сейчас нет на сайте
Цитата (GameMix)
Dmi7ry, я не пойму, ты мне задал вопрос, чтобы выпендриться?

Я задал вопрос чтобы выяснить - либо я что-то не знаю, либо вы ошибаетесь. А если вы ошибаетесь, значит вводите в заблуждение других читателей. И ваша фамильярность абсолютно не уместна.

Цитата (Krosos)
Dmi7ry, нет , в step события рисования не действуют.

вот пример с рисованием в step. Так можно рисовать в абсолютно любом событии.
last2424Дата: Понедельник, 19 Августа 2013, 11:58 | Сообщение # 4172
30 мл. блоков
Сейчас нет на сайте
Значит такой вопрос у меня есть инвентарь, но он не идёт за персонажем сразу скажу x=view_xview
y=view_yview не предлагать, ячейки инвентаря стают в одну точку.


Предупреждение: всё что я написал в зачёркнутом виде является шуткой и никак не пытает обидеть того к кому обращаются.(нет)
Dmi7ryДата: Понедельник, 19 Августа 2013, 12:08 | Сообщение # 4173
почетный гость
Сейчас нет на сайте
Цитата (last2424)
Значит такой вопрос у меня есть инвентарь, но он не идёт за персонажем сразу скажу x=view_xview y=view_yview не предлагать, ячейки инвентаря стают в одну точку.

А других вариантов и нет.
Просто каждой ячейке нужно задавать своё смещение (зависит от того, как сделан инвентарь).
По идее, в каждой ячейке должно быть своё смещение
Код
x=view_xview[0]+100
y=view_yview[0]+10


у другой
Код
x=view_xview[0]+132
y=view_yview[0]+10


у третьей
Код
x=view_xview[0]+164
y=view_yview[0]+10


и так далее
AnthemДата: Понедельник, 19 Августа 2013, 17:19 | Сообщение # 4174
Д'Артаньян
Сейчас нет на сайте
Dmi7ry, а не знаете, почему в справке написано, что "действия рисования имеют смысл только в событии рисования, во всех других событиях они игнорируются"?

Текстовый контент для вашей игры (бесплатно)
Сценарист, геймдизайнер для Вашей игры
CreatingOverДата: Понедельник, 19 Августа 2013, 17:40 | Сообщение # 4175
ColdGamedev
Сейчас нет на сайте
Anthem, они не игнорируются. Просто прорисовываются только 1 раз. И уходят. А в драве просто все время рисуются.

Я снова с вами:з
Возвращение легенды. (нет)
Dmi7ryДата: Понедельник, 19 Августа 2013, 18:55 | Сообщение # 4176
почетный гость
Сейчас нет на сайте
Цитата (Anthem)
Dmi7ry, а не знаете, почему в справке написано, что "действия рисования имеют смысл только в событии рисования, во всех других событиях они игнорируются"?

Потому что после события End Step буфер, в который всё рисуется, очищается. То есть всё, что вы рисовали до события draw просто-напросто сотрётся.
Но если делать самостоятельную прорисовку, то иногда это может быть весьма полезно. например, можно одно из событий отдать под отрисовку интерфейса, чтобы он рисовался всегда сверху (то есть подобным образом можно отрисовывать группы объектов "слоями", не заморачиваясь с глубиной объектов - иногда это очень удобно). Также часто я использовал рисование в других событиях для отладки. Например, во время просчёта пути, отрисовываю в обрабатываемых координатах окружность, а после делаю screen_refresh() и keyboard_wait() - таким образом я отслеживаю каждое действие, которое выполняется.
AnthemДата: Вторник, 20 Августа 2013, 21:17 | Сообщение # 4177
Д'Артаньян
Сейчас нет на сайте
Как лучше нейтрализовать mp_potential_step? Т.к. если объект движется к объекту, движение может продолжаться бесконечно

Текстовый контент для вашей игры (бесплатно)
Сценарист, геймдизайнер для Вашей игры
GameMixДата: Вторник, 20 Августа 2013, 21:24 | Сообщение # 4178
старожил
Сейчас нет на сайте
Anthem, объясни подробнее. Пока могу только предложить speed = 0. Если нужно двигаться не всегда, а только в определенной ситуации, то используй логическую переменную:
Код
if (move) mp_potential_step();


Steel Standoff - 2D аркада.
Мои статьи
AnthemДата: Вторник, 20 Августа 2013, 21:31 | Сообщение # 4179
Д'Артаньян
Сейчас нет на сайте
Ну скажем, есть нпс и куст. Когда нпс голоден он должен идти к кусту, и по логике, останавливаться возле него, но эта функция, насколько я понимаю, остановки не предусматривает, поэтому нпс начинает хаотично двигаться по координатам куста, ну как бы блуждает в нем)

Текстовый контент для вашей игры (бесплатно)
Сценарист, геймдизайнер для Вашей игры
Dmi7ryДата: Вторник, 20 Августа 2013, 21:52 | Сообщение # 4180
почетный гость
Сейчас нет на сайте
можно, например, использовать проверку расстояния и делать шаг только если дальше определённого расстояния
Код
if distance_to_object(obj)<32
     mp_potential_step
Поиск:

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