Вторник, 16 Августа 2022, 22:42

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 2 из 2
  • «
  • 1
  • 2
Форум игроделов » Конструкторы игр и лёгкие в освоении системы разработки игр » Game Maker Studio » Элементы интерфейса в гм-приложениях (Сюда буду спрашивать все что касается интерфейса)
Элементы интерфейса в гм-приложениях
NeZnayuДата: Воскресенье, 13 Марта 2011, 16:03 | Сообщение # 21
__танцуй!__
Сейчас нет на сайте
BornInUSSR, ага, при этом переменным file_new, file_open и file_save новые id присваиваются правильно (проверил через дебаг)

CombatForce - 2d TDS долгожданный релиз
Noobster - самый простой конструктор игр в мире
LaLaLaLAMA! - игра не про Ламу
BornInUSSRДата: Воскресенье, 13 Марта 2011, 16:05 | Сообщение # 22
почетный гость
Сейчас нет на сайте
Quote (NeZnayu)
Так, кажется понял.
В create у пункта меню стоит свитч по id.

Когда ты создаешь событие через
variable=instance_create()

сначала выполняется create объекта, и только потом переменной variable присваивается id нового объекта.


Не заметил сообщения. Сейчас посмотрим.

Добавлено (13.03.2011, 16:05)
---------------------------------------------

Quote (BornInUSSR)
сначала выполняется create объекта, и только потом переменной variable присваивается id нового объекта.

А почему в первый раз когда создается обьект не ругается на ошибку? По сути же ничего не меняется.
NeZnayuДата: Воскресенье, 13 Марта 2011, 16:18 | Сообщение # 23
__танцуй!__
Сейчас нет на сайте
BornInUSSR, думаю ..

CombatForce - 2d TDS долгожданный релиз
Noobster - самый простой конструктор игр в мире
LaLaLaLAMA! - игра не про Ламу
BornInUSSRДата: Воскресенье, 13 Марта 2011, 16:18 | Сообщение # 24
почетный гость
Сейчас нет на сайте
Возможно это из-за родительских обьектов?!? Я уже наугад гадаю. Сейчас допью кофе и на гуще начну гадать... sad
NeZnayuДата: Воскресенье, 13 Марта 2011, 16:23 | Сообщение # 25
__танцуй!__
Сейчас нет на сайте
BornInUSSR, пока на ум приходит только решение проблемы - причина все еще точно не ясна.

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


CombatForce - 2d TDS долгожданный релиз
Noobster - самый простой конструктор игр в мире
LaLaLaLAMA! - игра не про Ламу


Сообщение отредактировал NeZnayu - Воскресенье, 13 Марта 2011, 16:24
BornInUSSRДата: Воскресенье, 13 Марта 2011, 17:15 | Сообщение # 26
почетный гость
Сейчас нет на сайте
Сейчас попробую, чем черт не шутит.

Добавлено (13.03.2011, 17:15)
---------------------------------------------
Ничерта у меня не вышло. Немного потыкал наугад и пришел к выводу что скорее всего что-то не в порядке с конструкцией свич.

NeZnayuДата: Воскресенье, 13 Марта 2011, 17:23 | Сообщение # 27
__танцуй!__
Сейчас нет на сайте
Постараюсь сегодня выложить исправленный вариант.

CombatForce - 2d TDS долгожданный релиз
Noobster - самый простой конструктор игр в мире
LaLaLaLAMA! - игра не про Ламу
BornInUSSRДата: Воскресенье, 13 Марта 2011, 18:50 | Сообщение # 28
почетный гость
Сейчас нет на сайте
Практически исправил. Единственная загвоздка теперь это wstring которая никак не хочет принимать значения. Но все равно покопайся, хотелось бы знать на будущее чего нужно избегать.

