Jump to content

Recommended Posts

Posted

Well , It's Been AGES since i shared this thing , and i thought it would be better if i shared the new version to you.

no more talking.

 

Here's The Diff:

Index: java/config/l2jmods.properties
===================================================================
--- java/config/l2jmods.properties	(revision 4307)
+++ java/config/l2jmods.properties	(working copy)
@@ -132,3 +132,20 @@
# ex.: 1;2;3;4;5;6
# no ";" at the start or end
TvTEventDoorsCloseOpenOnStartEnd =
+
+#---------------------#
+#Noblesse Item Configs
+#---------------------#
+NoblesseItemEnabled = False
+
+# ID Of The Noblesse Item
+# Default : 6673 ( Festival Adena )
+NoblesseItemId = 6673
+
+# Noblesse Item Lvl Restriction
+# A Player Lower than 76 level won't be able to use this item
+NoblesseItemLvlRestriction = True
+
+# Noblesse Item Sub Restriction
+# A Player That is not with his subclass won't be able to use this item
+NoblesseItemSubRestriction = True
\ No newline at end of file
Index: java/net/sf/l2j/Config.java
===================================================================
--- java/net/sf/l2j/Config.java	(revision 4307)
+++ java/net/sf/l2j/Config.java	(working copy)
@@ -882,6 +882,11 @@
     public static boolean L2JMOD_WEDDING_FORMALWEAR;
     public static int L2JMOD_WEDDING_DIVORCE_COSTS;

+    public static int NOBLESSE_ITEM_ID;
+    public static boolean NOBLESSE_ITEM_LEVEL_RESTRICTION;
+    public static boolean NOBLESSE_ITEM_SUBCLASS_RESTRICTION;
+    public static boolean NOBLESSE_ITEM_ENABLED;
+    
     // Packet information
     /** Count the amount of packets per minute ? */
     public static boolean  COUNT_PACKETS           = false;
@@ -1858,7 +1863,11 @@
                 L2JMOD_WEDDING_SAMESEX                  = Boolean.parseBoolean(L2JModSettings.getProperty("WeddingAllowSameSex", "False"));
                 L2JMOD_WEDDING_FORMALWEAR               = Boolean.parseBoolean(L2JModSettings.getProperty("WeddingFormalWear", "True"));
                 L2JMOD_WEDDING_DIVORCE_COSTS            = Integer.parseInt(L2JModSettings.getProperty("WeddingDivorceCosts", "20"));
-
+                NOBLESSE_ITEM_ID						= Integer.parseInt(L2JModSettings.getProperty("NoblesseItemId", "6673"));
+                NOBLESSE_ITEM_LEVEL_RESTRICTION			= Boolean.parseBoolean(L2JModSettings.getProperty("NoblesseItemLvlRestriction", "True"));
+                NOBLESSE_ITEM_SUBCLASS_RESTRICTION		= Boolean.parseBoolean(L2JModSettings.getProperty("NoblesseItemSubRestriction", "True"));
+                NOBLESSE_ITEM_ENABLED					= Boolean.parseBoolean(L2JModSettings.getProperty("NoblesseItemEnabled", "False"));
+                
                 if (TVT_EVENT_PARTICIPATION_NPC_ID == 0)
                 {
                     TVT_EVENT_ENABLED = false;
Index: java/net/sf/l2j/gameserver/GameServer.java
===================================================================
--- java/net/sf/l2j/gameserver/GameServer.java	(revision 4307)
+++ java/net/sf/l2j/gameserver/GameServer.java	(working copy)
@@ -136,6 +136,7 @@
import net.sf.l2j.gameserver.handler.itemhandlers.Harvester;
import net.sf.l2j.gameserver.handler.itemhandlers.MercTicket;
import net.sf.l2j.gameserver.handler.itemhandlers.MysteryPotion;
+import net.sf.l2j.gameserver.handler.itemhandlers.NoblesseItem;
import net.sf.l2j.gameserver.handler.itemhandlers.PaganKeys;
import net.sf.l2j.gameserver.handler.itemhandlers.Potions;
import net.sf.l2j.gameserver.handler.itemhandlers.Recipes;
@@ -476,6 +477,10 @@
		_itemHandler.registerItemHandler(new SpecialXMas());
		_itemHandler.registerItemHandler(new SummonItems());
		_itemHandler.registerItemHandler(new BeastSpice());
+		
+		if (Config.NOBLESSE_ITEM_ENABLED)
+		_itemHandler.registerItemHandler(new NoblesseItem());
+		
         _log.config("ItemHandler: Loaded " + _itemHandler.size() + " handlers.");

		_skillHandler = SkillHandler.getInstance();
Index: java/net/sf/l2j/gameserver/handler/itemhandlers/NoblesseItem.java
===================================================================
--- java/net/sf/l2j/gameserver/handler/itemhandlers/NoblesseItem.java	(revision 0)
+++ java/net/sf/l2j/gameserver/handler/itemhandlers/NoblesseItem.java	(revision 0)
@@ -0,0 +1,54 @@
+package net.sf.l2j.gameserver.handler.itemhandlers;
+
+import net.sf.l2j.Config;
+import net.sf.l2j.gameserver.handler.IItemHandler;
+import net.sf.l2j.gameserver.model.L2ItemInstance;
+import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
+import net.sf.l2j.gameserver.model.actor.instance.L2PlayableInstance;
+import net.sf.l2j.gameserver.serverpackets.MagicSkillUser;
+
+public class NoblesseItem implements IItemHandler
+{
+    private static final int ITEM_IDS[] = 
+    {
+        Config.NOBLESSE_ITEM_ID
+    };
+    
+    public void useItem(L2PlayableInstance playable, L2ItemInstance item)
+    {
+            if(!(playable instanceof L2PcInstance))
+                return;
+            L2PcInstance activeChar = (L2PcInstance)playable;
+            if(activeChar.isNoble())
+            {
+                activeChar.sendMessage("You Are Already A Noblesse!");
+                return;
+            } 
+            if (activeChar.getLevel() < 76 && Config.NOBLESSE_ITEM_LEVEL_RESTRICTION)
+            {
+            	activeChar.sendMessage("You Must Be Over 76 Level To Use This Item!");
+            	return;
+            }
+            if (!activeChar.isSubClassActive() && Config.NOBLESSE_ITEM_SUBCLASS_RESTRICTION)
+            {
+            	activeChar.sendMessage("You Must Be With Your Subclass To Use This Item!");
+            	return;
+            }
+            else
+            {
+                MagicSkillUser MSU = new MagicSkillUser(playable, activeChar, 2023, 1, 1, 0);
+                activeChar.sendPacket(MSU);
+                activeChar.broadcastPacket(MSU);
+                activeChar.setNoble(true);
+                activeChar.sendMessage("You Are Now a Noble,You Are Granted With Noblesse Status , And Noblesse Skills.");
+                activeChar.broadcastUserInfo();
+                activeChar.getInventory().addItem("Noblesse Tiara",7694, 1, activeChar, playable);
+                playable.destroyItem("Consume", item.getObjectId(), 1, null, false);
+            }
+        }
+
+    public int[] getItemIds()
+    {
+        return ITEM_IDS;
+    }
+}
\ No newline at end of file

 

Enjoy.

Posted

Stefoulis is back ? :o Niceeee

Can i ask?What do you mean new version?What difference this custom item have?

 

 

well , the last version i've shared

hadn't any restrictions about level and active subclass.

eh , this gives you noblesse tiara when u click the item

also , when u clicked appeared the social action that appears when you become a hero. now its just a firework effect.

last one, the other wasnt that configurable. the only config was enable/disable.

now it has configs about the restrictions , the item id and enable/disable.

Posted

well , the last version i've shared

hadn't any restrictions about level and active subclass.

eh , this gives you noblesse tiara when u click the item

also , when u clicked appeared the social action that appears when you become a hero. now its just a firework effect.

last one, the other wasnt that configurable. the only config was enable/disable.

now it has configs about the restrictions , the item id and enable/disable.

too nice.

Thnx for sharing.

Keep up :D

Posted

WOOOOOOW!

I'm soo excited, Stef is BACK!

I hope you make the forum full of shares mate!

Jeus are u that... god..

 

Anyway, nice to have u back stef.

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

    • 🧵 [FREE RELEASE] L2Updater + AntiCheat + Build System + Full Website ⚔️ Presentation After a long time of development, testing, and improvements, I decided to release this project for free to the community. This is a complete package for anyone who wants to build a Lineage II server with a professional-level structure. The idea was not just to create a simple tool, but a full ecosystem that covers everything a modern server needs. 🚀 What’s Included This release contains: ✔ Modern Launcher (Windows) ✔ Smart Update System (FULL + PATCH) ✔ AntiCheat protection (client-side DLL) ✔ Build System for generating updates ✔ Complete Website (register + ranking + pages) Everything is integrated to work together. 🧠 Project Concept The goal of this project is simple: Instead of using outdated launchers or fragmented systems, this package provides: ✔ Organization ✔ Performance ✔ Security ✔ Scalability 🔄 Update System The updater is based on a manifest system, where: ✔ The client checks versions automatically ✔ Only changed files are downloaded (patch system) ✔ Full client is downloaded if needed ✔ Files are validated using hash This results in: Faster updates Lower bandwidth usage Better user experience 🛡️ AntiCheat System The AntiCheat included in this package works directly on the client side. It provides: ✔ Protection against modified clients ✔ Basic cheat detection ✔ File integrity validation ✔ Blocking of suspicious environments This helps maintain a fair and controlled gameplay environment. 🏗️ Build System (Patch Creator) A full build system is included to automate updates. Features: ✔ Detect changed files automatically ✔ Generate FULL packages ✔ Generate PATCH updates ✔ Create manifest.json automatically This allows you to manage updates like: 🌐 Website System A complete website is included, featuring: ✔ Account registration ✔ Player ranking (PvP / PK) ✔ News pages ✔ Integration with the server database 🎯 Why Use This? Many servers fail because they lack structure. This package solves that by providing: ✔ A complete environment ✔ Organized update flow ✔ Integrated systems ✔ Ready-to-use base ⚙️ Technical Details ✔ Launcher developed with modern UI concepts ✔ Patch system based on hash validation ✔ Integration between server, launcher, and website ✔ Expandable architecture 📦 Download 👉 (https://mega.nz/file/AusTnYQK#ZhvArkZpDS7FH60TXd2rg5wT2OxSg9v2pJ2GLrJbyiQ / download link here) 💬 Final Words If your server does not have a system like this today: This project is designed to help you reach a higher level.  
  • Topics

×
×
  • Create New...

Important Information

This community uses essential cookies to function properly. Non-essential cookies and third-party services are used only with your consent. Read our Privacy Policy and We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue..