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] xD-Broadcast - Prosty plugin na ogloszenia


Gość

Rekomendowane odpowiedzi

Opublikowano

xDGWG-Broadcast

Opis:

Prosty plugin, który posiada 2 funkcje.

1) Komenda: "/broadcast <chat/title/subtitle/actionbar> <text>"

Wysyłanie ogłoszenia do wszystkich graczy na serwerze. Możemy wybrać gdzie ma się pojawić wiadomość.

Aby użyć komendę musimy posiadać uprawnienie: "xdgwg.broadcast"

 

2) Automatyczne wysyłanie wiadomości na chacie.

W configu możemy ustawić czy ta funkcja ma być włączona oraz co ile sekund wiadomości mają być wysyłane.

 

Config:

Cytat

config:
  automessage:
    enable: true
    time: 10
    tag: "&3&lInformacja: "
    msg:
    - "1 wiadomosc"
    - "2 wiadomosc"
    - "3 wiadomosc"
            
  usage: "&7Poprawne uzycie: &c/broadcast &7<&cchat&7/&ctitle&7/&csubtitle&7/&cactionbar&7> <&ctext&7>"
  perm: "&cNie masz dostepu do tej komendy!"

 

Pobieranie:

Cytat

 

Opublikowano

Meh. Pomijając, że plugin jest raczej bez użyteczny bo funkcje w nim zawarte mają każde Toolsy, mam jeszcze kilka uwag. Btw source code by się przydał, może Git?

 

1. Zrób sobię klasę od Configu i przy starcie pluginu ładuj do zmiennych. Łatwiej i wygodniej w użyciu

2. Po co ciągle robisz CommandSender.sendMessage(Util.fixColors()) ? Zrób metodę sendMessage(), która będzie kolorowała podany argument.

3. Stosuj negacje. Przy większych rzeczach zrobi Ci się burdel w kodzie

4. Do łączenia Stringów używaj StringUtil.join() z Apache Commons. A nawet jeśli chcesz łączyć Stringi rećżnie użyj StringBuildera, jest szybszy. https://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/StringUtils.html#join-short:A-char-

5. Przydał by się wsparcie też innych wersji jeśli chodzi o Title i ActionBar

 

pzdr.


sygnatura_mpc.png

 

  • Biter. zmienił(a) tytuł na [Plugin] xD-Broadcast - Prosty plugin na ogloszenia
Opublikowano

Czemu nad dziedziczonymi metodami nie ma '@override'?

Nie powinno się robić instancji tylko konsktruktory.

Tak jak mikigal mówił o wsparciu innych wersji, jeśli dobrze pamiętam od 1.9 masz już 

