Rangi na czacie
Robiin
12.08.2018
W odpowiedzi na ten temat napisałem plugin na rangi (nic nadzwyczajnego, po prostu nie znalazłem nigdzie tutaj czytania z configu itd.).
Dodałem także menu z listą rang - komendy znajdują się na liniach 28-36 Wybranie opcji w menu spowoduje jego zamknięcie.
Prefixy z poprawką czatu z lipca 2017.
Wystarczy wrzucić plik konfiguracyjny (linia 12.), domyślnie "addons/amxmodx/configs/RanksConfig.ini" na podaną ścieżkę i uzupełnić go w następujący sposób:
"Ranga #1" = 0-150 "Ranga #2" = 151-250 "Ranga #3" = 251-350 "Ranga #4" = 351-450
Wzorcowo:
"Nazwa rangi" = (minimum fragów do rangi)-(maximum fragów do rangi)
Ważne są znaki "=" oraz "-", ponieważ to na ich podstawie pobierane są dane min&max fragów.
Załączone pliki
Użytkownik Wicked. edytował ten post 16.12.2019 21:15
darkeno
26.09.2018
Plugin fajny ale zauwazyłem 1 błąd w sumie nie wiem czy błąd
jak wchodzi gracz na serwer nie ważne kto ma range silver dopiero po zabiciu innego gracza
ranga się aktualizuje do dobrej rangi mógłbyś to poprawić?
Rivit
26.09.2018
w końcu ktoś zrobił coś skąd można kopiować kod prefixów
Also
Wyciąg wnioski (lubie sie czepiać)
darkeno
27.09.2018
Wszystko ładnie ;D a co z moim problemem ?
Pokaż plik konfiguracyjny.
Robiin
27.09.2018
Wszystko ładnie ;D a co z moim problemem ?
Pokaż plik konfiguracyjny.
"Silver" = 0-1"Silver II" = 2-5"Silver III" = 6-15"Silver IV" = 16-29"Silver elite" = 30-49"Silver elite master" = 50-75"Gold nova I" = 76-100"Gold nova II" = 101-150"Gold nova III" = 151-200"Gold nova Master" = 201-300"Master guardian I" = 301-500"Master guardian II" = 501-750"Master guardian elite" = 751-1000"Distinguished master guardian" = 1001-1500"Legendary eagle" = 1501-2000"Legendary eagle master" = 2001-2500"Supreme master first class" = 2501-3000"THE GLOBAL ELITE" = 3001-5000
Zamień funkcję GetUserRank na tę:
Robiin
03.10.2018
ref
Nie mam czasu na dokładniejszą analizę, ale domyślam się, że jest to spowodowane zbyt wczesnym eventem względem połączenia się gracza do serwera (serwer nie otrzymuje jeszcze danych, które są potrzebne do pobrania statystyk gracza). Spróbuj tego, jak nie zadziała to będziemy analizować dalej.
Linijki 74-99 zamień na:
darkeno
03.10.2018
Mógłbyś przy nastepnej próbie dać cały plik sma być może to ja gdzieś popełniam błąd:) Spróbuje jeszcze wyłaczyc all pluginy może z czymś sie gryzie
Toldi
03.10.2018
W przypadku właśnie gdy serwer nie otrzymał jeszcze danych potrzebnych do ustawienia należytej rangi można by powtórzyć wywołanie się funkcji GetUserRank(index); np. 5s po dołączeniu gracza na serwer przez taska.
darkeno
03.10.2018
Dalej jest tak samo :< Cięzki temat zawsze po zabiciu gracza sie odswieża
Robiin
02.01.2019
Update:
- Prefixy są formatowane w sposób, na który można patrzeć bez chęci wydłubania sobie oczu,
- Dużo bardziej czytelny kod, lepsze rozmieszczenie go w pliku,
- Możliwość konfiguracji configu w constach u góry,
- Brak rejestracji komend w przypadku braku załadowanych rang,
- Zmieniony moment pobrania danych po raz pierwszy, żeby uniknąć próby ustawienia rangi graczowi, który nie wszedł jeszcze do końca na serwer,
- Zmienione nazwy natywów odpowiednio do ich rzeczywistej funkcjonalnośći,
- Mniejsze poprawki niewarte uwzględniania
Użytkownik aSiorr edytował ten post 02.01.2019 09:30
Rivit
02.01.2019
Takie pytanko mam. Nie trzeba niszczyć Arrayów w plugin_end? W sensie czy one sie same czyszczą jakoś?
Robiin
02.01.2019
Dynamiczne tablice są niszczone pod koniec działania pluginu, dalej objaśnie dlaczego tak uważam.
Opcjonalnie ArrayDestroy ma służyć do niszczenia tablic w trakcie działania pluginu, ale użyte może zostać pod jego koniec, np. w plugin_end właśnie.
W ten, czy inny sposób tablice zawsze są niszczone, ponieważ przy załadowaniu kolejnej mapy tablice nie istnieją, tym samym wnioskuję, że nie muszą być niszczone manualnie pod koniec mapy.
Użytkownik aSiorr edytował ten post 02.01.2019 12:07