You are not logged in.
Какой программой можно определить координаты у объекта например кирпича...
Ну тоесть например машина(это объект) так как можно определить у неё координаты левой двери
~Надо уметь жить~
~1 правило хакера - не убей и не повреди без особой нужды~
Offline
2d88:
Нашёл туррет
1 | 0464: put_actor $2485 into_turret_on_car $2468 at_car_offset 0.4242 - 0.0679 1.1322 position 3 angle 270.0 with_weapon 27 |
, а вот driveby нету...
2GTASA:
Хоть 255 255 255, нифига текстура не выводится...
Last edited by ~AquaZ~ (24-04-2010 07:15)
Offline
2 d88:
1 | 04A2: set_heli 0@ fly_to 1@ 2@ 12.0 altitude_between 12.0 and 12.0 |
2 all:
Почему текстура может не выводиться или выводится как серый квадрат?
Last edited by ~AquaZ~ (24-04-2010 19:01)
Offline
Учёл, что последние два параметра - высота?
Offline
Загрузил, вроде не выгружал... А можно как-нибудь проверить на загруженность?
Offline
Учёл, что последние два параметра - высота?
Ну да, вот так
04A2: set_heli 50@ fly_to 197.4164 1907.6439 17.6406 altitude_between 17.0 and 17.0
Только он не держится на этой высоте, а всё равно поднимается вверх.
Может ему мотор отключить? Только забыл какой код. Этот что ли
0ABF: set_vehicle 50@ engine_state_to 0 ?
Offline
Вот те мультик
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | Player.CanMove( $PLAYER_CHAR , 0) 02A3: enable_widescreen 1 0AB1: @mk_car 5 params model #SEASPAR coords 200.0 2000.0 150.0 angle 0 store to 0@ 0825: set_helicopter 0@ instant_rotor_start Car.SetImmunities( 0@ , 1, 1, 1, 1, 1) 036A: put_actor $PLAYER_ACTOR in_car 0@ 04A2: set_heli 0@ fly_to 197.4164 1907.6439 17.0 altitude_between 17.0 and 17.0 while true if 01AD: car 0@ sphere 0 near_point 197.4164 1907.6439 radius 50.0 50.0 then Break end wait 1000 end wait 10000 02D4: car 0@ turn_off_engine 02A3: enable_widescreen 0 Player.CanMove( $PLAYER_CHAR , 1) |
Правда надо перед выключением движка выровняться, но не стал делать.
0AB1: @mk_car 5 params model #SEASPAR coords 200.0 2000.0 150.0 angle 0 store to 0@ - команда библиотеки fastDev!
[---]
Почему здесь текстуры выводятся как серые квадраты (или вообще не выводятся)?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 | const //... tx_tah = 115 tx_spd = 116 tah_posX = 280.0 spd_posX = 400.0 TahSpdPosY = 350.0 TahSpdScale = 120.0 TmpVar = 0@ end :GASvis wait 100 if Player.Defined( $PLAYER_CHAR ) Jf @GASvis if Actor.Driving( $PLAYER_ACTOR ) Jf @GASvis 0390: load txd 'gas' //... Jump @Slow //... :Slow gosub @LoadCarTX 038F: request_texture 'tah90' as tx_tah 038F: request_texture 'spd270' as tx_spd 03E3: set_texture_to_be_drawn_antialiased 1 038D: draw_texture tx_tah position tah_posX TahSpdPosY scale TahSpdScale TahSpdScale colour 255 255 255 alpha 0 03E3: set_texture_to_be_drawn_antialiased 1 038D: draw_texture tx_spd position spd_posX TahSpdPosY scale TahSpdScale TahSpdScale colour 255 255 255 alpha 0 for TmpVar = 1 to 255 074B: texture tx_tah position tah_posX TahSpdPosY scale TahSpdScale TahSpdScale rotation 0 colour 255 255 255 alpha TmpVar 074B: texture tx_spd position spd_posX TahSpdPosY scale TahSpdScale TahSpdScale rotation 0 colour 255 255 255 alpha TmpVar end repeat wait 100 until not Actor.Driving( $PLAYER_ACTOR ) Jump @Clean :is_fast if Actor.DrivingVehicleType( $PLAYER_ACTOR , #VOODOO ) then 0485: return_true end 059A: return_false return :LoadCarTX //... return :Clean 0391: release txd Jump @GASvis |
Last edited by ~AquaZ~ (25-04-2010 08:01)
Offline
Почему здесь текстуры выводятся как серые квадраты (или вообще не выводятся)?
Скорее всего ошибка в цикле for - в его теле не хватает опкода
1 | 03F0: enable_text_draw 1 |
так же проверь переменную TmpVar - там должно быть целое значение
Offline
каким опкодом можно посмотреть
1. скорость машины
2. количество эффектов в определённой зоне
и ещё чем можно наконец
1. ОПРЕДЕЛИТЬ КООРДИНАТЫ ОПРЕДЕЛЁННОЙ ТОЧКИ У ОБЪЕКТА(МАШИНЫ,АКТОРА)
~Надо уметь жить~
~1 правило хакера - не убей и не повреди без особой нужды~
Offline
1. скорость машины
Набрав в поиске опкодов "car speed", получаем то, что нужно:
1 | 02E3: 188@ = car 59@ speed |
1. ОПРЕДЕЛИТЬ КООРДИНАТЫ ОПРЕДЕЛЁННОЙ ТОЧКИ У ОБЪЕКТА(МАШИНЫ,АКТОРА)
Насколько понял, нужно определить координаты в системе отсчета, связанной с объектом/машиной/актёром. Делается это опкодами из серии "store coords with offset":
1 2 3 | 0400: store_coords_to 20@ 21@ 22@ from_object 9@ with_offset 17@ 18@ 19@ 0407: store_coords_to 120@ 130@ 140@ from_car 543@ with_offset - 0.337 1.566 0.657 04C4: store_coords_to $TEMPVAR_FLOAT_1 $TEMPVAR_FLOAT_2 $TEMPVAR_FLOAT_3 from_actor 215@ with_offset 1.0 3.0 1.0 |
Offline
2flashTrash:
1 2 3 4 5 6 7 8 9 10 | 03E3: set_texture_to_be_drawn_antialiased 1 038D: draw_texture tx_tah position tah_posX TahSpdPosY scale TahSpdScale TahSpdScale colour 255 255 255 alpha 255 03E3: set_texture_to_be_drawn_antialiased 1 038D: draw_texture tx_spd position spd_posX TahSpdPosY scale TahSpdScale TahSpdScale colour 255 255 255 alpha 255 TmpVar = 1 for TmpVar = 1 to 255 03F0: enable_text_draw 1 074B: texture tx_tah position tah_posX TahSpdPosY scale TahSpdScale TahSpdScale rotation 0 colour 255 255 255 alpha TmpVar 074B: texture tx_spd position spd_posX TahSpdPosY scale TahSpdScale TahSpdScale rotation 0 colour 255 255 255 alpha TmpVar end |
Не выводит вообще...
Offline
Насколько понял, нужно определить координаты в системе отсчета, связанной с объектом/машиной/актёром. Делается это опкодами из серии "store coords with offset":
1230400: store_coords_to
20@
21@
22@
from_object
9@
with_offset
17@
18@
19@
0407: store_coords_to
120@
130@
140@
from_car
543@
with_offset -
0.337
1.566
0.657
04C4: store_coords_to
$TEMPVAR_FLOAT_1
$TEMPVAR_FLOAT_2
$TEMPVAR_FLOAT_3
from_actor
215@
with_offset
1.0
3.0
1.0
Да нет, вот например команда
0464: put_actor $2485 into_turret_on_car $2468 at_car_offset X X X position 3 angle 270.0 with_weapon 27
и там где X X X нужно определить...ну например у машины есть дверь а как у этой машины определить координаты двери...какой программой чтобы не гадать и перебирать...
кстати ща делал скрипт типа "ядерная бомба"...
И не понимаю ну что нужно этой {censored}
Вот код
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 | // This file was decompiled using SASCM.INI published by Seemann (http://sannybuilder.com/files/SASCM.rar) on 13.10.2007 {$VERSION 3.1.0027} {$CLEO .cs} //-------------MAIN--------------- 0000: NOP :NONAME_2 0001: wait 0 ms 0247: load_model #CELLPHONE 038B: load_requested_models 00D6: if 0AB0: key_pressed 88 004D: jump_if_false @NONAME_2 0000: NOP 04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 0729: AS_actor $PLAYER_ACTOR hold_cellphone 1 0001: wait 5000 ms 0729: AS_actor $PLAYER_ACTOR hold_cellphone 0 0001: wait 0 ms 0169: set_fade_color_RGB 255 255 255 0489: set_actor $PLAYER_ACTOR muted 1 016A: fade 0 time 500 0001: wait 1500 ms 0489: set_actor $PLAYER_ACTOR muted 0 016A: fade 1 time 500 000B: 3@ += 50.0 024F: create_corona_with_radius 25 type 2 lensflares 1 with_color 255 255 255 at 1@ 2@ 3@ 000F: 3@ -= 50.0 :NONAME_180 0001: wait 0 ms 0001: wait 50 ms 00D6: if 0005: $RADIUS = 1500.0 004D: jump_if_false @NONAME_355 0009: $RADIUS += 15.0 03BC: $SHOCKWAVE = create_sphere_at 1@ 2@ 3@ radius $RADIUS 08E5: get_actor_in_sphere 1@ 2@ 3@ radius 10.0 handle_as 33@ 00D6: if 056D: actor 33@ defined 004D: jump_if_false @NONAME_291 000B: 9@ += 35.0 0321: kill_actor 33@ 01C2: remove_references_to_actor 33@ // Like turning an actor into a random pedestrian :NONAME_291 073E: get_car_in_sphere 1@ 2@ 3@ radius 10.0 model - 1 handle_as 33@ 00D6: if 056E: car 33@ defined 004D: jump_if_false @NONAME_180 000B: 8@ += 500.0 020B: explode_car 33@ // versionA 01C3: remove_references_to_car 33@ // Like turning a car into any random car 0002: jump @NONAME_180 :NONAME_355 0001: wait 0 ms 0109: player $PLAYER_ACTOR money += 8@ 0109: player $PLAYER_ACTOR money += 9@ 0002: jump @NONAME_2 004E: end_thread |
так вот интересует опкод 03BC: $SHOCKWAVE = create_sphere_at 1@ 2@ 3@ radius $RADIUS
Я думаю что это создаёт какую то зону...например что туды попадёт то подыхает или взрывается...
но видимо не тот опкод, можете подсказать какой опкод создаёт типа своей зоны с определённым радиусов, координатами и.т.д.???
Last edited by CLEO Xakep (26-04-2010 02:53)
~Надо уметь жить~
~1 правило хакера - не убей и не повреди без особой нужды~
Offline
Как изменить максимальную скорость и ускорение машины игрока?
Offline
Как изменить максимальную скорость и ускорение машины игрока?
пробуй этими опкодами...
1. Максимальная скорость...
1 | 00AD: set_car 22@ max_speed_to 10.0 |
А ускорение незнаю...но можно изменить если прогой GTA:SA Ultimate Editor там ищи нужную машину и в поле Engine Acceleration вводи ускорение(есть ограничение от 0,0 до 10,0)
~Надо уметь жить~
~1 правило хакера - не убей и не повреди без особой нужды~
Offline
2CraZZZy-GameRRR:
handling.cfg
2all:
Почему текстуры не выводятся?
1 2 3 4 5 6 7 8 9 10 | 03E3: set_texture_to_be_drawn_antialiased 1 038D: draw_texture tx_tah position tah_posX TahSpdPosY scale TahSpdScale TahSpdScale colour 255 255 255 alpha 255 03E3: set_texture_to_be_drawn_antialiased 1 038D: draw_texture tx_spd position spd_posX TahSpdPosY scale TahSpdScale TahSpdScale colour 255 255 255 alpha 255 TmpVar = 1 for TmpVar = 1 to 255 03F0: enable_text_draw 1 074B: texture tx_tah position tah_posX TahSpdPosY scale TahSpdScale TahSpdScale rotation 0 colour 255 255 255 alpha TmpVar 074B: texture tx_spd position spd_posX TahSpdPosY scale TahSpdScale TahSpdScale rotation 0 colour 255 255 255 alpha TmpVar end |
Offline
Координаты всех компонентов лежат в VehicleStruct.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | struct VehicleStruct_ 2 { D3DVECTOR _f0; CQuaternion q; int _f1C; } ; struct CVehicleStruct { CVehicleStruct (); ~CVehicleStruct (); void * operator new (size_t); void operator delete (void * ptr); D3DVECTOR _f00[15]; VehicleStruct_2 _fB4[18]; CAtomic * atomics[6]; BYTE atomicCount; BYTE _f30D; WORD _f30E; DWORD _f310; // component present or component renderable mask } ; |
Для простых неподвижных компонентов - это _f00, по индексу компонента.
Для подвижных компонентов - в _fB4 (quaternion переводится в матрицу трансформации относительно LTM)
Насчет индексов колес/дверей - еще не копал, т.е. это задачка не на пять минут (интересующиеся могут самостоятельно залезть в preprocessHierarchy)
Offline
всё теперь знаю как определить....
3DS Max 7 тут нужен будет как никак...всмысле со 2 главой 1 вопросом(о координатах)...
А что насчёт атомной бомбы
~Надо уметь жить~
~1 правило хакера - не убей и не повреди без особой нужды~
Offline
2all:
Почему текстуры не выводятся?
1234567891003E3: set_texture_to_be_drawn_antialiased
1
038D: draw_texture tx_tah position tah_posX TahSpdPosY scale TahSpdScale TahSpdScale colour
255
255
255
alpha
255
03E3: set_texture_to_be_drawn_antialiased
1
038D: draw_texture tx_spd position spd_posX TahSpdPosY scale TahSpdScale TahSpdScale colour
255
255
255
alpha
255
TmpVar =
1
for
TmpVar =
1
to
255
03F0: enable_text_draw
1
074B: texture tx_tah position tah_posX TahSpdPosY scale TahSpdScale TahSpdScale rotation
0
colour
255
255
255
alpha TmpVar
074B: texture tx_spd position spd_posX TahSpdPosY scale TahSpdScale TahSpdScale rotation
0
colour
255
255
255
alpha TmpVar
end
Так по приведенному куску всё правильно. Проверь имена текстур(может регистр влияет, хз), если всё в порядке, то приведи ВЕСЬ код, желательно с файлом текстур.
Offline
2flashTrash:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 | {$CLEO _} const //... tx_tah = 115 tx_spd = 116 tah_posX = 280.0 spd_posX = 400.0 TahSpdPosY = 350.0 TahSpdScale = 120.0 TmpVar = 0@ end 0000: :GASvis wait 100 if Player.Defined( $PLAYER_CHAR ) Jf @GASvis if Actor.Driving( $PLAYER_ACTOR ) Jf @GASvis 0390: load txd 'gas' if 04C8: actor $PLAYER_ACTOR driving_flying_vehicle then Jump @Fly end if Player.InRemoteMode( $PLAYER_CHAR ) then Jump @RC end if gosub @is_fast then Jump @Fast end if Actor.DrivingVehicleType( $PLAYER_ACTOR , #BMX ) Actor.DrivingVehicleType( $PLAYER_ACTOR , #BIKE ) Actor.DrivingVehicleType( $PLAYER_ACTOR , #MTBIKE ) then Jump @Bike end Jump @Slow :Fly //... :RC //... :Bike //... :Fast //... :Slow gosub @LoadCarTX 038F: request_texture 'tah90' as tx_tah 038F: request_texture 'spd270' as tx_spd 03E3: set_texture_to_be_drawn_antialiased 1 038D: draw_texture tx_tah position tah_posX TahSpdPosY scale TahSpdScale TahSpdScale colour 255 255 255 alpha 255 03E3: set_texture_to_be_drawn_antialiased 1 038D: draw_texture tx_spd position spd_posX TahSpdPosY scale TahSpdScale TahSpdScale colour 255 255 255 alpha 255 TmpVar = 1 for TmpVar = 1 to 255 03F0: enable_text_draw 1 074B: texture tx_tah position tah_posX TahSpdPosY scale TahSpdScale TahSpdScale rotation 0 colour 255 255 255 alpha TmpVar 074B: texture tx_spd position spd_posX TahSpdPosY scale TahSpdScale TahSpdScale rotation 0 colour 255 255 255 alpha TmpVar end repeat wait 100 until not Actor.Driving( $PLAYER_ACTOR ) Jump @Clean :is_fast if Actor.DrivingVehicleType( $PLAYER_ACTOR , #VOODOO ) then 0485: return_true end 059A: return_false return :LoadCarTX 038F: request_texture 'num_b' as tx_numB 038F: request_texture 'num_bn' as tx_numBN 038F: request_texture 'num_1' as tx_num 1 038F: request_texture 'num_1n' as tx_num1N 038F: request_texture 'num_2' as tx_num 2 038F: request_texture 'num_2n' as tx_num2N 038F: request_texture 'num_3' as tx_num 3 038F: request_texture 'num_3n' as tx_num3N 038F: request_texture 'num_4' as tx_num 4 038F: request_texture 'num_4n' as tx_num4N 038F: request_texture 'num_5' as tx_num 5 038F: request_texture 'num_5n' as tx_num5N 038F: request_texture 'num_off' as tx_numOff 038F: request_texture 'arr1' as tx_arr 1 038F: request_texture 'arr1n' as tx_arr1N return :Clean 0391: release txd Jump @GASvis |
И вот ещё вопрос: как спрятать текстуру?
И нужен ли text_draw в цикле?
Прилагаю TXD-шку.
Last edited by ~AquaZ~ (26-04-2010 11:37)
Offline
1. Максимальная скорость...
100AD: set_car
22@
max_speed_to 10.0
С машиной игрока не работает.
Offline
2flashTrash:
123456789101112131415038F: request_texture
'num_b'
as tx_numB
038F: request_texture
'num_bn'
as tx_numBN
038F: request_texture
'num_1'
as tx_num
1
038F: request_texture
'num_1n'
as tx_num1N
038F: request_texture
'num_2'
as tx_num
2
038F: request_texture
'num_2n'
as tx_num2N
038F: request_texture
'num_3'
as tx_num
3
038F: request_texture
'num_3n'
as tx_num3N
038F: request_texture
'num_4'
as tx_num
4
038F: request_texture
'num_4n'
as tx_num4N
038F: request_texture
'num_5'
as tx_num
5
038F: request_texture
'num_5n'
as tx_num5N
038F: request_texture
'num_off'
as tx_numOff
038F: request_texture
'arr1'
as tx_arr
1
038F: request_texture
'arr1n'
as tx_arr1N
Так, а чему равны всякие tx_numB'ы? Они должны быть равны целому числу, это будет их идентификатор.
Еще лучше сделать вместо
1 2 3 | 000A: 0@ += 1 0019: 0@ > 255 004D: jump_if_false @Noname_128 |
так, чтобы переменная не вылезала за рамки
1 2 3 4 5 | if 0@ < 255 jf @Noname_18E 0@ += 1 goto @Noname_128 |
Offline