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

Ещё Разок

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

Ребата, помогите пожалуйста, уже раньше открывал такую тему но не помогло и не кто не ответил

Я хочу сделать через НПС чтобы профу можно было сменить, ну через ГМ ШОП

Подскажите пожалуйста код в исходах и код в хтмл

Сборка L2jLink 1.4.0 - Хроники Interlude

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


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

+1.. тоже интересно как это реализовать

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


Ссылка на сообщение
Поделиться на другие сайты
Ребата, помогите пожалуйста, уже раньше открывал такую тему но не помогло и не кто не ответил

Я хочу сделать через НПС чтобы профу можно было сменить, ну через ГМ ШОП

Подскажите пожалуйста код в исходах и код в хтмл

Сборка L2jLink 1.4.0 - Хроники Interlude

 

Профу в смысле сабб класс взять и т.д ?

Или взять профу конкретно по прокачке

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


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

 

Интерлюди ?

Если да, то можно вставить в html окна просто код который адресует на получение профессии .

Если же дапустим ХФ , можно реализовать через сервисы.

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


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

Я искал класс мастера но не нашёл, хотел взять код

Может вы подскажите код на получение профессии

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


Ссылка на сообщение
Поделиться на другие сайты
Я искал класс мастера но не нашёл, хотел взять код

Может вы подскажите код на получение профессии

 

Выглядит это примерно так :

 

Скрытый текст
<html><body>

<center><font color="009900">Смена професси для Human Fighter</font></center><br>

<a action="bypass -h npc_%objectId%_change_class 1">Продолжить за Warrior</a><br>

<a action="bypass -h npc_%objectId%_change_class 4">Продолжить за Knight</a><br>

<a action="bypass -h npc_%objectId%_change_class 7">Продолжить за Rogue</a>

</body></html>

 

Найти это можно по адресу :

 

\gameserver\data\html\classmaster

 

Дальше думаю сам допетришь .

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


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

У меня такой нету - \html\classmaster

сама папка classmaster

 

Ого а можно просто так сделать

<a action="bypass -h npc_%objectId%_change_class 1">1 Профессия</a><br>

<a action="bypass -h npc_%objectId%_change_class 2">2 Профессия</a><br>

<a action="bypass -h npc_%objectId%_change_class 3">3 Профессия</a><br>

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


Ссылка на сообщение
Поделиться на другие сайты
У меня такой нету - \html\classmaster

сама папка classmaster

 

Ого а можно просто так сделать

<a action="bypass -h npc_%objectId%_change_class 1">1 Профессия</a><br>

<a action="bypass -h npc_%objectId%_change_class 2">2 Профессия</a><br>

<a action="bypass -h npc_%objectId%_change_class 3">3 Профессия</a><br>

 

Попробуй.

Протести .

Про идее должно работать, но сам класс мастер идет по такому принципу :

Находит твою профу , а затем перенааправляет на нужный html с твоей профой .

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


Ссылка на сообщение
Поделиться на другие сайты
<a action="bypass -h npc_%objectId%_change_class 1">1 Профессия</a><br>

<a action="bypass -h npc_%objectId%_change_class 2">2 Профессия</a><br>

<a action="bypass -h npc_%objectId%_change_class 3">3 Профессия</a><br>

1, 2 и 3 это айди классов

 

По теме:

Возможно у ТСа классмастер в ядре, если есть сорцы, то пиши - помогу.

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


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

бай пас делай в инстансе поищи в моих постах старых если очень нужно)

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


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

При компиляции идёт такая ошибка

	[javac] C:\Documents and Settings\Admin\Рабочий стол\L2jLink 1.4.0\gameserver\head-src\com\l2jfrozen\gameserver\model\actor\instance\L2MerchantInstance.java:154: ';' expected
[javac] 	public void onBypassFeedback(L2PcInstance player, String command)
[javac] 																										^
[javac] 1 error

 

Если я сделаю

public void onBypassFeedback(L2PcInstance player, String command);

Даёт такие ошибки:

	[javac] C:\Documents and Settings\Admin\Рабочий стол\L2jLink 1.4.0\gameserver\head-src\com\l2jfrozen\gameserver\model\actor\instance\L2MerchantInstance.java:155: illegal start of type
[javac] else if(command.startsWith("ololo"){
[javac] ^
[javac] C:\Documents and Settings\Admin\Рабочий стол\L2jLink 1.4.0\gameserver\head-src\com\l2jfrozen\gameserver\model\actor\instance\L2MerchantInstance.java:155: ';' expected
[javac] else if(command.startsWith("ololo"){
[javac]	 ^
[javac] C:\Documents and Settings\Admin\Рабочий стол\L2jLink 1.4.0\gameserver\head-src\com\l2jfrozen\gameserver\model\actor\instance\L2MerchantInstance.java:155: illegal start of type
[javac] else if(command.startsWith("ololo"){
[javac]		^
[javac] C:\Documents and Settings\Admin\Рабочий стол\L2jLink 1.4.0\gameserver\head-src\com\l2jfrozen\gameserver\model\actor\instance\L2MerchantInstance.java:155: ';' expected
[javac] else if(command.startsWith("ololo"){
[javac]				^
[javac] C:\Documents and Settings\Admin\Рабочий стол\L2jLink 1.4.0\gameserver\head-src\com\l2jfrozen\gameserver\model\actor\instance\L2MerchantInstance.java:155: invalid method declaration; return type required
[javac] else if(command.startsWith("ololo"){
[javac]				 ^
[javac] C:\Documents and Settings\Admin\Рабочий стол\L2jLink 1.4.0\gameserver\head-src\com\l2jfrozen\gameserver\model\actor\instance\L2MerchantInstance.java:155: illegal start of type
[javac] else if(command.startsWith("ololo"){
[javac]							^
[javac] 6 errors

 

Кусок кода:

	@Override
public void onBypassFeedback(L2PcInstance player, String command)
else if(command.startsWith("ololo"){
if (((level >= 20 && jobLevel == 1 ) ||
			(level >= 40 && jobLevel == 2 )) && Config.ALLOW_CLASS_MASTERS)
		{
			showChatWindow(player, classId.getId());
		}
		else if (level >= 76 && Config.ALLOW_CLASS_MASTERS && classId.getId() < 88)
		{
			for (int i = 0; i < SECONDN_CLASS_IDS.length; i++)
			{
				if (classId.getId() == SECONDN_CLASS_IDS[i])
				{
					NpcHtmlMessage html = new NpcHtmlMessage(getObjectId());
					TextBuilder sb = new TextBuilder();
					sb.append("<html><body<table width=200>");
					sb.append("<tr><td><center>"+CharTemplateTable.getClassNameById(player.getClassId().getId())+" Class Master:</center></td></tr>");
					sb.append("<tr><td><br></td></tr>");
					sb.append("<tr><td><a action=\"bypass -h npc_"+getObjectId()+"_change_class "+(88+i)+"\">Advance to "+CharTemplateTable.getClassNameById(88+i)+"</a></td></tr>");
					sb.append("<tr><td><br></td></tr>");
					sb.append("</table></body></html>");
					html.setHtml(sb.toString());
					player.sendPacket(html);
					break;
				}
			}
		}
		else
		{
			NpcHtmlMessage html = new NpcHtmlMessage(getObjectId());
			TextBuilder sb = new TextBuilder();
			sb.append("<html><body>");
			switch (jobLevel)
			{
				case 1:
					sb.append("Come back here when you reach level 20 to change your class.<br>");
					break;
				case 2:
					sb.append("Come back here when you reach level 40 to change your class.<br>");
					break;
				case 3:
					sb.append("There are no more class changes for you.<br>");
					break;
			}

			for (Quest q : Quest.findAllEvents())
				sb.append("Event: <a action=\"bypass -h Quest "+q.getName()+"\">"+q.getDescr()+"</a><br>");

			sb.append("</body></html>");
			html.setHtml(sb.toString());
			player.sendPacket(html);
		}}
{

Засунул в - L2MerchantInstance

 

Что делать в этой сетуации помогите пожалуйста

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


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

	[javac] C:\Documents and Settings\Admin\Рабочий стол\L2jLink 1.4.0\gameserver\head-src\com\l2jfrozen\gameserver\model\actor\instance\L2MerchantInstance.java:154: ';' expected
[javac] 	public void onBypassFeedback(L2PcInstance player, String command)
[javac] 																										^
[javac] 1 error

 

Если я сделаю

public void onBypassFeedback(L2PcInstance player, String command);

Даёт такие ошибки:

	[javac] C:\Documents and Settings\Admin\Рабочий стол\L2jLink 1.4.0\gameserver\head-src\com\l2jfrozen\gameserver\model\actor\instance\L2MerchantInstance.java:155: illegal start of type
[javac] else if(command.startsWith("ololo"){
[javac] ^
[javac] C:\Documents and Settings\Admin\Рабочий стол\L2jLink 1.4.0\gameserver\head-src\com\l2jfrozen\gameserver\model\actor\instance\L2MerchantInstance.java:155: ';' expected
[javac] else if(command.startsWith("ololo"){
[javac]	 ^
[javac] C:\Documents and Settings\Admin\Рабочий стол\L2jLink 1.4.0\gameserver\head-src\com\l2jfrozen\gameserver\model\actor\instance\L2MerchantInstance.java:155: illegal start of type
[javac] else if(command.startsWith("ololo"){
[javac]		^
[javac] C:\Documents and Settings\Admin\Рабочий стол\L2jLink 1.4.0\gameserver\head-src\com\l2jfrozen\gameserver\model\actor\instance\L2MerchantInstance.java:155: ';' expected
[javac] else if(command.startsWith("ololo"){
[javac]				^
[javac] C:\Documents and Settings\Admin\Рабочий стол\L2jLink 1.4.0\gameserver\head-src\com\l2jfrozen\gameserver\model\actor\instance\L2MerchantInstance.java:155: invalid method declaration; return type required
[javac] else if(command.startsWith("ololo"){
[javac]				 ^
[javac] C:\Documents and Settings\Admin\Рабочий стол\L2jLink 1.4.0\gameserver\head-src\com\l2jfrozen\gameserver\model\actor\instance\L2MerchantInstance.java:155: illegal start of type
[javac] else if(command.startsWith("ololo"){
[javac]							^
[javac] 6 errors

 

Кусок кода:

	@Override
public void onBypassFeedback(L2PcInstance player, String command)
else if(command.startsWith("ololo"){
if (((level >= 20 && jobLevel == 1 ) ||
			(level >= 40 && jobLevel == 2 )) && Config.ALLOW_CLASS_MASTERS)
		{
			showChatWindow(player, classId.getId());
		}
		else if (level >= 76 && Config.ALLOW_CLASS_MASTERS && classId.getId() < 88)
		{
			for (int i = 0; i < SECONDN_CLASS_IDS.length; i++)
			{
				if (classId.getId() == SECONDN_CLASS_IDS[i])
				{
					NpcHtmlMessage html = new NpcHtmlMessage(getObjectId());
					TextBuilder sb = new TextBuilder();
					sb.append("<html><body<table width=200>");
					sb.append("<tr><td><center>"+CharTemplateTable.getClassNameById(player.getClassId().getId())+" Class Master:</center></td></tr>");
					sb.append("<tr><td><br></td></tr>");
					sb.append("<tr><td><a action=\"bypass -h npc_"+getObjectId()+"_change_class "+(88+i)+"\">Advance to "+CharTemplateTable.getClassNameById(88+i)+"</a></td></tr>");
					sb.append("<tr><td><br></td></tr>");
					sb.append("</table></body></html>");
					html.setHtml(sb.toString());
					player.sendPacket(html);
					break;
				}
			}
		}
		else
		{
			NpcHtmlMessage html = new NpcHtmlMessage(getObjectId());
			TextBuilder sb = new TextBuilder();
			sb.append("<html><body>");
			switch (jobLevel)
			{
				case 1:
					sb.append("Come back here when you reach level 20 to change your class.<br>");
					break;
				case 2:
					sb.append("Come back here when you reach level 40 to change your class.<br>");
					break;
				case 3:
					sb.append("There are no more class changes for you.<br>");
					break;
			}

			for (Quest q : Quest.findAllEvents())
				sb.append("Event: <a action=\"bypass -h Quest "+q.getName()+"\">"+q.getDescr()+"</a><br>");

			sb.append("</body></html>");
			html.setHtml(sb.toString());
			player.sendPacket(html);
		}}
{

Засунул в - L2MerchantInstance

 

Что делать в этой сетуации помогите пожалуйста

 

Оторвать себе руки. Форум создан для помощи (это значит, что вам помогут, а не сделают всё за вас). Учите основы программирования. Нечего лезть туда, если даже не представляете, что и как работает.

Изменено пользователем †DeMoN†™

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


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

эххх, поменять бы тебе глаза, я и не просил чтобы за меня сделали, я попросил чтобы мне помогли что и как, обьяснили и т.д

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


Ссылка на сообщение
Поделиться на другие сайты
эххх, поменять бы тебе глаза, я и не просил чтобы за меня сделали, я попросил чтобы мне помогли что и как, обьяснили и т.д

 

1. Мы на "ты" не переходили

2. Выглядит именно так, как я написал

3. И как уже писал, для решения вашей проблемы есть куча книг по программированию. Смысл заниматься тем, где не разбираетесь? Или учитесь, или платите.

 

 @Override
public void onBypassFeedback(L2PcInstance player, String command)
else if(command.startsWith("ololo"){
if (((level >= 20 && jobLevel == 1 ) ||

 

изменить на

 

 @Override
public void onBypassFeedback(L2PcInstance player, String command)
{
if(command.startsWith("ololo")
if (((level >= 20 && jobLevel == 1 ) ||

 

Возможно ещё что-то где-то. Весь код не смотрел.

Изменено пользователем †DeMoN†™

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


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

†DeMoN†™ Поверьте я знаю Java на 30-40 %, но не могу учить постоянно, время не позволяет,

И я так уже давно пробовал не получается, если бы я смог исправить бы, я бы не обращался на форум

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


Ссылка на сообщение
Поделиться на другие сайты
†DeMoN†™ Поверьте я знаю Java на 30-40 %, но не могу учить постоянно, время не позволяет,

И я так уже давно пробовал не получается, если бы я смог исправить бы, я бы не обращался на форум

если бы ты учил java хоть немного зал бы что это такое

(L2PcInstance player, String command)

это тоже самое что

showChatWindow(L2PcInstance, classId.getId());

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


Ссылка на сообщение
Поделиться на другие сайты
†DeMoN†™ Поверьте я знаю Java на 30-40 %, но не могу учить постоянно, время не позволяет,

И я так уже давно пробовал не получается, если бы я смог исправить бы, я бы не обращался на форум

30-40%, а до синтаксиса не дошли? :lol:

 

Скиньте под спойлер весь скрипт.

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


Ссылка на сообщение
Поделиться на другие сайты
Скрытый текст
/*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2, or (at your option)
* any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
* 02111-1307, USA.
*
* http://www.gnu.org/copyleft/gpl.html
*/
package com.l2jfrozen.gameserver.model.actor.instance;

import java.util.StringTokenizer;

import javolution.text.TextBuilder;

import com.l2jfrozen.Config;
import com.l2jfrozen.gameserver.controllers.TradeController;
import com.l2jfrozen.gameserver.model.L2TradeList;
import com.l2jfrozen.gameserver.model.multisell.L2Multisell;
import com.l2jfrozen.gameserver.network.L2GameClient;
import com.l2jfrozen.gameserver.network.serverpackets.ActionFailed;
import com.l2jfrozen.gameserver.network.serverpackets.BuyList;
import com.l2jfrozen.gameserver.network.serverpackets.MyTargetSelected;
import com.l2jfrozen.gameserver.network.serverpackets.NpcHtmlMessage;
import com.l2jfrozen.gameserver.network.serverpackets.Ride;
import com.l2jfrozen.gameserver.network.serverpackets.SellList;
import com.l2jfrozen.gameserver.network.serverpackets.StatusUpdate;
import com.l2jfrozen.gameserver.network.serverpackets.WearList;
import com.l2jfrozen.gameserver.templates.L2NpcTemplate;
import com.l2jfrozen.gameserver.model.actor.instance.L2ClassMasterInstance;
import com.l2jfrozen.gameserver.model.base.ClassLevel;
import com.l2jfrozen.gameserver.model.base.PlayerClass;

/**
* This class ...
*
* @version $Revision: 1.10.4.9 $ $Date: 2005/04/11 10:06:08 $
*/
public class L2MerchantInstance extends L2FolkInstance
{
//private static Logger _log = Logger.getLogger(L2MerchantInstance.class.getName());

/**
* @param template
*/
public L2MerchantInstance(int objectId, L2NpcTemplate template)
{
super(objectId, template);
}

@Override
public String getHtmlPath(int npcId, int val)
{
String pom = "";

if(val == 0)
{
pom = "" + npcId;
}
else
{
pom = npcId + "-" + val;
}

return "data/html/merchant/" + pom + ".htm";
}

private void showWearWindow(L2PcInstance player, int val)
{
player.tempInvetoryDisable();

if(Config.DEBUG)
{
_log.fine("Showing wearlist");
}

L2TradeList list = TradeController.getInstance().getBuyList(val);

if(list != null)
{
WearList bl = new WearList(list, player.getAdena(), player.getExpertiseIndex());
player.sendPacket(bl);
list = null;
bl = null;
}
else
{
_log.warning("no buylist with id:" + val);
player.sendPacket(ActionFailed.STATIC_PACKET);
}
}

private void showBuyWindow(L2PcInstance player, int val)
{
double taxRate = 0;

if(getIsInTown())
{
taxRate = getCastle().getTaxRate();
}

player.tempInvetoryDisable();

if(Config.DEBUG)
{
_log.fine("Showing buylist");
}

L2TradeList list = TradeController.getInstance().getBuyList(val);

if(list != null && list.getNpcId().equals(String.valueOf(getNpcId())))
{
BuyList bl = new BuyList(list, player.getAdena(), taxRate);
player.sendPacket(bl);
list = null;
bl = null;
}
else
{
_log.warning("possible client hacker: " + player.getName() + " attempting to buy from GM shop! (L2MechantInstance)");
_log.warning("buylist id:" + val);
}

player.sendPacket(ActionFailed.STATIC_PACKET);
}

private void showSellWindow(L2PcInstance player)
{
if(Config.DEBUG)
{
_log.fine("Showing selllist");
}

player.sendPacket(new SellList(player));

if(Config.DEBUG)
{
_log.fine("Showing sell window");
}

player.sendPacket(ActionFailed.STATIC_PACKET);
}

@Override
public void onBypassFeedback(L2PcInstance player, String command)
{
if(command.startsWith("ololo")
if (((level >= 20 && jobLevel == 1 ) ||
(level >= 40 && jobLevel == 2 )) && Config.ALLOW_CLASS_MASTERS)
{
showChatWindow(player, classId.getId());
}
else if (level >= 76 && Config.ALLOW_CLASS_MASTERS && classId.getId() < 88)
{
for (int i = 0; i < SECONDN_CLASS_IDS.length; i++)
{
if (classId.getId() == SECONDN_CLASS_IDS)
{
NpcHtmlMessage html = new NpcHtmlMessage(getObjectId());
TextBuilder sb = new TextBuilder();
sb.append("<html><body<table width=200>");
sb.append("<tr><td><center>"+CharTemplateTable.getClassNameById(player.getClassId().getId())+" Class Master:</center></td></tr>");
sb.append("<tr><td><br></td></tr>");
sb.append("<tr><td><a action=\"bypass -h npc_"+getObjectId()+"_change_class "+(88+i)+"\">Advance to "+CharTemplateTable.getClassNameById(88+i)+"</a></td></tr>");
sb.append("<tr><td><br></td></tr>");
sb.append("</table></body></html>");
html.setHtml(sb.toString());
player.sendPacket(html);
break;
}
}
}
else
{
NpcHtmlMessage html = new NpcHtmlMessage(getObjectId());
TextBuilder sb = new TextBuilder();
sb.append("<html><body>");
switch (jobLevel)
{
case 1:
sb.append("Come back here when you reach level 20 to change your class.<br>");
break;
case 2:
sb.append("Come back here when you reach level 40 to change your class.<br>");
break;
case 3:
sb.append("There are no more class changes for you.<br>");
break;
}

for (Quest q : Quest.findAllEvents())
sb.append("Event: <a action=\"bypass -h Quest "+q.getName()+"\">"+q.getDescr()+"</a><br>");

sb.append("</body></html>");
html.setHtml(sb.toString());
player.sendPacket(html);
}}
{
StringTokenizer st = new StringTokenizer(command, " ");
String actualCommand = st.nextToken(); // Get actual command

if(actualCommand.equalsIgnoreCase("Buy"))
{
if(st.countTokens() < 1)
return;

int val = Integer.parseInt(st.nextToken());
showBuyWindow(player, val);
}
else if(actualCommand.equalsIgnoreCase("Sell"))
{
showSellWindow(player);
}
else if(actualCommand.equalsIgnoreCase("RentPet"))
{
if(Config.ALLOW_RENTPET)
{
if(st.countTokens() < 1)
{
showRentPetWindow(player);
}
else
{
int val = Integer.parseInt(st.nextToken());
tryRentPet(player, val);
}
}
}
else if(actualCommand.equalsIgnoreCase("Wear") && Config.ALLOW_WEAR)
{
if(st.countTokens() < 1)
return;

int val = Integer.parseInt(st.nextToken());
showWearWindow(player, val);
}
else if(actualCommand.equalsIgnoreCase("Multisell"))
{
if(st.countTokens() < 1)
return;

int val = Integer.parseInt(st.nextToken());
L2Multisell.getInstance().SeparateAndSend(val, player, false, getCastle().getTaxRate());
}
else if(actualCommand.equalsIgnoreCase("Exc_Multisell"))
{
if(st.countTokens() < 1)
return;

int val = Integer.parseInt(st.nextToken());
L2Multisell.getInstance().SeparateAndSend(val, player, true, getCastle().getTaxRate());
}
else
{
// this class dont know any other commands, let forward
// the command to the parent class

super.onBypassFeedback(player, command);
}
st = null;
actualCommand = null;
}

public void showRentPetWindow(L2PcInstance player)
{
if(!Config.LIST_PET_RENT_NPC.contains(getTemplate().npcId))
return;

TextBuilder html1 = new TextBuilder("<html><body>Pet Manager:<br>");
html1.append("You can rent a wyvern or strider for adena.<br>My prices:<br1>");
html1.append("<table border=0><tr><td>Ride</td></tr>");
html1.append("<tr><td>Wyvern</td><td>Strider</td></tr>");
html1.append("<tr><td><a action=\"bypass -h npc_%objectId%_RentPet 1\">30 sec/1800 adena</a></td><td><a action=\"bypass -h npc_%objectId%_RentPet 11\">30 sec/900 adena</a></td></tr>");
html1.append("<tr><td><a action=\"bypass -h npc_%objectId%_RentPet 2\">1 min/7200 adena</a></td><td><a action=\"bypass -h npc_%objectId%_RentPet 12\">1 min/3600 adena</a></td></tr>");
html1.append("<tr><td><a action=\"bypass -h npc_%objectId%_RentPet 3\">10 min/720000 adena</a></td><td><a action=\"bypass -h npc_%objectId%_RentPet 13\">10 min/360000 adena</a></td></tr>");
html1.append("<tr><td><a action=\"bypass -h npc_%objectId%_RentPet 4\">30 min/6480000 adena</a></td><td><a action=\"bypass -h npc_%objectId%_RentPet 14\">30 min/3240000 adena</a></td></tr>");
html1.append("</table>");
html1.append("</body></html>");

insertObjectIdAndShowChatWindow(player, html1.toString());
html1 = null;
}

public void tryRentPet(L2PcInstance player, int val)
{
if(player == null || player.getPet() != null || player.isMounted() || player.isRentedPet())
return;
if(!player.disarmWeapons())
return;

int petId;
double price = 1;
int cost[] =
{
1800, 7200, 720000, 6480000
};
int ridetime[] =
{
30, 60, 600, 1800
};

if(val > 10)
{
petId = 12526;
val -= 10;
price /= 2;
}
else
{
petId = 12621;
}

if(val < 1 || val > 4)
return;

price *= cost[val - 1];
int time = ridetime[val - 1];

if(!player.reduceAdena("Rent", (int) price, player.getLastFolkNPC(), true))
return;

Ride mount = new Ride(player.getObjectId(), Ride.ACTION_MOUNT, petId);
player.broadcastPacket(mount);

player.setMountType(mount.getMountType());
player.startRentPet(time);
mount = null;
}

@Override
public void onActionShift(L2GameClient client)
{
L2PcInstance player = client.getActiveChar();
if(player == null)
return;

if(player.getAccessLevel().isGm())
{
player.setTarget(this);

MyTargetSelected my = new MyTargetSelected(getObjectId(), player.getLevel() - getLevel());
player.sendPacket(my);
my = null;

if(isAutoAttackable(player))
{
StatusUpdate su = new StatusUpdate(getObjectId());
su.addAttribute(StatusUpdate.CUR_HP, (int) getCurrentHp());
su.addAttribute(StatusUpdate.MAX_HP, getMaxHp());
player.sendPacket(su);
su = null;
}

NpcHtmlMessage html = new NpcHtmlMessage(getObjectId());
TextBuilder html1 = new TextBuilder("<html><body><table border=0>");
html1.append("<tr><td>Current Target:</td></tr>");
html1.append("<tr><td><br></td></tr>");

html1.append("<tr><td>Object ID: " + getObjectId() + "</td></tr>");
html1.append("<tr><td>Template ID: " + getTemplate().npcId + "</td></tr>");
html1.append("<tr><td><br></td></tr>");

html1.append("<tr><td>HP: " + getCurrentHp() + "</td></tr>");
html1.append("<tr><td>MP: " + getCurrentMp() + "</td></tr>");
html1.append("<tr><td>Level: " + getLevel() + "</td></tr>");
html1.append("<tr><td><br></td></tr>");

html1.append("<tr><td>Class: " + getClass().getName() + "</td></tr>");
html1.append("<tr><td><br></td></tr>");

//changed by terry 2005-02-22 21:45
html1.append("</table><table><tr><td><button value=\"Edit NPC\" action=\"bypass -h admin_edit_npc " + getTemplate().npcId + "\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"></td>");
html1.append("<td><button value=\"Kill\" action=\"bypass -h admin_kill\" width=40 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"></td></tr>");
html1.append("<tr><td><button value=\"Show DropList\" action=\"bypass -h admin_show_droplist " + getTemplate().npcId + "\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"></td></tr>");
html1.append("<td><button value=\"Delete\" action=\"bypass -h admin_delete\" width=40 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"></td></tr>");
html1.append("</table>");

if(player.isGM())
{
html1.append("<button value=\"View Shop\" action=\"bypass -h admin_showShop " + getTemplate().npcId + "\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\"></br>");
html1.append("<button value=\"Lease next week\" action=\"bypass -h npc_" + getObjectId() + "_Lease\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\">");
html1.append("<button value=\"Abort current leasing\" action=\"bypass -h npc_" + getObjectId() + "_Lease next\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\">");
html1.append("<button value=\"Manage items\" action=\"bypass -h npc_" + getObjectId() + "_Lease manage\" width=100 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\">");
}

html1.append("</body></html>");

html.setHtml(html1.toString());
player.sendPacket(html);
html = null;
html1 = null;
}
player.sendPacket(ActionFailed.STATIC_PACKET);
player = null;
}

}

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


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

else if(actualCommand.equalsIgnoreCase("Buy"))

{

if(st.countTokens() < 1)

return;

}

Вопрос не по теме к демону

swing начиная с jre7 поддерживает тип String? или сhar?

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

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


Ссылка на сообщение
Поделиться на другие сайты
else if(actualCommand.equalsIgnoreCase("Buy"))

{

if(st.countTokens() < 1)

return;

}

Вопрос не по теме к демону

swing начиная с jre7 поддерживает тип String? или сhar?

Я с GUI в яве в последний раз работал года 3 назад. Так, что к сожалению не знаю.

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


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

Вчера пытался написать код за ТСа. Действительно непонятно куда спешил, естественно дал совершенно нерабочий. Но согласен с модератором: я не должен выполнять работу за другого, а только давать подсказки, иначе ТС ничему не научиться.

Что мешает переместить все методы из L2ClassMasterInstance в L2MerchantInstance, скрестив методы onBypassFeedback обоих классов?

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


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

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

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

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