You are not logged in.
Pages: 1
Подскажите плиз, как можно проверить столкнулась ли машина с чем либо?
Нашел тоько вот этот опкод:
0897: car 96@ collided_with_object 282@(42@,10i)
ой ну я стормозил...
Den_spb большое тебе спасибо)
Вот смотри, даже скриншот прилепил)
0A97: 2@ = car 1@ struct 0A8E: 3@ = 2@ + 68 // int 0A8E: 4@ = 3@ + 72 // int 0A8D: 3@ = read_memory 3@ size 4 virtual_protect 0 0A8D: 3@ = read_memory 4@ size 4 virtual_protect 0 0604: get_Z_angle_for_point 3@ 4@ store_to 5@ // возвращает угол между вектором {x;y} и глобальной осью Y 0092: 7@ = float 5@ to_integer 03F0: enable_text_draw 1 03E3: set_texture_to_be_drawn_antialiased 1 038D: draw_texture 44 position 320.00 407.40 size 180.0 176.13 RGBA 255 255 255 255 03E3: set_texture_to_be_drawn_antialiased 1 074B: draw_texture 45 position 320.00 407.40 size 180.0 177.13 angle 5@ RGBA 255 255 255 255 03E3: set_texture_to_be_drawn_antialiased 1 0340: set_text_draw_RGBA 180 180 180 255 033F: set_text_draw_letter_size 0.7 2.6 045A: draw_text_1number 320.00 407.40 GXT 'NUMBER' number 5@
Den_spb Опкод
0604: get_Z_angle_for_point 2@ 3@ store_to 4@
возвращает постоянное число 270, которое всю игру одно и тоже, и от этого числа отнимаешь угол машины. Я ещё новичок и жестко туплю, но если вычислять угол между вектором скорости и направлением машины, угол должен быть не больше ±90 градусов.
Зачем нужно отнимать угол машины? Проблема в опкоде 0604, или я такой дурак, что он мне всегда выдает 270?
Заменил на локальные, заметил что число меняется, но на очень маленькие числа, гдето около миллионных или даже бальше.
car.StorePos(1@,$X,$Y,$Z) 0A8E: 4@ = $Y + 72.00 0604: get_Z_angle_for_point 4@ $Y store_to 5@
Селал вот так, но вычисления дают постоянное число. $Y и 4@ изменяются, проверял, а вот число после вычислений опкодом всегда одно...
Просмотрел все опкоды со словом car, вектора скорости вроде как нет. Нашел вот эти опкоды:
06BE: 274@ = car 95@ y_angle car.StorePos($Car,$X,$Y,$Z) - записать координаты машины в переменные $X, $Y и $Z 077D: $7513 = car 35@ x_angle 083F: get_car 35@ vertical_deviation_to $7522
Как можно вычислиь
[q]угол отклонения продольной оси машины от вектора её скорости[/q] ?
Прошу прощенья за возможно глупый вопрос, заранее спасибо.
Проблема в том, что мне надо заставить стрелку двигаться с одним углом, как и машина, а так она стоит в одной позиции, которую мы задали. Как можно сделать, чтобы данные обновлял каждую секунду, ну или после нажатия на кнопки поворота??
Прошу помочь в написании скрипта. Смысл в том, что нужно отображать угол поворота на экране. График олжен поддерживать токо половину круга. Как вывести угол я разобрался, но как сделать так, чтобы Показывало только угол в зоне от (90;270)?? Стрелка показывающая угол, направлена вверх (в игре 180 градусов), при повороте направо отклоняется направо, налево-налево, потом возвращается в начальную позицию.
Вот, настрочил, но не хочет отображаться(знаю, что оч коряво, я новичок):
{$CLEO} 0000: :DRIFT1 wait 0 if and Actor.Driving($PLAYER_ACTOR) $ACTIVE_INTERIOR == 0 0038: $ONMISSION == 0 84C8: not actor $PLAYER_ACTOR driving_flying_vehicle 84A7: not actor $PLAYER_ACTOR driving_boat jf @DRIFT1 0811: 1@ = actor $PLAYER_ACTOR car 0390: load_txd_dictionary 'DRIFT' 038F: load_texture "grad" as 44 038F: load_texture "ukaz" as 45 wait 1000 jump @DRIFT4 :DRIFT4 wait 0 if and Actor.Driving($PLAYER_ACTOR) $ACTIVE_INTERIOR == 0 jf @DRIFT3 0174: 18@ = car 1@ Z_angle 0092: 27@ = float 18@ to_integer while true wait 0 if 27@ > 180 then if 27@ < 270 then 0092: 16@ = float 27@ to_integer Break else if 27@ < 360 then 0A8F: 16@ = 27@ - 90.00 Break else 16@ = 180.00 Break end else 0A8F: 16@ = 27@ + 90.00 Break end end end wait 0 03F0: enable_text_draw 1 03E3: set_texture_to_be_drawn_antialiased 1 038D: draw_texture 44 position 320.00 407.40 size 180.0 176.13 RGBA 255 255 255 255 03E3: set_texture_to_be_drawn_antialiased 1 074B: draw_texture 45 position 320.00 407.40 size 180.0 177.13 angle 16@ RGBA 255 255 255 255 03E3: set_texture_to_be_drawn_antialiased 1 0340: set_text_draw_RGBA 180 180 180 255 033F: set_text_draw_letter_size 0.7 2.6 045A: draw_text_1number 320.00 407.40 GXT 'NUMBER' number 27@ jump @DRIFT4 :DRIFT3 wait 0 03F0: enable_text_draw 0 0391: release_txd_dictionary jump @DRIFT1 end_thread
Pages: 1