Jump to content

Question

Posted

How i can set L2Npc.Java for add %playername& to add this in texts?

I have edited this method 

public void showChatWindow(L2PcInstance player, String filename)
	{
		// Send a Server->Client NpcHtmlMessage containing the text of the L2NpcInstance to the L2PcInstance
		final NpcHtmlMessage html = new NpcHtmlMessage(getObjectId());
		html.setFile(player.getHtmlPrefix(), filename);
		html.replace("%objectId%", String.valueOf(getObjectId()));
		html.replace("%exp%", String.valueOf((Config.RATE_XP)));
		html.replace("%sp%", String.valueOf((Config.RATE_SP)));
		html.replace("%drop%", String.valueOf((Config.RATE_DEATH_DROP_AMOUNT_MULTIPLIER)));
		html.replace("%type%", String.valueOf(player.isPremium() ? "Premium" : "Normal"));
		player.sendPacket(html);
		
		// Send a Server->Client ActionFailed to the L2PcInstance in order to avoid that the client wait another packet
		player.sendPacket(ActionFailed.STATIC_PACKET);
	}

and in game html says %exp% not the exp rate

 

 

Recommended Posts

  • 0
Posted

if a player is premium the html what will appear in %type% ? i guess "Premium" right? if not "Normal" right?

 

why dont you take examples of existings things you have there?

Just read what you got.

 

You got a line 

html.replace("%type%", String.valueOf(player.isPremium() ? "Premium" : "Normal"));

just read it.

 

html.replace("%type%", String.valueOf(player.isPremium() ? "Premium" : "Normal"));

 

 

  • 0
Posted
<html>
<body>
<title>Welcome %npcname%</title>
<center>

<table width=300 height=10 bgcolor=000000>
<tr>
<td fixwidth=230 height=15 align=center>
Rates Info
</font>
</td>
<td fixwidth=2></td>
</tr>
</table>
<img src="L2UI.SquareWhite" width="290" height="1">
<br>
<td><center><font color="FFFFFF">Details</font></center></td>
<br>
<table width=299 bgcolor=000000>
	<tr><td width=140><font name="hs9">Service</font></td><td width=80><font name="hs9">Value</font></td></tr>
</table>
<table width=299>
	<tr>
		<td width=140><font name=hs9 color=ffcc00>- Exp Rate</font></td>
		<td width=80><font name=hs9 color=66ff66>%exp%</font></td>
	</tr>
</table>
<table width=299 bgcolor=000000>
	<tr>
		<td width=140><font name=hs9 color=ffcc00>- Sp Rate</font></td>
		<td width=80><font name=hs9 color=66ff66>%sp%</font></td>
	</tr>
</table>
<table width=299>
	<tr>
		<td width=140><font name=hs9 color=ffcc00>- Drop Rate</font></td>
		<td width=80><font name=hs9 color=66ff66>%drop%</font></td>
	</tr>
</table>
<table width=299 bgcolor=000000>
	<tr>
		<td width=140><font name=hs9 color=ffcc00>- Raid Rate</font></td>
		<td width=80><font name=hs9 color=66ff66>%raid_drop%</font></td>
	</tr>
</table>
<table width=299>
	<tr>
		<td width=140><font name=hs9 color=ffcc00>- Chat</font></td>
		<td width=80><font name=hs9 color=66ff66>%chat%</font></td>
	</tr>
</table>
<br>
<table width=299>
	<tr>
		<td><center><font color="FFFFFF">Rune rate</font></center></td>
	</tr>
</table>
<br>
<table width=299 bgcolor=000000>
	<tr>
		<td width=140><font name=hs9 color=ff00ff>Rate of xp</font></td>
		<td width=80><font name=hs9 color=66ff66>%bonusExp%</font></td>
	</tr>
</table>
<table width=299 bgcolor=000000>
	<tr>
		<td width=140><font name=hs9 color=ff00ff>Rate of drop</font></td>
		<td width=80><font name=hs9 color=66ff66>%bonusDrop%</font></td>
	</tr>
</table>


