base for challenge system

This commit is contained in:
Len 2024-01-18 08:53:20 +01:00
parent 337493236e
commit f65dbef7e2
4 changed files with 61 additions and 0 deletions

View File

@ -0,0 +1,29 @@
package com.alttd.cometskyblock.challenges;
import lombok.Getter;
import org.bukkit.Material;
import org.bukkit.inventory.ItemStack;
import org.spongepowered.configurate.objectmapping.ConfigSerializable;
import java.util.List;
@Getter
@ConfigSerializable
public class Challenge {
private String challengeName;
private String mySQLKey;
private Material shownItem;
private ChallengeDifficulty difficulty;
private ChallengeType challengeType;
private String description;
private String neededText;
private String rewardText;
private String repeatRewardText;
private List<ItemStack> rewards;
private List<ItemStack> repeatRewards;
private List<ItemStack> neededItems;
private Integer neededLevel;
private Integer slot;
}

View File

@ -0,0 +1,4 @@
package com.alttd.cometskyblock.challenges;
public class ChallengeDifficulty {
}

View File

@ -0,0 +1,12 @@
package com.alttd.cometskyblock.challenges;
import org.spongepowered.configurate.objectmapping.ConfigSerializable;
@ConfigSerializable
public enum ChallengeType {
onPlayer,
onIsland,
islandLevel
}

View File

@ -0,0 +1,16 @@
package com.alttd.cometskyblock.configuration;
import com.alttd.cometskyblock.challenges.Challenge;
import lombok.Getter;
import org.spongepowered.configurate.objectmapping.ConfigSerializable;
import java.util.ArrayList;
import java.util.List;
@ConfigSerializable
@Getter
@SuppressWarnings({"CanBeFinal", "FieldMayBeFinal"})
public class ChallengesConfiguration implements Configuration {
private List<Challenge> challenges = new ArrayList<>();
}