Помощь в GML
|
|
zhenOK | Дата: Суббота, 09 Июля 2011, 15:11 | Сообщение # 1 |
частый гость
Сейчас нет на сайте
| Создаю игру где нужно будет собирать предметы и при их сборе игроку будут прибавляться очки. Как сделать так, что бы при например: накоплении 1000 очков переходило в следующую комнату.
хех
|
|
| |
миха | Дата: Суббота, 09 Июля 2011, 15:16 | Сообщение # 2 |
почти ветеран
Сейчас нет на сайте
| if (score>1000) room_goto(следующая комната) Как то так. Ели не получиться сделаю исх, а вообще если что в ЛС пиши с вопросами
|
|
| |
GameMix | Дата: Суббота, 09 Июля 2011, 15:25 | Сообщение # 3 |
старожил
Сейчас нет на сайте
| миха, Quote (zhenOK) накоплении 1000 очков У тебя неправильно. Так будет правильно: Code if score >=1000 room_goto_next()
Steel Standoff - 2D аркада. Мои статьи
|
|
| |
миха | Дата: Суббота, 09 Июля 2011, 15:31 | Сообщение # 4 |
почти ветеран
Сейчас нет на сайте
| скобки зря поставил... почему next? По моему лучше название комнаты ввести.
Quote if score >=1000 room_goto(следующая комната) Идеал.
|
|
| |
GameMix | Дата: Суббота, 09 Июля 2011, 15:43 | Сообщение # 5 |
старожил
Сейчас нет на сайте
| миха, если комнаты стоят по порядку, то лучше использовать room_goto_next().
Steel Standoff - 2D аркада. Мои статьи
|
|
| |
Лер_да_Рим | Дата: Суббота, 09 Июля 2011, 16:22 | Сообщение # 6 |
заслуженный участник
Сейчас нет на сайте
| А если НЕ по порядку? Нужно учитывать любые капризы спросившего. Лично я особой разницы не вижу и всегда использую room_goto, так как в один прекрасный день я забуду о room_goto_next где бы то ни было и поменяю комнаты местами.
Дамы и господа, я представляю вам человека, которому н-а-с-р-а-т-ь! (с) Доктор Кокс.
|
|
| |
миха | Дата: Суббота, 09 Июля 2011, 16:28 | Сообщение # 7 |
почти ветеран
Сейчас нет на сайте
| Лер_да_Рим, я про то же.
|
|
| |
zhenOK | Дата: Суббота, 09 Июля 2011, 23:54 | Сообщение # 8 |
частый гость
Сейчас нет на сайте
| У меня не работают никакие варианты (скорее всего я что-то делаю не правильно). Поставил что бы при получении 150 очков переходило на следующий уровень но набралась уже за 150 а перехода не было. Ещё я делал так: Создал обьект без спрайта добавил событие Create и туда поместил скрипт а потом в комнату вставил. Ещё у меня в игре есть таймер по истечении которого игра начинается заново(может в этом проблема?)
хех
|
|
| |
URGINSAN | Дата: Суббота, 09 Июля 2011, 23:59 | Сообщение # 9 |
почти ветеран
Сейчас нет на сайте
| Надо было этот скрипт не в Create писать, а в Step.
Я на драйве
|
|
| |
Лер_да_Рим | Дата: Воскресенье, 10 Июля 2011, 07:36 | Сообщение # 10 |
заслуженный участник
Сейчас нет на сайте
| Именно. Событие Create (англ. создание) выполняется лишь один раз при создании экземпляра. То есть в самом начале компьютер проверяет, очков меньше, а больше он это и не трогает. Такую проверку помещаем в событие Step (англ. шаг), которое, исходя из названия, выполняется каждый шаг (за количество шагов в секунду отвечает параметр room_speed, изначально 30 в секунду). Каждый шаг проверяется количество очков...
Дамы и господа, я представляю вам человека, которому н-а-с-р-а-т-ь! (с) Доктор Кокс.
|
|
| |
миха | Дата: Воскресенье, 10 Июля 2011, 09:08 | Сообщение # 11 |
почти ветеран
Сейчас нет на сайте
| Да. То есть тебе надо создать объект без спрайта (старый удалить). И в Step ему вставить вот этот код: Quote if score >=1000 room_goto(следующая комната) Там где "следующая комната" введи название комнаты, в которую ты хочешь перейти.
|
|
| |
Лер_да_Рим | Дата: Воскресенье, 10 Июля 2011, 11:05 | Сообщение # 12 |
заслуженный участник
Сейчас нет на сайте
| зачем новый объект? персонажу вставить не вариант?)
Дамы и господа, я представляю вам человека, которому н-а-с-р-а-т-ь! (с) Доктор Кокс.
Сообщение отредактировал Лер_да_Рим - Воскресенье, 10 Июля 2011, 11:05 |
|
| |
zhenOK | Дата: Воскресенье, 10 Июля 2011, 11:13 | Сообщение # 13 |
частый гость
Сейчас нет на сайте
| спасибо всем всё работает
хех
|
|
| |
миха | Дата: Воскресенье, 10 Июля 2011, 12:25 | Сообщение # 14 |
почти ветеран
Сейчас нет на сайте
| Лер_да_Рим, можно и так)))
|
|
| |