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

[Plugin] RandomMOTD


Rekomendowane odpowiedzi

Opublikowano

RandomMOTD

 

Przedstawiam wam mój autorski, jakże prosty w obsłudze plugin na losowe MOTD

Plugin losuje co ustaloną ilość czasu 2 wiadomosci z configu, a następnie ustawia je na MOTD (widziane na liscie serwerów)

Jest to dość prosty plugin, ale mimo to nie powinien wywoływać żadnych lagów na serwerze.

 

Source: 

https://gitlab.com/mateusz2173/RandomMOTD

 

Config:

timer: 60 #czas w sekundach, po jakim zmieniany jest MOTD 
messages: #Lista wiadomosci, wśród których jest losowany MOTD
- '&1Motd 1'
- '&2Motd 2'
- '&3Motd 3'
- '&4Motd 4'
- '&5Pozdrawiam MPC Forum'
#itp itd...

 

Download

http://hostuje.net/file.php?id=1b0bc0ef415d3b764a43d9fb9976f07c

 

Skan

https://www.virustotal.com/pl/file/87b04ebbd8721f29db7621a1b4b6b66a1360bf8f2e214ee3401df101d4740dc2/analysis/1501781153/

 

Tak to wygląda w praktyce

K3YRXVx.png

 

 

 

Co do komend to jest tylko jedna - /rm reload (permission: randommotd.all) - przeladowuje config

Jestem otwarty na wszelkie propozycje, jezeli plugin bedzie sie cieszyl zainteresowaniem, to będę go aktualizował.

Pozdrawiam

 

//edit 03.08.2017

poprawa czytelnosci kodu i drobnych błedów

 

Opublikowano
    int time;
    try
    {
      time = getConfig().getInt("timer");
    }
    catch (Exception ex)
    {
      int time;
      time = 60;
      getConfig().set("timer", Integer.valueOf(60));
      saveConfig();
      System.out.println("[RandomMotd] Timer nie moze byc mniejszy od 1!");
      System.out.println("[RandomMotd] Ustawiono wartosc domysln� na 60 sek!");
    }
    if (time < 1)
    {
      time = 60;
      getConfig().set("timer", Integer.valueOf(60));
      saveConfig();
      System.out.println("[RandomMotd] Timer nie moze byc mniejszy od 1!");
      System.out.println("[RandomMotd] Ustawiono wartosc domysln� na 60 sek!");
    }

...

 

 

    getCommand("randommotd").setExecutor(new Cmds());

