Jump to content
  • 0

Voiced Command Htmls


tiguz

Question

Hey there, I added a voiced command .info and created the main html inside gameserver/data/html. The main html contains some buttons that should open new html windows. Whats the proper way to call the other htmls? For example, NPCs use: action="bypass -h npc_%objectId%_Chat 1"

How can I call the other chats for a voiced command? I created the folder inside gameserver/data/html and numbered each file.

 

Thank you!

 

Link to comment
Share on other sites

8 answers to this question

Recommended Posts

  • 0

Put the bypass in your info java file..

Like if(command.startswith("openme"))

{

Showchatwindow(player);

}

And make a method

ShowChatwindow(L2PcInstance player)

And here put your html catche..

Objectid etc

Link to comment
Share on other sites

  • 0

Do you have any other voiced command with bypass? If not, then you will need to add a bit of code in RequestBypassToServer. Code will need to catch those kind of bypasses, find voiced command by name and then call it.

Link to comment
Share on other sites

  • 0

If you are using high five you can do commands for each HTML (or use the same command tokenized to get the value) and use the bypass, i dont remember but its smething like "action="voice -h info". This way, when player use this action, its the same as using .info voice command. So voice -h info 1 = the main html. voice-h info2= the chat #2 etc etc. 

 

Sorry for not remembering the action exactly but you can search it (i dont have files in this PC)

Link to comment
Share on other sites

  • 0

I use interlude, and I tought I could call them using something like you said Solomun. But it seems I need to call it from the core =/

No, you can't do it in Interlude. At least without support from other things too.

Link to comment
Share on other sites

  • 0

For example on acis there are no voiced commands at all, so you would need to:

1. Create VoicedCommandHandler storing all handlers

2. VoicedCommandHandler would need to have some method getHandler(String) which would find Command by keyword(like info or dressme)

3. Say2 would need to have if(_text.startsWith(".")) { VoicedCommand handler = VoicedCommandHandler.getInstance().getHandler(_text.substring(1)); handler.useCommand(_text.substring(1), "", activeChar);

Those 3 points above you probably already have in your pack, but you need to:

4. Add to RequestBypassToServer:

else if(_command.startsWith("voiced "))
{
String commandWithArguments = _command.subString("voiced ".length);
int argumentsStartIndex = commandWithArguments.indexOf(" ");
String command = argumentsStartIndex > 0 ? commandWithArguments.substring(0, argumentsStartIndex) : argumentsStartIndex;
String arguments = argumentsStartIndex > 0 ? commandWithArguments.substring(argumentsStartIndex).trim() : "";
VoicedCommand handler = VoicedCommandHandler.getInstance().getHandler(command);
if(handler != null)
handler.useCommand(command, arguments, activeChar);
}

useCommand method in VoicedCommand interface should have following parameters: String command, String arguments, Player/L2PcInstance activeChar

 

If you make this code then bypass should look like this: bypass -h voiced info yourArgument yourArgument yourArgument

Edited by vampir
Link to comment
Share on other sites

  • 0

For example on acis there are no voiced commands at all, so you would need to:

1. Create VoicedCommandHandler storing all handlers

2. VoicedCommandHandler would need to have some method getHandler(String) which would find Command by keyword(like info or dressme)

3. Say2 would need to have if(_text.startsWith(".")) { VoicedCommand handler = VoicedCommandHandler.getInstance().getHandler(_text.substring(1)); handler.useCommand(_text.substring(1), "", activeChar);

Those 3 points above you probably already have in your pack, but you need to:

4. Add to RequestBypassToServer:

else if(_command.startsWith("voiced "))
{
String commandWithArguments = _command.subString("voiced ".length);
int argumentsStartIndex = commandWithArguments.indexOf(" ");
String command = argumentsStartIndex > 0 ? commandWithArguments.substring(0, argumentsStartIndex) : argumentsStartIndex;
String arguments = argumentsStartIndex > 0 ? commandWithArguments.substring(argumentsStartIndex).trim() : "";
VoicedCommand handler = VoicedCommandHandler.getInstance().getHandler(command);
if(handler != null)
handler.useCommand(command, arguments, activeChar);
}

useCommand method in VoicedCommand interface should have following parameters: String command, String arguments, Player/L2PcInstance activeChar

 

If you make this code then bypass should look like this: bypass -h voiced info yourArgument yourArgument yourArgument

Thank you for the info, i will try to do as u say. Ill report if I get any problems

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now


  • Posts

    • L2 Insignia High Five 20x MID SERVER FOCUSED ON OLYMPIAD | PVP | AUTOFARM       OPEN BETA TEST SERVER 3 MAY 2024   GRAND OPENING 10 MAY 2024    Rates: 📜 XP/SP 20x | Spoil 15x | Drop 10x | Adena 10x 📜     Server Features: 🔥 No Olf-T Shirt, No big over-enchant, No over-power Donate 🔥 🔥 VIP Gold Color Chat, Unique Olympiad Extra Points Engine, GvG Event 🔥 🔥 Auto-Farm, LoA and DV scheduled PvP Zone, Calendar Daily Reward 🔥 🔥 Castle Instance, Solo Instance, PvP Solo Rift, Dress me system, Adena Boxes 🔥        Website: https://www.l2insignia.com  Discord: https://discord.com/invite/yEgsrHn2hQ      
    • I am selling the essence project which includes versions 388 and 439 that have been running for over 2 years or (447 as custom PVP like Pride). I have a test server for you to test them out. If you are really interested in it then contact my seller at discord: kiwi7106. Price: 4000 Euro P/s: This is a project that I have spent a lot of money and time developing, so if you are not interested in it, please get out of this topic, thank you. P/s 2: If you find the price too expensive, it's best to skip this article and find another project and don't comment negatively on my topic, thank you.
    • Someone ask me for this, it should work on any client that has Kamael race, preview:     Installation - there are two ways to install depending on how you want to use it:   Method 1: If you want to completely replace the original, do:   Copy all lines from your armorgrp to Notepad++, press Ctrl+H, check the "match whole word" option and replace:   kamael.Mkamael_m000_w_ad00   by:   AvengersKamaelWings.Avengers_MKamael_m001_w_ad00   Then replace:   MKamael.Mkamael_m000_t00_w   by:   AvengersKamaelWings.MKamael_m001_t00_w   Now repeat the same process with the female, replace:   kamael.Fkamael_m000_w_ad00   by:   AvengersKamaelWings.Avengers_FKamael_m001_w_ad00   Then replace:   FKamael.Fkamael_m000_t00_w   by:   AvengersKamaelWings.FKamael_m001_t00_w   You're done, paste everything back into File Edit and save!   Method 2: If you only want to replace in specific sets, execute the above process only on the armorgrp of those sets.   Repack by: AvengersTeamBr Password: LadrãoDeFrango      
  • Topics

×
×
  • Create New...