Çözüldü Minecraft eklentisi yaptım çalışmadı bilenler yardım

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

ordu34

Somon Balığı Selam Vermeye Geldi
Katılım
14 Kasım 2021
Mesajlar
18
Elmaslar
10
Puan
370
Yaş
18
Minecraft
ordu34

Discord:

ordu34#1869

package minecraft.pubg.sandik;

import java.util.HashMap;

import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.Material;
import org.bukkit.block.Block;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.block.Action;
import org.bukkit.event.block.BlockPlaceEvent;
import org.bukkit.event.player.PlayerInteractEvent;
import org.bukkit.inventory.Inventory;
import org.bukkit.inventory.ItemStack;
import org.bukkit.plugin.Plugin;

import minecraft.pubg.ana.Ana;

public class Sandik implements Listener{
HashMap<Integer,Inventory> invveri = new HashMap<>();
Plugin ana = Ana.getPlugin(Ana.class);
@EventHandler
public void sandik(BlockPlaceEvent e) {
Player oyuncu = e.getPlayer();
if(oyuncu.isOp()) {
ana.getConfig().set("x" + e.getBlockPlaced().getLocation().getX(), e.getBlockPlaced().getLocation().getX());
ana.getConfig().set("y" + e.getBlockPlaced().getLocation().getY(), e.getBlockPlaced().getLocation().getY());
ana.getConfig().set("z" + e.getBlockPlaced().getLocation().getZ(), e.getBlockPlaced().getLocation().getZ());
Inventory inv = Bukkit.createInventory(oyuncu, 27,ChatColor.BLUE + "Sandık");
oyuncu.openInventory(inv);
invveri.put(ana.getConfig().getInt("x" + e.getBlockPlaced().getLocation().getX()) + ana.getConfig().getInt("y" + e.getBlockPlaced().getLocation().getY()) + ana.getConfig().getInt("z" + e.getBlockPlaced().getLocation().getZ()),inv);
oyuncu.sendMessage(ChatColor.BLUE + "Eğer guiyi kapatırsanız sandık kaydedilir ve bir daha düzenleyemezsiniz. eğer yanlışlıkla kapattıysanız kırın sandığı");
ana.saveConfig();
}
}
@EventHandler
public void sandigielleme(PlayerInteractEvent e) {
Player oyuncu = e.getPlayer();
Action eylem = e.getAction();
Block blok = e.getClickedBlock();
if(eylem.equals(Action.RIGHT_CLICK_BLOCK)) {
if(blok.getType().equals(Material.CHEST)) {
e.setCancelled(true);
if(ana.getConfig().getInt("x" + blok.getX()) == blok.getX() && ana.getConfig().getInt("y" + blok.getY()) == blok.getY() && ana.getConfig().getInt("z" + blok.getZ()) == blok.getZ()) {
Inventory env = invveri.get(ana.getConfig().getInt("x" + blok.getX()) + ana.getConfig().getInt("y" + blok.getY()) + ana.getConfig().getInt("y" + blok.getZ()));
oyuncu.openInventory(env);
}
}
}
}
}

Sandığı koyduğumda çalışıyor fakat sandığı açmaya çalıştığımda sandığı koyduğumdaki envanter açılmıyor
 
Neden lokasyonun x,y,z değerlerini topluyorsunuz? 1,1,1 değeri ile -1,0,4 değeri çakışabilir bu durumda.
Ayrıca sistemi açarsanız daha çok yardımcı olabiliriz.
 
Envanteri sandigielleme() ye getirmek istiyorum
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

Hala Discord sunucumuza katılmadın mı?

Büyük bir topluluğun parçası ol, etkinliklere katıl ve özel hediyeler kazanma şansı yakala!

Şimdi Katıl
Üst