Пятница, 29 Ноября 2024, 12:55

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Смотрю гмл.GM8.
CannabisquitДата: Понедельник, 25 Января 2016, 21:46 | Сообщение # 1
был не раз
Сейчас нет на сайте
a[0]=0
for (i=0; i>=8; i+=1) a[i]=random_range(0,1);
for (i=0; i>=8; i+=1)
{
if a[i]=1
{
instance_create(60+i,60,obj)
}
}
Хотел сделать генератор,но при этом ничего не происходит всё писал в событие create.


WorldSim3D,VB,blitz3d,JS.

Сообщение отредактировал Cannabisquit - Понедельник, 25 Января 2016, 21:51
FlyOfFlyДата: Понедельник, 25 Января 2016, 22:44 | Сообщение # 2
заслуженный участник
Сейчас нет на сайте
Цитата Cannabisquit ()
a[0]=0
for (i=0; i<=8; i+=1) a[i]=random_range(0,1);
for (i=0; i<=8; i+=1)
{
if a[i]=1
{
instance_create(60+i,60,obj)
}
}

Исправил
CannabisquitДата: Понедельник, 25 Января 2016, 22:47 | Сообщение # 3
был не раз
Сейчас нет на сайте
Цитата FlyOfFly ()
Цитата Cannabisquit ()
a[0]=0
for (i=0; i<=8; i+=1) a[i]=random_range(0,1);
for (i=0; i<=8; i+=1)
{
if a[i]=1
{
instance_create(60+i,60,obj)
}
}

Исправил

Хм,объекты не появляются...


WorldSim3D,VB,blitz3d,JS.
FlyOfFlyДата: Понедельник, 25 Января 2016, 22:49 | Сообщение # 4
заслуженный участник
Сейчас нет на сайте
Цитата Cannabisquit ()

Хм,объекты не появляются...

a[i]=random_range(0,2); вместо a[i]=random_range(0,1);
CannabisquitДата: Понедельник, 25 Января 2016, 23:28 | Сообщение # 5
был не раз
Сейчас нет на сайте
Цитата FlyOfFly ()
Цитата Cannabisquit ()

Хм,объекты не появляются...

a[i]=random_range(0,2); вместо a[i]=random_range(0,1);

Всё равно,что то не то,не могу понять,может не правильный генератор массива?


WorldSim3D,VB,blitz3d,JS.
TLTДата: Вторник, 26 Января 2016, 00:01 | Сообщение # 6
Сейчас нет на сайте
Cannabisquit, тогда лучше приложить весь файл.

Дао, выраженное словами, не есть истинное Дао.
Raven84Дата: Вторник, 26 Января 2016, 02:30 | Сообщение # 7
старожил
Сейчас нет на сайте
Cannabisquit, Проблема в том, что у тебя a[¡] будет очень редко равна 1. Так как генерируются и дробные числа, к примеру 0.3,0.6 и т.д. Тебе нужно использовать a[i]=irandom_range(0,1);
Он будет генерировать только целые, т.е. 0 либо 1.
Или можно написать вообще a[i]=irandom(1).
Вроде все так. Код по памяти пишу. Проверь.


Super Knight Story (в разработке)
Idolzzz - игра доступна в Steam и Play Market
Oliver's Adventures in the Fairyland


Сообщение отредактировал Raven84 - Вторник, 26 Января 2016, 02:47
StelSMaN_82Дата: Вторник, 26 Января 2016, 12:27 | Сообщение # 8
Master Of Game maker
Сейчас нет на сайте
Более того: попробуй во втором цикле заменить i на j, вот примерно так:

Код
for (i=0; i<=8; i+=1)
{
for (j=0; j<=8; j+=1)
   {
   a[i,j]=choose(0,1);
   if a[i,j]=1
      {
      instance_create(32*i,32*j,o_block)
      }
   }
}

Блин, надеюсь, ничего не попутал...

Добавлено (26 января 2016, 12:11)
---------------------------------------------
Вот, это точно работает.

Добавлено (26 января 2016, 12:27)
---------------------------------------------
(И да, все это надо писать в Create)


Помог - плюс в репу!

Сообщение отредактировал StelSMaN_82 - Вторник, 26 Января 2016, 12:23
OpenGOOДата: Вторник, 26 Января 2016, 12:37 | Сообщение # 9
почти ветеран
Сейчас нет на сайте
Код
a[8] = 0;
for (var i = 0; i < 9; i+=1) {
    a[i] = irandom(1);
    if a[i] = 1 {
        instance_create(60 + i,60,obj);  // возможно нужно не прибавлять, а умножать на i
    }
}


Мои проекты:
- Свободный и открытый клон World Of Goo
- TrueEngine2D (2D игровой фреймворк основанный на FreeBASIC)

[GameMaker: Studio v1.4.9999]
StelSMaN_82Дата: Вторник, 26 Января 2016, 12:40 | Сообщение # 10
Master Of Game maker
Сейчас нет на сайте
OpenGOO, к чему вы это написали? Я же уже все показал...

Помог - плюс в репу!
YellowAfterlifeДата: Вторник, 26 Января 2016, 13:21 | Сообщение # 11
Сейчас нет на сайте
Цитата StelSMaN_82 ()
Более того: попробуй во втором цикле заменить i на j, вот примерно так:

Код
for (i=0; i<=8; i+=1)
{
for (j=0; j<=8; j+=1)
{
a[i,j]=choose(0,1);
if a[i,j]=1
{
instance_create(32*i,32*j,o_block)
}
}
}

Блин, надеюсь, ничего не попутал...

Цитата StelSMaN_82 ()
OpenGOO, к чему вы это написали? Я же уже все показал...

Потому что твой код выполняет не те же функции. Код OpenGOO или код из любых других сообщений в теме генерирует (или пытается генерировать) ряд из объектов (с "дырами"), твой а генерирует сетку из объектов.




Сообщение отредактировал YellowAfterlife - Вторник, 26 Января 2016, 13:22
StelSMaN_82Дата: Вторник, 26 Января 2016, 13:29 | Сообщение # 12
Master Of Game maker
Сейчас нет на сайте
А))) Нужно было всего лишь ряд сгенерировать?))) Я-то думал, что нужна сетка)
Но тогда я не понимаю, зачем он в самом начале делал два цикла?
Код
a[0]=0
for (i=0; i>=8; i+=1) a[i]=random_range(0,1);
for (i=0; i>=8; i+=1)
{
if a[i]=1
{
instance_create(60+i,60,obj)
}
}


Помог - плюс в репу!
CannabisquitДата: Вторник, 26 Января 2016, 18:14 | Сообщение # 13
был не раз
Сейчас нет на сайте
Ребят спасибо,я разобрался на самом деле ошибка была в if a[i]==1

WorldSim3D,VB,blitz3d,JS.
  • Страница 1 из 1
  • 1
Поиск:

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