Jump to content

Question

Posted (edited)

http://postimg.org/image/em3006ejn/

As the topic title, im looking for augment shop "lineage 2 interlude java" , "acis" etc.I mean one npc which selling augment skills, example(1 event coin - 1 lvl passive skill PvP Duel Might or else 1 event coin for 1 more lvl of the skill) Is there a free augment shop i dont know but if someone can help me with something , he will be welcome.
The topic is application
Lineage II! Edited by rlfem123

7 answers to this question

Recommended Posts

  • 0
Posted

http://postimg.org/image/em3006ejn/

As the topic title, im looking for augment shop "lineage 2 interlude java" , "acis" etc.I mean one npc which selling augment skills, example(1 event coin - 1 lvl passive skill PvP Duel Might or else 1 event coin for 1 more lvl of the skill) Is there a free augment shop i dont know but if someone can help me with something , he will be welcome.

The topic is application

Lineage II!

i think is shared on the forum. start the searching

  • 0
Posted

I found one augment shop from big russia :D , but i have one problem with 2 methods , i mean "public String onAdvEvent(String event, L2NpcInstance npc, L2PcInstance player)"   and    "public String onFirstTalk(L2NpcInstance npc, L2PcInstance player)"

          

 

 

package custom.AugmentShop;

 

import net.sf.l2j.gameserver.model.actor.instance.L2NpcInstance;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.model.quest.Quest;
import net.sf.l2j.gameserver.model.quest.QuestState;
import net.sf.l2j.gameserver.model.Inventory;
import java.sql.Connection;
import java.sql.PreparedStatement;
import net.sf.l2j.L2DatabaseFactory;
import java.util.logging.Level;
import net.sf.l2j.gameserver.model.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)
{
}
}
}
 
 
}

 

 

 

 

How i can to fix it? Who method i can use??anyone? 

  • 0
Posted (edited)

remove the

@Override

and press ctrl + shift + o for organize the imports.

 

and change the L2ItemInstance to ItemInstance 

 

I tried that but when i click on the skill , example duel might i get error like this -> data/scripts/AugmenstShop/AugmenstShop.java , String index out of range: 13 , maybe store cant sell skill  i dont know anyone???

Edited by rlfem123
  • 0
Posted

Hi all now the npc is ok. Here i will post my fixed code for jacis. Good luck to all :)

 

package custom.AugmentShop;
 
import net.sf.l2j.gameserver.model.actor.L2Npc;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.model.item.instance.ItemInstance;
import net.sf.l2j.gameserver.model.itemcontainer.Inventory;
import net.sf.l2j.gameserver.model.quest.Quest;
import net.sf.l2j.gameserver.model.quest.QuestState;
import java.sql.Connection;
import java.sql.PreparedStatement;
import net.sf.l2j.L2DatabaseFactory;
import java.util.logging.Level;
 
/**
 * 
 * @author Samar , fixed by rlfem123
 * 
 */
public class AugmentShop extends Quest
{
private final static int ITEM_ID = 4037;
private final static int ITEM_COUNT = 1;
private final static String qn = "AugmentShop";
private final static int NPC = 50005;
 
public AugmentShop(int questId, String name, String descr) 
{
super(questId, name, descr);
addFirstTalkId(NPC);
addStartNpc(NPC);
addTalkId(NPC);
}
 
@Override
public String onAdvEvent(String event, L2Npc 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(L2Npc 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)
{
ItemInstance 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)
{
}
}
}
 
 
}

 

 

 

 

Thats it, and html files scripts/augmentshop/augmentshop/main.htm , active.htm , passive.htm , chance.htm   Have Fun

  • 0
Posted

 

Hi all now the npc is ok. Here i will post my fixed code for jacis. Good luck to all :)

 

package custom.AugmentShop;
 
