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] LeviathanGuilds - projekt unikalnych gildii wspierających wersje 1.8-1.11


Rekomendowane odpowiedzi

Opublikowano

Pomysły na plugin spoko, kodzik też pewnie OK. Ale jak zawsze zostanie pewnie niedługo porzucony. Mówisz, że od grubych miesięcy nie piszesz żadnych projektów na mpcforum? a EasyGUI / qDrop? :)

EasyGUI był dla mnie, wrzuciłem go zupełnie przypadkowo, nie można tego projektem nazwać...

 

qDrop w sumie podobnie, projekt na szybko, i tak go mało kto używał. 

Z większych projektów to był qGuilds 2 lata temu, qEssentials 2 lata temu, i qEssentialsReloaded ostatnio.

 

Wszystkie z powyższych to syf jakich mało.

 

I te "jak zawsze zostanie porzucony" kocham was misiaczki <3

 

PS: Ludzie to taka bezmyślna masa, idą za każdym kto jest bardziej przekonujący :D

Przykładem jest qEssentialsReloaded:

- "świetny plugin"

- "super plugin"

- "gratulacje, dobry plugin!"

- "c*****y plugin + argumenty z dupy, ale wiarygodne"

- "slaby plugin, powody wyzej"

- "c*****e"

- "wez idz sie zapierdol, chujowizna"

 

xD i znowu teraz się zaczyna, każdy mi będzie teraz pisać że porzuce bo bartzz tak napisał? Ludzie są tak bardzo tępi żeby nie mieć własnego zdania?

Moja oficjalna strona! :)

http://socketbyte.pl/ 

  • Odpowiedzi 100
  • Dodano
  • Ostatniej odpowiedzi
Opublikowano

qEsesntialsReloaded miał/ma bugi. Ludzie pisali, ze coś im nie działa, a ty nagle przestałes odpisywać, więc stad wnioskuje, że szybko porzucasz pluginy. z qDrop było tak samo. Ludzie chyba nawet do teraz piszą tam swoje errory, a nikt pluginu nie zupdejtuje(Szkoda). To pewnie doczeka się pierwszych komend i będzie porzucone (Oby nie).

Opublikowano

No i po co mu próbujesz wmówić, że to porzuci? Jego wola. Powiedz coś nowego.

 

Gildie 11/10 sam bym lepszych nie zrobił.

Dodaj mój nick do posta jeśli potrzebujesz pomocy | Piszę pluginy na zlecenie | Pomagam z Linuxem

newlogo.png

Opublikowano

Ale czy ja próbuje Mu coś wmówic? Większość Jego pluginów zostaje wrzucona i od razu porzucona 0 wsparcia, 0 pomocy. Nawet jeśli są to chwilowe projekty, które wrzuca, żeby po prostu były, bez większego sensu to powinien chociaż postarać się pomagać z tymi bugami(Chociaż napisać, że plugin nie posiada już wsparcia). qEssentialsReloaded trzymał się dość długo, bo chyba ok. 2 miesięcy, ale bugi nadal występowały, ludzie nawet robili osobne tematy, żeby ktoś im pomógł, a Ty porzuciłeś go od tak bez żadnej informacji. Z tym pluginem będzie pewnie tak samo. Dojdzie do jakieś fazy (Wszystkie podstawy sprawne) i zostanie porzucony, choć nie chciałbym żeby tak było, bo pomysły na plugin są spoko. Po qGuilds bodajże próbowałeś robić qGuilds2. Chyba nie doszło to nawet do jakiejś bety, a zostało porzucone. Mam nadzieje, że z tym nie będzie tak samo i plugin trochę pociągnie.

Opublikowano

Tak próbujesz. W każdym kolejnym poście w taki sam sposób. Jego projekt jest otwartoźródłowy i darmowy. Nikt mu za niego nie płaci. Może go więc porzucić w dowolnym momencie i nie możesz się do tego w żaden sposób przyczepić. Jako użytkownik pluginu powinieneś docenić pracę autora i pomagać innym na forum, szczególnie, że tak bardzo zależy Ci na podtrzymaniu supportu dla tych wtyczek. Czemu nie zaczniesz pisać łatek sam?

Dodaj mój nick do posta jeśli potrzebujesz pomocy | Piszę pluginy na zlecenie | Pomagam z Linuxem

newlogo.png

