Skip to content
This repository was archived by the owner on Nov 6, 2018. It is now read-only.

Commit cb67dcb

Browse files
author
Steffion
committed
Merge branch 'dev' for v0.2.1
1 parent 24b7d44 commit cb67dcb

File tree

12 files changed

+118
-142
lines changed

12 files changed

+118
-142
lines changed

README.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,14 @@ Hide and seek is a popular game mode on Minecraft that allows you to hide as blo
55

66
This plugin has been heavily inspired from the gamemode "PropHunt", from the game, "Garry's Mod".
77

8+
89
**Download and try this plugin out for yourself!**
910

1011
##Downloads
1112
|Branch|Plugin version|Compatiable Minecraft version|Build status|Download|
1213
|:--|:--|:--|:--|:--|
13-
|**Release (master)**|**v0.2.0**|**v1.9.2**|[![Build Status](http://jenkins.steffion.com/buildStatus/icon?job=BlockHunt)](http://jenkins.steffion.com/job/BlockHunt/)|[Bukkit Dev](http://dev.bukkit.org/bukkit-plugins/blockhunt/files/)|
14-
|Snapshot (dev)|v0.2.1-SNAPSHOT|v1.9.2|[![Build Status](http://jenkins.steffion.com/buildStatus/icon?job=BlockHunt-dev)](http://jenkins.steffion.com/job/BlockHunt-dev/)|[Jenkins](http://jenkins.steffion.com/job/BlockHunt-dev/)|
14+
|**Release (master)**|**v0.2.1**|**v1.9.2**|[![Build Status](http://jenkins.steffion.com/buildStatus/icon?job=BlockHunt)](http://jenkins.steffion.com/job/BlockHunt/)|[Bukkit Dev](http://dev.bukkit.org/bukkit-plugins/blockhunt/files/)|
15+
|Snapshot (dev)|v0.2.2-SNAPSHOT|v1.9.2|[![Build Status](http://jenkins.steffion.com/buildStatus/icon?job=BlockHunt-dev)](http://jenkins.steffion.com/job/BlockHunt-dev/)|[Jenkins](http://jenkins.steffion.com/job/BlockHunt-dev/)|
1516
|Old version (1.8)|v0.2.0-MC1.8.8|v1.8.8|[![Build Status](http://jenkins.steffion.com/buildStatus/icon?job=BlockHunt-1.8)](http://jenkins.steffion.com/job/BlockHunt-1.8/)|[Jenkins](http://jenkins.steffion.com/job/BlockHunt-1.8/)|
1617
|Recode (recode)|v0.3.0-ALPHA|v1.9.2|[![Build Status](http://jenkins.steffion.com/buildStatus/icon?job=BlockHunt-recode)](http://jenkins.steffion.com/job/BlockHunt-recode/)|[Jenkins](http://jenkins.steffion.com/job/BlockHunt-recode/)|
1718

pom.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<modelVersion>4.0.0</modelVersion>
33
<groupId>nl.Steffion</groupId>
44
<artifactId>BlockHunt</artifactId>
5-
<version>0.2.0</version>
5+
<version>0.2.1</version>
66
<name>BlockHunt</name>
77
<build>
88
<sourceDirectory>src</sourceDirectory>
@@ -53,7 +53,7 @@
5353
<dependency>
5454
<groupId>org.spigotmc</groupId>
5555
<artifactId>spigot-api</artifactId>
56-
<version>1.9-R0.1-SNAPSHOT</version>
56+
<version>1.9.2-R0.1-SNAPSHOT</version>
5757
<scope>provided</scope>
5858
</dependency>
5959
<dependency>

src/nl/Steffion/BlockHunt/ArenaHandler.java

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,17 @@
2323
@SuppressWarnings("deprecation")
2424
public class ArenaHandler {
2525
public static void hidersWin(Arena arena) {
26-
ArenaHandler.sendFMessage(arena, ConfigC.normal_winHiders);
26+
String hidersLeft = "";
27+
28+
for (Player player : arena.playersInArena) {
29+
if (!arena.seekers.contains(player)) {
30+
hidersLeft += player.getName() + ", ";
31+
}
32+
}
33+
34+
hidersLeft = hidersLeft.substring(0, hidersLeft.length() - 2);
35+
36+
ArenaHandler.sendFMessage(arena, ConfigC.normal_winHiders, "names-" + hidersLeft);
2737
for (Player player : arena.playersInArena) {
2838
if (arena.seekers.contains(player)) {
2939
if (arena.hidersWinCommands != null) {
@@ -145,7 +155,7 @@ public static void playerJoinArena(Player player, String arenaname) {
145155
player.removePotionEffect(pe.getType());
146156
}
147157
player.setFoodLevel(20);
148-
player.setHealth(20);
158+
player.setHealth(player.getMaxHealth());
149159
player.setLevel(arena.timer);
150160
player.setExp(0);
151161
player.getInventory().clear();

src/nl/Steffion/BlockHunt/BlockHunt.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -52,8 +52,6 @@
5252
import org.bukkit.block.Block;
5353
import org.bukkit.command.Command;
5454
import org.bukkit.command.CommandSender;
55-
import org.bukkit.configuration.file.FileConfiguration;
56-
import org.bukkit.configuration.file.YamlConfiguration;
5755
import org.bukkit.configuration.serialization.ConfigurationSerialization;
5856
import org.bukkit.enchantments.Enchantment;
5957
import org.bukkit.entity.Player;
@@ -194,10 +192,12 @@ BlockHuntCMD, new CMDhelp(),
194192
(Boolean) W.config.get(ConfigC.commandEnabled_start),
195193
BlockHuntCMD, new CMDstart(),
196194
"/BlockHunt <start|go> <arenaname>");
197-
CMDwand = new CommandM("BlockHunt WAND", "BlockHunt", "wand", "w",
198-
Permissions.create, ConfigC.help_wand,
199-
(Boolean) W.config.get(ConfigC.commandEnabled_wand),
200-
BlockHuntCMD, new CMDwand(), "/BlockHunt <wand|w>");
195+
if (W.config.getFile().getBoolean("wandEnabled")) {
196+
CMDwand = new CommandM("BlockHunt WAND", "BlockHunt", "wand", "w",
197+
Permissions.create, ConfigC.help_wand,
198+
(Boolean) W.config.get(ConfigC.commandEnabled_wand),
199+
BlockHuntCMD, new CMDwand(), "/BlockHunt <wand|w>");
200+
}
201201
CMDcreate = new CommandM("BlockHunt CREATE", "BlockHunt", "create",
202202
"c", Permissions.create, ConfigC.help_create,
203203
(Boolean) W.config.get(ConfigC.commandEnabled_create),

src/nl/Steffion/BlockHunt/Commands/CMDcreate.java

Lines changed: 32 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,11 @@
22

33
import java.util.ArrayList;
44

5+
import org.bukkit.Bukkit;
6+
import org.bukkit.command.Command;
7+
import org.bukkit.entity.Player;
8+
import org.bukkit.inventory.ItemStack;
9+
510
import nl.Steffion.BlockHunt.Arena;
611
import nl.Steffion.BlockHunt.Arena.ArenaState;
712
import nl.Steffion.BlockHunt.BlockHunt;
@@ -10,51 +15,41 @@
1015
import nl.Steffion.BlockHunt.W;
1116
import nl.Steffion.BlockHunt.Managers.MessageM;
1217

13-
import org.bukkit.Bukkit;
14-
import org.bukkit.command.Command;
15-
import org.bukkit.entity.Player;
16-
import org.bukkit.inventory.ItemStack;
17-
1818
public class CMDcreate extends DefaultCMD {
19-
19+
2020
@Override
21-
public boolean exectue(Player player, Command cmd, String label,
22-
String[] args) {
21+
public boolean exectue(Player player, Command cmd, String label, String[] args) {
2322
if (player != null) {
2423
if (args.length <= 1) {
25-
MessageM.sendFMessage(player, ConfigC.error_notEnoughArguments,
26-
"syntax-" + BlockHunt.CMDcreate.usage);
24+
MessageM.sendFMessage(player, ConfigC.error_notEnoughArguments, "syntax-" + BlockHunt.CMDcreate.usage);
2725
} else {
28-
if (W.pos1.get(player) != null && W.pos2.get(player) != null) {
29-
if (W.pos1.get(player).getWorld()
30-
.equals(W.pos2.get(player).getWorld())) {
31-
Arena arena = new Arena(args[1], W.pos1.get(player),
32-
W.pos2.get(player), 12, 3, 1, 50, 20, 300, 30,
33-
new ArrayList<ItemStack>(), null, null, null,
34-
null, new ArrayList<String>(),
35-
new ArrayList<String>(),
36-
new ArrayList<String>(), 10, 50, 8,
37-
new ArrayList<Player>(), ArenaState.WAITING, 0,
38-
new ArrayList<Player>(), Bukkit
39-
.getScoreboardManager()
40-
.getNewScoreboard());
41-
W.arenas.getFile().set(args[1], arena);
42-
W.arenas.save();
43-
W.signs.load();
44-
45-
W.arenaList.add(arena);
46-
ScoreboardHandler.createScoreboard(arena);
47-
48-
MessageM.sendFMessage(player,
49-
ConfigC.normal_createCreatedArena, "name-"
50-
+ args[1]);
26+
if (((W.pos1.get(player) != null) && (W.pos2.get(player) != null))
27+
|| !W.config.getFile().getBoolean("wandEnabled")) {
28+
Arena arena;
29+
30+
if (W.config.getFile().getBoolean("wandEnabled")) {
31+
arena = new Arena(args[1], W.pos1.get(player), W.pos2.get(player), 12, 3, 1, 50, 20, 300, 30,
32+
new ArrayList<ItemStack>(), null, null, null, null, new ArrayList<String>(),
33+
new ArrayList<String>(), new ArrayList<String>(), 10, 50, 8, new ArrayList<Player>(),
34+
ArenaState.WAITING, 0, new ArrayList<Player>(),
35+
Bukkit.getScoreboardManager().getNewScoreboard());
5136
} else {
52-
MessageM.sendFMessage(player,
53-
ConfigC.error_createNotSameWorld);
37+
arena = new Arena(args[1], null, null, 12, 3, 1, 50, 20, 300, 30, new ArrayList<ItemStack>(),
38+
null, null, null, null, new ArrayList<String>(), new ArrayList<String>(),
39+
new ArrayList<String>(), 10, 50, 8, new ArrayList<Player>(), ArenaState.WAITING, 0,
40+
new ArrayList<Player>(), Bukkit.getScoreboardManager().getNewScoreboard());
5441
}
42+
43+
W.arenas.getFile().set(args[1], arena);
44+
W.arenas.save();
45+
W.signs.load();
46+
47+
W.arenaList.add(arena);
48+
ScoreboardHandler.createScoreboard(arena);
49+
50+
MessageM.sendFMessage(player, ConfigC.normal_createCreatedArena, "name-" + args[1]);
5551
} else {
56-
MessageM.sendFMessage(player,
57-
ConfigC.error_createSelectionFirst);
52+
MessageM.sendFMessage(player, ConfigC.error_createSelectionFirst);
5853
}
5954
}
6055
} else {

src/nl/Steffion/BlockHunt/ConfigC.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ public enum ConfigC {
4545
blockChooserPrice (3000, W.config),
4646
seekerHiderPrice (150, W.config),
4747

48+
wandEnabled(false, W.config),
4849
wandIDname ("STICK", W.config),
4950
wandName ("%A&l" + BlockHunt.pdfFile.getName() + "%N's selection wand",
5051
W.config),
@@ -164,7 +165,7 @@ public enum ConfigC {
164165
normal_ingameSeekerDied ("%TAG%NSeeker %A%playername%%N died! He will respawn in %A%secs%%N seconds!",
165166
W.messages),
166167
normal_winSeekers ("%TAG%NThe %ASEEKERS%N have won!", W.messages),
167-
normal_winHiders ("%TAG%NThe %AHIDERS%N have won!", W.messages),
168+
normal_winHiders ("%TAG%NThe %AHIDERS%N have won! (%A%names%%N)", W.messages),
168169
normal_setwarpWarpSet ("%TAG%NSet warp '%A%warp%%N' to your location!",
169170
W.messages),
170171
normal_addedToken ("%TAG%A%amount%%N tokens were added to your account!",
@@ -235,8 +236,6 @@ public enum ConfigC {
235236
error_createSelectionFirst ("%TAG%EMake a selection first. Use the wand command: %A/"
236237
+ BlockHunt.pdfFile.getName() + " <wand|w>%E.",
237238
W.messages),
238-
error_createNotSameWorld ("%TAG%EMake your selection points in the same world!",
239-
W.messages),
240239
error_setTooHighNumber ("%TAG%EThat amount is too high! Max amount is: %A%max%%E.",
241240
W.messages),
242241
error_setTooLowNumber ("%TAG%EThat amount is too low! Minimal amount is: %A%min%%E.",

src/nl/Steffion/BlockHunt/InventoryHandler.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -246,6 +246,7 @@ public static void openDisguiseBlocks(Arena arena, Player player) {
246246
player.openInventory(panel);
247247
}
248248

249+
@SuppressWarnings("deprecation")
249250
public static void openShop(Player player) {
250251
Inventory shop = Bukkit.createInventory(
251252
null,

src/nl/Steffion/BlockHunt/Listeners/OnEntityDamageByEntityEvent.java

Lines changed: 35 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,5 @@
11
package nl.Steffion.BlockHunt.Listeners;
22

3-
import me.libraryaddict.disguise.DisguiseAPI;
4-
import nl.Steffion.BlockHunt.Arena;
5-
import nl.Steffion.BlockHunt.Arena.ArenaState;
6-
import nl.Steffion.BlockHunt.ArenaHandler;
7-
import nl.Steffion.BlockHunt.ConfigC;
8-
import nl.Steffion.BlockHunt.W;
9-
import nl.Steffion.BlockHunt.Managers.MessageM;
10-
113
import org.bukkit.GameMode;
124
import org.bukkit.Sound;
135
import org.bukkit.entity.Player;
@@ -16,10 +8,17 @@
168
import org.bukkit.event.Listener;
179
import org.bukkit.event.entity.EntityDamageByEntityEvent;
1810

19-
public class OnEntityDamageByEntityEvent implements Listener {
11+
import me.libraryaddict.disguise.DisguiseAPI;
12+
import nl.Steffion.BlockHunt.Arena;
13+
import nl.Steffion.BlockHunt.Arena.ArenaState;
14+
import nl.Steffion.BlockHunt.ArenaHandler;
15+
import nl.Steffion.BlockHunt.ConfigC;
16+
import nl.Steffion.BlockHunt.W;
17+
import nl.Steffion.BlockHunt.Managers.MessageM;
2018

21-
@SuppressWarnings("deprecation")
22-
@EventHandler(priority = EventPriority.NORMAL)
19+
public class OnEntityDamageByEntityEvent implements Listener {
20+
21+
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
2322
public void onEntityDamageByEntityEvent(EntityDamageByEntityEvent event) {
2423
Player player = null;
2524
if (event.getEntity() instanceof Player) {
@@ -34,97 +33,69 @@ public void onEntityDamageByEntityEvent(EntityDamageByEntityEvent event) {
3433
if (player != null) {
3534
for (Arena arena : W.arenaList) {
3635
if (arena.playersInArena.contains(player)) {
37-
if (arena.gameState == ArenaState.WAITING
38-
|| arena.gameState == ArenaState.STARTING) {
36+
if ((arena.gameState == ArenaState.WAITING) || (arena.gameState == ArenaState.STARTING)) {
3937
event.setCancelled(true);
4038
} else {
41-
if (arena.seekers.contains(player)
42-
&& arena.seekers.contains(event.getDamager())) {
39+
if (arena.seekers.contains(player) && arena.seekers.contains(event.getDamager())) {
4340
event.setCancelled(true);
4441
} else if (arena.playersInArena.contains(player)
45-
&& arena.playersInArena.contains(event
46-
.getDamager())
47-
&& !arena.seekers.contains(event.getDamager())
48-
&& !arena.seekers.contains(player)) {
42+
&& arena.playersInArena.contains(event.getDamager())
43+
&& !arena.seekers.contains(event.getDamager()) && !arena.seekers.contains(player)) {
4944
event.setCancelled(true);
5045
} else {
51-
player.getWorld().playSound(player.getLocation(),
52-
Sound.ENTITY_PLAYER_HURT, 1, 1);
46+
player.getWorld().playSound(player.getLocation(), Sound.ENTITY_PLAYER_HURT, 1, 1);
5347

5448
if (event.getDamage() >= player.getHealth()) {
55-
player.setHealth(20);
49+
player.setHealth(player.getMaxHealth());
5650
event.setCancelled(true);
5751

5852
DisguiseAPI.undisguiseToAll(player);
5953
W.pBlock.remove(player);
6054

6155
if (!arena.seekers.contains(player)) {
62-
if (W.shop.getFile().get(
63-
damager.getName() + ".tokens") == null) {
64-
W.shop.getFile().set(
65-
damager.getName() + ".tokens",
66-
0);
56+
if (W.shop.getFile().get(damager.getName() + ".tokens") == null) {
57+
W.shop.getFile().set(damager.getName() + ".tokens", 0);
6758
W.shop.save();
6859
}
69-
int damagerTokens = W.shop.getFile()
70-
.getInt(damager.getName()
71-
+ ".tokens");
72-
W.shop.getFile().set(
73-
damager.getName() + ".tokens",
60+
int damagerTokens = W.shop.getFile().getInt(damager.getName() + ".tokens");
61+
W.shop.getFile().set(damager.getName() + ".tokens",
7462
damagerTokens + arena.killTokens);
7563
W.shop.save();
7664

77-
MessageM.sendFMessage(damager,
78-
ConfigC.normal_addedToken,
65+
MessageM.sendFMessage(damager, ConfigC.normal_addedToken,
7966
"amount-" + arena.killTokens);
8067

81-
if (W.shop.getFile().get(
82-
player.getName() + ".tokens") == null) {
83-
W.shop.getFile()
84-
.set(player.getName()
85-
+ ".tokens", 0);
68+
if (W.shop.getFile().get(player.getName() + ".tokens") == null) {
69+
W.shop.getFile().set(player.getName() + ".tokens", 0);
8670
W.shop.save();
8771
}
88-
int playerTokens = W.shop.getFile().getInt(
89-
player.getName() + ".tokens");
90-
float addingTokens = ((float) arena.hidersTokenWin - (((float) arena.timer / (float) arena.gameTime) * (float) arena.hidersTokenWin));
91-
W.shop.getFile().set(
92-
player.getName() + ".tokens",
72+
int playerTokens = W.shop.getFile().getInt(player.getName() + ".tokens");
73+
float addingTokens = (arena.hidersTokenWin
74+
- (((float) arena.timer / (float) arena.gameTime) * arena.hidersTokenWin));
75+
W.shop.getFile().set(player.getName() + ".tokens",
9376
playerTokens + (int) addingTokens);
9477
W.shop.save();
9578

96-
MessageM.sendFMessage(player,
97-
ConfigC.normal_addedToken,
79+
MessageM.sendFMessage(player, ConfigC.normal_addedToken,
9880
"amount-" + (int) addingTokens);
9981

10082
arena.seekers.add(player);
101-
ArenaHandler
102-
.sendFMessage(
103-
arena,
104-
ConfigC.normal_ingameHiderDied,
105-
"playername-"
106-
+ player.getName(),
107-
"left-"
108-
+ (arena.playersInArena
109-
.size() - arena.seekers
110-
.size()));
111-
} else {
112-
ArenaHandler.sendFMessage(arena,
113-
ConfigC.normal_ingameSeekerDied,
83+
ArenaHandler.sendFMessage(arena, ConfigC.normal_ingameHiderDied,
11484
"playername-" + player.getName(),
115-
"secs-" + arena.waitingTimeSeeker);
85+
"left-" + (arena.playersInArena.size() - arena.seekers.size()));
86+
} else {
87+
ArenaHandler.sendFMessage(arena, ConfigC.normal_ingameSeekerDied,
88+
"playername-" + player.getName(), "secs-" + arena.waitingTimeSeeker);
11689
}
11790

11891
player.getInventory().clear();
11992
player.updateInventory();
12093

121-
if (arena.seekers.size() >= arena.playersInArena
122-
.size()) {
94+
if (arena.seekers.size() >= arena.playersInArena.size()) {
12395
ArenaHandler.seekersWin(arena);
12496
} else {
12597
DisguiseAPI.undisguiseToAll(player);
126-
W.seekertime.put(player,
127-
arena.waitingTimeSeeker);
98+
W.seekertime.put(player, arena.waitingTimeSeeker);
12899
player.teleport(arena.seekersWarp);
129100
player.setGameMode(GameMode.SURVIVAL);
130101
player.setWalkSpeed(0.25F);

src/nl/Steffion/BlockHunt/Listeners/OnEntityDamageEvent.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,5 @@
11
package nl.Steffion.BlockHunt.Listeners;
22

3-
import nl.Steffion.BlockHunt.Arena;
4-
import nl.Steffion.BlockHunt.W;
5-
63
import org.bukkit.entity.Entity;
74
import org.bukkit.entity.Player;
85
import org.bukkit.event.EventHandler;
@@ -11,9 +8,12 @@
118
import org.bukkit.event.entity.EntityDamageEvent;
129
import org.bukkit.event.entity.EntityDamageEvent.DamageCause;
1310

14-
public class OnEntityDamageEvent implements Listener {
11+
import nl.Steffion.BlockHunt.Arena;
12+
import nl.Steffion.BlockHunt.W;
1513

16-
@EventHandler(priority = EventPriority.NORMAL)
14+
public class OnEntityDamageEvent implements Listener {
15+
16+
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
1717
public void onEntityDamageEvent(EntityDamageEvent event) {
1818
Entity ent = event.getEntity();
1919

0 commit comments

Comments
 (0)