diff --git a/L2J_Mobius_1.0_Ertheia/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java b/L2J_Mobius_1.0_Ertheia/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
index 10be00b346..4a8cdb88f2 100644
--- a/L2J_Mobius_1.0_Ertheia/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
+++ b/L2J_Mobius_1.0_Ertheia/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
@@ -38,6 +38,7 @@ import org.l2jmobius.commons.concurrent.ThreadPool;
import org.l2jmobius.commons.database.DatabaseFactory;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskBirthday;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskCleanUp;
+import org.l2jmobius.gameserver.taskmanager.tasks.TaskRecom;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskRestart;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskShutdown;
@@ -166,6 +167,7 @@ public class TaskManager
{
registerTask(new TaskBirthday());
registerTask(new TaskCleanUp());
+ registerTask(new TaskRecom());
registerTask(new TaskRestart());
registerTask(new TaskShutdown());
}
diff --git a/L2J_Mobius_1.0_Ertheia/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java b/L2J_Mobius_1.0_Ertheia/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
new file mode 100644
index 0000000000..83647ed659
--- /dev/null
+++ b/L2J_Mobius_1.0_Ertheia/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
@@ -0,0 +1,74 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+package org.l2jmobius.gameserver.taskmanager.tasks;
+
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+
+import org.l2jmobius.commons.database.DatabaseFactory;
+import org.l2jmobius.gameserver.taskmanager.Task;
+import org.l2jmobius.gameserver.taskmanager.TaskManager;
+import org.l2jmobius.gameserver.taskmanager.TaskManager.ExecutedTask;
+import org.l2jmobius.gameserver.taskmanager.TaskTypes;
+
+/**
+ * @author Layane
+ */
+public class TaskRecom extends Task
+{
+ private static final String NAME = "recommendations";
+
+ @Override
+ public String getName()
+ {
+ return NAME;
+ }
+
+ @Override
+ public void onTimeElapsed(ExecutedTask task)
+ {
+ try (Connection con = DatabaseFactory.getConnection())
+ {
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=0 WHERE rec_have <= 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=GREATEST(rec_have-20,0) WHERE rec_have > 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+ }
+ catch (Exception e)
+ {
+ LOGGER.severe(getClass().getSimpleName() + ": Could not reset Recommendations System: " + e);
+ }
+
+ LOGGER.info("Recommendations System reseted.");
+ }
+
+ @Override
+ public void initializate()
+ {
+ super.initializate();
+ TaskManager.addUniqueTask(NAME, TaskTypes.TYPE_GLOBAL_TASK, "1", "06:30:00", "");
+ }
+}
\ No newline at end of file
diff --git a/L2J_Mobius_2.5_Underground/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java b/L2J_Mobius_2.5_Underground/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
index 10be00b346..4a8cdb88f2 100644
--- a/L2J_Mobius_2.5_Underground/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
+++ b/L2J_Mobius_2.5_Underground/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
@@ -38,6 +38,7 @@ import org.l2jmobius.commons.concurrent.ThreadPool;
import org.l2jmobius.commons.database.DatabaseFactory;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskBirthday;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskCleanUp;
+import org.l2jmobius.gameserver.taskmanager.tasks.TaskRecom;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskRestart;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskShutdown;
@@ -166,6 +167,7 @@ public class TaskManager
{
registerTask(new TaskBirthday());
registerTask(new TaskCleanUp());
+ registerTask(new TaskRecom());
registerTask(new TaskRestart());
registerTask(new TaskShutdown());
}
diff --git a/L2J_Mobius_2.5_Underground/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java b/L2J_Mobius_2.5_Underground/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
new file mode 100644
index 0000000000..83647ed659
--- /dev/null
+++ b/L2J_Mobius_2.5_Underground/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
@@ -0,0 +1,74 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+package org.l2jmobius.gameserver.taskmanager.tasks;
+
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+
+import org.l2jmobius.commons.database.DatabaseFactory;
+import org.l2jmobius.gameserver.taskmanager.Task;
+import org.l2jmobius.gameserver.taskmanager.TaskManager;
+import org.l2jmobius.gameserver.taskmanager.TaskManager.ExecutedTask;
+import org.l2jmobius.gameserver.taskmanager.TaskTypes;
+
+/**
+ * @author Layane
+ */
+public class TaskRecom extends Task
+{
+ private static final String NAME = "recommendations";
+
+ @Override
+ public String getName()
+ {
+ return NAME;
+ }
+
+ @Override
+ public void onTimeElapsed(ExecutedTask task)
+ {
+ try (Connection con = DatabaseFactory.getConnection())
+ {
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=0 WHERE rec_have <= 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=GREATEST(rec_have-20,0) WHERE rec_have > 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+ }
+ catch (Exception e)
+ {
+ LOGGER.severe(getClass().getSimpleName() + ": Could not reset Recommendations System: " + e);
+ }
+
+ LOGGER.info("Recommendations System reseted.");
+ }
+
+ @Override
+ public void initializate()
+ {
+ super.initializate();
+ TaskManager.addUniqueTask(NAME, TaskTypes.TYPE_GLOBAL_TASK, "1", "06:30:00", "");
+ }
+}
\ No newline at end of file
diff --git a/L2J_Mobius_3.0_Helios/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java b/L2J_Mobius_3.0_Helios/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
index 10be00b346..4a8cdb88f2 100644
--- a/L2J_Mobius_3.0_Helios/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
+++ b/L2J_Mobius_3.0_Helios/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
@@ -38,6 +38,7 @@ import org.l2jmobius.commons.concurrent.ThreadPool;
import org.l2jmobius.commons.database.DatabaseFactory;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskBirthday;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskCleanUp;
+import org.l2jmobius.gameserver.taskmanager.tasks.TaskRecom;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskRestart;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskShutdown;
@@ -166,6 +167,7 @@ public class TaskManager
{
registerTask(new TaskBirthday());
registerTask(new TaskCleanUp());
+ registerTask(new TaskRecom());
registerTask(new TaskRestart());
registerTask(new TaskShutdown());
}
diff --git a/L2J_Mobius_3.0_Helios/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java b/L2J_Mobius_3.0_Helios/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
new file mode 100644
index 0000000000..83647ed659
--- /dev/null
+++ b/L2J_Mobius_3.0_Helios/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
@@ -0,0 +1,74 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+package org.l2jmobius.gameserver.taskmanager.tasks;
+
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+
+import org.l2jmobius.commons.database.DatabaseFactory;
+import org.l2jmobius.gameserver.taskmanager.Task;
+import org.l2jmobius.gameserver.taskmanager.TaskManager;
+import org.l2jmobius.gameserver.taskmanager.TaskManager.ExecutedTask;
+import org.l2jmobius.gameserver.taskmanager.TaskTypes;
+
+/**
+ * @author Layane
+ */
+public class TaskRecom extends Task
+{
+ private static final String NAME = "recommendations";
+
+ @Override
+ public String getName()
+ {
+ return NAME;
+ }
+
+ @Override
+ public void onTimeElapsed(ExecutedTask task)
+ {
+ try (Connection con = DatabaseFactory.getConnection())
+ {
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=0 WHERE rec_have <= 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=GREATEST(rec_have-20,0) WHERE rec_have > 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+ }
+ catch (Exception e)
+ {
+ LOGGER.severe(getClass().getSimpleName() + ": Could not reset Recommendations System: " + e);
+ }
+
+ LOGGER.info("Recommendations System reseted.");
+ }
+
+ @Override
+ public void initializate()
+ {
+ super.initializate();
+ TaskManager.addUniqueTask(NAME, TaskTypes.TYPE_GLOBAL_TASK, "1", "06:30:00", "");
+ }
+}
\ No newline at end of file
diff --git a/L2J_Mobius_4.0_GrandCrusade/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java b/L2J_Mobius_4.0_GrandCrusade/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
index 10be00b346..4a8cdb88f2 100644
--- a/L2J_Mobius_4.0_GrandCrusade/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
+++ b/L2J_Mobius_4.0_GrandCrusade/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
@@ -38,6 +38,7 @@ import org.l2jmobius.commons.concurrent.ThreadPool;
import org.l2jmobius.commons.database.DatabaseFactory;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskBirthday;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskCleanUp;
+import org.l2jmobius.gameserver.taskmanager.tasks.TaskRecom;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskRestart;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskShutdown;
@@ -166,6 +167,7 @@ public class TaskManager
{
registerTask(new TaskBirthday());
registerTask(new TaskCleanUp());
+ registerTask(new TaskRecom());
registerTask(new TaskRestart());
registerTask(new TaskShutdown());
}
diff --git a/L2J_Mobius_4.0_GrandCrusade/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java b/L2J_Mobius_4.0_GrandCrusade/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
new file mode 100644
index 0000000000..83647ed659
--- /dev/null
+++ b/L2J_Mobius_4.0_GrandCrusade/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
@@ -0,0 +1,74 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+package org.l2jmobius.gameserver.taskmanager.tasks;
+
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+
+import org.l2jmobius.commons.database.DatabaseFactory;
+import org.l2jmobius.gameserver.taskmanager.Task;
+import org.l2jmobius.gameserver.taskmanager.TaskManager;
+import org.l2jmobius.gameserver.taskmanager.TaskManager.ExecutedTask;
+import org.l2jmobius.gameserver.taskmanager.TaskTypes;
+
+/**
+ * @author Layane
+ */
+public class TaskRecom extends Task
+{
+ private static final String NAME = "recommendations";
+
+ @Override
+ public String getName()
+ {
+ return NAME;
+ }
+
+ @Override
+ public void onTimeElapsed(ExecutedTask task)
+ {
+ try (Connection con = DatabaseFactory.getConnection())
+ {
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=0 WHERE rec_have <= 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=GREATEST(rec_have-20,0) WHERE rec_have > 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+ }
+ catch (Exception e)
+ {
+ LOGGER.severe(getClass().getSimpleName() + ": Could not reset Recommendations System: " + e);
+ }
+
+ LOGGER.info("Recommendations System reseted.");
+ }
+
+ @Override
+ public void initializate()
+ {
+ super.initializate();
+ TaskManager.addUniqueTask(NAME, TaskTypes.TYPE_GLOBAL_TASK, "1", "06:30:00", "");
+ }
+}
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java b/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
index 10be00b346..4a8cdb88f2 100644
--- a/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
+++ b/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
@@ -38,6 +38,7 @@ import org.l2jmobius.commons.concurrent.ThreadPool;
import org.l2jmobius.commons.database.DatabaseFactory;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskBirthday;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskCleanUp;
+import org.l2jmobius.gameserver.taskmanager.tasks.TaskRecom;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskRestart;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskShutdown;
@@ -166,6 +167,7 @@ public class TaskManager
{
registerTask(new TaskBirthday());
registerTask(new TaskCleanUp());
+ registerTask(new TaskRecom());
registerTask(new TaskRestart());
registerTask(new TaskShutdown());
}
diff --git a/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java b/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
new file mode 100644
index 0000000000..83647ed659
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
@@ -0,0 +1,74 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+package org.l2jmobius.gameserver.taskmanager.tasks;
+
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+
+import org.l2jmobius.commons.database.DatabaseFactory;
+import org.l2jmobius.gameserver.taskmanager.Task;
+import org.l2jmobius.gameserver.taskmanager.TaskManager;
+import org.l2jmobius.gameserver.taskmanager.TaskManager.ExecutedTask;
+import org.l2jmobius.gameserver.taskmanager.TaskTypes;
+
+/**
+ * @author Layane
+ */
+public class TaskRecom extends Task
+{
+ private static final String NAME = "recommendations";
+
+ @Override
+ public String getName()
+ {
+ return NAME;
+ }
+
+ @Override
+ public void onTimeElapsed(ExecutedTask task)
+ {
+ try (Connection con = DatabaseFactory.getConnection())
+ {
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=0 WHERE rec_have <= 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=GREATEST(rec_have-20,0) WHERE rec_have > 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+ }
+ catch (Exception e)
+ {
+ LOGGER.severe(getClass().getSimpleName() + ": Could not reset Recommendations System: " + e);
+ }
+
+ LOGGER.info("Recommendations System reseted.");
+ }
+
+ @Override
+ public void initializate()
+ {
+ super.initializate();
+ TaskManager.addUniqueTask(NAME, TaskTypes.TYPE_GLOBAL_TASK, "1", "06:30:00", "");
+ }
+}
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java b/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
index 10be00b346..4a8cdb88f2 100644
--- a/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
+++ b/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
@@ -38,6 +38,7 @@ import org.l2jmobius.commons.concurrent.ThreadPool;
import org.l2jmobius.commons.database.DatabaseFactory;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskBirthday;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskCleanUp;
+import org.l2jmobius.gameserver.taskmanager.tasks.TaskRecom;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskRestart;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskShutdown;
@@ -166,6 +167,7 @@ public class TaskManager
{
registerTask(new TaskBirthday());
registerTask(new TaskCleanUp());
+ registerTask(new TaskRecom());
registerTask(new TaskRestart());
registerTask(new TaskShutdown());
}
diff --git a/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java b/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
new file mode 100644
index 0000000000..83647ed659
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
@@ -0,0 +1,74 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+package org.l2jmobius.gameserver.taskmanager.tasks;
+
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+
+import org.l2jmobius.commons.database.DatabaseFactory;
+import org.l2jmobius.gameserver.taskmanager.Task;
+import org.l2jmobius.gameserver.taskmanager.TaskManager;
+import org.l2jmobius.gameserver.taskmanager.TaskManager.ExecutedTask;
+import org.l2jmobius.gameserver.taskmanager.TaskTypes;
+
+/**
+ * @author Layane
+ */
+public class TaskRecom extends Task
+{
+ private static final String NAME = "recommendations";
+
+ @Override
+ public String getName()
+ {
+ return NAME;
+ }
+
+ @Override
+ public void onTimeElapsed(ExecutedTask task)
+ {
+ try (Connection con = DatabaseFactory.getConnection())
+ {
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=0 WHERE rec_have <= 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=GREATEST(rec_have-20,0) WHERE rec_have > 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+ }
+ catch (Exception e)
+ {
+ LOGGER.severe(getClass().getSimpleName() + ": Could not reset Recommendations System: " + e);
+ }
+
+ LOGGER.info("Recommendations System reseted.");
+ }
+
+ @Override
+ public void initializate()
+ {
+ super.initializate();
+ TaskManager.addUniqueTask(NAME, TaskTypes.TYPE_GLOBAL_TASK, "1", "06:30:00", "");
+ }
+}
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java b/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
index 10be00b346..4a8cdb88f2 100644
--- a/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
+++ b/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
@@ -38,6 +38,7 @@ import org.l2jmobius.commons.concurrent.ThreadPool;
import org.l2jmobius.commons.database.DatabaseFactory;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskBirthday;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskCleanUp;
+import org.l2jmobius.gameserver.taskmanager.tasks.TaskRecom;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskRestart;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskShutdown;
@@ -166,6 +167,7 @@ public class TaskManager
{
registerTask(new TaskBirthday());
registerTask(new TaskCleanUp());
+ registerTask(new TaskRecom());
registerTask(new TaskRestart());
registerTask(new TaskShutdown());
}
diff --git a/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java b/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
new file mode 100644
index 0000000000..83647ed659
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
@@ -0,0 +1,74 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+package org.l2jmobius.gameserver.taskmanager.tasks;
+
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+
+import org.l2jmobius.commons.database.DatabaseFactory;
+import org.l2jmobius.gameserver.taskmanager.Task;
+import org.l2jmobius.gameserver.taskmanager.TaskManager;
+import org.l2jmobius.gameserver.taskmanager.TaskManager.ExecutedTask;
+import org.l2jmobius.gameserver.taskmanager.TaskTypes;
+
+/**
+ * @author Layane
+ */
+public class TaskRecom extends Task
+{
+ private static final String NAME = "recommendations";
+
+ @Override
+ public String getName()
+ {
+ return NAME;
+ }
+
+ @Override
+ public void onTimeElapsed(ExecutedTask task)
+ {
+ try (Connection con = DatabaseFactory.getConnection())
+ {
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=0 WHERE rec_have <= 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=GREATEST(rec_have-20,0) WHERE rec_have > 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+ }
+ catch (Exception e)
+ {
+ LOGGER.severe(getClass().getSimpleName() + ": Could not reset Recommendations System: " + e);
+ }
+
+ LOGGER.info("Recommendations System reseted.");
+ }
+
+ @Override
+ public void initializate()
+ {
+ super.initializate();
+ TaskManager.addUniqueTask(NAME, TaskTypes.TYPE_GLOBAL_TASK, "1", "06:30:00", "");
+ }
+}
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java b/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
index 10be00b346..4a8cdb88f2 100644
--- a/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
+++ b/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
@@ -38,6 +38,7 @@ import org.l2jmobius.commons.concurrent.ThreadPool;
import org.l2jmobius.commons.database.DatabaseFactory;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskBirthday;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskCleanUp;
+import org.l2jmobius.gameserver.taskmanager.tasks.TaskRecom;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskRestart;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskShutdown;
@@ -166,6 +167,7 @@ public class TaskManager
{
registerTask(new TaskBirthday());
registerTask(new TaskCleanUp());
+ registerTask(new TaskRecom());
registerTask(new TaskRestart());
registerTask(new TaskShutdown());
}
diff --git a/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java b/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
new file mode 100644
index 0000000000..83647ed659
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
@@ -0,0 +1,74 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+package org.l2jmobius.gameserver.taskmanager.tasks;
+
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+
+import org.l2jmobius.commons.database.DatabaseFactory;
+import org.l2jmobius.gameserver.taskmanager.Task;
+import org.l2jmobius.gameserver.taskmanager.TaskManager;
+import org.l2jmobius.gameserver.taskmanager.TaskManager.ExecutedTask;
+import org.l2jmobius.gameserver.taskmanager.TaskTypes;
+
+/**
+ * @author Layane
+ */
+public class TaskRecom extends Task
+{
+ private static final String NAME = "recommendations";
+
+ @Override
+ public String getName()
+ {
+ return NAME;
+ }
+
+ @Override
+ public void onTimeElapsed(ExecutedTask task)
+ {
+ try (Connection con = DatabaseFactory.getConnection())
+ {
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=0 WHERE rec_have <= 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=GREATEST(rec_have-20,0) WHERE rec_have > 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+ }
+ catch (Exception e)
+ {
+ LOGGER.severe(getClass().getSimpleName() + ": Could not reset Recommendations System: " + e);
+ }
+
+ LOGGER.info("Recommendations System reseted.");
+ }
+
+ @Override
+ public void initializate()
+ {
+ super.initializate();
+ TaskManager.addUniqueTask(NAME, TaskTypes.TYPE_GLOBAL_TASK, "1", "06:30:00", "");
+ }
+}
\ No newline at end of file
diff --git a/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/entity/NevitSystem.java b/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/entity/NevitSystem.java
index 616ba567b7..0c39df1d5d 100644
--- a/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/entity/NevitSystem.java
+++ b/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/entity/NevitSystem.java
@@ -91,7 +91,7 @@ public class NevitSystem implements IUniqueId
}
else if (percent >= 75)
{
- _player.sendPacket(SystemMessageId.YOUR_CLOAK_HAS_BEEN_UNEQUIPPED_BECAUSE_YOUR_ARMOR_SET_IS_NO_LONGER_COMPLETE);
+ _player.sendPacket(SystemMessageId.NEVIT_S_ADVENT_BLESSING_SHINES_STRONGLY_FROM_ABOVE_YOU_CAN_ALMOST_SEE_HIS_DIVINE_AURA);
}
}
diff --git a/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java b/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
index fd70cb596e..5da8275623 100644
--- a/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
+++ b/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
@@ -48,14 +48,14 @@ public class TaskRecom extends Task
{
try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=0 WHERE rec_have <= 20"))
{
- ps.setInt(1, 0); // Rec left = 0
+ ps.setInt(1, 20); // Rec left = 20
ps.setInt(2, 3600000); // Timer = 1 hour
ps.execute();
}
try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=GREATEST(rec_have-20,0) WHERE rec_have > 20"))
{
- ps.setInt(1, 0); // Rec left = 0
+ ps.setInt(1, 20); // Rec left = 20
ps.setInt(2, 3600000); // Timer = 1 hour
ps.execute();
}
@@ -77,7 +77,7 @@ public class TaskRecom extends Task
}
}
}
- LOGGER.info("Recommendations System reseted");
+ LOGGER.info("Recommendations System reseted.");
}
@Override
diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
index 10be00b346..4a8cdb88f2 100644
--- a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
+++ b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
@@ -38,6 +38,7 @@ import org.l2jmobius.commons.concurrent.ThreadPool;
import org.l2jmobius.commons.database.DatabaseFactory;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskBirthday;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskCleanUp;
+import org.l2jmobius.gameserver.taskmanager.tasks.TaskRecom;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskRestart;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskShutdown;
@@ -166,6 +167,7 @@ public class TaskManager
{
registerTask(new TaskBirthday());
registerTask(new TaskCleanUp());
+ registerTask(new TaskRecom());
registerTask(new TaskRestart());
registerTask(new TaskShutdown());
}
diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
new file mode 100644
index 0000000000..83647ed659
--- /dev/null
+++ b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
@@ -0,0 +1,74 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+package org.l2jmobius.gameserver.taskmanager.tasks;
+
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+
+import org.l2jmobius.commons.database.DatabaseFactory;
+import org.l2jmobius.gameserver.taskmanager.Task;
+import org.l2jmobius.gameserver.taskmanager.TaskManager;
+import org.l2jmobius.gameserver.taskmanager.TaskManager.ExecutedTask;
+import org.l2jmobius.gameserver.taskmanager.TaskTypes;
+
+/**
+ * @author Layane
+ */
+public class TaskRecom extends Task
+{
+ private static final String NAME = "recommendations";
+
+ @Override
+ public String getName()
+ {
+ return NAME;
+ }
+
+ @Override
+ public void onTimeElapsed(ExecutedTask task)
+ {
+ try (Connection con = DatabaseFactory.getConnection())
+ {
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=0 WHERE rec_have <= 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=GREATEST(rec_have-20,0) WHERE rec_have > 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+ }
+ catch (Exception e)
+ {
+ LOGGER.severe(getClass().getSimpleName() + ": Could not reset Recommendations System: " + e);
+ }
+
+ LOGGER.info("Recommendations System reseted.");
+ }
+
+ @Override
+ public void initializate()
+ {
+ super.initializate();
+ TaskManager.addUniqueTask(NAME, TaskTypes.TYPE_GLOBAL_TASK, "1", "06:30:00", "");
+ }
+}
\ No newline at end of file
diff --git a/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java b/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
index 10be00b346..4a8cdb88f2 100644
--- a/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
+++ b/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
@@ -38,6 +38,7 @@ import org.l2jmobius.commons.concurrent.ThreadPool;
import org.l2jmobius.commons.database.DatabaseFactory;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskBirthday;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskCleanUp;
+import org.l2jmobius.gameserver.taskmanager.tasks.TaskRecom;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskRestart;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskShutdown;
@@ -166,6 +167,7 @@ public class TaskManager
{
registerTask(new TaskBirthday());
registerTask(new TaskCleanUp());
+ registerTask(new TaskRecom());
registerTask(new TaskRestart());
registerTask(new TaskShutdown());
}
diff --git a/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java b/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
new file mode 100644
index 0000000000..83647ed659
--- /dev/null
+++ b/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
@@ -0,0 +1,74 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+package org.l2jmobius.gameserver.taskmanager.tasks;
+
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+
+import org.l2jmobius.commons.database.DatabaseFactory;
+import org.l2jmobius.gameserver.taskmanager.Task;
+import org.l2jmobius.gameserver.taskmanager.TaskManager;
+import org.l2jmobius.gameserver.taskmanager.TaskManager.ExecutedTask;
+import org.l2jmobius.gameserver.taskmanager.TaskTypes;
+
+/**
+ * @author Layane
+ */
+public class TaskRecom extends Task
+{
+ private static final String NAME = "recommendations";
+
+ @Override
+ public String getName()
+ {
+ return NAME;
+ }
+
+ @Override
+ public void onTimeElapsed(ExecutedTask task)
+ {
+ try (Connection con = DatabaseFactory.getConnection())
+ {
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=0 WHERE rec_have <= 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=GREATEST(rec_have-20,0) WHERE rec_have > 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+ }
+ catch (Exception e)
+ {
+ LOGGER.severe(getClass().getSimpleName() + ": Could not reset Recommendations System: " + e);
+ }
+
+ LOGGER.info("Recommendations System reseted.");
+ }
+
+ @Override
+ public void initializate()
+ {
+ super.initializate();
+ TaskManager.addUniqueTask(NAME, TaskTypes.TYPE_GLOBAL_TASK, "1", "06:30:00", "");
+ }
+}
\ No newline at end of file
diff --git a/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java b/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
index 10be00b346..4a8cdb88f2 100644
--- a/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
+++ b/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
@@ -38,6 +38,7 @@ import org.l2jmobius.commons.concurrent.ThreadPool;
import org.l2jmobius.commons.database.DatabaseFactory;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskBirthday;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskCleanUp;
+import org.l2jmobius.gameserver.taskmanager.tasks.TaskRecom;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskRestart;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskShutdown;
@@ -166,6 +167,7 @@ public class TaskManager
{
registerTask(new TaskBirthday());
registerTask(new TaskCleanUp());
+ registerTask(new TaskRecom());
registerTask(new TaskRestart());
registerTask(new TaskShutdown());
}
diff --git a/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java b/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
new file mode 100644
index 0000000000..83647ed659
--- /dev/null
+++ b/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
@@ -0,0 +1,74 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+package org.l2jmobius.gameserver.taskmanager.tasks;
+
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+
+import org.l2jmobius.commons.database.DatabaseFactory;
+import org.l2jmobius.gameserver.taskmanager.Task;
+import org.l2jmobius.gameserver.taskmanager.TaskManager;
+import org.l2jmobius.gameserver.taskmanager.TaskManager.ExecutedTask;
+import org.l2jmobius.gameserver.taskmanager.TaskTypes;
+
+/**
+ * @author Layane
+ */
+public class TaskRecom extends Task
+{
+ private static final String NAME = "recommendations";
+
+ @Override
+ public String getName()
+ {
+ return NAME;
+ }
+
+ @Override
+ public void onTimeElapsed(ExecutedTask task)
+ {
+ try (Connection con = DatabaseFactory.getConnection())
+ {
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=0 WHERE rec_have <= 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=GREATEST(rec_have-20,0) WHERE rec_have > 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+ }
+ catch (Exception e)
+ {
+ LOGGER.severe(getClass().getSimpleName() + ": Could not reset Recommendations System: " + e);
+ }
+
+ LOGGER.info("Recommendations System reseted.");
+ }
+
+ @Override
+ public void initializate()
+ {
+ super.initializate();
+ TaskManager.addUniqueTask(NAME, TaskTypes.TYPE_GLOBAL_TASK, "1", "06:30:00", "");
+ }
+}
\ No newline at end of file
diff --git a/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java b/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
index 10be00b346..4a8cdb88f2 100644
--- a/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
+++ b/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
@@ -38,6 +38,7 @@ import org.l2jmobius.commons.concurrent.ThreadPool;
import org.l2jmobius.commons.database.DatabaseFactory;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskBirthday;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskCleanUp;
+import org.l2jmobius.gameserver.taskmanager.tasks.TaskRecom;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskRestart;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskShutdown;
@@ -166,6 +167,7 @@ public class TaskManager
{
registerTask(new TaskBirthday());
registerTask(new TaskCleanUp());
+ registerTask(new TaskRecom());
registerTask(new TaskRestart());
registerTask(new TaskShutdown());
}
diff --git a/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java b/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
new file mode 100644
index 0000000000..83647ed659
--- /dev/null
+++ b/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
@@ -0,0 +1,74 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+package org.l2jmobius.gameserver.taskmanager.tasks;
+
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+
+import org.l2jmobius.commons.database.DatabaseFactory;
+import org.l2jmobius.gameserver.taskmanager.Task;
+import org.l2jmobius.gameserver.taskmanager.TaskManager;
+import org.l2jmobius.gameserver.taskmanager.TaskManager.ExecutedTask;
+import org.l2jmobius.gameserver.taskmanager.TaskTypes;
+
+/**
+ * @author Layane
+ */
+public class TaskRecom extends Task
+{
+ private static final String NAME = "recommendations";
+
+ @Override
+ public String getName()
+ {
+ return NAME;
+ }
+
+ @Override
+ public void onTimeElapsed(ExecutedTask task)
+ {
+ try (Connection con = DatabaseFactory.getConnection())
+ {
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=0 WHERE rec_have <= 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=GREATEST(rec_have-20,0) WHERE rec_have > 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+ }
+ catch (Exception e)
+ {
+ LOGGER.severe(getClass().getSimpleName() + ": Could not reset Recommendations System: " + e);
+ }
+
+ LOGGER.info("Recommendations System reseted.");
+ }
+
+ @Override
+ public void initializate()
+ {
+ super.initializate();
+ TaskManager.addUniqueTask(NAME, TaskTypes.TYPE_GLOBAL_TASK, "1", "06:30:00", "");
+ }
+}
\ No newline at end of file
diff --git a/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java b/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
index 10be00b346..4a8cdb88f2 100644
--- a/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
+++ b/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
@@ -38,6 +38,7 @@ import org.l2jmobius.commons.concurrent.ThreadPool;
import org.l2jmobius.commons.database.DatabaseFactory;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskBirthday;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskCleanUp;
+import org.l2jmobius.gameserver.taskmanager.tasks.TaskRecom;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskRestart;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskShutdown;
@@ -166,6 +167,7 @@ public class TaskManager
{
registerTask(new TaskBirthday());
registerTask(new TaskCleanUp());
+ registerTask(new TaskRecom());
registerTask(new TaskRestart());
registerTask(new TaskShutdown());
}
diff --git a/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java b/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
new file mode 100644
index 0000000000..83647ed659
--- /dev/null
+++ b/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
@@ -0,0 +1,74 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+package org.l2jmobius.gameserver.taskmanager.tasks;
+
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+
+import org.l2jmobius.commons.database.DatabaseFactory;
+import org.l2jmobius.gameserver.taskmanager.Task;
+import org.l2jmobius.gameserver.taskmanager.TaskManager;
+import org.l2jmobius.gameserver.taskmanager.TaskManager.ExecutedTask;
+import org.l2jmobius.gameserver.taskmanager.TaskTypes;
+
+/**
+ * @author Layane
+ */
+public class TaskRecom extends Task
+{
+ private static final String NAME = "recommendations";
+
+ @Override
+ public String getName()
+ {
+ return NAME;
+ }
+
+ @Override
+ public void onTimeElapsed(ExecutedTask task)
+ {
+ try (Connection con = DatabaseFactory.getConnection())
+ {
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=0 WHERE rec_have <= 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=GREATEST(rec_have-20,0) WHERE rec_have > 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+ }
+ catch (Exception e)
+ {
+ LOGGER.severe(getClass().getSimpleName() + ": Could not reset Recommendations System: " + e);
+ }
+
+ LOGGER.info("Recommendations System reseted.");
+ }
+
+ @Override
+ public void initializate()
+ {
+ super.initializate();
+ TaskManager.addUniqueTask(NAME, TaskTypes.TYPE_GLOBAL_TASK, "1", "06:30:00", "");
+ }
+}
\ No newline at end of file
diff --git a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
index 10be00b346..4a8cdb88f2 100644
--- a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
+++ b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
@@ -38,6 +38,7 @@ import org.l2jmobius.commons.concurrent.ThreadPool;
import org.l2jmobius.commons.database.DatabaseFactory;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskBirthday;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskCleanUp;
+import org.l2jmobius.gameserver.taskmanager.tasks.TaskRecom;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskRestart;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskShutdown;
@@ -166,6 +167,7 @@ public class TaskManager
{
registerTask(new TaskBirthday());
registerTask(new TaskCleanUp());
+ registerTask(new TaskRecom());
registerTask(new TaskRestart());
registerTask(new TaskShutdown());
}
diff --git a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
new file mode 100644
index 0000000000..83647ed659
--- /dev/null
+++ b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
@@ -0,0 +1,74 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+package org.l2jmobius.gameserver.taskmanager.tasks;
+
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+
+import org.l2jmobius.commons.database.DatabaseFactory;
+import org.l2jmobius.gameserver.taskmanager.Task;
+import org.l2jmobius.gameserver.taskmanager.TaskManager;
+import org.l2jmobius.gameserver.taskmanager.TaskManager.ExecutedTask;
+import org.l2jmobius.gameserver.taskmanager.TaskTypes;
+
+/**
+ * @author Layane
+ */
+public class TaskRecom extends Task
+{
+ private static final String NAME = "recommendations";
+
+ @Override
+ public String getName()
+ {
+ return NAME;
+ }
+
+ @Override
+ public void onTimeElapsed(ExecutedTask task)
+ {
+ try (Connection con = DatabaseFactory.getConnection())
+ {
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=0 WHERE rec_have <= 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=GREATEST(rec_have-20,0) WHERE rec_have > 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+ }
+ catch (Exception e)
+ {
+ LOGGER.severe(getClass().getSimpleName() + ": Could not reset Recommendations System: " + e);
+ }
+
+ LOGGER.info("Recommendations System reseted.");
+ }
+
+ @Override
+ public void initializate()
+ {
+ super.initializate();
+ TaskManager.addUniqueTask(NAME, TaskTypes.TYPE_GLOBAL_TASK, "1", "06:30:00", "");
+ }
+}
\ No newline at end of file
diff --git a/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java b/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
index 10be00b346..4a8cdb88f2 100644
--- a/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
+++ b/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/taskmanager/TaskManager.java
@@ -38,6 +38,7 @@ import org.l2jmobius.commons.concurrent.ThreadPool;
import org.l2jmobius.commons.database.DatabaseFactory;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskBirthday;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskCleanUp;
+import org.l2jmobius.gameserver.taskmanager.tasks.TaskRecom;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskRestart;
import org.l2jmobius.gameserver.taskmanager.tasks.TaskShutdown;
@@ -166,6 +167,7 @@ public class TaskManager
{
registerTask(new TaskBirthday());
registerTask(new TaskCleanUp());
+ registerTask(new TaskRecom());
registerTask(new TaskRestart());
registerTask(new TaskShutdown());
}
diff --git a/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java b/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
new file mode 100644
index 0000000000..83647ed659
--- /dev/null
+++ b/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/taskmanager/tasks/TaskRecom.java
@@ -0,0 +1,74 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+package org.l2jmobius.gameserver.taskmanager.tasks;
+
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+
+import org.l2jmobius.commons.database.DatabaseFactory;
+import org.l2jmobius.gameserver.taskmanager.Task;
+import org.l2jmobius.gameserver.taskmanager.TaskManager;
+import org.l2jmobius.gameserver.taskmanager.TaskManager.ExecutedTask;
+import org.l2jmobius.gameserver.taskmanager.TaskTypes;
+
+/**
+ * @author Layane
+ */
+public class TaskRecom extends Task
+{
+ private static final String NAME = "recommendations";
+
+ @Override
+ public String getName()
+ {
+ return NAME;
+ }
+
+ @Override
+ public void onTimeElapsed(ExecutedTask task)
+ {
+ try (Connection con = DatabaseFactory.getConnection())
+ {
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=0 WHERE rec_have <= 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+
+ try (PreparedStatement ps = con.prepareStatement("UPDATE character_reco_bonus SET rec_left=?, time_left=?, rec_have=GREATEST(rec_have-20,0) WHERE rec_have > 20"))
+ {
+ ps.setInt(1, 20); // Rec left = 20
+ ps.setInt(2, 3600000); // Timer = 1 hour
+ ps.execute();
+ }
+ }
+ catch (Exception e)
+ {
+ LOGGER.severe(getClass().getSimpleName() + ": Could not reset Recommendations System: " + e);
+ }
+
+ LOGGER.info("Recommendations System reseted.");
+ }
+
+ @Override
+ public void initializate()
+ {
+ super.initializate();
+ TaskManager.addUniqueTask(NAME, TaskTypes.TYPE_GLOBAL_TASK, "1", "06:30:00", "");
+ }
+}
\ No newline at end of file