Czy wiesz, że... rejestracja trwa tylko 20 sekund?
Strona główna forum Szukaj Rejestracja
Witaj, nieznajomy!
Poprzedni 1 2 Następny
Postów: 9 Dołączył: 2010-10-25
#
Opisze mi ktoś jak zrobić skrypt żeby po kliknięciu "" w określonym aucie zrobił się określony paintjob? Tak samo z nitro i hydrauliką. BO ja coś tam próbuję i na razie mam taki kod na paintjoba:

Kod:
{$CLEO .cs}
0000: NOP

:petla1
wait 10
if and
00E1: player 0 pressed_key 
jf @petla2

@petla2
wait 10
if 


I nie wiem co dalej zrobić x] Zacząłem skrypt, najpierw określa się kliknięcie "" ((nie wpisałem ID bo nie znam)) i teraz przenosi do pętli drugiej i tam chcę napisać żeby robił się ten paintjob tylko nie wiem jak ;/ Pozdrówka.

Postów: 878 Dołączył: 2009-01-20
#
Opcode do ustawienia paintjoba:

Kod:
06ED: set_car 34@ paintjob 0


0 to brak paintjoba, więc musisz zmienić to ID na własne, np. 1.

___________________
Administrator
Postów: 9 Dołączył: 2010-10-25
#
To dajcie mi jeszcze opcode do hydrauliki i nitro, proszę?

I w ogóle nie działa mi ten opcode, bo pisze że w thread największą zmienną jest 33@...

To mój aktualny kod i jednak robię to na spację:
Kod:
{$CLEO .cs}
0000: NOP

:petla1
wait 10
if and
00E1: player 0 pressed_key 16
jf @petla2

:petla2
wait 10
06ED: set_car 34@ paintjob 2

0A93: end_custom_thread


I można zrobić tak żeby to działało tylko na jeden konkretny samochód? Rodzaj samochodu w sensie, na przykład blade.
Postów: 878 Dołączył: 2009-01-20
#
34@ - to podmień na zmienną samochodu, do którego chcesz wstawić paintjob

Opcode na hydraulikę:
Kod:
07FF: set_car $ZMIENNA_SAMOCHODU hydraulics 1 

Jeśli chcesz wyłączyć hydraulikę, zmień 1 na 0

Opcode na nitro:
Kod:
09E9: car $ZMIENNA_SAMOCHODU add_single_nitro

Ten kod, jak nazwa sugeruje, dodaje możliwość uruchomienia nitro tylko jeden raz. Jeśli chcesz zmienić limit, to po prostu wywołaj tą funkcję tyle razy, ile będziesz potrzebował.

___________________
Administrator
Postów: 9 Dołączył: 2010-10-25
#
Kod:
{$CLEO .cs}
0000: NOP

wait 10
if and
00E1: player 0 pressed_key 16
wait 10
06ED: set_car $BLADE paintjob 2

0A93: end_custom_thread


Jaki błąd jest w tym kodzie? Nie działa kliknięcie F ani spacji, paintjob się nie robi ;/
Postów: 878 Dołączył: 2009-01-20
#
Nie utworzyłeś żadnej pętli, w tym kodzie, co podałeś, sprawdzasz ten warunek tylko jeden raz podczas całego działania skryptu.

Kod:
{$CLEO .cs}
0000: NOP

03C0: $BLADE = actor $PLAYER_ACTOR car 

:petla
wait 0
if
00E1: player 0 pressed_key 16
jf @petla

06ED: set_car $BLADE paintjob 2

0A93: end_custom_thread


Pozatym nie ma potrzeby użycia if and, skoro ustawiłeś tylko jeden warunek.
Oprócz tego, nie ustawiłeś zmiennej $BLADE, czyli jak domniemam, samochodu gracza. Chyba że definiujesz to w oddzielnym skrypcie i odwołujesz się do tego poprzez zmienną globalną. Na wszelki wypadek dodałem to na początku kodu.

___________________
Administrator
Postów: 9 Dołączył: 2010-10-25
#
Kurczę, dzięki ;> Ja dopiero zaczynam CLEO i strasznie słabo mi idzie, ledwo co ogarniam znaczenie tego wszystkiego. Pierwszy raz programuję w GTA SA >:D

Mógłby ktoś podać ID przycisku ""? (nie mylić z "/")

PS:
Twój kod też nie działa, klikałem spację, potem próbowałem F i nic ;/
Postów: 878 Dołączył: 2009-01-20
#
Ah, sorry. Pomyliłem się. Przydzielenie samochodu gracza do $BLADE powinno być po pętli:

Kod:
{$CLEO .cs}
0000: NOP

:petla
wait 0
if
00E1: player 0 pressed_key 16
jf @petla

03C0: $BLADE = actor $PLAYER_ACTOR car
06ED: set_car $BLADE paintjob 2

0A93: end_custom_thread


Co do klawiszy, to np. tutaj masz listę:
http://www.kbdedit.com/manual/low_level_vk_list.html

Znak to będzie: 0xDC.

___________________
Administrator
Postów: 207 Dołączył: 2009-03-18
#
A ja dodam że lista klawiszy jest dostępna od razu w SB.
Wchodzimy w Pomoc -> Index -> w spisie treści wybieramy CLEO 3 Code Library (ostatnie na liście) -> Virtual Key codes.

___________________
Postów: 9 Dołączył: 2010-10-25
#
Kod:
{$CLEO .cs}
0000: NOP

:petla
wait 0
if
00E1: player 0 pressed_key 0xDC
jf @petla

03C0: $BLADE = actor $PLAYER_ACTOR car
06ED: set_car $BLADE paintjob 2

0A93: end_custom_thread


To jest mój dokładny kod... Próbowałem też z parametrem 220 do pressed_key, też nic nie dało. Za każdym razem jak w singlu siedzę w bladzie i klikam to nic się nie dzieje... Nie wiem o co z tym chodzi ;/
Postów: 207 Dołączył: 2009-03-18
#
Heh z ciekawości chciałem zrobić podobnego moda ale na dodawanie hydrauliki do każdego auta, a nie painjobów. I też coś mi nie wyszło, ale spróbuję zrobić jak się uda napiszę jak ;]

___________________
Postów: 1004 Dołączył: 2009-01-20
#
Nie dałeś pętli sprawdzającej czy aktor się znajduje w pojeździe. Najprawdopodobniej dlatego ci nie działa. Powinno to wyglądać mniej więcej tak.

Kod:
{$CLEO .cs}
0000: NOP

0247: request_model #sultan // 
038B: load_requested_models

00A5: $WOZ1 = create_car #sultan at 2493.0034 -1669.451 12.9599
0175: set_car $WOZ1 z_angle_to 58.7561
//pętla sprawdzająca czy aktor jest w pojeździe
:petla1
wait 10
if 
Actor.InCar($PLAYER_ACTOR, $WOZ1)
jf @petla1

:petla2
wait 10
if 
00E1: player 0 pressed_key 16
00E1: player 0 pressed_key 15
jf @petla2

06ED: set_car $WOZ1 paintjob 0
09E9: car $WOZ1 add_single_nitro 
07FF: set_car $WOZ1 hydraulics 1 

0A93: end_custom_thread


Nie wiem jak zrobić żeby to działało na przypadkowym spotkanym samochodzie dlatego daje do konkretnie przypisanego samochodu. Czyli w tym wypadku sultana. Sultana ustawiłem pod domem CJ.
Postów: 207 Dołączył: 2009-03-18
#
Więc tak to jest skompilowany skrypt na danie hydrauliki autu w którym znajduje się gracz.
Kod:
{$VERSION 3.1.0027}
{$CLEO .cs}

0000: NOP
 
:NONAME_2
wait 10 
if 
Actor.InCar($PLAYER_ACTOR, $CAR)
jf @NONAME_2 

:NONAME_25
wait 10 
if 
00E1:   player 0 pressed_key 111 
jf @NONAME_25
 
03C0: $CAR = actor $PLAYER_ACTOR car 
Car.ToggleHydraulics($CAR) = True

0A93: end_custom_thread 


Co ja tu robię źlę że nie działa?

___________________
Postów: 878 Dołączył: 2009-01-20
#
Zamień:
Kod:
Actor.InCar($PLAYER_ACTOR, $CAR)

na
Kod:
00DF:   actor $PLAYER_ACTOR driving


Sprawdzałeś, czy gracz jest w danym samochodzie, którego jeszcze nie znałeś ($CAR).

___________________
Administrator
Postów: 207 Dołączył: 2009-03-18
#
Ech nadal nie działa.

___________________
Poprzedni 1 2 Następny
Zaloguj się lub zarejestruj się, żeby pisać na forum.
Created & Powered by MakG