Opublikowano

 

imo krysztalu nie da sie postawic dokladnie na srodku bo on ma wieksza teksture i nachodzi na inny blok co potem niszczy symetrie i brzydko wyglada

 

Wystarczy tylko dobrze skorygować położenie pakietu.

Moja oficjalna strona! :)

http://socketbyte.pl/ 

Opublikowano

@AdamGrzegorz żyje, i Ciebie obserwuje od czasów odejścia z moderacji na pewnym forum o skryptach (coś ok. 2k14). Ogółem ja bym w tym pluginie poprawił lekko zapis MySQL, dodać zapis SQLite oraz JSON. Poza tym ok. Coś pewnie w weekend jak będę miał siłę na gildie, to mogę ruszyć zapis Flat.

No to jak chcesz, bo ja flata nie ruszam, nie umiem i nie lubię :D

 

SQLite na pewno, tylko wiesz, używam hikariCP w sumie od niedawna, muszę o tym jeszcze poczytać.

JSON - z chęcią spróbuje coś takiego zrobić :D

 

tylko do JSONa/Flata trzeba by było trochę system zmienić. Bo SQLite to jeden c**j, ale flat to już zupełnie co innego. Napisz do mnie na gg w wolnym czasie.

 

PS:

 

 

żyje, i Ciebie obserwuje od czasów odejścia z moderacji na pewnym forum o skryptach (coś ok. 2k14).

Ja p******e, serio? Toż to legendą jesteś! Tym bardziej na gg mnie dodaj, muszę mieć kogoś takiego jak Ty w znajomych.

 

PS2: Też z tego MySQL nie jestem zadowolony xD

Moja oficjalna strona! :)

http://socketbyte.pl/ 

Opublikowano

zrobiony jest również system locales, czyli każdy gracz może wybrać sobie inny język pluginu (lub może styl kolorów? wszystko zależy od was!)

jak to działa? przypisany jest locale do każdego gracza (prefixem, np. pl, en, albo nw, c**j, dupa, to przykład.) i później sprawdzany. Przez co każdy ma unikalne teksty ;D

pf, kopiujo z diorite.

 

 

No ale ogólnie to... 

https://github.com/KaVzaQ/LeviathanGuilds

to na pewno to?

Bo ten kod to jakaś kompletna porażka....

 

nie wiem nawet gdzie zacząć.

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/utils/thread/WorkThread.java

Na co to, po co to, co chwilę kopiujesz te listy, locki bez składu i ładu, powinno się używać bukkit tasków, a jak się robi już takie rzeczy to są sensnwoniejsze executory i nie kopiuje sie tak list bez powodu.

 

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/utils/thread/Work.java

Na coś podobnego już tak wlasciwe marudzilem to nie ma sensu ponownie...

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/utils/Parser.java

Nie ma sensu zwracać HashMap, powinno być Map w razie potrzeby zmiany typu, do tego taki zapis itemu nie jest ani trochę wygodny dla użytkownika, rozdzielanie jakimiś symbolami... już lepiej zrobić wiele pól, lub jak essentials, color=... itd, a i paroswac łatwiej jak chce się wspierać więcej możliwości.

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/utils/Serializer.java

kolejne same bezsensy. jak tekst ze średnika będzie miał ; to jebnie, nowa linijka też może jebnąć, zależy jeszcze gdzie się tego stringa użyje.

Nazwa świata ze spacją też jebnie.

            dataOutput.writeInt(items.length);
            for (ItemStack item : items) {
                dataOutput.writeObject(item);
            }
można od razu zrobić writeObject(items) zamiast ręcznie samemu rozmiar zapisywać i itemy.

 

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/utils/Util.java

    public static double round(double value, int places) {
        if (places < 0) throw new IllegalArgumentException();

        long factor = (long) Math.pow(10, places);
        value = value * factor;
        long tmp = Math.round(value);
        return (double) tmp / factor;
    }
to jest bez sensu, i tak nie każda liczba ma reprezentacje w double, więc po takim zaokrągleniu może wyjść nawet więcej miejsc po przecinku niż było.

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/utils/runnables/TPSMonitor.java#L36

za każdym razem to ustawiasz.

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/utils/reflection/Reflection.java#L107

refleksje się powinno cachować, więc warto mieć jakieś wrappery, w oryginalnym kodzie były.... 

