Skip to content

Instantly share code, notes, and snippets.

@Williams0ff
Last active March 14, 2023 03:22
Show Gist options
  • Save Williams0ff/012e44d290719ba74c95f8064f5d4143 to your computer and use it in GitHub Desktop.
Save Williams0ff/012e44d290719ba74c95f8064f5d4143 to your computer and use it in GitHub Desktop.
Hero por Kill RaidBoss
diff --git a/L2jOne_C6_Interlude/java/net/sf/l2j/gameserver/network/clientpackets/EnterWorld.java b/L2jOne_C6_Interlude/java/net/sf/l2j/gameserver/network/clientpackets/EnterWorld.java
index 07a0eba..698732d 100644
--- a/L2jOne_C6_Interlude/java/net/sf/l2j/gameserver/network/clientpackets/EnterWorld.java
+++ b/L2jOne_C6_Interlude/java/net/sf/l2j/gameserver/network/clientpackets/EnterWorld.java
@@ -2,6 +2,8 @@
import java.util.Map.Entry;
+import net.sf.l2j.commons.pool.ThreadPool;
+
import net.sf.l2j.Config;
import net.sf.l2j.gameserver.communitybbs.manager.MailBBSManager;
import net.sf.l2j.gameserver.data.SkillTable.FrequentSkill;
@@ -92,6 +94,19 @@
AdminData.getInstance().addGm(player, true);
}
+ if (player.getMemos().getLong("heroCustom", 0) > System.currentTimeMillis())
+ {
+ player.setHero(true);
+ player.broadcastUserInfo();
+
+ ThreadPool.schedule(() ->
+ {
+ player.getMemos().unset("heroCustom");
+ player.setHero(false);
+ player.broadcastUserInfo();
+ }, player.getMemos().getLong("heroCustom") - System.currentTimeMillis());
+ }
+
// Set dead status if applies
if (player.getStatus().getHp() < 0.5 && player.isMortal())
player.setIsDead(true);
diff --git a/L2jOne_C6_Interlude/java/net/sf/l2j/gameserver/model/actor/instance/RaidBoss.java b/L2jOne_C6_Interlude/java/net/sf/l2j/gameserver/model/actor/instance/RaidBoss.java
index cfac1fb..d2ca59d 100644
--- a/L2jOne_C6_Interlude/java/net/sf/l2j/gameserver/model/actor/instance/RaidBoss.java
+++ b/L2jOne_C6_Interlude/java/net/sf/l2j/gameserver/model/actor/instance/RaidBoss.java
@@ -1,6 +1,7 @@
package net.sf.l2j.gameserver.model.actor.instance;
import java.util.concurrent.ScheduledFuture;
+import java.util.concurrent.TimeUnit;
import net.sf.l2j.commons.pool.ThreadPool;
import net.sf.l2j.commons.random.Rnd;
@@ -18,6 +19,7 @@
import net.sf.l2j.gameserver.model.spawn.ASpawn;
import net.sf.l2j.gameserver.network.SystemMessageId;
import net.sf.l2j.gameserver.network.serverpackets.PlaySound;
+import net.sf.l2j.gameserver.network.serverpackets.SocialAction;
import net.sf.l2j.gameserver.network.serverpackets.SystemMessage;
/**
@@ -110,6 +112,27 @@
final Player player = killer.getActingPlayer();
if (player != null)
{
+ if (!player.isHero())
+ {
+ player.setHero(true);
+ player.sendPacket(new SocialAction(this, 16));
+ player.broadcastUserInfo();
+
+ // TimeUnit.DAYS = Dias
+ // TimeUnit.HOURS = Horas
+ // TimeUnit.MINUTES = Minutos
+ // Crie sua config em Config.java
+ final int hours = 1; // aqui voc define quantas horas.
+ player.getMemos().set("heroCustom", System.currentTimeMillis() + TimeUnit.HOURS.toMillis(hours));
+
+ ThreadPool.schedule(() ->
+ {
+ player.getMemos().unset("heroCustom");
+ player.setHero(false);
+ player.broadcastUserInfo();
+ }, player.getMemos().getLong("heroCustom") - System.currentTimeMillis());
+ }
+
broadcastPacket(SystemMessage.getSystemMessage(SystemMessageId.RAID_WAS_SUCCESSFUL));
broadcastPacket(new PlaySound("systemmsg_e.1209"));
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment