mirror of
https://github.com/garbagemule/MobArena.git
synced 2025-02-05 15:11:20 +01:00
v0.94.4.72 - picking "random" class doesnt assign until the arena begins now
This commit is contained in:
parent
7e48ec7410
commit
c6fada2bfd
@ -1,7 +1,7 @@
|
|||||||
name: MobArena
|
name: MobArena
|
||||||
author: garbagemule
|
author: garbagemule
|
||||||
main: com.garbagemule.MobArena.MobArena
|
main: com.garbagemule.MobArena.MobArena
|
||||||
version: 0.94.4.71
|
version: 0.94.4.72
|
||||||
softdepend: [Spout,MultiVerse,XcraftGate,Towny,Heroes,MagicSpells,Vault]
|
softdepend: [Spout,MultiVerse,XcraftGate,Towny,Heroes,MagicSpells,Vault]
|
||||||
commands:
|
commands:
|
||||||
ma:
|
ma:
|
||||||
|
@ -431,6 +431,7 @@ public class ArenaImpl implements Arena
|
|||||||
for (Player p : randoms) {
|
for (Player p : randoms) {
|
||||||
assignRandomClass(p);
|
assignRandomClass(p);
|
||||||
}
|
}
|
||||||
|
randoms.clear();
|
||||||
|
|
||||||
// Then check if there are still players left.
|
// Then check if there are still players left.
|
||||||
if (arenaPlayers.isEmpty()) {
|
if (arenaPlayers.isEmpty()) {
|
||||||
@ -978,6 +979,11 @@ public class ArenaImpl implements Arena
|
|||||||
arenaPlayer.setArenaClass(arenaClass);
|
arenaPlayer.setArenaClass(arenaClass);
|
||||||
arenaClass.grantItems(p);
|
arenaClass.grantItems(p);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void addRandomPlayer(Player p) {
|
||||||
|
randoms.add(p);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void assignRandomClass(Player p)
|
public void assignRandomClass(Player p)
|
||||||
|
@ -820,7 +820,7 @@ public class ArenaListener
|
|||||||
Messenger.tellPlayer(p, Msg.LOBBY_CLASS_PICKED, TextUtils.camelCase(className), arena.getClassLogo(className));
|
Messenger.tellPlayer(p, Msg.LOBBY_CLASS_PICKED, TextUtils.camelCase(className), arena.getClassLogo(className));
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
arena.assignRandomClass(p);
|
arena.addRandomPlayer(p);
|
||||||
Messenger.tellPlayer(p, Msg.LOBBY_CLASS_RANDOM);
|
Messenger.tellPlayer(p, Msg.LOBBY_CLASS_RANDOM);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -24,14 +24,14 @@ public class ClassLimitManager
|
|||||||
|
|
||||||
public int getClassLimit(ArenaClass ac) {
|
public int getClassLimit(ArenaClass ac) {
|
||||||
if (classLimits.get(ac) != null)
|
if (classLimits.get(ac) != null)
|
||||||
return classLimits.get(ac).intValue();
|
return classLimits.get(ac);
|
||||||
else
|
else
|
||||||
return addNewClass(ac);
|
return addNewClass(ac);
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getClassInUse(ArenaClass ac) {
|
public int getClassInUse(ArenaClass ac) {
|
||||||
if (classesInUse.get(ac) != null)
|
if (classesInUse.get(ac) != null)
|
||||||
return classesInUse.get(ac).intValue();
|
return classesInUse.get(ac);
|
||||||
else {
|
else {
|
||||||
addNewClass(ac);
|
addNewClass(ac);
|
||||||
return 0;
|
return 0;
|
||||||
@ -46,13 +46,13 @@ public class ClassLimitManager
|
|||||||
|
|
||||||
private void initInUseMap() {
|
private void initInUseMap() {
|
||||||
for (ArenaClass ac : plugin.getArenaMaster().getClasses().values()) {
|
for (ArenaClass ac : plugin.getArenaMaster().getClasses().values()) {
|
||||||
classesInUse.put(ac, Integer.valueOf(0));
|
classesInUse.put(ac, 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private int addNewClass(ArenaClass ac) {
|
private int addNewClass(ArenaClass ac) {
|
||||||
classLimits.put(ac, Integer.valueOf(-1));
|
classLimits.put(ac, -1);
|
||||||
classesInUse.put(ac, Integer.valueOf(0));
|
classesInUse.put(ac, 0);
|
||||||
limits.set(ac.getName(), -1);
|
limits.set(ac.getName(), -1);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
@ -66,9 +66,9 @@ public class ClassLimitManager
|
|||||||
}
|
}
|
||||||
|
|
||||||
public boolean canPlayerJoinClass(ArenaClass ac) {
|
public boolean canPlayerJoinClass(ArenaClass ac) {
|
||||||
if (classLimits.get(ac).intValue() <= -1)
|
if (classLimits.get(ac) <= -1)
|
||||||
return true;
|
return true;
|
||||||
else if (classesInUse.get(ac).intValue() >= classLimits.get(ac).intValue())
|
else if (classesInUse.get(ac) >= classLimits.get(ac))
|
||||||
return false;
|
return false;
|
||||||
else
|
else
|
||||||
return true;
|
return true;
|
||||||
|
@ -178,6 +178,8 @@ public interface Arena
|
|||||||
////////////////////////////////////////////////////////////////////*/
|
////////////////////////////////////////////////////////////////////*/
|
||||||
|
|
||||||
public void assignClass(Player p, String className);
|
public void assignClass(Player p, String className);
|
||||||
|
|
||||||
|
public void addRandomPlayer(Player p);
|
||||||
|
|
||||||
public void assignRandomClass(Player p);
|
public void assignRandomClass(Player p);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user