https://github.com/aadnk/ProtocolLib/blob/master/modules/TinyProtocol/src/main/java/com/comphenix/tinyprotocol/Reflection.java

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/utils/reflection/packet/PacketCrystal.java#L38

A tutaj lecisz bez cachowania refleksji, co jest ponad 200x wolniejsze...

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/utils/element/TabPacket.java#L30

tu tak samo...

 

Do tego cały ten kod to zlepek z różnych innych, nie wnikam ile twoich, a ile nie, ale wszędzie są zdublowane funkcjonalności

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/listeners/PlayerJoinListener.java#L25.

I jak się task nie wyrobi, z powodu np locka to j****? najwyżej potem gracz nie dostanie pakietu, coś nie zadziała

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/data/Guild.java#L42

to jest oczywiście rak, naucz się jakiś podstaw relacyjnych baz danych, bo tak się zwyczajnie tego nie robi, w bazach nie zapisuje się żadnych list itd, od tego są właśnie relacje.

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/data/User.java#L51

ponownie refleksje z dupy, do tego w mysql jak używasz UUID do rozróżniania wierszy, to warto to zoptymalizować, zapisywać np jaki bajty a nie string.

 

używasz też rego lomboka wsżedzie bez sensu, bo nie ogarniasz OOP, to wiadać: https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/data/sql/HikariConnector.java

Bardzo jest ci potrzebny tutaj dostęp do getterów, na pewno co chwile są potrzebne i muszą być publiczne, obiekty mają realizować jakieś zasadania i udostępniać metody potrzebne do tego, a nie wszystko jak leci bo istnieje.

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/data/managers/GuildManager.java#L21

Masz gettera do wewnętrzniej listy, kolejna rzecz której się nie robi w takich miejscach, i jak już to zwraca kopie.

Do tego używasz tutaj bez żadnego sensu... listy, i musisz iterować przy każdym .get przez wszystkie gildie... czyli N razy wolniej niż w dobrze zrobionej mapce, gdzie N to ilość gildii.

 

Do tego oczywiście w Guild i innych masz @Data z lombka, więc odpada korzystanie z tego obiektu jako klucza do mapki w razie potrzeby, czy innych zabaw, bo hashcode się będzie liczyło ze wszystkiego, a nie powinno tutaj.

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/data/managers/RegionManager.java

to samo.

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/data/managers/UserManager.java

to samo tylko jeszcze ogrzej, bo userów będzie więcej... nawet kilkanaście tysięcy, te iteracje to w końcu będzie czuć przy każdej komendzie.

 

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/api/InventoryClickHandler.java

co to wgl miało robić? bo nie robi nic, sensu nie ma.

Tam samo inne eventy tam, default to domyślna implementacja, jak pobierzesz tam jakieś zmienne to one nagle potem się nie pojawią u osoby implementującej.

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/configuration/ConcurrentConfigurableFile.java

Na co to, po co to, co tu jest concurrent?

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/configuration/ConfigurableFile.java

Powinno się używać StandardCharsets tam gdzie się da, i ogólnie obiektów charsetu

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/configuration/Settings.java

Po co ładujesz to z bukkitowego yamla do wlasnej mapki, to nie ma żadnego sensu. znowu robisz tam wszystko na listach i pętlach i tylko dodatkowo maskarycznie spowalniasz kod.

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/configuration/Messages.java

To już oczywiście straszy, 

HashMap<String, HashMap<String, List<String>>>
obiekty, używaj ich.

 

 

No i znowu masz tam masę pętli, co wszystko spowolni.

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/api/gui/GUICreator.java#L31

i na co i po co, można rejestrowac osobne listenery na GUI, i tylko sprawdzać czy inventory te same.

 

Dobra, wystraczy....

 

Chyba najsensowniejszą klasą jak na razie jest ta:

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/data/comparators/RankComparator.java

 

 

A już na pewno nie ma co pisać że taki projekt ma szansę konkurowac z np NovaGuilds @1361622928-U485574.pngMarcinWieczorek bo tutaj kod to jakaś porażka, a tam wszystko trzyma sie kupy...

Sam mnie zawołałeś ;)

1438614356923701010629.png

 

Opublikowano

