Форум администраторов игровых серверов

Форум администраторов игровых серверов (https://forum.zone-game.info/TT.php)
-   Lineage II (https://forum.zone-game.info/forumdisplay.php?f=34)
-   -   Пакет ExShowSeedMapInfo (https://forum.zone-game.info/showthread.php?t=9232)

Dizband 24.07.2010 10:30

Пакет ExShowSeedMapInfo
 
Вот такой вопрос, при просмотре карты в грации он шлет координаты сои и сод. Там же(на карте) написано какая стадия сейчас идет.
Вопрос - где и в каком пакете содержится это стадия?
Структура ExShowSeedMapInfo не позволяет ее выводить, поэтому где-то в другом месте:
Код:

* FE A1 00                - opcodes<BR>
 * 02 00 00 00        - list size<BR>
 * <BR>
 * B7 3B FC FF        - x<BR>
 * 38 D8 03 00        - y<BR>
 * EB 10 00 00        - z<BR>
 * D3 0A 00 00        - heading?<BR>
 * <BR>
 * F6 BC FC FF        - x<BR>
 * 48 37 03 00        - y<BR>
 * 30 11 00 00        - z<BR>
 * CE 0A 00 00        - heading?

Мною были найдены фразы, но они нигде не использовались:
Код:

    public static final int SEED_OF_INFINITY_STAGE_1_ATTACK_IN_PROGRESS = 2766; // Идет Осада 1-го уровня Семени Бессмертия
    public static final int SEED_OF_INFINITY_STAGE_2_ATTACK_IN_PROGRESS = 2767; // Идет Осада 2-го уровня Семени Бессмертия
    public static final int SEED_OF_INFINITY_CONQUEST_COMPLETE = 2768; // Семя Бессмертия захвачено
    public static final int SEED_OF_INFINITY_STAGE_1_DEFENSE_IN_PROGRESS = 2769; // Идет Оборона 1-го уровня Семени Бессмертия
    public static final int SEED_OF_INFINITY_STAGE_2_DEFENSE_IN_PROGRESS = 2770; // Идет Оборона 2-го уровня Семени Бессмертия
    public static final int SEED_OF_DESTRUCTION_ATTACK_IN_PROGRESS = 2771; // Проходит Осада Семени Разрушения
    public static final int SEED_OF_DESTRUCTION_CONQUEST_COMPLETE = 2772; // Семя Разрушения захвачено
    public static final int SEED_OF_DESTRUCTION_DEFENSE_IN_PROGRESS = 2773; // Идет Оборона Семени Разрушения

А на карте по-прежнему было написано то, что выше выделено жирным.
Прошу помощи.

VISTALL 24.07.2010 14:46

Re: Пакет ExShowSeedMapInfo
 
в конце каждого цыкла XYZ есть 4 байта это оно и есть, айди суcтем месаги

Цитата:

* CE 0A 00 00 - heading?
Добавлено через 4 минуты
CE 0A 00 00 == 0x0ACE == 2766 ясно?

Добавлено через 10 минут
D3 0A 00 00 == 0x0AD3 == 2771

Dizband 24.07.2010 15:28

Re: Пакет ExShowSeedMapInfo
 
Точняк, thx ;)

LineOFWar 24.07.2010 17:16

Re: Пакет ExShowSeedMapInfo
 
ммм а как этим пользоваться?)) вот допустим системным сообщением так player.sendPacket(new SystemMessage(2185));
а вот этим как ?

Добавлено через 15 минут
player.sendPacket(new ExShowSeedMapInfo(2766)); типа так ?

VISTALL 24.07.2010 19:11

Re: Пакет ExShowSeedMapInfo
 
Цитата:

Сообщение от NeoNs (Сообщение 80461)
Точняк, thx ;)

thx справаXD

Добавлено через 1 минуту
Цитата:

Сообщение от LineOFWar (Сообщение 80481)
ммм а как этим пользоваться?)) вот допустим системным сообщением так player.sendPacket(new SystemMessage(2185));
а вот этим как ?