player.spigot().sendMessage(ChatMessageType.ACTION_BAR

 

Powinieneś dodać do configu czy wiadomość ma być wyświetlana w consoli, bo np. przy użyciu tej metody wiadomość jest również wyświetlana w consoli.

Bukkit.broadcastMessage(msg);

 

Opublikowano

Moim zdaniem bardzo dobry plugin lecz nie znam się dobrze na programowaniu w javie itp. także nie będę się wypowiadał na temat kodu sam chciałem pisać pluginy lecz to chyba nie dla mnie za dużo rzeczy, żeby zrozumieć :/.

Życzę powodzenia w dalszych projektach.

Opublikowano
8 godzin temu, Sp1di napisał:

Czemu nad dziedziczonymi metodami nie ma '@override'?

Nie powinno się robić instancji tylko konsktruktory.

Tak jak mikigal mówił o wsparciu innych wersji, jeśli dobrze pamiętam od 1.9 masz już 


player.spigot().sendMessage(ChatMessageType.ACTION_BAR

 

Powinieneś dodać do configu czy wiadomość ma być wyświetlana w consoli, bo np. przy użyciu tej metody wiadomość jest również wyświetlana w consoli.


Bukkit.broadcastMessage(msg);

 

Co do @Override jak pewnie wiesz "działa bez tego", ale według mnie @Override musi być. Druga opcja, że dekompilator usunął, też miałem takie sytuacje. Czym dekompilowałeś?

Co masz na myśli pisząc "Nie powinno robić się instancji tylko konstruktory". Konstruktor, a instancja obiektu to dwie różne rzeczy (chociaż jednak ze sobą powiązane).

Co do wsparcia różnych wersji. Hmm. A co jeśli nie mamy  Spigota, tylko CB? Przydały by się tu refleksje. Nie są zbyt szybkie, ale tutaj będą najlepszym rozwiązaniem. Teoretycznie można jakiegoś PLiba, ale używanie PLiba do czegoś takiego to żart :D

 

@xDGWG

Widzę, że robiłeś, ale nie zastosowaleś się do moich wskazówek. Popraw koniecznie config i łączenie Stringów


sygnatura_mpc.png

 

Opublikowano

Mała aktualizacja pluginu!

- Drobne poprawki w kodzie

- Od teraz automatyczne wiadomości nie pojawiają się w konsoli

  • 2 tygodnie później...
Opublikowano
36 minut temu, Zimmex129 napisał:

Słaby plugin, bardzo ale masz 3/10 na zachęte.

Co według Ciebie jest "słabe" w tym pluginie?

  • 2 tygodnie później...
Opublikowano
Dnia 15.02.2018 o 20:41, Zimmex129 napisał:

Większa połowa kodu który jest na max'a niezoptymalizowany :)

Co według Ciebie jest tu niezoptymalizowane?

Cytat

    private List<String> messages = Main.getInstance().getConfig().getStringList("config.automessage.msg");
    private String tag = Main.getInstance().getConfig().getString("config.automessage.tag");
    private int index = 0;
    
    @Override
    public void run() {
        if (index >= messages.size()) {
            index = 0;
        }
        Util.sendBroadcast(tag + messages.get(index));
        index += 1;
    }
}

Albo może tu?

Cytat

    public static void load(){
        FileConfiguration config = Main.getInstance().getConfig();
        config.addDefault("config.automessage.enable", Boolean.valueOf(true));
        config.addDefault("config.automessage.time", Integer.valueOf(10));
        config.addDefault("config.automessage.tag", "&3&lInformacja: ");
        config.addDefault("config.automessage.msg", Arrays.asList("&7Plugin stworzony przez &cxDGWG", "&5Wszystko mozna ustawic w configu!"));
        config.addDefault("config.usage", "&7Poprawne uzycie: &c/broadcast &7<&cchat&7/&ctitle&7/&csubtitle&7/&cactionbar&7> <&ctext&7>");
        config.addDefault("config.perm", "&cNie masz dostepu do tej komendy!");
        config.options().copyDefaults(true);
        Main.getInstance().saveConfig();
    }

hmm?

Najłatwiej jest napisać, że "większa połowa" kodu jest zła...

  • 1 miesiąc temu...
Opublikowano
Dnia 25.02.2018 o 10:05, Zimmex129 napisał:

Twój kod.. @xDGWG

Ale dobrze ucz się dalej :):):) 

pokaż swój ;/ bo z tego co pamietam to na yt masz tylko podjebki innych pluginów z dodanymi backdoorami, a teraz zgrywasz programistę

 

@xDGWG

dodaj kod na githuba, jezeli uzywasz intellij 200+ do iq to masz tam od razu 'wspomaganie' dla gita, chociażby wrzucenie projektu. No chyba ,że używasz innego IDE, to poszukaj poradników na yt jak wrzucić projekt na gita, uzywajac git bash lub czegoś innego, bo chętnie bym ci dał jakieś wskazówki itd.

Opublikowano
20 godzin temu, toWcaleNieOn_;/ napisał:

pokaż swój ;/ bo z tego co pamietam to na yt masz tylko podjebki innych pluginów z dodanymi backdoorami, a teraz zgrywasz programistę

 

@xDGWG

dodaj kod na githuba, jezeli uzywasz intellij 200+ do iq to masz tam od razu 'wspomaganie' dla gita, chociażby wrzucenie projektu. No chyba ,że używasz innego IDE, to poszukaj poradników na yt jak wrzucić projekt na gita, uzywajac git bash lub czegoś innego, bo chętnie bym ci dał jakieś wskazówki itd.

Kurwa typie nawet kanału na yt nie mam niedojebie pierdolony, przychlast jakiś będzie mnie pouczał XDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD

Opublikowano
17 godzin temu, Zimmex129 napisał:

Kurwa typie nawet kanału na yt nie mam niedojebie pierdolony, przychlast jakiś będzie mnie pouczał XDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD

a dobra, pomylilem cie z zimmerem, ale juz wiem kto ty jestes, to jeszcze gorzej XDDDDDDDDDDDDDDDDDD

ten co proxy kradnie i podpisuje pod zproxy a to jest casualproxy edytowane, typie kazdy to pisze na discordach jak tylko ktos napisze o zproxy

Opublikowano
4 godziny temu, toWcaleNieOn_;/ napisał:

a dobra, pomylilem cie z zimmerem, ale juz wiem kto ty jestes, to jeszcze gorzej XDDDDDDDDDDDDDDDDDD