A już na pewno nie ma co pisać że taki projekt ma szansę konkurowac z np NovaGuilds @1361622928-U485574.pngMarcinWieczorek bo tutaj kod to jakaś porażka, a tam wszystko trzyma sie kupy...

 

Coś ostatnio zbyt miły dla mnie jesteś. Znalazły się nowe gildie do hejtowania :D

Że Ci się chciało to wszystko wyciągać...

Dodaj mój nick do posta jeśli potrzebujesz pomocy | Piszę pluginy na zlecenie | Pomagam z Linuxem

newlogo.png

Opublikowano

 

zrobiony jest również system locales, czyli każdy gracz może wybrać sobie inny język pluginu (lub może styl kolorów? wszystko zależy od was!)

jak to działa? przypisany jest locale do każdego gracza (prefixem, np. pl, en, albo nw, c**j, dupa, to przykład.) i później sprawdzany. Przez co każdy ma unikalne teksty ;D

pf, kopiujo z diorite.

 

 

No ale ogólnie to... 

https://github.com/KaVzaQ/LeviathanGuilds

to na pewno to?

Bo ten kod to jakaś kompletna porażka....

 

nie wiem nawet gdzie zacząć.

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/utils/thread/WorkThread.java

Na co to, po co to, co chwilę kopiujesz te listy, locki bez składu i ładu, powinno się używać bukkit tasków, a jak się robi już takie rzeczy to są sensnwoniejsze executory i nie kopiuje sie tak list bez powodu.

 

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/utils/thread/Work.java

Na coś podobnego już tak wlasciwe marudzilem to nie ma sensu ponownie...

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/utils/Parser.java

Nie ma sensu zwracać HashMap, powinno być Map w razie potrzeby zmiany typu, do tego taki zapis itemu nie jest ani trochę wygodny dla użytkownika, rozdzielanie jakimiś symbolami... już lepiej zrobić wiele pól, lub jak essentials, color=... itd, a i paroswac łatwiej jak chce się wspierać więcej możliwości.

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/utils/Serializer.java

kolejne same bezsensy. jak tekst ze średnika będzie miał ; to jebnie, nowa linijka też może jebnąć, zależy jeszcze gdzie się tego stringa użyje.

Nazwa świata ze spacją też jebnie.

            dataOutput.writeInt(items.length);
            for (ItemStack item : items) {
                dataOutput.writeObject(item);
            }
można od razu zrobić writeObject(items) zamiast ręcznie samemu rozmiar zapisywać i itemy.

 

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/utils/Util.java

    public static double round(double value, int places) {
        if (places < 0) throw new IllegalArgumentException();

        long factor = (long) Math.pow(10, places);
        value = value * factor;
        long tmp = Math.round(value);
        return (double) tmp / factor;
    }
to jest bez sensu, i tak nie każda liczba ma reprezentacje w double, więc po takim zaokrągleniu może wyjść nawet więcej miejsc po przecinku niż było.

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/utils/runnables/TPSMonitor.java#L36

za każdym razem to ustawiasz.

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/utils/reflection/Reflection.java#L107

refleksje się powinno cachować, więc warto mieć jakieś wrappery, w oryginalnym kodzie były.... 

https://github.com/aadnk/ProtocolLib/blob/master/modules/TinyProtocol/src/main/java/com/comphenix/tinyprotocol/Reflection.java

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/utils/reflection/packet/PacketCrystal.java#L38

A tutaj lecisz bez cachowania refleksji, co jest ponad 200x wolniejsze...

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/utils/element/TabPacket.java#L30

tu tak samo...

 

Do tego cały ten kod to zlepek z różnych innych, nie wnikam ile twoich, a ile nie, ale wszędzie są zdublowane funkcjonalności

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/listeners/PlayerJoinListener.java#L25.

I jak się task nie wyrobi, z powodu np locka to j****? najwyżej potem gracz nie dostanie pakietu, coś nie zadziała

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/data/Guild.java#L42

to jest oczywiście rak, naucz się jakiś podstaw relacyjnych baz danych, bo tak się zwyczajnie tego nie robi, w bazach nie zapisuje się żadnych list itd, od tego są właśnie relacje.

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/data/User.java#L51

ponownie refleksje z dupy, do tego w mysql jak używasz UUID do rozróżniania wierszy, to warto to zoptymalizować, zapisywać np jaki bajty a nie string.

 

