Skocz do zawartości
Maku

[INC] teleSys v1.0 by Maku

Rekomendowane odpowiedzi

teleSys
v1.0


Autor: Maku

Opis:
Include jest odpowiedzią na temat - http://pawno.pl/index.php?/topic/26168-zaawansowany-system-teleportów/
Zamiast pisać jak inni "to jest słabe", postanowiłem zrobić lepsze.

Jest to system teleportów. Kilka funkcji, które pozwalają nam na dodanie w szybki sposób tworzyć dużą ilość teleportów. Brak pętli, brak dużych tablic, duża ilość parametrów i prostota dodania teleportu to zalety tego systemu.

Wymagane jest include ZCMD.

Funkcje:



PlayerTeleport(fullname[], playerid, Float:x, Float:y, Float:z, Float:angle, interior, virtualworld, withcar);
Jest to funkcja, która teleportuje gracza. Możemy mu podać pozycje, nazwe miejsca, obrót, interior i virtualworld. Dodatkowo "withcar" to parametr, którym ustawiamy czy na dany teleport można wejść z pojazdem. Używać tej funkcji można wszędzie (nie jest to komenda do teleportowania).
 
TELE:cmd(fullname[], playerid, Float:x, Float:y, Float:z, Float:angle, interior, virtualworld, withcar);
Jest to właściwie definicja, a nie funkcja. Za pomocą jednej linijki możemy dodać teleport nowy teleport.
Dodajemy poza callback'ami, pod include.
 
ALIASCMD:cmd>cmd(playerid);
Kolejna definicja. Jest to alias do komend.
Tworząc teleport
TELE:ls...
możemy dodać jeszcze alias
ALIASCMD:lossantos>ls(playerid);
Tym sposobem, możemy używać obu komend do tych samych pozycji i ustawień nie przepisując całego kodu.
Alias ten można używać do wszystkich komend, nie tylko do teleportów.
 
#define TELE_WAIT (15000)
W include jest opcja "blokady czasowej". Można zmienić jej czas wklejając tę definicję przed include lub wyłączyć ją ustawiając definicję na 0. Ustawiamy w milisekundach.

Download:
http://makuhost.098.pl/telesys.html

Przykład:
 
#include <a_samp>

#define TIME_WAIT (5000)
#include <telesys>



//Teleporty:
TELE:ls("Los Santos", playerid, 550.0, 512.0, 10.0, 90.0, 0, 0, 1);
TELE:lv("Las Venturas", playerid, -1567.0, 567.0, 25.0, 180.0, 0, 0, 1);
TELE:sf("San Fierro", playerid, -456.0, 2165.0, 110.0, 90.0, 0, 0, 1);
TELE:testtele("Testowy teleport", playerid, 568.0, 156.0, 78.0, 90.0, 0, 0, 1);
TELE:example("Przykładowy teleport", playerid, 1645.0, 23.0, 15.0, 90.0, 0, 0, 1);

//Aliasy teleportów:
ALIASCMD:lossantos>ls(playerid);
ALIASCMD:sanfierro>sf(playerid);
Edytowane przez Maku

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Ciekawy include, można edytować trochę funkcję PlayerTeleport dodając możliwość ustawienia dla wybranych teleportów czasu blokady. ;) 

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Sprawdzałem, bardzo fajnie wszystko działa.

To serdeczne dzięki, że sprawdziłeś bo mnie się nie chciało włączać serwera dla include, który robiłem 15 minut.

Ciekawy include, można edytować trochę funkcję PlayerTeleport dodając możliwość ustawienia dla wybranych teleportów czasu blokady. ;)

Można, ale wg mnie byłoby to zbędne, dlatego zrobiłem tak jak zrobiłem.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

  • Przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników przeglądających tę stronę.

×