为基本的 Minecraft 插件记分
Score keeping for a basic Minecraft plugin
我似乎无法找到一种方法来存储用户标识符及其分数的简单评分系统。我试过将它存储在一个字符串和一个文件中,但我无法让它正常工作。
这是相关代码
public class ShiftGame extends JavaPlugin implements Listener {
public void onEnable() {
getServer().getPluginManager().registerEvents(this, this);
}
@EventHandler
public void onPlayerSneak(PlayerToggleSneakEvent e){
Player player = e.getPlayer();
String name = player.getDisplayName();
if(e.isSneaking() == false){
try {
PrintWriter out;
System.out.println("Writing to data file..");
out = new PrintWriter("PlayerShiftAmounts.txt");
out.println(name);
out.close();
} catch (FileNotFoundException e1) {
e1.printStackTrace();
}
}
}
}
Minecraft 有一些配置文件 class:FileConfiguration
和 YamlConfiguration
,所以我认为你不需要使用 java.io.*,而且真的不需要'不用担心文件写入。
FileConfiguration config = YamlConfiguration.loadConfiguration(file);
如果你确实必须每秒记录很多次,我认为你应该尝试使用缓存或者只是在 Java 中创建一个变量,而不是每次都写入文件或数据库..我不'知道为什么您需要记录哪些玩家正在按 shift 的列表吗?
我似乎无法找到一种方法来存储用户标识符及其分数的简单评分系统。我试过将它存储在一个字符串和一个文件中,但我无法让它正常工作。
这是相关代码
public class ShiftGame extends JavaPlugin implements Listener {
public void onEnable() {
getServer().getPluginManager().registerEvents(this, this);
}
@EventHandler
public void onPlayerSneak(PlayerToggleSneakEvent e){
Player player = e.getPlayer();
String name = player.getDisplayName();
if(e.isSneaking() == false){
try {
PrintWriter out;
System.out.println("Writing to data file..");
out = new PrintWriter("PlayerShiftAmounts.txt");
out.println(name);
out.close();
} catch (FileNotFoundException e1) {
e1.printStackTrace();
}
}
}
}
Minecraft 有一些配置文件 class:FileConfiguration
和 YamlConfiguration
,所以我认为你不需要使用 java.io.*,而且真的不需要'不用担心文件写入。
FileConfiguration config = YamlConfiguration.loadConfiguration(file);
如果你确实必须每秒记录很多次,我认为你应该尝试使用缓存或者只是在 Java 中创建一个变量,而不是每次都写入文件或数据库..我不'知道为什么您需要记录哪些玩家正在按 shift 的列表吗?