import net.sf.l2j.gameserver.model.actor.L2Npc;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.model.item.instance.ItemInstance;
import net.sf.l2j.gameserver.model.itemcontainer.Inventory;
import net.sf.l2j.gameserver.model.quest.Quest;
import net.sf.l2j.gameserver.model.quest.QuestState;
import java.sql.Connection;
import java.sql.PreparedStatement;
import net.sf.l2j.L2DatabaseFactory;
import java.util.logging.Level;
 
/**
 * 
 * @author Samar , fixed by rlfem123
 * 
 */
public class AugmentShop extends Quest
{
private final static int ITEM_ID = 4037;
private final static int ITEM_COUNT = 1;
private final static String qn = "AugmentShop";
private final static int NPC = 50005;
 
public AugmentShop(int questId, String name, String descr) 
{
super(questId, name, descr);
addFirstTalkId(NPC);
addStartNpc(NPC);
addTalkId(NPC);
}
 
@Override
public String onAdvEvent(String event, L2Npc 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(L2Npc 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)
{
ItemInstance 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)
{
}
}
}
 
 
}

 

 

 

 

Thats it, and html files scripts/augmentshop/augmentshop/main.htm , active.htm , passive.htm , chance.htm   Have Fun

 

can i have this code for frozne ??

Guest
This topic is now closed to further replies.


  • Posts

    • We are not back on 2005, life in our days is harder than before, in complection with other things yes, L2 has not the same look.
    • 🌍 https://l2origins.org/ 🛡️ LINEAGE II ORIGINS — SEASON 1 🛡️ 🌑 High Five Classic | True Old-School Experience 🌑 ⚠️ Opening on March 6th at 16:00 Welcome back to the origins of Lineage II. ⚔️ ABOUT THE SERVER Lineage2 Origins is built for players who miss the true retail feeling. Classic progression, real challenges, fair competition — enhanced only with carefully selected QoL features, never breaking the original gameplay. 🌿 PHASED GEAR PROGRESSION 🟢 Month 1: Vesper max 🟢 Month 2: Vorpal unlocked 🟢 Month 3+: Top-grade & Elegia released 🚫 NO AUTO-FARM ✔️ External auto-clicker allowed (1 per client, download page only) ❌ Bots & illegal automation forbidden 🛡️ Strong anti-bot + captcha system ⚠️ AFK players will be punished — stay active or logout 📊 RATES & CORE SETTINGS 🔹 Adena: x5 🔹 Drop / Spoil: x5 🔹 Skill EXP: x15 🔹 Max Windows: 2 per PC 🔹 Subclass: Lv 85 (no quest required) 🔹 Party Level Diff: 30 (55–85) 🔹 No custom items (armors / weapons / jewelry) 🔥 FEATURES ✨ Global & Raid Teleport ✨ NPC Buffer (34 buffs) ✨ Auto Events & PvP Zones ✨ Ranking & Clan Progression ✨ GM Shop & Premium System ✨ All-In-One Community Board ✨ Party & Solo Instances ✨ Siege & Territory War Rewards ✨ RaidBoss Kill Rewards ✨ Lucky Creature Event ✨ Daily Login Rewards ✨ Advanced DDoS Protection & Backups ⚔️ ENCHANTMENTS 🔸 Safe: +3 🔸 Max: +12 (Month 2: +14 | Month 3: +16) 🔸 Blessed: 50% (Premium 65%) 🔸 Normal: 45% (Premium 60%) 🏟️ OLYMPIAD 🔹 Max Enchant: +6 🔹 Start Players: 4 🔹 Period: 1st & 15th 🏰 SIEGE & TW 🔹 Siege Time: 16:00 & 20:00 🔹 Territory War: 20:00 🔹 Max Wards: 3 per Castle 🌌 Lineage2 Origins Fair. Competitive. Nostalgic. A true return to the origins of Lineage II.
    • Bastante confiable, ya trabaje en varios proyectos con el y la verdad te da confianza que hoy en dia poca gente hay asi lo  recomiendo 100%  Gracias por todo amigo ! seguiremos trabajando juntos segurisimamente! 
  • 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..