в unreal script есть метод OnEvent, собственно вопрос, можно ли как то отправить ивент со стороны сервера без костылей?
Follow along with the video below to see how to install our site as a web app on your home screen.
Примечание: This feature may not be available in some browsers.
не нашел ничего подобногоа глянь в скрипте осады там отправляются эвенты точно
ну думаю он немного другое имеет в виду, ты то про EventTrigger пишешь, а он скорее всего хочет послать с сервера каким-нибудь пакетом определенный ид, и чтобы он обработался через OnEventа глянь в скрипте осады там отправляются эвенты точно
искал не нашел, но евент там точно есть через евент запускаются эмиттеры в переходах
надо какую то приближенную сборку к офу смотреть
я читал этот мануалглянь в сторону EX_BR_BROADCAST_EVENT_STATE - в клиенте вроде как на его как раз регаются определенные eventId, чтобы показывать/скрывать к примеру доп. эвентовые окошки в интерфейсе.
ну да я о нём, но я вот тож не нашел где он включаетсяну думаю он немного другое имеет в виду, ты то про EventTrigger пишешь, а он скорее всего хочет послать с сервера каким-нибудь пакетом определенный ид, и чтобы он обработался через OnEvent
Try to communicate with interface via NpcHtmlMessage, where you can send plain string and then parse it to any format you'd likeI read this manual
Вы не можете просматривать ссылку пожалуйста воспользуйтесь следующими ссылками Вход или Регистрацияbut unfortunately, from the options proposed there, only the option with EXSendUIEvent worked for me, but even here I was a little bit tricked, because I work with Lucera, and there is no method I need with the transfer of an int value, and when the deezer will add it - it is unknown
but I didn't figure out how to catch ExBR_BroadcastEventState with the client
в unreal script есть метод OnEvent, собственно вопрос, можно ли как то отправить ивент со стороны сервера без костылей?
но я же правильно понимаю что окно туториала будет тоже открываться?Вы не можете просматривать ссылку пожалуйста воспользуйтесь следующими ссылками Вход или РегистрацияДля IT writeC(0xa0);
.uc
ExecuteEvent(EVENT_ID,param);
или
ExecuteEvent(EVENT_ID);
Я так понимаю нет доступа к исходникам, а разве нельзя в скриптах создать еще 1 реализацию пакета EXSendUIEvent где уже будешь передавать что хочешь ?я читал этот мануал
Вы не можете просматривать ссылку пожалуйста воспользуйтесь следующими ссылками Вход или Регистрацияно к сожалению из предложенных там вариантов для меня сработал только вариант с EXSendUIEvent, но и тут мне немного провели по губам, потому что я работаю с люцерой, а там нет нужного мне метода с передачей инт значения, а когда дизер его добавит - не известно
а вот как ловить ExBR_BroadcastEventState клиентом я не разобрался
доступа к исходникам нет, может конечно и можно создать еще одну реализацию пакета, но я пока не сильно в таких вещах понимаю :сЯ так понимаю нет доступа к исходникам, а разве нельзя в скриптах создать еще 1 реализацию пакета EXSendUIEvent где уже будешь передавать что хочешь ?
нет! если найдет то что нужно.но я же правильно понимаю что окно туториала будет тоже открываться?
доступа к исходникам нет, может конечно и можно создать еще одну реализацию пакета, но я пока не сильно в таких вещах понимаю :с
class ServerPacket extends L2GameServerPacket
{
final StringBuilder sb;
ServerPacket(StringBuilder sb)
{
this.sb = sb;
}
@Override
protected void writeImpl()
{
writeC(0xa0);
writeS(sb.toString());
}
}
void sendParamServerPacket(Player activeChar, StringBuilder sb)
{
activeChar.sendPacket(new ServerPacket(sb));
}
у меня ХФ сборка, думаю на ИТ структура такая жедоступа к исходникам нет, может конечно и можно создать еще одну реализацию пакета, но я пока не сильно в таких вещах понимаю :с
public static class ExSendUIEventExt extends L2GameServerPacket {
private final Player player;
public ExSendUIEventExt(Player player) {
this.player = player;
}
@Override
protected void writeImpl() {
writeC(0xFE);
writeH(0x8E);
writeD(player.getObjectId()); //UserID
writeD(1000); // EventID
writeD(222); //Ask
writeD(333); //Reply
writeS("qwerqwer"); //Param1
writeS("qwerqwer"); //Param...
writeS("qwerqwer");
writeS("qwerqwer");
writeS("qwerqwer");
writeS("qwerqwer");
}
}
на эпилоге так и юзаю и вполне все четко работает( правда не как в т воем формате но подобно )у меня ХФ сборка, думаю на ИТ структура такая же
пакет можно создать как отдельным классом так и прям внутри скрипта из которого хочешь отправить
Данные можешь подставить как захочешь) у стрингов ограничение в 255 символовJava:public static class ExSendUIEventExt extends L2GameServerPacket { private final Player player; public ExSendUIEventExt(Player player) { this.player = player; } @Override protected void writeImpl() { writeC(0xFE); writeH(0x8E); writeD(player.getObjectId()); //UserID writeD(1000); // EventID writeD(222); //Ask writeD(333); //Reply writeS("qwerqwer"); //Param1 writeS("qwerqwer"); //Param... writeS("qwerqwer"); writeS("qwerqwer"); writeS("qwerqwer"); writeS("qwerqwer"); } }
вот это сработало, спасибо, только чуть по другому для классикау меня ХФ сборка, думаю на ИТ структура такая же
пакет можно создать как отдельным классом так и прям внутри скрипта из которого хочешь отправить
Данные можешь подставить как захочешь) у стрингов ограничение в 255 символовJava:public static class ExSendUIEventExt extends L2GameServerPacket { private final Player player; public ExSendUIEventExt(Player player) { this.player = player; } @Override protected void writeImpl() { writeC(0xFE); writeH(0x8E); writeD(player.getObjectId()); //UserID writeD(1000); // EventID writeD(222); //Ask writeD(333); //Reply writeS("qwerqwer"); //Param1 writeS("qwerqwer"); //Param... writeS("qwerqwer"); writeS("qwerqwer"); writeS("qwerqwer"); writeS("qwerqwer"); } }
в сборке есть хороший инструментарий что бы реализовать большую часть хотелок самомуDeazer
Когда ты уже реализуешь - то что нужно еденицам а не будешь мамонта откапывать зубочисткой?
в сборке есть хороший инструментарий что бы реализовать большую часть хотелок самому