Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Gdzie w tym kodzie jest czas?


SamiecX

Rekomendowane odpowiedzi

Opublikowano

Gdzie w tym kodzie jest czas?

      else
      {
        this.MUTED.add(p.getName());
        this.plugin.getServer().getScheduler().runTaskLater(this.plugin, new Runnable()
        {
          public void run()
          {
            Slow.this.MUTED.remove(e.getPlayer().getName());
          }
        }, 400L);
      }
    }
  }
}

Bo ja tutaj go niewidzę.

Opublikowano

Zaczynasz mnie irytować.

Skoro Ty nawet pojęcia nie masz, co się dzieje w podstawach, to na c**j to bezmyślnie przepisujesz?

Dodatkowo ten kod, to jest jakaś paranoja. Jak już chcesz podpierdalać kod, to rób to z jakiegoś git'a i osób, które COKOLWIEK potrafią.

}, 400L);

Dodatkowo to /20, czyli 20 sekund obecnie.

 

Pomijając fakt, że jakiś p********y geniusz programowania aka kamilkime wpadł na taska tuatj XDDDDDDDDDDDDDD

784091427630431250239.png

Regulamin sygnatur

Gość dominik148
Opublikowano


this.plugin.getServer().getScheduler().runTaskLater(this.plugin, new Runnable()

{

public void run()

{

Slow.this.MUTED.remove(e.getPlayer().getName());

}

}, 400L); // dokładnie tu

Opublikowano

@Oldis

Chopie ja się tak uczę, nie musisz przeklinać że jestem jakiś poje****, bo sam gówno umiałeś.

#NIe pozdrawiam tego gościa.

 

Ale czego Ty tutaj nie rozumiesz?

Tłumaczę Ci człowieku jak za przeproszeniem do jebanego osła, po raz 10, że zacznij od PODSTAW.

Bezmyślnie kopiujesz kod, sądzisz, że tak się czegoś nauczysz?

 

Sądzisz, że specjalnie chamsko ,,o dopierdole mu, haha niech się podstaw głupi uczy" ? 

SAM kiedyś jak DEBIL kopiowałem KOD i nie miałem POJĘCIA co on robi.

Przez całe DWA miesiące takiego KOPIOWANIA nie nauczyłem się NIC.

 

Szanuję, że chcesz się nauczyć, ale nie tą drogą, bo nigdy tego nie zrobisz.

Poza tym kopiujesz kod od jakieś osoby, która właśnie zaczynała tak jak Ty, ba.. Nawet pewnie tak robi.

I wiesz jakie są tego efekty? Optymalizacja na poziomie trawnika, że później jego plugin w********a serwer na orbitę okołoziemską i jeszcze dalej.

784091427630431250239.png

Regulamin sygnatur

Opublikowano

Chcesz napisac plugin na mute to uzywasz przegladarki i po kolei:

 

 

1 - bukkit chat event - > https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/event/player/AsyncPlayerChatEvent.html

2 - bukkit store player nickname -> public static Map<String, String> map = new HashMap<String, String>();

map.put(event.getPlayer().getName(), nick);

String nick = map.get(event.getPlayer().getName());

 

potem robisz nowa klase

uzywasz tego eventu

wymyslasz jakis sposob na czas pomiedzy tymi wiadomosciami np. tak jak tam uyowo wymysliles(znaczy pody*ales) ten task

http://bukkit.gamepedia.com/Scheduler_Programming

 

i probojesz sam pisac a nie podpierdalasz

ew. jak czegos nie wiesz nie mozesz wpasc na pomysl jak cos ma dzialac to dopiero twedy tu piszesz

Opublikowano

Chcesz napisac plugin na mute to uzywasz przegladarki i po kolei:

 

 

1 - bukkit chat event - > https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/event/player/AsyncPlayerChatEvent.html

2 - bukkit store player nickname -> public static Map<String, String> map = new HashMap<String, String>();