<br><br><br><br>
<img src="L2UI.SquareWhite" width=300 height=1>
</font>
</td>
<td fixwidth=3></td>
</tr>
</table>
<img src="L2UI.SquareWhite" width="300" height="1">	

</center>
</body>
</html>

 

  • 0
Posted

Make sure the npc instance type is default, L2Npc. If it's a custom instance, it won't work, as it is using Overriden showChatWindow, in 99% of cases.

 

Also.. Why you add useless brackets?! String.valueOf((Config.RATE_SP)) why you added the Config inside the bracket? WHY?! Remove one bracket for our sake.

 

With player.getName() you get the name, obviously. String.valueOf won't be necessary.

  • 0
Posted (edited)

Well, i remove 

String.valueOf((Config.RATE_SP)) 

and i leave just 

html.replace("%exp%");

and the npc it is L2NPC, not L2Merchant

Edited by InFocus
  • 0
Posted (edited)
12 minutes ago, InFocus said:

Well, i remove 


String.valueOf((Config.RATE_SP)) 

and i leave just 


html.replace("%exp%");

and the npc it is L2NPC, not L2Merchant

Not what SweeTs said.. He said remove the bracket.. only ("%exp%") how the code will read your rates? 

http://lmgtfy.com/?q=what+bracket+means

Edited by 'Baggos'
  • 0
Posted
2 hours ago, SweeTs said:

String.valueOf((Config.RATE_SP)) why you added the Config inside the bracket?

Let me highlight as your understanding is so damn low.

 

Yellow - Config

Pale red - bracket(s)

 

Now, you should understand. If not, waste 10min and try to manage or ask someone.

 

 

2 hours ago, InFocus said:

String.valueOf((Config.RATE_SP))

 

Here we go again, double bracket - its pointless. I will not even mention what you did here.

 

 

1 hour ago, InFocus said:

Give me 1 exemple, then i will understand this too

Ok, here you go.

 

String.valueOf((((((((((((Config.RATE_SP))))))))))))

=>

String.valueOf(Config.RATE_SP)

 

The real question is, WHY SO MUCH BRACKETS.

 

funny-captions-because-i-can.jpg

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Posts

    • Added FloodProtector utility to prevent packet flooding for actions like item use and dice rolling. Integrated flood protection checks in relevant client packet handlers and registered/removal hooks in player lifecycle. Updated movement logic in L2PcInstance for improved position synchronization and geodata handling. Minor fixes and refactoring in attack logic, private store handling, and admin NPC editing. Refactored AI classes to enhance movement, attack, and skill usage logic for characters and mobs. Improved distance checks, attack range calculations, and skill casting conditions. Removed unused intention command logic from L2CharacterAI. Updated configuration to enable CellPathFinding. Minor code cleanups and bug fixes for more reliable AI behavior. Enhanced GeoPathFinding with detailed debug and error messages for region loading, including success/failure counts and file checks. Refactored L2AttackableAI and L2CharacterAI to improve attack range tolerance, immediate attack behavior, and added safety checks for missing targets. Updated configuration to disable CellPathFinding by default and added a new ShowRedName option for aggressive mobs. Minor config and log updates included. Applied TCP socket optimizations (e.g., TCP_NODELAY, buffer sizes, keepalive) in ClientThread, Connection, and SelectorThread to reduce latency and improve throughput. Enhanced L2AttackableAI with better random walk, aggro, and attack logic, including silent move checks, quest monster handling, and improved faction/raid/minion behavior. Added silent move support to L2PlayableInstance and quest monster flag to L2NpcTemplate/L2NpcInstance. These changes aim to improve server responsiveness, AI realism, and overall stability.
    • I’ve been using this Escape from Tarkov Hack for about a week now with no issues at all. ESP works great without any lag, and the aimbot is smooth and doesn't feel obvious. Had a quick setup with the loader, and support answered my questions right away. The HWID spoofer also did its job without messing with my system. So far, the cheat's staying undetected on my side.
    • Hello everyone, this is ADENA L2REBORN / LU4 / MASTERWORK We also have items, epics, etc. discord - adver745645 Our prices are reasonable, so have a nice shopping and a nice day.
×
×
  • Create New...

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock