Cze??
Napisa?em sobie skrypt na etykiety tekstowe podobne do tych z SA-MPa, do MTA. Jak na razie nie ma tutaj nic nadzwyczajnego, ale mam zamiar troch? to rozwin??, da? mo?liwo?? zmiany czcionki, rozmiaru, zmiany koloru w ?rodku tekstu, doda? mo?liwo?? tworzenia etykiet client-side, widocznych tylko dla jednego klienta, i inne.
Nazwa: Quis 3D Text Labels
Wersja: 1.1
Screeny:Screen 1Screen 2 (zielona etykieta ma nadany indeks 1)Screen 3 (etykieta przyczepiona do naczepy) Przydatne informacje: Utworzone etykiety s? elementami MTA, tak samo jak praktycznie wszystko co istnieje w MTA, czyli gracze, pojazdy, pickupy i inne. Typ elementu, dla etykiety to "text3d".
Rozmiar tekstu dla ka?dej etykiety tekstowej jest skalowany w zale?no?ci od odleg?o?ci od gracza. Im dalej, tym tekst b?dzie mniejszy.
Lista zmian w wersji 1.1:
poprawiono b??d, kt?ry powodowa? ?e nie da?o si? ustawi? warto?ci "checkLOS" na false. B??d ten zosta? te? poprawiony w wersji 1.0, godzin? po jej wystawieniu
dodano czarn? obw?dk? do etykiet, dla ?adniejszego wygl?du
dodano funkcje attach3DTextLabel i detach3DTextLabel umo?liwiaj?ce przyczepianie etykiet do innych element?w
dodano parametr "index" w create3DTextLabel
Lista funkcji (tylko server-side):
Tworzy now? etykiet? tekstow? i zwraca jej element. Funkcja automatycznie konwertuje wszystkie zmienne je?li ich typ jest nieprawid?owy, je?li konwersja si? nie powiedzie, zwraca "false".
text - ci?g znak?w, kt?ry b?dzie zawarty w etykiecie
posx - pozycja X etykiety
posy - pozycja Y etykiety
posz - pozycja Z etykiety
red - ilo?? koloru czerwonego w kolorze etykiety, domy?lnie 255
green - ilo?? koloru zielonego w kolorze etykiety, domy?lnie 255
blue - ilo?? koloru niebieskiego w kolorze etykiety, domy?lnie 255
drawdistance - z jakiej odleg?o?ci ma by? widoczna etykieta, domy?lnie 100.0
checkLOS - czy w przypadku generowania etykiety, ma by? sprawdzana linia wzroku (Line-Of-Sight), tzn. czy etykieta nie jest za jakim? obiektem. Domy?lnie true.
index - taki jakby priorytet, im wy?szy indeks, tym etykieta b?dzie generowana "wy?ej" na stosie. Tzn. je?li w jednym miejscu na ekranie nak?ada si? kilka etykiet, to na wierzchu b?dzie ta z najwy?szym indeksem.
Zmienia tekst etykiety tekstowej. Zwraca true gdy operacja si? powiedzie, false gdy podano nieprawid?owe parametry.
?
Zwraca aktualny tekst zawarty w etykiecie tekstowej.
?
Zmienia kolor etykiety tekstowej. Zwraca true gdy operacja si? powiedzie, false gdy podano nieprawid?owe parametry.
?
Zwraca kolor etykiety tekstowej w postaci trzech liczb.
?
?
Przyczepia etykiet? do innego elementu. Dane s? konwertowane na prawid?owy typ, tak jak zawsze. Je?li konwersja si? nie powiedzie, funkcja zwraca "false", a w przypadku powodzenia "true".
label - etykieta tekstowa, kt?ra ma zosta? doczepiona
theElement - element, do kt?rego ma zosta? doczepiona etykieta tekstowa
offsetX - odleg?o?? X wzgl?dem pozycji elementu
offsetY - odleg?o?? Y wzgl?dem pozycji elementu
offsetZ - odleg?o?? Z wzgl?dem pozycji elementu
Odczepia etykiet? tekstow? od elementu, etykieta wraca na pozycj? ustalon? przy jej tworzeniu. Zwraca "true" w przypadku powodzenia, "false" w przypadku b??du. Ta funkcja jest r?wnoznaczna z:
Inne funkcje:
Poniewa? etykieta tekstowa jest elementem, dzia?a na ni? tak?e mn?stwo innych funkcji, wbudowanych w MTA. Przyk?ady: destroyElement, getElementPosition, setElementPosition
Download:
Tym razem spakowa?em dwa pliki .lua w archiwum ZIP, my?l? ?e b?dzie to wygodniejsze od kopiowania. Wystarczy wgra? te pliki do zasobu w kt?rym chcemy u?ywa? etykiet tekstowych, doda? dwie linijki w meta.xml, i ju? mo?emy cieszy? si? nowymi funkcjami.
Ukryta wiadomość / Hidden message(aby ją zobaczyć musisz postawić użytkownikowi)
Wiadomość została ukryta, aby ją przeczytać należy się zalogować.
Wersja 1.0:
Kodu du?o nie ma, tak wi?c nie b?d? go nigdzie wstawia?. Skrypt mo?na sobie wklei? do swojego zasobu, albo doda? jako nowy plik w istniej?cym zasobie. Mo?na te? utworzy? ca?kiem nowy zas?b, ale dost?p do funkcji b?dzie utrudniony (export).
Ukryta wiadomość / Hidden message(aby ją zobaczyć musisz postawić użytkownikowi)
Wiadomość została ukryta, aby ją przeczytać należy się zalogować.
B?d? robi? aktualizacje, nie jest to ostatnia wersja, tak wi?c mo?ecie zg?asza? bugi i propozycje, b?d? wdzi?czny
Mi?ej zabawy.
Ostatnio zmieniony przez Iggy 2015-04-23, 19:49, w całości zmieniany 1 raz
Musz? troch? popracowa? nad wygl?dem, pobawi? si? czcionk?, i rozmiarem czcionki. Mo?e co? z tego wyjdzie.
Na screenach s? lipne kolory, bo zrobi?em te kt?re mi akurat przysz?y do g?owy, czyli 255,0,0, 0,255,0, 0,0,255, 255,255,255, 255,128,0
Takie najprostsze W innych, bardziej wymieszanych kolorach wygl?daj? lepiej.
jg2aviva1, jak ju? mog?e? zrobi? nowy temat z odwo?aniem do tego skryptu, no c?? jak ju? tu napisa?e? to ci wyja?ni?:
To znaczy ?e s? 3 mo?liwo?? a tak naprawd? to 2:
*Zrobienie nowego skryptu z kt?rego b?dziemy expotowa? funkcj?(poni?ej ci napisz? o co chodzi).
*Stworzenie 2 nowych plik?w lub danie kod?w do odpowiednich stron (server i client), tutaj lepsze rozwi?zanie jest stworzenie 2 nowych plik?w i dodanie ich do pliku meta.xml i mo?esz wtedy u?ywa? funkcji opisanych w temacie.
Export funkcji:
Jest to co? w stylu brania funkcji z innego skryptu, czyli robisz sobie skrypt i wklejasz Server-Side do pliku po stronie server i Client-Side: po stronie client.
Nast?pnie w pliku meta deklarujesz oby 2 pliki do skryptu. Kolejn? czynno?ci? jest napisanie wiersz odpowiadaj?cych za eksport funkcji i to te? piszemy w pliku meta.xml:
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach