1.0.0-SNAPSHOT-U167
+ Started the implementation of the AutoSpawn system + Updated the TODO + Split the remaining TODO items in to what can be done post and pre release
This commit is contained in:
parent
e4fceb2fb7
commit
f41aa38ef7
23
TODO
23
TODO
|
@ -1,15 +1,20 @@
|
|||
02:00 -> Add full AutoSpawns system
|
||||
02:00 -> Interval based spawn system, so bosses will spawn at location after certain time
|
||||
|
||||
02:00 -> Randomly in the wilderness, bosses will spawn with x chance within coords as a player is loading chunks
|
||||
00:45 -> Randomly from a spawner, bosses will spawn with x chance within coords when a spawner is spawning mobs of the same type
|
||||
02:00 -> Interval based spawn system, so bosses will spawn at location after certain time
|
||||
04:00 -> Add the AutoSpawns Editing GUI (with a button for toggling the type of the autospawn, from wilderness, to spawner, to interval and a button for editing data)
|
||||
01:00 -> Interval - Button to change coords, list of possible spawns, spawnIfChunkIsntLoaded, maxActiveBosses, bossesPerInterval, spawnRate, spawnType (Interval or Random), placeholder, message
|
||||
|
||||
01:00 -> Wilderness - Button to change max coords, boss that autospawn applies to, maxActiveBosses, spawnChance
|
||||
01:00 -> Spawner - Button to change max coords, boss that autospawn applies to, maxActiveBosses, spawnChance
|
||||
01:00 -> Interval - Button to change coords, list of possible spawns, spawnIfChunkIsntLoaded, maxActiveBosses, bossesPerInterval, spawnRate, spawnType (Interval or Random), placeholder, message
|
||||
00:30 -> Connect the /boss time [section] to the AutoSpawns timer (can only be applied to Interval AutoSpawns)
|
||||
01:00 -> Add a new branch for the plugin and add support for Legacy version
|
||||
-----------
|
||||
8:30 hrs
|
||||
|
||||
|
||||
|
||||
------------------------------------- TO DO AFTER RELEASE ---------------------------------------------------
|
||||
02:00 -> Randomly in the wilderness, bosses will spawn with x chance within coords as a player is loading chunks
|
||||
00:45 -> Randomly from a spawner, bosses will spawn with x chance within coords when a spawner is spawning mobs of the same type
|
||||
-> AutoSpawns Editing GUI
|
||||
01:00 -> Wilderness - Button to change max coords, boss that autospawn applies to, maxActiveBosses, spawnChance
|
||||
01:00 -> Spawner - Button to change max coords, boss that autospawn applies to, maxActiveBosses, spawnChance
|
||||
|
||||
-----------
|
||||
15:15 hrs
|
||||
4:45 hrs
|
|
@ -1,14 +1,21 @@
|
|||
{
|
||||
"Section1": {
|
||||
"location": "world,0,150,0",
|
||||
"MiddleOfTheEarth": {
|
||||
"editing": true,
|
||||
"type": "INTERVAL",
|
||||
"entities": [
|
||||
"SkeletonKing"
|
||||
],
|
||||
"settings": {
|
||||
"spawnWhenChunkIsntLoaded": false,
|
||||
"maxAliveAtOnce": 1,
|
||||
"amountPerSpawn": 1,
|
||||
"placeholder": "{custombosses_1}"
|
||||
"spawnWhenChunkIsntLoaded": false,
|
||||
"overrideDefaultSpawnMessage": true,
|
||||
"spawnMessage": "MiddleOfTheEarthSpawnMessage"
|
||||
},
|
||||
"customData": {
|
||||
"location": "world,0,150,0",
|
||||
"spawnRate": "30",
|
||||
"placeholder": "{customBosses_1}"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,7 @@
|
|||
{
|
||||
"MiddleOfTheEarthSpawnMessage": [
|
||||
"&6&lEpicBosses &8» &fA mysterious boss has just been spawned at the middle of the earth in the world &e{world} at the coordinates &e{x}, {y}, {z}&f!"
|
||||
],
|
||||
"SKMainSkillMessage": [
|
||||
"&6&l{boss} &7has used the &e{skill} &7skill."
|
||||
],
|
||||
|
|
|
@ -0,0 +1,30 @@
|
|||
package com.songoda.epicbosses.autospawns;
|
||||
|
||||
import com.google.gson.JsonObject;
|
||||
import com.google.gson.annotations.Expose;
|
||||
import com.songoda.epicbosses.autospawns.settings.AutoSpawnSettings;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author Charles Cullen
|
||||
* @version 1.0.0
|
||||
* @since 02-Jan-19
|
||||
*/
|
||||
public class AutoSpawn {
|
||||
|
||||
@Expose @Getter @Setter private Boolean editing;
|
||||
@Expose @Getter @Setter private String type;
|
||||
@Expose @Getter @Setter private List<String> entities;
|
||||
@Expose @Getter @Setter private AutoSpawnSettings settings;
|
||||
@Expose @Getter @Setter private JsonObject customData;
|
||||
|
||||
public AutoSpawn(boolean editing, List<String> entities, AutoSpawnSettings autoSpawnSettings) {
|
||||
this.editing = editing;
|
||||
this.entities = entities;
|
||||
this.settings = autoSpawnSettings;
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
package com.songoda.epicbosses.autospawns;
|
||||
|
||||
/**
|
||||
* @author Charles Cullen
|
||||
* @version 1.0.0
|
||||
* @since 02-Jan-19
|
||||
*/
|
||||
public enum SpawnTypes {
|
||||
|
||||
BLANK(0),
|
||||
INTERVAL(1);
|
||||
|
||||
private int rank;
|
||||
|
||||
SpawnTypes(int rank) {
|
||||
this.rank = rank;
|
||||
}
|
||||
//
|
||||
// public SkillMode getNext() {
|
||||
// return get(this.rank+1);
|
||||
// }
|
||||
//
|
||||
// public static SpawnTypes getCurrent(String input) {
|
||||
//
|
||||
// }
|
||||
}
|
|
@ -0,0 +1,24 @@
|
|||
package com.songoda.epicbosses.autospawns.settings;
|
||||
|
||||
import com.google.gson.annotations.Expose;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
/**
|
||||
* @author Charles Cullen
|
||||
* @version 1.0.0
|
||||
* @since 02-Jan-19
|
||||
*/
|
||||
public class AutoSpawnSettings {
|
||||
|
||||
@Expose @Getter @Setter private Integer maxAliveAtOnce, amountPerSpawn;
|
||||
@Expose @Getter @Setter private Boolean spawnWhenCheckIsntLoaded, overrideDefaultSpawnMessage;
|
||||
@Expose @Getter @Setter private String spawnMessage;
|
||||
|
||||
public AutoSpawnSettings(int maxAliveAtOnce, int amountPerSpawn, boolean spawnWhenCheckIsntLoaded) {
|
||||
this.maxAliveAtOnce = maxAliveAtOnce;
|
||||
this.amountPerSpawn = amountPerSpawn;
|
||||
this.spawnWhenCheckIsntLoaded = spawnWhenCheckIsntLoaded;
|
||||
}
|
||||
|
||||
}
|
2
pom.xml
2
pom.xml
|
@ -20,7 +20,7 @@
|
|||
|
||||
<properties>
|
||||
<!--<plugin.version>maven-version-number-SNAPSHOT-U90</plugin.version>-->
|
||||
<plugin.version>1.0.0-U166</plugin.version>
|
||||
<plugin.version>1.0.0-U167</plugin.version>
|
||||
<plugin.name>EpicBosses</plugin.name>
|
||||
<plugin.main>com.songoda.epicbosses.CustomBosses</plugin.main>
|
||||
<plugin.author>AMinecraftDev</plugin.author>
|
||||
|
|
Loading…
Reference in New Issue