Spigot eklentisinde koordinat kayıyor

Mucosoft

Megapat
Katılım
5 Mart 2014
Mesajlar
5.508
Makaleler
12
Çözümler
41
1629547507672.png
Bir oyuncu iki blok seçiyor. Sonrasında o alanı almış oluyor. Fark ettiğim sorun bazen 1 bazen 2. köşede bir blok kayma olduğu. Yukarıda bir örnek mevcut. Normalde orası alındı ama nedense kayma oluyor. 1 blok kayma her işlemde var.
[CODE lang="java" title="Pozisyon seçme"] double X = Event.getClickedBlock().getLocation().getX();
double Y = Event.getClickedBlock().getLocation().getY();
double Z = Event.getClickedBlock().getLocation().getZ();
if (!Functions.FileExists("Plugins/Mucosoft/Regions/" + Username))
{
Functions.CreateDirectory("Plugins/Mucosoft/Regions/" + Username);
}
UserPos.put(Username + "Pos1X", Math.floor(X));
UserPos.put(Username + "Pos1Y", Math.floor(Y));
UserPos.put(Username + "Pos1Z", Math.floor(Z));
MinecraftFunctions.SendMsg(Pl, MsgType.Success, "1. pozisyon seçildi.");[/CODE]
[CODE lang="java" title="Alan ekleme"] Double X1 = UserPos.get(Username + "Pos1X");
Double Y1 = UserPos.get(Username + "Pos1Y");
Double Z1 = UserPos.get(Username + "Pos1Z");
Double X2 = UserPos.get(Username + "Pos2X");
Double Y2 = UserPos.get(Username + "Pos2Y");
Double Z2 = UserPos.get(Username + "Pos2Z");
Location Loc1 = new Location(Pl.getWorld(), X1, Y1, Z1);
Location Loc2 = new Location(Pl.getWorld(), X2, Y2, Z2);
MinecraftFunctions.DynmapAddCorner(Loc1, Pl.getWorld());
MinecraftFunctions.DynmapAddCorner(Loc2, Pl.getWorld());
MinecraftFunctions.DynmapAddArea("Region_" + Username + "_" + args[1], args[1] + " - Kurucu: " + Username);
Regions.put(Username + "_" + args[1], Username + "," + args[1] + "," + X1 + "," + Y1 + "," + Z1 + "," + X2 + "," + Y2 + "," + Z2);
UserPos.remove(Username + "Pos1X");
UserPos.remove(Username + "Pos1Y");
UserPos.remove(Username + "Pos1Z");
UserPos.remove(Username + "Pos2X");
UserPos.remove(Username + "Pos2Y");
UserPos.remove(Username + "Pos2Z");
MinecraftFunctions.SendMsg(Sender, MsgType.Success, "Alan oluşturuldu.");[/CODE]
 
Koordinatları double olarak kaydettikten sonra Math.floor() fonksiyonunu kullandığın için yandaki bloğa kayıyor yüksek ihtimalle.
X, Y ve Z koordinatlarını yuvarlamadan tekrar deneyebilir misin?
 
Koordinatları double olarak kaydettikten sonra Math.floor() fonksiyonunu kullandığın için yandaki bloğa kayıyor yüksek ihtimalle.
X, Y ve Z koordinatlarını yuvarlamadan tekrar deneyebilir misin?
Şöyle bir durum var. Bloğa elle tıklıyorum. Yani bloğun tam koordinatını alması lazım. "Math.floor()" sayının tabanına yuvarlıyor ise bir sorun olmaması lazım ama bir ara uygun olunca test ederim.
 

Yeni konular

Geri
Yukarı