używasz też rego lomboka wsżedzie bez sensu, bo nie ogarniasz OOP, to wiadać: https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/data/sql/HikariConnector.java

Bardzo jest ci potrzebny tutaj dostęp do getterów, na pewno co chwile są potrzebne i muszą być publiczne, obiekty mają realizować jakieś zasadania i udostępniać metody potrzebne do tego, a nie wszystko jak leci bo istnieje.

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/data/managers/GuildManager.java#L21

Masz gettera do wewnętrzniej listy, kolejna rzecz której się nie robi w takich miejscach, i jak już to zwraca kopie.

Do tego używasz tutaj bez żadnego sensu... listy, i musisz iterować przy każdym .get przez wszystkie gildie... czyli N razy wolniej niż w dobrze zrobionej mapce, gdzie N to ilość gildii.

 

Do tego oczywiście w Guild i innych masz @Data z lombka, więc odpada korzystanie z tego obiektu jako klucza do mapki w razie potrzeby, czy innych zabaw, bo hashcode się będzie liczyło ze wszystkiego, a nie powinno tutaj.

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/data/managers/RegionManager.java

to samo.

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/data/managers/UserManager.java

to samo tylko jeszcze ogrzej, bo userów będzie więcej... nawet kilkanaście tysięcy, te iteracje to w końcu będzie czuć przy każdej komendzie.

 

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/api/InventoryClickHandler.java

co to wgl miało robić? bo nie robi nic, sensu nie ma.

Tam samo inne eventy tam, default to domyślna implementacja, jak pobierzesz tam jakieś zmienne to one nagle potem się nie pojawią u osoby implementującej.

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/configuration/ConcurrentConfigurableFile.java

Na co to, po co to, co tu jest concurrent?

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/configuration/ConfigurableFile.java

Powinno się używać StandardCharsets tam gdzie się da, i ogólnie obiektów charsetu

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/configuration/Settings.java

Po co ładujesz to z bukkitowego yamla do wlasnej mapki, to nie ma żadnego sensu. znowu robisz tam wszystko na listach i pętlach i tylko dodatkowo maskarycznie spowalniasz kod.

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/configuration/Messages.java

To już oczywiście straszy, 

HashMap<String, HashMap<String, List<String>>>
obiekty, używaj ich.

 

 

No i znowu masz tam masę pętli, co wszystko spowolni.

 

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/api/gui/GUICreator.java#L31

i na co i po co, można rejestrowac osobne listenery na GUI, i tylko sprawdzać czy inventory te same.

 

Dobra, wystraczy....

 

Chyba najsensowniejszą klasą jak na razie jest ta:

https://github.com/KaVzaQ/LeviathanGuilds/blob/master/src/main/java/me/khalit/projectleviathan/data/comparators/RankComparator.java

 

 

A już na pewno nie ma co pisać że taki projekt ma szansę konkurowac z np NovaGuilds @1361622928-U485574.pngMarcinWieczorek bo tutaj kod to jakaś porażka, a tam wszystko trzyma sie kupy...

Sam mnie zawołałeś ;)

 

<3

 

I dobrze że cię zawołałem, mnóstwo świetnych rad. No, niektóre może bardzo prześmiewcze i ironiczne, ale wybaczam z racji tego że jesteś to Ty, osoba która się zna TROCHĘw pizdu bardziej niż ja.

Dzięki, poprawi się. 

Moja oficjalna strona! :)

http://socketbyte.pl/ 

Opublikowano

Wole FUNNYGUILDSY :D.

Nie no żarcik.

Nie długo też się przenosze na max. 1.8.

Ciesze się, że już nie robia gildii pod 1.7.X

 

* Życzę powodzenia :)

Opublikowano

A może zamiast jajek flagi/bannery? Wszystkie gildie maja niepowtarzalne flagi/bannery. 

Plugin na to juz jest(na bannery) BannerMaker

https://dev.bukkit.org/bukkit-plugins/bannermaker/

