Перейти к содержанию
Авторизация  
Sania

Скрипт На Дроп По Пати

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

Всем привет. Ребят, поделитесь скриптом в каком можно будет вписать несколько итемов которые будут дропаться рандомно на пати. Скрипт нужен для сборки ПВ. Или может быть есть кто может переделать скрипт, есть похожий но там можно вписать только 1 итем.

Поделиться сообщением


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

Всем привет. Ребят, поделитесь скриптом в каком можно будет вписать несколько итемов которые будут дропаться рандомно на пати. Скрипт нужен для сборки ПВ. Или может быть есть кто может переделать скрипт, есть похожий но там можно вписать только 1 итем.

 

Ну дык замени в готовом 1 итем на лист/массив итемов со всеми изменениями касательно выпадения.

  • Upvote 1

Поделиться сообщением


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

Ну дык замени в готовом 1 итем на лист/массив итемов со всеми изменениями касательно выпадения.

просто я в этом направлении далековат)

вот обработка когда убили

 

def onKill(self,npc,player,isPet):

party = player.getParty()

if party:

for member in party.getPartyMembers():

if not member.isAlikeDead():

member.addItem("partydrop", ITEMID, ITEMCOUNT, member, True)

else:

player.addItem("partydrop", ITEMID, ITEMCOUNT, player, True)

return

 

QUEST = partydrop(-1, qn, "ai")

 

QUEST.addKillId(BOSSID)

Изменено пользователем Sania

Поделиться сообщением


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

int[] ITEMIDS = new int[]{ид,ид,ид}

 

if not member.isAlikeDead():

for(int item : ITEMIDS)

{

member.addItem("partydrop", item, ITEMCOUNT, member, True);

}

Надо же немного логику использовать

 

 

Хотя не знаю, как используется for each в питоне.

Изменено пользователем AwakenDev
  • Upvote 1

Поделиться сообщением


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

скачать не откажусь от спасибо предназначено для pwsoft

 

открываешь ява скрип там вписывавеш ид босса или моба каво хочешь в базе в самом конце ставишь full_party как то так и все дроп всему пати:)

Изменено пользователем adidas

Поделиться сообщением


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

скачать не откажусь от спасибо предназначено для pwsoft

 

открываешь ява скрип там вписывавеш ид босса или моба каво хочешь в базе в самом конце ставишь full_party как то так и все дроп всему пати :)

 

Красава :D Тоже самое кинул :D

Поделиться сообщением


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

скачать не откажусь от спасибо предназначено для pwsoft

 

открываешь ява скрип там вписывавеш ид босса или моба каво хочешь в базе в самом конце ставишь full_party как то так и все дроп всему пати :)

я этот скрипт хочю перделать)

Поделиться сообщением


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

под че

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

Поделиться сообщением


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

просто тоже самое же просто partydrop1 partydrop2 partydrop3 и тому подобное

Поделиться сообщением


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

 

 

package custom.core;

import ru.catssoftware.gameserver.model.actor.instance.L2NpcInstance;
import ru.catssoftware.gameserver.model.actor.instance.L2PcInstance;
import ru.catssoftware.gameserver.model.quest.Quest;

import java.util.Random;

public class PartyDropV2 extends Quest {

public static String qn = "10001_PartyDropV2";

// ID Монстров (Разделяются запятой).
   private int[] MONSTERS_ID = { 29046, 25450, 25114 };
   // ID Предмета, который будет использован в качестве дропа.
   private int[] DROP_29046 = { 15001, 15002, 15007, 15006 ,15000, 15005, 15003,
9416, 9421, 9422, 9423, 9424, 9425, 9428, 9429, 9430, 9431, 9432, 10000, 10001, 10002,
9437, 9438, 9439, 9440, 15009, 10075, 10076, 13012, 10003, 10004, 10005, 10006, 10007,
15350, 15351, 15352, 15353, 15354, 15355, 15356, 10008, 10009, 10010, 10011, 10012,
15357 };

private int[] DROP_25114 = { 13017, 13016, 13020 };
   // Количество дропа.
   private int ITEM_COUNT = 1;
   // Давать награду всей пати ?
   private boolean REWARD_PARTY = true;
Random rand = new Random();

   public PartyDropV2()
   {
       super(-1, qn, "PartyDropV2");
       for (int id : MONSTERS_ID)
addKillId(id);
   }

   @Override
   public String onKill(L2NpcInstance npc, L2PcInstance killer, boolean isPet)
   {
       if(REWARD_PARTY)
       {
           if(killer.getParty() != null)
           {
               for(L2PcInstance member : killer.getParty().getPartyMembers())
               {
                   member.addItem("ADD PARTY ITEM", revardRoll(npc.getNpcId()), ITEM_COUNT, member, true);
                   member.sendMessage("Вы получили награду за убийство РБ!");
               }
           }
           else
           {
               killer.addItem("ADD PLAYER ITEM", revardRoll(npc.getNpcId()), ITEM_COUNT, killer, true);
               killer.sendMessage("Вы получили награду за убийство РБ!");
           }
       }
       else
       {
           killer.addItem("ADD PLAYER ITEM", revardRoll(npc.getNpcId()), ITEM_COUNT, killer, true);
           killer.sendMessage("Вы получили награду за РБ!");
       }
       return null;
   }

private int revardRoll(int mob_id)
{
switch(mob_id)
{
case 29046:
return DROP_29046[rand.nextInt(DROP_29046.length)];
case 25450:
return 13010;
case 25114:
return DROP_25114[rand.nextInt(DROP_25114.length)];
default: 
}
return 0;
}


public static void main(String[] args)
{
new PartyDropV2();
}
}    

 

 

