You are not logged in.
Pages: 1
Разработал библиотеку, назвал fastDev. Позволяет делать некоторые вещи гораздо быстрее.
Developed a library called fastDev. With it you can develop some things really faster.[---]Examples|Примеры:
0AB1: @mk_car 5 params model #TURISMO coords 2488.56 -1666.84 13.5 angle 180.0 store to 0@ //make car 0AB1: @mk_act 6 params model #ARMY pedtype 4 coords 2485.56 -1666.84 13.5 angle 180.0 store to 1@ //make actor 0AB1: @mk_act_in_car 4 params model #ARMY pedtype 4 car 0@ seat -1 store to 2@ //make actor in car 0AB1: @mk_act_in_car 4 params model #ARMY pedtype 4 car 0@ seat 0 store to 3@ 0AB1: @give_weap 4 params model #M4 weapon 31 ammo 99999 actor 1@ //give weapon to actor 0AB1: @give_weap 4 params model #M4 weapon 31 ammo 99999 actor 2@ 0AB1: @give_weap 4 params model #M4 weapon 31 ammo 99999 actor 3@ 0AB1: @mk_weap_pickup 6 params #GRENADE type 2 ammo 99999 at 2488.0 -1666.0 13.4 store to 0@ //grenade pickup 0AB1: @derail 1 params train 0@
[---]Source code|Исходник:
{ Создаёт тачку. 0AB1: @mk_car 5 params model #TURISMO coords 2488.56 -1666.84 13.5 angle 180.0 store to 0@ } :mk_car Model.Load(0@) 038B: load_requested_models while 8248: not model 0@ available wait 10 end 5@ = Car.Create(0@, 1@, 2@, 3@) Model.Destroy(0@) Car.Angle(5@) = 4@ 0AB2: ret 1 5@ { Создаёт актёра. 0AB1: @mk_act 6 params model #ARMY pedtype 4 coords 2485.56 -1666.84 13.5 angle 180.0 store to 1@ } :mk_act Model.Load(0@) 038B: load_requested_models while 8248: not model 0@ available wait 10 end 6@ = Actor.Create(1@, 0@, 2@, 3@, 4@) Model.Destroy(0@) Actor.Angle(6@) = 5@ 0AB2: ret 1 6@ { Создаёт актёра в авто. 0AB1: @mk_act_in_car 4 params model #ARMY pedtype 4 car 0@ seat 0 store to 1@ } :mk_act_in_car Model.Load(0@) 038B: load_requested_models while 8248: not model 0@ available wait 10 end if 3@ == -1 then 0129: 4@ = create_actor_pedtype 1@ model 0@ in_car 2@ driverseat else 01C8: 4@ = create_actor_pedtype 1@ model 0@ in_car 2@ passenger_seat 3@ end Model.Destroy(0@) 0AB2: ret 1 4@ { Даёт оружие. 0AB1: @give_weap 4 params model #M4 weapon 31 ammo 99999 actor 1@ } :give_weap Model.Load(0@) 038B: load_requested_models while 8248: not model 0@ available wait 10 end 01B2: give_actor 3@ weapon 1@ ammo 2@ Model.Destroy(0@) 0AB2: ret 0 { Создаёт пикап. 0AB1: @mk_weap_pickup 6 params #GRENADE type 2 ammo 99999 at 2488.0 -1666.0 13.4 store to 0@ } :mk_weap_pickup Model.Load(0@) 038B: load_requested_models while 8248: not model 0@ available wait 10 end 032B: 10@ = create_weapon_pickup 0@ type 1@ ammo 2@ at 3@ 4@ 5@ Model.Destroy(0@) 0AB2: ret 1 10@ { Сводит поезд с рельс. 0AB1: @derail 1 params train 0@ } :derail {0A97: 1@ = car 0@ struct while 1@ <> 0 0A8E: 2@ = 1@ + 0x40 // int 0A8E: 3@ = 1@ + 0x5B9 // int 0A8D: 4@ = read_memory 2@ size 4 virtual_protect 0 0A8D: 5@ = read_memory 3@ size 1 virtual_protect 0 08C3: clear 4@ bit 2 08C3: clear 4@ bit 17 08BD: set 5@ bit 0 0A8C: write_memory 2@ size 4 value 4@ virtual_protect 0 0A8C: write_memory 3@ size 1 value 5@ virtual_protect 0 1@ += 0x5D4 0A8D: 1@ = read_memory 1@ size 4 virtual_protect 0 end} 06DE: 0@ = get_train 0@ last_carriage_handle 0A97: 1@ = car 0@ struct while 1@ <> 0 0A8E: 2@ = 1@ + 0x40 // int 0A8E: 3@ = 1@ + 0x5B9 // int 0A8D: 4@ = read_memory 2@ size 4 virtual_protect 0 0A8D: 5@ = read_memory 3@ size 1 virtual_protect 0 08C3: clear 4@ bit 2 08C3: clear 4@ bit 17 08BD: set 5@ bit 0 0A8C: write_memory 2@ size 4 value 4@ virtual_protect 0 0A8C: write_memory 3@ size 1 value 5@ virtual_protect 0 1@ += 0x5D0 0A8D: 1@ = read_memory 1@ size 4 virtual_protect 0 wait 100 end 0AB2: ret 0
Просто сохраните этот код и включите его в MAIN с помощью директивы {$I}
Just save this code and include it into MAIN with directive {$I}[---]Changelog|Список изменений:
[large]1.0[/large]
Добавил пикапы.
[large]0.9[/large]
Поставил везде где надо load requested models, работает быстрее. Добавил код сноса поезда с рельсов.Вагоны сводятся по очереди с конца состава. Кто хочет с начала - раскомментируйте закомментированный код в :derail_train, а не закомментированный - уберите.
[large]0.8[/large]
(nothing)[---]
Enjoy
Last edited by ~AquaZ~ (13-06-2011 12:30)
Offline
Offline
Рад, что тебе пригодилось
Last edited by ~AquaZ~ (07-01-2011 21:43)
Offline
Обновил код.
Offline
Вещь конечно отличная, но в клео скриптинге не прокатит. Ведь не будет же каждый изменять майн для того что бы заработал скрипт.
А так +1 за старание и +1 за реализацию.
Специально для тех, кто не умеет читать по английски. Мой ник читается как "ГИР"!!!
Народная мудрость:
Прежде чем задавать вопросы,ПОЧИТАЙ СПРАВКУ!!!!
Offline
На использование в КЛЕО и намёка нет. А вот в мэйне, особенно на миссиях, время и нервы экономит.
Offline
На использование в КЛЕО и намёка нет. А вот в мэйне, особенно на миссиях, время и нервы экономит.
Ну вот я и говорю: +1 за старание
Специально для тех, кто не умеет читать по английски. Мой ник читается как "ГИР"!!!
Народная мудрость:
Прежде чем задавать вопросы,ПОЧИТАЙ СПРАВКУ!!!!
Offline
Это не будет работать в CLEO-миссиях, но в простых cs CLEO-скриптах будет работать!
{$CLEO} {$I testinclude.txt} wait 10000 04C4: store_coords_to 1@ 2@ 3@ from_actor $Player_Actor with_offset 0.0 3.0 1.0 0AB1: @mk_car 5 params model #TURISMO coords 1@ 2@ 3@ angle 180.0 store to 0@ //make car Car.RemoveReferences(0@) 0A93: end_custom_thread
jump @tesinclude_end :mk_car Model.Load(0@) 038B: load_requested_models while 8248: not model 0@ available wait 10 end 5@ = Car.Create(0@, 1@, 2@, 3@) Model.Destroy(0@) Car.Angle(5@) = 4@ 0AB2: ret 1 5@ :mk_act Model.Load(0@) 038B: load_requested_models while 8248: not model 0@ available wait 10 end 6@ = Actor.Create(1@, 0@, 2@, 3@, 4@) Model.Destroy(0@) Actor.Angle(6@) = 5@ 0AB2: ret 1 6@ :mk_act_in_car Model.Load(0@) 038B: load_requested_models while 8248: not model 0@ available wait 10 end if 3@ == -1 then 0129: 4@ = create_actor_pedtype 1@ model 0@ in_car 2@ driverseat else 01C8: 4@ = create_actor_pedtype 1@ model 0@ in_car 2@ passenger_seat 3@ end Model.Destroy(0@) 0AB2: ret 1 4@ :give_weap Model.Load(0@) 038B: load_requested_models while 8248: not model 0@ available wait 10 end 01B2: give_actor 3@ weapon 1@ ammo 2@ Model.Destroy(0@) 0AB2: ret 0 :derail {0A97: 1@ = car 0@ struct while 1@ <> 0 0A8E: 2@ = 1@ + 0x40 // int 0A8E: 3@ = 1@ + 0x5B9 // int 0A8D: 4@ = read_memory 2@ size 4 virtual_protect 0 0A8D: 5@ = read_memory 3@ size 1 virtual_protect 0 08C3: clear 4@ bit 2 08C3: clear 4@ bit 17 08BD: set 5@ bit 0 0A8C: write_memory 2@ size 4 value 4@ virtual_protect 0 0A8C: write_memory 3@ size 1 value 5@ virtual_protect 0 1@ += 0x5D4 0A8D: 1@ = read_memory 1@ size 4 virtual_protect 0 end} 06DE: 0@ = get_train 0@ last_carriage_handle 0A97: 1@ = car 0@ struct while 1@ <> 0 0A8E: 2@ = 1@ + 0x40 // int 0A8E: 3@ = 1@ + 0x5B9 // int 0A8D: 4@ = read_memory 2@ size 4 virtual_protect 0 0A8D: 5@ = read_memory 3@ size 1 virtual_protect 0 08C3: clear 4@ bit 2 08C3: clear 4@ bit 17 08BD: set 5@ bit 0 0A8C: write_memory 2@ size 4 value 4@ virtual_protect 0 0A8C: write_memory 3@ size 1 value 5@ virtual_protect 0 1@ += 0x5D0 0A8D: 1@ = read_memory 1@ size 4 virtual_protect 0 wait 100 end 0AB2: ret 0 :tesinclude_end
Главное НЕ скомпилировать случайно вместо скрипта сам этот инклуд testinclude.txt.
Last edited by VcSaJen (09-01-2011 05:59)
[small][/small]
Offline
@VcSaJen - Ох и любишь же ты работать с внешними файлами.....
Специально для тех, кто не умеет читать по английски. Мой ник читается как "ГИР"!!!
Народная мудрость:
Прежде чем задавать вопросы,ПОЧИТАЙ СПРАВКУ!!!!
Offline
@VcSaJen - Ох и любишь же ты работать с внешними файлами.....
А что, я тоже. Как начну делать мод - все миссии будут во внешних файлах. Блин, а начну ли я его делать?..:crazy:
Offline
Pages: 1