Jump to content

[Share]Siege Time High Five


Recommended Posts

Geia se olous.

Se diafora Project kai pack pou  uparxoun kai einai l2j.

Uparxei ena  problima panta to Time ton Siege pou pou einai stis 1

Ayto to Code einai kati aplos  to eftia3a oste na to diorthwsw kapws..

Tha pate sto config Feature  kai tha orisete tis wres  opws to blepete poio katw

sta perisotera project ayto to config den epikoinwnh  giati den to exoun ftia3ei.

 

Config

# Which hours can change Castle Lords
# Default: 16,20
SiegeHourList = 16,15,18,20

 

Index: java/com/l2jserver/gameserver/model/entity/Siege.java
===================================================================
--- java/com/l2jserver/gameserver/model/entity/Siege.java	(revision 349)
+++ java/com/l2jserver/gameserver/model/entity/Siege.java	(working copy)
@@ -1440,27 +1440,44 @@
	/** Set the date for the next siege. */
	private void setNextSiegeDate()
	{
-		while (getCastle().getSiegeDate().getTimeInMillis() < Calendar.getInstance().getTimeInMillis())
+		Calendar siegeDate = getCastle().getSiegeDate();
+		if (siegeDate == null)
		{
-			if ((getCastle().getSiegeDate().get(Calendar.DAY_OF_WEEK) != Calendar.SATURDAY) && (getCastle().getSiegeDate().get(Calendar.DAY_OF_WEEK) != Calendar.SUNDAY))
+			return;
+		}
+		while (siegeDate.getTimeInMillis() < Calendar.getInstance().getTimeInMillis())
+		{
+			// set the next siege day to the next weekend
+			siegeDate.add(Calendar.DAY_OF_MONTH, 7);
+		}
+		
+		if (!SevenSigns.getInstance().isDateInSealValidPeriod(siegeDate))
+		{
+			siegeDate.add(Calendar.DAY_OF_MONTH, 7);
+		}
+		
+		// If siege time is not in the allowed list, set first available hour.
+		if (Config.CL_SET_SIEGE_TIME_LIST.contains("hour") && !(Config.SIEGE_HOUR_LIST_AFTERNOON.contains(siegeDate.get(Calendar.HOUR_OF_DAY) - 12) || Config.SIEGE_HOUR_LIST_MORNING.contains(siegeDate.get(Calendar.HOUR_OF_DAY))))
+		{
+			/*
+			 * this assume that we have at least 2 time choice for period (morning or afternoon) one time choice for period (morning or afternoon) is no more allowed default value are 4pm and 8pm so only afternoon is used
+			 */
+			int time = 0;
+			if ((getCastle().getCastleId() == 1) || (getCastle().getCastleId() == 2) || (getCastle().getCastleId() == 3) || (getCastle().getCastleId() == 7))
			{
-				getCastle().getSiegeDate().set(Calendar.DAY_OF_WEEK, Calendar.SATURDAY);
+				time = 1;
			}
-			// from CT2.3 Castle sieges are on Sunday, but if server admins allow to set day of the siege
-			// than sieges can occur on Saturdays as well
-			if ((getCastle().getSiegeDate().get(Calendar.DAY_OF_WEEK) == Calendar.SATURDAY) && !Config.CL_SET_SIEGE_TIME_LIST.contains("day"))
+			
+			if (!Config.SIEGE_HOUR_LIST_MORNING.isEmpty())
			{
-				getCastle().getSiegeDate().set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY);
+				siegeDate.set(Calendar.HOUR_OF_DAY, Config.SIEGE_HOUR_LIST_MORNING.get(time));
			}
-			// set the next siege day to the next weekend
-			getCastle().getSiegeDate().add(Calendar.DAY_OF_MONTH, 7);
+			else if (!Config.SIEGE_HOUR_LIST_AFTERNOON.isEmpty())
+			{
+				siegeDate.set(Calendar.HOUR_OF_DAY, Config.SIEGE_HOUR_LIST_AFTERNOON.get(time) + 12);
+			}
		}

