|
@@ -14,6 +14,8 @@
|
|
*/
|
|
*/
|
|
package com.l2jserver.gameserver.model.actor.instance;
|
|
package com.l2jserver.gameserver.model.actor.instance;
|
|
|
|
|
|
|
|
+import java.util.regex.Matcher;
|
|
|
|
+
|
|
import com.l2jserver.Config;
|
|
import com.l2jserver.Config;
|
|
import com.l2jserver.gameserver.cache.HtmCache;
|
|
import com.l2jserver.gameserver.cache.HtmCache;
|
|
import com.l2jserver.gameserver.datatables.ClassListData;
|
|
import com.l2jserver.gameserver.datatables.ClassListData;
|
|
@@ -84,7 +86,7 @@ public final class L2ClassMasterInstance extends L2MerchantInstance
|
|
{
|
|
{
|
|
NpcHtmlMessage html = new NpcHtmlMessage(getObjectId());
|
|
NpcHtmlMessage html = new NpcHtmlMessage(getObjectId());
|
|
html.setFile(player.getHtmlPrefix(), "data/html/classmaster/ok.htm");
|
|
html.setFile(player.getHtmlPrefix(), "data/html/classmaster/ok.htm");
|
|
- html.replace("%name%", ClassListData.getInstance().getClass(val).getClassName(true));
|
|
|
|
|
|
+ html.replace("%name%", Matcher.quoteReplacement(ClassListData.getInstance().getClass(val).getClassName(true)));
|
|
player.sendPacket(html);
|
|
player.sendPacket(html);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -251,8 +253,8 @@ public final class L2ClassMasterInstance extends L2MerchantInstance
|
|
if (menu.length() > 0)
|
|
if (menu.length() > 0)
|
|
{
|
|
{
|
|
html.setFile(player.getHtmlPrefix(), "data/html/classmaster/template.htm");
|
|
html.setFile(player.getHtmlPrefix(), "data/html/classmaster/template.htm");
|
|
- html.replace("%name%", ClassListData.getInstance().getClass(currentClassId).getClassName(true));
|
|
|
|
- html.replace("%menu%", menu.toString());
|
|
|
|
|
|
+ html.replace("%name%", Matcher.quoteReplacement(ClassListData.getInstance().getClass(currentClassId).getClassName(true)));
|
|
|
|
+ html.replace("%menu%", Matcher.quoteReplacement(menu.toString()));
|
|
}
|
|
}
|
|
else
|
|
else
|
|
{
|
|
{
|
|
@@ -287,7 +289,7 @@ public final class L2ClassMasterInstance extends L2MerchantInstance
|
|
|
|
|
|
String msg = HtmCache.getInstance().getHtm(player.getHtmlPrefix(), "data/html/classmaster/tutorialtemplate.htm");
|
|
String msg = HtmCache.getInstance().getHtm(player.getHtmlPrefix(), "data/html/classmaster/tutorialtemplate.htm");
|
|
|
|
|
|
- msg = msg.replaceAll("%name%", ClassListData.getInstance().getClass(currentClassId).getClassName(true));
|
|
|
|
|
|
+ msg = msg.replaceAll("%name%", Matcher.quoteReplacement(ClassListData.getInstance().getClass(currentClassId).getClassName(true)));
|
|
|
|
|
|
final StringBuilder menu = new StringBuilder(100);
|
|
final StringBuilder menu = new StringBuilder(100);
|
|
for (ClassId cid : ClassId.values())
|
|
for (ClassId cid : ClassId.values())
|
|
@@ -306,8 +308,8 @@ public final class L2ClassMasterInstance extends L2MerchantInstance
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- msg = msg.replaceAll("%menu%", menu.toString());
|
|
|
|
- msg = msg.replace("%req_items%", getRequiredItems(currentClassId.level()+1));
|
|
|
|
|
|
+ msg = msg.replaceAll("%menu%", Matcher.quoteReplacement(menu.toString()));
|
|
|
|
+ msg = msg.replace("%req_items%", Matcher.quoteReplacement(getRequiredItems(currentClassId.level()+1)));
|
|
player.sendPacket(new TutorialShowHtml(msg));
|
|
player.sendPacket(new TutorialShowHtml(msg));
|
|
}
|
|
}
|
|
|
|
|