19.06.2011, 15:45
|
#1
|
Пользователь
Регистрация: 15.01.2009
Возраст: 30
Сообщений: 832
Отблагодарили 62 раз(а)
|
востановление после релогина из инстанса.
Всем привет и сразу к сабжу.
В моей сборке (l2dc (лыжа)). не реализовано восстановление из инстансзоны после релогина. После релогина, если ты был, допустим в каме, ты снова оказываешься в каме, но мобов нигде нету, тоесть ты в нормальном мире, но по координатам ты остался там где вышел.
Так вот я надумал сделать такую фишку. В instance/***.xml прописывать
Код:
<returnteleport x="17380" y="277582" z="-9704"/>
c координатами возврата (для каждого инстанса свои)
покопался в исходниках - нашел
Код:
public class Instance
{
private void parseInstance(Node n) throws Exception
{
L2Spawn spawnDat;
L2NpcTemplate npcTemplate;
String name = null;
name = n.getAttributes().getNamedItem("name").getNodeValue();
setName(name);
Node a;
Node first = n.getFirstChild();
for (n = first; n != null; n = n.getNextSibling())
{
else if ("returnteleport".equalsIgnoreCase(n.getNodeName()))
{
int tpx = 0, tpy = 0, tpz = 0;
tpx = Integer.parseInt(n.getAttributes().getNamedItem("x").getNodeValue());
tpy = Integer.parseInt(n.getAttributes().getNamedItem("y").getNodeValue());
tpz = Integer.parseInt(n.getAttributes().getNamedItem("z").getNodeValue());
setReturnTeleport(tpx, tpy, tpz);
}
}
}
}
На сколько я понимаю этот код записывает переменные из ***.xml в переменные java.
Так вот, очень буду признателен, если вы мне поможете и подскажите
как это реализовать на моем серве
Своими словами: При релогине(должен быть такой файл .java который обрабатывает события при релогине, на подобии EnterWorld.) идет проверка на то, состоит ли персонаж в каком-нибудь инстансе или нет, если да, то телепортирует его по координатам взятым из ***.xml
PS. "Спасибо" жать умею xD
|
|
|