Пятница, 29 Марта 2024, 14:49

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Конструкторы игр и лёгкие в освоении системы разработки игр » Game Maker » Непонятная ошибка (Всё написано верно, а ошибку выдаёт всеровно)
Непонятная ошибка
Quad69Дата: Понедельник, 31 Марта 2014, 22:20 | Сообщение # 1
заслуженный участник
Сейчас нет на сайте
Всем привет!
Сейчас делал свой проект и у меня выскакивают какие-то глупые ошибки.
При запуске игры выпадают такие ошибки:

Хотя все они указаны.
Вот код Create
Stas1999Дата: Понедельник, 31 Марта 2014, 22:34 | Сообщение # 2
был не раз
Сейчас нет на сайте
Оно пишет что неизвесная переменная mouserot.А где она у тебя?
Quad69Дата: Понедельник, 31 Марта 2014, 22:38 | Сообщение # 3
заслуженный участник
Сейчас нет на сайте
Объект obj_inventory
Kod Create:
globalvar mouserot;
mouserot=0

Добавлено (31.03.2014, 22:38)
---------------------------------------------
Он имеется в при старте комнаты

Stas1999Дата: Понедельник, 31 Марта 2014, 22:40 | Сообщение # 4
был не раз
Сейчас нет на сайте
Понятно.Эта переменная объявлена в одном объекте,а используешь ты её в другом.Для этого нужно сделать переменную глобальной.Для этого поставь перед mouserot global.
Будет выглядеть так:
global.mouserot=0
Quad69Дата: Понедельник, 31 Марта 2014, 22:41 | Сообщение # 5
заслуженный участник
Сейчас нет на сайте
Да, но она итак глобальная.
Код
globalvar mouserot;  
mouserot=0

globalvar <1>,<2>; - Создаёт глобальную переменную. При это перед ней не нужно ставить global
Stas1999Дата: Понедельник, 31 Марта 2014, 22:41 | Сообщение # 6
был не раз
Сейчас нет на сайте
Упс,не заметил что ты написал globalvar mouserot;
Но попробуй его удалить и поставить то что я написал выше
Quad69Дата: Понедельник, 31 Марта 2014, 22:44 | Сообщение # 7
заслуженный участник
Сейчас нет на сайте
Разницы не какой. Везде заменил:
Код

___________________________________________
ERROR in
action number 1
of Create Event
for object obj_player:

Error in code at line 3:
    item4=item_sprite(obj_inventory.cell_sprite[global.mouserot])
                    ^
at position 53: Unknown variable mouserot
Stas1999Дата: Понедельник, 31 Марта 2014, 22:47 | Сообщение # 8
был не раз
Сейчас нет на сайте
Я не пойму что за функции такие item_sprite и cell_sprite.У меня GM их не знает.И переменная почему-то написана в квадратных скобках.

Сообщение отредактировал Stas1999 - Понедельник, 31 Марта 2014, 22:50
Quad69Дата: Понедельник, 31 Марта 2014, 22:50 | Сообщение # 9
заслуженный участник
Сейчас нет на сайте
При нажатии Ignory вылетает следующая ошибка:

Если нажимать ещё раз игноре, то выпадает опять ошибка:

При нажатии ещё раз больше ничего не выпадает.

Добавлено (31.03.2014, 22:50)
---------------------------------------------

Цитата maksim1221232 ()
Я не пойму что за функции такие item_sprite,cell_sprite.У меня GM их не знает.И почему переменная написана в квадратных скобках.

Это не функции, а массивы.
Цитата maksim1221232 ()
И почему переменная написана в квадратных скобках.

индекс массива
Stas1999Дата: Понедельник, 31 Марта 2014, 22:58 | Сообщение # 10
был не раз
Сейчас нет на сайте
Даже не знаю чем тебе помочь wacko
А можешь скинуть исходник.

Добавлено (31.03.2014, 22:58)
---------------------------------------------
Может проблема не в коде в твоем Game Maker.

Quad69Дата: Понедельник, 31 Марта 2014, 23:07 | Сообщение # 11
заслуженный участник
Сейчас нет на сайте
Вот лови: http://rghost.ru/53668094

Добавлено (31.03.2014, 23:07)
---------------------------------------------

Цитата Stas1999 ()
Может проблема не в коде в твоем Game Maker

У меня всё нормально. Если смотреть другие исходники, в которых почти тоже самое, то там всё нормально работает
Stas1999Дата: Понедельник, 31 Марта 2014, 23:09 | Сообщение # 12
был не раз
Сейчас нет на сайте
Странная проблема.Если я заменяю переменные на то что в них написано то все работает отлично.
Quad69Дата: Понедельник, 31 Марта 2014, 23:13 | Сообщение # 13
заслуженный участник
Сейчас нет на сайте
Да, но если мне вдруг придётся всё заменить, то как я это сделаю без переменной?
Stas1999Дата: Понедельник, 31 Марта 2014, 23:21 | Сообщение # 14
был не раз
Сейчас нет на сайте
Я не знаю,извини.
Quad69Дата: Понедельник, 31 Марта 2014, 23:23 | Сообщение # 15
заслуженный участник
Сейчас нет на сайте
Кстати, ошибка начала выскакивать когда я сделал инвентарь. До этого всё было отлично.
Stas1999Дата: Понедельник, 31 Марта 2014, 23:51 | Сообщение # 16
был не раз
Сейчас нет на сайте
Тогда только один вариант.Переделать инвентарь.
XDominatorДата: Вторник, 01 Апреля 2014, 10:05 | Сообщение # 17
постоянный участник
Сейчас нет на сайте
Вариант 1: Объект который обращается к mouserot создается гамаком раньше, чем объект, непосредственно инициирующий mouserot. Потому и ошибка обращения. Путь решения:

Код

Объект obj_inventory  
Kod Create:  

globalvar mouserot;  
mouserot=0

//Добавляем принудительное создание нашего obj_player

instance_create(x, y, obj_player);


Соответственно из редактора комнаты, obj_player придется убрать, а его координаты прописать в функцию создания. Удач!


Ghaarp

The soul lighter(Android, logic)

Zzzzombie RAGE!!!(For android)
Quad69Дата: Вторник, 01 Апреля 2014, 19:31 | Сообщение # 18
заслуженный участник
Сейчас нет на сайте
Спасибо за помощь!
Проблема решена!
Форум игроделов » Конструкторы игр и лёгкие в освоении системы разработки игр » Game Maker » Непонятная ошибка (Всё написано верно, а ошибку выдаёт всеровно)
  • Страница 1 из 1
  • 1
Поиск:

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