|
[ На главную ] -- [ Список участников ] -- [ Правила форума ] -- [ Зарегистрироваться ] |
On-line: |
Game Maker Форум / Вопросы и Ответы (Для Начинающих) / Проблема явно со скриптом |
Страницы: 1 |
Автор | Сообщение |
Derty_Edd мастер Группа: Сообщество GM Сообщений: 74 |
Добавлено: 04-02-2007 16:27 |
Проблема такова - все работало:сбиваешь все кирпичи на уровне, скрипт проверил что пусто и дает переход на следующий уровень. Счас, после внесения каких-то изменений все рухнуло: перехода на уровень нет. Проверка идет в контроллере пошагово. примерно так If check_ready() then play_sound; sleep na 2000; GoToNextRoom; Exit this Event; В чем может быть проблема? Вобще в чем может быть проблема при работе со скриптами?... |
|
DaMaGeR-69 гроссмейстер Группа: Сообщество GM Сообщений: 173 |
Добавлено: 04-02-2007 17:10 |
Сложно сказать не видя исходника... Скопируй код из скрипта сюда. Тогда можно будет подумать.
Тем более, что не известно после каких изменений. |
|
Derty_Edd мастер Группа: Сообщество GM Сообщений: 74 |
Добавлено: 04-02-2007 20:00 |
Вот код - но тут врядли что-то не то... { if instance_exists(obj_brick1) return false; if instance_exists(obj_brick2) return false; if instance_exists(obj_brick3) return false; if instance_exists(obj_brick4) return false; if instance_exists(obj_brick5) return false; if instance_exists(obj_bricksuper) return false; if instance_exists(obj_bricksuper2) return false; if instance_exists(obj_solid1) return false; if instance_exists(obj_solid1x3) return false; if instance_exists(obj_lipu4ka) return false; if instance_exists(obj_brickminusspeed) return false; if instance_exists(object24) return false; if instance_exists(object25) return false; if instance_exists(object26) return false; if instance_exists(object27) return false; if instance_exists(object28) return false; if instance_exists(object29) return false; if instance_exists(obj_bricklife) return false; if instance_exists(obj_brickplusball) return false; return true; } |
|
DaMaGeR-69 гроссмейстер Группа: Сообщество GM Сообщений: 173 |
Добавлено: 04-02-2007 20:11 |
Так ты в коде скрипта что-то менял или нет? Если хочешь, вышли мне на damager-69@rambler.ru исходник игры - там проще будет разобраться, я исправлю что нужно и комментарии напишу. |
|
DaMaGeR-69 гроссмейстер Группа: Сообщество GM Сообщений: 173 |
Добавлено: 04-02-2007 20:28 |
Можно сделать проверку иначе: в скрипте не передавать false или true, а просто использовать его, как хранилище кода. Допустим скрипт имеет имя "script" пишем в скрипте: if instance_exists(obj_brick1) or instance_exists(obj_brick2) or instance_exists(obj_brick3) or instance_exists(obj_brick4) or instance_exists(obj_brick5) or instance_exists(obj_bricksuper) or instance_exists(obj_bricksuper2) or instance_exists(obj_solid1) or instance_exists(obj_solid1x3) or instance_exists(obj_lipu4ka) or instance_exists(obj_brickminusspeed) or instance_exists(object24) or instance_exists(object25) or instance_exists(object26) or instance_exists(object27) or instance_exists(object28) or instance_exists(object29) or instance_exists(obj_bricklife) or instance_exists(obj_brickplusball) { //можно вставить, действие, если нужно } else { //вставляем действие перехода на другой уровень } А в шаге вызываешь скрипт по имени: script(); и все. Но можно сделать так, чтобы не проверять так много объектов, чтобы оптимизировать игру. Для этого можно создать "пустой" объект и назначить его родителем к другим объектам, которые ты щас проверяешь в скрипте. Если не будет получаться - присылай исходник на damager-69@rambler.ru Так как там значит другая проблема будет, и решить ее я смогу только с исходником. |
|
Derty_Edd мастер Группа: Сообщество GM Сообщений: 74 |
Добавлено: 04-02-2007 21:26 |
Спаисбо - поработаю | |
CH@$ER Дундук - не беспокоить! Группа: Модераторы Сообщений: 1435 |
Добавлено: 05-02-2007 07:52 |
Хм, а почему бы не использовать instance_number? Кстати, скрипт можно заменить вот таким:
|
|
Derty_Edd мастер Группа: Сообщество GM Сообщений: 74 |
Добавлено: 05-02-2007 16:51 |
Damager - послал тебе программу. Надеюсь дайдет. Посмотри пожалуйста... | |
DG Soft popww Группа: Администраторы Сообщений: 736 |
Добавлено: 05-02-2007 17:06 |
дуратцкий скрипт тисяча проверок создай какуюто глобальную переменную и присвой ей значение равное количеству тех проверяемых на существование объектов в событии уничтожения этих объектов значение той переменной пусть уменьшается на единицу и когда значение ноль - переход в сл. комнату |
|
DaMaGeR-69 гроссмейстер Группа: Сообщество GM Сообщений: 173 |
Добавлено: 05-02-2007 20:44 |
Можно и так, но не вижу большой пользы для его игры У него там кода мало - зато куча объектов drag-n-drop (или как они там называются). У него там об оптимизации речь не идет - только чтоб работало все сделано. А твой вариант тоже применим. Но я уже свой отослал. Можно в нем родительский объект вставить и только его проверять =) |
|
Derty_Edd мастер Группа: Сообщество GM Сообщений: 74 |
Добавлено: 05-02-2007 22:07 |
Спасибо!!!! Все работает!! И весит почему-то меньше... Со следующего проекта срочно перехожу на полный код!!! |
Страницы: 1 |
Game Maker Форум / Вопросы и Ответы (Для Начинающих) / Проблема явно со скриптом |