Добавлено через 15 минут
player.sendPacket(new ExShowSeedMapInfo(2766)); типа так ?

нет нужно в конструкторе писать координаты сида и его стадию

LineOFWar 24.07.2010 21:05

Re: Пакет ExShowSeedMapInfo
 
Цитата:

Сообщение от VISTALL (Сообщение 80487)
thx справаXD

Добавлено через 1 минуту


нет нужно в конструкторе пистаь координаті сида и его стадию

ExShowSeedMapInfo info1 = new ExShowSeedMapInfo(x,y,z,2766);
ну вот конструктор а отослать как ?)))
хотя нет
вот оно как инфа то
writeD(0); // seed count
writeD(0); // x coord
writeD(0); // y coord
writeD(0); // z coord
writeD(0); // sys msg id
т.е.
ExShowSeedMapInfo info1 = new ExShowSeedMapInfo(?,x,y,z,2766);
?что писать в коунт ну и все же как отправить

VISTALL 25.07.2010 00:18

Re: Пакет ExShowSeedMapInfo
 
[source=java]
public class ExShowSeedMapInfo
{
static class SeedInfo
{
private int _x;
private int _y;
private int _z;
private int _status;

SeedInfo(int x, int y, int z, int status)
{
_x = x;
_y = y;
_z = z;
_status = status;
}
}

private List<SeedInfo> _infos;

public ExShowSeedMapInfo()
{
List<Seed> seeds = SeedManager.getInstance().getSeeds();
_infos = new ArrayList<SeedInfo>(seeds.size());
for(Seed seed : seeds)
{
_infos.add(new SeedInfo(seed.getX(), seed.getY(), seed.getZ(), seed.getMessageStatusId());
}
}

public void writeImpl()
{
writeC(0xFE);
writeH(0xA1);
writeD(_infos.size());
for(SeedInfo s : _infos)
{
writeD(s._x);
writeD(s._y);
writeD(s._z);
writeD(s._status);
}
_infos.clear();
}
}
[/source]

LineOFWar 25.07.2010 10:39

Re: Пакет ExShowSeedMapInfo
 
Цитата:

Сообщение от VISTALL (Сообщение 80519)
[source=java]
public class ExShowSeedMapInfo
{
static class SeedInfo
{
private int _x;
private int _y;
private int _z;
private int _status;

SeedInfo(int x, int y, int z, int status)
{
_x = x;
_y = y;
_z = z;
_status = status;
}
}

private List<SeedInfo> _infos;

public ExShowSeedMapInfo()
{
List<Seed> seeds = SeedManager.getInstance().getSeeds();
_infos = new ArrayList<SeedInfo>(seeds.size());
for(Seed seed : seeds)
{
_infos.add(new SeedInfo(seed.getX(), seed.getY(), seed.getZ(), seed.getMessageStatusId());
}
}

public void writeImpl()
{
writeC(0xFE);
writeH(0xA1);
writeD(_infos.size());
for(SeedInfo s : _infos)
{
writeD(s._x);
writeD(s._y);
writeD(s._z);
writeD(s._status);
}
_infos.clear();
}
}
[/source]

ну хорошо давай на твоем пакете посмотрим))
вот в другом файле я буду работать с ним я делаю допустим
import serv.gameserver.network.serverpackets.ExShowSeedMa pInfo
ExShowSeedMapInfo info1 = new SeedInfo(x,y,z,2766);
использую метод ExShowSeedMapInfo создаю в нем info1 переменная которая заноситься в массив _infos ну и указываю данные... и все больше ничего делать не надо? просто допустим если пользоваться системмесадж или скрин месадж то там после указывания данных идет отсыл типо sendsystemmessage(info1); ну или sendscreenmessage(info1);
а тут незнаю...

VISTALL 25.07.2010 14:10

Re: Пакет ExShowSeedMapInfo
 
тут просто player.sendPacket(new ExShowSeedMapInfo()); и все оно пошлет все даные..про сиды


Текущее время: 16:09. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot