Skip to content

Commit 198d909

Browse files
committed
.=.
1 parent 7d51794 commit 198d909

5 files changed

Lines changed: 38 additions & 8 deletions

File tree

README.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,18 @@
11
# QueueLib
2+
### Minecraft mini game QueueLib
3+
4+
# How to use?
5+
```java
6+
import io.github.grassproject.queueLib.QueueBuilder;
7+
import io.github.grassproject.queueLib.queue.Queue;
8+
9+
Queue queue = new QueueBuilder()
10+
.setName("MiniGame1")
11+
.setType("main")
12+
.setMaxPlayer(4)
13+
.setMinPlayer(4)
14+
.setDisposable(false)
15+
.setMapUid(UUID).build();
16+
queue.joinPlayer(Player);
17+
queue.start();
18+
```

build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ plugins {
44
}
55

66
group = "io.github.grassproject"
7-
version = "1.0"
7+
version = "1.0-BETA"
88

99
repositories {
1010
mavenCentral()

src/main/java/io/github/grassproject/queueLib/QueueBuilder.java

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -18,51 +18,58 @@ public class QueueBuilder {
1818
/**
1919
* @param name the name of Queue
2020
*/
21-
public void setName(String name) {
21+
public QueueBuilder setName(String name) {
2222
this.name=name;
23+
return this;
2324
}
2425

2526
/**
2627
* @param type Custom type of the Queue
2728
*/
28-
public void setType(String type) {
29+
public QueueBuilder setType(String type) {
2930
this.type=type;
31+
return this;
3032
}
3133

3234
/**
3335
* @param maxPlayer Maximum player count of Queue
3436
*/
35-
public void setMaxPlayer(int maxPlayer) {
37+
public QueueBuilder setMaxPlayer(int maxPlayer) {
3638
this.maxPlayer = maxPlayer;
39+
return this;
3740
}
3841

3942
/**
4043
* @param minPlayer Minimum of the player to start Queue
4144
*/
42-
public void setMinPlayer(int minPlayer) {
45+
public QueueBuilder setMinPlayer(int minPlayer) {
4346
this.minPlayer = minPlayer;
47+
return this;
4448
}
4549

4650
/**
4751
* @param mapUid UUID of the world that player is moved when join Queue
4852
*/
49-
public void setMapUid(UUID mapUid) {
53+
public QueueBuilder setMapUid(UUID mapUid) {
5054
this.mapUid = mapUid;
55+
return this;
5156
}
5257

5358
/**
5459
* @param queuemapUUID UUID of the world that player is moved when Queue starts
5560
*/
56-
public void setQueuemapUUID(@Nullable UUID queuemapUUID) {
61+
public QueueBuilder setQueuemapUUID(@Nullable UUID queuemapUUID) {
5762
this.queuemapUUID = queuemapUUID;
63+
return this;
5864
}
5965

6066
/**
6167
* @param isDisposable If is True, when Queue Starts. It automatically removed
6268
* @apiNote Default is TRUE
6369
*/
64-
public void setDisposable(boolean isDisposable) {
70+
public QueueBuilder setDisposable(boolean isDisposable) {
6571
this.isDisposable=isDisposable;
72+
return this;
6673
}
6774

6875
public Queue build() {

src/main/java/io/github/grassproject/queueLib/manager/QueueManager.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,12 @@
55
import io.github.grassproject.queueLib.queue.Queue;
66
import org.bukkit.entity.Player;
77
import org.bukkit.plugin.java.JavaPlugin;
8+
import org.jetbrains.annotations.ApiStatus;
89

910
import java.io.File;
1011
import java.util.*;
1112

13+
@ApiStatus.Experimental
1214
public class QueueManager {
1315
private final JavaPlugin plugin= QueueLib.getPlugin();
1416
private final List<UUID> queueList= new ArrayList<>();

src/main/java/io/github/grassproject/queueLib/queue/Queue.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import io.github.grassproject.queueLib.events.PlayerQueueJoinEvent;
66
import io.github.grassproject.queueLib.events.PlayerQueueLeaveEvent;
77
import io.github.grassproject.queueLib.events.QueueStartEvent;
8+
import io.github.grassproject.queueLib.exception.NotEnoughPlayer;
89
import io.github.grassproject.queueLib.exception.NotExistPlayer;
910
import io.github.grassproject.queueLib.exception.QueueMaxed;
1011
import org.bukkit.Bukkit;
@@ -101,6 +102,9 @@ public void leavePlayer(Player player) throws Exception {
101102
}
102103

103104
public void start() throws Exception {
105+
if (this.joinedPlayer.size()<this.minPlayer) {
106+
throw new NotEnoughPlayer(this.name);
107+
}
104108
World world= Bukkit.getWorld(mapUid);
105109
Location location= world != null ? world.getSpawnLocation() : null;
106110
this.joinedPlayer.forEach( uuid-> {

0 commit comments

Comments
 (0)