Онлайн-справочник по самым часто задаваемым вопросам из темы "Как сделать?" на форуме QSP.su

20.21. Как сделать случайный предмет?

В: Как сделать случайный предмет?

О:

Если вам нужно, чтобы на локации случайным образом появлялся какой-либо предмет, необходимо использовать "действие по условию" и функцию `rand`.

В самом простом виде можно сделать так:

i=rand(1,5)
if i=1:
    act "Взять отвёртку":
        addobj "Отвёртка"
        
! другой код
    end
elseif i=2:
    act "Взять кость":
        addobj "Кость"
        
! другой код
    end
elseif i=3:
    act "Взять ржавую монету":
        addobj "Ржавая монета"
        
! другой код
    end
elseif i=4:
    act "Взять шкуру тролля":
        addobj "Шкура Тролля"
        
! другой код
    end
elseif i=5:
    act "Взять пачку масла":
        addobj "Пачка масла"
        
! другой код
    end
end

Так же можно внести список возможных предметов в массив, а затем выбросить случайный:

$objects[0]='Отвёртка' 
$objects[1]='Кость' 
$objects[2]='Гаечный ключ' 
$objects[3]='Человеческий череп' 
$objects[4]='Перфоратор' 
$objects[5]='Шкура тролля' 
$objects[6]='Пачка масла' 
$objects[7]='Яблоко' 
$objects[8]='Ржавая монета' 
$objects[9]='Упавшая звезда' 
$object_rand = $objects[rand(0,9)] 
dynamic "
    act 'Взять предмет <<$object_rand>>': 
        addobj '<<$object_rand>>'
        ! ... другой код ... 
    end
"