enable r8 hotzone

This commit is contained in:
2025-03-19 12:28:38 -05:00
parent 537a30710a
commit bbdc58c217
3 changed files with 43 additions and 28 deletions
+22 -7
View File
@@ -26,6 +26,7 @@ public class HotzoneManager {
hotzoneMob.killCharacter("Hotzone Over"); hotzoneMob.killCharacter("Hotzone Over");
hotzoneMob.despawn(); hotzoneMob.despawn();
hotzoneMob.spawnTime = 1000000000; hotzoneMob.spawnTime = 1000000000;
DbManager.MobQueries.DELETE_MOB( hotzoneMob);
} }
Random random = new Random(); Random random = new Random();
Zone newHotzone = null; Zone newHotzone = null;
@@ -75,13 +76,13 @@ public class HotzoneManager {
} }
} }
public static void GenerateHotzoneEpicLoot(Mob mob){ public static void GenerateHotzoneEpicLoot(Mob mob) {
mob.getCharItemManager().clearInventory(); mob.getCharItemManager().clearInventory();
Random random = new Random(); Random random = new Random();
int roll = random.nextInt(100); int roll = random.nextInt(100);
int itemId; int itemId;
ItemBase runeBase; ItemBase runeBase;
if(roll >= 90){ if (roll >= 90) {
//35 or 40 //35 or 40
roll = ThreadLocalRandom.current().nextInt(HellgateManager.static_rune_ids_high.size() + 1); roll = ThreadLocalRandom.current().nextInt(HellgateManager.static_rune_ids_high.size() + 1);
itemId = HellgateManager.static_rune_ids_high.get(0); itemId = HellgateManager.static_rune_ids_high.get(0);
@@ -97,7 +98,7 @@ public class HotzoneManager {
if (rune != null) if (rune != null)
mob.getCharItemManager().addItemToInventory(rune); mob.getCharItemManager().addItemToInventory(rune);
} }
}else if (roll >= 76 && roll <= 89){ } else if (roll >= 50 && roll <= 89) {
//30,35 or 40 //30,35 or 40
roll = ThreadLocalRandom.current().nextInt(HellgateManager.static_rune_ids_mid.size() + 1); roll = ThreadLocalRandom.current().nextInt(HellgateManager.static_rune_ids_mid.size() + 1);
itemId = HellgateManager.static_rune_ids_mid.get(0); itemId = HellgateManager.static_rune_ids_mid.get(0);
@@ -113,7 +114,7 @@ public class HotzoneManager {
if (rune != null) if (rune != null)
mob.getCharItemManager().addItemToInventory(rune); mob.getCharItemManager().addItemToInventory(rune);
} }
}else{ } else {
//5-30 //5-30
roll = ThreadLocalRandom.current().nextInt(HellgateManager.static_rune_ids_low.size() + 1); roll = ThreadLocalRandom.current().nextInt(HellgateManager.static_rune_ids_low.size() + 1);
itemId = HellgateManager.static_rune_ids_low.get(0); itemId = HellgateManager.static_rune_ids_low.get(0);
@@ -130,10 +131,9 @@ public class HotzoneManager {
mob.getCharItemManager().addItemToInventory(rune); mob.getCharItemManager().addItemToInventory(rune);
} }
} }
if(roll >= 95){ roll = ThreadLocalRandom.current().nextInt(1, 101);
if (roll >= 95) {
//glass //glass
int glassRoll = ThreadLocalRandom.current().nextInt(1,101);
if(glassRoll < 5){
int glassID = LootManager.rollRandomItem(126); int glassID = LootManager.rollRandomItem(126);
ItemBase glassItem = ItemBase.getItemBase(glassID); ItemBase glassItem = ItemBase.getItemBase(glassID);
if (glassItem != null) { if (glassItem != null) {
@@ -143,8 +143,22 @@ public class HotzoneManager {
mob.getCharItemManager().addItemToInventory(glass); mob.getCharItemManager().addItemToInventory(glass);
} }
} }
roll = ThreadLocalRandom.current().nextInt(1, 101);
if (roll >= 95) {
//r8 banescroll
int baneID = 910018;
ItemBase baneItem = ItemBase.getItemBase(baneID);
if (baneItem != null) {
MobLoot bane = new MobLoot(mob, baneItem, true);
if (bane != null)
mob.getCharItemManager().addItemToInventory(bane);
}
} }
roll = ThreadLocalRandom.current().nextInt(1, 101);
if (roll >= 95) {
//guard captain //guard captain
roll = ThreadLocalRandom.current().nextInt(LootManager.racial_guard_uuids.size() + 1); roll = ThreadLocalRandom.current().nextInt(LootManager.racial_guard_uuids.size() + 1);
itemId = LootManager.racial_guard_uuids.get(0); itemId = LootManager.racial_guard_uuids.get(0);
@@ -161,6 +175,7 @@ public class HotzoneManager {
mob.getCharItemManager().addItemToInventory(rune); mob.getCharItemManager().addItemToInventory(rune);
} }
} }
}
public static void ClearHotzone(){ public static void ClearHotzone(){
ZoneManager.hotZone = null; ZoneManager.hotZone = null;
+2 -2
View File
@@ -534,8 +534,8 @@ public class WorldServer {
printThreads(); printThreads();
Logger.info("Threads Running:"); Logger.info("Threads Running:");
//Logger.info("Starting Hotzone..."); Logger.info("Starting Hotzone...");
//HotzoneManager.SelectRandomHotzone(); HotzoneManager.SelectRandomHotzone();
return true; return true;
} }
+1 -1
View File
@@ -36,7 +36,7 @@ public class HourlyJobThread implements Runnable {
ConcurrentHashMap<Integer, AbstractGameObject> map = DbManager.getMap(Enum.GameObjectType.City); ConcurrentHashMap<Integer, AbstractGameObject> map = DbManager.getMap(Enum.GameObjectType.City);
//HotzoneManager.SelectRandomHotzone(); HotzoneManager.SelectRandomHotzone();
if (map != null) { if (map != null) {
for (AbstractGameObject ago : map.values()) { for (AbstractGameObject ago : map.values()) {