Mamy już parę pomysłów na to, w tym twój.

 

  • Flaga gildii na  środku    Prawdopodobieństwo wykonania: 30%     Podbijanie: Wroga gildia klika na flagę i dostaje ją do ekwipunku, aby podbić gildie należy ją przenieść do gildii. Osoba niosąca miała by tam jakieś nerfy żeby łatwiej ją było zabić.
  • Jajko zwykłe                   Prawdopodobieństwo wykonania: 20%     Podbijanie: Stanie na "punkcie" jak w battlefieldzie. Im więcej graczy, tym szybciej/wolniej się ładuje. 
  • Bossy gildyjne                Prawdopodobieństwo wykonania: 50%     Podbijanie: Każda gildia ma na start 1000 hp, można ją podbijać złotym mieczem (szybko się kończy) można też ładować gildii zycie (ale nie podczas podbijania)

 

Prawdopodobieństwo wykonania po to, że nie jesteśmy pewni czy pewne założenia zadziałają. Zrobienie bossow gildyjne jest dość trudne, dlatego będziemy musieli przygotować się na inne okoliczności (np. ta flaga, która jest banalna do zrobienia tak naprawdę). Najtrudniejsze jest zrobienie systemu z battlefielda ;p

Moja oficjalna strona! :)

http://socketbyte.pl/ 

Opublikowano

 

A może zamiast jajek flagi/bannery? Wszystkie gildie maja niepowtarzalne flagi/bannery. 

Plugin na to juz jest(na bannery) BannerMaker

https://dev.bukkit.org/bukkit-plugins/bannermaker/

Mamy już parę pomysłów na to, w tym twój.

 

  • Flaga gildii na  środku    Prawdopodobieństwo wykonania: 30%     Podbijanie: Wroga gildia klika na flagę i dostaje ją do ekwipunku, aby podbić gildie należy ją przenieść do gildii. Osoba niosąca miała by tam jakieś nerfy żeby łatwiej ją było zabić.
  • Jajko zwykłe                   Prawdopodobieństwo wykonania: 20%     Podbijanie: Stanie na "punkcie" jak w battlefieldzie. Im więcej graczy, tym szybciej/wolniej się ładuje. 
  • Bossy gildyjne                Prawdopodobieństwo wykonania: 50%     Podbijanie: Każda gildia ma na start 1000 hp, można ją podbijać złotym mieczem (szybko się kończy) można też ładować gildii zycie (ale nie podczas podbijania)

 

Prawdopodobieństwo wykonania po to, że nie jesteśmy pewni czy pewne założenia zadziałają. Zrobienie bossow gildyjne jest dość trudne, dlatego będziemy musieli przygotować się na inne okoliczności (np. ta flaga, która jest banalna do zrobienia tak naprawdę). Najtrudniejsze jest zrobienie systemu z battlefielda ;p

 

może zwyczajnie dajcie wybór, i api by dodawać swoje,  wszystko sie da

1438614356923701010629.png

 

Opublikowano

 

 

A może zamiast jajek flagi/bannery? Wszystkie gildie maja niepowtarzalne flagi/bannery. 

Plugin na to juz jest(na bannery) BannerMaker

https://dev.bukkit.org/bukkit-plugins/bannermaker/

Mamy już parę pomysłów na to, w tym twój.

 

  • Flaga gildii na  środku    Prawdopodobieństwo wykonania: 30%     Podbijanie: Wroga gildia klika na flagę i dostaje ją do ekwipunku, aby podbić gildie należy ją przenieść do gildii. Osoba niosąca miała by tam jakieś nerfy żeby łatwiej ją było zabić.
  • Jajko zwykłe                   Prawdopodobieństwo wykonania: 20%     Podbijanie: Stanie na "punkcie" jak w battlefieldzie. Im więcej graczy, tym szybciej/wolniej się ładuje. 
  • Bossy gildyjne                Prawdopodobieństwo wykonania: 50%     Podbijanie: Każda gildia ma na start 1000 hp, można ją podbijać złotym mieczem (szybko się kończy) można też ładować gildii zycie (ale nie podczas podbijania)

 

Prawdopodobieństwo wykonania po to, że nie jesteśmy pewni czy pewne założenia zadziałają. Zrobienie bossow gildyjne jest dość trudne, dlatego będziemy musieli przygotować się na inne okoliczności (np. ta flaga, która jest banalna do zrobienia tak naprawdę). Najtrudniejsze jest zrobienie systemu z battlefielda ;p

 

może zwyczajnie dajcie wybór, i api by dodawać swoje,  wszystko sie da

 

Można by w sumie to jako event cancellable zrobić. Mam pewien na to już pomysł ;P

Moja oficjalna strona! :)

http://socketbyte.pl/ 

Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...