Перейти к содержанию

Дроп итема


Рекомендуемые сообщения

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

Ссылка на комментарий
Поделиться на другие сайты

Зайди в (папка с эмулятором)/src/map/mob.c и найди строчку:


// Ore Discovery [Celest]

И добавь после этого:


if( sd == mvp_sd && night_flag )
{
ditem = mob_setdropitem([ID Вещи], 1);
mob_item_drop(md, dlist, ditem, 0, [Шанс Дропа], homkillonly);
}

PS! В eAmod'e вместо homkillonly нужно вписать aikillonly

Изменено пользователем Nurkz
  • Upvote 1
Ссылка на комментарий
Поделиться на другие сайты

дроп итема идет 100% даже при значение 1

Извиняюсь, не досмотрел. =)


if( sd == mvp_sd && night_flag && rnd()%10000 >= 500 )
{
ditem = mob_setdropitem(7227, 1);
mob_item_drop(md, dlist, ditem, 0, 500, homkillonly);
}

Соответственно rnd() на eAmod'e это rand() и homkillonly это aikillonly.

Процент дропа умножается на 100 (5% = 500).

Изменено пользователем Nurkz
  • Upvote 1
Ссылка на комментарий
Поделиться на другие сайты

Какой эмулятор и что конкретно мы меняем, и на что? :)

Если я правильно его понял он пытается поставить шанс 5% но значение выставляет не правильное)

Можно без вмешательства в src сделать твою затею)) Использовать Скрипт)

Ссылка на комментарий
Поделиться на другие сайты

при RND работает все четко, а если поменять на RAND то не работает.

сейчас попробую

Functor

работает +

Изменено пользователем Agressor
Ссылка на комментарий
Поделиться на другие сайты

  • 11 месяцев спустя...

в рАтене ерорит:


CC mob.c
mob.c: In function 'mob_dead':
mob.c:2525:3: error: too few arguments to function 'mob_setdropitem'
ditem = mob_setdropitem(7227, 1);
^
mob.c:1872:26: note: declared here
static struct item_drop* mob_setdropitem(unsigned short nameid, int qty, unsigned short mob_id)

Ссылка на комментарий
Поделиться на другие сайты

Структура mob_setdropitem требует от тебя 3 параметра, ты даешь только 2

Даешь:

ditem = mob_setdropitem(7227, 1);

Нужно:

ditem = mob_setdropitem(7227, 1, ID моба с которого будет падать предмет);

Изменено пользователем Kubix
  • Upvote 1
Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...
×
×
  • Создать...
Яндекс.Метрика