Load amount of things to do/collect/kill/whatever into the database and load it when loading quest
This commit is contained in:
@@ -25,7 +25,7 @@ public class BreedMobsQuest extends Quest {
|
||||
|
||||
public BreedMobsQuest(UUID uuid) {
|
||||
super(uuid, 0, 0,
|
||||
QuestsConfig.BREED_MOB_QUEST.get(Utilities.randomOr0(QuestsConfig.BREED_MOB_QUEST.size() - 1)), false);
|
||||
QuestsConfig.BREED_MOB_QUEST.get(Utilities.randomOr0(QuestsConfig.BREED_MOB_QUEST.size() - 1)), -1, false);
|
||||
if (getVariant() instanceof BreedMobsQuestObject breedMobsQuestObject)
|
||||
this.breedMobsQuestObject = breedMobsQuestObject;
|
||||
else
|
||||
@@ -36,10 +36,10 @@ public class BreedMobsQuest extends Quest {
|
||||
}
|
||||
}
|
||||
|
||||
public BreedMobsQuest(UUID uuid, int step1, int step2, String variant, boolean rewardReceived) {
|
||||
public BreedMobsQuest(UUID uuid, int step1, int step2, String variant, int amount, boolean rewardReceived) {
|
||||
super(uuid, step1, step2, QuestsConfig.BREED_MOB_QUEST.stream()
|
||||
.filter(object -> variant.equals(object.getInternalName()))
|
||||
.findAny().orElse(null), rewardReceived);
|
||||
.findAny().orElse(null), amount, rewardReceived);
|
||||
if (getVariant() instanceof BreedMobsQuestObject breedMobsQuestObject)
|
||||
this.breedMobsQuestObject = breedMobsQuestObject;
|
||||
else
|
||||
@@ -54,10 +54,10 @@ public class BreedMobsQuest extends Quest {
|
||||
@Override
|
||||
public void save() {
|
||||
String sql = "INSERT INTO generic_quest_progress " +
|
||||
"(year_day, uuid, quest, quest_variant, step_1_progress, step_2_progress, reward_received) " +
|
||||
"VALUES (?, ?, ?, ?, ?, ?, ?) " +
|
||||
"(year_day, uuid, quest, quest_variant, step_1_progress, step_2_progress, amount, reward_received) " +
|
||||
"VALUES (?, ?, ?, ?, ?, ?, ?, ?) " +
|
||||
"ON DUPLICATE KEY UPDATE " +
|
||||
"quest = ?, quest_variant = ?, step_1_progress = ?, step_2_progress = ?, year_day = ?, reward_received = ?";
|
||||
"quest = ?, quest_variant = ?, step_1_progress = ?, step_2_progress = ?, year_day = ?, amount = ?, reward_received = ?";
|
||||
try {
|
||||
PreparedStatement statement = Database.getDatabase().getConnection().prepareStatement(sql);
|
||||
int yearDay = Utilities.getYearDay();
|
||||
@@ -69,13 +69,15 @@ public class BreedMobsQuest extends Quest {
|
||||
statement.setString(4, breedMobsQuestObject.getInternalName());
|
||||
statement.setInt(5, getStep1());
|
||||
statement.setInt(6, getStep2());
|
||||
statement.setInt(7, isRewardReceived() ? 1 : 0);
|
||||
statement.setString(8, this.getClass().getSimpleName());
|
||||
statement.setString(9, breedMobsQuestObject.getInternalName());
|
||||
statement.setInt(10, getStep1());
|
||||
statement.setInt(11, getStep2());
|
||||
statement.setInt(12, yearDay);
|
||||
statement.setInt(13, isRewardReceived() ? 1 : 0);
|
||||
statement.setInt(7, getAmount());
|
||||
statement.setInt(8, isRewardReceived() ? 1 : 0);
|
||||
statement.setString(9, this.getClass().getSimpleName());
|
||||
statement.setString(10, breedMobsQuestObject.getInternalName());
|
||||
statement.setInt(11, getStep1());
|
||||
statement.setInt(12, getStep2());
|
||||
statement.setInt(13, yearDay);
|
||||
statement.setInt(14, getAmount());
|
||||
statement.setInt(15, isRewardReceived() ? 1 : 0);
|
||||
statement.execute();
|
||||
} catch (SQLException exception) {
|
||||
exception.printStackTrace();
|
||||
|
||||
Reference in New Issue
Block a user