İkisinden de anlamıyorum maalesef.Eklenti özelinde böyle bir özellik bulunmuyor maalesef. Ancak skript veya özel eklenti yardımıyla bunu yapabilirsiniz
miosett
Dediğim gibi bu mekaniği bu şekilde halledebilirsinİkisinden de anlamıyorum maalesef.
Yazmayı bilen arkadaşlar yardımcı olabilir mi?Dediğim gibi bu mekaniği bu şekilde halledebilirsin
Cybillproject
Yapay zekaya yaptırabilirsiniz iyi çalışmalar.Yazmayı bilen arkadaşlar yardımcı olabilir mi?
miosett
Yıllardır kullanıyor olmama rağmen böyle bir ayarı ilk kez görüyorum, o yüzden yanlış bir bilgi verdiysem kusuruma bakmayın lütfen.Yapay zekaya skript yazdırırken söyledi. config kısmında AbandonReturnRatio: 0.8 kısmı var bu kısımdan ayarlanıyor. (0.8 demek %20 kayıp %80 geri verilecek demek.)
Estağfurullah hocam, iyi forumlar.Yıllardır kullanıyor olmama rağmen böyle bir ayarı ilk kez görüyorum, o yüzden yanlış bir bilgi verdiysem kusuruma bakmayın lütfen.
İyi forumlar dilerim.
import me.ryanhamshire.GriefPrevention.events.ClaimDeletedEvent;
import me.ryanhamshire.GriefPrevention.Claim;
import me.ryanhamshire.GriefPrevention.PlayerData;
import me.ryanhamshire.GriefPrevention.GriefPrevention;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.plugin.java.JavaPlugin;
import java.util.Random;
public class ClaimBlockLossPlugin extends JavaPlugin implements Listener {
private final Random random = new Random();
@Override
public void onEnable() {
getServer().getPluginManager().registerEvents(this, this);
}
@EventHandler
public void onClaimDeleted(ClaimDeletedEvent event) {
if (event.getOwnerID() == null) return;
PlayerData playerData = GriefPrevention.instance.dataStore.getPlayerData(event.getOwnerID());
if (playerData == null) return;
double chance = 0.3;
if (random.nextDouble() < chance) {
Claim claim = event.getClaim();
int blocksLost = claim.getArea();
int currentAccrued = playerData.getAccruedClaimBlocks();
int newAccrued = currentAccrued - blocksLost;
if (newAccrued < 0) newAccrued = 0;
playerData.setAccruedClaimBlocks(newAccrued);
getServer().getPlayer(event.getOwnerID()).sendMessage("Hey sen! " + blocksLost + " claim hakkını claimini sildiğinden dolayı kaybettin!");
}
}
}
Büyük bir topluluğun parçası ol, etkinliklere katıl ve özel hediyeler kazanma şansı yakala!