Re: [HELP] Olympiad.properties
Posted: Wed Aug 18, 2010 11:55 am
Many revisions change the navicat tables...so you must change them, too
I installed it and there aren't errors..janiii wrote:a little try on this.. not tested, just an idea.
Code: Select all
Index: java/com/l2jserver/Config.java===================================================================--- java/com/l2jserver/Config.java (revision 3799)+++ java/com/l2jserver/Config.java (working copy)@@ -469,6 +469,8 @@ public static long ALT_OLY_BATTLE; public static long ALT_OLY_WPERIOD; public static long ALT_OLY_VPERIOD;+ public static int[] ALT_OLY_END_DATE;+ public static int[] ALT_OLY_END_HOUR = new int[3]; public static int ALT_OLY_CLASSED; public static int ALT_OLY_NONCLASSED; public static int ALT_OLY_REG_DISPLAY;@@ -2197,6 +2199,17 @@ ALT_OLY_BATTLE = Long.parseLong(olympiad.getProperty("AltOlyBattle","360000")); ALT_OLY_WPERIOD = Long.parseLong(olympiad.getProperty("AltOlyWPeriod","604800000")); ALT_OLY_VPERIOD = Long.parseLong(olympiad.getProperty("AltOlyVPeriod","86400000"));+ String[] propertySplit = olympiad.getProperty("AltOlyEndDate","1").split(",");+ ALT_OLY_END_DATE = new int[propertySplit.length];+ for (int i = 0; i < propertySplit.length; i++)+ {+ ALT_OLY_END_DATE[i] = Integer.parseInt(propertySplit[i]);+ }+ propertySplit = olympiad.getProperty("AltOlyEndHour","12:00:00").split(":");+ for (int i = 0; i < 3; i++)+ {+ ALT_OLY_END_HOUR[i] = Integer.parseInt(propertySplit[i]);+ } ALT_OLY_CLASSED = Integer.parseInt(olympiad.getProperty("AltOlyClassedParticipants","5")); ALT_OLY_NONCLASSED = Integer.parseInt(olympiad.getProperty("AltOlyNonClassedParticipants","9")); ALT_OLY_REG_DISPLAY = Integer.parseInt(olympiad.getProperty("AltOlyRegistrationDisplayNumber","100"));Index: java/com/l2jserver/gameserver/model/olympiad/Olympiad.java===================================================================--- java/com/l2jserver/gameserver/model/olympiad/Olympiad.java (revision 3799)+++ java/com/l2jserver/gameserver/model/olympiad/Olympiad.java (working copy)@@ -872,14 +872,25 @@ Announcements.getInstance().announceToAll(sm); Calendar currentTime = Calendar.getInstance();- currentTime.add(Calendar.MONTH, 1);- currentTime.set(Calendar.DAY_OF_MONTH, 1);- currentTime.set(Calendar.AM_PM, Calendar.AM);- currentTime.set(Calendar.HOUR, 12);- currentTime.set(Calendar.MINUTE, 0);- currentTime.set(Calendar.SECOND, 0);- _olympiadEnd = currentTime.getTimeInMillis();+ int nearest = 0; + Calendar[] cals = new Calendar[Config.ALT_OLY_END_DATE.length];+ for (int i = 0; i < cals.length; i++)+ {+ cals[i] = Calendar.getInstance();+ cals[i].set(Calendar.DAY_OF_MONTH, Config.ALT_OLY_END_DATE[i]);+ if (cals[i].before(currentTime))+ cals[i].add(Calendar.MONTH, 1);+ + if (cals[i].before(cals[nearest]))+ nearest = i;+ }+ + cals[nearest].set(Calendar.HOUR_OF_DAY, Config.ALT_OLY_END_HOUR[0]);+ cals[nearest].set(Calendar.MINUTE, Config.ALT_OLY_END_HOUR[1]);+ cals[nearest].set(Calendar.SECOND, Config.ALT_OLY_END_HOUR[2]);+ _olympiadEnd = cals[nearest].getTimeInMillis();+ Calendar nextChange = Calendar.getInstance(); _nextWeeklyChange = nextChange.getTimeInMillis() + WEEKLY_PERIOD; scheduleWeeklyChange();Index: java/config/olympiad.properties===================================================================--- java/config/olympiad.properties (revision 3799)+++ java/config/olympiad.properties (working copy)@@ -33,6 +33,17 @@ # Default: 86400000 AltOlyVPeriod = 86400000 +# Olympiad End Period Date - day(s) of month+# (e.g. 1 would mean oly period ends every 1st day of month)+# (e.g. 1,15 would mean oly period ends every 1st and 15th day of month)+# <b><font color=red>CAUTION: You should set the AltOlyWPeriod and AltOlyVPeriod according to the changes done here!</font></b>+# Default: 1+AltOlyEndDate = 1 <------------- // Sakretsu - So there you should write 1,15 (days of every month)++# Olympiad End Period Time - in format hh:mm:ss (24 hours format)+# Default: 12:00:00+AltOlyEndHour = 12:00:00+ # Required number of participants for Classed and Non-Classed matches, Default 5 & 9 # Default: 5 AltOlyClassedParticipants = 5
Code: Select all
# Olympiad Start Time in Military hours Default 6pm (18) # Default: 18AltOlyStartTime = 18 # Olympiad Start Time for Min's, Default 00 so at the start of the hour.# Default: 00AltOlyMin = 00