Aynı Hatatest et fixledim galibaKod:every 1 seconds: loop all players: loop-player's target block is a sign line 1 of the loop-player's target block is "&6Hoşgeldin" set line 2 of loop-player's target block to "%player%"
BekliyorumSpigotla yazıp atıyorum biraz bekle hesap değişmem lazım onun için.
kısmında hata varset loop-player's target block's line 2 to "%player%"
Süreli eventlerde oyuncu olmaz, loop-player kullanılmalı.kısmında hata var
süreli event ne oluyoSüreli eventlerde oyuncu olmaz, loop-player kullanılmalı.
Loopu süreli event sanan çocuğun dramıaynen hatanın tamamını atsaydın anlardım
ozaman o kısmı şöyle yap
set loop-player's target block's line 2 to "%loop-player%"[DOUBLEPOST=1432398982,1432398949][/DOUBLEPOST]
süreli event ne oluyoloop demeye calıstın heralde
süreli event dedin bıraktın ve skript yazmak icin onların tanımını bilmem gerekmiyo bay 6. sınıfLoopu süreli event sanan çocuğun dramı
Bilmiyorsun ve skript yazıyorsun :'(
package tr.centeglassered.tabela;
import org.bukkit.ChatColor;
import org.bukkit.block.Sign;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.entity.EntityTargetEvent;
import org.bukkit.plugin.java.JavaPlugin;
public class Tabela extends JavaPlugin implements Listener {
@Override
public void onEnable() {
getServer().getPluginManager().registerEvents(this, this);
}
@EventHandler
public void bakmaAninda(EntityTargetEvent e) {
if (e.getEntity() instanceof Player && e.getTarget() instanceof Sign) {
Player p = (Player) e.getEntity();
Sign s = (Sign) e.getTarget();
/*
* 2.satırda "&6Hoşgeldin" yazan her tabelaya bakar onun için tabelanın x y z sini
* kontrol etmek daha mantıklı olur ama nasul kullanacaksın bilmiyorum diye böyle yaptım
*/
if (s.getLine(1).equals("&6Hoşgeldin")) {
p.sendMessage(ChatColor.GREEN + "HOŞGELDİN!"); // Hoş Geldin yazar adama
s.setLine(2, p.getDisplayName());
/*
* 31.satırda p.getDisplayName() oyuncunun sunucudaki adını verir. Yani Rehber:Hüseyin
* ise p.getDisplayName() RehberHüseyin Gönderir
*
* onun yerine p.getName() kullanılırsa idrekt Hüseyin gönderir
*/
}
}
}
}
Tabela için satır kodları 0'dan başlar. Aklında bulunsunHadi yine iyisin kısa oldu.
Kod:package tr.centeglassered.tabela; import org.bukkit.ChatColor; import org.bukkit.block.Sign; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.entity.EntityTargetEvent; import org.bukkit.plugin.java.JavaPlugin; public class Tabela extends JavaPlugin implements Listener { @Override public void onEnable() { getServer().getPluginManager().registerEvents(this, this); } @EventHandler public void bakmaAninda(EntityTargetEvent e) { if (e.getEntity() instanceof Player && e.getTarget() instanceof Sign) { Player p = (Player) e.getEntity(); Sign s = (Sign) e.getTarget(); /* * 2.satırda "&6Hoşgeldin" yazan her tabelaya bakar onun için tabelanın x y z sini * kontrol etmek daha mantıklı olur ama nasul kullanacaksın bilmiyorum diye böyle yaptım */ if (s.getLine(1).equals("&6Hoşgeldin")) { p.sendMessage(ChatColor.GREEN + "HOŞGELDİN!"); // Hoş Geldin yazar adama s.setLine(2, p.getDisplayName()); /* * 31.satırda p.getDisplayName() oyuncunun sunucudaki adını verir. Yani Rehber:Hüseyin * ise p.getDisplayName() RehberHüseyin Gönderir * * onun yerine p.getName() kullanılırsa idrekt Hüseyin gönderir */ } } } }
Bay 1. sınıf, gerekiyor.süreli event dedin bıraktın ve skript yazmak icin onların tanımını bilmem gerekmiyo bay 6. sınıf![]()