map.put(event.getPlayer().getName(), nick);

String nick = map.get(event.getPlayer().getName());

 

potem robisz nowa klase

uzywasz tego eventu

wymyslasz jakis sposob na czas pomiedzy tymi wiadomosciami np. tak jak tam uyowo wymysliles(znaczy pody*ales) ten task

http://bukkit.gamepedia.com/Scheduler_Programming

 

i probojesz sam pisac a nie podpierdalasz

 

Nie myl mu w bani, bo teraz też odpierdoliłeś tak, że to głowa mała......

new HashMap<String, String>();
map.put(event.getPlayer().getName(), nick);
String nick = map.get(event.getPlayer().getName());

Skopiowałeś jakiś kod obstawiam na message, by trzymało replace albo coś w tym stylu....

 

 

@topic

 

Jeśli chcesz się uczyć i nie robić burdelu na forum i przez pół roku kopiować czyjąś pracę, to zapraszam na PW :)

 

Co do tego idiotycznego ,,slow mode", to jest tak wydajny, jak czterech murzynów na budowie, którzy mają użyć komputera. :v

 

 

 

 

1. Tworzysz HashMap<UUID, Long>

2. Tworzysz event od chatu

3. Sprawdzasz, czy gracz się znajduje w hashmapie, jeśli tak, to czy czas z hashmapy jest większy, niż obecny, jeśli tak to wiadomość, cancel i return.

4. Jeśli nie znajduje się, to .put(e.getPlayer().getUniqueId(), System.currentTimeMillis())

 

I tadam, gotowe..

 

Pisane z telefonu, mogą być liiiteraaaaki :v

784091427630431250239.png

Regulamin sygnatur

Opublikowano

Chcesz napisac plugin na mute to uzywasz przegladarki i po kolei:

 

 

1 - bukkit chat event - > https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/event/player/AsyncPlayerChatEvent.html

2 - bukkit store player nickname -> public static Map<String, String> map = new HashMap<String, String>();

map.put(event.getPlayer().getName(), nick);

String nick = map.get(event.getPlayer().getName());

 

potem robisz nowa klase

uzywasz tego eventu

wymyslasz jakis sposob na czas pomiedzy tymi wiadomosciami np. tak jak tam uyowo wymysliles(znaczy pody*ales) ten task

http://bukkit.gamepedia.com/Scheduler_Programming

 

i probojesz sam pisac a nie podpierdalasz

ew. jak czegos nie wiesz nie mozesz wpasc na pomysl jak cos ma dzialac to dopiero twedy tu piszesz

japierdole co?

map.put(event.getPlayer().getName(), nick);

wrzucasz do hashmapy jako Key nick gracza by trzymać jego nick? 

 

jak juz pomgasz to mógłbyś dobrze pomóc

 

muty możesz zrobić tak

robisz sobie obiekt np

 

public class MuteData{

  private String nick;

  private String uuid;

  private String admin;//tutaj nick bo nie ma potrzeby uuid

  private String reason;

  private long expireDate;

//gettery settery

}

potem jak dostanie muta to tworzysz taki obiekt, wrzucasz go sobie do hashmapy

HashMap<UUID,MuteData> mapa;

i np do mysql czy redisa czy do pliku obojętne

potem w evencie od czatu robisz

public void event(AsyncChat.. event){

   MuteData data = mapa.get(event.getPlayer().getUUID());//mniej wiecej

if(data == null){

//nie ma w cache wiec pobierasz z bazy i kiedy pobierzesz to wrzucasz

}

i teraz robisz sobie

if(data.getExpireDat() > System.current...){

   //nie pozwalasz wyslac wiec

event.setCancelled(true);

//i wysylasz msg kiedy bedzie mogl i za co ma

}

//olewasz bo może pisać

}

 

mniejwięcej w skrócie :D

 

Edit. phi oldis kilka sekund szybszy był :D 

Co ja tutaj robie...

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...