[Урок] Использование Функции Random() - Форум Cheat-Master.ru
  • Страница 1 из 1
  • 1
Модератор форума: Phoenixxx_Czar, Getbackthere, [CM]OlegEhtler  
[Урок] Использование Функции Random()
_Edik_ Дата: Среда, 22.10.2014, 13:10 | Сообщение # 1
Боец
Сообщений: 58
Статус: Offline
Доброе время суток с вами _Edik_ В моем 'уроке' мы рассмотрим такую функцию random().
Поехали.
1. Предисловие.
Для начала мы должны понять для чего предназначена данная функция. Random в переводе с английского — случайный. Следовательно, данная функция возвращает нам случайное значение.
2. Как работает?
Информация в данном пункте чисто для расширения Вашего кругозора.
Числа получаемые с помощью данной функции псевдо случайны, и вычисляются на основе формулы с некоторым начальным значением, которое может быть как функция времени.
Подробнее о алгоритме генератора случайным чисел Вы можете познакомиться здесь.
Также одним из алгоритмов генератора случайных чисел является линейный конгруэнтный метод
3. Как применять данную функцию?
Рассмотрим несколько примеров:
1) Создадим команду, которая выводит случайное число от 1 до 10 (включая 1 и 10).
Код
if(strcmp("/random", cmdtext, true, 10) == 0)
{
new string[64]; // создаем строку, которая выведется на экран.
format(string, 64, "Случайное число: %d", random(10)+1); /* заполняем строку.   
Немного объясню как все выполняется. Функция random() ведет отсчет от нуля. Т.е. random(10) вывело бы число от 0 до 9. Следовательно, мы прибавили единицу, чтобы строка заполнилась числом от 1 до 10. */
SendClientMessage(playerid, 0xFFFFFF, string); // выводим сообщение пользователю
return 1;
}

На основе этого примера можно сделать азартные игры (например бросание костей, блек-джек и многое другое).
2) Рассмотрим другой пример: Сделаем совсем 'безобидную' функцию с помощью Random. Каждую секунду цвет машины в которой сидит игрок будет меняться.
Добавляем к глобальным переменным:
Код
new changecolortimer;

Дальше.
Код
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
      KillTimer(changecolortimer);
      changecolortimer = SetTimerEx("changecolor",1000,1,"i",vehicleid);
      return 1;
}

И добавляем функцию смены цвета с нашим Random:
Код
forward changecolor(i);
public changecolor(i)
{
ChangeVehicleColor(i, random(120), random(120)); // меняет color1 и color2 на случайные цвета от 0 до 120   
return 1;
}

Можно привести еще тысячи подобных примеров, но все равно невозможно показать все прелести Random.
Ну что же на этом урок мой заканчивается.[font=Geneva]


+

Сообщение отредактировал _Edik_ - Четверг, 23.10.2014, 15:29
mentaziwe Дата: Суббота, 31.03.2018, 00:19 | Сообщение # 2
Новичок
Сообщений: 13
Статус: Offline
цикл разве делать не надо?

new i, и т.д
  • Страница 1 из 1
  • 1
Поиск:
Статистика Форума
Лучшие пользователи
Admin [39113]

GеNius [7210]

[CM]Russel [5557]

kenlo763 [4952]

[CM]AGRESSOR [4639]

Snake_Firm [4452]

Сэс [4416]

Artem_Buero [4223]

[CM]Durman [3204]

[CM]Рафаэль [3080]

iMaddy [2855]

sky_Woker [2854]

getrekt [2745]

Новые пользователи
cheatjopa2 [11:58]

gabitovismaismaisma [09:18]

Gotham_ws [03:45]

раре [02:58]

Epiphonexmr [02:38]

ksuexe [01:35]

petrusenko_t [23:29]

shanepk60 [21:19]

chadaevvo18 [19:34]

zazik965mb [17:41]

AndreSR [16:49]

funovv [20:46]

Dizelmotnik [11:22]