You are not logged in.
Какой программой можно определить координаты у объекта например кирпича...
Ну тоесть например машина(это объект) так как можно определить у неё координаты левой двери
~Надо уметь жить~
~1 правило хакера - не убей и не повреди без особой нужды~
Offline
2d88:
Нашёл туррет
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:
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
Вот те мультик
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!
[---]
Почему здесь текстуры выводятся как серые квадраты (или вообще не выводятся)?
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 - в его теле не хватает опкода
03F0: enable_text_draw 1
так же проверь переменную TmpVar - там должно быть целое значение
Offline
каким опкодом можно посмотреть
1. скорость машины
2. количество эффектов в определённой зоне
и ещё чем можно наконец
1. ОПРЕДЕЛИТЬ КООРДИНАТЫ ОПРЕДЕЛЁННОЙ ТОЧКИ У ОБЪЕКТА(МАШИНЫ,АКТОРА)
~Надо уметь жить~
~1 правило хакера - не убей и не повреди без особой нужды~
Offline
1. скорость машины
Набрав в поиске опкодов "car speed", получаем то, что нужно:
02E3: 188@ = car 59@ speed
1. ОПРЕДЕЛИТЬ КООРДИНАТЫ ОПРЕДЕЛЁННОЙ ТОЧКИ У ОБЪЕКТА(МАШИНЫ,АКТОРА)
Насколько понял, нужно определить координаты в системе отсчета, связанной с объектом/машиной/актёром. Делается это опкодами из серии "store coords with offset":
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:
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":
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
Да нет, вот например команда
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}
Вот код
// 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. Максимальная скорость...
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:
Почему текстуры не выводятся?
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.
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:
Почему текстуры не выводятся?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
2flashTrash:
{$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_num1 038F: request_texture 'num_1n' as tx_num1N 038F: request_texture 'num_2' as tx_num2 038F: request_texture 'num_2n' as tx_num2N 038F: request_texture 'num_3' as tx_num3 038F: request_texture 'num_3n' as tx_num3N 038F: request_texture 'num_4' as tx_num4 038F: request_texture 'num_4n' as tx_num4N 038F: request_texture 'num_5' as tx_num5 038F: request_texture 'num_5n' as tx_num5N 038F: request_texture 'num_off' as tx_numOff 038F: request_texture 'arr1' as tx_arr1 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. Максимальная скорость...
00AD: set_car 22@ max_speed_to 10.0
С машиной игрока не работает.
Offline
2flashTrash:
038F: request_texture 'num_b' as tx_numB 038F: request_texture 'num_bn' as tx_numBN 038F: request_texture 'num_1' as tx_num1 038F: request_texture 'num_1n' as tx_num1N 038F: request_texture 'num_2' as tx_num2 038F: request_texture 'num_2n' as tx_num2N 038F: request_texture 'num_3' as tx_num3 038F: request_texture 'num_3n' as tx_num3N 038F: request_texture 'num_4' as tx_num4 038F: request_texture 'num_4n' as tx_num4N 038F: request_texture 'num_5' as tx_num5 038F: request_texture 'num_5n' as tx_num5N 038F: request_texture 'num_off' as tx_numOff 038F: request_texture 'arr1' as tx_arr1 038F: request_texture 'arr1n' as tx_arr1N
Так, а чему равны всякие tx_numB'ы? Они должны быть равны целому числу, это будет их идентификатор.
Еще лучше сделать вместо
000A: 0@ += 1 0019: 0@ > 255 004D: jump_if_false @Noname_128
так, чтобы переменная не вылезала за рамки
if 0@ < 255 jf @Noname_18E 0@ += 1 goto @Noname_128
Offline