w plugin .yml i mainie masz juz wszystko dot. komendy "randomtp" wiec to:

  {
    if (cmd.getName().equalsIgnoreCase("randommotd"))
    {

niepotrzebne.

 

plugin tak niechlujnie napisany..

 

i czy nielatwiej juz tak.. ?

//main
		  private static final List<String> motd = new ArrayList<String>();
            
            public static List<String> getMotd(){
            	return motd;
			}
            
            public void onEnable(){
            for (String motdList : this.getConfig().getStringList("motd")){
				motd.add(motdList);
			}

//pingevent
            private Main plugin;
            
            public KlasaEvent(Main plugin){
				this.plugin = plugin;
			}
            
      @EventHandler
	  public void onPing(ServerListPingEvent e){
          final Random rand = new Random();
		  e.setMotd(plugin.getMotd().get(rand.nextInt(plugin.getMotd().size()));
	  }

//pisane na odpierdziel w /code mpcforum | raz tab raz spacja |

 

Aktualnie interesuję się javą, powoli ogarniam java swing i awt, czasem bawię się HTML.

Opublikowano
Cytat

    getCommand("randommotd").setExecutor(new Cmds());

w plugin .yml i mainie masz juz wszystko dot. komendy "randomtp" wiec to:


  {
    if (cmd.getName().equalsIgnoreCase("randommotd"))
    {

niepotrzebne.

zły nawyk, który prawdopodobnie złapałem od nauczyciela 

 

 

co do estetyki kodu to pracuje nad nią cały czas (jak każdy :))

 

Cytat

i czy nielatwiej juz tak.. ?

moze i latwiej, ale kazdy robi wedle swego pomyslu. Nie wiadomo co ci wpadnie do glowy w danym momencie i w danym miejscu, ja swój problem rozwiązałem w ten sposób, ale zostawiam tak jak jest (nawet jesli twoj kod jest lepszy?)

Opublikowano

Autorze tematu, zrób animowane, a nie że przy odswierzaniu sie zmienia.

Cała robota.

- Lista Stringów. event ping, pobieranie z listy randowowego stringu. ( 1-2 min pisania)

Opublikowano

Nie ma sprawy, to bedzie dla mnie wyzwnanie, którego moze sie podejme jak mi pomysl do glowy wpadnie ^^ 

 

chciałbym powiedzieć, że trochę smieszy mnie porównywanie moich starań do 1-2 minut pisania (z całym szacunkiem dla pana wyżej, który swoim postem umozliwil mi ten wywód)

prawda jest taka ze nawet na prosty plugin trzeba poswiecic chwile czasu zeby nie mial usterek, glitchów i innych tego typu rzeczy

Poza tym jezeli cos jest proste, to nie znaczy ze złe. Ludzie często poszukują właśnie takich prostych (nierozbudowanych..?) pluginów.

Nie będe pisał ze plugin napisałem w 5 minut, bo to nie prawda i tylko źle by o mnie świadczyło, to że przeznaczyłem więcej czasu na napisanie prostego pluginu

pokazuje, ze wlozylem w niego wiecej pracy i starania dzieki czemu jest blizszy doskonalosci niz ten napisany w '2 minuty'

Pisać ze sie napisalo jakis plugin w kilka minut to jak strzał w kolano.

Opublikowano
12 godzin temu, mateusz2173 napisał:

Nie ma sprawy, to bedzie dla mnie wyzwnanie, którego moze sie podejme jak mi pomysl do glowy wpadnie ^^ 

 

chciałbym powiedzieć, że trochę smieszy mnie porównywanie moich starań do 1-2 minut pisania (z całym szacunkiem dla pana wyżej, który swoim postem umozliwil mi ten wywód)

prawda jest taka ze nawet na prosty plugin trzeba poswiecic chwile czasu zeby nie mial usterek, glitchów i innych tego typu rzeczy

Poza tym jezeli cos jest proste, to nie znaczy ze złe. Ludzie często poszukują właśnie takich prostych (nierozbudowanych..?) pluginów.

Nie będe pisał ze plugin napisałem w 5 minut, bo to nie prawda i tylko źle by o mnie świadczyło, to że przeznaczyłem więcej czasu na napisanie prostego pluginu

pokazuje, ze wlozylem w niego wiecej pracy i starania dzieki czemu jest blizszy doskonalosci niz ten napisany w '2 minuty'

Pisać ze sie napisalo jakis plugin w kilka minut to jak strzał w kolano.

Ooo, takiej wypowiedzi to się nie spodziewałem, myślałem że zaraz bedzie hejt jak u innych, którzy rzekomo piszą pluginy.

Nie chodzi mi o to, żeby ciebie w jakimś stopniu urazić czy coś w tym stylu, tylko chcialem zobaczyć reakcje i jestem w lekkim szoku :D

Jak będziesz miał jakieś problemy czy czegoś nie wiedział, śmiało pisz na pw, pomogę.

@ˈyøøniks

I znowu wprowadzasz w kogoś w bład, a w tym momencie nie potrzebne linijki kodu.

//pingevent
            private Main plugin;
            
            public KlasaEvent(Main plugin){
				this.plugin = plugin;
			}
            
      @EventHandler
	  public void onPing(ServerListPingEvent e){
          final Random rand = new Random();
		  e.setMotd(plugin.getMotd().get(rand.nextInt(plugin.getMotd().size()));
	  }
                    

W tym kodzie co dałeś wyżej, po co tyle kodu? wystarczy tylko void.

 

@mpcforum Droga administracjo zlagowanego forum, śmiało 5% dla mnie za offtopic.

Opublikowano
16 minut temu, TheMajster napisał:

Ooo, takiej wypowiedzi to się nie spodziewałem, myślałem że zaraz bedzie hejt jak u innych, którzy rzekomo piszą pluginy.

Nie chodzi mi o to, żeby ciebie w jakimś stopniu urazić czy coś w tym stylu, tylko chcialem zobaczyć reakcje i jestem w lekkim szoku :D

Jak będziesz miał jakieś problemy czy czegoś nie wiedział, śmiało pisz na pw, pomogę.

@ˈyøøniks

I znowu wprowadzasz w kogoś w bład, a w tym momencie nie potrzebne linijki kodu.


//pingevent
            private Main plugin;
            
            public KlasaEvent(Main plugin){
				this.plugin = plugin;
			}
            
      @EventHandler
	  public void onPing(ServerListPingEvent e){
          final Random rand = new Random();
		  e.setMotd(plugin.getMotd().get(rand.nextInt(plugin.getMotd().size()));
	  }
                    

W tym kodzie co dałeś wyżej, po co tyle kodu? wystarczy tylko void.

 

@mpcforum Droga administracjo zlagowanego forum, śmiało 5% dla mnie za offtopic.

bo tak jest ladniejszy kod?

Na kazdym kroku musisz krytykowac? Rownie dobrze mozna wyjebac "plugin" i zrobic od razu instancje.

 

Aktualnie interesuję się javą, powoli ogarniam java swing i awt, czasem bawię się HTML.

Opublikowano

Plugin może, może się komuś przydać choć w to wątpię. Tą samą opcje jak i wieleciekawszych ma bodajże  ServerListMotd. Plugin spoko. Może użyje na localhostcie

Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...