@‘RedRelay’:
Heu … non.
| |
| public class MesDonneesASauvegarderDansUnFichier { |
| |
| |
| |
| |
| |
| |
| private final Map <a, b="">map = new HashMap<a, b="">(); |
| |
| |
| |
| |
| private MesDonneesASauvegarderDansUnFichier() { |
| } |
| |
| |
| |
| |
| public void add( ) { |
| } |
| |
| |
| |
| |
| |
| public void save(File file) { |
| final GsonBuilder builder = new GsonBuilder(); |
| final Gson gson = builder.create(); |
| final FileWriter writer = new FileWriter(file); |
| gson.toJson(this, writer); |
| writer.close(); |
| } |
| |
| |
| |
| |
| |
| |
| public static MesDonneesASauvegarderDansUnFichier load(File file) { |
| final GsonBuilder builder = new GsonBuilder(); |
| final Gson gson = builder.create(); |
| final FileReader reader = new FileReader(file); |
| MesDonneesASauvegarderDansUnFichier loaded = null; |
| try { |
| loaded = gson.fromJson(reader, MesDonneesASauvegarderDansUnFichier.class); |
| }catch(JsonParseException e) { |
| loaded = new MesDonneesASauvegarderDansUnFichier(); |
| } |
| reader.close(); |
| } |
| |
| } |
| |
PS : Pour la commande, la construction de la chaine par le StringBuilder, c’est de faire le traitement après tes conditions sender.canUseCommand() et args.length, sans quoi tu fais le traitement pour rien dans le cas ou tu ne passes pas dans cette condition.</a,></a,>
D’acc,
Du coup j’ai ça:
| |
| package com.CSC.net.json; |
| |
| import java.io.File; |
| import java.io.FileNotFoundException; |
| import java.io.FileReader; |
| import java.io.FileWriter; |
| import java.io.IOException; |
| import java.util.HashMap; |
| import java.util.Map; |
| |
| import com.CSC.net.Commands.WantedaddCommand; |
| import com.google.gson.Gson; |
| import com.google.gson.GsonBuilder; |
| import com.google.gson.JsonParseException; |
| |
| public class MesDonneesASauvegarderDansUnFichier { |
| |
| |
| |
| |
| |
| |
| private final Map <string, stringbuilder="">map = new HashMap<string, stringbuilder="">(); |
| |
| |
| |
| |
| private MesDonneesASauvegarderDansUnFichier() { |
| } |
| |
| |
| |
| |
| public void add(String string, StringBuilder stringbuilder) { |
| string = WantedaddCommand.m; |
| stringbuilder = WantedaddCommand.s; |
| map.put(string, stringbuilder); |
| } |
| |
| |
| |
| |
| |
| |
| public void save(File file) throws IOException { |
| final GsonBuilder builder = new GsonBuilder(); |
| final Gson gson = builder.create(); |
| final FileWriter writer = new FileWriter(file); |
| gson.toJson(this, writer); |
| writer.close(); |
| } |
| |
| |
| |
| |
| |
| |
| |
| public static MesDonneesASauvegarderDansUnFichier load(File file) throws IOException { |
| final GsonBuilder builder = new GsonBuilder(); |
| final Gson gson = builder.create(); |
| final FileReader reader = new FileReader(file); |
| MesDonneesASauvegarderDansUnFichier loaded = null; |
| try { |
| loaded = gson.fromJson(reader, MesDonneesASauvegarderDansUnFichier.class); |
| }catch(JsonParseException e) { |
| loaded = new MesDonneesASauvegarderDansUnFichier(); |
| } |
| reader.close(); |
| return loaded; |
| } |
| |
| } |
Mais j’ai un problème tu me dis que je dois appeler la fonction add quand j’execute la commande mais le problème est que add n’est pas en static du coup je fais comment ?
Commande:
| |
| package com.CSC.net.Commands; |
| |
| import java.util.HashMap; |
| |
| import com.CSC.net.json.MesDonneesASauvegarderDansUnFichier; |
| |
| import net.minecraft.client.Minecraft; |
| import net.minecraft.command.CommandBase; |
| import net.minecraft.command.CommandException; |
| import net.minecraft.command.ICommandSender; |
| import net.minecraft.entity.player.EntityPlayerMP; |
| import net.minecraft.server.MinecraftServer; |
| import net.minecraft.util.ChatComponentText; |
| import net.minecraft.util.EnumChatFormatting; |
| |
| public class WantedaddCommand extends CommandBase{ |
| |
| public static String m; |
| |
| public static StringBuilder s; |
| |
| @Override |
| public String getName() { |
| return "add"; |
| } |
| |
| @Override |
| public String getCommandUsage(ICommandSender sender) { |
| return "conjure <text>"; |
| } |
| |
| @Override |
| public void execute(ICommandSender sender, String[] args) |
| throws CommandException |
| { |
| EntityPlayerMP entityplayermp = getPlayer(sender, args[0]); |
| m = entityplayermp.getDisplayNameString(); |
| |
| if(sender.canUseCommand(3, "add")) |
| { |
| if(args.length >= 2) |
| { |
| StringBuilder builder = new StringBuilder(); |
| for (int i = 1; i < args.length; i++) |
| builder.append(args* + " "); |
| String reason = builder.toString(); |
| s = builder; |
| sender.addChatMessage(new ChatComponentText(entityplayermp.getDisplayNameString() + "ajouter pour: " + builder)); |
| MesDonneesASauvegarderDansUnFichier. |
| } |
| else |
| { |
| sender.addChatMessage(new ChatComponentText(EnumChatFormatting.RED + "Usage: /add <player><raison>")); |
| } |
| } |
| else |
| { |
| sender.addChatMessage(new ChatComponentText(EnumChatFormatting.RED + "Vous ne pouvez pas faire cette commande!")); |
| } |
| } |
| |
| } |
| |
| ```</raison></player></text></string,></string,> |