ten co proxy kradnie i podpisuje pod zproxy a to jest casualproxy edytowane, typie kazdy to pisze na discordach jak tylko ktos napisze o zproxy

???????????????????????????

Gościu nie wiem o czym ty gadasz xDDD Ja się w jakieś gówno proxy nie bawie

  • 1 miesiąc temu...
Opublikowano
Dnia 29.03.2018 o 19:15, Zimmex129 napisał:

Kurwa typie nawet kanału na yt nie mam niedojebie pierdolony, przychlast jakiś będzie mnie pouczał XDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD

Nie oszukujmy się, każdy wie, że kanał Name242 jest twój. Co do pluginu:

1. Brak wielowersjowości. Z tego co widzę plugin wspiera tylko wersję 1.8.

2. Słaby system configu. Jak chcesz możesz skorzystać z mojego, z którego zawsze korzystam. 

https://hastebin.com/iwixelumem.java

3. No nie oszukujmy się, komenda brzydko zrobiona. Można zrobić to prościej.

4. Brak Mavena.

@Sp1di Dekompilator często ucina dziedziczenie, nic na to nie poradzimy. Twórcy zalecam korzystanie z potężnego IDE, które wspiera Git'a :) 

Opublikowano
59 minut temu, ScoreBoard napisał:

Nie oszukujmy się, każdy wie, że kanał Name242 jest twój. Co do pluginu:

1. Brak wielowersjowości. Z tego co widzę plugin wspiera tylko wersję 1.8.

2. Słaby system configu. Jak chcesz możesz skorzystać z mojego, z którego zawsze korzystam. 


https://hastebin.com/iwixelumem.java

3. No nie oszukujmy się, komenda brzydko zrobiona. Można zrobić to prościej.

4. Brak Mavena.

@Sp1di Dekompilator często ucina dziedziczenie, nic na to nie poradzimy. Twórcy zalecam korzystanie z potężnego IDE, które wspiera Git'a :) 

hahahahhaha xD ale dojebałeś teraz, myślisz serio że ja jestem name242? Chory pojeb xddd

Idź lepiej pisać "AŁTORSKIE GILDIE" (przeróbka fg) i je sprzedawać przyjebie yebany.

Opublikowano
1 godzinę temu, ScoreBoard napisał:

Nie oszukujmy się, każdy wie, że kanał Name242 jest twój. Co do pluginu:

1. Brak wielowersjowości. Z tego co widzę plugin wspiera tylko wersję 1.8.

2. Słaby system configu. Jak chcesz możesz skorzystać z mojego, z którego zawsze korzystam. 


https://hastebin.com/iwixelumem.java

3. No nie oszukujmy się, komenda brzydko zrobiona. Można zrobić to prościej.

4. Brak Mavena.

@Sp1di Dekompilator często ucina dziedziczenie, nic na to nie poradzimy. Twórcy zalecam korzystanie z potężnego IDE, które wspiera Git'a :) 

Wszyscy u cb zdrowi? na cholerę odkopujesz stare tematy..

To bez numeru. Nie znam typa wiec nie każdy to wie :)

1. jak wspiera pod 1.8 masz tzw: title a wysyłać wiadomości może broadcastem, wiec jakaś tam "wielowersjowość" jest

2. używasz systemu z myhardów, tylko pozmieniałeś nazwy metod...

3. Brzydkie są twoje wypociny, które wylewasz na forum.

4. Maven to nie jest rzecz obowiązkowa, pewnie sam nie uzywasz ale piszesz, żeby brzmiało to mądrzej..

@offtopic

Autorze tematu, jak łączysz stringi używaj do tego StringBuilder'a :) wydajniejsze i szybsze :)

Opublikowano
Dnia 1.05.2018 o 11:53, ScoreBoard napisał:

Nie oszukujmy się, każdy wie, że kanał Name242 jest twój. Co do pluginu:

1. Brak wielowersjowości. Z tego co widzę plugin wspiera tylko wersję 1.8.

2. Słaby system configu. Jak chcesz możesz skorzystać z mojego, z którego zawsze korzystam. 


https://hastebin.com/iwixelumem.java

3. No nie oszukujmy się, komenda brzydko zrobiona. Można zrobić to prościej.

4. Brak Mavena.

@Sp1di Dekompilator często ucina dziedziczenie, nic na to nie poradzimy. Twórcy zalecam korzystanie z potężnego IDE, które wspiera Git'a :) 

Dlaczego niby kanał Name242 jest jego? Wnioskujesz po liczbach w nicku? :O

-> Takie osoby jak Ty powinny mieć zablokowaną możliwość wypowiadania się w tematach z dżawom.

Opublikowano
10 godzin temu, TheMajster napisał:

Wszyscy u cb zdrowi? na cholerę odkopujesz stare tematy..

To bez numeru. Nie znam typa wiec nie każdy to wie :)

1. jak wspiera pod 1.8 masz tzw: title a wysyłać wiadomości może broadcastem, wiec jakaś tam "wielowersjowość" jest

2. używasz systemu z myhardów, tylko pozmieniałeś nazwy metod...

3. Brzydkie są twoje wypociny, które wylewasz na forum.

4. Maven to nie jest rzecz obowiązkowa, pewnie sam nie uzywasz ale piszesz, żeby brzmiało to mądrzej..

@offtopic

Autorze tematu, jak łączysz stringi używaj do tego StringBuilder'a :) wydajniejsze i szybsze :)

Co do StringBuilder, prawda tylko wtedy kiedy łączysz stringi w pętli która wykona się tylkoset/dziesiąt razy dla czegoś takiego
Util.sendBroadcast(tag + messages.get(index)); nie będzie żadnej optymalizacji, prosty przykład
        StringBuilder s = new StringBuilder();
        for(int i=0;i<100000;i++)
            s.append("dupa");  
wykona się w około 7334705 nano sekund czyli 7.334705ms
        String a="";
        for (int i = 0; i < 100000; i++)
            a+="dupa";
wykona się w 6694238508nano sekund czyli 6694.23851ms
jak widać w chuj dłużej, ale dla np 100 iteracji
String builder: 51753 , druga opcja: 118124 niby 2 razy dłużej ale dalej są to dziesiąte/setne cześci milisekundy
a  że tutaj autor dodaje tylko 2 stringi  31605 vs 6716 , string builder jest wolniejszy :) dopiero przy jakiś 40 iteracjach string builder jest szybszy :) 
czyli tak naprawde waste of time wprowadzanie string buildera w tym wypadku 

Opublikowano
11 godzin temu, bartus1421 napisał:

Co do StringBuilder, prawda tylko wtedy kiedy łączysz stringi w pętli która wykona się tylkoset/dziesiąt razy dla czegoś takiego
Util.sendBroadcast(tag + messages.get(index)); nie będzie żadnej optymalizacji, prosty przykład
        StringBuilder s = new StringBuilder();
        for(int i=0;i<100000;i++)
            s.append("dupa");  
wykona się w około 7334705 nano sekund czyli 7.334705ms
        String a="";
        for (int i = 0; i < 100000; i++)
            a+="dupa";
wykona się w 6694238508nano sekund czyli 6694.23851ms
jak widać w chuj dłużej, ale dla np 100 iteracji
String builder: 51753 , druga opcja: 118124 niby 2 razy dłużej ale dalej są to dziesiąte/setne cześci milisekundy
a  że tutaj autor dodaje tylko 2 stringi  31605 vs 6716 , string builder jest wolniejszy :) dopiero przy jakiś 40 iteracjach string builder jest szybszy :) 
czyli tak naprawde waste of time wprowadzanie string buildera w tym wypadku 

No w koncu ktos o tym napisal :D

23 godziny temu, ScoreBoard napisał:

Nie oszukujmy się, każdy wie, że kanał Name242 jest twój. Co do pluginu:

1. Brak wielowersjowości. Z tego co widzę plugin wspiera tylko wersję 1.8.

2. Słaby system configu. Jak chcesz możesz skorzystać z mojego, z którego zawsze korzystam. 


https://hastebin.com/iwixelumem.java

3. No nie oszukujmy się, komenda brzydko zrobiona. Można zrobić to prościej.

4. Brak Mavena.

@Sp1di Dekompilator często ucina dziedziczenie, nic na to nie poradzimy. Twórcy zalecam korzystanie z potężnego IDE, które wspiera Git'a :) 

tak sie nie powinno nazywac fieldow, tylko jeden config, STATIC, no porazka jak dla mnie, do tego to nie twoje, no i Main.getInst() wali wszedzie po oczach ;/

 

reszty nie chce mi sie komentowac

@topic czekam dalej na gita

Opublikowano
4 minuty temu, toWcaleNieOn_;/ napisał:

No w koncu ktos o tym napisal :D

tak sie nie powinno nazywac fieldow, tylko jeden config, STATIC, no porazka jak dla mnie, do tego to nie twoje, no i Main.getInst() wali wszedzie po oczach ;/

 

reszty nie chce mi sie komentowac

@topic czekam dalej na gita

Wiem że tak nie powinno się nazywać fieldów, dałem to tylko dla przykładu xD Ale dobrze ze ktoś zwraca na to uwagę :) 

Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...