You are not logged in.
Offline
Offline
А что это собственно такое? Это опкоды для зумирования камеры.
Незнаю, у меня их использование вот так рушит всю графику.
ЗЫ. Как можно сделать вход в меню карты по кнопке? Я добился того, что по нажатию кастом кнопки, меняя адрес в памяти вхожу в меню, проблема в том, что следующая часть кода, которая меняет Current menu id не срабатывает. Ну и соответственно хотелось бы выход из карты в игру по нажатию той же кнопки.
Offline
соответственно хотелось бы выход из карты в игру по нажатию той же кнопки.
Не получится такое сделать. Если ты делаешь скрипт - то он обрабатывается когда ты в игре, но не в меню. Если бы делал asi плагин, то мог бы реализовать и такое (только на кой чёрт оно нужно).
Это является ответом на твой первый вопрос о:
проблема в том, что следующая часть кода, которая меняет Current menu id не срабатывает.
Offline
соответственно хотелось бы выход из карты в игру по нажатию той же кнопки.
Не получится такое сделать. Если ты делаешь скрипт - то он обрабатывается когда ты в игре, но не в меню. Если бы делал asi плагин, то мог бы реализовать и такое (только на кой чёрт оно нужно).
Это является ответом на твой первый вопрос о:проблема в том, что следующая часть кода, которая меняет Current menu id не срабатывает.
Нужно чтобы направить вертолёт(или машину) по направлению к метке, причём не один раз, для облёта чего либо например. По быстрому вызову карты будет гораздо удобнее.
Offline
Ну так в чём проблема?
Заморозь игрока, выйди в меню. Далее (уже сам) нажми карта и поставь метку где надо. Если меню закрыто (есть опкод-проверка) то считывай координаты метки и делай с ней что хочешь.
Offline
Ну так в чём проблема?
Заморозь игрока, выйди в меню. Далее (уже сам) нажми карта и поставь метку где надо. Если меню закрыто (есть опкод-проверка) то считывай координаты метки и делай с ней что хочешь.
Да не, с этим то проблем нет, суть в том что если например нужно прилететь в одно место, постоять там, потом в другое и т.д. несколько раз, комбинация Карта - Метка - Возврат будет быстрее и удобнее, чем Меню - Карта - Метка - Меню - Возврат.
Кстати, нету простенького исходника какой-нибудь ASI, чтоб туда вписать подобный код?
Ибо с нуля мне не написать, а в исходниках больших модов разбираться долго.
0000: NOP 0A8D: 1@ = read_memory 0xBA67A4 size 4 virtual_protect 0 0A8D: 2@ = read_memory 0xBA68A4 size 4 virtual_protect 0 :Noname_16 wait 0 if and 1@ = 0 2@ = 0 0AB0: key_pressed 9 jf @Noname_17 //0A8C: write_memory 0xB7CB48 size 4 value 0x000100 virtual_protect 0 0A8C: write_memory 0xBA67A4 size 4 value 0x000001 virtual_protect 0 0A8C: write_memory 0xBA68A4 size 4 value 0x290501 virtual_protect 0 jump @Noname_16 :Noname_17 wait 0 if and 1@ = 0x000001 2@ = 0x290501 0AB0: key_pressed 9 //0A8C: write_memory 0xB7CB48 size 4 value 0x000000 virtual_protect 0 0A8C: write_memory 0xBA67A4 size 4 value 0x000000 virtual_protect 0 0A8C: write_memory 0xBA68A4 size 4 value 0x000000 virtual_protect 0 jump @Noname_16
По табу, появляется карта(причём реалтаймовая), правда отваливаются некоторые текстуры в меню(в примере видно по белому квадрату у курсора), и не работает мышь.
Как бы мышь пофиксить...
UPD. Done - http://sannybuilder.com/forums/viewtopi … 427#p12427
Last edited by Sergey81 (21-09-2010 09:01)
Offline
0332: set_actor 1@ bleeding_to 0
Эпитафия на могиле фидошника: "Меня видно?"
Offline
Как получить хэндл того, кто бьёт или среляет в актёра?
Offline
Функция возвращает в 1@ хендл актера, который атаковал актера $PLAYER_ACTOR.
0AB1: call_scm_func @GetActorDamagingPed 1 $PLAYER_ACTOR 1@
GetActorDamagingVehicle
записывает хендл машины, которая сбила актера.
GetVehicleDamagingPed
записывает хендл актера, который повредил машину
GetVehicleDamagingVehicle
записывает хендл машины, которая толкнула машину
{$CLEO} 0000: while true wait 0 if Player.Defined($PLAYER_CHAR) then {********************************************** есл и актера $PLAYER_ACTOR ранил другой актер, получаем хендл атаковавшего актера в 1@ **********************************************} if 031 D: actor $PLAYER_ACTOR hit_by_weapon 57 // 57 by any weapon then if 0AB1: call_scm_func @GetActorDamagingPed 1 $PLAYER_ACTOR 1@ then 0467: clear_actor $PLAYER_ACTOR last_weapon_damage // здесь с актером, который в вас стрелял, можно делать что угодно. его хендл в 1@ // например, подожжем!!!! 055D: make_player $PLAYER_CHAR fireproof 1 // это на всякий случай, можно убрать 0326: 9@ = create_actor 1@ fire end end {********************************************** если актера $PLAYER_ACTOR сбили машиной, получаем хендл сбившей машины в 1@ **********************************************} if 031D: actor $PLAYER_ACTOR hit_by_weapon 49 // 49 by vehicle then if 0AB1: call_scm_func @GetActorDamagingVehicle 1 $PLAYER_ACTOR 1@ then 0467: clear_actor $PLAYER_ACTOR last_weapon_damage // здесь с машиной, которая вас сбила, можно делать что угодно. ее хендл в 1@ // например, подожжем!!!! 055D: make_player $PLAYER_CHAR fireproof 1 // это на всякий случай, можно убрать 0325: 9@ = create_car 1@ fire end end if Actor.Driving($PLAYER_ACTOR) t hen 03C0: 0@ = actor $PLAYER_ACTOR car {********************************************** если машину 0@ повредили из оружия, получаем хендл атаковавшего актера в 1@ **********************************************} if 0 31E: car 0@ hit_by_weapon 57 then if 0AB1: call_scm_func @GetVehicleDamagingPed 1 0@ 1@ then 0468: clear_car 0@ last_weapon_damage // здесь с актером, который повредил машину, можно делать что угодно. его хендл в 1@ // например, подожжем!!!! 0326: 9@ = create_actor 1@ fire end end {****************************************** **** если машину 0@ толкнули другой машиной, получаем хендл толкнувшей машины в 1@ **********************************************} if 0 31E: car 0@ hit_by_weapon 49 then if 0AB1: call_scm_func @GetVehicleDamagingVehicle 1 0@ 1@ then 0468: clear_car 0@ last_weapon_damage // здесь с актером, который повредил машину, можно делать что угодно. его хендл в 1@ // например, подожжем!!!! 0325: 9@ = create_car 1@ fire end end {****************************************** ****} end end end :GetActorDamagingPed 0A96: 1@ = actor 0@ struct 1@ += 0x764 :TestPed 0A8D: 0@ = read_memory 1@ size 4 virtual_protect 0 if 0@ > 0 then 0A8D: 8@ = read_memory 0x00B74490 size 4 virtual_protect 0 0AA8: call_function_method 0x4442D0 struct 8@ num_params 1 pop 0 0@ 1@ if 056D: actor 1@ defined then 0AB2: ret 1 1@ end end 0AB2: ret 1 -1 :GetActorDamagingVehicle 0A96: 1@ = actor 0@ struct 1@ += 0x764 :TestVehicle 0A8D: 0@ = read_memory 1@ size 4 virtual_protect 0 if 0@ > 0 then 0A8D: 8@ = read_memory 0x00B74494 size 4 virtual_protect 0 0AA8: call_function_method 0x424160 struct 8@ num_params 1 pop 0 0@ 1@ if 056E: car 1@ defined then 0AB2: ret 1 1@ end end 0AB2: ret 1 -1 :GetVehicleDamagingPed 0A97: 1@ = car 0@ struct 1@ += 0x50C jump @TestPed :GetVehicleDamagingVehicle 0A97: 1@ = car 0@ struct 1@ += 0x50C jump @TestVehicle
Offline
Спасибо, GTASA!
Offline
@GTASA - может проще было дать ссылку?))
http://sannybuilder.com/forums/viewtopic.php?id=250
Offline
Сообщения в данной теме были выделены в отдельный топик
[WIP] Автосохранение
Offline
Как определить, к какой группе принадлежит актёр?
Offline
Нет, под группой я не pedtype имел ввиду, а когда несколько гангстеров вместе идут.
Offline
Если не ошибаюсь, он проверяет.
EDIT:
Ошибся, он устанавливает. Можно проверить присутствие игрока в какой-либо группе?
Last edited by Sw[ee]t (02-10-2010 07:30)
Offline
Offline
Как можно убрать дорожный трафик, т. е. что бы на дорогах не было машин?
SNKillers.net - всё о взломе и защите социальных сетей
Offline
Offline