Здравствуйте, гость ( Вход | Регистрация )

> Вопрос по фишингу
Solpadeine
сообщение 16.6.2021, 2:11
Сообщение #1


**

Neophyte
Сообщений: 48
Регистрация: 12.10.2011
Группа: Пользователи
Наличность: 0
Пользователь №: 14.146



Добрый день, господа! Ниже прикреплена часть кода с удочки на фишеринг. В этом коде указаны айди предметов, айди монстров, а также шансы на вылов той или иной сущности в графе morey. Так вот, подскажите, пожалуйста, каким образом высчитывается процент дропа предметов и НПС через morey? Как регулировать эти шансы? Делать их более частыми и наоборот? Буду благодарен вашему ответу!

Цитата
if (<morey>==0)||(cont.fishing<1000)
IF (rand(32)==1)
CONT.NEWNPC={04123 2 04125 1}
endif
timer=-1
return 1
endif

if (<CONT.FISHING>>1099)
if (rand(600)==1)&&(<morey>>50)
cont.newitem {TTM_LVL3 3 TTM_LVL4 2 TTM_LVL5 1}
cont.act.update
cont.act.bounce
cont.say Вы выловили <cont.act.name>
endif

if (rand(50)==1)
CONT.NEWNPC={ 0005f 6 00096 6 04128 6 04127 6 04126 5 04125 4 041A7 3 041A6 2 04129 1}
endif

elseif (<CONT.FISHING>>1040)&&(<CONT.FISHING><1100)
if (rand(50)==1)
CONT.NEWNPC={0005f 6 00096 5 04128 4 04127 3 04126 2 04125 1}
endif
if (rand(600)==1)&&(<morey>>50)
cont.newitem {TTM_LVL2 3 TTM_LVL3 2 TTM_LVL4 1}
cont.act.update
cont.act.bounce
cont.say Вы выловили <cont.act.name>
endif
elseif (<CONT.FISHING>>1000)&&(<CONT.FISHING><1050)
if (rand(50)==1)
CONT.NEWNPC={0005f 6 00096 5 04128 4 04127 3 04126 2 04125 1}
endif
if (rand(600)==1)&&(<morey>>50)
cont.newitem {TTM_LVL1 3 TTM_LVL2 2 TTM_LVL3 1}
cont.act.update
cont.act.bounce
cont.say Вы выловили <cont.act.name>
endif
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
Ответить в эту темуОткрыть новую тему
Ответов
corso
сообщение 16.6.2021, 5:49
Сообщение #2


****

Apprentice
Сообщений: 229
Регистрация: 24.2.2013
Группа: Пользователи
Наличность: 2617
Из: Россия
Пользователь №: 15.835



Привет,

функция "rand(x)" возвращает значение от 0 до x-1
rand(50) - вернёт рандом число от 0 до 49

if (rand(50)==1) - условие, если оно выполняется, то действует то что заключено в "if - endif"
в данном случае, условие: "если выпавшее рандом число (от 0 до 49) равно 1",то....

&& - читай как И
|| - читай как ИЛИ
if (rand(600)==1)&&(<morey>>50) - если "ранд число (от 0 до 599) равно 1" И " <morey> больше 50
т.е. в данном случае должно выполниться 2 условия (rand(600)==1) и (<morey>>50), чтобы действовал дальнейший код заключенный в "if - endif"


--------------------
return 1 🙏
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения



Ответить в эту темуОткрыть новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 15.6.2024, 5:35
Designed by Nickostyle