activateHero event trigger/Выполнение своих действий получение геройства

Deazer

Head Developer
Staff member
[EN][RU] Added a new event listener that allows the player to operate at will when receiving heroism. For example, I am attaching a code that sends a message for issuing 1 adena if the player’s class is Duelist and 2 adena for everyone else. You can add any mechanics and additions you like. I attach the code below

[RU] Добавил новый ивент листенер который позволяет по своему желанию оперировать игроком при получении геройства. К примеру прикладываю код отправляет сообщение выдачи 1 адены если класс игрока Дуэлист и 2 адены всем остальным. Вы же можете добавлять какие угодно механики и дополнения. Код прикладываю ниже

Java:
package services;

import l2.commons.listener.EventListener;
import l2.commons.util.Rnd;
import l2.gameserver.Announcements;
import l2.gameserver.Config;
import l2.gameserver.GameServer;
import l2.gameserver.model.Player;
import l2.gameserver.model.pledge.Clan;
import l2.gameserver.scripts.Functions;
import l2.gameserver.scripts.ScriptFile;
import l2.gameserver.utils.ItemFunctions;
import org.apache.commons.lang3.ArrayUtils;

public class HeroCustomServices extends Functions implements ScriptFile, EventListener
{
  private static final String   EVENT_ACTIVATE_HERO = "activateHero";
  private static final String[] LISTENING_EVENTS    = new String[]{EVENT_ACTIVATE_HERO};

  @Override
  public String[] listeningEventTypes()
  {
    return LISTENING_EVENTS;
  }

  @Override
  public void onEvent(String eventType, Object... args)
  {
    if(eventType.equals(EVENT_ACTIVATE_HERO))
    {
      onBecomeHero((Player) args[0]);
    }
  }


  private void onBecomeHero(Player player)
  {
    if(player.getPlayer().getActiveClassId() == 88)
    {
      ItemFunctions.addItem(player, 57,1, true);
    }
    else
    {
      ItemFunctions.addItem(player, 57,2, true);
    }
  }

  @Override
  public void onLoad()
  {
    GameServer.getInstance().getListeners().addEventListener(this);
  }

  @Override
  public void onReload() {}

  @Override
  public void onShutdown() {}
}
 
Last edited:
Back
Top