Skip to content
This repository was archived by the owner on Jun 16, 2023. It is now read-only.

Commit 1c666da

Browse files
Merge pull request #25 from CubeCrafter/development
1.1.16
2 parents afbe8e9 + 5e9e176 commit 1c666da

File tree

9 files changed

+41
-7
lines changed

9 files changed

+41
-7
lines changed

build.gradle

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ plugins {
55
}
66

77
group = 'me.cubecrafter'
8-
version = '1.1.15'
8+
version = '1.1.16'
99

1010
repositories {
1111
mavenCentral()
@@ -19,14 +19,14 @@ repositories {
1919
}
2020

2121
dependencies {
22-
implementation 'com.github.cryptomorin:XSeries:9.1.0'
22+
implementation 'com.github.cryptomorin:XSeries:9.3.1'
2323
implementation 'com.zaxxer:HikariCP:4.0.3'
2424
implementation 'org.slf4j:slf4j-simple:1.7.36'
2525
implementation 'org.bstats:bstats-bukkit:3.0.0'
26-
implementation 'de.tr7zw:item-nbt-api:2.11.1'
26+
implementation 'de.tr7zw:item-nbt-api:2.11.2'
2727
implementation 'fr.mrmicky:fastboard:1.2.1'
28-
//implementation 'com.github.cubecrafter:XUtils:1.0.12'
29-
implementation 'me.cubecrafter:XUtils:1.0.13'
28+
implementation 'com.github.cubecrafter:XUtils:1.0.13'
29+
//implementation 'me.cubecrafter:XUtils:1.0.13'
3030

3131
compileOnly 'org.spigotmc:spigot-api:1.12.2-R0.1-SNAPSHOT'
3232
compileOnly 'me.clip:placeholderapi:2.11.3'
@@ -40,15 +40,18 @@ dependencies {
4040

4141
shadowJar {
4242
archiveFileName = 'WoolWars-' + project.version + '.jar'
43+
4344
relocate 'me.cubecrafter.xutils', 'me.cubecrafter.woolwars.libs.xutils'
4445
relocate 'com.cryptomorin.xseries', 'me.cubecrafter.woolwars.libs.xseries'
4546
relocate 'com.zaxxer.hikari', 'me.cubecrafter.woolwars.libs.hikari'
4647
relocate 'org.bstats', 'me.cubecrafter.woolwars.libs.bstats'
4748
relocate 'de.tr7zw.changeme.nbtapi', 'me.cubecrafter.woolwars.libs.nbtapi'
4849
relocate 'de.tr7zw.annotations', 'me.cubecrafter.woolwars.libs.nbtapi.annotations'
4950
relocate 'fr.mrmicky.fastboard', 'me.cubecrafter.woolwars.libs.fastboard'
51+
5052
exclude 'META-INF/**'
5153
exclude 'LICENSE'
54+
5255
minimize()
5356
}
5457

src/main/java/me/cubecrafter/woolwars/kit/Kit.java

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818

1919
package me.cubecrafter.woolwars.kit;
2020

21+
import com.cryptomorin.xseries.XPotion;
2122
import lombok.Getter;
2223
import me.cubecrafter.woolwars.WoolWars;
2324
import me.cubecrafter.woolwars.arena.team.Team;
@@ -29,8 +30,11 @@
2930
import org.bukkit.configuration.file.YamlConfiguration;
3031
import org.bukkit.inventory.ItemStack;
3132
import org.bukkit.inventory.PlayerInventory;
33+
import org.bukkit.potion.PotionEffect;
3234

35+
import java.util.ArrayList;
3336
import java.util.HashMap;
37+
import java.util.List;
3438
import java.util.Map;
3539

3640
@Getter
@@ -45,6 +49,7 @@ public class Kit {
4549

4650
private final Map<Integer, ItemStack> contents = new HashMap<>();
4751
private final ItemStack[] armor = new ItemStack[4];
52+
private final List<PotionEffect> effects = new ArrayList<>();
4853

4954
private final Ability ability;
5055

@@ -66,6 +71,11 @@ public Kit(String id, YamlConfiguration config) {
6671
if (section == null) continue;
6772
armor[i] = ItemBuilder.fromConfig(section).setUnbreakable(true).build();
6873
}
74+
75+
for (String effect : config.getStringList("effects")) {
76+
String[] split = effect.split(":");
77+
effects.add(XPotion.matchXPotion(split[0]).orElse(XPotion.SPEED).buildPotionEffect(Integer.MAX_VALUE, Integer.parseInt(split[1]) - 1));
78+
}
6979
}
7080

7181
public void addToPlayer(WoolPlayer player, Team team) {
@@ -75,6 +85,8 @@ public void addToPlayer(WoolPlayer player, Team team) {
7585
}
7686
player.getData().setSelectedKit(id);
7787

88+
player.getPlayer().getActivePotionEffects().forEach(effect -> player.getPlayer().removePotionEffect(effect.getType()));
89+
7890
PlayerInventory inventory = player.getPlayer().getInventory();
7991
inventory.clear();
8092
inventory.setArmorContents(null);
@@ -103,6 +115,8 @@ public void addToPlayer(WoolPlayer player, Team team) {
103115
}
104116
inventory.setItem(ability.getSlot(), ability.getItem());
105117

118+
effects.forEach(effect -> player.getPlayer().addPotionEffect(effect));
119+
106120
player.send(Messages.KIT_SELECTED.asString().replace("{name}", name));
107121
}
108122

src/main/java/me/cubecrafter/woolwars/listeners/DamageListener.java

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -165,10 +165,13 @@ public static void handleDeath(WoolPlayer player, Arena arena) {
165165
player.getPlayer().setFlying(true);
166166
player.getPlayer().getInventory().setArmorContents(null);
167167
player.getPlayer().getInventory().clear();
168-
player.getPlayer().addPotionEffect(new PotionEffect(PotionEffectType.INVISIBILITY, Integer.MAX_VALUE, 0, false, false));
169-
player.getPlayer().addPotionEffect(new PotionEffect(PotionEffectType.NIGHT_VISION, Integer.MAX_VALUE, 0, false, false));
170168
player.getPlayer().setFireTicks(0);
171169
player.getPlayer().setHealth(20);
170+
player.getPlayer().getActivePotionEffects().forEach(potionEffect -> player.getPlayer().removePotionEffect(potionEffect.getType()));
171+
172+
player.getPlayer().addPotionEffect(new PotionEffect(PotionEffectType.INVISIBILITY, Integer.MAX_VALUE, 0, false, false));
173+
player.getPlayer().addPotionEffect(new PotionEffect(PotionEffectType.NIGHT_VISION, Integer.MAX_VALUE, 0, false, false));
174+
172175
player.sendTitle(Messages.DEATH_TITLE.asString(), Messages.DEATH_SUBTITLE.asString(), 2);
173176

174177
for (WoolPlayer alive : arena.getAlivePlayers()) {

src/main/resources/kits/archer.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@
22
name: "Archer"
33
# If set to true, players will require the permission "woolwars.kit.<id>" to use this kit
44
permission-required: false
5+
# A list of effects that will be applied to the player. Format: <effect-name>:<level> (e.g. SPEED:1)
6+
effects:
7+
- "SPEED:2"
58
# Armor pieces
69
armor:
710
helmet:

src/main/resources/kits/assault.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22
name: "Assault"
33
# If set to true, players will require the permission "woolwars.kit.<id>" to use this kit
44
permission-required: false
5+
# A list of effects that will be applied to the player. Format: <effect-name>:<level> (e.g. SPEED:1)
6+
effects: []
57
# Armor pieces
68
armor:
79
helmet:

src/main/resources/kits/engineer.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22
name: "Engineer"
33
# If set to true, players will require the permission "woolwars.kit.<id>" to use this kit
44
permission-required: false
5+
# A list of effects that will be applied to the player. Format: <effect-name>:<level> (e.g. SPEED:1)
6+
effects: []
57
# Armor pieces
68
armor:
79
helmet:

src/main/resources/kits/golem.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22
name: "Golem"
33
# If set to true, players will require the permission "woolwars.kit.<id>" to use this kit
44
permission-required: false
5+
# A list of effects that will be applied to the player. Format: <effect-name>:<level> (e.g. SPEED:1)
6+
effects: []
57
# Armor pieces
68
armor:
79
boots:

src/main/resources/kits/swordsman.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22
name: "Swordsman"
33
# If set to true, players will require the permission "woolwars.kit.<id>" to use this kit
44
permission-required: false
5+
# A list of effects that will be applied to the player. Format: <effect-name>:<level> (e.g. SPEED:1)
6+
effects: []
57
# Armor pieces
68
armor:
79
helmet:

src/main/resources/kits/tank.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@
22
name: "Tank"
33
# If set to true, players will require the permission "woolwars.kit.<id>" to use this kit
44
permission-required: false
5+
# A list of effects that will be applied to the player. Format: <effect-name>:<level> (e.g. SPEED:1)
6+
effects:
7+
- "ABSORPTION:1"
58
# Armor pieces
69
armor:
710
helmet:

0 commit comments

Comments
 (0)