Option to force delete spawned minions upon master death.

This commit is contained in:
MobiusDev
2018-04-05 03:45:54 +00:00
parent 35e97edbba
commit c0b724cb17
21 changed files with 147 additions and 154 deletions

View File

@@ -161,6 +161,11 @@ RaidMinionRespawnTime = 300000
# Format: minionId1,timeInSec1;minionId2,timeInSec2 # Format: minionId1,timeInSec1;minionId2,timeInSec2
CustomMinionsRespawnTime = 22450,30;22371,120;22543,0;25545,0;22424,30;22425,30;22426,30;22427,30;22428,30;22429,30;22430,30;22432,30;22433,30;22434,30;22435,30;22436,30;22437,30;22438,30;25596,30;25605,0;25606,0;25607,0;25608,0 CustomMinionsRespawnTime = 22450,30;22371,120;22543,0;25545,0;22424,30;22425,30;22426,30;22427,30;22428,30;22429,30;22430,30;22432,30;22433,30;22434,30;22435,30;22436,30;22437,30;22438,30;25596,30;25605,0;25606,0;25607,0;25608,0
# Force delete spawned minions upon master death.
# By default minions are deleted only for raidbosses.
# Default: False
ForceDeleteMinions = False
# Disable Raid Curse if raid more than 8 levels lower. # Disable Raid Curse if raid more than 8 levels lower.
# Caution: drop will be reduced or even absent if DeepBlue drop rules enabled. # Caution: drop will be reduced or even absent if DeepBlue drop rules enabled.
# Default: False # Default: False

View File

@@ -644,6 +644,7 @@ public final class Config
public static float RAID_MIN_RESPAWN_MULTIPLIER; public static float RAID_MIN_RESPAWN_MULTIPLIER;
public static float RAID_MAX_RESPAWN_MULTIPLIER; public static float RAID_MAX_RESPAWN_MULTIPLIER;
public static boolean RAID_DISABLE_CURSE; public static boolean RAID_DISABLE_CURSE;
public static boolean FORCE_DELETE_MINIONS;
public static int RAID_CHAOS_TIME; public static int RAID_CHAOS_TIME;
public static int GRAND_CHAOS_TIME; public static int GRAND_CHAOS_TIME;
public static int MINION_CHAOS_TIME; public static int MINION_CHAOS_TIME;
@@ -2039,6 +2040,7 @@ public final class Config
} }
} }
} }
FORCE_DELETE_MINIONS = NPC.getBoolean("ForceDeleteMinions", false);
RAID_DISABLE_CURSE = NPC.getBoolean("DisableRaidCurse", false); RAID_DISABLE_CURSE = NPC.getBoolean("DisableRaidCurse", false);
RAID_CHAOS_TIME = NPC.getInt("RaidChaosTime", 10); RAID_CHAOS_TIME = NPC.getInt("RaidChaosTime", 10);

View File

