Jump to content

Recommended Posts

Posted

Guys, i made an itemhandler (credits to me so don't start saying c/p and and and), that when you double click on gold dragon(3481), cancel augment window pops up, and the item GETS consumed(not 100%). <<I have tested it so give me feedback. I won't explain how to register an itemhandler or how to register it with configs... there are plenty of guides... (MADE IN L2J INTERLUDE)

 

Here you go: Create a file CancelAugPortable.java in java/net/sf/l2j/gameserver/handler/itemhandlers and paste:

/*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2, or (at your option)
* any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
* 02111-1307, USA.
*
* http://www.gnu.org/copyleft/gpl.html
*/
package net.sf.l2j.gameserver.handler.itemhandlers;

import net.sf.l2j.gameserver.handler.IItemHandler;
import net.sf.l2j.gameserver.model.L2ItemInstance;
import net.sf.l2j.gameserver.model.actor.instance.L2PlayableInstance;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.serverpackets.ExShowVariationMakeWindow;


public class CancelAugPortable implements IItemHandler
{
   private static final int ITEM_IDS[] = 
   {
   	3481
   };

   public void useItem(L2PlayableInstance playable, L2ItemInstance item)
   {
   	if (!(playable instanceof L2PcInstance))
		return;
           L2PcInstance activeChar = (L2PcInstance)playable;                
          if (activeChar.isInCombat())
           	{
           	activeChar.sendMessage("You cant cancel Augment while you are attacking");
           	return;
           	}
           else if (activeChar.isInJail())
           {
           	activeChar.sendMessage("You cant cancel Augment while you are in jail");
           	return;
           }
           else if (activeChar.isInOlympiadMode())
          {
      		activeChar.sendMessage("You cant cancel Augment while you are on olympiad game");
      		return;
          }
           else              
                  activeChar.sendPacket(new ExShowVariationCancelWindow());

       }
   public int[] getItemIds()
   {
       return ITEM_IDS;
   }


}

 

Idea was taken from TheEnd's share with portable augment.

Posted

To be honest, nothing special, just:

 

1. Open Eclipse

 

2. Create new class.

 

3. C/p protections (if/else) from other handler

 

4. Insert new packet.

 

Thats all, but anyway, can be useful for someone.

Posted

To be honest, nothing special, just:

 

1. Open Eclipse

 

2. Create new class.

 

3. C/p protections (if/else) from other handler

 

4. Insert new packet.

 

Thats all, but anyway, can be useful for someone.

pwned

anyway gj

Posted

To be honest, nothing special, just:

 

1. Open Eclipse

 

2. Create new class.

 

3. C/p protections (if/else) from other handler

 

4. Insert new packet.

 

Thats all, but anyway, can be useful for someone.

well, i copied the base code from portable aug., but some changes were needed to work... not only the imports, portable aug was made for gracia final...

Posted

Matim is correct

Well.........

well, i copied the base code from portable aug., but some changes were needed to work... not only the imports, portable aug was made for gracia final...

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

    • ## [1.5.1] - 2026-01-30   ### 🐛 Bug Fixes - **Top Voters**: Top voters list now loads correctly for inactive servers (previously showed "Server not found"). - **View Counter**: Server info page view count now records correctly for inactive servers.   ### 🔄 Improvements - **My Servers – Hide/Active**: The hide/active toggle now works correctly and is only shown when the server is approved (active) by an admin. Owner hide/show is separate from admin status. Toggling no longer causes a full page refresh. - **Accessibility**: Form fields on the server info edit form, add server form, and related pages now have proper labels and IDs for screen readers and autofill.
    • LIVE VERIFICATION? SUMSUB? “IMPOSSIBLE”? ▪ Spoiler: it is possible — if you know who to work with. A client came in with a task to pass **live verification** on **WantToPay**, a Telegram virtual card service. On the platform side — **Sumsub**: liveness check, SMS, manual review. “Fast” and “by eye” simply don’t work here. › What was done: → analyzed the verification scenario and Sumsub requirements → built the correct flow: phone number, email, timing → **completed live verification remotely, without account handover** → handled SMS and confirmation codes → brought the process to final approval ▪ Result: → verification passed → access granted → no flags or repeat requests ▪ Live verification is not luck. It’s scenario-based preparation — not hope. › TG: @mustang_service ( https:// t.me/ mustang_service ) › Channel: Mustang Service ( https:// t.me/ +6RAKokIn5ItmYjEx ) *All data is published with the client’s consent.* #verification #sumsub #livecheck #kyc #case
    • IMPORTANT INFO: In a few days, I will switch to completely new code, written from scratch with a new download system, patch building and management system. The Updater will become true 2026 code with "foolproof systems". I'm going to create a Discord server for customers to request new ideas and features. FIRST CUSTOMERS ARE ALREADY USING THE NEW UPDATER ON LIVE SERVERS! Watch this topic for upcoming info because the new updater is around the corner! Yes, you can still use self-update on the previous updater! No, the new updater won't be compatible with the old patch system! A new build is required, but players who already have game files won't have to download the entire patch again! New templates and updates to existing templates are coming soon! Sneak peek:  
  • 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..