Боты по Acis

Dovonext

Lineage 2
Участник
Сообщения
129
Розыгрыши
0
Решения
1
Репутация
66
Реакции
18
Баллы
183
Хроники
  1. Interlude
Исходники
Присутствуют
Сборка
rusacis
Добрые люди , есть у кого боты под Acis ? Которые умеют говорить , торговать , пвп и кач ? Или может кто знает где взять. Сами по себе у меня боты есть. на 50% реализована продажа и покупка , так же кач , не могу заставить их говорить. И нормально покупать.
 

Для етого есть раздел Ищу исполнителя
В нем на 90% уверен, найдеш то, что тебе нужно.
 
Для етого есть раздел Ищу исполнителя
В нем на 90% уверен, найдеш то, что тебе нужно.
Спасибо за дельный совет :D. Решил вопрос с их разговорами.

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

Java:
package net.sf.l2j.gameserver.custom.bot.ai.store;

import java.util.ArrayList;
import java.util.List;

import net.sf.l2j.commons.random.Rnd;

import net.sf.l2j.Config;
import net.sf.l2j.gameserver.custom.bot.FakePlayer;
import net.sf.l2j.gameserver.custom.bot.ai.FakePlayerAI;
import net.sf.l2j.gameserver.enums.actors.OperateType;
import net.sf.l2j.gameserver.fakeplayer.util.PhantomPlayerUtils;
import net.sf.l2j.gameserver.network.serverpackets.PrivateStoreMsgBuy;

public class PrivateStoreBuyAI extends FakePlayerAI
{
    public PrivateStoreBuyAI(FakePlayer character)
    {
        super(character);
        setup();
    }
   
    @Override
    public void setup()
    {
        _fakePlayer.setRunning(true);
    }
   
    @Override
    public void thinkAndAct()
    {
        setBusyThinking(true);
        handleDeath();
       
        if ((Config.PHANTOM_PRIVATE_STORE))
        {
            _fakePlayer.addItem(":", 57, 1000000000, _fakePlayer, false);
            _fakePlayer.getBuyList().addItemByItemId(getPrivateBuy(), 1, Rnd.get(1000, 24678), 0);
           
            _fakePlayer.getBuyList().setTitle(getPrivateBuy_Title());
            _fakePlayer.sitDown();
            _fakePlayer.setOperateType(OperateType.BUY);
            _fakePlayer.getBuyList().setPackaged(OperateType.BUY == OperateType.BUY_MANAGE);
            _fakePlayer.broadcastUserInfo();
            _fakePlayer.broadcastPacket(new PrivateStoreMsgBuy(_fakePlayer));
        }
       
        if (Rnd.nextInt(80) == 0)
            PhantomPlayerUtils.maybeTrade(_fakePlayer);
    }
   
    static int getPrivateBuy()
    {
        return Config.LIST_PRIVATE_BUY.get(Rnd.get(Config.LIST_PRIVATE_BUY.size())).intValue();
    }
   
    static final List<String> listMsgBuy = new ArrayList<>();
   
    static String getPrivateBuy_Title()
    {
        String msg = Config.PHANTOM_PRIVATE_BUY_TITLE.get(Rnd.get(Config.PHANTOM_PRIVATE_BUY_TITLE.size()));
       
        if (listMsgBuy.contains(msg))
        {
            boolean gerar = true;
            while (gerar)
            {
                msg = Config.PHANTOM_PRIVATE_BUY_TITLE.get(Rnd.get(Config.PHANTOM_PRIVATE_BUY_TITLE.size()));
                if (!listMsgBuy.contains(msg))
                {
                    listMsgBuy.add(msg);
                    gerar = false;
                    return msg;
                }
                if (listMsgBuy.size() == Config.PHANTOM_PRIVATE_BUY_TITLE.size())
                {
                    gerar = false;
                    return "";
                }
            }
        }
        else if (!listMsgBuy.contains(msg))
        {
            listMsgBuy.add(msg);
            return msg;
        }
        return msg;
    }
}

Java:
package net.sf.l2j.gameserver.custom.bot.ai.store;

import java.util.ArrayList;
import java.util.List;

import net.sf.l2j.commons.random.Rnd;

import net.sf.l2j.Config;
import net.sf.l2j.gameserver.custom.bot.FakePlayer;
import net.sf.l2j.gameserver.custom.bot.ai.FakePlayerAI;
import net.sf.l2j.gameserver.enums.actors.OperateType;
import net.sf.l2j.gameserver.fakeplayer.util.PhantomPlayerUtils;
import net.sf.l2j.gameserver.model.item.instance.ItemInstance;
import net.sf.l2j.gameserver.network.serverpackets.PrivateStoreMsgSell;

public class PrivateStoreSellAI extends FakePlayerAI
{
    public PrivateStoreSellAI(FakePlayer character)
    {
        super(character);
        setup();
    }
   
    @Override
    public void setup()
    {
        _fakePlayer.setRunning(true);
    }
   
    @Override
    public void thinkAndAct()
    {
        setBusyThinking(true);
        handleDeath();
       
        if ((Config.PHANTOM_PRIVATE_STORE))
        {
            _fakePlayer.addItem(":", getPrivateSell(), 1, _fakePlayer, true);
            for (ItemInstance itemDrop : _fakePlayer.getInventory().getItems())
                _fakePlayer.getSellList().addItem(itemDrop.getObjectId(), 1, Rnd.get(100456789, 150456789));
           
            _fakePlayer.getSellList().setTitle(getPrivateSell_Title());
            _fakePlayer.getSellList().setPackaged(OperateType.SELL == OperateType.PACKAGE_SELL);
            _fakePlayer.sitDown();
            _fakePlayer.setOperateType(OperateType.SELL);
            _fakePlayer.broadcastUserInfo();
            _fakePlayer.broadcastPacket(new PrivateStoreMsgSell(_fakePlayer));
            _fakePlayer.sendMessage("Privet");
            if (Rnd.nextInt(80) == 0)
                PhantomPlayerUtils.maybeTrade(_fakePlayer);
        }
    }
   
    static int getPrivateSell()
    {
        return Config.LIST_PRIVATE_SELL.get(Rnd.get(Config.LIST_PRIVATE_SELL.size())).intValue();
    }
   
    static final List<String> listMsgSell = new ArrayList<>();
   
    static String getPrivateSell_Title()
    {
        String msg = Config.PHANTOM_PRIVATE_SELL_TITLE.get(Rnd.get(Config.PHANTOM_PRIVATE_SELL_TITLE.size()));
       
        if (listMsgSell.contains(msg))
        {
            boolean gerar = true;
            while ((listMsgSell.size() < Config.PHANTOM_PRIVATE_SELL_TITLE.size()) && (gerar))
            {
                msg = Config.PHANTOM_PRIVATE_SELL_TITLE.get(Rnd.get(Config.PHANTOM_PRIVATE_SELL_TITLE.size()));
                if (!listMsgSell.contains(msg))
                {
                    listMsgSell.add(msg);
                    gerar = false;
                    return msg;
                }
                if (listMsgSell.size() == Config.PHANTOM_PRIVATE_SELL_TITLE.size())
                {
                    gerar = false;
                    return "";
                }
            }
        }
        else if (!listMsgSell.contains(msg))
        {
            listMsgSell.add(msg);
            return msg;
        }
        return msg;
    }
}
 
Назад
Сверху Снизу