оно?: 
 
Скрытый текстpackage quests.AugmentShop;  
import com.l2jfrozen.gameserver.model.actor.instance.L2NpcInstance; 
import com.l2jfrozen.gameserver.model.actor.instance.L2PcInstance; 
import com.l2jfrozen.gameserver.model.quest.Quest; 
import com.l2jfrozen.gameserver.model.quest.QuestState; 
import com.l2jfrozen.gameserver.model.Inventory; 
import java.sql.Connection; 
import java.sql.PreparedStatement; 
import com.l2jfrozen.util.database.L2DatabaseFactory; 
import java.util.logging.Level; 
import com.l2jfrozen.gameserver.model.actor.instance.L2ItemInstance; 
  
/** 
 *  
 * @author adapted by Samar 2011 RUSSIA 
 *  
 */ 
public class AugmentShop extends Quest 
{ 
	private final static int ITEM_ID = 57; 
	private final static int ITEM_COUNT = 1000000; 
	private final static String qn = "AugmentShop"; 
	private final static int NPC = 91000; 
  
	public AugmentShop(int questId, String name, String descr)  
	{ 
		super(questId, name, descr); 
		addFirstTalkId(NPC); 
		addStartNpc(NPC); 
		addTalkId(NPC); 
	} 
  
	@Override 
	public String onAdvEvent(String event, L2NpcInstance npc, L2PcInstance player) 
	{ 
		String htmltext = ""; 
  
		if (event.equalsIgnoreCase("active")) 
		{ 
			htmltext = "active.htm"; 
		} 
  
		else if (event.equalsIgnoreCase("passive")) 
		{ 
			htmltext = "passive.htm"; 
		} 
  
		else if (event.equalsIgnoreCase("chance")) 
		{ 
			htmltext = "chance.htm"; 
		} 
  
		else 
		{ 
  
			updateAugment(player, Integer.parseInt(event.substring(0,5)), Integer.parseInt(event.substring(6,10)), Integer.parseInt(event.substring(11,13))); 
		} 
  
  
		return htmltext; 
	} 
  
	@Override 
	public String onFirstTalk(L2NpcInstance npc, L2PcInstance player) 
	{ 
		String htmltext = ""; 
		QuestState qs = player.getQuestState(qn); 
		if (qs == null) 
			qs = newQuestState(player); 
		htmltext = "main.htm"; 
		return htmltext; 
	} 
  
	public static void main(String[] args) 
	{ 
		new AugmentShop(-1, qn, "AugmentShop"); 
	} 
  
  
	private static void updateAugment(L2PcInstance player, int attributes, int skill, int level) 
	{ 
		L2ItemInstance item = player.getInventory().getPaperdollItem(Inventory.PAPERDOLL_RHAND); 
		if (player.getInventory().getPaperdollItem(Inventory.PAPERDOLL_RHAND) == null) 
  
		{ 
			player.sendMessage("You have to equip a weapon."); 
			return; 
		} 
  
		if (player.getInventory().getPaperdollItem(Inventory.PAPERDOLL_RHAND).isAugmented() 
) 
		{ 
			player.sendMessage("The weapon is already augmented."); 
			return; 
		} 
  
		if (player.getInventory().getInventoryItemCount(ITEM_ID, -1) < ITEM_COUNT) 
		{ 
			player.sendMessage("You dont have enough item."); 
			return; 
		} 
  
		Connection con = null; 
		try 
		{ 
			player.destroyItemByItemId("Consume", ITEM_ID, ITEM_COUNT, player, true); 
			con = L2DatabaseFactory.getInstance().getConnection(); 
			PreparedStatement statement = con.prepareStatement("REPLACE INTO augmentations VALUES(?,?,?,?)"); 
			statement.setInt(1, item.getObjectId()); 
  
				statement.setInt(2, attributes*65536+1); 
				statement.setInt(3, skill); 
				statement.setInt(4, level); 
  
			statement.executeUpdate(); 
			player.sendMessage("Succesfully augmented. You have to relog now."); 
			statement.close(); 
  
		} 
		catch (Exception e) 
		{ 
			_log.log(Level.SEVERE, "Could not augment item: "+item.getObjectId()+" ", e); 
		} 
		finally 
		{ 
		try 
		{ 
  
			/*L2DatabaseFactory.close(con);*/ 
			con.close(); 
			} 
			catch (Exception e) 
			{ 
			} 
		} 
	} 
  
  
}