Jump to content

Recommended Posts

Posted (edited)

nt9niPq.png

 

Hello chaters, with currect code you can setup and event with spawning raidbosses on specific times.
 

Code : Here

Credits : StinkyMadness

 

 

Edited by StinkyMadness
  • Like 2
  • Thanks 1
Posted (edited)

Seriously ma bitch? :D 

 

public BossEvent()
+   {
+       if (Config.BOSS_EVENT_RAIDBOSS_ID != 0)
+           ThreadPool.scheduleAtFixedRate(this, 1000, 1000);
+   }
+  
+   @Override
+   public void run()
+   {
+       if (_state != State.INACTIVE)
+           return;
+      
+       final Calendar calendar = Calendar.getInstance();
+       final int hour = calendar.get(Calendar.HOUR_OF_DAY);
+       final int minute = calendar.get(Calendar.MINUTE);
+       for (String time : Config.BOSS_EVENT_SCHEDULER_TIMES)
+       {
+           final String[] splitTime = time.split(":");
+           if (Integer.parseInt(splitTime[0]) == hour && Integer.parseInt(splitTime[1]) == minute)
+           {
+               spawnRaidboss();
+               break;
+           }
+       }
+   }

Threadpool every 1 second to check if hour and minute matches the given config instead of calculate whats the closest time and set a thread for it specificialy?

+			spawn.setRespawnDelay(60000);
+           spawn.setRespawnState(false);

setRespawnDelay(6000); but then you setRespawnState false. So useless 60000 delay.

+			 _raidboss.setCurrentHp(_raidboss.getMaxHp());
+           _raidboss.setCurrentMp(_raidboss.getMaxMp());

Useless also. Any new npc is spawned with max HP/MP.

String[] BOSS_EVENT_SPAWN_LOCATION

Why don't you make it directly into a int[] to avoid later Integer.parse and make the code look shit?

It's 4 lines

String[] split = events.getProperty("BossEventSpawnLocation", "").split(",");

BOSS_EVENT_SPAWN_LOCATION = new int[split.lenght];

for (int i = 0; i < split.lenght; i++)
 BOSS_EVENT_SPAWN_LOCATION[i] = Integer.parseInt(split[i]);

 

Edited by Kara`
Posted

Hello again stinky, I'm trying to get your mod from acis 377 to 375 and I'm trying to make it difficult to read in XML, since your mod was done with IXMLReader and my source used XMLDocument, because of that I can not compile, I was looking for forms of convert the code to XMLDocument and would like to know if there are options to help me.
This document was not found. "The XMLDocument type can not be a superinterface of BossEventData; a superinterface must be an interface".

Translated by google translate.

[javac] C:\workspace\L2jMega_gameserver2\java\net\sf\l2j\gameserver\data\xml\BossEventData.java:18: error: cannot find symbol
    [javac] public class BossEventData implements IXmlReader
    [javac]                                       ^
    [javac]   symbol: class IXmlReader
    [javac] C:\workspace\L2jMega_gameserver2\java\net\sf\l2j\gameserver\data\xml\BossEventData.java:27: error: method does not override or implement a method from a supertype
    [javac]    @Override
    [javac]    ^
    [javac] C:\workspace\L2jMega_gameserver2\java\net\sf\l2j\gameserver\data\xml\BossEventData.java:30: error: cannot find symbol
    [javac]        parseFile("./data/xml/BossEvent.xml");
    [javac]        ^
    [javac]   symbol:   method parseFile(String)
    [javac]   location: class BossEventData
    [javac] C:\workspace\L2jMega_gameserver2\java\net\sf\l2j\gameserver\data\xml\BossEventData.java:33: error: method does not override or implement a method from a supertype
    [javac]    @Override
    [javac]    ^
    [javac] C:\workspace\L2jMega_gameserver2\java\net\sf\l2j\gameserver\data\xml\BossEventData.java:37: error: cannot find symbol
    [javac]        forEach(doc, "list", listNode -> forEach(listNode, "Boss", bossNode ->
    [javac]        ^
    [javac]   symbol:   method forEach(Document,String,(listNode)[...]); }))
    [javac]   location: class BossEventData
    [javac] C:\workspace\L2jMega_gameserver2\java\net\sf\l2j\gameserver\data\xml\BossEventData.java:44: error: cannot find symbol
    [javac]                set.set("posX", parseInteger(attrs, "x"));
    [javac]                                ^
    [javac]   symbol:   method parseInteger(NamedNodeMap,String)
    [javac]   location: class BossEventData
    [javac] C:\workspace\L2jMega_gameserver2\java\net\sf\l2j\gameserver\data\xml\BossEventData.java:45: error: cannot find symbol
    [javac]                set.set("posY", parseInteger(attrs, "y"));
    [javac]                                ^
    [javac]   symbol:   method parseInteger(NamedNodeMap,String)
    [javac]   location: class BossEventData
    [javac] C:\workspace\L2jMega_gameserver2\java\net\sf\l2j\gameserver\data\xml\BossEventData.java:46: error: cannot find symbol
    [javac]                set.set("posZ", parseInteger(attrs, "z"));
    [javac]                                ^
    [javac]   symbol:   method parseInteger(NamedNodeMap,String)
    [javac]   location: class BossEventData
    [javac] 8 errors

 

Posted

XMLDocument has different behaviour than IXMLReader. If you are a customer of acis and you got the new patches, change it. Otherwise check how other files are using the xmlreader and adapt it since you are not allowed to get the new version for free. 

  • Like 1
  • Thanks 1
Posted
5 hours ago, martuxas1 said:

good code but code not valid for acis can't find IXMLReader.java in google or some one can share IXMLReader.java for acis?

Its an class of newer aCis revisions, if you want it you have to become an customer on aCis.. else you have to write on your own or find it from any other project hat using IXmlReader.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Posts

    • New user panel SOURCE $ 200 for source code. R$ 1000,00 BRL for source code.    
    • Hello everyone, we are one of the top gaming currency stores. We work exclusively with top projects. If you are interested in anything like Adena, Coins, Equip, write to us Discord - pchelacoin Telegram - https://t.me/ipchelacoin BOHPTS, KETRAWARS, EURO-PVP, L2REBORN, E-GLOBAL, LA2DREAM TOP PRICE !!!!!!!
    • L2Elixir – Patch 4 Is Live!   We’re working non-stop, day and night, to deliver the best possible quality and bring back what made L2Elixir special. This project is built with passion, not shortcuts — for the old-school players who remember, and the new ones who want to experience it properly. Thank you for being part of the journey. Together, we’re making L2Elixir great again ❤️ The legends never fade.    ⚙️ General Enabled Class Change service (same class type only) ALT + B → Services → Character Development Enabled Shift + Click on Treasure Chests Players can now identify real chests (Adena, scroll drops) and use Key / Unlock Event deaths now cancel only debuffs, All self buffs are preserved, fixes issues with Root and similar effects Bladedancer class can now log in even when Max Clients (2) is reached. Since an active Bladedancer is not available for every damage dealer and some players tried to abuse this via VPN or a second PC, this feature was added to keep things fair. protections applies, requires testing!    🎒 Items Crystallizing enchanted items now gives the correct increased crystal amount (retail-like behavior) Removed Agathion Seal Bracelet: Rudolph from Santa rewards (Gracia Final item) Added Dualsword Craft Stamp into Milestone Exchange list    🧙 Skills Fixed Banish Undead lethal chance Hot Springs Malaria and similar effects now level up faster while being attacked
  • Topics

×
×
  • Create New...

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock