Donate Shop [Lucera] - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Пользователи Календарь Все разделы прочитаны
Вернуться   Форум администраторов игровых серверов > MMO > Lineage II

Lineage II
Дискуссии на тему создания, настройки и обслуживания серверов Lineage 2. При поддержке: Премиум услуги по рекламе

Ответ
Опции темы
Непрочитано 10.03.2014, 14:29   #1
Пользователь

Автор темы (Топик Стартер) Donate Shop [Lucera]

Всем доброго времени суток.
Хочу сделать простенький Донат Шоп, на сборке Lucera.

А именно:

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

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

Собственно вопрос:
Как открепить НПЦ от эвента?
И как активировать его интерфейс?
labrador116 вне форума Ответить с цитированием
Непрочитано 10.03.2014, 14:43   #2
Аватар для [Shadow]
Герой

По умолчанию Re: Donate Shop на Lucera

Сделайте нового НПЦ с template_id данного кота, в чем проблема?
[Shadow] вне форума Отправить сообщение для [Shadow] с помощью ICQ Отправить сообщение для [Shadow] с помощью Skype™ Ответить с цитированием
Непрочитано 10.03.2014, 15:25   #3
Пользователь

Автор темы (Топик Стартер) Re: Donate Shop на Lucera

Цитата:
Сообщение от [Shadow] Посмотреть сообщение
Сделайте нового НПЦ с template_id данного кота, в чем проблема?
Каким образом можно привязать к нему определенное htm окно?
labrador116 вне форума Ответить с цитированием
Непрочитано 10.03.2014, 15:56   #4
Аватар для SoFace
Участник

По умолчанию Re: Donate Shop на Lucera

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

Автор темы (Топик Стартер) Re: Donate Shop на Lucera

Цитата:
Сообщение от SoFace Посмотреть сообщение
Обычно id главного диалога соответствует указанному id npc'а.
Или же можно написать отдельный скрипт для вашего npc и в нём указать путь до диалога (Можно делать по примеру скрипта баффера от Коли).
А пример можно какой либо?
labrador116 вне форума Ответить с цитированием
Непрочитано 10.03.2014, 16:13   #6
Аватар для [Shadow]
Герой

По умолчанию Re: Donate Shop на Lucera

Цитата:
Сообщение от labrador116 Посмотреть сообщение
А пример можно какой либо?
Создаете в custom_npc запись с type=L2Npc, свою html кидаете в data/html/default/idnpc.html
[Shadow] вне форума Отправить сообщение для [Shadow] с помощью ICQ Отправить сообщение для [Shadow] с помощью Skype™ Ответить с цитированием
Непрочитано 10.03.2014, 16:26   #7
Аватар для SoFace
Участник

По умолчанию Re: Donate Shop на Lucera

Цитата:
Сообщение от labrador116 Посмотреть сообщение
А пример можно какой либо?
Эм..)
Написал небольшой скрипт Обменника на скорую руку.
З.Ы. - Скрипт под 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";
	}
}
SoFace вне форума Ответить с цитированием
Непрочитано 10.03.2014, 17:48   #8
Пользователь

Автор темы (Топик Стартер) Re: Donate Shop [Lucera]

Спасибо ребят.

А через Донат шоп реально покупку премиума оформить? Или только через сайт?
labrador116 вне форума Ответить с цитированием
Непрочитано 10.03.2014, 18:28   #9
Аватар для NotSpecified
Олдфаг

По умолчанию Re: Donate Shop [Lucera]

Магазин свободно может вносить нужные изменения в базу наравне со скриптами сайта. Разница лишь в методе реализации. Через сайт быстрее за счет прямого доступа и элементарного скрипта, скрипты же в игре надо уметь писать.
NotSpecified вне форума Ответить с цитированием
Непрочитано 10.03.2014, 23:37   #10
Пользователь

Автор темы (Топик Стартер) Re: Donate Shop [Lucera]

Написал мультиссел, а он почему то не работает, открывает пустое окно и в логах серва ошибки.






Не подскажите, в чем проблема?
labrador116 вне форума Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Item Mall/Prime Shop что такое и с чем его едят? VISTALL Lineage II 152 18.02.2021 12:01
Donate Shop для PTS Interlude Ifcreative Рынок / Marketplace 4 11.01.2013 06:23
Item Mall / Prime Shop L2jServer Freya High Five Part 5 Blackmau5 Lineage II 9 15.12.2012 17:22
Импорты. MegaPvP Lineage II 3 28.03.2011 19:06
Адаптируем SQL BimBom Работа со скриптами 9 14.10.2009 15:14


© 2007–2022 «Форум администраторов игровых серверов»
Защита сайта от DDoS атак — StormWall
Работает на Булке неизвестной версии с переводом от zCarot
Текущее время: 13:58. Часовой пояс GMT +3.

Вверх