Jump to content
  • 0

Olympiad Period End Time When Char Login


Selim

Question

Someone know how to add somethink like this?

 

I think must add option to oliconfig.ini, config.java and i add to enterworld.java this code

		if(Config.OLYMPIAD_END_ANNOUNE && activeChar.isNoble())
		{
			Olympiad.olympiadEnd(activeChar);
		}

but still doesnt work, i think must add somethink else but dont know where :/ i learn java so stop spam post like "you are noob" or somethink like this :)

 

Here is image what i mean:

 

post-135130-0-19927400-1395168174_thumb.png

Link to comment
Share on other sites

Recommended Posts

  • 0

A config wouldn't change anything, you just need to move your announcement after "Welcome to Lineage II" message.

Look in EnterWorld.java for:

// Close lock at login
activeChar.setLocked(false);

and place your code before that. Also remove static from everywhere you added it and change

 

Olympiad.olympiadEnd(activeChar);

to

Olympiad.getInstance().olympiadEnd(activeChar);

Edited by Versus
Link to comment
Share on other sites

  • 0

I think you want that ?

long milliToEnd;
if (_period == 0)
	milliToEnd = getMillisToOlympiadEnd();
else
	milliToEnd = getMillisToValidationEnd();

You only need to format the result, and create a getter for _period to access it out of Olympiads class.

Link to comment
Share on other sites

  • 0

Thx for fast answer, but where i must put your code?

 

Edit:

 

Ok i put to olympiad.java this code:

	public static void olympiadEnd(L2PcInstance player)
	{
		long milliToEnd;
		if(_period == 0)
		{
			milliToEnd = getMillisToOlympiadEnd();
		}
		else
		{
			milliToEnd = getMillisToValidationEnd();
		}

		double numSecs = milliToEnd / 1000 % 60;
		double countDown = (milliToEnd / 1000 - numSecs) / 60;
		int numMins = (int) Math.floor(countDown % 60);
		countDown = (countDown - numMins) / 60;
		int numHours = (int) Math.floor(countDown % 24);
		int numDays = (int) Math.floor((countDown - numHours) / 24);

		CreatureSay cs = new CreatureSay(0, Say2.ANNOUNCEMENT, "", "Olympiad period ends in " + numDays + " days, " + numHours + " hours and " + numMins + " mins.");
		player.sendPacket(cs);
	}

 but when i compile in eclipse i have errors like this:

Buildfile: C:\workspace\L2Private\trunk\gameserver\build.xml
prepare-local:
prepare-final:
init:
version:
     [echo] L2jFrozen Gameserver Revision: exported
compile:
    [javac] Compiling 779 source files to C:\workspace\L2Private\trunk\gameserver\build\classes
    [javac] warning: [options] bootstrap class path not set in conjunction with -source 1.6
    [javac] C:\workspace\L2Private\trunk\gameserver\head-src\com\l2jfrozen\gameserver\model\entity\olympiad\Olympiad.java:1704: error: non-static variable _period cannot be referenced from a static context
    [javac] 		if(_period == 0)
    [javac] 		   ^
    [javac] C:\workspace\L2Private\trunk\gameserver\head-src\com\l2jfrozen\gameserver\model\entity\olympiad\Olympiad.java:1706: error: non-static method getMillisToOlympiadEnd() cannot be referenced from a static context
    [javac] 			milliToEnd = getMillisToOlympiadEnd();
    [javac] 			             ^
    [javac] C:\workspace\L2Private\trunk\gameserver\head-src\com\l2jfrozen\gameserver\model\entity\olympiad\Olympiad.java:1710: error: non-static method getMillisToValidationEnd() cannot be referenced from a static context
    [javac] 			milliToEnd = getMillisToValidationEnd();
    [javac] 			             ^
    [javac] C:\workspace\L2Private\trunk\gameserver\head-src\com\l2jfrozen\gameserver\model\entity\olympiad\Olympiad.java:1720: error: cannot find symbol
    [javac] 		CreatureSay cs = new CreatureSay(0, Say2.ANNOUNCEMENT, "", "Olympiad period ends in " + numDays + " days, " + numHours + " hours and " + numMins + " mins.");
    [javac] 		^
    [javac]   symbol:   class CreatureSay
    [javac]   location: class Olympiad
    [javac] C:\workspace\L2Private\trunk\gameserver\head-src\com\l2jfrozen\gameserver\model\entity\olympiad\Olympiad.java:1720: error: cannot find symbol
    [javac] 		CreatureSay cs = new CreatureSay(0, Say2.ANNOUNCEMENT, "", "Olympiad period ends in " + numDays + " days, " + numHours + " hours and " + numMins + " mins.");
    [javac] 		                     ^
    [javac]   symbol:   class CreatureSay
    [javac]   location: class Olympiad
    [javac] C:\workspace\L2Private\trunk\gameserver\head-src\com\l2jfrozen\gameserver\model\entity\olympiad\Olympiad.java:1720: error: cannot find symbol
    [javac] 		CreatureSay cs = new CreatureSay(0, Say2.ANNOUNCEMENT, "", "Olympiad period ends in " + numDays + " days, " + numHours + " hours and " + numMins + " mins.");
    [javac] 		                                    ^
    [javac]   symbol:   variable Say2
    [javac]   location: class Olympiad
    [javac] 6 errors
    [javac] 1 warning