Добавлено (13.03.2011, 18:42)
---------------------------------------------
Есть какой то способ обозначить любой другой инстанс кроме текущего, для одного и того же обьекта?
Например у меня есть 5 экземпляров обьекта. Мне нужна проверка на конкретное событие, скажем ev_mouse_enter, происходящее в любом другом экземпляре.

Добавлено (13.03.2011, 18:50)
---------------------------------------------
Вопрос снят.

NeZnayuДата: Воскресенье, 13 Марта 2011, 19:41 | Сообщение # 29
__танцуй!__
Сейчас нет на сайте
Quote (BornInUSSR)
wstring

Кстати, чтобы небыло ошибок (т.к. значни должно быть строкой), лучше делать проверку:
if string(wstring)="New" и т.д.

Если вдруг wstring станет числом (ну мало ли) ГМ выдаст ошибку: "cannot compare arguments"


CombatForce - 2d TDS долгожданный релиз
Noobster - самый простой конструктор игр в мире
LaLaLaLAMA! - игра не про Ламу
BornInUSSRДата: Воскресенье, 13 Марта 2011, 19:58 | Сообщение # 30
почетный гость
Сейчас нет на сайте
Да, было дело, вылетала такая ошибка.
Вообще я уже начал задумываться над стандартными функциями. Но у show_menu есть один серьезный недостаток, его нельзя спрятать по требованию... Хотя мне тут пришла одна идея... Может просто нужно симулировать нажатие мыши в какой нибудь точке без обьектов чтобы сбросить меню... Нужно попробовать, но все равно на таком меню нельзя рисовать, что тоже очень плохо.
NeZnayuДата: Воскресенье, 13 Марта 2011, 20:09 | Сообщение # 31
__танцуй!__
Сейчас нет на сайте
Quote (BornInUSSR)
Но у show_menu есть один серьезный недостаток, его нельзя спрятать по требованию...

В смысле?


CombatForce - 2d TDS долгожданный релиз
Noobster - самый простой конструктор игр в мире
LaLaLaLAMA! - игра не про Ламу
BornInUSSRДата: Воскресенье, 13 Марта 2011, 20:14 | Сообщение # 32
почетный гость
Сейчас нет на сайте
В смысле пока ты не нажмешь какую нибудь клавишу мыши меню будет висеть на экране. А мне допустим нужно чтобы оно исчезало когда мышь находится над другим обьектом. Вот такая штука. Хотя все таки эту проблему можно решить всякими уловками, а вот рисование иконок рядом с пунктами меню уже никак не поправишь.
NeZnayuДата: Воскресенье, 13 Марта 2011, 20:17 | Сообщение # 33
__танцуй!__
Сейчас нет на сайте
Quote (BornInUSSR)
В смысле пока ты не нажмешь какую нибудь клавишу мыши меню будет висеть на экране. А мне допустим нужно чтобы оно исчезало когда мышь находится над другим обьектом

Не пробовал:
screen_redraw();
screen_refresh();

? Я точно не помню помогает это или нет.

Quote (BornInUSSR)
а вот рисование иконок рядом с пунктами меню уже никак не поправишь.

Да, тут уже надо "крутиться" :)


CombatForce - 2d TDS долгожданный релиз
Noobster - самый простой конструктор игр в мире
LaLaLaLAMA! - игра не про Ламу
BornInUSSRДата: Воскресенье, 13 Марта 2011, 20:23 | Сообщение # 34
почетный гость
Сейчас нет на сайте
Quote (NeZnayu)
Не пробовал:
screen_redraw();
screen_refresh();
? Я точно не помню помогает это или нет.

Там используются нативные виндоус элементы а не функции рисования. Не помогает ни рефреш ни редрав.
Форум игроделов » Конструкторы игр и лёгкие в освоении системы разработки игр » Game Maker Studio » Элементы интерфейса в гм-приложениях (Сюда буду спрашивать все что касается интерфейса)
  • Страница 2 из 2
  • «
  • 1
  • 2
Поиск:

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