-		if (!SevenSigns.getInstance().isDateInSealValidPeriod(getCastle().getSiegeDate()))
-		{
-			getCastle().getSiegeDate().add(Calendar.DAY_OF_MONTH, 7);
-		}
-		
		SystemMessage sm = SystemMessage.getSystemMessage(SystemMessageId.S1_ANNOUNCED_SIEGE_TIME);
		sm.addCastleId(getCastle().getCastleId());
		Announcements.getInstance().announceToAll(sm);

 

 


Siege of Gludio: Thu May 02 15:00:00 EEST 2013
Siege of Dion: Thu May 02 15:00:00 EEST 2013
Siege of Giran: Thu May 02 15:00:00 EEST 2013
Siege of Oren: Thu May 02 16:00:00 EEST 2013
Siege of Aden: Thu May 02 16:00:00 EEST 2013
Siege of Innadril: Thu May 02 16:00:00 EEST 2013
Siege of Goddard: Thu May 02 15:00:00 EEST 2013
Siege of Rune: Thu May 02 16:00:00 EEST 2013
Siege of Schuttgart: Thu May 02 16:00:00 EEST 2013

Link to comment
Share on other sites

Kalo to share alla credits tha dwseis.?

 

http://pastebin.com/vmNvCtMS

 

:dat:

 

File mou ama blepeis to idio me to  link pou dineis kaneis  lathos..

to link pou dineis to idio exw  kanei upload kai egw logika einai  to diko mou pou exw deis ...

pera apo ayto ama pas na deis sto code tis l2j den uparxei poia to L2CastleChamberlainInstance.java  to meteferan stin data kai ayto to problima  poia einai kathara apo to core poia

giati stin data den orizete  time....

kai to code  to ekana egw

Link to comment
Share on other sites

Afou einai diko sou o code gia pio logo de ton ekanes oloklhro kai ekanes ena copy paste apo ekei.. ?

 

File mou  to blepeis to code na einai se rwtaw pali....

diladi eleos.....

des ti leei to ena code me to allo kai meta ela pes to mou 3ana  ayto pou les...

 

alla  ti na diavaseis  einai kai ayto to 8ema...

 

ama deis to  link pou dineis agorina mou ta config  ginontai delete edw  to  config  uparxei kai  einai poly diaforetiko...

diladi otan theleis na kaneis ena spam  oste na pareis post kanto sosta se ayto pou tha 3ereis..

Link to comment
Share on other sites

Egw vlepw file oti einai oloidio me poli liges allages pou exoun kanei panw tou :/

 

:dat:

 

Koita tha sou to apo  allh mia fora kai ama theleis to katalaveneis...

den tha kanw to post mou spam giati aplos ena atomw den 3erei ti einai  to ena kai allo...

 

To link pou mou  ekanes post einai  me tin  palia version tis l2j pou tin eixa steile  se ena filo mou na to kanei test.

meta apo to update tis l2j pou metaferan to  L2CastleChamberlainInstance.java  stin Data den dinete apo ekei poia to time  ton siege.....

Apo ekei kai pera anti na akuroseis kai to config  prepei na to  kaneis  na douleyei  kai me ayto sosta xwris kanena problima etsi  eftia3a ayto pou ekana  post...

pera apo ayto teleiwnei to 8ema den tha kanei sou lew spam post .....

Alla gi ayto den uparxei poia kanenas na sas boi8isei sto mxc giati barethikan oloi na asxolounte me atoma pou pera  oti den 3eroun alla den ma8enoun....

na mou di3eis post pou exw  kanei kai den exw  dosei credits... 

File mou poia uparxoun eidh sto mxc kai to 3eroume oloi ayto kai exw edw einai perisotera xronia apo oti eisai esu kai oso exw asxolithei se ayto to forum esu den tha to kaneis pote...

gi ayto telos to 8ema...

Link to comment
Share on other sites

Signwmh diladi paei kairos pou to exeis steilei auto?

Ama mou peis 9a stamatisw na milaw.!

 

File mou pane 13 me  12 meres  otan to ekana upload ayto to code...

To Update tis l2j  egine http://trac.l2jserver.com/changeset/5928  12/04/2013

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...