Jump to content

Recommended Posts

Posted (edited)

Ok Guys I found This Code And Because I found Errors And A lot Of Peoples Can't Inside This Code I Share For Help The Peoples :

 

CREDITS IS BY L2JFROZEN PROJECT

 

REWORK BY ME  (TEST BY ME)

 

This is Java Code :

Index: head-src/com/l2jfrozen/Config.java
===================================================================
--- head-src/com/l2jfrozen/Config.java (wersja 669)
+++ head-src/com/l2jfrozen/Config.java (kopia robocza)
@@ -2239,6 +2239,7 @@
public static String FARM2_CUSTOM_MESSAGE;
public static String PVP1_CUSTOM_MESSAGE;
public static String PVP2_CUSTOM_MESSAGE;
+ public static boolean SHOW_NPC_CREST;

//============================================================
public static void loadL2JFrozenConfig()
@@ -2357,6 +2358,7 @@
FARM2_CUSTOM_MESSAGE = L2JFrozenSettings.getProperty("Farm2CustomMeesage", "You have been teleported to Farm Zone 2!");
PVP1_CUSTOM_MESSAGE = L2JFrozenSettings.getProperty("PvP1CustomMeesage", "You have been teleported to PvP Zone 1!");
PVP2_CUSTOM_MESSAGE = L2JFrozenSettings.getProperty("PvP2CustomMeesage", "You have been teleported to PvP Zone 2!");
+ SHOW_NPC_CREST = Boolean.parseBoolean(L2JFrozenSettings.getProperty("ShowNpcCrest", "False"));
}
catch(Exception e)
{
Index: config/functions/l2jfrozen.properties
===================================================================
--- config/functions/l2jfrozen.properties (wersja 669)
+++ config/functions/l2jfrozen.properties (kopia robocza)
@@ -275,4 +275,8 @@
# -----------------------------------------
# Protector System Config  -
# -----------------------------------------
# Protector activate when a player this PK
ProtectorPlayerPK = False
# Protector activate when a player is flaged
ProtectorPlayerPVP = False
# Radius of action
ProtectorRadiusAction = 5000
# Skill ID used for the npc
ProtectorSkillId = 1170
# Skill Level used for npc
ProtectorSkillLevel = 13
ProtectorSkillTime = 600
# Npc Protector Message
ProtectorMessage = Hey You!, Never Kill On This Area, Go Read The Rules!
+
+#-------------------------------------------------
+# Show clan, alliance crests for territory NPC's.
+#-------------------------------------------------
+# Default: False
+ShowNpcCrest = True
\ No newline at end of file
Index: head-src/com/l2jfrozen/gameserver/network/serverpackets/NpcInfo.java
===================================================================
--- head-src/com/l2jfrozen/gameserver/network/serverpackets/NpcInfo.java   (wersja 669)
+++ head-src/com/l2jfrozen/gameserver/network/serverpackets/NpcInfo.java   (kopia robocza)
@@ -19,11 +19,15 @@
 package com.l2jfrozen.gameserver.network.serverpackets;

 import com.l2jfrozen.Config;
+import com.l2jfrozen.gameserver.datatables.sql.ClanTable;
+import com.l2jfrozen.gameserver.managers.TownManager;
 import com.l2jfrozen.gameserver.model.L2Character;
+import com.l2jfrozen.gameserver.model.L2Clan;
 import com.l2jfrozen.gameserver.model.L2Summon;
 import com.l2jfrozen.gameserver.model.actor.instance.L2MonsterInstance;
 import com.l2jfrozen.gameserver.model.actor.instance.L2NpcInstance;
 import com.l2jfrozen.gameserver.model.actor.instance.L2PetInstance;
+import com.l2jfrozen.gameserver.model.zone.type.L2TownZone;

 /**
  * This class ...
@@ -46,6 +50,10 @@
    private int _collisionHeight, _collisionRadius;
    private String _name = "";
    private String _title = "";
+   int _clanCrest = 0;
+   int _allyCrest = 0;
+   int _allyId = 0;
+   int _clanId = 0;

    /**
     * @param _characters
@@ -99,6 +107,32 @@
          _title = t;
       }

+      if(Config.SHOW_NPC_CREST)
+      {
+         if(cha instanceof L2NpcInstance && cha.isInsideZone(L2Character.ZONE_PEACE) && cha.getCastle().getOwnerId() != 0)
+         {
+            int _x,_y,_z;
+            _x = cha.getX();
+            _y = cha.getY();
+            _z = cha.getZ();
+            L2TownZone Town;
+            Town = TownManager.getInstance().getTown(_x, _y, _z);
+            if(Town != null)
+            {
+               int townId = Town.getTownId();
+               if(townId != 33 && townId != 22)
+               {
+                  L2Clan clan;
+                  clan = ClanTable.getInstance().getClan(cha.getCastle().getOwnerId());
+                  _clanCrest = clan.getCrestId();
+                  _clanId = clan.getClanId();
+                  _allyCrest = clan.getAllyCrestId();
+                  _allyId = clan.getAllyId();
+               }
+            }
+         }
+      }
+
       _x = _activeChar.getX();
       _y = _activeChar.getY();
       _z = _activeChar.getZ();
@@ -187,12 +221,23 @@
       writeD(0000); // hmm karma ??

       writeD(_activeChar.getAbnormalEffect()); // C2
-      writeD(0000); // C2
-      writeD(0000); // C2
-      writeD(0000); // C2
-      writeD(0000); // C2
-      writeC(0000); // C2

+      if(Config.SHOW_NPC_CREST)
+      {
+         writeD(_clanId);
+         writeD(_clanCrest);
+         writeD(_allyId);
+         writeD(_allyCrest);
+      }
+      else
+      {
+         writeD(0000);
+         writeD(0000);
+         writeD(0000);
+         writeD(0000);
+         writeC(0000);
+      }
+
       writeC(0x00); // C3  team circle 1-blue, 2-red
       writeF(_collisionRadius);
       writeF(_collisionHeight);
Index: head-src/com/l2jfrozen/gameserver/model/entity/siege/Castle.java
===================================================================
--- head-src/com/l2jfrozen/gameserver/model/entity/siege/Castle.java   (wersja 669)
+++ head-src/com/l2jfrozen/gameserver/model/entity/siege/Castle.java   (kopia robocza)
@@ -90,6 +90,7 @@
    private int _taxPercent = 0;
    private double _taxRate = 0;
    private int _treasury = 0;
+   private boolean _showNpcCrest = false;
    private L2CastleZone _zone;
    private L2CastleTeleportZone _teleZone;
    private L2Clan _formerOwner = null;
@@ -364,6 +365,7 @@
       }

       updateOwnerInDB(clan); // Update in database
+      setShowNpcCrest(false);

       if(getSiege().getIsInProgress())
       {
@@ -552,6 +554,7 @@

             _taxPercent = rs.getInt("taxPercent");
             _treasury = rs.getInt("treasury");
+            _showNpcCrest = rs.getBoolean("showNpcCrest");
          }

          rs.close();
@@ -854,6 +857,20 @@
       return _treasury;
    }

+   public final boolean getShowNpcCrest()
+   {
+      return _showNpcCrest;
+   }
+
+   public final void setShowNpcCrest(boolean showNpcCrest)
+   {
+      if(_showNpcCrest != showNpcCrest)
+      {
+         _showNpcCrest = showNpcCrest;
+         updateShowNpcCrest();
+      }
+   }
+
    public FastList<SeedProduction> getSeedProduction(int period)
    {
       return period == CastleManorManager.PERIOD_CURRENT ? _production : _productionNext;
@@ -1324,6 +1341,36 @@
       }
    }

+   public void updateShowNpcCrest()
+   {
+      Connection con = null;
+      PreparedStatement statement;
+      try
+      {
+         con = L2DatabaseFactory.getInstance().getConnection();
+
+         statement = con.prepareStatement("UPDATE castle SET showNpcCrest = ? WHERE id = ?");
+         statement.setString(1, String.valueOf(getShowNpcCrest()));
+         statement.setInt(2, getCastleId());
+         statement.execute();
+         statement.close();
+      }
+      catch (Exception e)
+      {
+         _log.info("Error saving showNpcCrest for castle " + getName() + ": " + e.getMessage());
+      }
+      finally
+      {
+         try
+         {
+            con.close();
+         }
+         catch (Exception e)
+         {
+         }
+      }
+   }
+
    public boolean isNextPeriodApproved()
    {
       return _isNextPeriodApproved;

And Execute This File :

ALTER TABLE castle ADD showNpcCrest enum('true','false') DEFAULT 'false' NOT NULL;

(Don't Spam Please I Hope To Help People With This Topic)

Edited by Cronia
  • Like 1
Posted

Not even adapted to latest revision, put right credits.

yea is not for last revision But Anyway Easy to inside...I give Credits...Is not my Code...I found Frozen Project...Because I found errors in my Console I fix for work...:)

  • 1 year later...
  • 9 months later...
  • 7 months later...
Posted (edited)

_log -> LOGGER

 

Also why you add this code? Frozen already have it implemented, I believe.

Edited by SweeTs
Posted

i have rev 1132 and this code is not implemented...also l2jfrozen's website is down and i can't use their codes

Posted

Your imports are probably wrong.

Press Ctrl+Shift+O for imports auto correct.

No.. It's syntax issue. He facked up the code totally. Also, who cares it's so damn old post.

Posted

No.. It's syntax issue. He facked up the code totally. Also, who cares it's so damn old post.

I didn't noticed that .. :P

  • 4 weeks later...

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

    • Hello guys, gh0t from gh0tstudio here. This time we are putting to sale this beafitul landing page for your next server. Lineage 2 Server Landing Page Template u can check it here LINEAGE 2 DEMO SITE   Technology Stack - React 18 with TypeScript - Tailwind CSS for styling - Framer Motion for animations - Vite for fast development and builds - Multi-language support (i18n ready) Responsive Design The template is fully responsive and optimized for all screen sizes. Desktop, tablet, and mobile layouts have been carefully crafted to provide the best user experience on any device. The mobile version includes a unique notch-style hero design with custom clip paths. What is Included - Complete landing page source code - Hero section with parallax scroll effect - Server information section with animated cards - Character classes showcase with interactive gallery - Registration form (frontend only, styled and validated) - Donation packages display section - Download section for game client - Sticky navigation with transparency effects - Footer with social links - Multi-language system (Spanish/English ready) - All animations and transitions - Clean, documented code structure - Easy to customize colors and content   What is Not Included - Backend server or API - User registration panel/dashboard - Payment processing system for donations - Database integration - Connection to L2 game server - Online player counter module - Account management system - Hosting or domain   The template provides the complete frontend experience.  Price: $150 USD     Contact For purchase inquiries or questions about the template, please reach out directly.
    • 流量套利 + SMM 面板 — 强大的增长组合. 通过社交信号加强推广活动,提高信任度和转化率,加速扩张。 为套利专员和 SMM 提供的所有工具 — 在一个地方. 有效链接: SMM 面板: 前往 – 推广您的社交媒体账户。 其他服务和产品: 数字商品商店(网站): 前往 商店 Telegram 机器人: 前往 – 通过 Telegram 信使方便访问商店。 虚拟号码服务: 前往 用于购买 Telegram Stars 的 Telegram 机器人: 前往 – 在 Telegram 中快速且优惠地购买 Stars。 SMM 面板: 前往 – 推广您的社交媒体账户。 我们想向您展示当前促销和特别优惠列表,用于购买我们服务的产品和服务: 1. 您可以在首次购买时使用促销代码:SOCNET(15% 折扣) 2. 获取 $1 商店余额或 10–20% 折扣——只需在我们网站注册后按以下模板填写您的用户名:"SEND ME BONUS, MY USERNAME IS..." ——您需要在我们的论坛主题中发布! 3. SMM 面板首次试用可获得 $1:只需在我们的网站(Support)提交主题为 “Get Trial Bonus” 的工单。 4. 我们的 Telegram 频道和 Stars 购买机器人中每周都会赠送 Telegram Stars! 新闻: ➡ Telegram 频道: https://t.me/accsforyou_shop ➡ WhatsApp 频道: https://chat.whatsapp.com/K8rBy500nA73z27PxgaJUw?mode=ems_copy_t ➡ Discord 服务器: https://discord.gg/y9AStFFsrh 联系方式和支持: ➡ Telegram: https://t.me/socnet_support ➡ WhatsApp: https://wa.me/79051904467 ➡ Discord: socnet_support ➡ ✉ Email: solomonbog@socnet.store
    • 流量套利 + SMM 面板 — 强大的增长组合. 通过社交信号加强推广活动,提高信任度和转化率,加速扩张。 为套利专员和 SMM 提供的所有工具 — 在一个地方. 有效链接: SMM 面板: 前往 – 推广您的社交媒体账户。 其他服务和产品: 数字商品商店(网站): 前往 商店 Telegram 机器人: 前往 – 通过 Telegram 信使方便访问商店。 虚拟号码服务: 前往 用于购买 Telegram Stars 的 Telegram 机器人: 前往 – 在 Telegram 中快速且优惠地购买 Stars。 SMM 面板: 前往 – 推广您的社交媒体账户。 我们想向您展示当前促销和特别优惠列表,用于购买我们服务的产品和服务: 1. 您可以在首次购买时使用促销代码:SOCNET(15% 折扣) 2. 获取 $1 商店余额或 10–20% 折扣——只需在我们网站注册后按以下模板填写您的用户名:"SEND ME BONUS, MY USERNAME IS..." ——您需要在我们的论坛主题中发布! 3. SMM 面板首次试用可获得 $1:只需在我们的网站(Support)提交主题为 “Get Trial Bonus” 的工单。 4. 我们的 Telegram 频道和 Stars 购买机器人中每周都会赠送 Telegram Stars! 新闻: ➡ Telegram 频道: https://t.me/accsforyou_shop ➡ WhatsApp 频道: https://chat.whatsapp.com/K8rBy500nA73z27PxgaJUw?mode=ems_copy_t ➡ Discord 服务器: https://discord.gg/y9AStFFsrh 联系方式和支持: ➡ Telegram: https://t.me/socnet_support ➡ WhatsApp: https://wa.me/79051904467 ➡ Discord: socnet_support ➡ ✉ Email: solomonbog@socnet.store
    • Traffic arbitrage + SMM panel — a powerful combination for growth. Strengthen campaigns with social signals, increase trust and conversion, scale faster. All tools for arbitrage specialists and SMM — in one place. Active links: SMM Panel: Go to – promotion of your social media accounts. Other services and products: Digital goods store (Website): Go to Store Telegram bot: Go to – convenient access to the store via the Telegram messenger. Virtual numbers service: Go to Telegram bot for purchasing Telegram Stars: Go to – fast and profitable purchase of Stars in Telegram. SMM Panel: Go to – promotion of your social media accounts. We want to present to you the current list of promotions and special offers for purchasing products and services of our service: 1. You can use a promo code for your first purchase: SOCNET (15% discount) 2. Get $1 on your store balance or a 10–20% discount — just write your username after registering on our website using the following template: "SEND ME BONUS, MY USERNAME IS..." – you need to post this in our forum thread! 3. Get $1 for the first trial launch of the SMM Panel: just open a ticket with the subject “Get Trial Bonus” on our website (Support). 4. Weekly Telegram Stars giveaways in our Telegram channel and in our bot for purchasing stars! News: ➡ Telegram channel: https://t.me/accsforyou_shop ➡ WhatsApp channel: https://chat.whatsapp.com/K8rBy500nA73z27PxgaJUw?mode=ems_copy_t ➡ Discord server: https://discord.gg/y9AStFFsrh Contacts and support: ➡ Telegram: https://t.me/socnet_support ➡ WhatsApp: https://wa.me/79051904467 ➡ Discord: socnet_support ➡ ✉ Email: solomonbog@socnet.store
  • Topics

×
×
  • 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