| BeyazPolis |
Yaratık Tuzağı: Çalışıyor
- Katılım
- 1 Haziran 2018
- Mesajlar
- 723
- Elmaslar
- 533
- Puan
- 15.325
- Yaş
- 26
- Minecraft
- BeyazPolis
Discord:
BeyazPolis#1044
BeyazPolis#1044
Glensow#0001
Time eventleri için ayrı bir worker açıp oradan işlemleri devam ettirmeni öneririm. En basitini anlatacak olursam oyuncuları bir kümeye al ve küme içindeki oyuncuların değerine her saat 1 eklettir. En basiti bu fakat pek optimize bir işlem değil.bir dailyrewads eklentisi yaptım ve herşeyi bitmişti ilk eklentim olucak kendisi ama zamanı ayarlayamıyorum oyuncu 24 saatte bir almasını istiyorum nasıl yapabilirim
portlek#5502
BeyazPolis#1044
Geik#1139
public void checkTask()
{
getServer().getScheduler().scheduleSyncRepeatingTask(this,new Runnable()
{
public void run()
{
if(Task.hasTime()){
Task.run();}
}
},20L,20L);
}
BeyazPolis#1044
Bana ders verebilirmisin cünkü bu konuyu anlamadım discordda ekran acıp 5 10 dk anlatsan harika olur anlatabilicek birisi varmıScheduler kullanmanı pek önermem uzun süreli timingslerde onun yerine Date format ile günü register et confige örneğin:
"MON" Bildiğin üzere date formatlarda istediğin gibi yapabiliyorsun MONDAY - MON - MOND - MO vs. vs.
- Altında playerList: olsun boş olsun.
- Komuta hashmap ayarı ekle ve hashmapi listen et
- Hashmap'e kaydet oyuncuları.
- Disable kısmına hashMapi confige kaydetme ayarla
- Eğer sunucu kapanmazsa gün değişimi listen event sonucunda hashmap temizlensin ve config temizlenip yeniden oluşturulsun.
Örneğin:
'MON' ise gün, 'TUE'ye geçerse config ve hashmap clear olsun ve oyuncular tekrardan komutu gerçekleştirebilsin.
Ayrıca günü listen etmek için checktask diye bir loop ekle her saniye listen etsin.
Bu şekilde bişey:
Kod:public void checkTask() { getServer().getScheduler().scheduleSyncRepeatingTask(this,new Runnable() { public void run() { if(Task.hasTime()){ Task.run();} } },20L,20L); }
Ayrıca yukardaki arkadaşın dediği gibi saati listen da edebilirsin ama her saat dakika için bir configuration section oluşturmuş olursun bu da daha fazla memory harcar. Ben bu sistemi belirli saat ve günde boss veya savaş başlatmak için kullanıyorum.
portlek#5502
ekledim ben gösteriyim istersenBana ders verebilirmisin cünkü bu konuyu anlamadım discordda ekran acıp 5 10 dk anlatsan harika olur anlatabilicek birisi varmı
Büyük bir topluluğun parçası ol, etkinliklere katıl ve özel hediyeler kazanma şansı yakala!