etiketlemişsin ama bildirim gelmedi neyseki mega yorum atmış gördüm şimdi,
seria. sıralama anlamına geliyor her class sıralanabilir olmaya bilir(implements Serialzeble) mesela Player, Inventory gibi class lar seria. değil yani bunu sen bir değer olarak atayamazsın peki nasıl yaparsın player için String yaparsın uuid sini alırsın sonra oyunu tarar o uuid ile eşleşen oyuncuyu çekersin getPlayer() methodundan bahsediyorum aynı şekilde inventory yi de ufak bi api ile string e dönüştürebilirsin String bu arada seria. dır yani sıralanabilir genelde string kullanılır seria. class larında sana bir örnek atıyım için açılır;
PHP:
public class Arena
implements Serializable
{
private static final long serialVersionUID = 946226928291619094L;
String name;
String world;
LoMLocation LobbyRed;
LoMLocation LobbyBlue;
LoMLocation SpawnRed;
LoMLocation SpawnBlue;
Boolean active = Boolean.valueOf(false);
Boolean countdownStarted = Boolean.valueOf(false);
public ArrayList<String> Players = new ArrayList();
private ArrayList<String> TeamRed = new ArrayList();
private ArrayList<String> TeamBlue = new ArrayList();
HashMap<String, Champion> Champs = new HashMap();
ArrayList<String> ChampsRed = new ArrayList();
ArrayList<String> ChampsBlue = new ArrayList();
int minChamps;
public int gameCountdownTimer;
public Arena(String name2)
{
this.world = name2;
this.name = name2;
this.minChamps = 1;
}
}
gibi üsteki değerler sabit değildir const. a göre yada set get methodları ile değiştirirsin eğer böyle bir classın var ise ArrayList<Aren> arenalar = new ArrayList<>(); arrayi oluşturup oos ois ile save/load yapman gerekiyor onenable a load ondisable a da save methodu kullanman gerek peki oos ois nerde bunlar? ;
Kod:
public static <T> void save(T obj, String path) throws Exception {
ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(path));
oos.writeObject(obj);
oos.flush();
oos.close();
}
public static <T> T load(String path)throws Exception {
ObjectInputStream ois = new ObjectInputStream(new FileInputStream(path));
T result = (T) ois.readObject();
ois.close();
return result;
}
eee? nasıl kullancam bunu;
onenablea koyman gerekiyor
Kod:
try
{
File file = new File(getDataFolder() + "/data/");
file.mkdirs();
arenalar = (SL.load(getDataFolder().getPath() + "/data/arenalar.bin"));
}
catch (Exception localException) {}
ondisable a koyman gerekiyor;
Kod:
try
{
File file = new File(getDataFolder() + "/data/");
file.mkdirs();
SL.save(arenalar, getDataFolder().getPath() + "/data/arenalar.bin");
}
catch (Exception localException) {}
bu şekilde kullanılıyor anlamadığın yeri sor