|
@@ -1045,7 +1045,7 @@ public class L2Attackable extends L2NpcInstance
|
|
|
// We should multiply by the server's drop rate, so we always get a low chance of drop for deep blue mobs.
|
|
|
// NOTE: This is valid only for adena drops! Others drops will still obey server's rate
|
|
|
deepBlueDrop = 3;
|
|
|
- if (drop.getItemId() == 57) deepBlueDrop *= isRaid()? (int)Config.RATE_DROP_ITEMS_BY_RAID : (int)Config.RATE_DROP_ITEMS;
|
|
|
+ if (drop.getItemId() == 57) deepBlueDrop *= isRaid()&& !isRaidMinion()? (int)Config.RATE_DROP_ITEMS_BY_RAID : (int)Config.RATE_DROP_ITEMS;
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -1057,7 +1057,7 @@ public class L2Attackable extends L2NpcInstance
|
|
|
// Applies Drop rates
|
|
|
if (drop.getItemId() == 57) dropChance *= Config.RATE_DROP_ADENA;
|
|
|
else if (isSweep) dropChance *= Config.RATE_DROP_SPOIL;
|
|
|
- else dropChance *= isRaid() ? Config.RATE_DROP_ITEMS_BY_RAID : Config.RATE_DROP_ITEMS;
|
|
|
+ else dropChance *= isRaid()&&!isRaidMinion() ? Config.RATE_DROP_ITEMS_BY_RAID : Config.RATE_DROP_ITEMS;
|
|
|
|
|
|
if (Config.L2JMOD_CHAMPION_ENABLE && isChampion())
|
|
|
dropChance *= Config.L2JMOD_CHAMPION_REWARDS;
|
|
@@ -1144,7 +1144,7 @@ public class L2Attackable extends L2NpcInstance
|
|
|
if (Config.DEEPBLUE_DROP_RULES) categoryDropChance = ((categoryDropChance - ((categoryDropChance * levelModifier)/100)) / deepBlueDrop);
|
|
|
|
|
|
// Applies Drop rates
|
|
|
- categoryDropChance *= isRaid() ? Config.RATE_DROP_ITEMS_BY_RAID : Config.RATE_DROP_ITEMS;
|
|
|
+ categoryDropChance *= isRaid() && !isRaidMinion() ? Config.RATE_DROP_ITEMS_BY_RAID : Config.RATE_DROP_ITEMS;
|
|
|
if (Config.L2JMOD_CHAMPION_ENABLE && isChampion())
|
|
|
categoryDropChance *= Config.L2JMOD_CHAMPION_REWARDS;
|
|
|
|
|
@@ -1157,7 +1157,7 @@ public class L2Attackable extends L2NpcInstance
|
|
|
// Check if an Item from this category must be dropped
|
|
|
if (Rnd.get(L2DropData.MAX_CHANCE) < categoryDropChance)
|
|
|
{
|
|
|
- L2DropData drop = categoryDrops.dropOne(isRaid());
|
|
|
+ L2DropData drop = categoryDrops.dropOne(isRaid() && !isRaidMinion());
|
|
|
if (drop == null)
|
|
|
return null;
|
|
|
|
|
@@ -1175,7 +1175,7 @@ public class L2Attackable extends L2NpcInstance
|
|
|
|
|
|
int dropChance = drop.getChance();
|
|
|
if (drop.getItemId() == 57) dropChance *= Config.RATE_DROP_ADENA;
|
|
|
- else dropChance *= isRaid() ? Config.RATE_DROP_ITEMS_BY_RAID : Config.RATE_DROP_ITEMS;
|
|
|
+ else dropChance *= isRaid() && !isRaidMinion() ? Config.RATE_DROP_ITEMS_BY_RAID : Config.RATE_DROP_ITEMS;
|
|
|
if (Config.L2JMOD_CHAMPION_ENABLE && isChampion())
|
|
|
dropChance *= Config.L2JMOD_CHAMPION_REWARDS;
|
|
|
|
|
@@ -1360,7 +1360,7 @@ public class L2Attackable extends L2NpcInstance
|
|
|
else dropItem(player, item); // drop the item on the ground
|
|
|
|
|
|
// Broadcast message if RaidBoss was defeated
|
|
|
- if(isRaid() && !(this instanceof L2MinionInstance))
|
|
|
+ if(isRaid() && !isRaidMinion())
|
|
|
{
|
|
|
SystemMessage sm;
|
|
|
sm = new SystemMessage(SystemMessageId.S1_DIED_DROPPED_S3_S2);
|
|
@@ -2339,4 +2339,12 @@ public class L2Attackable extends L2NpcInstance
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ public void returnHome()
|
|
|
+ {
|
|
|
+ clearAggroList();
|
|
|
+
|
|
|
+ if (hasAI())
|
|
|
+ getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, new L2CharPosition(getSpawn().getLocx(), getSpawn().getLocy(), getSpawn().getLocz(), 0));
|
|
|
+ }
|
|
|
}
|