Держи, осталось только под пв поправить.

  • Upvote 1

Поделиться сообщением


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

просто тоже самое же просто partydrop1 partydrop2 partydrop3 и тому подобное

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

Поделиться сообщением


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

 

 

package custom.core;

import ru.catssoftware.gameserver.model.actor.instance.L2NpcInstance;
import ru.catssoftware.gameserver.model.actor.instance.L2PcInstance;
import ru.catssoftware.gameserver.model.quest.Quest;

import java.util.Random;

public class PartyDropV2 extends Quest {

public static String qn = "10001_PartyDropV2";

// ID Монстров (Разделяются запятой).
private int[] MONSTERS_ID = { 29046, 25450, 25114 };
// ID Предмета, который будет использован в качестве дропа.
private int[] DROP_29046 = { 15001, 15002, 15007, 15006 ,15000, 15005, 15003,
9416, 9421, 9422, 9423, 9424, 9425, 9428, 9429, 9430, 9431, 9432, 10000, 10001, 10002,
9437, 9438, 9439, 9440, 15009, 10075, 10076, 13012, 10003, 10004, 10005, 10006, 10007,
15350, 15351, 15352, 15353, 15354, 15355, 15356, 10008, 10009, 10010, 10011, 10012,
15357 };

private int[] DROP_25114 = { 13017, 13016, 13020 };
// Количество дропа.
private int ITEM_COUNT = 1;
// Давать награду всей пати ?
private boolean REWARD_PARTY = true;
Random rand = new Random();

public PartyDropV2()
{
super(-1, qn, "PartyDropV2");
for (int id : MONSTERS_ID)
addKillId(id);
}

@Override
public String onKill(L2NpcInstance npc, L2PcInstance killer, boolean isPet)
{
if(REWARD_PARTY)
{
if(killer.getParty() != null)
{
for(L2PcInstance member : killer.getParty().getPartyMembers())
{
member.addItem("ADD PARTY ITEM", revardRoll(npc.getNpcId()), ITEM_COUNT, member, true);
member.sendMessage("Вы получили награду за убийство РБ!");
}
}
else
{
killer.addItem("ADD PLAYER ITEM", revardRoll(npc.getNpcId()), ITEM_COUNT, killer, true);
killer.sendMessage("Вы получили награду за убийство РБ!");
}
}
else
{
killer.addItem("ADD PLAYER ITEM", revardRoll(npc.getNpcId()), ITEM_COUNT, killer, true);
killer.sendMessage("Вы получили награду за РБ!");
}
return null;
}

private int revardRoll(int mob_id)
{
switch(mob_id)
{
case 29046:
return DROP_29046[rand.nextInt(DROP_29046.length)];
case 25450:
return 13010;
case 25114:
return DROP_25114[rand.nextInt(DROP_25114.length)];
default:
}
return 0;
}


public static void main(String[] args)
{
new PartyDropV2();
}
}

 

 

Держи, осталось только под пв поправить.

дроп будет одной вещи со всех написаных?

Поделиться сообщением


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

private int ITEM_COUNT = 1;

Если что

Изменено пользователем desolator

Поделиться сообщением


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

private int ITEM_COUNT = 1;

Если что

я не за количество спрашивал а за то что дроп будет одной вещи из списка введеных ид или всех вещей списка ид но в количестве 1?

Поделиться сообщением


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

из списка введеных ид или всех вещей списка ид но в количестве 1?

Поделиться сообщением


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

из списка введеных ид или всех вещей списка ид но в количестве 1?

т.е. вписал я например таки ид: 111(яблоки),222(груши),333(клубника),444(вишни). Вопрос, дроп будет каждой вещи по 1 т.е. после убийства рб будет 1 яблоко, 1 груша, 1 вишня, 1 клубника?или будет на выбор либо 1 вишня, либо 1 клубника, либо 1 груша, либо 1 яблоко?))

Поделиться сообщением


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

т.е. вписал я например таки ид: 111(яблоки),222(груши),333(клубника),444(вишни). Вопрос, дроп будет каждой вещи по 1 т.е. после убийства рб будет 1 яблоко, 1 груша, 1 вишня, 1 клубника?или будет на выбор либо 1 вишня, либо 1 клубника, либо 1 груша, либо 1 яблоко?))

Да.

Поделиться сообщением


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

Да.

 

Ахахахахаха :D

 

Вопрос: Будет это или это?

Ответ: Да.

Поделиться сообщением


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

я не за количество спрашивал а за то что дроп будет одной вещи из списка введеных ид или всех вещей списка ид но в количестве 1?

Все итимы выдадутся игрокам в пати в количестве count

Поделиться сообщением


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

Все итимы выдадутся игрокам в пати в количестве count

как сделать чтоб 1 из всех выдался?

Поделиться сообщением


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

тебе надо поставить этому нпс дроп через droplist ну или через игру не знаю и кто будут в пати тому всему пати кто без пати тому без пати дроп

Изменено пользователем adidas

Поделиться сообщением


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

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...