Jump to content

Recommended Posts

Posted

 

Sorry, my English!

Sorry, I have not seen that post...

But here's my idea for my server. I coded it!

And I do not find someone to share here and I do it.

 

You can use this code for perfect

 

if (scrollTemplate.isBlessed())

{

// blessed enchant - clear enchant value

-      activeChar.sendPacket(SystemMessage.getSystemMessage(SystemMessageId.BLESSED_ENCHANT_FAILED));

-            item.setEnchantLevel(0);

+ activeChar.sendMessage("THE BLESSED ENCHANT FAILED!");

+ if (item.getEnchantLevel() >= 10)

+ {

+ activeChar.sendMessage("The enchant value of the item became decreases by 1.");

+ item.setEnchantLevel(item.getEnchantLevel() - 1);

+ item.updateDatabase();

+ activeChar.sendPacket(new EnchantResult(3, 0, 0));

+ }

+ if (item.getEnchantLevel() < 10)

+ {

+ activeChar.sendMessage("The enchant value of the item became 0.");

+ item.setEnchantLevel(0);

+ item.updateDatabase();

+ activeChar.sendPacket(new EnchantResult(3, 0, 0));

+ }

if (Config.LOG_ITEM_ENCHANTS)

{

LogRecord record = new LogRecord(Level.INFO, "Blessed Fail");

record.setParameters(new Object[]{activeChar, item, scroll, support, chance});

record.setLoggerName("item");

_logEnchant.log(record);

}

}

 

 

When you used Blessed enchant:

If your enchant item <10: The enchant value of the item became 0

If your enchant item >10: The enchant value of the item became decreases by 1

Posted

Conheonit can you tell more exactly what to do ? ,because not all are experienced to know where to go [i saw this topic now ,so my question was kinda late]

 

Where to go ,what to do ,simple

Posted

Conheonit can you tell more exactly what to do ? ,because not all are experienced to know where to go [i saw this topic now ,so my question was kinda late]

 

Where to go ,what to do ,simple

 

Open Eclipse, Your source and go to

"com.l2jserver.gameserver.network.clientpackets/RequestEnchantItem.java"

  • 1 month later...
  • 2 weeks later...
Posted

You can used (Rnd.get(100) < 30)) ( with 30%, don't test )

 

EX:

else if ((target.getLevel() > 94) && (Rnd.get(100) < 30))

{

addExpAndSp(Config.ADD_EXP, Config.ADD_SP);

addItem("Loot", 22333, 1, this, true);

sendMessage("You won 1 HERO BOX for a pvp kill!");

}

Posted

as adding a random value?

 

example: fail enchant +16, decrease -2 or -5 = random result: +11 or +14

 

is an idea

 

thanks for share sorry my english

 

you can use :

 

+                  activeChar.sendMessage("THE BLESSED ENCHANT FAILED!");
+                  if (item.getEnchantLevel() >= 10)
+                  {
+                  activeChar.sendMessage("The enchant value of the item became decreases by 1.");                  
+                  item.setEnchantLevel(item.getEnchantLevel() - Rnd.get(2,4));
+                  item.updateDatabase();
+                  activeChar.sendPacket(new EnchantResult(3, 0, 0));
+                  }
+                  if (item.getEnchantLevel() < 10)
+                  {
+                  activeChar.sendMessage("The enchant value of the item became 0.");                  
+                  item.setEnchantLevel(0);
+                  item.updateDatabase();
+                  activeChar.sendPacket(new EnchantResult(3, 0, 0));
+                  }                  

 

Rnd.get(2,4) = random 2 to 4 value.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...