Po przeczytaniu tego poradnika nauczysz się korzystać z dobrodziejstw jakie oferuje nam biblioteka CLEO. Zacznijmy od podstawowych wiadomości...
CLEO jest biblioteką do GTA, która daje nam nowe możliwości tworzenia skryptów. Przykładowo odtwrzanie plików MP3 w dowolnym momencie gry. Oprócz nowych funkcji (opcodów) biblioteka ta posiada jeden, duży plus. Po skompilowaniu skryptu SCM możemy uruchomić go na starych zapisach, nie trzeba rozpoczynać nowej gry.
Projekt jest cały czas rozwijany, a jego stwórcą jest Seemann. Aktualna wersja została oznaczona numerem 4.
Instalacja biblioteki CLEO 4 jest banalnie prosta. Wystarczy pobrać
instalator z naszej strony i uruchomić go.
W skryptach CLEO nie powinno się stosować zmiennych globalnych, lecz zmienne lokalne. Użycie niezdefiniowanej nazwy zmiennej globalnej może spowodować nadpisanie wartości w głównym wątku GTA (main.scm) i tym samym crash gry.
Więcej o zmiennych w
tym poradniku.
W skryptach CLEO (*.cs) można użyć zmiennych lokalnych tylko z przedziału
0@ - 33@, gdzie zmienne
32@ i 33@ to wbudowane liczniki, które są cały czas aktualizowane i nadpisywane. Więcej o licznikach w
tym poradniku w sekcji "Wbudowane liczniki".
Tworzenie skryptów do biblioteki CLEO jest niemal identyczne jak zwykłe SCM. Mają one tylko inny początek i zakończenie, swobodnie można używać tych samych funkcji co w pisaniu skryptów SCM. W tym artykule nie będę używał nowych kodów, które udostępnia nam CLEO. Należy też pamiętać że skrypty wspomnianej biblioteki korzystają z nazw zmiennych z pliku main.scm, czyli nie musimy np. ponownie deklarować gracza jako aktora.
Kod:
Pierwszą linjką dajemy kompilatorowi znać, że jest to skrypt CLEO. Gdybyśmy ją ominęli, po kompilacji dostalibyśmy zwykły skrypt SCM zamiast CS. Drugą linijką rozpoczynamy skrypt CLEO. To cały wstęp, możemy przejść do konkretnych działań. Chyba najprostszym przykładem jest stworzenie spawn samochodu, dlatego najpierw tym się zajmiemy, a później trochę "zaszalejemy".
Kod:
0247: request_model #INFERNUS
0247: request_model 182
038B: load_requested_models
Jeśli chcemy korzystać z jakichś modeli, najpierw oczywiście musimy je załadować. Powinieneś wiedzieć już jak to działa po przeczytaniu podstaw tworzenia misji. Załadowaliśmy taksówkę (zmienna 0@) i kierowcę (zmienna 1@).
Kod:
00A5: 0@ = create_car #INFERNUS at 2499.2405 -1682.202 13.3649
0175: set_car
0@ z_angle_to 280.5
00AD: set_car
0@ max_speed_to 15.0
0129: 1@ = create_actor_pedtype 23 model 182 in_car
0@ driverseat
Powyższe funkcje też na pewno są Ci znane. Na początku Tworzymy samochód, obracamy go i ustalamy prędkość. Później tworzymy w wozie kierowcę.
Kod:
:petla1
wait 10
if and
00E1: player 0 pressed_key 16
00E1: player 0 pressed_key 15
0206: actor
$PLAYER_ACTOR near_car
0@ radius 5.0 5.0 3.0 flag 0 on_foot
jf @petla2
05CA: AS_actor
$PLAYER_ACTOR enter_car
0@ passenger_seat 0 10000 ms
Teraz sprawdzamy czy gracz nacisnął jednocześnie klawisz sprintu i wejścia do samochodu (SPACJA + F) oraz czy jest blisko taksówki. Jeśli nie to przeskakujemy do następnej pętli. Jeśli tak to gracz automatycznie wsiada do taksówki jako pasażer.
Kod:
:petla2
wait 10
if
00DB: actor
$PLAYER_ACTOR in_car
0@
jf @petla1
00A7: car
0@ drive_to 2095.6367 -1792.661 13.0752
Za pomocą tej drugiej pętli sprawdzamy czy gracz jest w taksówce. Jeśli tak to taksówka jedzie pod fast fooda. Jeśli nie, przeskakujemy do pierwszej pętli.
Kod:
Powyższą funkcją kończymy skrypt CLEO. Jest tak samo krótki jak początek.
Teraz kompilujemy skrypt. Skompilowany plik będzie miał rozszerzenie .cs. Należy go wkleić do katalogu cleo lub w programie Sanny Builder wybrac po prostu opcję Kompiluj + kopiuj. Możemy teraz wejść do gry, wczytać dowolny save i cieszyć się taksówką pod domem CJa, która zawiezie nas do fast fooda kiedy będziemy głodni.
Posting comments to this article is disabled.