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

Рандомный дроп


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

if (strmobinfo(3,killedrid) >= 120){

Так, нет?

И в чем смысл первого endа? Может его надо сразу после анонса?

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

if (strmobinfo(3,killedrid) >= 120){

Так, нет?

И в чем смысл первого endа? Может его надо сразу после анонса?

Даа.. не доглядел.

Теперь почти работает.

но проблема с вещами вещь не выбирается [null]

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

Даа.. не доглядел.

Теперь почти работает.

но проблема с вещами вещь не выбирается [null]

Что не выбирается?

У тебя сейчас так: Если монстр выше 120 лвл, то есть шанс в 1%, что ему дадут 1 итем с ид 2479.

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

Даа.. не доглядел.

Теперь почти работает.

но проблема с вещами вещь не выбирается [null]

Что не выбирается?

У тебя сейчас так: Если монстр выше 120 лвл, то есть шанс в 1%, что ему дадут 1 итем с ид 2479.

не дает вещь, в анонсе пишет null.

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

Потому что

@name$ - temporary character string variable

Нет?

Спасибо у меня до сих пор проблемы с переменными..путаюсь.

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

Все равно не выходит... или там косяк или там.. :unsure:

Теперь % дропа не работает :blink:

Может кто разжевать как работает эта строчка:

for(set @i,0; @i < getarraysize(@item_id$); set @i,@i+1){

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

-       script  OnKillmobs      -1,{

OnNPCKillEvent:
setarray @item_id[0],2479,2890,2580,15042,2860,15026,2468,2008,15055,2173,15051,2590,2169,
2491,2480,2891,2581,15043,2356,2383,15027,2009,2861,2469,2436,2539,2381,2435,2538,2377,
15008,2437,2382,2540,2862,15028,2470,2010,2859,15025,2467,2007,16013,15030,2570,2472,2372,
2380,2379,15029,2569,2471,1657,15039,2578,2887,2478,2359,15031,2476,2575,15037,2884,2577,2886,2477,
15038,2325,2483,2586,15046,2171,15053,2384,15007,15015,15016,15021,15020,15017,15019,15018,
2475,2574,15036,2883,2370;
set @chance, 2;

for(set @i,0; @i < getarraysize(@item_id); set @i, @i+1){
if ((strmobinfo(3,killedrid) >= 120) && (rand(100) <= @chance)){
getitem @item_id[@i], 1;
announce " ~ Внимание: За убийство монстров [" +strcharinfo(0) +"] "+((sex)?"получил":"получила")+" - [ "+getitemname(@item_id[@i])+" ] .",bc_red|bc_all;
}
}
end;
}

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

% дропа все равно не работает.. 100% падает шмот. :unsure:/>

Тебе все вещи из строки падают?

Тебе нужен дроп максимум одной вещи?

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

Джарек лишнюю скобку поставил :D/>/>/>

if ---(---(strmobinfo(3,killedrid >= 120) && (rand(100) <= @chance)){

Наоборот, не обратил внимания что закрытой скобки не хватает

if ((strmobinfo(3,killedrid) >= 120) && (rand(100) <= @chance)){
  • Upvote 1
Ссылка на комментарий
Поделиться на другие сайты

так скрипт все равно не работает

1 вещи падают 100%

2 их падает 5-10 шт сразу... :mellow: не пойму почему команда то прописана 1 раз.

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

а если так?

нарыл тут - ссылка

// code.google.com/p/ctscripts/
- script DropExtraDB -1,{
OnNPCKillEvent:
======================== Conf =============================
setarray .@mobids[0],1511,1647,1630,1785,1399,1039,1874,2068,2238,1272,1719,1046,1389,1112,1115,1418,1252,1768,1086,1885,1649,1651,1832,1492,1734,1251,1779,1980,1688,2156,1646,1373,1147,1059,1150,2022,1087,1190,1038,1157,1159,1502,2087,2165,1623,1650,1583,1708,1312,1751,1648,1917,1658,1096,1388,1641,1873,1582,1091,1093,1120,1929,1990,1626,1643,1645,2198,1640,2131,1090,1289,1262,1956,1644,1991,1089,1092,1765,1642;
// Mob ID's
setarray .@prizeids[0],2479,2890,2580,15042,2860,15026,2468,2008,15055,2173,15051,2590,2169,2491,2480,2891,2581,15043,2356,2383,15027,2009,2861,2469,2436,2539,2381,2435,2538,2377,15008,2437,2382,2540,2862,15028,2470,2010,2859,15025,2467,2007,16013,15030,2570,2472,2372,2380,2379,15029,2569,2471,1657,15039,2578,2887,2478,2359,15031,2476,2575,15037,2884,2577,2886,2477,15038,2325,2483,2586,15046,2171,15053,2384,15007,15015,15016,15021,15020,15017,15019,15018,2475,2574,15036,2883,2370;
Droped itens ID's/setarray .@chance[0],50;
Drop chance %
//==========================================================
for(set @c,0; @c < getarraysize(.@mobids); set @c,@c+1){
for(set @i,0; @i < getarraysize(.@prizeids); set @i,@i+1){
if(killedrid == .@mobids[@c]){
set @d,rand(0,100);
if(@d <= .@chance[@c]){
getitem .@prizeids[@i],1;
} } end; } } }

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

а если так?

нарыл тут - ссылка

// code.google.com/p/ctscripts/
- script DropExtraDB -1,{
OnNPCKillEvent:
======================== Conf =============================
setarray .@mobids[0],1511,1647,1630,1785,1399,1039,1874,2068,2238,1272,1719,1046,1389,1112,1115,1418,1252,1768,1086,1885,1649,1651,1832,1492,1734,1251,1779,1980,1688,2156,1646,1373,1147,1059,1150,2022,1087,1190,1038,1157,1159,1502,2087,2165,1623,1650,1583,1708,1312,1751,1648,1917,1658,1096,1388,1641,1873,1582,1091,1093,1120,1929,1990,1626,1643,1645,2198,1640,2131,1090,1289,1262,1956,1644,1991,1089,1092,1765,1642;
// Mob ID's
setarray .@prizeids[0],2479,2890,2580,15042,2860,15026,2468,2008,15055,2173,15051,2590,2169,2491,2480,2891,2581,15043,2356,2383,15027,2009,2861,2469,2436,2539,2381,2435,2538,2377,15008,2437,2382,2540,2862,15028,2470,2010,2859,15025,2467,2007,16013,15030,2570,2472,2372,2380,2379,15029,2569,2471,1657,15039,2578,2887,2478,2359,15031,2476,2575,15037,2884,2577,2886,2477,15038,2325,2483,2586,15046,2171,15053,2384,15007,15015,15016,15021,15020,15017,15019,15018,2475,2574,15036,2883,2370;
Droped itens ID's/setarray .@chance[0],50;
Drop chance %
//==========================================================
for(set @c,0; @c < getarraysize(.@mobids); set @c,@c+1){
for(set @i,0; @i < getarraysize(.@prizeids); set @i,@i+1){
if(killedrid == .@mobids[@c]){
set @d,rand(0,100);
if(@d <= .@chance[@c]){
getitem .@prizeids[@i],1;
} } end; } } }

Ну если ты хочешь вписывать мобов выше 120 лвл - вперед и с песней

Джарек лишнюю скобку поставил :D/>/>/>/>

if ---(---(strmobinfo(3,killedrid >= 120) && (rand(100) <= @chance)){

Наоборот, не обратил внимания что закрытой скобки не хватает

if ((strmobinfo(3,killedrid) >= 120) && (rand(100) <= @chance)){

Да, верно, я дно :blink:

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

Ну если ты хочешь вписывать мобов выше 120 лвл - вперед и с песней

нет там были перечислены мвп и мини босы

но я же знаю себя и там что-то не так.

<_< никак сделать не могу ни этот и тот..

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

так скрипт все равно не работает

1 вещи падают 100%

2 их падает 5-10 шт сразу... :mellow:/>/>/> не пойму почему команда то прописана 1 раз.

Да ну, у вас там около сотни вещей в массиве

И для каждой просчитывается шанс.

Так что, все в порядке, единственное - засоряется аннонсами чат.

А если хотите, чтобы шанс считался только для одной вещи из списка, то нужно убрать цикл.

Или можно еще больше уменьшить шанс

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

а если для каждой вещи прописать:

switch(rand(1,6)){
case 1: getitem 7447,1; close;
case 2: getitem 2479,1; close;
case 3: getitem 12301,1; close;
case 4: getitem 12302,1; close;
case 5: getitem 14232,1; close;
case 6: getitem 662,1; close;
}

или это уже слишком глупо?)

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

×
×
  • Создать...
Яндекс.Метрика