Суббота, 23 Ноября 2024, 00:37

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Обращение к конкретному объекту.
RomaN72Дата: Воскресенье, 26 Июля 2015, 16:55 | Сообщение # 1
частый гость
Сейчас нет на сайте
Ошибка в том, что при создании какого-либо объекта переменная instance_count изменяется, при этом цикл летит к чертям.

Цикл собственно:
Код

Код в Step'е тумана:
if instance_exists(torch)
{
for(i=0;i<instance_count;i+=1)
{
iii=instance_id[i]
if iii.object_index=torch  
{
if distance_to_object(iii)<=96
{
if !collision_line(x,y,iii.x,iii.y,solid,0,0)  
{
depth=-1
sprite_index=sprite2//Это прозрачный спрайт или же можно считать, что он не видим. Начальный спрайт черный.
}

if collision_rectangle(x-11,y-11,x+11,y+11,solid,0,1)
{
sprite_index=sprite2
depth=-1//Это прост так)
}
}
}
}
}


Ошибка при создании объекта:


Как решить проблему?
Только не советуйте засовывать все создания в начальный шаг.


mehanicДата: Воскресенье, 26 Июля 2015, 19:10 | Сообщение # 2
был не раз
Сейчас нет на сайте
Используй with(all), перебирает все объекты.
И проблема не в этом, а в том что у объекта отсутствует переменная.


http://forum.hellroom.ru/index.php?topic=21720
Мультиплеер GMS(Game Maker Studio networking) туториал на русском создание игры:}


Сообщение отредактировал mehanic - Воскресенье, 26 Июля 2015, 19:12
RomaN72Дата: Понедельник, 27 Июля 2015, 13:11 | Сообщение # 3
частый гость
Сейчас нет на сайте
Сделал так:
Код

if instance_exists(torch)
{
for(i=0;i<instance_number(torch);i+=1)
{
iii=instance_find(torch,i)
if distance_to_object(iii)<=96
{
if !collision_line(x,y,iii.x,iii.y,solid,0,0)  
{
depth=-1
sprite_index=sprite2
}

if collision_rectangle(x-11,y-11,x+11,y+11,solid,0,1)
{
sprite_index=sprite2
depth=-1
}


  • Страница 1 из 1
  • 1
Поиск:

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