Среда, 25 Декабря 2024, 16:41

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
объект - родитель
vsDaTavsДата: Вторник, 11 Января 2011, 22:49 | Сообщение # 1
почетный гость
Сейчас нет на сайте
jnr - массив, инициализованный в объекте контроллере при старте комнаты
n и k - определения индекса массива(строка и столбец)
item - совершенно пустой объект-родитель для объектов item_1, item_2, ...
при старте игры также в объекте контроллере след. код
jnr[0,0] = item_1
jnr[0,1] = item_2
jnr[0,2] = item_3
т е предметы 1, 2 и 3 имеются и располагаются соотв. в ячейках 1, 2,3 первой строки

Делаю что то наподобие инвентаря.

Код рассчитан на то, чтобы при загрузке комнаты проверялось на наличие предмета (item_1,2,3) в инвентаре ( jnr[n,k] )
и если это правда, создавался соответствующий объект в оопределенных координатах.

n = 0 k = 0 // начинаем с первой строки и первого столбца
while (item = jnr[n,k]) // если данному индексу присвоено значение item (в данной ячейке расположен предмет)
{
instance_create(36+66*n,68+66*k,item) // создаем объект в подсчитанных мной координатах
if(k<2) {k +=1} // если предмет не располагается в последнем столбце, увеличиваем столбец на 1
else {n +=1 k=0} // если же столбец последний, увеличиваем строку и задаем первый столбец
}

проблема в принципе понятна.
Задав объектам item_1,2,3,4 родителя item и использовав последнего в коде, я надеялся что item_1,2,3 наследуя операции, совершаемые над их родителем будут создавать себя-объекты в комнате.
но не создаются. Хотел бы услышать альтернативу...

(я сам вижу возможные альтернативы, но тогда мне нужно знать
1 как определить объект(не образец) через значение переменной (или еще как). либо
2 можно ли как используя функцию создать себя-объект ( instanсe_creat(x,y, Я):)?

. заранее благодарен


http://farchive.jino.ru/

Сообщение отредактировал vsDaTavs - Вторник, 11 Января 2011, 23:39
GameMixДата: Среда, 12 Января 2011, 08:01 | Сообщение # 2
старожил
Сейчас нет на сайте
Quote (vsDaTavs)
2 можно ли как используя функцию создать себя-объект ( instanсe_creat(x,y, Я):)?

Это можно сделать легко:
Code
instance_create(x,y,object_index);

Координаты x и y подбирай на свое усмотрение;
object_index - неизменная переменная, возвращающая объект, текущего экземпляра.


Steel Standoff - 2D аркада.
Мои статьи


Сообщение отредактировал аТнОтХоАн - Среда, 12 Января 2011, 17:25
Dva_KotaДата: Среда, 12 Января 2011, 10:34 | Сообщение # 3
заслуженный участник
Сейчас нет на сайте
vsDaTavs, Нужно просто чуть-чуть изменить твой код:
Вначале всем ячейкам jnr[n,k], в которых нет предметов присвой значение 0. А потом проверяй таким кодом:

Code
while (jnr[n,k]!=0) // если данному индексу присвоено значение отличное от 0 (в данной ячейке расположен предмет)
{
instance_create(36+66*n,68+66*k,jnr[n,k]) // создаем объект в подсчитанных мной координатах
if(k<2) {k +=1} // если предмет не располагается в последнем столбце, увеличиваем столбец на 1
else {n +=1 k=0} // если же столбец последний, увеличиваем строку и задаем первый столбец
}


Новый пример инвентаря! /20.06.2012/

Energy Wars
vsDaTavsДата: Четверг, 13 Января 2011, 16:01 | Сообщение # 4
почетный гость
Сейчас нет на сайте
аТнОтХоАн, спасиб. Это пригодится если я не найду другого выхода. Но пока я подумаю над более оптимальным кодом
++

Добавлено (12.01.2011, 13:11)
---------------------------------------------
Dva_Kota,
изменил код. но он странным образом работает. для проверки я задал значения ячейка

и если я задаю что все ячейки не пусты(нет нулей), а такое ведь может быть, программа выдает ошибку
ERROR in
action number 1
of Other Event: Room Start
for object item_0: // объект контролеер в которм расположен код

Error in code at line 2:
while (jnr[n,k]!= 0 )

at position 9: Unknown variable jnr or array index out of bounds

и еще одно

Добавлено (12.01.2011, 15:14)
---------------------------------------------
понял в чем ошибки и как исправить
все равно спс за помощь

Добавлено (13.01.2011, 16:01)
---------------------------------------------
можно тему закрывать, я разобрался


http://farchive.jino.ru/

Сообщение отредактировал vsDaTavs - Среда, 12 Января 2011, 13:40
  • Страница 1 из 1
  • 1
Поиск:

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