Secret Experience

Secret Experience (https://secretexperience.net/)
-   [Lineage] Java Mods (https://secretexperience.net/lineage-java-mods/)
-   -   [L2JFree] Correção do Drop Boss (https://secretexperience.net/lineage-java-mods/10321-correcao-do-drop-boss.html)

KaL 02-07-2009 10:43 PM

Correção do Drop Boss
 
Este Mod permite a você separar o Drop de Boss & Raid Boss do Drop Rate, incluindo o Drop de Boss Jewels. Feito para L2jFree.

Abra o arquivo config/rates.properties
Código:

RateDropAdena = 1.
+// Adane Drop Rate For Raidboss,Boss
+RateDropAdenaBoss = 1.
+RateDropAdenaRaid = 1.

RateDropItems = 1.
+// Item Drop Rate For Raidboss,Boss
+RateDropItemsBoss = 1.
+RateDropItemsRaid = 1.
+// Jewels Drop Rate For Boss Jewels
+RateDropItemsJewel = 1.

RateDropSpoil = 1.
+// Spoil Rate For Raidboss,Boss
+RateDropSpoilRaid = 1.
+RateDropSpoilBoss = 1.

Arquivo com/l2jfree/Config.java

Código:

public static float  RATE_DROP_ADENA;
  +// Adane Drop Rate For Raidboss,Boss
  +public static float  RATE_DROP_ADENA_RAID;
  +public static float  RATE_DROP_ADENA_BOSS;
   
    public static float  RATE_DROP_ITEMS;
  +// Item Drop Rate For Raidboss,Boss
  +public static float  RATE_DROP_ITEMS_BOSS;
  +public static float  RATE_DROP_ITEMS_RAID;
  +// Jewels Drop Rate For Boss Jewels
  +public static float  RATE_DROP_ITEMS_JEWEL;
               
    public static float  RATE_DROP_SPOIL;
  +// Spoil Rate For Raidboss,Boss
  +public static float  RATE_DROP_SPOIL_BOSS;
  +public static float  RATE_DROP_SPOIL_RAID;
               
        RATE_DROP_ADENA                = Float.parseFloat(ratesSettings.getProperty("RateDropAdena", "1."));
                                +// Adane Drop Rate For Raidboss,Boss
        +RATE_DROP_ADENA_BOSS                = Float.parseFloat(ratesSettings.getProperty("RateDropAdenaBoss", "1."));
        +RATE_DROP_ADENA_RAID            = Float.parseFloat(ratesSettings.getProperty("RateDropAdenaRaid", "1."));               
       
        RATE_DROP_ITEMS                = Float.parseFloat(ratesSettings.getProperty("RateDropItems", "1."));
        +// Item Drop Rate For Raidboss,Boss                               
        +RATE_DROP_ITEMS_RAID          = Float.parseFloat(ratesSettings.getProperty("RateDropItemsRaid", "1."));
        +RATE_DROP_ITEMS_BOSS            = Float.parseFloat(ratesSettings.getProperty("RateDropItemsBoss", "1."));
            +// Jewels Drop Rate For Boss Jewels   
        +RATE_DROP_ITEMS_JEWEL          = Float.parseFloat(ratesSettings.getProperty("RateDropItemsJewels", "1."));
 
        RATE_DROP_SPOIL                = Float.parseFloat(ratesSettings.getProperty("RateDropSpoil", "1."));
          +// Spoil Rate For Raidboss,Boss
        +RATE_DROP_SPOIL_BOSS            = Float.parseFloat(ratesSettings.getProperty("RateDropSpoilBoss", "1."));
        +RATE_DROP_SPOIL_RAID            = Float.parseFloat(ratesSettings.getProperty("RateDropSpoilRaid", "1."));

Arquivo gameserver/model/L2Attackable.java

Código:

+import net.sf.l2j.gameserver.model.actor.instance.L2BossInstance;

    private RewardItem calculateRewardItem(L2PcInstance lastAttacker, L2DropData drop, int levelModifier, boolean isSweep)

          -// Applies Drop rates
          -if (drop.getItemId() == 57) dropChance *= Config.RATE_DROP_ADENA;
          -else if (isSweep) dropChance *= Config.RATE_DROP_SPOIL;
          -else dropChance *= Config.RATE_DROP_ITEMS;
   
   
          +// Applies Drop rates
          +if (drop.getItemId() == 57)
          +{
          +        if (this instanceof L2RaidBossInstance) dropChance *= Config.RATE_DROP_ADENA_RAID; //other raid boss
          +        else if (this instanceof L2BossInstance) dropChance *= Config.RATE_DROP_ADENA_BOSS; //Baium , Antharas , Valakas.....
          +        else dropChance *= Config.RATE_DROP_ADENA;
        +}
          +else if (isSweep)
          +{
          +        if (this instanceof L2RaidBossInstance) dropChance *= Config.RATE_DROP_SPOIL_RAID;
          +        else if (this instanceof L2BossInstance) dropChance *= Config.RATE_DROP_SPOIL_BOSS;
        +        else dropChance *= Config.RATE_DROP_SPOIL;
          +}
          +else
          +{
          +        if (drop.getItemId() == 6656 || drop.getItemId() == 6657 || drop.getItemId() == 6658 || drop.getItemId() == 6659 || drop.getItemId() == 6660 || drop.getItemId() == 6661 || drop.getItemId() == 6662 || drop.getItemId() == 8191 ) dropChance *= Config.RATE_DROP_ITEMS_JEWEL;
          +        else if (this instanceof L2RaidBossInstance) dropChance *= Config.RATE_DROP_ITEMS_RAID;
          +        else if (this instanceof L2BossInstance) dropChance *= Config.RATE_DROP_ITEMS_BOSS;
          +        else dropChance *= Config.RATE_DROP_ITEMS;
          +}       


      private RewardItem calculateCategorizedRewardItem(L2PcInstance lastAttacker, L2DropCategory categoryDrops, int levelModifier)
     
          -// Applies Drop rates
          -categoryDropChance *= Config.RATE_DROP_ITEMS;

        +// Applies Drop rates

          +if (this instanceof L2RaidBossInstance) categoryDropChance *= Config.RATE_DROP_ITEMS_RAID;
          +else if (this instanceof L2BossInstance) categoryDropChance *= Config.RATE_DROP_ITEMS_BOSS;
          +else categoryDropChance *= Config.RATE_DROP_ITEMS;
                                 
              -int dropChance = drop.getChance();
              -if (drop.getItemId() == 57) dropChance *= Config.RATE_DROP_ADENA;
              -else dropChance *= Config.RATE_DROP_ITEMS;
             
              +int dropChance = drop.getChance();
              +dropChance *= champRate;
              +if (drop.getItemId() == 57)
              +{       
              +  if (this instanceof L2RaidBossInstance) dropChance *= Config.RATE_DROP_ADENA_RAID;
              +  else if (this instanceof L2BossInstance) dropChance *= Config.RATE_DROP_ADENA_BOSS;
              +  else dropChance *= Config.RATE_DROP_ADENA;
              +}
              +          else
              +{
              +  if (drop.getItemId() == 6656 || drop.getItemId() == 6657 || drop.getItemId() == 6658 || drop.getItemId() == 6659 || drop.getItemId() == 6660 || drop.getItemId() == 6661 || drop.getItemId() == 6662 || drop.getItemId() == 8191 ) dropChance *= Config.RATE_DROP_ITEMS_JEWEL;
              +  else if (this instanceof L2RaidBossInstance) dropChance *= Config.RATE_DROP_ITEMS_RAID;
              +  else if (this instanceof L2BossInstance) dropChance *= Config.RATE_DROP_ITEMS_BOSS;
              +  else dropChance *= Config.RATE_DROP_ITEMS;
              +}

Creditos : psYch0 (tecdnb)


Horários baseados na GMT -3. Agora são 05:47 AM.

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.3.0