BUILD FAILED
C:\workspace\L2Private\trunk\gameserver\build.xml:65: Compile failed; see the compiler error output for details.

Total time: 6 seconds

What is worng ?

Edited by Selim
Link to comment
Share on other sites

  • 0
public static void olympiadEnd(L2PcInstance player)

Drop static keyword. You probably want different messages depending which period you're setted too.

Link to comment
Share on other sites

  • 0

Your 3 first errors refer to the "static" keyword to drop.

 

Your others errors come from the fact you missed to save the file (saving the file is supposed to fix imports), and CreatureSay class hasn't be imported. CreatureSay exists on L2JFrozen (network.serverpackets).

Link to comment
Share on other sites

  • 0

i don't understant what you mean with "static" keyword to drop

 

lol

 

 

public static void olympiadEnd(L2PcInstance player)

 

drop teh static word..

Link to comment
Share on other sites

  • 0

My english is not perfect, java skills too that's why i not understand it, you think "he is noob" maybe fix for it is simple, but i dont know how... when i start this post i say "i'm learning java"

 

You can't give me good code ? Then i can see what you mean :)

Link to comment
Share on other sites

  • 0

public static void olympiadEnd(L2PcInstance player)

 

remove "Static"

 

public void olympiadEnd(L2PcInstance player)

Link to comment
Share on other sites

  • 0

Ech ok i understand finally ;p You mean remove word "static" from code;p

 

But still have others 3 errors with creaturesay

 

Btw when delete static from code i have 1 more error:

    [javac] C:\workspace\L2Private\trunk\gameserver\head-src\com\l2jfrozen\gameserver\network\clientpackets\EnterWorld.java:687: error: non-static method olympiadEnd(L2PcInstance) cannot be referenced from a static context
    [javac] 			Olympiad.olympiadEnd(activeChar);
    [javac] 		
Edited by Selim
Link to comment
Share on other sites

  • 0

Missing import, move your cursor over the error and press "Import net.sf.l2j" blabla or similar "Import Say2" I dont remember exact msg. Or simpy press Ctrl+Shift+O for auto import :D

Edited by SweeTs
Link to comment
Share on other sites

  • 0

Ok finally i understand you ;p i add missing import creature say and delete "static" but i have 1 more error when i compile:

Buildfile: C:\workspace\L2Private\trunk\gameserver\build.xml
prepare-local:
prepare-final:
init:
version:
     [echo] L2jFrozen Gameserver Revision: exported
compile:
    [javac] Compiling 714 source files to C:\workspace\L2Private\trunk\gameserver\build\classes
    [javac] warning: [options] bootstrap class path not set in conjunction with -source 1.6
    [javac] C:\workspace\L2Private\trunk\gameserver\head-src\com\l2jfrozen\gameserver\network\clientpackets\EnterWorld.java:715: error: non-static method olympiadEnd(L2PcInstance) cannot be referenced from a static context
    [javac] 			Olympiad.olympiadEnd(activeChar);
    [javac] 			        ^
    [javac] 1 error
    [javac] 1 warning

BUILD FAILED
C:\workspace\L2Private\trunk\gameserver\build.xml:65: Compile failed; see the compiler error output for details.

Total time: 6 seconds

ok i fix it, i change this line 142 in olympiad.java:

protected int _period;

to:

protected static int _period;

And compile succes, when i log i have on first place announce with oly end but with 61616 days 12h 0min left, and when i relog the same, i set //manualhero and restart srv and still the same.

 

You know how fix it?

Edited by Selim
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.


×
×
  • Create New...