@@ -89,9 +89,21 @@ public class MinionList
} }
/** /**
* Delete all spawned minions and try to reuse them. * Called on the minion spawn and added them in the list of the spawned minions.
* @param minion
*/ */
public void deleteSpawnedMinions() public void onMinionSpawn(L2MonsterInstance minion)
{
_spawnedMinions.add(minion);
}
/**
* Called on the master death/delete.
* @param force - When true, force delete of the spawned minions. By default minions are deleted only for raidbosses.
*/
public void onMasterDie(boolean force)
{
if (_master.isRaid() || force || Config.FORCE_DELETE_MINIONS)
{ {
if (!_spawnedMinions.isEmpty()) if (!_spawnedMinions.isEmpty())
{ {
@@ -106,26 +118,6 @@ public class MinionList
_spawnedMinions.clear(); _spawnedMinions.clear();
} }
} }
/**
* Called on the minion spawn and added them in the list of the spawned minions.
* @param minion
*/
public void onMinionSpawn(L2MonsterInstance minion)
{
_spawnedMinions.add(minion);
}
/**
* Called on the master death/delete.
* @param force if true - force delete of the spawned minions By default minions deleted only for raidbosses
*/
public void onMasterDie(boolean force)
{
if (_master.isRaid() || force)
{
deleteSpawnedMinions();
}
} }
/** /**

View File

@@ -161,6 +161,11 @@ RaidMinionRespawnTime = 300000
# Format: minionId1,timeInSec1;minionId2,timeInSec2 # Format: minionId1,timeInSec1;minionId2,timeInSec2
CustomMinionsRespawnTime = 22450,30;22371,120;22543,0;25545,0;22424,30;22425,30;22426,30;22427,30;22428,30;22429,30;22430,30;22432,30;22433,30;22434,30;22435,30;22436,30;22437,30;22438,30;25596,30;25605,0;25606,0;25607,0;25608,0 CustomMinionsRespawnTime = 22450,30;22371,120;22543,0;25545,0;22424,30;22425,30;22426,30;22427,30;22428,30;22429,30;22430,30;22432,30;22433,30;22434,30;22435,30;22436,30;22437,30;22438,30;25596,30;25605,0;25606,0;25607,0;25608,0
# Force delete spawned minions upon master death.
# By default minions are deleted only for raidbosses.
# Default: False
ForceDeleteMinions = False
# Disable Raid Curse if raid more than 8 levels lower. # Disable Raid Curse if raid more than 8 levels lower.
# Caution: drop will be reduced or even absent if DeepBlue drop rules enabled. # Caution: drop will be reduced or even absent if DeepBlue drop rules enabled.
# Default: False # Default: False

View File

@@ -651,6 +651,7 @@ public final class Config
public static float RAID_MIN_RESPAWN_MULTIPLIER; public static float RAID_MIN_RESPAWN_MULTIPLIER;
public static float RAID_MAX_RESPAWN_MULTIPLIER; public static float RAID_MAX_RESPAWN_MULTIPLIER;
public static boolean RAID_DISABLE_CURSE; public static boolean RAID_DISABLE_CURSE;
public static boolean FORCE_DELETE_MINIONS;
public static int RAID_CHAOS_TIME; public static int RAID_CHAOS_TIME;
public static int GRAND_CHAOS_TIME; public static int GRAND_CHAOS_TIME;
public static int MINION_CHAOS_TIME; public static int MINION_CHAOS_TIME;
@@ -2055,6 +2056,7 @@ public final class Config
} }
} }
} }
FORCE_DELETE_MINIONS = NPC.getBoolean("ForceDeleteMinions", false);
RAID_DISABLE_CURSE = NPC.getBoolean("DisableRaidCurse", false); RAID_DISABLE_CURSE = NPC.getBoolean("DisableRaidCurse", false);
RAID_CHAOS_TIME = NPC.getInt("RaidChaosTime", 10); RAID_CHAOS_TIME = NPC.getInt("RaidChaosTime", 10);

View File

@@ -89,9 +89,21 @@ public class MinionList
} }
/** /**
* Delete all spawned minions and try to reuse them. * Called on the minion spawn and added them in the list of the spawned minions.
* @param minion
*/ */
public void deleteSpawnedMinions() public void onMinionSpawn(L2MonsterInstance minion)
{
_spawnedMinions.add(minion);
}
/**
* Called on the master death/delete.
* @param force - When true, force delete of the spawned minions. By default minions are deleted only for raidbosses.
*/
public void onMasterDie(boolean force)
{
if (_master.isRaid() || force || Config.FORCE_DELETE_MINIONS)
{ {
if (!_spawnedMinions.isEmpty()) if (!_spawnedMinions.isEmpty())
{ {
@@ -106,26 +118,6 @@ public class MinionList
_spawnedMinions.clear(); _spawnedMinions.clear();
} }
} }
/**
* Called on the minion spawn and added them in the list of the spawned minions.
* @param minion
*/
public void onMinionSpawn(L2MonsterInstance minion)
{
_spawnedMinions.add(minion);
}
/**
* Called on the master death/delete.
* @param force if true - force delete of the spawned minions By default minions deleted only for raidbosses
*/
public void onMasterDie(boolean force)
{
if (_master.isRaid() || force)
{
deleteSpawnedMinions();
}
} }
/** /**

View File

@@ -161,6 +161,11 @@ RaidMinionRespawnTime = 300000
# Format: minionId1,timeInSec1;minionId2,timeInSec2 # Format: minionId1,timeInSec1;minionId2,timeInSec2
CustomMinionsRespawnTime = 22450,30;22371,120;22543,0;25545,0;22424,30;22425,30;22426,30;22427,30;22428,30;22429,30;22430,30;22432,30;22433,30;22434,30;22435,30;22436,30;22437,30;22438,30;25596,30;25605,0;25606,0;25607,0;25608,0 CustomMinionsRespawnTime = 22450,30;22371,120;22543,0;25545,0;22424,30;22425,30;22426,30;22427,30;22428,30;22429,30;22430,30;22432,30;22433,30;22434,30;22435,30;22436,30;22437,30;22438,30;25596,30;25605,0;25606,0;25607,0;25608,0
# Force delete spawned minions upon master death.
# By default minions are deleted only for raidbosses.
# Default: False
ForceDeleteMinions = False
# Disable Raid Curse if raid more than 8 levels lower. # Disable Raid Curse if raid more than 8 levels lower.
# Caution: drop will be reduced or even absent if DeepBlue drop rules enabled. # Caution: drop will be reduced or even absent if DeepBlue drop rules enabled.
# Default: False # Default: False

View File

@@ -651,6 +651,7 @@ public final class Config
public static float RAID_MIN_RESPAWN_MULTIPLIER; public static float RAID_MIN_RESPAWN_MULTIPLIER;
public static float RAID_MAX_RESPAWN_MULTIPLIER; public static float RAID_MAX_RESPAWN_MULTIPLIER;
public static boolean RAID_DISABLE_CURSE; public static boolean RAID_DISABLE_CURSE;
public static boolean FORCE_DELETE_MINIONS;
public static int RAID_CHAOS_TIME; public static int RAID_CHAOS_TIME;
public static int GRAND_CHAOS_TIME; public static int GRAND_CHAOS_TIME;
public static int MINION_CHAOS_TIME; public static int MINION_CHAOS_TIME;
@@ -2063,6 +2064,7 @@ public final class Config
} }
} }
} }
FORCE_DELETE_MINIONS = NPC.getBoolean("ForceDeleteMinions", false);
RAID_DISABLE_CURSE = NPC.getBoolean("DisableRaidCurse", false); RAID_DISABLE_CURSE = NPC.getBoolean("DisableRaidCurse", false);
RAID_CHAOS_TIME = NPC.getInt("RaidChaosTime", 10); RAID_CHAOS_TIME = NPC.getInt("RaidChaosTime", 10);

View File

@@ -89,9 +89,21 @@ public class MinionList
} }
/** /**
* Delete all spawned minions and try to reuse them. * Called on the minion spawn and added them in the list of the spawned minions.
* @param minion
*/ */
public void deleteSpawnedMinions() public void onMinionSpawn(L2MonsterInstance minion)
{
_spawnedMinions.add(minion);
}
/**
* Called on the master death/delete.
* @param force - When true, force delete of the spawned minions. By default minions are deleted only for raidbosses.
*/
public void onMasterDie(boolean force)
{
if (_master.isRaid() || force || Config.FORCE_DELETE_MINIONS)
{ {
if (!_spawnedMinions.isEmpty()) if (!_spawnedMinions.isEmpty())
{ {
@@ -106,26 +118,6 @@ public class MinionList
_spawnedMinions.clear(); _spawnedMinions.clear();
} }
} }
/**
* Called on the minion spawn and added them in the list of the spawned minions.
* @param minion
*/
public void onMinionSpawn(L2MonsterInstance minion)
{
_spawnedMinions.add(minion);
}
/**
* Called on the master death/delete.
* @param force if true - force delete of the spawned minions By default minions deleted only for raidbosses
*/
public void onMasterDie(boolean force)
{
if (_master.isRaid() || force)
{
deleteSpawnedMinions();
}
} }
/** /**

View File

@@ -161,6 +161,11 @@ RaidMinionRespawnTime = 300000
# Format: minionId1,timeInSec1;minionId2,timeInSec2 # Format: minionId1,timeInSec1;minionId2,timeInSec2
CustomMinionsRespawnTime = 22450,30;22371,120;22543,0;25545,0;22424,30;22425,30;22426,30;22427,30;22428,30;22429,30;22430,30;22432,30;22433,30;22434,30;22435,30;22436,30;22437,30;22438,30;25596,30;25605,0;25606,0;25607,0;25608,0 CustomMinionsRespawnTime = 22450,30;22371,120;22543,0;25545,0;22424,30;22425,30;22426,30;22427,30;22428,30;22429,30;22430,30;22432,30;22433,30;22434,30;22435,30;22436,30;22437,30;22438,30;25596,30;25605,0;25606,0;25607,0;25608,0
# Force delete spawned minions upon master death.
# By default minions are deleted only for raidbosses.
# Default: False
ForceDeleteMinions = False
# Disable Raid Curse if raid more than 8 levels lower. # Disable Raid Curse if raid more than 8 levels lower.
# Caution: drop will be reduced or even absent if DeepBlue drop rules enabled. # Caution: drop will be reduced or even absent if DeepBlue drop rules enabled.
# Default: False # Default: False

View File

@@ -650,6 +650,7 @@ public final class Config
public static float RAID_MIN_RESPAWN_MULTIPLIER; public static float RAID_MIN_RESPAWN_MULTIPLIER;
public static float RAID_MAX_RESPAWN_MULTIPLIER; public static float RAID_MAX_RESPAWN_MULTIPLIER;
public static boolean RAID_DISABLE_CURSE; public static boolean RAID_DISABLE_CURSE;
public static boolean FORCE_DELETE_MINIONS;
public static int RAID_CHAOS_TIME; public static int RAID_CHAOS_TIME;
public static int GRAND_CHAOS_TIME; public static int GRAND_CHAOS_TIME;
public static int MINION_CHAOS_TIME; public static int MINION_CHAOS_TIME;
@@ -2061,6 +2062,7 @@ public final class Config
} }
} }
} }
FORCE_DELETE_MINIONS = NPC.getBoolean("ForceDeleteMinions", false);
RAID_DISABLE_CURSE = NPC.getBoolean("DisableRaidCurse", false); RAID_DISABLE_CURSE = NPC.getBoolean("DisableRaidCurse", false);
RAID_CHAOS_TIME = NPC.getInt("RaidChaosTime", 10); RAID_CHAOS_TIME = NPC.getInt("RaidChaosTime", 10);

View File

@@ -89,9 +89,21 @@ public class MinionList
} }
/** /**
* Delete all spawned minions and try to reuse them. * Called on the minion spawn and added them in the list of the spawned minions.
* @param minion
*/ */
public void deleteSpawnedMinions() public void onMinionSpawn(L2MonsterInstance minion)
{
_spawnedMinions.add(minion);
}
/**
* Called on the master death/delete.
* @param force - When true, force delete of the spawned minions. By default minions are deleted only for raidbosses.
*/
public void onMasterDie(boolean force)
{
if (_master.isRaid() || force || Config.FORCE_DELETE_MINIONS)
{ {
if (!_spawnedMinions.isEmpty()) if (!_spawnedMinions.isEmpty())
{ {
@@ -106,26 +118,6 @@ public class MinionList
_spawnedMinions.clear(); _spawnedMinions.clear();
} }
} }
/**
* Called on the minion spawn and added them in the list of the spawned minions.
* @param minion
*/
public void onMinionSpawn(L2MonsterInstance minion)
{
_spawnedMinions.add(minion);
}
/**
* Called on the master death/delete.
* @param force if true - force delete of the spawned minions By default minions deleted only for raidbosses
*/
public void onMasterDie(boolean force)
{
if (_master.isRaid() || force)
{
deleteSpawnedMinions();
}
} }
/** /**

View File

@@ -176,6 +176,11 @@ RaidMinionRespawnTime = 300000
# Format: minionId1,timeInSec1;minionId2,timeInSec2 # Format: minionId1,timeInSec1;minionId2,timeInSec2
CustomMinionsRespawnTime = 22450,30;22371,120;22543,0;25545,0;22424,30;22425,30;22426,30;22427,30;22428,30;22429,30;22430,30;22432,30;22433,30;22434,30;22435,30;22436,30;22437,30;22438,30;25596,30;25605,0;25606,0;25607,0;25608,0 CustomMinionsRespawnTime = 22450,30;22371,120;22543,0;25545,0;22424,30;22425,30;22426,30;22427,30;22428,30;22429,30;22430,30;22432,30;22433,30;22434,30;22435,30;22436,30;22437,30;22438,30;25596,30;25605,0;25606,0;25607,0;25608,0
# Force delete spawned minions upon master death.
# By default minions are deleted only for raidbosses.
# Default: False
ForceDeleteMinions = False
# Disable Raid Curse if raid more than 8 levels lower. # Disable Raid Curse if raid more than 8 levels lower.
# Caution: drop will be reduced or even absent if DeepBlue drop rules enabled. # Caution: drop will be reduced or even absent if DeepBlue drop rules enabled.
# Default: False # Default: False

View File

@@ -892,6 +892,7 @@ public final class Config
public static float RAID_MIN_RESPAWN_MULTIPLIER; public static float RAID_MIN_RESPAWN_MULTIPLIER;
public static float RAID_MAX_RESPAWN_MULTIPLIER; public static float RAID_MAX_RESPAWN_MULTIPLIER;
public static boolean RAID_DISABLE_CURSE; public static boolean RAID_DISABLE_CURSE;
public static boolean FORCE_DELETE_MINIONS;
public static int RAID_CHAOS_TIME; public static int RAID_CHAOS_TIME;
public static int GRAND_CHAOS_TIME; public static int GRAND_CHAOS_TIME;
public static int MINION_CHAOS_TIME; public static int MINION_CHAOS_TIME;
@@ -2129,6 +2130,7 @@ public final class Config
} }
} }
} }
FORCE_DELETE_MINIONS = NPC.getBoolean("ForceDeleteMinions", false);
RAID_DISABLE_CURSE = NPC.getBoolean("DisableRaidCurse", false); RAID_DISABLE_CURSE = NPC.getBoolean("DisableRaidCurse", false);
RAID_CHAOS_TIME = NPC.getInt("RaidChaosTime", 10); RAID_CHAOS_TIME = NPC.getInt("RaidChaosTime", 10);

View File

@@ -89,9 +89,21 @@ public class MinionList
} }
/** /**
* Delete all spawned minions and try to reuse them. * Called on the minion spawn and added them in the list of the spawned minions.
* @param minion
*/ */
public void deleteSpawnedMinions() public void onMinionSpawn(L2MonsterInstance minion)
{
_spawnedMinions.add(minion);
}
/**
* Called on the master death/delete.
* @param force - When true, force delete of the spawned minions. By default minions are deleted only for raidbosses.
*/
public void onMasterDie(boolean force)
{
if (_master.isRaid() || force || Config.FORCE_DELETE_MINIONS)
{ {
if (!_spawnedMinions.isEmpty()) if (!_spawnedMinions.isEmpty())
{ {
@@ -106,26 +118,6 @@ public class MinionList
_spawnedMinions.clear(); _spawnedMinions.clear();
} }
} }
/**
* Called on the minion spawn and added them in the list of the spawned minions.
* @param minion
*/
public void onMinionSpawn(L2MonsterInstance minion)
{
_spawnedMinions.add(minion);
}
/**
* Called on the master death/delete.
* @param force if true - force delete of the spawned minions By default minions deleted only for raidbosses
*/
public void onMasterDie(boolean force)
{
if (_master.isRaid() || force)
{
deleteSpawnedMinions();
}
} }
/** /**

View File

@@ -161,6 +161,11 @@ RaidMinionRespawnTime = 300000
# Format: minionId1,timeInSec1;minionId2,timeInSec2 # Format: minionId1,timeInSec1;minionId2,timeInSec2
CustomMinionsRespawnTime = 22450,30;22371,120;22543,0;25545,0;22424,30;22425,30;22426,30;22427,30;22428,30;22429,30;22430,30;22432,30;22433,30;22434,30;22435,30;22436,30;22437,30;22438,30;25596,30;25605,0;25606,0;25607,0;25608,0 CustomMinionsRespawnTime = 22450,30;22371,120;22543,0;25545,0;22424,30;22425,30;22426,30;22427,30;22428,30;22429,30;22430,30;22432,30;22433,30;22434,30;22435,30;22436,30;22437,30;22438,30;25596,30;25605,0;25606,0;25607,0;25608,0
# Force delete spawned minions upon master death.
# By default minions are deleted only for raidbosses.
# Default: False
ForceDeleteMinions = False
# Disable Raid Curse if raid more than 8 levels lower. # Disable Raid Curse if raid more than 8 levels lower.
# Caution: drop will be reduced or even absent if DeepBlue drop rules enabled. # Caution: drop will be reduced or even absent if DeepBlue drop rules enabled.
# Default: False # Default: False

View File

@@ -650,6 +650,7 @@ public final class Config
public static float RAID_MIN_RESPAWN_MULTIPLIER; public static float RAID_MIN_RESPAWN_MULTIPLIER;
public static float RAID_MAX_RESPAWN_MULTIPLIER; public static float RAID_MAX_RESPAWN_MULTIPLIER;
public static boolean RAID_DISABLE_CURSE; public static boolean RAID_DISABLE_CURSE;
public static boolean FORCE_DELETE_MINIONS;
public static int RAID_CHAOS_TIME; public static int RAID_CHAOS_TIME;
public static int GRAND_CHAOS_TIME; public static int GRAND_CHAOS_TIME;
public static int MINION_CHAOS_TIME; public static int MINION_CHAOS_TIME;
@@ -1986,6 +1987,7 @@ public final class Config
} }
} }
} }
FORCE_DELETE_MINIONS = NPC.getBoolean("ForceDeleteMinions", false);
RAID_DISABLE_CURSE = NPC.getBoolean("DisableRaidCurse", false); RAID_DISABLE_CURSE = NPC.getBoolean("DisableRaidCurse", false);
RAID_CHAOS_TIME = NPC.getInt("RaidChaosTime", 10); RAID_CHAOS_TIME = NPC.getInt("RaidChaosTime", 10);

View File

@@ -89,9 +89,21 @@ public class MinionList
} }
/** /**
* Delete all spawned minions and try to reuse them. * Called on the minion spawn and added them in the list of the spawned minions.
* @param minion
*/ */
public void deleteSpawnedMinions() public void onMinionSpawn(L2MonsterInstance minion)
{
_spawnedMinions.add(minion);
}
/**
* Called on the master death/delete.
* @param force - When true, force delete of the spawned minions. By default minions are deleted only for raidbosses.
*/
public void onMasterDie(boolean force)
{
if (_master.isRaid() || force || Config.FORCE_DELETE_MINIONS)
{ {
if (!_spawnedMinions.isEmpty()) if (!_spawnedMinions.isEmpty())
{ {
@@ -106,26 +118,6 @@ public class MinionList
_spawnedMinions.clear(); _spawnedMinions.clear();
} }
} }
/**
* Called on the minion spawn and added them in the list of the spawned minions.
* @param minion
*/
public void onMinionSpawn(L2MonsterInstance minion)
{
_spawnedMinions.add(minion);
}
/**
* Called on the master death/delete.
* @param force if true - force delete of the spawned minions By default minions deleted only for raidbosses
*/
public void onMasterDie(boolean force)
{
if (_master.isRaid() || force)
{
deleteSpawnedMinions();
}
} }
/** /**

View File

@@ -161,6 +161,11 @@ RaidMinionRespawnTime = 300000
# Format: minionId1,timeInSec1;minionId2,timeInSec2 # Format: minionId1,timeInSec1;minionId2,timeInSec2
CustomMinionsRespawnTime = 22450,30;22371,120;22543,0;25545,0;22424,30;22425,30;22426,30;22427,30;22428,30;22429,30;22430,30;22432,30;22433,30;22434,30;22435,30;22436,30;22437,30;22438,30;25596,30;25605,0;25606,0;25607,0;25608,0 CustomMinionsRespawnTime = 22450,30;22371,120;22543,0;25545,0;22424,30;22425,30;22426,30;22427,30;22428,30;22429,30;22430,30;22432,30;22433,30;22434,30;22435,30;22436,30;22437,30;22438,30;25596,30;25605,0;25606,0;25607,0;25608,0
# Force delete spawned minions upon master death.
# By default minions are deleted only for raidbosses.
# Default: False
ForceDeleteMinions = False
# Disable Raid Curse if raid more than 8 levels lower. # Disable Raid Curse if raid more than 8 levels lower.
# Caution: drop will be reduced or even absent if DeepBlue drop rules enabled. # Caution: drop will be reduced or even absent if DeepBlue drop rules enabled.
# Default: False # Default: False

View File

@@ -650,6 +650,7 @@ public final class Config
public static float RAID_MIN_RESPAWN_MULTIPLIER; public static float RAID_MIN_RESPAWN_MULTIPLIER;
public static float RAID_MAX_RESPAWN_MULTIPLIER; public static float RAID_MAX_RESPAWN_MULTIPLIER;
public static boolean RAID_DISABLE_CURSE; public static boolean RAID_DISABLE_CURSE;
public static boolean FORCE_DELETE_MINIONS;
public static int RAID_CHAOS_TIME; public static int RAID_CHAOS_TIME;
public static int GRAND_CHAOS_TIME; public static int GRAND_CHAOS_TIME;
public static int MINION_CHAOS_TIME; public static int MINION_CHAOS_TIME;
@@ -1990,6 +1991,7 @@ public final class Config
} }
} }
} }
FORCE_DELETE_MINIONS = NPC.getBoolean("ForceDeleteMinions", false);
RAID_DISABLE_CURSE = NPC.getBoolean("DisableRaidCurse", false); RAID_DISABLE_CURSE = NPC.getBoolean("DisableRaidCurse", false);
RAID_CHAOS_TIME = NPC.getInt("RaidChaosTime", 10); RAID_CHAOS_TIME = NPC.getInt("RaidChaosTime", 10);

View File

@@ -89,9 +89,21 @@ public class MinionList
} }
/** /**
* Delete all spawned minions and try to reuse them. * Called on the minion spawn and added them in the list of the spawned minions.
* @param minion
*/ */
public void deleteSpawnedMinions() public void onMinionSpawn(L2MonsterInstance minion)
{
_spawnedMinions.add(minion);
}
/**
* Called on the master death/delete.
* @param force - When true, force delete of the spawned minions. By default minions are deleted only for raidbosses.
*/
public void onMasterDie(boolean force)
{
if (_master.isRaid() || force || Config.FORCE_DELETE_MINIONS)
{ {
if (!_spawnedMinions.isEmpty()) if (!_spawnedMinions.isEmpty())
{ {
@@ -106,26 +118,6 @@ public class MinionList
_spawnedMinions.clear(); _spawnedMinions.clear();
} }
} }
/**
* Called on the minion spawn and added them in the list of the spawned minions.
* @param minion
*/
public void onMinionSpawn(L2MonsterInstance minion)
{
_spawnedMinions.add(minion);
}
/**
* Called on the master death/delete.
* @param force if true - force delete of the spawned minions By default minions deleted only for raidbosses
*/
public void onMasterDie(boolean force)
{
if (_master.isRaid() || force)
{
deleteSpawnedMinions();
}
} }
/** /**