Рейтинг темы:
  • 1 Голос(ов) - 1 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
Donate Shop [Lucera]
#1
Всем доброго времени суток.
Хочу сделать простенький Донат Шоп, на сборке Lucera.

А именно:

Взять кота "Roy the cat" id 31228, поменять его html-ки и с помощью мультиселлов реализовать обмен, донат монеты на какую либо вещь.

Проблема в том, что этот НПЦ подключен к медальному эвенту и когда я его спавню его интерфейс попросту не открывается, вообще ничего не происходит.

Собственно вопрос:
Как открепить НПЦ от эвента?
И как активировать его интерфейс?
Ответ
#2
Сделайте нового НПЦ с template_id данного кота, в чем проблема?
Ответ
#3
[Shadow];356013 Написал:Сделайте нового НПЦ с template_id данного кота, в чем проблема?

Каким образом можно привязать к нему определенное htm окно?
Ответ
#4
labrador116 Написал:Каким образом можно привязать к нему определенное htm окно?
Обычно id главного диалога соответствует указанному id npc'а.
Или же можно написать отдельный скрипт для вашего npc и в нём указать путь до диалога (Можно делать по примеру скрипта баффера от Коли).
Ответ
#5
SoFace Написал:Обычно id главного диалога соответствует указанному id npc'а.
Или же можно написать отдельный скрипт для вашего npc и в нём указать путь до диалога (Можно делать по примеру скрипта баффера от Коли).

А пример можно какой либо?
Ответ
#6
labrador116 Написал:А пример можно какой либо?
Создаете в custom_npc запись с type=L2Npc, свою html кидаете в data/html/default/idnpc.html
Ответ
#7
labrador116 Написал:А пример можно какой либо?
Эм..)
Написал небольшой скрипт Обменника на скорую руку. Smile
З.Ы. - Скрипт под aCis. Но тут показаны все основные моменты.
Код:
package l2s.gameserver.scripts.custom;

import l2s.gameserver.model.actor.L2Npc;
import l2s.gameserver.model.actor.instance.L2PcInstance;
import l2s.gameserver.model.quest.Quest;
import l2s.gameserver.model.quest.QuestState;
import l2s.gameserver.network.serverpackets.InventoryUpdate;

/**
* @author SoFace
*/
public class Exchanger extends Quest
{
    private static final int Exchanger = 31228; // ID NPC'а.
    
    private static String html_base = "data/html/mods/Exchanger/Exchanger"; // Путь до диалогов.
    
    // Обмениваемый предмет:
    private static final int exchange_itemId = 57;
    private static final int exchange_countItems = 50000;
    
    // Получаемый предмет::
    private static final int receive_itemId = 4037;
    private static final int receive_countItems = 1;
    
    public Exchanger(int questId, String name, String descr)
    {
        super(questId, name, descr);
        
        addStartNpc(Exchanger);
        addFirstTalkId(Exchanger);
        addTalkId(Exchanger);
    }
    
    @Override
    public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
    {
        QuestState st = player.getQuestState(getName());
        
        if (event.equals("exchange"))
        {
            st.takeItems(exchange_itemId, exchange_countItems);
            st.giveItems(receive_itemId, receive_countItems);
            InventoryUpdate iu = new InventoryUpdate();
            player.sendPacket(iu);
            return html_base + "-Success.htm";
        }
        
        return html_base + ".html";
    }
    
    @Override
    public String onFirstTalk(L2Npc npc, L2PcInstance player)
    {
        if (player.getQuestState(getName()) == null)
            newQuestState(player);
        
        // Различные проверки.
        else if (player.isInCombat() || player.getPvpFlag() == 1 || player.getKarma() != 0 || player.isDead())
            return html_base + "-NoTalk.htm";
        
        return html_base + ".htm";
    }
}
Ответ
#8
Спасибо ребят.

А через Донат шоп реально покупку премиума оформить? Или только через сайт?
Ответ
#9
Магазин свободно может вносить нужные изменения в базу наравне со скриптами сайта. Разница лишь в методе реализации. Через сайт быстрее за счет прямого доступа и элементарного скрипта, скрипты же в игре надо уметь писать.
Ответ
#10
Написал мультиссел, а он почему то не работает, открывает пустое окно и в логах серва ошибки.


[Изображение: tchHdWku.jpg]

[Изображение: 2Tx1mLKk.jpg]

Не подскажите, в чем проблема?
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  Item Mall/Prime Shop что такое и с чем его едят? VISTALL 152 119,668 02-18-2021, 12:01 PM
Последний пост: RyslanS
  Lucera 2 r658 Source n3k0nation 3 4,981 02-23-2018, 09:08 PM
Последний пост: Pastorious
  Шара: Lucera 2 (actual source) Ro_0TT 142 84,323 08-05-2016, 11:24 PM
Последний пост: Emperor
  CommunityBoard + GM Shop реализация michail_ST 5 1,861 04-21-2016, 01:20 PM
Последний пост: flopix
  Продам скрипт nextpay для lucera с автоматическим логированием setforstyle 4 1,797 04-09-2016, 02:29 PM
Последний пост: Shed
  Lucera 2 SOURCE (RC 7.4) Ro_0TT 73 29,442 02-27-2016, 07:12 PM
Последний пост: Shed
  Source Lucera 2.0+ DiName 0 954 10-18-2015, 02:53 PM
Последний пост: DiName
  Компиляция Lucera 2 Athlete2 1 2,217 08-23-2015, 01:34 AM
Последний пост: Deazer
  Lucera 2 Htm cache (ehcache) n3k0nation 0 2,320 06-21-2015, 10:08 PM
Последний пост: n3k0nation
  Проблема авторизации после дисконекта Lucera 1.7 IOns 1 1,565 05-03-2015, 02:43 AM
Последний пост: Alcapone

Перейти к форуму:


Пользователи, просматривающие эту тему: 1 Гость(ей)