Telegram Bot TOP Search Promotion | SEO Optimization for Bots |
SMMTG.PRO
We promote Telegram bots to the TOP of search results — by keywords, topics, and countries.
What’s included:
• Promotion to the TOP of Telegram search
• Bot optimization for Telegram algorithms
• Competitor analysis and keyword selection
• Testing and securing stable ranking
Delivery time:
2–3 days per bot
Pricing:
Starts from $40 per bot
(final cost depends on competition level and target country)
We work with 50+ countries:
Russia • Ukraine • USA • Israel • Uzbekistan • Turkey • China • Thailand • Europe • India
Training is also available:
Telegram bot SEO optimization
Techniques & insights for reaching TOP search positions
Real-world cases and recommendations
Contact:
Telegram — t.me/smmtg_link
Our SMM panel: SMMTG.PRO
Question
Joκκєrino
Hello maxcheaters . Today i made an instanced npc who can change your name color . All works good but , after restart , color returns to the original.
Exemple : My name color is White ~> changing color to blue ~> restart ~> again white.
Thanks in advice .
Here is the npc :
package com.src.gameserver.model.actor.instance; import javolution.text.TextBuilder; import com.src.gameserver.network.serverpackets.ExShowScreenMessage; import com.src.gameserver.network.serverpackets.MagicSkillUser; import com.src.gameserver.network.serverpackets.NpcHtmlMessage; import com.src.gameserver.network.serverpackets.SocialAction; import com.src.gameserver.templates.chars.L2NpcTemplate; import com.src.gameserver.network.serverpackets.UserInfo; public class L2NpcColorInstance extends L2NpcInstance { public String filename; public L2NpcColorInstance(int objectId, L2NpcTemplate template) { super(objectId, template); } @Override public void onBypassFeedback(L2PcInstance player, String command) { if(player == null || player.getLastFolkNPC() == null || player.getLastFolkNPC().getObjectId() != this.getObjectId()) { return; } if(command.startsWith("name_verde")) { if(player.getInventory().getInventoryItemCount(5556, 0) >= 1) { player.getAppearance().setNameColor(0x009900); player.getInventory().destroyItemByItemId("Name Change Item", 5556, 1, player, null); displayCongrats(player); player.updateNameTitleColor(); player.broadcastUserInfo(); } else { player.sendMessage("You don't have enough items."); } } if(command.startsWith("name_albastru")) { if(player.getInventory().getInventoryItemCount(5556, 0) >= 1) { player.getAppearance().setNameColor(0xff5555); player.getInventory().destroyItemByItemId("Name Change Item", 5556, 1, player, null); displayCongrats(player); player.updateNameTitleColor(); player.broadcastUserInfo(); } else { player.sendMessage("You don't have enough items."); } } if(command.startsWith("name_mov")) { if(player.getInventory().getInventoryItemCount(5556, 0) >= 1) { player.getAppearance().setNameColor(0xBF00FF); player.getInventory().destroyItemByItemId("Name Change Item", 5556, 1, player, null); displayCongrats(player); player.updateNameTitleColor(); player.broadcastUserInfo(); } else { player.sendMessage("You don't have enough items."); } } if(command.startsWith("name_galben")) { if(player.getInventory().getInventoryItemCount(5556, 0) >= 1) { player.getAppearance().setNameColor(0x00ffff); player.getInventory().destroyItemByItemId("Name Change Item", 5556, 1, player, null); displayCongrats(player); player.updateNameTitleColor(); player.broadcastUserInfo(); } else { player.sendMessage("You don't have enough items."); } } if(command.startsWith("name_rosu")) { if(player.getInventory().getInventoryItemCount(5556, 0) >= 1) { player.getAppearance().setNameColor(0x4444FF); player.getInventory().destroyItemByItemId("Name Change Item", 5556, 1, player, null); displayCongrats(player); player.updateNameTitleColor(); player.broadcastUserInfo(); } else { player.sendMessage("You don't have enough items."); } } if(command.startsWith("name_portocaliu")) { if(player.getInventory().getInventoryItemCount(5556, 0) >= 1) { player.getAppearance().setNameColor(0x0099ff); player.getInventory().destroyItemByItemId("Name Change Item", 5556, 1, player, null); displayCongrats(player); player.updateNameTitleColor(); player.broadcastUserInfo(); } else { player.sendMessage("You don't have enough items."); } } if(command.startsWith("name_lime")) { if(player.getInventory().getInventoryItemCount(5556, 0) >= 1) { player.getAppearance().setNameColor(0x55ff55); player.getInventory().destroyItemByItemId("Name Change Item", 5556, 1, player, null); displayCongrats(player); player.updateNameTitleColor(); player.broadcastUserInfo(); } else { player.sendMessage("You don't have enough items."); } } if(command.startsWith("name_gri")) { if(player.getInventory().getInventoryItemCount(5556, 0) >= 1) { player.getAppearance().setNameColor(0x665566); player.getInventory().destroyItemByItemId("Name Change Item", 5556, 1, player, null); displayCongrats(player); player.updateNameTitleColor(); player.broadcastUserInfo(); } else { player.sendMessage("You don't have enough items."); } } if(command.startsWith("name_cyan")) { if(player.getInventory().getInventoryItemCount(5556, 0) >= 1) { player.getAppearance().setNameColor(0xffff00); player.getInventory().destroyItemByItemId("Name Change Item", 5556, 1, player, null); displayCongrats(player); player.broadcastUserInfo(); } else { player.sendMessage("You don't have enough items."); } } } private static void displayCongrats(L2PcInstance player) { player.broadcastPacket(new SocialAction(player.getObjectId(), 3)); player.broadcastPacket(new MagicSkillUser(player, player, 2024, 1, 1, 0)); player.sendPacket(new ExShowScreenMessage("Your name color have changed !", 4000, 0x02, true)); } @Override public void showChatWindow(L2PcInstance player, int val) { filename = (getHtmlPath(getNpcId(), val)); NpcHtmlMessage msg = new NpcHtmlMessage(this.getObjectId()); msg.setHtml(NpcWindow(player)); msg.replace("%objectId%", String.valueOf(this.getObjectId())); player.sendPacket(msg); } private String NpcWindow(L2PcInstance player) { TextBuilder tb = new TextBuilder(); tb.append("<html>"); tb.append("<title>Title Color Manager</title>"); tb.append("<body>"); tb.append("<center><img src=\"L2UI_CH3.herotower_deco\" width=258 height=32></center>"); tb.append("<br><br>"); tb.append("<center>"); tb.append("Do you want change your title color?<br>"); tb.append("You can change it for <font color=\"00FFFF\">1</font> <font color=\"LEVEL\">Festival Adena</font>."); tb.append("<br> "); tb.append("<font color=\"FFFF00\">Select</font> one color from the list below :<br>"); tb.append("<table width=\"240\" height=\"80\" border=\"0\" bgcolor=\"444444\">"); tb.append("<tr>"); tb.append("<td align=center><a action=\"bypass -h npc_%objectId%_name_verde\"><font color=\"009900\">Select</font></a></td>"); tb.append("<br>"); tb.append("<td align=center><a action=\"bypass -h npc_%objectId%_name_albastru\"><font color=\"0099ff\">Select</font></a></td>"); tb.append("<br>"); tb.append("<td align=center><a action=\"bypass -h npc_%objectId%_name_mov\"><font color=\"BF00FF\">Select</font></a></td>"); tb.append("</tr>"); tb.append("<tr>"); tb.append("<td align=center><a action=\"bypass -h npc_%objectId%_name_galben\"><font color=\"ffff00\">Select</font></a></td>"); tb.append("<br>"); tb.append("<td align=center><a action=\"bypass -h npc_%objectId%_name_rosu\"><font color=\"ff0000\">Select</font></a></td>"); tb.append("<br>"); tb.append("<td align=center><a action=\"bypass -h npc_%objectId%_name_portocaliu\"><font color=\"FF8000\">Select</font></a></td>"); tb.append("</tr>"); tb.append("<tr>"); tb.append("<td align=center><a action=\"bypass -h npc_%objectId%_name_lime\"><font color=\"80FF80\">Select</font></a></td>"); tb.append("<br>"); tb.append("<td align=center><a action=\"bypass -h npc_%objectId%_name_gry\"><font color=\"AAAAAA\">Select</font></a></td>"); tb.append("<br>"); tb.append("<td align=center><a action=\"bypass -h npc_%objectId%_name_cyan\"><font color=\"00FFFF\">Select</font></a></td>"); tb.append("</tr>"); tb.append("</table>"); tb.append("<br><br><center><img src=\"L2UI_CH3.herotower_deco\" width=258 height=32></center><br>"); tb.append(" <br><br>"); tb.append("</center>"); tb.append("</body></html>"); return tb.toString(); } }13 answers to this question
Recommended Posts