Пятница, 19 Апреля 2024, 21:17

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Конструкторы игр и лёгкие в освоении системы разработки игр » Game Maker » Рандомное действие(решено)
Рандомное действие(решено)
RekerДата: Среда, 21 Марта 2018, 17:26 | Сообщение # 1
почетный гость
Сейчас нет на сайте
Надо, чтобы он выбирал рандомно одно из этих условий, как сделать, не знаю
Код
if instance_exists(obj_enemy_skelet) {
    if point_distance(x, y, obj_enemy_skelet.x, obj_enemy_skelet.y) > sp
    {
       dir =  point_direction(x, y, obj_enemy_skelet.x, obj_enemy_skelet.y);
    
    phy_speed_x = lengthdir_x(sp,dir)
    phy_speed_y = lengthdir_y(sp,dir)
  }
    }

if instance_exists(obj_crystal_demon) {
    if point_distance(x, y, obj_crystal_demon.x, obj_crystal_demon.y) > sp
    {
       dir =  point_direction(x, y, obj_crystal_demon.x, obj_crystal_demon.y);
    
    phy_speed_x = lengthdir_x(sp,dir)
    phy_speed_y = lengthdir_y(sp,dir)
  }
    }

if instance_exists(obj_enemy_robot) {
    if point_distance(x, y, obj_enemy_robot.x, obj_enemy_robot.y) > sp
    {
       dir =  point_direction(x, y, obj_enemy_robot.x, obj_enemy_robot.y);
    
    phy_speed_x = lengthdir_x(sp,dir)
    phy_speed_y = lengthdir_y(sp,dir)
  }
    }


Сообщение отредактировал Reker - Четверг, 22 Марта 2018, 20:50
vampir0305Дата: Среда, 21 Марта 2018, 17:48 | Сообщение # 2
Unity C# Programmer
Сейчас нет на сайте
А где собственно условия? instance_exists проверяет есть ли указанный объект в комнате.

Код

rand = choose(1, 2, 3);

switch(rand)
{
case 1:
{
//действие
break;
}

case 2:
{
//действие
break;
}

case 3:
{
//действие
break;
}
}


Красочная сюжетно-ориентированная игра-головоломка

Сообщение отредактировал vampir0305 - Среда, 21 Марта 2018, 17:51
RekerДата: Четверг, 22 Марта 2018, 19:46 | Сообщение # 3
почетный гость
Сейчас нет на сайте
Цитата vampir0305 ()

rand = choose(1, 2, 3);

switch(rand)
{
case 1:
{
//действие
break;
}

case 2:
{
//действие
break;
}

case 3:
{
//действие
break;
}
}

а как сделать так, чтобы он один раз выбрал и делал только одно действие. С этим кодом он просто в конвульсиях выбирает цели
vampir0305Дата: Четверг, 22 Марта 2018, 20:37 | Сообщение # 4
Unity C# Programmer
Сейчас нет на сайте
Ну а самому подумать никак?

Нужно завести переменную. И при выборе делать проверку и когда выбор сделан менять значение переменной чтобы выбор происходил 1 раз.

в Create
Код

isChoosed = false //перменная для проверки выбора


Код

if (!isChoosed) //проверяем сделан ли выбор
{
rand = choose(1, 2, 3);

switch(rand)
{
case 1:
{
//действие
break;
}

case 2:
{
//действие
break;
}

case 3:
{
//действие
break;
}
}

isChoosed = true //меняем значение чтобы выбор происходил 1 раз
}


Красочная сюжетно-ориентированная игра-головоломка
RekerДата: Четверг, 22 Марта 2018, 20:47 | Сообщение # 5
почетный гость
Сейчас нет на сайте
Цитата vampir0305 ()
Ну а самому подумать никак?

та я глупое животное. Хотя это как то неуважительно по отношению к другим животным.
А так спасибо большое, что уделил мне время. Я ценю твоё потраченное на меня время.
drcrackДата: Четверг, 22 Марта 2018, 22:34 | Сообщение # 6
старожил
Сейчас нет на сайте
так можно rand вынести в Create и проверять ее потом на > 0, чтобы не плодить лишних переменных
RekerДата: Пятница, 30 Марта 2018, 13:40 | Сообщение # 7
почетный гость
Сейчас нет на сайте
Пасебки всем

Добавлено (30 Марта 2018, 13:40)
---------------------------------------------
там ещё не всё порешал с этим, если не смогу решить, задам ещё вопросик, простите уж

Сообщение отредактировал Reker - Вторник, 27 Марта 2018, 08:44
Форум игроделов » Конструкторы игр и лёгкие в освоении системы разработки игр » Game Maker » Рандомное действие(решено)
  • Страница 1 из 1
  • 1
Поиск:

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