inital commit
This commit is contained in:
11
.classpath
Normal file
11
.classpath
Normal file
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<classpath>
|
||||
<classpathentry kind="src" path="src"/>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
|
||||
<classpathentry kind="lib" path="C:/Users/Adminuser/Desktop/Server/craftbukkit.jar" sourcepath="C:/Users/Schulä/Desktop/Dropbox/Server/Bukkit-Bukkit-1.4.7-R1.0-3-g0b494f8.zip">
|
||||
<attributes>
|
||||
<attribute name="javadoc_location" value="http://jd.bukkit.org/apidocs/"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="output" path="bin"/>
|
||||
</classpath>
|
||||
72
.gitignore
vendored
Normal file
72
.gitignore
vendored
Normal file
@@ -0,0 +1,72 @@
|
||||
|
||||
# Created by https://www.toptal.com/developers/gitignore/api/eclipse
|
||||
# Edit at https://www.toptal.com/developers/gitignore?templates=eclipse
|
||||
|
||||
### Eclipse ###
|
||||
.metadata
|
||||
bin/
|
||||
tmp/
|
||||
*.tmp
|
||||
*.bak
|
||||
*.swp
|
||||
*~.nib
|
||||
local.properties
|
||||
.settings/
|
||||
.loadpath
|
||||
.recommenders
|
||||
|
||||
# External tool builders
|
||||
.externalToolBuilders/
|
||||
|
||||
# Locally stored "Eclipse launch configurations"
|
||||
*.launch
|
||||
|
||||
# PyDev specific (Python IDE for Eclipse)
|
||||
*.pydevproject
|
||||
|
||||
# CDT-specific (C/C++ Development Tooling)
|
||||
.cproject
|
||||
|
||||
# CDT- autotools
|
||||
.autotools
|
||||
|
||||
# Java annotation processor (APT)
|
||||
.factorypath
|
||||
|
||||
# PDT-specific (PHP Development Tools)
|
||||
.buildpath
|
||||
|
||||
# sbteclipse plugin
|
||||
.target
|
||||
|
||||
# Tern plugin
|
||||
.tern-project
|
||||
|
||||
# TeXlipse plugin
|
||||
.texlipse
|
||||
|
||||
# STS (Spring Tool Suite)
|
||||
.springBeans
|
||||
|
||||
# Code Recommenders
|
||||
.recommenders/
|
||||
|
||||
# Annotation Processing
|
||||
.apt_generated/
|
||||
.apt_generated_test/
|
||||
|
||||
# Scala IDE specific (Scala & Java development for Eclipse)
|
||||
.cache-main
|
||||
.scala_dependencies
|
||||
.worksheet
|
||||
|
||||
# Uncomment this line if you wish to ignore the project description file.
|
||||
# Typically, this file would be tracked if it contains build/dependency configurations:
|
||||
#.project
|
||||
|
||||
### Eclipse Patch ###
|
||||
# Spring Boot Tooling
|
||||
.sts4-cache/
|
||||
|
||||
# End of https://www.toptal.com/developers/gitignore/api/eclipse
|
||||
|
||||
17
.project
Normal file
17
.project
Normal file
@@ -0,0 +1,17 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>Race</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.jdt.core.javabuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
<nature>org.eclipse.jdt.core.javanature</nature>
|
||||
</natures>
|
||||
</projectDescription>
|
||||
22
src/me/Caesar2011/Race/Cmd_Add.java
Normal file
22
src/me/Caesar2011/Race/Cmd_Add.java
Normal file
@@ -0,0 +1,22 @@
|
||||
package me.Caesar2011.Race;
|
||||
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.command.CommandSender;
|
||||
|
||||
public class Cmd_Add {
|
||||
CommandSender sender;
|
||||
String[] args;
|
||||
Lib_RaceManager race;
|
||||
|
||||
|
||||
protected Cmd_Add(CommandSender sender, String[] args, Lib_RaceManager race) {
|
||||
this.sender = sender;
|
||||
this.args = args;
|
||||
this.race = race;
|
||||
}
|
||||
|
||||
protected void Execute() {
|
||||
sender.sendMessage(ChatColor.AQUA + "Race added.");
|
||||
}
|
||||
|
||||
}
|
||||
17
src/me/Caesar2011/Race/Cmd_ClearLive.java
Normal file
17
src/me/Caesar2011/Race/Cmd_ClearLive.java
Normal file
@@ -0,0 +1,17 @@
|
||||
package me.Caesar2011.Race;
|
||||
|
||||
import org.bukkit.command.CommandSender;
|
||||
|
||||
public class Cmd_ClearLive {
|
||||
|
||||
protected Cmd_ClearLive(CommandSender sender, String[] args,
|
||||
Lib_RaceManager race) {
|
||||
// TODO Auto-generated constructor stub
|
||||
}
|
||||
|
||||
protected void Execute() {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
17
src/me/Caesar2011/Race/Cmd_ClearLocal.java
Normal file
17
src/me/Caesar2011/Race/Cmd_ClearLocal.java
Normal file
@@ -0,0 +1,17 @@
|
||||
package me.Caesar2011.Race;
|
||||
|
||||
import org.bukkit.command.CommandSender;
|
||||
|
||||
public class Cmd_ClearLocal {
|
||||
|
||||
protected Cmd_ClearLocal(CommandSender sender, String[] args,
|
||||
Lib_RaceManager race) {
|
||||
// TODO Auto-generated constructor stub
|
||||
}
|
||||
|
||||
protected void Execute() {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
16
src/me/Caesar2011/Race/Cmd_Info.java
Normal file
16
src/me/Caesar2011/Race/Cmd_Info.java
Normal file
@@ -0,0 +1,16 @@
|
||||
package me.Caesar2011.Race;
|
||||
|
||||
import org.bukkit.command.CommandSender;
|
||||
|
||||
public class Cmd_Info {
|
||||
|
||||
protected Cmd_Info(CommandSender sender, String[] args, Lib_RaceManager race) {
|
||||
// TODO Auto-generated constructor stub
|
||||
}
|
||||
|
||||
protected void Execute() {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
16
src/me/Caesar2011/Race/Cmd_Live.java
Normal file
16
src/me/Caesar2011/Race/Cmd_Live.java
Normal file
@@ -0,0 +1,16 @@
|
||||
package me.Caesar2011.Race;
|
||||
|
||||
import org.bukkit.command.CommandSender;
|
||||
|
||||
public class Cmd_Live {
|
||||
|
||||
protected Cmd_Live(CommandSender sender, String[] args, Lib_RaceManager race) {
|
||||
// TODO Auto-generated constructor stub
|
||||
}
|
||||
|
||||
protected void Execute() {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
16
src/me/Caesar2011/Race/Cmd_Local.java
Normal file
16
src/me/Caesar2011/Race/Cmd_Local.java
Normal file
@@ -0,0 +1,16 @@
|
||||
package me.Caesar2011.Race;
|
||||
|
||||
import org.bukkit.command.CommandSender;
|
||||
|
||||
public class Cmd_Local {
|
||||
|
||||
protected Cmd_Local(CommandSender sender, String[] args, Lib_RaceManager race) {
|
||||
// TODO Auto-generated constructor stub
|
||||
}
|
||||
|
||||
protected void Execute() {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
27
src/me/Caesar2011/Race/Cmd_Mode.java
Normal file
27
src/me/Caesar2011/Race/Cmd_Mode.java
Normal file
@@ -0,0 +1,27 @@
|
||||
package me.Caesar2011.Race;
|
||||
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.command.CommandSender;
|
||||
|
||||
public class Cmd_Mode {
|
||||
CommandSender sender;
|
||||
String[] args;
|
||||
Lib_RaceManager race;
|
||||
|
||||
protected Cmd_Mode(CommandSender sender, String[] args, Lib_RaceManager race) {
|
||||
this.sender = sender;
|
||||
this.args = args;
|
||||
this.race = race;
|
||||
}
|
||||
|
||||
protected void Execute() {
|
||||
if (args.length == 2) {sender.sendMessage(ChatColor.AQUA + "Race " + race.raceName + " is set to " + race.getMode() + "-mode.");}
|
||||
else if (args[2].equalsIgnoreCase("off") || args[2].equalsIgnoreCase("training") || args[2].equalsIgnoreCase("race")) {
|
||||
race.setMode(args[2]);
|
||||
sender.sendMessage(ChatColor.AQUA + "Race " + race.raceName + " is now set to " + race.getMode() + "-mode.");
|
||||
}
|
||||
else {
|
||||
sender.sendMessage(ChatColor.RED + "/race mode " + race.raceName + " <off|training|race>");
|
||||
}
|
||||
}
|
||||
}
|
||||
17
src/me/Caesar2011/Race/Cmd_PlayerInfo.java
Normal file
17
src/me/Caesar2011/Race/Cmd_PlayerInfo.java
Normal file
@@ -0,0 +1,17 @@
|
||||
package me.Caesar2011.Race;
|
||||
|
||||
import org.bukkit.command.CommandSender;
|
||||
|
||||
public class Cmd_PlayerInfo {
|
||||
|
||||
protected Cmd_PlayerInfo(CommandSender sender, String[] args,
|
||||
Lib_RaceManager race) {
|
||||
// TODO Auto-generated constructor stub
|
||||
}
|
||||
|
||||
protected void Execute() {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
22
src/me/Caesar2011/Race/Cmd_Rem.java
Normal file
22
src/me/Caesar2011/Race/Cmd_Rem.java
Normal file
@@ -0,0 +1,22 @@
|
||||
package me.Caesar2011.Race;
|
||||
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.command.CommandSender;
|
||||
|
||||
public class Cmd_Rem {
|
||||
CommandSender sender;
|
||||
String[] args;
|
||||
Lib_RaceManager race;
|
||||
|
||||
protected Cmd_Rem(CommandSender sender, String[] args, Lib_RaceManager race) {
|
||||
this.sender = sender;
|
||||
this.args = args;
|
||||
this.race = race;
|
||||
}
|
||||
|
||||
protected void Execute() {
|
||||
race.Delete();
|
||||
sender.sendMessage(ChatColor.AQUA + "Race removed.");
|
||||
}
|
||||
|
||||
}
|
||||
16
src/me/Caesar2011/Race/Cmd_Round.java
Normal file
16
src/me/Caesar2011/Race/Cmd_Round.java
Normal file
@@ -0,0 +1,16 @@
|
||||
package me.Caesar2011.Race;
|
||||
|
||||
import org.bukkit.command.CommandSender;
|
||||
|
||||
public class Cmd_Round {
|
||||
|
||||
protected Cmd_Round(CommandSender sender, String[] args, Lib_RaceManager race) {
|
||||
// TODO Auto-generated constructor stub
|
||||
}
|
||||
|
||||
protected void Execute() {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
17
src/me/Caesar2011/Race/Cmd_RoundLive.java
Normal file
17
src/me/Caesar2011/Race/Cmd_RoundLive.java
Normal file
@@ -0,0 +1,17 @@
|
||||
package me.Caesar2011.Race;
|
||||
|
||||
import org.bukkit.command.CommandSender;
|
||||
|
||||
public class Cmd_RoundLive {
|
||||
|
||||
protected Cmd_RoundLive(CommandSender sender, String[] args,
|
||||
Lib_RaceManager race) {
|
||||
// TODO Auto-generated constructor stub
|
||||
}
|
||||
|
||||
protected void Execute() {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
17
src/me/Caesar2011/Race/Cmd_RoundLocal.java
Normal file
17
src/me/Caesar2011/Race/Cmd_RoundLocal.java
Normal file
@@ -0,0 +1,17 @@
|
||||
package me.Caesar2011.Race;
|
||||
|
||||
import org.bukkit.command.CommandSender;
|
||||
|
||||
public class Cmd_RoundLocal {
|
||||
|
||||
protected Cmd_RoundLocal(CommandSender sender, String[] args,
|
||||
Lib_RaceManager race) {
|
||||
// TODO Auto-generated constructor stub
|
||||
}
|
||||
|
||||
protected void Execute() {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
38
src/me/Caesar2011/Race/Cmd_Rounds.java
Normal file
38
src/me/Caesar2011/Race/Cmd_Rounds.java
Normal file
@@ -0,0 +1,38 @@
|
||||
package me.Caesar2011.Race;
|
||||
|
||||
import me.Caesar2011.Race.Lib_RaceManager.RankingType;
|
||||
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.command.CommandSender;
|
||||
|
||||
public class Cmd_Rounds {
|
||||
CommandSender sender;
|
||||
String[] args;
|
||||
Lib_RaceManager race;
|
||||
|
||||
protected Cmd_Rounds(CommandSender sender, String[] args, Lib_RaceManager race) {
|
||||
this.sender = sender;
|
||||
this.args = args;
|
||||
this.race = race;
|
||||
}
|
||||
|
||||
protected void Execute() {
|
||||
if (args.length == 2) sender.sendMessage(ChatColor.AQUA + "Race " + race.raceName + " is set to " + race.getRounds() + " rounds.");
|
||||
else if (race.getMode() == "off") {
|
||||
try {
|
||||
int r = Integer.parseInt(args[2]);
|
||||
race.setRounds(r);
|
||||
race.clearList(RankingType.NOW);
|
||||
race.clearList(RankingType.LIVE);
|
||||
race.clearList(RankingType.LOCAL);
|
||||
sender.sendMessage(ChatColor.AQUA + "Race " + race.raceName + " is now set to " + race.getRounds() + " rounds. All lists of this race cleared.");
|
||||
} catch (NumberFormatException e1) {
|
||||
sender.sendMessage(ChatColor.RED + "/race rounds " + race.raceName + " <rounds>");
|
||||
}
|
||||
}
|
||||
else {
|
||||
sender.sendMessage(ChatColor.RED + "Race " + race.raceName + " have to be stopped.");
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
16
src/me/Caesar2011/Race/Cmd_Split.java
Normal file
16
src/me/Caesar2011/Race/Cmd_Split.java
Normal file
@@ -0,0 +1,16 @@
|
||||
package me.Caesar2011.Race;
|
||||
|
||||
import org.bukkit.command.CommandSender;
|
||||
|
||||
public class Cmd_Split {
|
||||
|
||||
protected Cmd_Split(CommandSender sender, String[] args, Lib_RaceManager race) {
|
||||
// TODO Auto-generated constructor stub
|
||||
}
|
||||
|
||||
protected void Execute() {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
17
src/me/Caesar2011/Race/Cmd_SplitLive.java
Normal file
17
src/me/Caesar2011/Race/Cmd_SplitLive.java
Normal file
@@ -0,0 +1,17 @@
|
||||
package me.Caesar2011.Race;
|
||||
|
||||
import org.bukkit.command.CommandSender;
|
||||
|
||||
public class Cmd_SplitLive {
|
||||
|
||||
protected Cmd_SplitLive(CommandSender sender, String[] args,
|
||||
Lib_RaceManager race) {
|
||||
// TODO Auto-generated constructor stub
|
||||
}
|
||||
|
||||
protected void Execute() {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
17
src/me/Caesar2011/Race/Cmd_SplitLocal.java
Normal file
17
src/me/Caesar2011/Race/Cmd_SplitLocal.java
Normal file
@@ -0,0 +1,17 @@
|
||||
package me.Caesar2011.Race;
|
||||
|
||||
import org.bukkit.command.CommandSender;
|
||||
|
||||
public class Cmd_SplitLocal {
|
||||
|
||||
protected Cmd_SplitLocal(CommandSender sender, String[] args,
|
||||
Lib_RaceManager race) {
|
||||
// TODO Auto-generated constructor stub
|
||||
}
|
||||
|
||||
protected void Execute() {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
38
src/me/Caesar2011/Race/Cmd_Splits.java
Normal file
38
src/me/Caesar2011/Race/Cmd_Splits.java
Normal file
@@ -0,0 +1,38 @@
|
||||
package me.Caesar2011.Race;
|
||||
|
||||
import me.Caesar2011.Race.Lib_RaceManager.RankingType;
|
||||
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.command.CommandSender;
|
||||
|
||||
public class Cmd_Splits {
|
||||
CommandSender sender;
|
||||
String[] args;
|
||||
Lib_RaceManager race;
|
||||
|
||||
protected Cmd_Splits(CommandSender sender, String[] args, Lib_RaceManager race) {
|
||||
this.sender = sender;
|
||||
this.args = args;
|
||||
this.race = race;
|
||||
}
|
||||
|
||||
protected void Execute() {
|
||||
if (args.length == 2) sender.sendMessage(ChatColor.AQUA + "Race " + race.raceName + " is set to " + race.getSplits() + " splits.");
|
||||
else if (race.getMode() == "off") {
|
||||
try {
|
||||
int r = Integer.parseInt(args[2]);
|
||||
race.setSplits(r);
|
||||
race.clearList(RankingType.NOW);
|
||||
race.clearList(RankingType.LIVE);
|
||||
race.clearList(RankingType.LOCAL);
|
||||
sender.sendMessage(ChatColor.AQUA + "Race " + race.raceName + " is now set to " + race.getSplits() + " splits. All lists of this race cleared.");
|
||||
} catch (NumberFormatException e1) {
|
||||
sender.sendMessage(ChatColor.RED + "/race splits " + race.raceName + " <splits>");
|
||||
}
|
||||
}
|
||||
else {
|
||||
sender.sendMessage(ChatColor.RED + "Race " + race.raceName + " have to be stopped.");
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
43
src/me/Caesar2011/Race/Cmd_Start.java
Normal file
43
src/me/Caesar2011/Race/Cmd_Start.java
Normal file
@@ -0,0 +1,43 @@
|
||||
package me.Caesar2011.Race;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
import me.Caesar2011.Race.Lib_RaceManager.RankingType;
|
||||
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
public class Cmd_Start {
|
||||
CommandSender sender;
|
||||
String[] args;
|
||||
Lib_RaceManager race;
|
||||
|
||||
protected Cmd_Start(CommandSender sender, String[] args, Lib_RaceManager race) {
|
||||
this.sender = sender;
|
||||
this.args = args;
|
||||
this.race = race;
|
||||
}
|
||||
|
||||
protected void Execute() {
|
||||
if (race.getMode() != "off"){
|
||||
if (args.length > 2){
|
||||
Player p = Bukkit.getPlayer(args[2]);
|
||||
if (p != null) {
|
||||
race.setSplit(RankingType.NOW, p.getName(), 0, 0, new Date());
|
||||
race.setNowRound(p.getName(), 0);
|
||||
race.setNowSplit(p.getName(), 0);
|
||||
p.sendMessage(ChatColor.AQUA + race.raceName + " race timer started. Run!");
|
||||
} else {
|
||||
sender.sendMessage(ChatColor.RED + "/race start " + race.raceName + " <player>");
|
||||
}
|
||||
} else {
|
||||
sender.sendMessage(ChatColor.RED + "/race start " + race.raceName + " <player>");
|
||||
}
|
||||
} else {
|
||||
sender.sendMessage(ChatColor.RED + "Your race cannot start. Mode is set to 'off'.");
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
56
src/me/Caesar2011/Race/Cmd_Stop.java
Normal file
56
src/me/Caesar2011/Race/Cmd_Stop.java
Normal file
@@ -0,0 +1,56 @@
|
||||
package me.Caesar2011.Race;
|
||||
|
||||
import java.text.ParseException;
|
||||
import java.util.Date;
|
||||
|
||||
import me.Caesar2011.Race.Lib_RaceManager.RankingType;
|
||||
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
public class Cmd_Stop {
|
||||
CommandSender sender;
|
||||
String[] args;
|
||||
Lib_RaceManager race;
|
||||
|
||||
protected Cmd_Stop(CommandSender sender, String[] args, Lib_RaceManager race) {
|
||||
this.sender = sender;
|
||||
this.args = args;
|
||||
this.race = race;
|
||||
}
|
||||
|
||||
protected void Execute() {
|
||||
if (race.getMode() != "off"){
|
||||
if (args.length > 2){
|
||||
Player p = Bukkit.getPlayer(args[2]);
|
||||
if (p != null) {
|
||||
if (race.containsNow(p.getName())){
|
||||
if (race.getNowSplit(p.getName()) >= race.getSplits()) {
|
||||
if (race.getNowRound(p.getName()) >= race.getRounds()) {
|
||||
if (race.getMode() == "race") {
|
||||
try {
|
||||
race.setSplit(RankingType.LIVE, p.getName(), 0, 0, new Date(new Date().getTime()-race.getSplit(RankingType.NOW, p.getName(), 0, 0).getTime()));
|
||||
} catch (ParseException e1) {
|
||||
e1.printStackTrace();
|
||||
}
|
||||
for (int i = 0; i <= race.getRounds(); i++) {
|
||||
for (int j = 0; i <= race.getSplits(); j++) {
|
||||
try {
|
||||
race.setSplit(RankingType.LIVE, p.getName(), i, j, race.getSplit(RankingType.NOW, p.getName(), i, j));
|
||||
} catch (ParseException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
} else sender.sendMessage(ChatColor.RED + "You have to finish another round first.");
|
||||
} else sender.sendMessage(ChatColor.RED + "You have to run over split " + (race.getNowSplit(p.getName())+1) + " first.");
|
||||
} else sender.sendMessage(ChatColor.RED + "You have to start your race first.");
|
||||
} else sender.sendMessage(ChatColor.RED + "/race stop " + race.raceName + " <player>");
|
||||
} else sender.sendMessage(ChatColor.RED + "/race stop " + race.raceName + " <player>");
|
||||
} else sender.sendMessage(ChatColor.RED + "Race is in off-mode. Can not stop your race.");
|
||||
}
|
||||
|
||||
}
|
||||
164
src/me/Caesar2011/Race/Lib_RaceManager.java
Normal file
164
src/me/Caesar2011/Race/Lib_RaceManager.java
Normal file
@@ -0,0 +1,164 @@
|
||||
package me.Caesar2011.Race;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.text.ParseException;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Date;
|
||||
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.configuration.file.FileConfiguration;
|
||||
import org.bukkit.configuration.file.YamlConfiguration;
|
||||
|
||||
public class Lib_RaceManager {
|
||||
|
||||
protected enum RankingType {
|
||||
NOW("now"),
|
||||
LIVE("live"),
|
||||
LOCAL("local");
|
||||
private String value;
|
||||
RankingType(String value){this.value = value;};
|
||||
}
|
||||
|
||||
|
||||
protected String raceName;
|
||||
protected String filePath;
|
||||
private FileConfiguration yaml = null;
|
||||
protected File file;
|
||||
|
||||
protected Lib_RaceManager(String raceName){
|
||||
this.raceName = raceName;
|
||||
this.filePath = "plugins" + File.separator + "Race" + File.separator + raceName + ".yml";
|
||||
this.file = new File(filePath);
|
||||
if (!file.exists()) {
|
||||
try {
|
||||
file.createNewFile();
|
||||
} catch (Exception e) {
|
||||
try {
|
||||
new File(file.getAbsoluteFile().getParentFile().toString()).mkdir();
|
||||
file.createNewFile();
|
||||
} catch (IOException e1) {
|
||||
System.err.println(ChatColor.DARK_RED + "[Race] " + raceName + ": Could not create new file. (IOException)");
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
yaml = YamlConfiguration.loadConfiguration(file);
|
||||
yaml.addDefault("info.rounds", 0);
|
||||
yaml.addDefault("info.splits", 0);
|
||||
yaml.addDefault("info.mode", "off");
|
||||
yaml.options().copyDefaults(true);
|
||||
}
|
||||
|
||||
protected boolean Exist() {
|
||||
return (yaml != null);
|
||||
}
|
||||
|
||||
protected void Delete() {
|
||||
if(file.exists()){
|
||||
file.delete();
|
||||
}
|
||||
yaml = null;
|
||||
}
|
||||
|
||||
protected void Save() {
|
||||
try {
|
||||
yaml.save(file);
|
||||
} catch (IOException e) {
|
||||
System.err.println(ChatColor.DARK_RED + "[Race] " + raceName + ": Could not save file. (IOException)");
|
||||
}
|
||||
}
|
||||
|
||||
protected int getRounds(){
|
||||
return yaml.getInt("info.rounds");
|
||||
}
|
||||
|
||||
protected void setRounds(int rounds){
|
||||
yaml.set("info.rounds", rounds);
|
||||
}
|
||||
|
||||
protected int getSplits(){
|
||||
return yaml.getInt("info.splits");
|
||||
}
|
||||
|
||||
protected void setSplits(int splits){
|
||||
yaml.set("info.splits", splits);
|
||||
}
|
||||
|
||||
protected String getMode(){
|
||||
return yaml.getString("info.mode");
|
||||
}
|
||||
|
||||
protected void setMode(String mode){
|
||||
yaml.set("info.mode", mode);
|
||||
}
|
||||
|
||||
protected void clearList(RankingType rank){
|
||||
yaml.set(rank.value, null);
|
||||
}
|
||||
|
||||
protected void setSplit(RankingType rank, String player, int round, int split, Date date){
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-d-HH-mm-ss-SSS");
|
||||
yaml.set(rank.value + "." + round + "_" + split + "." + player, sdf.format(date));
|
||||
}
|
||||
|
||||
protected Date getSplit(RankingType rank, String player, int round, int split) throws ParseException{
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-d-HH-mm-ss-SSS");
|
||||
return sdf.parse(yaml.getString(rank.value + "." + round + "_" + split + "." + player));
|
||||
}
|
||||
|
||||
protected void remSplit(RankingType rank, String player, int round, int split){
|
||||
yaml.set(rank.value + "." + round + "_" + split + "." + player, null);
|
||||
}
|
||||
|
||||
protected void setStop(RankingType rank, String player, Date date){
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-d-HH-mm-ss-SSS");
|
||||
yaml.set(rank.value + ".stop." + player, sdf.format(date));
|
||||
}
|
||||
|
||||
protected Date getStop(RankingType rank, String player) throws ParseException{
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-d-HH-mm-ss-SSS");
|
||||
return sdf.parse(yaml.getString(rank.value + ".stop." + player));
|
||||
}
|
||||
|
||||
protected void remStop(RankingType rank, String player){
|
||||
yaml.set(rank.value + ".stop." + player, null);
|
||||
}
|
||||
|
||||
protected void setNowRound(String player, int round){
|
||||
yaml.set("now.round." + player, round);
|
||||
}
|
||||
|
||||
protected int getNowRound(String player){
|
||||
return yaml.getInt("now.round." + player);
|
||||
}
|
||||
|
||||
protected void setNowSplit(String player, int split){
|
||||
yaml.set("now.split." + player, split);
|
||||
}
|
||||
|
||||
protected int getNowSplit(String player){
|
||||
return yaml.getInt("now.split." + player);
|
||||
}
|
||||
|
||||
protected boolean containsNow(String player){
|
||||
return (yaml.contains("now.split." + player) && yaml.contains("now.round." + player) && yaml.contains("now.0_0." + player));
|
||||
}
|
||||
|
||||
protected boolean insertToLocalStop(String player, Date duration){
|
||||
if (yaml.getConfigurationSection("local.stop").getKeys(false).size() < 10) {
|
||||
setStop(RankingType.LOCAL, player, duration);
|
||||
return true;
|
||||
}
|
||||
Date slowest = null;
|
||||
for (String ele: yaml.getConfigurationSection("local.stop").getKeys(false)) {
|
||||
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
protected void insertToLocalSplit(String player, Date duration, int round, int split){
|
||||
return;
|
||||
}
|
||||
|
||||
}
|
||||
133
src/me/Caesar2011/Race/Race.java
Normal file
133
src/me/Caesar2011/Race/Race.java
Normal file
@@ -0,0 +1,133 @@
|
||||
package me.Caesar2011.Race;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.command.Command;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.plugin.java.JavaPlugin;
|
||||
|
||||
public class Race extends JavaPlugin {
|
||||
|
||||
@Override
|
||||
public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
|
||||
// TODO Auto-generated method stub
|
||||
if (args.length > 1) {
|
||||
Lib_RaceManager race = new Lib_RaceManager(args[1]);
|
||||
if (race.Exist()) {
|
||||
switch(args[0].toLowerCase()){
|
||||
case "info": {
|
||||
new Cmd_Info(sender, args, race).Execute();
|
||||
break;
|
||||
}
|
||||
case "add": {
|
||||
new Cmd_Add(sender, args, race).Execute();
|
||||
break;
|
||||
}
|
||||
case "rem": {
|
||||
new Cmd_Rem(sender, args, race).Execute();
|
||||
break;
|
||||
}
|
||||
case "rounds": {
|
||||
new Cmd_Rounds(sender, args, race).Execute();
|
||||
break;
|
||||
}
|
||||
case "splits": {
|
||||
new Cmd_Splits(sender, args, race).Execute();
|
||||
break;
|
||||
}
|
||||
case "mode": {
|
||||
new Cmd_Mode(sender, args, race).Execute();
|
||||
break;
|
||||
}
|
||||
case "start": {
|
||||
new Cmd_Start(sender, args, race).Execute();
|
||||
break;
|
||||
}
|
||||
case "round": {
|
||||
new Cmd_Round(sender, args, race).Execute();
|
||||
break;
|
||||
}
|
||||
case "split": {
|
||||
new Cmd_Split(sender, args, race).Execute();
|
||||
break;
|
||||
}
|
||||
case "stop": {
|
||||
new Cmd_Stop(sender, args, race).Execute();
|
||||
break;
|
||||
}
|
||||
case "live": {
|
||||
new Cmd_Live(sender, args, race).Execute();
|
||||
break;
|
||||
}
|
||||
case "local": {
|
||||
new Cmd_Local(sender, args, race).Execute();
|
||||
break;
|
||||
}
|
||||
case "playerinfo": {
|
||||
new Cmd_PlayerInfo(sender, args, race).Execute();
|
||||
break;
|
||||
}
|
||||
case "clearlive": {
|
||||
new Cmd_ClearLive(sender, args, race).Execute();
|
||||
break;
|
||||
}
|
||||
case "clearlocal": {
|
||||
new Cmd_ClearLocal(sender, args, race).Execute();
|
||||
break;
|
||||
}
|
||||
case "roundlive": {
|
||||
new Cmd_RoundLive(sender, args, race).Execute();
|
||||
break;
|
||||
}
|
||||
case "roundlocal": {
|
||||
new Cmd_RoundLocal(sender, args, race).Execute();
|
||||
break;
|
||||
}
|
||||
case "splitlive": {
|
||||
new Cmd_SplitLive(sender, args, race).Execute();
|
||||
break;
|
||||
}
|
||||
case "splitlocal": {
|
||||
new Cmd_SplitLocal(sender, args, race).Execute();
|
||||
break;
|
||||
}
|
||||
default: {
|
||||
sender.sendMessage(ChatColor.RED + "/race <info|add|rem|rounds|splits|mode>");
|
||||
sender.sendMessage(ChatColor.RED + "/race <start|round|split|stop>");
|
||||
sender.sendMessage(ChatColor.RED + "/race <live|local|playerinfo|clearlive|clearlocal|roundlive|roundlocal|splitlive|splitlocal>");
|
||||
}
|
||||
}
|
||||
if (race.Exist()) race.Save();
|
||||
} else {
|
||||
sender.sendMessage(ChatColor.RED + "/race <info|add|rem|rounds|splits|mode>");
|
||||
sender.sendMessage(ChatColor.RED + "/race <start|round|split|stop>");
|
||||
sender.sendMessage(ChatColor.RED + "/race <live|local|playerinfo|clearlive|clearlocal|roundlive|roundlocal|splitlive|splitlocal>");
|
||||
}
|
||||
} else {
|
||||
sender.sendMessage(ChatColor.RED + "/race <info|add|rem|rounds|splits|mode>");
|
||||
sender.sendMessage(ChatColor.RED + "/race <start|round|split|stop>");
|
||||
sender.sendMessage(ChatColor.RED + "/race <live|local|playerinfo|clearlive|clearlocal|roundlive|roundlocal|splitlive|splitlocal>");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onDisable() {
|
||||
// TODO Auto-generated method stub
|
||||
System.out.println("[Race] Plugin disabled.");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onEnable() {
|
||||
// TODO Auto-generated method stub
|
||||
System.out.println("[Race] Plugin enabled.");
|
||||
}
|
||||
|
||||
}
|
||||
9
src/plugin.yml
Normal file
9
src/plugin.yml
Normal file
@@ -0,0 +1,9 @@
|
||||
name: Race
|
||||
version: 1.4.4
|
||||
main: me.Caesar2011.Race.Race
|
||||
author: Caesar2011
|
||||
|
||||
commands:
|
||||
race:
|
||||
description: Race command
|
||||
usage: /race
|
||||
Reference in New Issue
Block a user