Postów:
294
Dołączył:
2011-07-27
Napisano dnia: 2014-02-21 17:40:05
Mam pytanie, w jaki sposób można by usunąć szyby w samochodach? Chodzi mi o coś takiego że po wciśnięciu klawisza szyba się pojawi, lub zniknie. Chodzi mi zarówno o szybę przednią jak i szyby boczne, jak na tych screenach:
AUTO Z SZYBĄ
AUTO BEZ SZYBY
Oczywiście nie chodzi mi o całość skryptu, ale o to w jaki sposób odnieść się do szyb pojazdu.
Postów:
628
Dołączył:
2009-01-22
Napisano dnia: 2014-06-28 01:45:19
Jakiś czas temu się z tym bawiłem i znalazłem, jak robi to R*:
Kod:
:SET_WINDOW_OPEN_FLAG
0A97: 2@ = car
0@ struct
0AA6: call_method 0x6D3080 struct
2@ num_params 1 pop 0
1@
0AB2: ret 0
:CLEAR_WINDOW_OPEN_FLAG
0A97: 2@ = car
0@ struct
0AA6: call_method 0x6D30B0 struct
2@ num_params 1 pop 0
1@
0AB2: ret 0
Kod:
0AB1: call_scm_func
@SET_WINDOW_OPEN_FLAG 2 car
0@ window 8
0AB1: call_scm_func
@CLEAR_WINDOW_OPEN_FLAG 2 car
0@ window 10
ID okien to 8, 10, 9, 11. Wiem że 2 pierwsze to szyby w przednich drzwiach, ale nie pamiętam które to które.
___________________
Moderator
Postów:
294
Dołączył:
2011-07-27
Napisano dnia: 2014-06-28 16:22:36
Dzięki, przyda mi się. A wiesz może w jaki sposób sprawdzić, czy pojazd ma włączone światła? W sumie to trochę dziwne, że jeszcze nie ma opcodu sprawdzającego takie coś...
Postów:
628
Dołączył:
2009-01-22
Napisano dnia: 2014-06-28 16:53:56
Kod:
:VEHICLE_LIGHTS_ON
0A97: 1@ = car
0@ struct
0AA8: call_function_method 0x6D55C0 struct
1@ num_params 0 pop 0
2@
08B7: test
2@ bit 0
0AB2: ret 0
Funkcja działa jak warunek:
Kod:
if 0AB1: call_scm_func
@VEHICLE_LIGHTS_ON 1 vehicle
0@
then
___________________
Moderator
Postów:
294
Dołączył:
2011-07-27
Napisano dnia: 2014-06-28 19:28:31
Sprawdzałeś może tą funkcję? Bo u mnie to nie działa :D
Postów:
628
Dołączył:
2009-01-22
Napisano dnia: 2014-06-28 19:51:57
Sprawdziłem, zadziałała.
___________________
Moderator
Postów:
294
Dołączył:
2011-07-27
Napisano dnia: 2014-06-29 09:46:38
Chciałbym, aby po wciśnięciu klawisza "4" światła się wyłączały, lub włączały. Zastosowałem funkcję przedstawioną przez Ciebie powyżej i jeżeli światła były wyłączone to rzeczywiście się włączają, ale gdy były już włączone to nie chcą się wyłączyć. Mógłbyś powiedzieć mi co w poniższym kodzie zrobiłem źle:
Kod:
{
$CLEO}
0000: LIGHTS
while true
0001: wait 0 ms
if
00DF: actor
$PLAYER_ACTOR driving
then
03C0: 0@ = actor
$PLAYER_ACTOR car
if
0AB0: key_pressed 0x34
then
if
0AB1: call_scm_func
@VEHICLE_LIGHTS_ON 1 vehicle
0@
then
067F: set_car
0@ lights 1
0001: wait 500 ms
else
067F: set_car
0@ lights 2
0001: wait 500 ms
end
end
end
end
:VEHICLE_LIGHTS_ON
0A97: 1@ = car
0@ struct
0AA8: call_function_method 0x6D55C0 struct
1@ num_params 0 pop 0
2@
08B7: test
2@ bit 0
0AB2: ret 0