Автор: Aaron: Дата: 02.13.2010
Господа. Подскажите , как сделать дроп предмета с ID 20027 всем мобам с шансом выпада 30% ?
НА Офф форуме видел такое, там надо в скрипты закинуть такой код :
if(rand(100)=getmonsterinfo(killedrid,1)) getitem 20027,1;
Если этот код правильный , то куда его вписать надо и как настроить его под всех мобов ?
Благодарствую Господа.
Автор: Gr1nS1de: Дата: 02.13.2010
-%TAB%script%TAB%drop_s_mobov%TAB%-1,{
OnNPCKillEvent:
if(killedrid==getmonsterinfo(killedrid,0)){
set @rand,rand(1,100);
if(@rand<=30)getitem 20027;
end;
}
}
Доков нету под рукой... помоему так.
Кстати... Вспомнил еще кое что!
Можно допустить ошибку в скрипте и рандом будет на всех мобов...
Например:
Заменить: if(killedrid==getmonsterinfo(killedrid,0)){
Этим: if(killedrid==1623 || 1624){
Автор: Aaron: Дата: 02.13.2010
Мне и надо, чтобы рандом был на всех мобах.
Пишет ошибку в строке
if(@rand<=30)getitem 20027;
not engough arguments , expected ','
Автор: Gr1nS1de: Дата: 02.13.2010
if(@rand<=30)getitem 20027,1;
Автор: Aaron: Дата: 02.13.2010
Прошу прощения . Подгрузил я данный скрипт
- script drop_s_mobov -1,{
OnNPCKillEvent:
if(killedrid==1623 || 1624){
set @rand,rand(1,100);
if(@rand<=100)getitem 20027,1;
end;
}
}
Работает всё хорошо, но как сделать, что-бы со всех мобов дропалось, не прописывать же ID всех мобов игры ? :))
Автор: Мяфк: Дата: 02.13.2010
- script drop_s_mobov -1,{
OnNPCKillEvent:
set @rand,rand(1,100);
if(@rand<=100)getitem 20027,1;
end;
}
}
Автор: Aaron: Дата: 02.13.2010
Очень признателен вам всем. Всего доброго.
Автор: 879546: Дата: 02.14.2010
у себя написал такую фигульку. дроп итема Coin(альтернативная валюта на моем серве) из всех мвп с шансом 10%, с простых мобов 0.1% плюс к этому аннонс при убийстве каждого мвп и своего рода мвп-топ(просто пишется сколько мвп персонаж убил за всю игру). Думаю не будет сложным изменить/дополнить нужды, а если будет- пишите, переделаю.
//by Gremlin. [email protected]
- script mobdrop -1,{
end;
OnNPCKillEvent:
if (killedrid>1000 || killedrid<2000){
if (killedrid == 1511 || killedrid == 1647 || killedrid == 1785 || killedrid == 1630 || killedrid == 1399 || killedrid == 1039 || killedrid == 1874 || killedrid == 1272 || killedrid == 1719 || killedrid == 1046 || killedrid == 1389 || killedrid == 1112 || killedrid == 1115 || killedrid == 1957 || killedrid == 1418 || killedrid == 1871 || killedrid == 1252 || killedrid == 1768 || killedrid == 1086 || killedrid == 1885 || killedrid == 1802 || killedrid == 1649 || killedrid == 1651 || killedrid == 1832 || killedrid == 1492 || killedrid == 1734 || killedrid == 1251 || killedrid == 1779 || killedrid == 1688 || killedrid == 1646 || killedrid == 1373 || killedrid == 1147 || killedrid == 1059 || killedrid == 1150 || killedrid == 1956 || killedrid == 1087 || killedrid == 1190 || killedrid == 1038 || killedrid == 1157 || killedrid == 1159 || killedrid == 1623 || killedrid == 1650 || killedrid == 1583 || killedrid == 1708 || killedrid == 1312 || killedrid == 1751 || killedrid == 1685 || killedrid == 1648 || killedrid == 1917 || killedrid == 1658 || killedrid == 1272 || killedrid == 1373 || killedrid == 1876 ){
set mvp,mvp+1;
set @chance,rand(100);
if (@chance > 90){getitem 7606,1; set coins,coins+1;}
if (sex == 1){ if (@chance > 90){ announce "[ Охота ] : "+strcharinfo(0)+" убил MVP "+getmonsterinfo(killedrid,0)+"! В награду он получает 1 Coin!",bc_yellow|bc_all;}
else { announce "[ Охота ] : "+strcharinfo(0)+" убил MVP "+getmonsterinfo(killedrid,0)+"! К сожалению, в этот раз Coin не выпал.",bc_yellow|bc_all;}
announce "[ Охота ] : "+strcharinfo(0)+" уже убил "+mvp+" MVP и заработал на этом "+coins+" Коина(ов)!",bc_yellow|bc_all;}
if (sex == 0){ if (@chance > 90){ announce "[ Охота ] : "+strcharinfo(0)+" убилa MVP "+getmonsterinfo(killedrid,0)+"! В награду она получает 1 Coin!",bc_yellow|bc_all;}
else { announce "[ Охота ] : "+strcharinfo(0)+" убилa MVP "+getmonsterinfo(killedrid,0)+"! К сожалению, в этот раз Coin не выпал.",bc_yellow|bc_all;}
announce "[ Охота ] : "+strcharinfo(0)+" уже убилa "+mvp+" MVP и заработала на этом "+coins+" Коина(ов)!",bc_yellow|bc_all;}
}//MVP
set $rand,rand(1000);
if ($rand == 1){
announce "'"+strcharinfo(0)+"' won "+getmonsterinfo(killedrid,0)+"'s 3 Coins (chance: 0.10%)",bc_yellow|bc_all;
getitem 7606,3;
}
end;}
end;
}
Автор: Gr1nS1de: Дата: 02.14.2010
Цитата Мяфк;20190:- script drop_s_mobov -1,{
OnNPCKillEvent:
set @rand,rand(1,100);
if(@rand<=100)getitem 20027,1;
end;
}
}
Так должно работать.
Автор: Мяфк: Дата: 02.14.2010
Gr1nS1de, не понял твоего поста.
Автор: Aaron: Дата: 02.14.2010
Он походу дела имел в виду:
"Забыл, что нужно было дать на убийство любого моба, а не указанных"
:)
Автор: Мяфк: Дата: 02.14.2010
Перевёл, ты как переводчик (т.е. без смысла) Но всё понятно.