Скриптинг в Gta SA. Вопросы и ответы [x]
Как сделать так, чтобы какая нить тачка постоянно стояла в одном месте?
Открывешь main.txt, ищешь там строчку "create_thread", и вставляешь свой поток, например "create_thread @car1" (Без кавычек)
Затем ищешь строку --mission 0--, и НАД этой строкой пишешь название своего потока, вот как это выглядит:
:Car
<а здесь пишешь опкоды и команды>
---mission 0---
Чтобы поставить машину в опр. место, используй опкод:
014B: $217 = init_parked_car_generator #BF400 -1 -1 1 alarm 0 door_lock 0 0 10000 at 209.3484 321.1553 12.434 angle 178.0476
014C: set_parked_car_generator $217 cars_to_generate_to 30
А теперь разберем что и как :
014B-опкод
$217-переменная в которую заносится информация(может быть любое слово или число)
#BF400-модель машины
-1 -1 1-цвет(оставьте значение -1 -1 1 и цет машины будет всегда разный)
209.3484 321.1553 12.434-координаты, по которым будет установлена машина
angle 178.0476-угол поворота авто относительно Севера
014C-опять же опкод
set_parked_car_generator $217 cars_to_generate_to 30 - команда для появления машины, число 30 - процент успеха того, что она появится
Вот вроде вкратце объяснил..
Кто может подробно объяснить, как делать гаражи перекраски и тюнинга..? плиз! очень надо!
а ты глянь в моде player selection, на www.gta.ru есть.
Там вроде только тюнинг оставили.
В папке script может не быть main.txt, за то там по любому есть main.SCM, который ты можешь отрыть Sanny Builder'oм..
чтобы покатать cj'я в качестве пассажира, следует создать такой поток:
:PASSEHG
03A4: name_thread 'PASSEHG'
:PASSEHG_11
060A: unknown_create_entity 0 $12249
01C3: remove_references_to_car $11248
01C2: remove_references_to_actor $12246
01C2: remove_references_to_actor $12247
01C2: remove_references_to_actor $12248
:PASSEHG_38
0001: wait 50 ms
00D6: if and
810F: not player $2 wanted_level > 3
8449: not actor $3 in_a_car
00E1: key_pressed 0 11
0038: $409 == 0 // integer values
004D: jump_if_false @PASSEHG_38
04C4: create_coordinate $11247 $11246 $11245 from_actor $3 offset 3.75 3.75 0.0
04C4: create_coordinate $11244 $11243 $11245 from_actor $3 offset -3.7499 -3.7499 0.0
053E: $11248 = get_random_car_with_actors -1 in_area $11247 $11246 $11244 $11243
00D6: if
056E: carcass_of_car $11248 valid
004D: jump_if_false @PASSEHG_38
046C: $12246 = car $11248 driver
00D6: if
056D: carcass_of_actor $12246 valid
004D: jump_if_false @PASSEHG_11
00D6: if
056C: actor $12246 driving_police_vehicle
004D: jump_if_false @PASSEHG_245
01C0: $12244 = player $2 wanted_level
0008: $12244 += 1 // integer values
010D: set_player $2 wanted_level_to $12244
0001: wait 50 ms
0002: jump @PASSEHG_11
:PASSEHG_245
00D6: if and
8137: not car $11248 id == #BMX
8137: not car $11248 id == #BIKE
8137: not car $11248 id == #MTBIKE
84C8: not actor $3 driving_flying_vehicle
84A9: not actor $3 driving_helicopter
84A7: not actor $3 driving_boat
89AE: not actor $3 driving_train
004D: jump_if_false @PASSEHG_11
00A9: set_car $11248 to_normal_driver
060B: unknown_actor_use_entity $12246 $12249
0224: set_car $11248 health_to 1750
00AE: unknown_set_car $11248 to_ignore_traffic_lights 2
0004: $12250 = 0 // integer values
00D6: if
8431: not car $11248 car_passenger_seat_free 0
004D: jump_if_false @PASSEHG_493
00D6: if
0431: car $11248 car_passenger_seat_free 1
004D: jump_if_false @PASSEHG_418
0004: $12250 = 1 // integer values
0519: lock_vehicle $11248 in_current_position 1
0002: jump @PASSEHG_468
:PASSEHG_418
00D6: if
0431: car $11248 car_passenger_seat_free 2
004D: jump_if_false @PASSEHG_11
0004: $12250 = 2 // integer values
0519: lock_vehicle $11248 in_current_position 1
0432: $12247 = get_actor_handle_from_car $11248 passenger 1
060B: unknown_actor_use_entity $12247 $12249
:PASSEHG_468
0432: $12248 = get_actor_handle_from_car $11248 passenger 0
060B: unknown_actor_use_entity $12248 $12249
0002: jump @PASSEHG_500
:PASSEHG_493
0519: lock_vehicle $11248 in_current_position 1
:PASSEHG_500
05CA: AS_actor $3 enter_car $11248 passenger_seat $12250 -1 ms
0001: wait 50 ms
00D6: if
00E1: key_pressed 0 10
004D: jump_if_false @PASSEHG_592
:PASSEHG_534
0633: AS_actor $3 exit_vehicle
0519: lock_vehicle $11248 in_current_position 0
05D2: unknown_action_sequence $12246 $11248 20.0 2
0001: wait 100 ms
05C0: AS_actor $3 look_at_car $11248 5000 ms
06C9: remove_actor $12246 from_group
0001: wait 100 ms
0002: jump @PASSEHG_11
:PASSEHG_592
00D6: if or
0118: actor $3 dead
0741: (unknown) $3
004D: jump_if_false @PASSEHG_650
06C9: remove_actor $12246 from_group
05D2: unknown_action_sequence $12246 $11248 20.0 0
0002: jump @PASSEHG_11
:PASSEHG_650
00D6: if
01C1: car $11248 stopped
004D: jump_if_false @PASSEHG_534
00D6: if and
8741: not (unknown) $3
0448: actor $3 in_car $11248
004D: jump_if_false @PASSEHG_500
0519: lock_vehicle $11248 in_current_position 0
05D2: unknown_action_sequence $12246 $11248 20.0 2
:PASSEHG_736
0001: wait 50 ms
00D6: if and
8741: not (unknown) $3
0448: actor $3 in_car $11248
004D: jump_if_false @PASSEHG_11
00D6: if
00E1: key_pressed 0 10
004D: jump_if_false @PASSEHG_954
00D6: if
847A: not actor $3 driving_a_motorbike
004D: jump_if_false @PASSEHG_954
00D6: if
0038: $12250 == 0 // integer values
004D: jump_if_false @PASSEHG_954
:PASSEHG_815
0001: wait 50 ms
00D6: if and
8741: not (unknown) $3
0448: actor $12246 in_car $11248
004D: jump_if_false @PASSEHG_870
0622: AS_unknown_remove_actor $12246 from_car $11248
00D6: if
8448: not actor $12246 in_car $11248
004D: jump_if_false @PASSEHG_815
:PASSEHG_870
0676: AS_actor $3 in_car $11248 move_from_passengerseat_to_driverseat
0001: wait 50 ms
00D6: if
00DF: actor $3 driving
004D: jump_if_false @PASSEHG_870
05CB: AS_actor $3 enter_car_as_driver $11248 -1 ms
05C0: AS_actor $12246 look_at_car $11248 -1 ms
05D2: unknown_action_sequence $12246 $11248 20.0 2
0001: wait 100 ms
0002: jump @PASSEHG_11
:PASSEHG_954
00D6: if
00E1: key_pressed 0 15
004D: jump_if_false @PASSEHG_736
:PASSEHG_971
0622: AS_unknown_remove_actor $3 from_car $11248
0001: wait 50 ms
00D6: if
8448: not actor $3 in_car $11248
004D: jump_if_false @PASSEHG_971
0633: AS_actor $3 exit_vehicle
0519: lock_vehicle $11248 in_current_position 0
05D2: unknown_action_sequence $12246 $11248 17.5 2
0001: wait 100 ms
05C0: AS_actor $3 look_at_car $11248 7500 ms
06C9: remove_actor $12246 from_group
0001: wait 100 ms
0002: jump @PASSEHG_11
end_thread
поясняю: $2 и $3 - сам cj как написано в начале main'a; $11248 - сама тачка; $12246, $12247 и $12248 - сам водила и потенциальные попутчики cj'я; если сядем в коповозку - дадут звезду на память; так что тачку выбирай с умом - о всяких летающих биглях и великах забудь.
как использовать: подходи к тачке с хотя бы одним свободным местом, жми "Беседа - да" (по умолчанию Y). Чувак залезет в тачку. Шоб вылезти - Entеr, выкинуть водилу - "Беседа - нет" (обычно N).
насчёт курить - тоже просто. также создаёш поток, назначаеш определённой анимации клавиши - и вперёд. клавы и анимации можно поизучать по оригинальному скрипту и учебникам. сигару оружием сделать? думаю лишнее. и так видно же)) невозможного ничего нет.
Метка "SMOKE" переобьявлена - это значит, что у тебя есть 2 потока с одинаковыми именами. а у каждого потока должен быть свой уникальный нейм (name). поищи ctrl + F похожий SMOKE и переименуй (прим. SMOKE_1).
:Smoke_1
thread 'Smoke'
04ED: load_animation "SMOKING"
038B: load_requested_models
:Smoke_2
wait 0
if and
04EE: animation "SMOKING" loaded
00E1: key_pressed 0 18
00E1: key_pressed 0 16
Model.Available(#CIGAR)
Player.Defined($PLAYER_CHAR)
not Actor.Driving($PLAYER_ACTOR)
Jf @Smoke_2
model.Load(#CIGAR)
038B: load_requested_models
wait 0
$Cigar = Object.Create(#CIGAR, 0.0, 0.0, 0.0)
070A: unknown_action_sequence $PLAYER_ACTOR $Cigar 0.0 0.1 0.08 6 16 "NULL" "NULL" 0
0605: actor $PLAYER_ACTOR perform_animation_sequence "M_smk_in" from_file "SMOKING" 4.0 loop 0 0 0 1 -1 ms
wait 3000
:Smoke_3
wait 0
if and
80E1: not key_pressed 0 13
Player.Defined($PLAYER_CHAR)
Jf @Smoke_5
0605: actor $PLAYER_ACTOR perform_animation_sequence "M_smk_loop" from_file "SMOKING" 4.0 loop 0 0 0 1 -1 ms
if
80E1: not key_pressed 0 16
Jf @Smoke_4
if
80E1: not key_pressed 0 13
Jf @Smoke_5
jump @Smoke_3
:Smoke_4
wait 0
if and
80E1: not key_pressed 0 13
Player.Defined($PLAYER_CHAR)
Jf @Smoke_5
0605: actor $PLAYER_ACTOR perform_animation_sequence "M_smk_drag" from_file "SMOKING" 4.0 loop 0 0 0 1 -1 ms
wait 4000
0605: actor $PLAYER_ACTOR perform_animation_sequence "M_smk_tap" from_file "SMOKING" 4.0 loop 0 0 0 1 -1 ms
if
80E1: not key_pressed 0 13
Jf @Smoke_5
Jump @Smoke_3
:Smoke_5
wait 0
0605: actor $PLAYER_ACTOR perform_animation_sequence "M_smk_out" from_file "SMOKING" 4.0 loop 0 0 0 0 -1 ms
wait 3000
Object.Destroy($Cigar)
Object.RemoveReferences($Cigar)
04EF: release_animation "SMOKING"
JUMP @Smoke_1
0459: end_thread_named 'Smoke'
end_thread
это значит, что есть строка с переходом на часть потока с таким именем ENTEXT_218, но её нет. так что тут 2 выхода: либо удалить этот переход, либо переименовать ENTEXT_218 в ENTEXT_214 (прим.) или подходящий нейм на ENTEXT_218. ты, видно, используеш оригинальный скрипт с миссиями, а это хреново. если учиться - учись на "голом" скрипте, где нет миссий, EXTERNAL_SCRIPTS и проч.
EL Amigo
со скриптами много мороки..всегда нада новую игру начинать..зачем тебе это нада? А если очень хочешь,то дождись СБ3(там не нада новую игру начинать) и делай скрипты.
ррррр, что значит "где"?! ctrl+F ищеш строку с ENTEXT_218. и удаляеш её. там должно быть что-то вроде "jump to ENTEXT_218".
ты о чём, хелл? сначала создаёш поток строкой create_thread [name] (прим. create_thread Smoke_1) в соответствующем месте, это в начале мэйна. потом после main идут следующие потоки, тебе нужно между ними вставить, но строго до миссий (поток миссий начинается со строки "mission 0"). помни: end_thread значит конец потока, после него можа ставить своё чудо.
Ильдар у меня нифига ниче не прет. Можешь main.csm скинуть с этим скриптом?
хм, может и есть, не знаю. но смотри сам: разве игра пойдёт с этими ошибками? насчёт ссылки: см. мой пост от 25.07.07 11:49. что касается чистого скрипта, то любой может замутить его самостоятельно :) просто выделяеш всё с конца и до где-то чуть ниже начала main'a и удаляеш нафик. сам я работаю с таким скриптом:
DEFINE OBJECTS 0
DEFINE MISSIONS 0
DEFINE EXTERNAL_SCRIPTS 0 // Use -1 in order not to compile AAA script
DEFINE UNKNOWN_EMPTY_SEGMENT 0
DEFINE UNKNOWN_THREADS_MEMORY 0
{$VERSION 3.1.0000}
thread 'MAIN'
01F0: set_max_wanted_level_to 6
set_wb_check_to 0
00C0: set_current_time 0 0
04E4: unknown_refresh_game_renderer_at 2507.6943 -1872.7836
Camera.SetAtPos(2507.6943, -1872.7836, 22.7734)
062A: change_stat 165 to 1000.0 // float
062A: change_stat 23 to 400.0 // float
062A: change_stat 21 to 200.0 // float
0629: change_stat 164 to 200.0 // integer
062A: change_stat 25 to 300.0 // float
062A: change_stat 24 to 1000.0 // float
062A: change_stat 22 to 700.0 // float
0629: change_stat 181 to 4 // integer
$5 = Player.Create(#NULL, 2507.6943, -1872.7836, 22.7734)
$6 = Actor.EmulateFromPlayer($5)
Camera.SetBehindPlayer
0180: set_on_mission_flag_to $11942
wait 0
Player.SetClothes($5, "bbjersey", "sleevt", Torso)
Player.SetClothes($5, "tracktrgang", "tracktr", Legs)
Player.SetClothes($5, "SNEAKERBINCBLK", "SNEAKER", Shoes)
Player.SetClothes($5, "neckls", "neck", 13)
Player.SetClothes($5, "watchpro2", "watch", 14)
Player.SetClothes($5, "glasses03", "glasses03", 15)
Player.SetClothes($5, "skullygrn", "skullycap", 16)
Player.SetClothes($5, "groovecut", "groovecut", Head)
Player.SetClothes($5, "4spider", "4SPIDER", 4)
Player.SetClothes($5, "7cross3", "7CROSS3", 7)
Player.Build($5)
Player.CanMove($5) = True
fade 1 0
select_interior 0
016C: restart_if_wasted at -2187.4958 2416.4795 5.1636 angle 137.0 unknown 0
016D: restart_if_busted at -1485.1198 2625.6848 58.7812 angle 86.7199 unknown 0
end_thread
можете подсказать, где достать main.scm с полностью открытыми возможностями 100% прохождения?(убранными миссиями но оставленными скриптами типа перекрасок, парикмахерских, минимиссий(копов, медиков, гонки и т.п.) и доступными pick-up), но без добавленных скриптов
ладно, вот другой вопрос, как убрать вступительный ролик, тот что в самом начале?
в скрипте это по-моему Mission 2. там есть такие строки:
02E4: load_cutscene_data 'PROLOG3'
:INTRO_117
00D6: if 0
86B9: NOT cutscene_data_loaded
004D: jump_if_false @INTRO_122
0001: wait 0 ms
0002: jump @INTRO_117
:INTRO_122
0247: request_model #GWFORUM1_LAE
:INTRO_123
00D6: if 0
8248: NOT model #GWFORUM1_LAE available
004D: jump_if_false @INTRO_128
0001: wait 0 ms
0002: jump @INTRO_123
:INTRO_128
0A0B: 2493.362 -1734.295 12.3828 258.7583
0395: clear_area 1 at 2482.582 -1729.642 12.3906 range 500.0
02E7: start_cutscene
016A: fade 1 (back) 1000 ms
:INTRO_132
00D6: if 0
82E9: NOT cutscene_reached_end
004D: jump_if_false @INTRO_138
их надо удалить.
как мне в гта свои картинки зафигачить? например чтобы на плакате была фотка там)) еси кто знает дайте сайт по модостроению))
XeaToH, что касается фоток на плакатах - это дело текстур и совершенно не касается скриптерста. Если хочешь подробно узнать как и какую текстуру заменить, иди в соответствующую тему "Глобальная модификация текстур" или постучись ко мне в асю (в профиле указана).
Люди!!! Скиньте плиз сцылу на какой-нить учебник по скриптингу. Я вот хочу научиться...
американез - посмотри мой пост за 25.07.07 11:49. и вместо MB cоветую пользоваться SВ - имхо удобней.
2ildar07:
Я вот нашел учебник от Игромании там все расписано, но у меня вот в чем трабл:
В самом начале как я загружаю main.scm то он у меня на 37 % виснет и все...
Подскажи че да как тут сделать или может у мя че то с main.scm??
вполне. возьми оригинал, а лучше чистый (26.07.07 14:55). его сделать просто: сохранил в блокноте, открыл в sb и компилируй.
Млин.. я нигде не могу найти SB ну просто за@%ался его искать!!! Кто-нить может скинуть ссылку??
Как изменить оружие банд и как увеличить плотность какой-то банды в определенном районе?
американезз - ну ведь давал уже ссылку-то!
0237: set_gang 0 weapons_to 23 32 1
где 0 - идентификатор банды
(Gang0 == Ballas
Gang1 == Grove Street Families
Gang2 == Los Santos Vagos
Gang3 == San Fierro Rifa
Gang4 == Da Nang Boys
Gang5 == Mafia
Gang6 == Mountain Cloud Triad
Gang7 == Varrio Los Aztecas)
23 32 1 - это оружие
(0 - кулaки
1 - Кастет
2 - клюшка для гольфа
3 - дубинка для копов
4 - ножик
5 - бита
6 - лопата
7 - кий
8 - Kaтaнa
9 - пила
с 10 до 14 - дилдо и цветочки для извращенцев :)
15 - трость
16 - гранаты
17 - Слезоточивый газ
18 - Moлoтoвы
22 - пистолет
23 - то же, но с глушаком
24 - Desert Eagle (пустынник)
25 - дробоган
26 - обрез
27 - мощный дробоган 8)
28 - узи (Mac 10)
29 - MP5
30 - AK47
31 - M4
32 - Tec9
33 - винтовка
34 - снайперка
35 - РПУ
36 - ракетница с самонаводкой
37 - огнемёт
38 - старый добрый Mиниган
41 - газовый баллончик (для граффити)
42 - огнетушитель)
076C: set_zone 'SUN1' gang 1 density_to 30
SUN1 - имя района. их много. 1 - знакомый идентификатор. 30 - плотность.
рекомендую взять по вышеуказанной ссылке учебник - там всё это есть и даже больше.
Народ у меня проблема!!!! Срочно }{елпмиплиз!! я с missions.gtamaps.net/news.php скачал CLEO 3 вместе с СБ м поставил cs файл "Улучшеная прорисовка" а когда в СА новую игру (или сохранялку) загружаю он меня выкидывает после окончания загрузки...
а если только stream.ini поменять - всё тип-топ. да ну этот файл BestVideoQuality.cs - глюканут видимо.
Фуф... Все теперь все О.К.!! Я удалил СБ нах вместе с CLEO3 и установил заново..
Кто-нибудь создавал интересные миссии в San Andreas при помощи каких - нибудь редакторов? Если да то скиньте скрины и кратко обьясните сюжет.
Эх....Сколько таких как ты тут было =S !.Если хочешь научится,учись сам,а редактор Sanny Builder или BW Mission Builder.
0350: toggle_actor 62@ maintain_position_when_attacked 1
0770: unknown_actor 62@ flag 1
077A: set_actor 62@ default_action 4 to_actors_pedtype 0
кто знает значение этих опкодов?
просто мне любопытно - на саннибилдер ом на мапсе не ответили пока ) вот у вас решил спросить
0350: актёр 62@ удерживает позицию при атаке
0770: включает флаг актёру 62@
077A: устанавливает актёру 62@ действие 4 по отношению к актёрам из группы 0
p.s. что-то типа вроде этого :)
по названию - отношение групп педов к актёру
077A: set_actor 62@ default_action 4 to_actors_pedtype 0
так сказал капюшон - знаешь такого?
знаю как деталь одежды :D
вполне возможно. я не профи, так, любитель.
а кто знает как сделать ограничитель скорости, чтоб по нажатии кнопки он врубался? Гдето я такое видел и было очень просто, но не работало...
знаю как деталь одежды :D
вполне возможно. я не профи, так, любитель.
отжег как деталь одежды - капюшон мультимод слышал - ну кароч один из лучших скриптеров рунета наверно
про ограничитель скорости поищи в нете таких скриптов много и без глюков
скачал прогу GTA: SA Race-Mission Creator не пойму одново после того как все параметры задал, нажимаю построить, выходит окно со скриптом, так вот че с ним делать? ясно что в майн писать только куда? даже если его я вставляю в майн то при сборке скрипта выдает ошибку "Локальная переменная 452 вне допустимых границ. В потоках макс. значение - 33@."
PS на сайте программы ничего не нашол
missions.gtamaps.net/news.php заходи сюды тут тусуется довольно часто автор программы nikitos -один из авторов
менсон, насчёт "куда" - глянь выше.
найди эту переменную и уменьши значение - в чём проблема?
:F4
wait 0
thread 'F4'
1@ = 304497
:F4_88
wait 0
if and
Model.Available(#FAM1)
Model.Load(#FAM2)
Model.Load(#FAM3)
Model.Load(#MICRO_UZI)
Model.Load(#COLT45)
Model.Load(#CHROMEGUN)
Model.Load(#MP5LNG)
038B: load_requested_models
:F4_88
wait 0
if and
Model.Available(#FAM1)
Model.Available(#FAM2)
Model.Available(#FAM3)
Model.Available(#MICRO_UZI)
Model.Available(#COLT45)
Model.Available(#CHROMEGUN)
Model.Available(#MP5LNG)
else_jump @F4_88
wait 0
0209: $M2 = random_int_in_ranges 105 107
0209: $M3 = random_int_in_ranges 106 108
04C4: store_coords_to $X1 $Y1 $Z1 from_actor $PLAYER_ACTOR with_offset 0.0 5.0 0.0
$G1 = Actor.Create(Gang2, $M2, $X1, $Y1, $Z1)
$X1 += 2.0
$G2 = Actor.Create(Gang2, $M3, $X1, $Y1, $Z1)
$X1 += 2.0
$G3 = Actor.Create(Gang2, $M2, $X1, $Y1, $Z1)
$X1 += 2.0
$G4 = Actor.Create(Gang2, $M3, $X1, $Y1, $Z1)
$X1 += 2.0
$G5 = Actor.Create(Gang2, $M2, $X1, $Y1, $Z1)
$X1 += 2.0
$G6 = Actor.Create(Gang2, $M3, $X1, $Y1, $Z1)
$X1 = 0.0
$Y1 = 0.0
$Z1 = 0.0
081A: set_actor $G1 weapon_skill_to 1
081A: set_actor $G2 weapon_skill_to 1
081A: set_actor $G3 weapon_skill_to 1
081A: set_actor $G4 weapon_skill_to 2
081A: set_actor $G5 weapon_skill_to 2
081A: set_actor $G6 weapon_skill_to 2
01B2: give_actor $G1 weapon 22 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G2 weapon 28 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G3 weapon 25 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G4 weapon 28 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G5 weapon 25 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G6 weapon 29 ammo 99999 // Load the weapon model before using this
Actor.WeaponAccuracy($G1) = 90
Actor.WeaponAccuracy($G2) = 90
Actor.WeaponAccuracy($G3) = 90
Actor.WeaponAccuracy($G4) = 90
Actor.WeaponAccuracy($G5) = 90
Actor.WeaponAccuracy($G6) = 90
05DE: AS_actor $G1 walk_around_ped_path
05DE: AS_actor $G2 walk_around_ped_path
05DE: AS_actor $G3 walk_around_ped_path
05DE: AS_actor $G4 walk_around_ped_path
05DE: AS_actor $G5 walk_around_ped_path
05DE: AS_actor $G6 walk_around_ped_path
Actor.RemoveReferences($G1)
Actor.RemoveReferences($G2)
Actor.RemoveReferences($G3)
Actor.RemoveReferences($G4)
Actor.RemoveReferences($G5)
Actor.RemoveReferences($G6)
060B: set_actor $G1 decision_maker_to 3
060B: set_actor $G2 decision_maker_to 3
060B: set_actor $G3 decision_maker_to 3
060B: set_actor $G4 decision_maker_to 3
060B: set_actor $G5 decision_maker_to 3
060B: set_actor $G6 decision_maker_to 3
jump @F4
неплохая команда дял захвата территорий f4 лучше нажать 2 раза их буит 12 человек
хо-хо-хо. дружок, а ведь у тебя ошибочка - нельзя давать разным частям потока одинаковые имена. у тебя 2 одноименной метки F4_88 - это плохо. следует вторую переименовать. или первую. ну короче разные имена должны быть. и соответственно else_jump @F4_88 тоже измениться может.
во второй части проверка if and не нужна - это просто загрузка моделей. и опечатка есть: вместо Model.Available(#FAM1) надо Model.Load(#FAM1).
и вообще - сам писал? что-то подозрительно лёгкий скрипт...
это я скопировал криво)сорри в оригинале все норм я торопился
if and - это проверка на выполнение всех следуюших за ней условий
if or хотябы одного из следующих за ней условия
if - проверка дял одиночного условия
в данном случае я использовал проверку на то что загружены все модели
PS а почему не сам .
толкьо вот этот опкод я спрашивал у одного чувака 05DE: AS_actor $G6 walk_around_ped_path - того же капюшона кстати)
0209: $M3 = random_int_in_ranges 106 108 а рандом спрашивал у serjinio37 - сначала я не мог допереть как сделать чтобы включался рандом между всеми тремя моделями фамилисов
оказалось что он рандомизитует две первые модели - минут 10 думал как сделать сделал такую конструкцию - да скрипт легкий написан за 20 минут
:F4
wait 0
thread 'F4'
1@ = 304497
:F4_25
wait 0
if
&0(1@,1i) == 16711680
else_jump @F4_25
Model.Load(#FAM1)
Model.Load(#FAM2)
Model.Load(#FAM3)
Model.Load(#MICRO_UZI)
Model.Load(#COLT45)
Model.Load(#CHROMEGUN)
Model.Load(#MP5LNG)
038B: load_requested_models
:F4_88
wait 0
if and
Model.Available(#FAM1)
Model.Available(#FAM2)
Model.Available(#FAM3)
Model.Available(#MICRO_UZI)
Model.Available(#COLT45)
Model.Available(#CHROMEGUN)
Model.Available(#MP5LNG)
else_jump @F4_88
wait 0
0209: $M2 = random_int_in_ranges 105 107
0209: $M3 = random_int_in_ranges 106 108
04C4: store_coords_to $X1 $Y1 $Z1 from_actor $PLAYER_ACTOR with_offset 0.0 5.0 0.0
$G1 = Actor.Create(Gang2, $M2, $X1, $Y1, $Z1)
$X1 += 2.0
$G2 = Actor.Create(Gang2, $M3, $X1, $Y1, $Z1)
$X1 += 2.0
$G3 = Actor.Create(Gang2, $M2, $X1, $Y1, $Z1)
$X1 += 2.0
$G4 = Actor.Create(Gang2, $M3, $X1, $Y1, $Z1)
$X1 += 2.0
$G5 = Actor.Create(Gang2, $M2, $X1, $Y1, $Z1)
$X1 += 2.0
$G6 = Actor.Create(Gang2, $M3, $X1, $Y1, $Z1)
$X1 = 0.0
$Y1 = 0.0
$Z1 = 0.0
081A: set_actor $G1 weapon_skill_to 1
081A: set_actor $G2 weapon_skill_to 1
081A: set_actor $G3 weapon_skill_to 1
081A: set_actor $G4 weapon_skill_to 2
081A: set_actor $G5 weapon_skill_to 2
081A: set_actor $G6 weapon_skill_to 2
01B2: give_actor $G1 weapon 22 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G2 weapon 28 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G3 weapon 25 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G4 weapon 28 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G5 weapon 25 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G6 weapon 29 ammo 99999 // Load the weapon model before using this
Actor.WeaponAccuracy($G1) = 90
Actor.WeaponAccuracy($G2) = 90
Actor.WeaponAccuracy($G3) = 90
Actor.WeaponAccuracy($G4) = 90
Actor.WeaponAccuracy($G5) = 90
Actor.WeaponAccuracy($G6) = 90
05DE: AS_actor $G1 walk_around_ped_path
05DE: AS_actor $G2 walk_around_ped_path
05DE: AS_actor $G3 walk_around_ped_path
05DE: AS_actor $G4 walk_around_ped_path
05DE: AS_actor $G5 walk_around_ped_path
05DE: AS_actor $G6 walk_around_ped_path
Actor.RemoveReferences($G1)
Actor.RemoveReferences($G2)
Actor.RemoveReferences($G3)
Actor.RemoveReferences($G4)
Actor.RemoveReferences($G5)
Actor.RemoveReferences($G6)
060B: set_actor $G1 decision_maker_to 3
060B: set_actor $G2 decision_maker_to 3
060B: set_actor $G3 decision_maker_to 3
060B: set_actor $G4 decision_maker_to 3
060B: set_actor $G5 decision_maker_to 3
060B: set_actor $G6 decision_maker_to 3
jump @F4
я не выгружаю модели потому что при выгрузке скрипт действует при текущей загрузке лишь один раз
кстати по идее model.availeble здесь можно вообще не использовать
а вот никто не знат как оформить клео 3 скрипт - у мня вылетает при директиве CLEO
я вставляю перед -Mission 0-
сразу пиши create_trhread
: свой поток
при редактировании ped.dat ничего не происхоидло
0746: set_default_action 1 for_actors_pedtype 7 to_actors_pedtype 8
вот я нашел способ
Откуда можно скачать подробный учебник по скриптингу миссий, тачек и проч?
articles.gtamaps.net/
missions.gtamaps.net/news.php
alexander.sannybuilder.com/
вот туту я научился скриптингу
А есть программа, чтобы после написания скриптов не надо было новую игру начинать?
есть но это не программа а ее часть :технология CLEO3
www.sannybuilder.com/ - зайди сюда это сайт автора этой технологии , для того чтобы ее использовать тебе нужно будет выбросить в помойку Миссион билдер )) и скачать sanny builder 3.01 с того сайта а там в самой программе когда поставишь он попросит установить эту библиотеку а дальше в самой прогрмме нажмешь F12 и там подробно описано как работать с этой технологией
канеш - создатель же русский - ну если хочешь англ версию поставь)
Есть такая идейка. С помощью заданной клавиши Карл достает мобильник и включается радио или сразу слежка игрока. Круто же музон так послушать!
эта идейка уже воплощена в жизнь. правда, не через мобилу, а по-другому.
подскажите пожалуйста как очистить оригинальный мейн от миссий
Кому чистый мейн нужен:
// This file was decompiled using sascm.ini published by Seemann (sannybuilder.com/files/SASCM.rar) on 04.08.2007
DEFINE OBJECTS 1
DEFINE OBJECT SANNY BUILDER 3.01
DEFINE MISSIONS 0
DEFINE EXTERNAL_SCRIPTS 0 // Use -1 in order not to compile AAA script
DEFINE UNKNOWN_EMPTY_SEGMENT 0
DEFINE UNKNOWN_THREADS_MEMORY 0
{$VERSION 3.1.0023}
//-------------MAIN---------------
thread 'MAIN'
01F0: set_max_wanted_level_to 6
set_wb_check_to 0
00C0: set_current_time_hours_to 8 minutes_to 0
04E4: unknown_refresh_game_renderer_at 2488.56 -1666.84
Camera.SetAtPos(2488.56, -1666.84, 13.38)
$PLAYER_CHAR = Player.Create(#NULL, 2488.56, -1666.84, 13.38)
$PLAYER_ACTOR = Actor.EmulateFromPlayer($PLAYER_CHAR)
07AF: $PLAYER_GROUP = player $PLAYER_CHAR group
Camera.SetBehindPlayer
set_weather 0
wait 0
Player.SetClothes($PLAYER_CHAR, "PLAYER_FACE", "HEAD", Head)
Player.SetClothes($PLAYER_CHAR, "JEANSDENIM", "JEANS", Legs)
Player.SetClothes($PLAYER_CHAR, "SNEAKERBINCBLK", "SNEAKER", Shoes)
Player.SetClothes($PLAYER_CHAR, "VEST", "VEST", Torso)
Player.Build($PLAYER_CHAR)
Player.CanMove($PLAYER_CHAR) = True
fade 1 0
select_interior 0
0629: change_integer_stat 181 to 4
016C: restart_if_wasted_at 2027.77 -1420.52 15.99 angle 137.0 town_number 0
016D: restart_if_busted_at 1550.68 -1675.49 14.51 angle 90.0 town_number 0
0180: set_on_mission_flag_to $ONMISSION // Note: your missions have to use the variable defined here
$DEFAULT_WAIT_TIME = 250
03E6: remove_text_box
:MAIN_297
wait $DEFAULT_WAIT_TIME
00BF: $Time_Hours = current_time_hours, $Time_Mins = current_time_minutes
jump @MAIN_297
Я делаю мод и мне нужен скриптер, умеющий создавать(писать) пути педов и авто, чтобы заселить участки карты. Обращайтесь на мой сайт или по Y2Kos@ya.ru
Вопрос. Написал скрипт
{$CLEO}
:PickUps
wait 100
model.load(#teargas)
model.load(#heatseek)
model.load(#jetpack)
model.load(#GUN_PARA)
model.load(#HEALTH)
model.load(#BODYARMOUR)
038B: load_requested_models
:PickUps_2
wait 0
if and
model.Available(#teargas)
model.Available(#heatseek)
model.available(#jetpack)
model.available(#GUN_PARA)
model.available(#HEALTH)
model.available(#BODYARMOUR)
jf @PickUps_2
:PickUps_3
032B: $Weap = create_weapon_pickup #teargas type 2 ammo 15 at 2441.220000 -1692.829000 13.804690
032B: $Weap = create_weapon_pickup #heatseek type 2 ammo 25 at 2485.464000 -1637.079000 25.109380
$Weap = Pickup.Create(#jetpack, 2, 2502.311000, -1700.051000, 13.562080)
$Weap = Pickup.Create(#GUN_PARA, 2, 2533.375000, -1664.891000, 15.166840)
$Weap = Pickup.Create(#HEALTH, 2, 2497.911000, -1698.747000, 1014.742000)
$Weap = Pickup.Create(#BODYARMOUR, 2, 2497.874000, -1702.849000, 1014.742000)
marker.CreateIconWithoutSphere($CJHOUSE,0,2495.0,-1690.0,14.7656)
04A6: $Money = create_asset_money_pickup_at 2518.753000 -1723.105000 18.582070 money 10000 10000
04A6: $MoneyLC = create_asset_money_pickup_at -822.472200 513.493700 1359.593000 money 99999 99999
wait 500
Model.Destroy(#teargas)
Model.Destroy(#heatseek)
model.destroy(#jetpack)
model.destroy(#GUN_PARA)
model.destroy(#HEALTH)
model.destroy(#BODYARMOUR)
end_thread
А в доме Карла появляются вместо брони и сердечка инфо-значёк и карточка. И сохранение невозможно, беру пикап савки, и ничего не происходит.
Хитрый Кот, ты это самое, растраиваца не спеши. скрипт вроде ничево, креативный. но вот что меня смущает: 1) пустые строки внутри потока. их лучше ставить между частями, перед :PickUps_2 например. 2) для пикапов с моделями возица не обязон. просто пиши 032B: $3241 = create_weapon_pickup #MINIGUN group 15 ammo 200 at 244.98 1859.185 14.08 где 032B - опкод, $3241 - переменная для пикапа (у тя, кстати, пикапов несколько, а переменная одна - нехорошо-с), create_weapon_pickup - ну, понятно... #MINIGUN - сам пикап, group 15 - тип пикапа (15 - обычный, в оригинальном мейне все пикапы такого типа, 3 - одноразовый, в миссиях, у тя 2 стоит. хм. попробуй поставить 15) ammo 200 - число патронов, дальше координаты.
а чтоб сейвиться, нада прописывать это дело. в оригинмейне это поток PSAVE1.
maikl-djordon, мод отстой. смерть балласам! гроув стрит король!
Ildar 07. Ничего не помогает. (( а группа 2 регенерация за полчаса, 15 за 6 часов. С подключенным модом сохранить невозможно без мода всё ок.
Хитрый Кот - что за мод? убери его и сейвись на здоровье!
Emelia - 322.
suckapolis - уже отмечаешь? :D поздравляю.
прикинь, у мя тож :) а с подковами, фото, устрицами всё намально ... странно,,, правда?
короч, иди чесно закрашивай вражеские графити :D уважение гроув нада заслужить делом ...
ну мля ламеры шас мне как всекда приходится всех спасать иду млать искать а ты ILdar07 нупускай ложную информацию, тоже мне скриптёр нашелся, небось скачал информацию с какогнибуть скриптёрскава сайта и типа кинг, да млять?
хо хо хо, мальчик, не гони пургу на гроув стрит! здесь крутые парни с клёвыми тёлками конкретный базар фильтруют, а твоя шняга никому в болт не впилась, так что вали к своим шестёркам, насекомое. и ваще, чо за наезды такие? обоснуй, гамнюк, где инфа ложная и почему, а так просто "сак май дик энд гоу ту хелл, эссол" :-|
Блин а как сделать так чтобы в моей собственной миссии которая под номером 10 враги спавнились на машине за углом и чтобы в пикапе тачки в багажнике был баллас с калашниковым. Помогите.
car.Create(35@,машина,за углом)
0129: 40@ = create_actor_pedtype 7 model #BALLAS1 in_car 35@ driverseat
01C8: 41@ = create_actor_pedtype 7 model #BALLAS2 in_car 35@ passenger_seat 0
01C8: 42@ = create_actor_pedtype 7 model #BALLAS3 in_car 35@ passenger_seat 1
01B2: give_actor 40@ weapon 30 ammo 6000
не забудь загрузить модель калаша: Model.Load(#AK47)
хватит прикрепить нада вспомнить в спейсе есть такой меса и патриот...
ILdar07 йа джуст донт ноу вит ху иа фак вит, король грува нах нашолся мазафака типа крутой да как говно сак май дик энд гоу ту хелл, эссол тип оскорбление ю мазафакин пис оф шит который тоолдычет сплошной буллшит каторый патом ещё жрёт и потом из ся кароля делает знает полное говно и корчит из ся интелигента мазафака
ILdar07 ты можешь один скрипт посмотреть, а то никак ошибку не могу найти.
хех... когдато маялся этой ерундой... даже с Занозой работать умел... и еще... .ах да, му маппером. ща ниче непомню. но помню а городе такие американские горки намутил, шо ппц.
Всем привет!Я буду очень вам признателен если ктонибудь подскажет как сделать в ГТАСА чтобы не падать с мотоцикла.Вообсче!Не при каких условиях!
Заранее спасибо!
вставь куда-нить в мейн после $PLAYER_ACTOR = Actor.EmulateFromPlayer($PLAYER_CHAR) строку 08C6: set_actor $PLAYER_ACTOR stay_on_bike 1 - где $PLAYER_ACTOR это ты и есть, а 1 - вкл. (0 - выкл.)
Большое спасибо.Однако чем мне открыть мейн??я пробывал блокнотам однако тщетно
Я зашёл в эту программу.В поиске набрал $PLAYER_ACTOR = Actor.EmulateFromPlayer($PLAYER_CHAR) и добавил set_actor $PLAYER_ACTOR stay_on_bike 1 под ту строчку.Захожу в игру,загружаю сейв.Пробую...Всё как было так и есть...
1) Я вас не понел..Что это значит?
2)Я вас опять не понел...Я могу сказать точно только одно, то что этот main.scm я не трогал до этого момента.Тоесть не какие моды не ставил
1) почитай мануал (справка -> помощь или жми F12)
2) ну понятно. с байка ты не сможешь упасть лишь в том случае, если твой навык байкера соответствующий. из твоих слов понятно, что скрипт оригинальный, а там в начале этот навык поставлен на 0, чтоб ты его прокачивал постепенно. вот. 062A: change_stat 229 to 1000.0 попробуй эту команду.
p.s. повторюсь: учиться скриптингу лучше на чистом мейне. а просто изменять оригинальный - много хлопот.
Я добавил эту команду но всёравно я падаю..Я бы мог кинуть вам мой main.scm и вы бы сделали всё как надо
:) ну я прям весь как бы расту в своих глазах, когда к моей скромной персоне обращаются на "вы"... гы. ладно. кидай, чувак.
нашёл секретную сценку :-) правда, в ней никого нет :-( но всё равно прикольненько. вот сам поток:
create_thread @IMPEXPM
:IMPEXPM
thread 'IMPEXPM'
wait 0
select_interior 0
02E4: load_cutscene_data 'cuttest'
:MANSIO1_150
wait 0
if
86B9: not cutscene_data_loaded
jf @MANSIO1_174
wait 0
jump @MANSIO1_150
:MANSIO1_174
wait 0
02E7: start_cutscene
fade 1 1000
:MANSIO1_183
wait 0
if
82E9: not cutscene_reached_end
jf @MANSIO1_207
wait 0
jump @MANSIO1_183
:MANSIO1_207
wait 0
02EA: end_cutscene
fade 1 1000
select_interior 0
end_thread
Народ раскажите плиз как правильно тачку заспаунить (всмысле прописать на карте) пробовал несколько прог но эффекта 0 =(
Кхм кхм, вот собсна вопрос: срочна нужно убрать движение машин с улиц и сделать так чтобы люди нападали на глав героя. В общем пытался сделать не получалось, помогите плиз.
ILdar07,если ты про то что сверху с самого то я смотрел но для меня это темный лес :D
Вобщем Car adder уверяет что можно заспаунить машину через ipl он мне туда сунул пару строчек:
cars
-1971.878, 101.0924, 27.53666, 90, 463, -1, -1, 0, -1, 0, -1, -1
-2047.04, 146.215, 28.5078, 270, 525, 7, 1, 0, 1, 0, -1, -1
end
ну и конешно нечего не вышло =(
а куда конкретно он сунул? т.е. в какой файл? судя по координатам, нужен SFse.IPL.
VanSant, вот тебе как вариант:
01EB: set_traffic_density_multiplier_to 0.0
06C8: enable_riot 1
да,он его сунул в SFse.ipl вернее не он а я,он просто код сгенирил :)
Юзал проги
Car adder
ipl helper
Собсно вопрос появился...а куда сами разрабы засунули параметры спауна тачек ?
Я так понял это мне менять уже имеющиеся строчки или добавлять?
Кстати это вырубает трафик и агрит жителей или только вырубает трафик?
зы: понимаю что уже задрал, но полицейские, пожарка и скорая будут функционировать или нет? Мне нужно чтобы не функционировали)
попробуй изменить, если такие уже есть.
только вырубает трафик.
да. для спецслужб такая команда: 06D0: enable_emergency_traffic 0 (0 - выкл., 1 - вкл.) если не ошибаюсь, по-моему её в оригинальном мейне нету.
оки ну и последний вопрос: в какой раздел там тыкать?
кстати в 01EB: set_traffic_density_multiplier_to 0.0 напрягло multiplier, ето ведь не для самп? хотя глупый вопрос, в самп ваще ботов нету)
такой косяк: в том файле 01EB: set_traffic_density_multiplier_to 0.0 уже со значением 0.0 :/
ха, ну надо же. интересный файл, однако.
p.s. multiplier и multiplayer - разные вещи )
Вот такой вопросик,вобщем ставлю маркер который нас перемещает с улицы в интерьер поставил значит один на улице и другой тоже на улице тока подальше с самого начала не одного маркера не видно,методом тыка нашел всетаки тот маркер (нащупал) сначало он меня перебросил в интерьер кафе а потом в интерьер гаража сиджея (там маркер было видно) в СФ сосбно куда и надо было только в интерьер =) вобщем вопросы такие почему так произошло ? и может телепорт по улицам можно както по другому реализовать а этот для таких целей не подходит ?
почему - возможно, дело в ipl-файле, где расписаны входы для интерьеров. конечно, можно по-другому. допустим, открой SFse.ipl. видишь строки
enex
-2027.73, -40.5488, 37.8263, 0, 3, 3, 8, -2027.83, -44.0454, 37.0263, 4139.7, 0, 4, "SVSFBG", 0, 2, 0, 24
-2242.69, -88.2558, 34.3578, 0, 1.6, 1.6, 8, -2245.38, -88.2558, 34.3578, 3691.82, 0, 4, "BAR2", 0, 2, 0, 24
end
это входы в бар и бургер-шот, по-моему. и вообще, что-то мы от скриптинга ушли вроде... :-[
p.s. btw, те две тачки у меня работают :) одна - харлей, другая - буксир, так?
Ну ябы сказал это к скриптингу косвенно но относится =)
Да я именно туда под "enex" ставил опятьже мож кривой ipl или ещё хуже игра =(
Ага харлей и тягачь, а у мну не пашет =( скинь плиз свой ipl мож просто мой кривой =)или ты както по другому их ставил ?
Вобщем такой касяк....поставил я всетаки машину на карту но она появляеться под углом в 0 градусов хотя я ставлю 270 что это может быть
П.С.: вот это уже к скриптингу почти не относится такчто сори за оффтоп =)
Щас так по внимательней посмотрел и появилось такое ощущение что у машины только три позиции 90,180,270 под другими она не встает =(
Я вот в инете скриптик нашел. Хотел поставить в КЛЕО, но при компиляци он пишет "Неизвестная команда $PLAYER_CHAR.Defined."
Вот скриптик:
{$CLEO}
:BUY_ZONE
thread 'zones'
var
1@ : float
2@ : float
3@ : float
4@ : integer
5@ : integer
6@ : integer
s$cur_zon : string
end
alloc(s$cur_zon,15)
:buy_zone_1
wait 0
if
$PLAYER_CHAR.Defined
jf @buy_zone_1
if
010A: player $PLAYER_CHAR money > 50000
jf @buy_zone_1
if
not $PLAYER_ACTOR.Driving
jf @buy_zone_1
if and
00E1: player 0 pressed_key 4
00E1: player 0 pressed_key 19
jf @buy_zone_1
04C4: store_coords 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0
08F1: get_zone_at 1@ 2@ 3@ nameB_to s$cur_zon // 8-byte string
if and
not s$cur_zon == 'san_and'
not s$cur_zon == 'la'
not s$cur_zon == 'sf'
not s$cur_zon == 've'
jf @buy_zone_1
076D: get_zone s$cur_zon gang 1 density_to 4@
076D: get_zone s$cur_zon gang 0 density_to 5@
076D: get_zone s$cur_zon gang 2 density_to 6@
if
8029: not 4@ >= 39
jf @buy_zone_1
if or
0029: 5@ >= 1
0029: 6@ >= 1
jf @buy_zone_1
0879: toggle_gang_wars 0
076C: set_zone s$cur_zon gang 1 density_to 40
076C: set_zone s$cur_zon gang 0 density_to 0
076C: set_zone s$cur_zon gang 2 density_to 0
0879: toggle_gang_wars 1
0109: player $PLAYER_CHAR money += -50000
jump @buy_zone_1
end_thread
Ildar ты скрип пассажира писал? И ещё. Есть скрип что бы из окна высовываться и стрелять?
man from san fierro
попробуй так
:BUY_ZONE
thread 'zones'
var
1@ : float
2@ : float
3@ : float
4@ : integer
5@ : integer
6@ : integer
s$cur_zon : string
end
alloc(s$cur_zon,15)
:buy_zone_1
wait 0
if
Player.Defined($PLAYER_CAHR)
jf @buy_zone_1
if
010A: player $PLAYER_CHAR money > 50000
jf @buy_zone_1
if
not actor.Driving($PLAYER_ACTOR)
jf @buy_zone_1
if and
00E1: player 0 pressed_key 4
00E1: player 0 pressed_key 19
jf @buy_zone_1
04C4: store_coords 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0
08F1: get_zone_at 1@ 2@ 3@ nameB_to s$cur_zon // 8-byte string
if and
not s$cur_zon == 'san_and'
not s$cur_zon == 'la'
not s$cur_zon == 'sf'
not s$cur_zon == 've'
jf @buy_zone_1
076D: get_zone s$cur_zon gang 1 density_to 4@
076D: get_zone s$cur_zon gang 0 density_to 5@
076D: get_zone s$cur_zon gang 2 density_to 6@
if
8029: not 4@ >= 39
jf @buy_zone_1
if or
0029: 5@ >= 1
0029: 6@ >= 1
jf @buy_zone_1
0879: toggle_gang_wars 0
076C: set_zone s$cur_zon gang 1 density_to 40
076C: set_zone s$cur_zon gang 0 density_to 0
076C: set_zone s$cur_zon gang 2 density_to 0
0879: toggle_gang_wars 1
0109: player $PLAYER_CHAR money += -50000
jump @buy_zone_1
end_thread
СПС!!!
Да и еще:
Установил в папку cleo pas.cs и driveby.cs. первые 10-20 минут все ок, но потом игра ошибку выдет!!!
Еще пробовал писсинг поставить, но после загрузки сейва он новую игру начинает(((((((
В чем беда? Мож CLEO переустановить?
Заранее благодарен!!!!!!!!!
Я особо не тестил эти 2 скрипта. Но когда driveby в мейн засунул, то из окна высовывается и стреляет, а когда жмёш чтоб назад сел, то игра выдаёт ошибку.
Не знаю. Попрубуй переустановить, мо шо и будэ.
Emelia
скрипт пассажира см. выше. а для драйв-бая я пользуюсь таким потоком:
create_thread @INTROSH_15551
:INTROSH_15551
wait 50
03C0: 0@ = actor $PLAYER_ACTOR car
wait 50
if
Actor.InCar($PLAYER_ACTOR, 0@)
jf @INTROSH_15551
046C: 1@ = car 0@ driver
if
8043: not 1@ == $PLAYER_ACTOR
jf @INTROSH_15551
if
80E1: not player 0 pressed_key 18
jf @INTROSH_15717
jump @INTROSH_15551
:INTROSH_15717
Car.SetImmunities(0@, 1, 1, 1, 1, 1)
0713: actor $PLAYER_ACTOR driveby_actor -1 car -1 point 0.0 0.0 0.0 radius -2 -1 -1 firing_rate 100
wait 500
:INTROSH_15769
wait 50
0470: 2@ = actor $PLAYER_ACTOR current_weapon
041A: 3@ = actor $PLAYER_ACTOR weapon 2@ ammo
if
not 1 > 3@
jf @INTROSH_15853
if
Actor.InCar($PLAYER_ACTOR, 0@)
jf @INTROSH_15551
if
80E1: not player 0 pressed_key 18
jf @INTROSH_15853
jump @INTROSH_15769
:INTROSH_15853
0812: AS_actor $PLAYER_ACTOR perform_animation "OFF_SIT_IDLE_LOOP" IFP_file "INT_OFFICE" 0.0 loopA 0 lockX 0 lockY 0 lockF 0 time 0
Camera.Restore_WithJumpCut
Car.SetImmunities(0@, 0, 0, 0, 0, 0)
wait 500
jump @INTROSH_15551
где $PLAYER_ACTOR - СиДжей, 1@ - водила, 18 - клавиша гудка, 2@ - оружие, 3@ - число патронов. стрелять можно НЕ только из узи и т.п. но и из пистолета, автомата и т.д. хоть минигана :) во время самого драйв-бая авто становится неуязвимым (если не нравится, просто убери команды Car.SetImmunities(0@, 1, 1, 1, 1, 1) и Car.SetImmunities(0@, 0, 0, 0, 0, 0))
2 Ildar07
спс!!! попробую вставит
2 Emelia
ну переустановил. теперь сейв с этими скриптами ваще не загружается!!!((( без клео работает. мож это всё изза того что у меня однодисковая пиратка без радио и танцев?
объясните мне плиз как в скрипте клавишу определять???????
:Smoke_1
thread 'Smoke'
04ED: load_animation "SMOKING"
038B: load_requested_models
:Smoke_2
wait 0
if and
04EE: animation "SMOKING" loaded
00E1: key_pressed 0 18
00E1: key_pressed 0 16
Model.Available(#CIGAR)
Player.Defined($PLAYER_CHAR)
not Actor.Driving($PLAYER_ACTOR)
Jf @Smoke_2
model.Load(#CIGAR)
038B: load_requested_models
wait 0
$Cigar = Object.Create(#CIGAR, 0.0, 0.0, 0.0)
070A: unknown_action_sequence $PLAYER_ACTOR $Cigar 0.0 0.1 0.08 6 16 "NULL" "NULL" 0
0605: actor $PLAYER_ACTOR perform_animation_sequence "M_smk_in" from_file "SMOKING" 4.0 loop 0 0 0 1 -1 ms
wait 3000
:Smoke_3
wait 0
if and
80E1: not key_pressed 0 13
Player.Defined($PLAYER_CHAR)
Jf @Smoke_5
0605: actor $PLAYER_ACTOR perform_animation_sequence "M_smk_loop" from_file "SMOKING" 4.0 loop 0 0 0 1 -1 ms
if
80E1: not key_pressed 0 16
Jf @Smoke_4
if
80E1: not key_pressed 0 13
Jf @Smoke_5
jump @Smoke_3
:Smoke_4
wait 0
if and
80E1: not key_pressed 0 13
Player.Defined($PLAYER_CHAR)
Jf @Smoke_5
0605: actor $PLAYER_ACTOR perform_animation_sequence "M_smk_drag" from_file "SMOKING" 4.0 loop 0 0 0 1 -1 ms
wait 4000
0605: actor $PLAYER_ACTOR perform_animation_sequence "M_smk_tap" from_file "SMOKING" 4.0 loop 0 0 0 1 -1 ms
if
80E1: not key_pressed 0 13
Jf @Smoke_5
Jump @Smoke_3
:Smoke_5
wait 0
0605: actor $PLAYER_ACTOR perform_animation_sequence "M_smk_out" from_file "SMOKING" 4.0 loop 0 0 0 0 -1 ms
wait 3000
Object.Destroy($Cigar)
Object.RemoveReferences($Cigar)
04EF: release_animation "SMOKING"
JUMP @Smoke_1
0459: end_thread_named 'Smoke'
end_thread
вот в этом скрипте есть такие опкоды.
00E1: key_pressed 0 18
00E1: key_pressed 0 16
как понять какие это кнопки?
man from san fierro
пользуйся на здоровье
Номер Пешком В транспортном средстве
-----------------------------------------------------------------------
0 | влево/вправо влево/вправо
1 | вперёд/назад наклон вертолёта(самолёта) вверх/вниз
2 | особый CTRL влево/вправо особый CTRL влево/вправо
3 | особый CTRL вперёд/назад особый CTRL вперёд/назад
4 | действие вторичная атака
5 | предыдущее оружее/цель смотреть влево
6 | прицел ручной тормоз
7 | следущее оружее/цель смотреть вправо
8 | группа вперёд следующая радио станйия
9 | группа назад предыдущая радио станйия
10 | ответ-нет ответ-нет
11 | ответ-да пропустить слежку
12 | не существует не существует
13 | изменить камеру изменить камеру
14 | прыжок тормоз/задний ход
15 | войти в машину выход из машины
16 | быстрый бег газ
17 | огонь огонь
18 | присесть гудок
19 | смотреть назад подмиссия
Ildar СПС за скрипты. Ты их оба написал сам или нет, а то ж в своём моде надо написать благодарность.
Помогите. Маркер не появляется. Но когда на то место становишся где его ставил, то
всё происходит что задавал.
2 Emelia
Большое спасибо те!!! А то никак понять этого не мог. Да, и где вы все этому научились?
2 Ildar
вставил. почему то не пашет. ни сохранка, ни новая игра. ошибку выдает((((
З.Ы.
Как называется анимация когда педы загорают на пляже?
Хочу попробовать написать скрипт чтоб эту анимацию игра проигрывала нажатием на кнопку.
Ну вот написал какойто примитивный скриптик. Не судите строго - это мой первый скрипт. Но вот проблема - когда сохранка загрузилась, всё работало норм, но тока ни камера, ни сиджей не сдвинулись(((( почему?
Вот скрипт
{$CLEO}
:Crack
thread 'Crack'
04ED: load_animation "CRACK"
:Crack_1
wait 100
if and
04EE: animation "CRACK" loaded
00E1: key_pressed 0 18
00E1: key_pressed 0 9
Player.Defined($PLAYER_CHAR)
not Actor.Driving($PLAYER_ACTOR)
0459: end_thread_named 'Crack'
end_thread
Заранее спс!!!
man from san fierro
не вижу смысла в твоём скрипте.
Crack
thread 'Crack'
загр аним
Crack_1
wait 100
проверка
аним загружена
клвиш нажата
клавиш нажата
игрок жив
игрок не за рулём
.........
а где сам код скрипта, что именно ты хотел написать?????
Короч вот тебе ссылка на учебник которым я пользуюсь:
missions.gtamaps.net/downloads.php?cat_id=10&..
Качай!Учись!Удачи!
Я хотел чтоб при нажатии на присесть+группа назад проигрывалась анимация crack. Если помниш в самой последней миссии когда танком стену проломил там люди лежат и трясутся. Вот эта и есть та анимация. А за ссылочку спасибо!!!
не, он хочет чтоб это СиДжей валялся, так что просто надо добавить пару строчек, типа:
{$VERSION 3.1.0027}
{$CLEO .cs}
:Crack
thread 'Crack'
04ED: load_animation "CRACK"
:Crack_1
wait 100
if and
04EE: animation "CRACK" loaded
Player.Defined($PLAYER_CHAR)
not Actor.Driving($PLAYER_ACTOR)
jf @Crack_1
if and
00E1: key_pressed 0 18
00E1: key_pressed 0 9
jf @Crack_1
0605: actor $PLAYER_ACTOR perform_animation_sequence "CRCKIDLE4" IFP_file "CRACK" 1000.0 loop 1 0 0 1 time -1
:Crack_2
wait 30
if
00E1: key_pressed 0 15
jf @Crack_2
04C4: store_coords_to $TEMPVAR_FLOAT_1 $TEMPVAR_FLOAT_2 $TEMPVAR_FLOAT_3 from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0
00A1: put_actor $PLAYER_ACTOR at $TEMPVAR_FLOAT_1 $TEMPVAR_FLOAT_2 $TEMPVAR_FLOAT_3
04EF: release_animation "CRACK"
jump @Crack_1
note: чтобы вернуться в исходное положение, жми Enter (или F).
вставил. почему то не пашет. ни сохранка, ни новая игра. ошибку выдает
вполне возможно, в твоём скрипте Карл "назван" по-другому. проверь строку Player.Create. здесь объявляется player - значит, везде где упоминается player, надо использовать эту переменную. так же и с Actor. допустим, у меня так:
$PLAYER_CHAR = Player.Create(#NULL, 2488.56, -1666.84, 13.38)
$PLAYER_ACTOR = Actor.EmulateFromPlayer($PLAYER_CHAR)
следовательно, мой player - это $PLAYER_CHAR, а actor - $PLAYER_ACTOR. в принципе, это один Карл, но есть команды, применимые лишь к игроку (player) или только к актёру (actor). у тебя может быть по-другому:
$2 = Player.Create(#NULL, 2488.56, -1666.84, 13.38)
$3 = Actor.EmulateFromPlayer($2), например. значит, мой скрипт где актёр для Карла = $PLAYER_ACTOR, а игрок = $PLAYER_CHAR, у тебя не пойдёт. но ничего страшного. просто поменяй $PLAYER_ACTOR и $PLAYER_CHAR на свои переменные.
хе, много букв. но у меня нет сестры по имени Краткость :-)
Emelia писал: "Ты их оба написал сам или нет..."
уважаю за честность. но в принципе, не думаю что будет такой уж смертельной ошибкой никого не благодарить. код-то один, и авторские права на потоки предъявлять не очень умно. ведь любой чувак может прочитать туториал ака мануал по скриптингу и написать любой из потоков, указанных выше. я так думаю.
man from san fierro писал: "Как называется анимация когда педы загорают на пляже?"
0605: actor $PLAYER_ACTOR perform_animation_sequence "Lay_Bac_Loop" IFP_file "beACh" 1000.0 loop 1 0 0 1 time -1
Огромное спасибо!!!!!!
То есть всё замерло изза того что скрипт не был закончен?
Почему через некоторое время анимацыя не проигрываится?
Сколько бы я не жал H+C ничего не происходит. Если загрузить сэйв всё ОК.
Вот скрипт для загара. Я списал его с крэка. Всё работает.
{$VERSION 3.1.0027}
{$CLEO .cs}
//-------------MAIN---------------
thread 'LEJI'
04ED: load_animation "BEACH"
:LEJI_20
wait 100
if and
04EE: animation "BEACH" loaded
Player.Defined($PLAYER_CHAR)
not Actor.Driving($PLAYER_ACTOR)
else_jump @LEJI_20
if and
00E1: player 0 pressed_key 18
00E1: player 0 pressed_key 19
jf @LEJI_20
0605: actor $PLAYER_ACTOR perform_animation_sequence "LAY_BAC_LOOP" IFP_file "BEACH" 1000.0 loop 1 0 0 1 time -1 // versionA
:LEJI_118
wait 30
if
00E1: player 0 pressed_key 15
else_jump @LEJI_118
04C4: store_coords_to $TEMPVAR_FLOAT_1 $TEMPVAR_FLOAT_2 $TEMPVAR_FLOAT_3 from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0
Actor.PutAt($PLAYER_ACTOR, $TEMPVAR_FLOAT_1, $TEMPVAR_FLOAT_2, $TEMPVAR_FLOAT_3)
04EF: release_animation "BEACH"
jump @LEJI_20
Вот попробовал задать актёру анимацию. Получилось ДВА СиДжея. Загрузил игру, но началась новая, хотя все было по старому. Тока СиДжей худой и начальной одежде.
{$CLEO}
:ACTOR
thread 'ACTOR'
model.load(#SFR2)
04ED: load_animation "BEACH"
038B: load_requested_models
:ACTOR_1
wait 100
if and
04EE: animation "BEACH" loaded
Model.Available(#SFR2)
jf @ACTOR_1
actor.create($Actor,6,#SFR2,-2400.0,500.8,24.2)
Actor.Angle($Actor) = 250.24
Actor.Health($Actor) = 1000
Actor.Armour($Actor) = 500
03FE: set actor $Actor money 150000
0605: actor $Actor perform_animation_sequence "Lay_Bac_Loop" IFP_file "beACh" 1000.0 loop 1 0 0 1 time -1
Model.Destroy(#SFR2)
jump @ACTOR
ну дык смысл-то в чём? ты создал актёра, задал ему анимацию и тут же уничтожил его модель. попробуй actor.RemoveReferences($Actor) - имхо лучше.
ещё анимация будет грузить память игры, так что тормоза обеспечены.
и вообще, скверный скрипт. игра будет создавать актёра, пока не вылетит. либо не создаст. ибо задержка маленькая (wait 100), а перед jump @ACTOR вообще нету. кстати, раз модель загрузил - больше не надо - прыгай сразу на ACTOR_1, лишняя нагрузка на движок.
помогите пожалуйста.
поставил автомобиль в определёное место, он стоит. но я хочу поставить на нехо особый номер. использовал код 0674, тока он чёто не работает. использую чистый МАИН.
0674: set_car_model #W221S500 numberplate "nomer"
014B: $s500s = init_parked_car_generator #W221S500 0 0 1 alarm 0 door_lock 0 0 40000 at 2488.74 -1670.0 13.34 angle 120.0
014C: set_parked_car_generator $s500s cars_to_generate_to 101
Всем привет! Я хотел в сане билдере сделать миссию поприкольнее шоб она на карте новенькой работала. Правда карта далеко в облаках и координаты из Map Editor v.0.1b нефига не правильные что делать? подскажите, заранее благодарен!
RYXAH_HAXYЯ
09E2: $PARKED_CAR = parked_car_generator_w_numberplate #EUROS -1 -1 0 alarm 50 door_lock 0 0 10000 plate "HOMEP_69" at 0.0 0.0 0.0 angle 180.0 // $PARKED_CAR - переменная, #EUROS - модель тачилы, -1 и -1 - цвет авто (случайный, можно поставить от 0 до 126), alarm - сигналка (0 - нет, 100 - есть всегда), door_lock - замок на двери (0 - нет, 100 - есть всегда), 10000 - цена машины, HOMEP_69 - номер (максимум 8 латинских букв/цифр), 0.0 0.0 0.0 - координаты, angle - угол
Белов Михаил
Запусти игру и SB. Сверни SA (Alt+Tab), ПКМ в SB -> Вставить -> Координаты игрока либо Shift+Ctrl+C. Прога вставит текущие кординаты игрока.
ILdar07
я чето не понял куда этот код вставлять, после обычного или как? можно поподробнее, плиз.
скриптинг в гта сан жив!!!!!!! как я вижу)))))))))
если не трудно сделайте мне пожалуста - просто очень охото поиграть в сан снова( в 5000 раз))) и по воевать за территории таким образом
{$CLEO}
:POI
0000:
:F4_2
wait 0
thread 'F4'
1@ = 304499
:F4_27
wait 0
if
&0(1@,1i) == 0x00FF0000
jf @F4_2
вот тут напишите текст скрипта)
пожалуста) я бы сам сделал но я опкодов не знаю- а поиск санни билдера мне не помог
еще как вариант если не трудно можно сделать ,чтобы я нажимал F8 и тут же территория моя атаковалась балласами или вагосами
если не хотите делать я могу и сам только с опкодами помогите
если не понятно - то то что я там вставил это проверка на нажатие ф8
Я создаю сервер для SAMP, мне нежуен скрипт который позволяет выбрать точку респы!
Зарание спасибо.
Написал маленький скриптик для Сани запускаю всё идёт не так как нужно.
DEFINE OBJECTS 0
DEFINE MISSIONS 1
DEFINE MISSION 0 at @MyMission
DEFINE EXTERNAL_SCRIPTS -1 // Use -1 to not write AAA script
DEFINE UNKNOWN_EMPTY_SEGMENT 0
DEFINE UNKNOWN_THREADS_MEMORY 0
// --------------------
// THE STRIPPED MAIN THREAD
// contains initial info
// --------------------
thread 'Main'
var
$PLAYER_CHAR: Player
end // var
01F0: set_max_wanted_level_to 6
set_wb_check_to 0
00C0: set_current_time 8 0
04E4: unknown_refresh_game_renderer_at 2488.5601 -1666.84
Camera.SetAtPos(2488.5601, -1666.84, 13.38)
$PLAYER_CHAR = Player.Create(#NULL, 2488.5601, -1666.84, 13.38)
$PLAYER_ACTOR = Actor.EmulateFromPlayer($PLAYER_CHAR)
Camera.SetBehindPlayer
set_weather 0
wait 0 ms
$PLAYER_CHAR.SetClothes("PLAYER_FACE", "HEAD", Head)
$PLAYER_CHAR.SetClothes("JEANSDENIM", "JEANS", Legs)
$PLAYER_CHAR.SetClothes("SNEAKERBINCBLK", "SNEAKER", Shoes)
$PLAYER_CHAR.SetClothes("VEST", "VEST", Torso)
$PLAYER_CHAR.Build
$PLAYER_CHAR.CanMove = True
fade 1 (out) 0 ms
select_interior 0
0629: change_stat 181 (islands unlocked) to 4
016C: restart_if_wasted at 2027.77 -1420.52 15.99 angle 137.0 unknown 0
016D: restart_if_busted at 1550.68 -1675.49 14.51 angle 90.0 unknown 0
0180: set_on_mission_flag_to $ONMISSION
// put your create_thread commands here
create_thread @MyTrigger
end_thread
// put your mission mods here
:MyTrigger
thread "MyTrigger"
$TrigMarker = Marker.CreateIconAndSphere(15, 2489.0591, -1682.2808, 13.3358)
while $MyMission_Passed == 0
wait 250
if Player.Defined($PLAYER_CHAR)
then
if $ONMISSION == 0 // integer values
then
if 00FF: actor $PLAYER_ACTOR 0 2489.0591 -1682.2808 13.3358 radius 1.0 1.0 2.0
then
if Player.Controllable($PLAYER_CHAR)
then
$ONMISSION = 1 // integer values
00BA: text_styled 'INTRO_1' 1000 ms 2 // Big Smoke
Marker.Disable($TrigMarker)
start_mission MyMission
end // if1
end // if2
end // if3
end // if4
end // while
end_thread
// 01E3: text_1number_styled 'M_PASSD' 0 5000 ms 1 // MISSION PASSED!
// $MyMission_Passed = 1
// 0214: pickup $name picked_up
:MyMission
thread "MyMission"
gosub @MissionStart
if
wasted_or_busted
then
gosub @MissionFailed
end
gosub @MissionCleanup
end_thread
:MissionStart
gosub @MissionPassed
return
:MissionPassed
jump @MyMission1a
return
:MissionFailed
00BA: text_styled 'M_FAIL' 5000 ms 1 // ~r~MISSION FAILED!
return
:MissionCleanup
$ONMISSION = 0 // integer values
mission_cleanup
return
:MyMission1a
wait 0
wait 100
fade 0 500
marker.CreateIconWithoutSphere($cluckin,0,2397.48, -1895.4307, 13.0761)
:MyMission2a
wait 0
fade 1 500
if and
0102: actor $PLAYER_ACTOR in_sphere 2397.48 -1895.4307 13.0761 radius 4.0 4.0 6.0 sphere 0 stopped_on_foot
jf @MyMission2a
wait 1000
marker.Disable($cluckin)
:MyMission3a
wait 0
023c: request_special_actor 'sweet' as 1
023c: request_special_actor 'smokev' as 2
023c: request_special_actor 'ryder' as 3
model.Load(#GREENWOO)
038B: load_requested_models
:MyMission3b
wait 0
if and
023d: special_actor 1 loaded
023d: special_actor 2 loaded
023d: special_actor 3 loaded
model.Available(#GREENWOO)
jf @MyMission3b
wait 1000
actor.Create($sweet,mission1,#special01,2370.98, -1939.5011, 13.5469)
actor.Angle($sweet) = 90.0
actor.Create($smoke,mission1,#special02,2369.2217, -1939.5011, 13.5469)
actor.Angle($smoke) = 270.0
car.Create($sweets_car,#greenwoo,2374.1851, -1928.1123, 12.9911)
car.Angle($sweets_car) = 179.7874
:ANIMATIONS
wait 0
04ED: load_animation "GANGS"
:ANIMATIONS_CHECK
wait 0
if and
04EE: animation "GANGS" loaded
jf @ANIMATIONS_CHECK
wait 150
0605: actor $sweet perform_animation_sequence "PRTIAL_GNGTLKA" from_file "GANGS" 4.0 loop 1 0 0 1 8000 ms
:MARKERS
wait 0
if and
0102: actor $PLAYER_ACTOR in_sphere 2372.7339 -1934.6133 13.5469 radius 1.0 1.0 2.0 sphere 0 stopped_on_foot
jf @MARKERS
wait 0
02A3: enable_widescreen 1
fade 0 500
car.Create($sweets_car_homie,#greenwoo,2411.1055, -1910.7717, 13.3828)
car.Angle($sweets_car_homie) = 180.0
wait 1000
036A: put_actor $PLAYER_ACTOR in_car $sweets_car
05CA: AS_actor $sweet enter_car $sweets_car_homie passenger_seat 0 10000 ms
marker.CreateIconAndSphere($sweets_home,0,2401.4014, -1726.8274, 13.5556)
fade 1 500
02A3: enable_widescreen 0
:CHEKCING_MARKERS
wait 0
if and
0103: actor $PLAYER_ACTOR in_sphere 2401.4014 -1726.8274 13.5556 radius 1.0 1.0 5.0 sphere 0 stopped_in_car
jf @CHEKCING_MARKERS
wait 100
05CD: AS_actor $sweet exit_car $sweets_car_homie
05CD: AS_actor $sweet exit_car $sweets_car_homie
fade 0 500
:ENDING
wait 0
// я не знаю чо далбше писать!
// vspomnil!
actor.DestroyInstantly($sweet)
01E3: text_1number_styled 'M_PASSD' 0 5000 ms 1 // MISSION PASSED!
$MyMission_Passed = 1
0394: play_music 3
fade 1 500
05BA: AS_actor $PLAYER_ACTOR move_mouth 8000 ms
end_thread
Где здесь есть ошибка?
я создал свой мод на San-Andreas,установил и.......
этот мод что-то типо ufo radar,но я его установил и в том помещении пусто.прошу помощи,дорогие форумчане.за помощь буду благодарен
Доброе время суток!!!! Здрасте!!!! Люди, помогите!!!! Кароч, я умею немного делать модели, в легкую что-то изменять и т.д. Но вопрос стоит в том: Я сделал домик скромный (замок) для СД, и внешне и внутренне, все текстуры сделал..... во, теперь подскажите, как мне заходить, выходить из дома (желтый указатель)??? как сделать, чтоб я этот домик смог купить???? И как сделать в доме сохранение игры??? Просто я хочу сначала поставить этот дом в определенное место, сделать там гараж, сделать сохр. в доме, поставить пару машин возле дома?!?!?!? Заранее благодарен!!! Ответьте плиз!!!
Мне надо написать такой скрипт чтобы в самолёте "Андром" который используется в двух миссиях когда надо на моцыки залететь в его богажное отделение.Вот я хочу чтобы можно было туда заходить и без миссии.Кто нить напишите такой скрипт я буду очень очень блогодарен!!!
Если так хочешь туда поасть, с мап едитором выложи его на карту и телепортнись туда с прогой телепортом. А скриптом можно телепорт устроить в виде красного маркера
Значит написал скрипт чтоб машина появилась у автосалона 2 города, для клео есессно, но при компиляции пишет следующие:
Недостаточно параметров. Ожидалось 13 параметров
Скрипт такой:
{$CLEO}
create_thread @Car
:Car
wait 100
014B: $Jigul = init_parked_car_generator #CADRONA 8 8 0 alarm 50 door_lock 0 1 1000 at -1990,1318 288,7363 34,1493 angle 180.0
014C: set_parked_car_generator $Jigul cars_to_generate_to 101
end_thread
Пользуюсь учебником Александера для Санни Билдера версия 2.0
Может быть для КЛЕО нужно писать что то особенное ? Они отличаюстя от простых скриптов ?
зы
Хочу еще сделать пикап сохранения в доме полковника из миссии ограбления с Райдером. В дом могу спойкойно входить\выходить с помощь мода Enterable Buildings
Hrum
Юзай прогу ИПЛ хелпер, желтый маркер не к скриптам относится а к маппингу. С пикапом сохранения сам мучаюсь как видишь
MaroderSDK
Можешь похимичить с желтый стрелкой, но это уже с маппингом связано.
А вообще посмотри вот здесь. Сайт Александера, автора общеизвестного Сейвола, который у меня вылетает при загрузке своего же сейва.
Найди еще SB Manual 2. Мануал по скриптингу.
Удачи !
Мне надо написать такой скрипт чтобы в самолёте "Андром" который используется в двух миссиях когда надо на моцыки залететь в его богажное отделение.Вот я хочу чтобы можно было туда заходить и без миссии.Кто нить напишите такой скрипт я буду очень очень блогодарен!!!
кто знает как в CLEO добавлять глобальные переменные? скажите плиззз, нужно загрузить пикап сэйва, вроде эта команда, тока я не понимаю как ей пользоваться:
0@ = #PICKUPSAVE
0@ *= -7
0@ += -4982
0084: $modelID = &0(0@,1i)
нужно загрузить пикап сэйва
пикапы не знадо загружать. сразу пишешь 0213: $PICKUP = create_pickup #PICKUPSAVE type 14 at 2027.77 -1420.52 16.49
Dark Archer aka man from san fierro[FT] отдыхает 31.05.08 16:55
Может быть для КЛЕО нужно писать что то особенное ? Они отличаюстя от простых скриптов ?
нифига подобного. всё также. просто обрати внимание на свои координаты: -1990,1318 288,7363 34,1493 - с запятыми. это недопутимо. надо с точками. вот так: -1990.1318 288.7363 34.1493. btw я знаю этот глюк в SB просто надо перезагрузить файл )
Плиз помогите мне ктонибуть!!!
У меня есть скрипт чтобы когда в тачку садишься то она у тя тюнингуется!!
Но я его хочу изменить чтобы когда пишешь команду /tune она тюнинговалась!!!
Вот код:
#include
#if defined FILTERSCRIPT
public OnFilterScriptInit(){
print("\n--------------------------------------");
print(" tuning all cars by kRiS");
print("--------------------------------------\n");
return 1;}
main(){
print("\n----------------------------------");
print(" tuning all cars by kRiS");
print("----------------------------------\n");}
#endif
public OnPlayerEnterVehicle (playerid, vehicleid){
SetVehicleHealth(vehicleid, 1000);
new modelid;
modelid = GetVehicleModel(vehicleid);
switch(modelid){
case 400:{
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1087);
AddVehicleComponent(vehicleid,1018);
AddVehicleComponent(vehicleid,1013);
AddVehicleComponent(vehicleid,1081);
AddVehicleComponent(vehicleid,1086);}
case 401:{
AddVehicleComponent(vehicleid,1086);
AddVehicleComponent(vehicleid,1139);
AddVehicleComponent(vehicleid,1081);
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1087);
AddVehicleComponent(vehicleid,1012);
AddVehicleComponent(vehicleid,1013);
AddVehicleComponent(vehicleid,1042);
AddVehicleComponent(vehicleid,1043);
AddVehicleComponent(vehicleid,1018);
AddVehicleComponent(vehicleid,1006);
AddVehicleComponent(vehicleid,1007);
AddVehicleComponent(vehicleid,1017);}
case 406:{
AddVehicleComponent(vehicleid,1081);}
case 444:{
AddVehicleComponent(vehicleid,1081);
AddVehicleComponent(vehicleid,1087);}
case 407:{
AddVehicleComponent(vehicleid,1081);
AddVehicleComponent(vehicleid,1010);}
case 578,579,580,582,583,584,585,587,588,589,596,597,
598,599,600,601,602,603,604,605,609,568,572,574,402,
403,404,405,408,409,410,411,412,413,414,415,416,418,
419,421,422,423,424,426,427,428,429,431,432,433,434,
436,437,438,439,440,441,442,443,445,451,455,456,
457,458,459,466,467,470,474,475,477,478,479,480,482,
483,485,486,489,492,494,495,496,498,499,500,502,503,
504,505,506,507,508,514,515,516,517,518,524,525,526,
527,528,529,530,531,532,533,540,541,542,543,566,544,
545,546,547,549,550,551,552,554,555:{
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1087);
AddVehicleComponent(vehicleid,1081);}
case 420:{
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1087);
AddVehicleComponent(vehicleid,1081);
AddVehicleComponent(vehicleid,1139);}
case 534:{
ChangeVehiclePaintjob(vehicleid,2);
AddVehicleComponent(vehicleid,1180);
AddVehicleComponent(vehicleid,1185);
AddVehicleComponent(vehicleid,1100);
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1127);
AddVehicleComponent(vehicleid,1101);
AddVehicleComponent(vehicleid,1122);
AddVehicleComponent(vehicleid,1087);}
case 535:{
ChangeVehiclePaintjob(vehicleid,2);
AddVehicleComponent(vehicleid,1109);
AddVehicleComponent(vehicleid,1115);
AddVehicleComponent(vehicleid,1117);
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1087);
AddVehicleComponent(vehicleid,1114);
AddVehicleComponent(vehicleid,1081);
AddVehicleComponent(vehicleid,1119);
AddVehicleComponent(vehicleid,1121);}
case 536:{
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1183);
AddVehicleComponent(vehicleid,1181);
AddVehicleComponent(vehicleid,1107);
AddVehicleComponent(vehicleid,1104);
AddVehicleComponent(vehicleid,1108);
AddVehicleComponent(vehicleid,1087);
AddVehicleComponent(vehicleid,1081);}
case 556,557:{
AddVehicleComponent(vehicleid,1010);}
case 558:{
AddVehicleComponent(vehicleid,1092);
AddVehicleComponent(vehicleid,1166);
AddVehicleComponent(vehicleid,1165);
AddVehicleComponent(vehicleid,1090);
AddVehicleComponent(vehicleid,1094);
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1087);
AddVehicleComponent(vehicleid,1163);
AddVehicleComponent(vehicleid,1091);
ChangeVehiclePaintjob(vehicleid,2);}
case 559:{
AddVehicleComponent(vehicleid,1070);
AddVehicleComponent(vehicleid,1066);
AddVehicleComponent(vehicleid,1072);
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1087);
AddVehicleComponent(vehicleid,1147);
AddVehicleComponent(vehicleid,1068);
AddVehicleComponent(vehicleid,1173);
AddVehicleComponent(vehicleid,1161);
ChangeVehiclePaintjob(vehicleid,1);}
case 560:{
AddVehicleComponent(vehicleid,1028);
AddVehicleComponent(vehicleid,1140);
AddVehicleComponent(vehicleid,1170);
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1087);
AddVehicleComponent(vehicleid,1139);
AddVehicleComponent(vehicleid,1033);
AddVehicleComponent(vehicleid,1031);
AddVehicleComponent(vehicleid,1030);
ChangeVehiclePaintjob(vehicleid,1);
}case 561:{
AddVehicleComponent(vehicleid,1056);
AddVehicleComponent(vehicleid,1156);
AddVehicleComponent(vehicleid,1157);
AddVehicleComponent(vehicleid,1062);
AddVehicleComponent(vehicleid,1059);
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1087);
AddVehicleComponent(vehicleid,1146);
AddVehicleComponent(vehicleid,1061);
ChangeVehiclePaintjob(vehicleid,2);}
case 562:{
ChangeVehiclePaintjob(vehicleid,1);
AddVehicleComponent(vehicleid,1037);
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1035);
AddVehicleComponent(vehicleid,1039);
AddVehicleComponent(vehicleid,1041);
AddVehicleComponent(vehicleid,1086);
AddVehicleComponent(vehicleid,1087);
AddVehicleComponent(vehicleid,1147);
AddVehicleComponent(vehicleid,1148);
AddVehicleComponent(vehicleid,1172);}
case 565:{
ChangeVehiclePaintjob(vehicleid,2);
AddVehicleComponent(vehicleid,1046);
AddVehicleComponent(vehicleid,1151);
AddVehicleComponent(vehicleid,1152);
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1087);
AddVehicleComponent(vehicleid,1139);
AddVehicleComponent(vehicleid,1081);
AddVehicleComponent(vehicleid,1053);
AddVehicleComponent(vehicleid,1047);
AddVehicleComponent(vehicleid,1051);}
case 567:{
AddVehicleComponent(vehicleid,1188);
AddVehicleComponent(vehicleid,1186);
AddVehicleComponent(vehicleid,1102);
AddVehicleComponent(vehicleid,1133);
AddVehicleComponent(vehicleid,1018);
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1087);
ChangeVehiclePaintjob(vehicleid,2);
AddVehicleComponent(vehicleid,1081);}
case 575:{
ChangeVehiclePaintjob(vehicleid,1);
AddVehicleComponent(vehicleid,1175);
AddVehicleComponent(vehicleid,1177);
AddVehicleComponent(vehicleid,1043);
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1081);
AddVehicleComponent(vehicleid,1042);
AddVehicleComponent(vehicleid,1099);
AddVehicleComponent(vehicleid,1087);}
case 576:{
ChangeVehiclePaintjob(vehicleid,2);
AddVehicleComponent(vehicleid,1191);
AddVehicleComponent(vehicleid,1193);
AddVehicleComponent(vehicleid,1010);
AddVehicleComponent(vehicleid,1018);
AddVehicleComponent(vehicleid,1081);
AddVehicleComponent(vehicleid,1087);
AddVehicleComponent(vehicleid,1134);
AddVehicleComponent(vehicleid,1137);}}
switch(modelid)
{case 407,578,579,580,582,583,584,585,587,588,589,596,
597,400,401,420,534,535,536,556,557,558,559,560,561,
598,599,600,601,602,603,604,605,609,568,572,574,402,
403,404,405,408,409,410,411,412,413,414,415,416,418,
419,421,422,423,424,426,427,428,429,431,432,433,434,
436,437,438,439,440,441,442,443,444,445,451,455,456,
457,458,459,466,467,470,474,475,477,478,479,480,482,
483,485,486,489,492,494,495,496,498,499,500,502,503,
504,505,506,507,508,514,515,516,517,518,524,525,526,
527,528,529,530,531,532,533,540,541,542,543,566,544,
545,546,547,549,550,551,552,554,555562,565,567,575,
576:{
AddVehicleComponent(vehicleid,1010);}}
return 1;}
Помогите переделать его!!!
нифига подобного. всё также. просто обрати внимание на свои координаты: -1990,1318 288,7363 34,1493 - с запятыми. это недопутимо. надо с точками. вот так: -1990.1318 288.7363 34.1493. btw я знаю этот глюк в SB просто надо перезагрузить файл )
спс !
А не знаете ли вы где находится вся инфа о бандах в игре ? Например, какая захватываемая, какая нет, где указаны цвета на карте и т.д.
Заранее спс !
MaroderSDK
:telepor_1
0001: wait 0 ms
04CE: $1 = create_icon_marker_without_sphere 18 at 0.0 0.0 0.0
03BC: $2 = create_sphere 0.0 0.0 0.0 1.0
00D6: if 0
00F0: actor $PLAYER_ACTOR stopped 0 ()near_point_on_foot 0.0 0.0 0.0 radius 3.0 3.0 004D: jump_if_false ЈЈtelepor_1
0002: jump ЈЈteleport_2
:teleport_2
0001: wait 0 ms
00A1: put_actor $PLAYER_ACTOR at 0.0 0.0 0.0
03BD: destroy_sphere $2
0164: disable_marker $1
0001: wait 3000 ms
0002: jump ЈЈteleport_1
вместо нулей напиши свои координаты, в первом блоке где будет находиться телепорт, а во втором куда тебе нужно телепортироваться, а ваще если что пиши мне на ящик h-tray.92@mail.ru
А не знаете ли вы где находится вся инфа о бандах в игре ? Например, какая захватываемая, какая нет, где указаны цвета на карте и т.д.
всю инфу о бандах можно найти в файлах ped.dat, pedgrp.dat, peds.ide и pedstats.dat. ну ещё есть main.scm :-) там эти банды расставлены опкодом 076C: set_zone 'ELCO1' gang 2 density_to 40 и им даётся оружие 0237: set_gang 1 weapons_to 24 29 4 можно включить войны за кварталы 0879: enable_gang_wars 1 после этого районы вагосов, баласов и OGS окрашиваются в свои цвета и можно идти захватывать... территории других банд, кроме LSV и RHB, захватывать нельзя :-(
H-tray, а как же выбор интерьера 04BB: select_interior 0 и вставка в него актёра 0860: link_actor $PLAYER_ACTOR to_interior 6? без этого по-моему интерьера видно не будет.
территории других банд, кроме LSV и RHB, захватывать нельзя :-(
очень жаль ((( про ped.dat, pedgrp.dat, peds.ide и pedstats.dat я оооочень давно знал, про мэйн узнал месяц - полтора назад
ВотЪ написал скрипт на бронировку тачек. Но когда скрип в игре немогу в в подменюшках выбирать пробелом ! это если в конце jump, а если end_thread то в тюне маркер пропадает, равно как и в парикмахерских и т.д. !
check it, pal ;-) усё работаит
thread 'BRONIROVKA'
:BRONIROVKA_19
wait 0
1@ = Marker.CreateIconAndSphere(55, 1680.035, 2339.63, 9.792)
:BRONIROVKA_45
wait 0
if and
Player.Defined($PLAYER_CHAR)
Actor.Driving($PLAYER_ACTOR)
0101: actor $PLAYER_ACTOR in_sphere 1680.035 2339.63 9.792 radius 3.0 3.0 10.0 sphere 0 stopped
//Player.CanMove($PLAYER_CHAR) = True - нах ты это сюды всунул непонятно ваще
jf @BRONIROVKA_45
wait 2000
03C0: 2@ = actor $PLAYER_ACTOR car
Car.SetImmunities(2@, 1, 1, 1, 1, 1)
Player.Money($PLAYER_CHAR) += -50000
Marker.Disable(1@)
jump @BRONIROVKA_19
да я уже разобралсо, но сё равно спс ) еще раз пересмотриел скрипт, у плеер.кэнмув удалил. зря я его туда пихнул )
а вот если скрипт из удалить в сейве остаюстя иконку & маркеры. как с этим разобраться ?
отлично !
P.S. вот скрипт (посвящается тем кому надоел CJ, а точнее его модель)
нажми одновременно кнопки "оглянуться" и "ответ - да" у меня к примеру это CКМ (колесико мышки) и Y
:test
wait 30
if and
00E1: player 0 pressed_key 19 // look behind
00E1: player 0 pressed_key 11 // conversation - yes
else_jump @test
fade 0 1000
0209: 27@ = random_int_in_ranges 9 288
if
07DE: not model 27@ exists // versionB
else_jump @test
model.load(27@) // загружается случайная модель (см. PEDS.IDE)
038b: load requested models
:check
wait 1000
if
model.available(27@)
jf @check
actor.Create(1@,20,27@,0.0,0.0,0.0)
0665: get_actor 1@ model_to 9@
09C7: change_player $PLAYER_CHAR model_to 9@
wait 1000
model.destroy(27@)
fade 1 1000
wait 1000
jump @test
если не хочешь чтобы твой новый герой "звучал" как Карл юзай команду 0489: set_actor $PLAYER_ACTOR muted 1
Как отключить в GTA SA эффект NFS MW, т.е. когда превысишь скорость на авто, то камера плавно (оч. медлено) переходит на копа котрорый меня "спалил" - ну как в NFS MW. Как вот это убрать, а то уже надоело.
дай угадаю: у тебя стоит мод Night Crimes? мне этот эфект тож мало нравица, так что если не знаешь скриптинг замени main.scm и script.img из data/script на оригинальные или другие какие есть.
Да, мод Night Crimes. К сожелению оригинала и других нету версий игры...
скажу по секрету чтоб отключит этот эфект достаточно удалить одну строчку
1) открываеш в SB файл main.scm
2) ищеш строку create_thread @Noname_9
3) удаляеш либо коментируеш (Сtrl+Q) чтоб игра игнорировала поток Noname_9
4) компилируеш F6 и запускаеш игру F8
p.s. чтоб проверить тот ли это поток найди Noname_9 (Сtrl+F) там д\б написано
02E3: 12@ = car $11883 speed
if
12@ >= 30.0
else_jump @Noname_9
вот демо версия мишн-пака (Mission Pack) из GTA III
всего 9 миссий: коп, 4 гонки (по чекпоинтам), 4 от М.Чонкса
1 внеш/скрипт: тюнинг
доступные интерьеры
и проч. НЕ ЗАБЫВАЙ ДЕЛАТЬ БЭКАПЫ
буду рад почитать комментарии: что добавить, что убрать и т.д.
p.s. далее добавлю другие миссии и обновлю пост
клео 3 юзаем
базариш чувак. я к прримеру юзаю bonus.cs (бонусный пикап) RealTrains.cs (реальные поезда) MultiSave.cs (сейв везде)
Antoxa.
рад стараться :-D
Как так? Да ну не может он запуститься без Main'а... А какие тюнинг детали сущ.?
#Model и прицепить можно одной командой все компоненты?
Да ну не может он запуститься без Main'а
кто не может? клео? дык ясен хер. и игра не может.
тюнинг:
06E9: load_car_component #WHEEL_OR1 - грузим деталь
06EA: car_component $10415 available - проверка наличия
06E7: 276@ = add_car_component #WHEEL_OR1 to_car 47@ - ставим на тачу
06EB: release_car_component #WHEEL_OR1 - выгружаем из памяти
ILdar07 а у тя нет скрипта пассажира в клео кароче там си джей садится в тачку с него снимают 500) и он может драйв бай делать и все такое , кароче прикольно - мне в лом самому такой скрипт писать - задолбаюсь , чтобы он еще работал), я где то видел но найти не магу - дурак тогда не скачал(
а из клео я юзаю тока свои скрипты) там у мня бандиты появляются ) для захвата территорий
ну дык я тож знаеш лазаю по сайтам ловлю идеи потом через SB мучаю скрипт и он становится почти совсем другим :) тот же bonus.cs я изменил как и RealTrains.cs а нассчёт пассажира я этот скрипт ПОЛНОСТЬЮ выклал в этой теме на 1-й странице добавляешь
{$VERSION 3.1.0027}
{$CLEO .cs} и компилируй правда у мну всё халява никаких денег не дерут и обрати вниманье как там обозначен игрок и его актёр
чтобы бабло отнималось а не прибавлялось.
где ты такое нашёл? можно писать и Player.Money($PLAYER_CHAR) -= 50000.
p.s. в тюне такое есть.
Да Здравствует Скриптинг!!!
вот полная версия моего мищн-пака (см. пост от 10.07.08 16:30) файлы нестандартного формата. так что не для новичков.
и еще вопрос. кто-нибудь слышал о моде Things To Do In San Andreas? а может даже видел его и … даже играл??? О:-0
edit 19:42 2008-07-24 demo v.2
Можноли зделать так CJ стал NEO:быстро бегал ,останавливал время,уварачиволся от пуль? или мона то как
или мона то как - опкодами.
быстро бегал - 0330: set_player $PLAYER_CHAR infinite_run 1
останавливал время - 015D: set_gamespeed 0.0
уварачиволся от пуль - жми "присесть", потом "прицел"+"влево/вправо"
Как отключить эффект NFS MW, т.е. когда превысишь скорость на авто, то камера плавно (оч. медлено) переходит на копа котрорый меня "спалил" - ну как в NFS MW. Как вот это убрать, а то уже надоело. И еще убрать такое же замедление когда жмешь на ручной тормаз. Все это в GTA-SA forsage3 (GTA-SA Тройной форсаж токийский дрифт). И скал через SB так и ненашел :( где она там?
Nowsan , оно то наверно можно , но ты хоть чуть-чуть понимаешь в скриптах ?
Antoxa.
замедление ставится опкодом 015D:
удали строку с ним и всё!
p.s. нормальное время 015D: set_gamespeed 1.0 чем меньше 1.0 тем медленее время.
когда ставлю везде 015D: set_gamespeed 1.0 то он выдает ашибку при компилировании: "Метка "DDRUNK" не найдена." что делать?
:-D
у меня такая же феня. даже не знаю, почему так. толи SB мудрит, толи хз чо…
короче ищешь thread 'DDRUNK' над ним добавь :DDRUNK
метка не найдена - значит нету потока с таким именем либо начало этого потока съел SB мать его :-) и соединил с предыдущим. в нашем случае так и произошло. поток DDRUNK слился с MOB_GF (или какой там у тя)
Я разархивировал Sanny Builder 2.9 на рабочий стол, включаю его, выбираю (папка Сани)\data\main.scm, пытаюсь открыть, а он пишет: Set game folder first. Чё делать??? Подскажите плиз!
Сервис -> Настройки. Видишь надпись "Папка GTA SA"? Жми квадратик рядом с ней и ищи папку своей игры.
Не забудь потом кликнуть ОК ;-D
Стоп - SB y меня на русском. Ну может тебе удобнее на английском. Там же в настройках можешь язык поменять.
И вообще - SB v3.03 - не слышал о таком? Имхо лучше!
Вот, блин: я редактировал main.scm как мне надо, сохраняю и вижу, что мною изменённый main рядом с оригиналом лежит, да ещё в формате txt. :( Как его обратно в формат scm переделать? Ответьте плиз. Зарание спс!
SB при декомпиляции создаёт текстовый файл main.txt который ты и видишь в окне программы. при компиляции же main.scm переписывается (если конечно ты отметил в Настройках «Перезапись выходного файла»). так что не суетись - SB всё делает чётко! компилируй (F6) и запускай (F8)
data\maps\veh_mods\veh_mods.ide
data\carmods.dat
=>Зaдние нaвороты: bbb_lr_slv1, bbb_lr_slv2
=>Рeшётки на капот (вентиляция): bntl_b_ov, bntl_b_sq, bntr_b_ov, bntr_b_sq
=>Капoт: bnt_b_sc_l, bnt_b_sc_m, bnt_b_sc_p_l, bnt_b_sc_p_m, bnt_lr_slv1, bnt_lr_slv2
=>Глушители: exh_a_f, exh_a_j, exh_a_l, exh_a_s, exh_a_st, exh_a_u, exh_b_l, exh_b_m, exh_b_s, exh_b_t, exh_b_ts, exh_c_f, exh_c_j, exh_c_l, exh_c_s, exh_c_st, exh_c_u, exh_lr_bl1, exh_lr_bl2, exh_lr_br1, exh_lr_br2, exh_lr_rem1, exh_lr_rem2, exh_lr_slv1, exh_lr_slv2, exh_lr_sv1, exh_lr_sv2, exh_lr_t1, exh_lr_t2
=>Передние нaвороты: fbb_lr_slv1, fbb_lr_slv2
=>Передний Бампeр: fbmp_a_f, fbmp_a_j, fbmp_a_l, fbmp_a_s, fbmp_a_st, fbmp_a_u, fbmp_c_f, fbmp_c_j, fbmp_c_l, fbmp_c_s, fbmp_c_st, fbmp_c_u, fbmp_lr_bl1, fbmp_lr_bl2, fbmp_lr_br1, fbmp_lr_br2, fbmp_lr_rem1, fbmp_lr_rem2, fbmp_lr_slv1, fbmp_lr_sv1, fbmp_lr_sv2, fbmp_lr_t1, fbmp_lr_t2
=>Фары: lgt_b_rspt, lgt_b_sspt
=>Разное: misc_c_lr_rem1, misc_c_lr_rem2, misc_c_lr_rem3
=>Нитрo (Азот): nto_b_l, nto_b_s, nto_b_tw
=>Зaдний Бампeр: rbmp_a_f, rbmp_a_j, rbmp_a_l, rbmp_a_s, rbmp_a_st, rbmp_a_u, rbmp_c_f, rbmp_c_j, rbmp_c_l, rbmp_c_s, rbmp_c_st, rbmp_c_u, rbmp_lr_bl1, rbmp_lr_bl2, rbmp_lr_br1, rbmp_lr_br2, rbmp_lr_rem1, rbmp_lr_rem2, rbmp_lr_sv1, rbmp_lr_sv2, rbmp_lr_t1, rbmp_lr_t2
=>Крыша: rf_a_f, rf_a_j, rf_a_l, rf_a_s, rf_a_st, rf_a_u, rf_b_sc_r, rf_c_f, rf_c_j, rf_c_l, rf_c_s, rf_c_st, rf_c_u, rf_lr_bl1, rf_lr_bl2, rf_lr_sv1, rf_lr_sv2
=>Спoйлeра: spl_a_f_r, spl_a_j_b, spl_a_l_b, spl_a_st_r, spl_a_s_b, spl_a_u_b, spl_b_bab_m, spl_b_bar_l, spl_b_bar_m, spl_b_bbb_m, spl_b_bbr_l, spl_b_bbr_m, spl_b_mab_m, spl_b_mar_m, spl_c_f_r, spl_c_j_b, spl_c_l_b, spl_c_st_r, spl_c_s_b, spl_c_u_b
=>Боковыe Юбки: wg_l_a_f, wg_l_a_j, wg_l_a_l, wg_l_a_s, wg_l_a_st, wg_l_a_u, wg_l_b_ssk, wg_l_c_f, wg_l_c_j, wg_l_c_l, wg_l_c_s, wg_l_c_st, wg_l_c_u, wg_l_lr_bl1, wg_l_lr_br1, wg_l_lr_rem1, wg_l_lr_rem2, wg_l_lr_slv1, wg_l_lr_slv2, wg_l_lr_sv, wg_l_lr_t1, wg_r_a_f, wg_r_a_j, wg_r_a_l, wg_r_a_s, wg_r_a_st, wg_r_a_u, wg_r_b_ssk, wg_r_c_f, wg_r_c_j, wg_r_c_l, wg_r_c_s, wg_r_c_st, wg_r_c_u, wg_r_lr_bl1, wg_r_lr_br1, wg_r_lr_rem1, wg_r_lr_rem2, wg_r_lr_slv1, wg_r_lr_slv2, wg_r_lr_sv, wg_r_lr_t1
=>Колeса: wheel_gn1, wheel_gn2, wheel_gn3, wheel_gn4, wheel_gn5, wheel_lr1, wheel_lr2, wheel_lr3, wheel_lr4, wheel_lr5, wheel_or1, wheel_sr1, wheel_sr2, wheel_sr3, wheel_sr4, wheel_sr5, wheel_sr6
Чё это за скрипт, и с чем его едят???
:F4
wait 0
thread 'F4'
1@ = 304497
:F4_25
wait 0
if
&0(1@,1i) == 16711680
else_jump @F4_25
Model.Load(#FAM1)
Model.Load(#FAM2)
Model.Load(#FAM3)
Model.Load(#MICRO_UZI)
Model.Load(#COLT45)
Model.Load(#CHROMEGUN)
Model.Load(#MP5LNG)
038B: load_requested_models
:F4_88
wait 0
if and
Model.Available(#FAM1)
Model.Load(#FAM2)
Model.Load(#FAM3)
Model.Load(#MICRO_UZI)
Model.Load(#COLT45)
Model.Load(#CHROMEGUN)
Model.Load(#MP5LNG)
038B: load_requested_models
:F4_88
wait 0
if and
Model.Available(#FAM1)
Model.Available(#FAM2)
Model.Available(#FAM3)
Model.Available(#MICRO_UZI)
Model.Available(#COLT45)
Model.Available(#CHROMEGUN)
Model.Available(#MP5LNG)
else_jump @F4_88
wait 0
0209: $M2 = random_int_in_ranges 105 107
0209: $M3 = random_int_in_ranges 106 108
04C4: store_coords_to $X1 $Y1 $Z1 from_actor $PLAYER_ACTOR with_offset 0.0 5.0 0.0
$G1 = Actor.Create(Gang2, $M2, $X1, $Y1, $Z1)
$X1 += 2.0
$G2 = Actor.Create(Gang2, $M3, $X1, $Y1, $Z1)
$X1 += 2.0
$G3 = Actor.Create(Gang2, $M2, $X1, $Y1, $Z1)
$X1 += 2.0
$G4 = Actor.Create(Gang2, $M3, $X1, $Y1, $Z1)
$X1 += 2.0
$G5 = Actor.Create(Gang2, $M2, $X1, $Y1, $Z1)
$X1 += 2.0
$G6 = Actor.Create(Gang2, $M3, $X1, $Y1, $Z1)
$X1 = 0.0
$Y1 = 0.0
$Z1 = 0.0
081A: set_actor $G1 weapon_skill_to 1
081A: set_actor $G2 weapon_skill_to 1
081A: set_actor $G3 weapon_skill_to 1
081A: set_actor $G4 weapon_skill_to 2
081A: set_actor $G5 weapon_skill_to 2
081A: set_actor $G6 weapon_skill_to 2
01B2: give_actor $G1 weapon 22 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G2 weapon 28 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G3 weapon 25 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G4 weapon 28 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G5 weapon 25 ammo 99999 // Load the weapon model before using this
01B2: give_actor $G6 weapon 29 ammo 99999 // Load the weapon model before using this
Actor.WeaponAccuracy($G1) = 90
Actor.WeaponAccuracy($G2) = 90
Actor.WeaponAccuracy($G3) = 90
Actor.WeaponAccuracy($G4) = 90
Actor.WeaponAccuracy($G5) = 90
Actor.WeaponAccuracy($G6) = 90
05DE: AS_actor $G1 walk_around_ped_path
05DE: AS_actor $G2 walk_around_ped_path
05DE: AS_actor $G3 walk_around_ped_path
05DE: AS_actor $G4 walk_around_ped_path
05DE: AS_actor $G5 walk_around_ped_path
05DE: AS_actor $G6 walk_around_ped_path
Actor.RemoveReferences($G1)
Actor.RemoveReferences($G2)
Actor.RemoveReferences($G3)
Actor.RemoveReferences($G4)
Actor.RemoveReferences($G5)
Actor.RemoveReferences($G6)
060B: set_actor $G1 decision_maker_to 3
060B: set_actor $G2 decision_maker_to 3
060B: set_actor $G3 decision_maker_to 3
060B: set_actor $G4 decision_maker_to 3
060B: set_actor $G5 decision_maker_to 3
060B: set_actor $G6 decision_maker_to 3
jump @F4
Сделайте ктонить, пожалуйста, скрипт для клео, чтобы можно было людей оживлять, как это делают медики.
Как называется модель сигареты??? Не cigara и не cigarette точно (во всяком случае у меня). Помогите плиз!
НЕ, я хочу чттоб с оживлением; но например если оживил, у воскрешённого процентов 60 жизней делалось, а не все 100; ещё чтоб оживлять каждого чела можно было только 1 раз (а то начнут членов банды по 10 раз оживлять) и чтоб оживил, а он за это тебе до штуки баблосов давал (смотря какого статуса человек); если девушка -- целует СиДжи, 25 HP у ГГ прибавляется и sexy + 2%; ну а если мужик -- дружеское рукопожатие и respect +5%. Вот так было бы очень прикольно!
Я пишу для клео:
// This file was decompiled using sascm.ini published by Seemann (sannybuilder.com/files/SASCM.rar) on 13.10.2007
{$VERSION 3.1.0027}
{$CLEO .cs}
//-------------MAIN---------------
0000: NOP
:WEAPON
wait 0
thread 'WEAPON'
032B: $1 = create_weapon_pickup #HEATSEEK group 15 ammo 10 at 847.6262 -1701.4424 13.5469
032B: $2 = Pickup.Create(#HEALTH, 3, 847.6262, -1701.4424, 13.5469)
032B: $3 = Pickup.Create(#BODYARMOUR, 3, 974.6646, -1657.7264, 13.4697)
032B: $4 = create_weapon_pickup #M4 group 15 ammo 30 at 967.0618 -1643.8025 13.5192
032B: $5 = create_weapon_pickup #MINIGUN group 15 ammo 30 at 967.0618 -1643.8025 13.5192
032B: $6 = create_weapon_pickup #MINIGUN group 15 ammo 30 at 967.0618 -1643.8025 13.5192
032B: $7 = create_weapon_pickup #MINIGUN group 15 ammo 30 at 967.0618 -1643.8025 13.5192
jump @WEAPON
Нажимаю "компилировать", а он мне говорит: "Недостаточно параметров, ожидалось 7."
ЧЁ ДЕЛАТЬ???
помогите выташить отсюда параметры отвечаюцие только за бензин (вообще идет со спидометром. но мне надо только бензин). please
// This file was decompiled using sascm.ini published by Seemann (sannybuilder.com/files/SASCM.rar) on 13.10.2007
{$VERSION 3.1.0027}
{$CLEO .cs}
//-------------MAIN---------------
0000: NOP
:NONAME_2
wait 0
if
Player.Defined($PLAYER_CHAR)
else_jump @NONAME_2
if and
Actor.Driving($PLAYER_ACTOR)
$ONMISSION == 0
else_jump @NONAME_2
if and
84A7: not actor $PLAYER_ACTOR driving_boat
84A9: not actor $PLAYER_ACTOR driving_heli
not Actor.DrivingPlane($PLAYER_ACTOR)
84C8: not actor $PLAYER_ACTOR driving_flying_vehicle
89AE: not actor $PLAYER_ACTOR driving_train
not Actor.DrivingVehicleType($PLAYER_ACTOR, #BMX)
not Actor.DrivingVehicleType($PLAYER_ACTOR, #BIKE)
not Actor.DrivingVehicleType($PLAYER_ACTOR, #MTBIKE)
else_jump @NONAME_2584
077E: get_active_interior_to $ACTIVE_INTERIOR
if
$ACTIVE_INTERIOR == 0
else_jump @NONAME_2
03C0: 8@ = actor $PLAYER_ACTOR car
046C: 26@ = car 8@ driver
if
003B: 26@ == $PLAYER_ACTOR // (int)
else_jump @NONAME_2
0391: release_txd_dictionary
0390: load_txd_dictionary "GASOLINE"
038F: load_texture "SCALEF" as 1 // Load dictionary with 0390 first
038F: load_texture "SCALEE" as 2 // Load dictionary with 0390 first
038F: load_texture "ARROW" as 3 // Load dictionary with 0390 first
038F: load_texture "LOCK" as 4 // Load dictionary with 0390 first
038F: load_texture "SPEEDOM" as 5 // Load dictionary with 0390 first
038F: load_texture "STRELK" as 6 // Load dictionary with 0390 first
038F: load_texture "ARROWN" as 7 // Load dictionary with 0390 first
038F: load_texture "NITRO" as 8 // Load dictionary with 0390 first
wait 250
0AB3: var 2 = 0
0A92: create_custom_thread "asset_radar.ard"
gosub @NONAME_1965
if
88B7: not test 12@ bit 1
else_jump @NONAME_357
0099: 10@ = random_int_in_ranges_0_to_32767
08BD: set 12@ bit 1
0A8C: write_memory 11@ size 1 value 12@ virtual_protect 0
jump @NONAME_384
:NONAME_357
0A97: 22@ = car 8@ struct
22@ += 5
0A8D: 10@ = read_memory 22@ size 4 virtual_protect 0
:NONAME_384
wait 0
0A8D: 28@ = read_memory 11989093 size 1 virtual_protect 0
if
not 28@ == 1
else_jump @NONAME_1730
077E: get_active_interior_to $ACTIVE_INTERIOR
if
$ACTIVE_INTERIOR == 0
else_jump @NONAME_1829
if
$ONMISSION == 0
else_jump @NONAME_1829
if
Actor.InCar($PLAYER_ACTOR, 8@)
else_jump @NONAME_1730
gosub @NONAME_1994
if
10@ > 0
else_jump @NONAME_1858
02E3: 9@ = car 8@ speed
if
9@ == 0.0
else_jump @NONAME_541
jump @NONAME_1730
:NONAME_541
0AB4: 30@ = var 0
if
30@ == 0
else_jump @NONAME_783
if and
20.0 > 9@
9@ > 1.0
else_jump @NONAME_604
10@ -= 1
:NONAME_604
if
81F3: not car 8@ in_air
else_jump @NONAME_776
if and
9@ > 20.0
35.0 > 9@
else_jump @NONAME_658
10@ -= 2
:NONAME_658
if and
9@ > 35.0
50.0 > 9@
else_jump @NONAME_696
10@ -= 3
:NONAME_696
if and
9@ > 50.0
60.0 > 9@
else_jump @NONAME_741
10@ -= 5
jump @NONAME_783
:NONAME_741
if
9@ > 60.0
else_jump @NONAME_783
10@ -= 10
jump @NONAME_783
:NONAME_776
10@ -= 1
:NONAME_783
if and
8100: not actor $PLAYER_ACTOR in_sphere 1944.852 -1769.554 13.0125 radius 1.5 1.5 3.0 sphere 0 in_car
8100: not actor $PLAYER_ACTOR in_sphere 2209.816 2481.934 10.8203 radius 1.5 1.5 3.0 sphere 0 in_car
8100: not actor $PLAYER_ACTOR in_sphere 604.8804 1705.273 6.541 radius 1.5 1.5 3.0 sphere 0 in_car
8100: not actor $PLAYER_ACTOR in_sphere -2414.49 982.081 45.2969 radius 1.5 1.5 3.0 sphere 0 in_car
8100: not actor $PLAYER_ACTOR in_sphere -2244.623 -2561.828 31.9219 radius 1.5 1.5 3.0 sphere 0 in_car
8100: not actor $PLAYER_ACTOR in_sphere -1327.512 2678.107 50.0625 radius 1.5 1.5 3.0 sphere 0 in_car
8100: not actor $PLAYER_ACTOR in_sphere -95.1488 -1174.303 1.9281 radius 1.5 1.5 3.0 sphere 0 in_car
8100: not actor $PLAYER_ACTOR in_sphere -1679.982 408.9051 7.2365 radius 1.5 1.5 3.0 sphere 0 in_car
else_jump @NONAME_1404
if and
8100: not actor $PLAYER_ACTOR in_sphere 652.03 -571.34 16.34 radius 1.5 1.5 3.0 sphere 0 in_car
8100: not actor $PLAYER_ACTOR in_sphere -1605.897 -2714.252 48.5335 radius 1.5 1.5 3.0 sphere 0 in_car
8100: not actor $PLAYER_ACTOR in_sphere -1471.48 1864.31 32.64 radius 1.5 1.5 3.0 sphere 0 in_car
8100: not actor $PLAYER_ACTOR in_sphere 1596.5 2199.1 10.83 radius 1.5 1.5 3.0 sphere 0 in_car
8100: not actor $PLAYER_ACTOR in_sphere 2145.9 2748.16 10.83 radius 1.5 1.5 3.0 sphere 0 in_car
8100: not actor $PLAYER_ACTOR in_sphere 2642.11 1106.53 10.83 radius 1.5 1.5 3.0 sphere 0 in_car
8100: not actor $PLAYER_ACTOR in_sphere 2117.42 920.42 10.83 radius 1.5 1.5 3.0 sphere 0 in_car
8100: not actor $PLAYER_ACTOR in_sphere 1381.68 456.26 19.91 radius 1.5 1.5 3.0 sphere 0 in_car
else_jump @NONAME_1404
jump @NONAME_1730
:NONAME_1404
077E: get_active_interior_to $ACTIVE_INTERIOR
if
$ACTIVE_INTERIOR == 0
else_jump @NONAME_1829
if
$ONMISSION == 0
else_jump @NONAME_1829
if
29000 > 10@
else_jump @NONAME_1730
if
Player.Money($PLAYER_CHAR) > 0
else_jump @NONAME_1942
31@ = Player.Money($PLAYER_CHAR)
wait 150
03BF: set_player $PLAYER_CHAR ignored_by_everyone 1
07CC: set_player $PLAYER_CHAR button_15 0
24@ = 0
Car.LockInCurrentPosition(8@) = True
Player.CanMove($PLAYER_CHAR) = False
:NONAME_1530
wait 0
31@ = Player.Money($PLAYER_CHAR)
0062: 31@ -= 24@ // (int)
if
not 1 > 31@
else_jump @NONAME_1919
if
29700 >= 10@
else_jump @NONAME_1673
if
$ONMISSION == 0
else_jump @NONAME_1829
if
Actor.InCar($PLAYER_ACTOR, 8@)
else_jump @NONAME_1829
gosub @NONAME_1994
10@ += 300
097A: play_audio_at 0.0 0.0 0.0 event 1133
24@ += 1
jump @NONAME_1530
:NONAME_1673
24@ *= -1
Player.Money($PLAYER_CHAR) += 24@
036A: put_actor $PLAYER_ACTOR in_car 8@
Car.LockInCurrentPosition(8@) = False
Player.CanMove($PLAYER_CHAR) = True
07CC: set_player $PLAYER_CHAR button_15 1
03BF: set_player $PLAYER_CHAR ignored_by_everyone 0
0AB3: var 0 = 0
:NONAME_1730
if or
Actor.Dead($PLAYER_ACTOR)
Car.Wrecked(8@)
else_jump @NONAME_1765
08C3: clear 12@ bit 1
jump @NONAME_1833
:NONAME_1765
0A97: 22@ = car 8@ struct
22@ += 5
0A8C: write_memory 22@ size 4 value 10@ virtual_protect 0
if
$ONMISSION == 0
else_jump @NONAME_1829
if
not Actor.InCar($PLAYER_ACTOR, 8@)
else_jump @NONAME_384
:NONAME_1829
wait 0
:NONAME_1833
0AB3: var 2 = 1
08C3: clear 12@ bit 1
wait 1250
jump @NONAME_2
:NONAME_1858
10@ = 0
if
047A: actor $PLAYER_ACTOR driving_bike
else_jump @NONAME_1899
02D4: car 8@ turn_off_engine
0AB3: var 0 = 1
jump @NONAME_783
:NONAME_1899
0918: unknown_car 8@ driver_flag 0
0AB3: var 0 = 1
jump @NONAME_783
:NONAME_1919
00BC: show_text_highpriority GXT 'GA_3' time 3000 flag 1 // HNKAKON XALRBS~n~$100 HE 6YDET!
jump @NONAME_1673
:NONAME_1942
00BC: show_text_highpriority GXT 'NOMONEY' time 3000 flag 1 // ~s~TE6E HYGHO 6OLJWE DEHEF!
jump @NONAME_1730
:NONAME_1965
0A97: 11@ = car 8@ struct
11@ += 4
0A8D: 12@ = read_memory 11@ size 1 virtual_protect 0
return
:NONAME_1994
0AB4: 3@ = var 3
0AB4: 4@ = var 4
if
4@ > 0
else_jump @NONAME_2159
0093: 5@ = integer 4@ to_float
5@ += 108.6
03F0: enable_text_draw 1
033F: set_text_draw_letter_size 0.3 1.0
045A: draw_text_1number 209.05 356.333 GXT 'NUMBER' number 3@ // ~1~
038D: draw_texture 8 position 213.5 339.0 size 128.0 111.0 RGBA 255 255 255 255
074B: draw_texture 7 position 213.5 339.0 scale 128.0 128.0 angle 5@ color_RGBA 255 255 255 255
:NONAME_2159
02E3: 23@ = car 8@ speed
23@ *= 3.56
0092: 27@ = float 23@ to_integer
23@ += 62.0
03E3: set_texture_to_be_drawn_antialiased 1
033F: set_text_draw_letter_size 0.6 2.0
045A: draw_text_1number 31.75 424.4 GXT 'NUMBER' number 27@ // ~1~
038D: draw_texture 5 position 126.5 385.0 size 262.5 226.0 RGBA 255 255 255 255
074B: draw_texture 6 position 90.5 385.0 scale 262.5 226.0 angle 23@ color_RGBA 255 255 255 255
if
10@ > 15000
else_jump @NONAME_2376
03F0: enable_text_draw 1
038D: draw_texture 1 position 195.5 417.2 size 31.8 26.8 RGBA 255 255 255 255
jump @NONAME_2435
:NONAME_2376
if
5000 > 10@
else_jump @NONAME_2435
03F0: enable_text_draw 1
038D: draw_texture 2 position 195.5 417.2 size 31.8 26.8 RGBA 255 255 255 255
:NONAME_2435
0093: 25@ = integer 10@ to_float
25@ /= 500.0
25@ *= 2.3
25@ += 108.6
03F0: enable_text_draw 1
074B: draw_texture 3 position 213.5 412.0 scale 128.0 128.0 angle 25@ color_RGBA 255 255 255 255
09B3: get_car 8@ door_status 21@
if
not 21@ == 1
else_jump @NONAME_2582
03F0: enable_text_draw 1
038D: draw_texture 4 position 169.0 432.3 size 24.0 24.0 RGBA 255 255 255 255
:NONAME_2582
return
:NONAME_2584
wait 0
077E: get_active_interior_to $ACTIVE_INTERIOR
if
$ACTIVE_INTERIOR == 0
else_jump @NONAME_2
if and
Actor.Driving($PLAYER_ACTOR)
$ONMISSION == 0
else_jump @NONAME_2
03C0: 8@ = actor $PLAYER_ACTOR car
046C: 26@ = car 8@ driver
if
003B: 26@ == $PLAYER_ACTOR // (int)
else_jump @NONAME_2
0391: release_txd_dictionary
0390: load_txd_dictionary "GASOLINE"
038F: load_texture "SPEEDOM" as 1 // Load dictionary with 0390 first
038F: load_texture "STRELK" as 2 // Load dictionary with 0390 first
:NONAME_2708
wait 0
0A8D: 28@ = read_memory 11989093 size 1 virtual_protect 0
if
not 28@ == 1
else_jump @NONAME_2973
077E: get_active_interior_to $ACTIVE_INTERIOR
if
$ACTIVE_INTERIOR == 0
else_jump @NONAME_3038
if
$ONMISSION == 0
else_jump @NONAME_3038
if
Actor.InCar($PLAYER_ACTOR, 8@)
else_jump @NONAME_3038
03F0: enable_text_draw 1
02E3: 23@ = car 8@ speed
23@ *= 3.56
0092: 27@ = float 23@ to_integer
23@ += 68.0
0340: set_text_draw_RGBA 180 180 180 255
033F: set_text_draw_letter_size 0.6 2.4
045A: draw_text_1number 32.75 424.333 GXT 'NUMBER' number 27@ // ~1~
03E3: set_texture_to_be_drawn_antialiased 1
038D: draw_texture 1 position 126.5 385.0 size 262.5 226.0 RGBA 255 255 255 255
074B: draw_texture 2 position 90.5 385.0 scale 262.5 226.0 angle 23@ color_RGBA 255 255 255 255
:NONAME_2973
if or
Actor.Dead($PLAYER_ACTOR)
Car.Wrecked(8@)
else_jump @NONAME_3001
jump @NONAME_3038
:NONAME_3001
if
$ONMISSION == 0
else_jump @NONAME_3038
if
not Actor.InCar($PLAYER_ACTOR, 8@)
else_jump @NONAME_2708
:NONAME_3038
wait 1250
jump @NONAME_2
Народ подскажите! Я вот пробовал расставлять транспорт,но ничего не получается! я не понял,где писать поток и т.д.!?
Мужики, мы собираемся сделать мод для GTA VICE CITY мы хотим вставить новые миссии и нам для этого нужен скриптёр парни ПОМОГИТЕ!
Народ. Я в скриптинге нуб зеленый. Скажите, плз, как задать педу оружие? Ну я хочу сделать, что б банды ходили не с девятками и ТЭК-ами, а с катанами. Заранее спс.
sentinel 77
forums.playground.ru/gta_san_andreas/modding/164..
KroSSS
forums.playground.ru/gta_vice_city/
DZ [RAD]
оружие педам вообще даётся так:
01B2: give_actor 2@ weapon 28 ammo 60
2@ твой актёр
28 оружие (см. мануал проги, где скриптишь)
60 число патронов
оружие бандам
forums.playground.ru/gta_san_andreas/modding/164..
народ! кто может помочь мне или просто толком расказать как зделать так что б тачка всегда респилась в одном месте. к примеру как возле дома свита всегда гринвуд стоит. я делал так как в начале написано и нефига не выходит :(
и с помощю IPL Helper'a пытался респить но оно мне выдаёт строку которую надо кудато вписать а я хз куда. помогите
я делал так как в начале написано и нефига не выходит :(
очень странно. всего два опкода:
09E2: 0@ = parked_car_generator_w_numberplate #GREENWOO 59 34 0 alarm 0 door_lock 0 0 10000 plate "GROVE4L_" at 0.0 0.0 0.0 angle 0.0
014C: set_parked_car_generator 0@ cars_to_generate_to 101
может, ты вместо десятичных 0.0 писал целые числа? это тоже важно.
лично я расставляю через IPL. но для этого нужен MEd. ищешь тот кусок карты, где ставится авто, смотришь название файла и пишешь там ту строку, которую оно тебе выдаёт, типа:
cars
1253.4237, 249.2511, 19.5547, -1, -1, -1, -1, 0, 0, 0, -1, -1
end
А у меня вот такой вопрос: как через SB добавлять не только огнестрельное, но и холодное оружие, броню и жизни? Огнестрельное пишу так: 032B: $1 = create_weapon_pickup #AK47 group 15 ammo 30 at 0.0 0.0 0.0; а ближнего боя так: 032B: $1 = create_weapon_pickup #FLOWERA group 15 ammo 1 at 0.0 0.0 0.0? Меня интересует, что писать про патроны (ammo), ведь у ББ оружия нет патронов!??? ОТВЕТЬТЕ ПЛИЗ!
пиши любое число от 1 до плюс бесконечности. для неогнестрельного оружия количество патронов не имеет значения, факт?
p.s. можно не мучаться с этим, просто напиши
0213: @1 = create_pickup #INFO type 3 at 2027.77 -1420.52 16.49
и будет пикап. огнестрельный - с магазином по умолчанию.
Спасибо тебе, ILdar07, как настоящий друг! А вот я делаю мод (для САМПА по большей мере), чтоб когда кнопо4ку жмёшь, становишься SWAT'ом те дают Дигл, СМГ, М4, Снайперку, SPAS 12 и гранаты. Всё перечисленное работает, я захотел добавить ПНВ (Прибор Ночного Видения) или ПТВ (Прибор Термо-Видения), а в мануле (с инета скачал) не написано про парашют, ПНВ, ПТВ, фотоаппарат. Подскажи, пожалуйста, какой у ПНВ, ПТВ, парашюта и фотоаппарата ID номер (например ID 31 -- M4, ID 29 -- MP5, ID 4 -- нож и т. д.). И ещё один вопросик: как в СБ сделать так, что бы какой-нить скрипт можно было использовать не чаще, например, чем в 5 минут или в две? Ответь пожалуйста, будь другом!
P.S. Модели как называются, я знаю: ПНВ -- NVGOGGLES, ПТВ -- IRGOGGLES, фотик -- CAMERA, парашют -- GUN_PARA.
З.Ы. Заранее спасибо!
Странно, что это за мануал у тебя? Я вот открыл АLЕХАNDЕR'S SАNNY BUILDЕR MАNUАL и сразу нашёл.
#camera___________43
#nvgoggles_________44
#irgoggles__________45
#GUN_PARA________46
2-й вопрос: Поставь в конце скрипта wait 300000 или wait 120000 перед прыжком в начало :.)
Подскажи, плиз, каким опкодом у плеер-актёра деньги отнимать? Таким: Player.Money($PLAYER_CHAR) -= 50000?
неа, не прокатит :-) я тоже над этим тужился. всё что нужно - знать основы арифметики!
х - число, которое надо отнять. SB принимает лишь
Player.Money($PLAYER_CHAR) += х
значит, чтоб отнялось, надо это число сделать отрицательным (логично? блин, я это в одном скрипте увидел… а сам не додумался). вот и всё!
х *= -1
Player.Money($PLAYER_CHAR) += х
Вот так чтоли: Player.Money($PLAYER_CHAR) += -500?
Кстати, я пробовал дать игроку ПНВ, ПТВ, фотик или парашют, но не получилось! Я всё сделал как и с другими оружиями:
БЛА БЛА
Model.Load(#IRGOGGLES)
БЛА БЛА
Model.Available(#IRGOGGLES)
БЛА БЛА
01B2: give_actor $PLAYER_ACTOR weapon 45 ammo 1 // Load the weapon model before using this
БЛА БЛА, ЗАТЕМ:
Model.Destroy(#IRGOGGLES)
БЛА БЛА, А ПОТОМ:
:XXX
wait 300000
Model.Available(#IRGOGGLES)
jf @YYY
Model.Destroy(#IRGOGGLES)
БЛА БЛА
SB скомпилировал, запускаю Саню, жму на нужную кнопо4ку (для скрипта) -- БРЫКС, вылет!
Открываю SB'ом txt файл, проверяю: запись правильная, порядок правильный, ID правильный, вся запись правильная.
О5 включаю игру, нажимаю на определённую клавишу (для скрипта) -- ОПС, снова крэшится!
Чё за фигня? Может для ПНВ, ПТВ, фотика или парашюта как то по другому надо писать? Ответь, пожалуйста, если сможешь/не лень
P.S. Заранее благодарен!
интересно девки пляшут…
вот мой скрипт - всё работает.
Model.Load(#IRGOGGLES)
:Noname_1
if
not Model.Available(#IRGOGGLES)
jf @Noname_2
wait 0
jump @Noname_1
:Noname_2
01B2: give_actor $PLAYER_ACTOR weapon 45 ammo 666
Model.Destroy(#IRGOGGLES)
А почему not?
:Noname_1
if
not Model.Available(#IRGOGGLES)
jf @Noname_2
wait 0
jump @Noname_1
:Noname_2
01B2: give_actor $PLAYER_ACTOR weapon 45 ammo 666
Model.Destroy(#IRGOGGLES)
Говорю же, другие оружия по такой с хеме работают, а чё для ПТВ, ПНВ, фотика или парашюта надо именно так писать??? Мне не понятно почему not? Разъясни плиз.
именно так. это особое оборудование. не стреляет, не убивает, факт?
почему? почему, почему… если модель не загружена, скрипт дальше не идёт, а прыгает на Noname_1 и снова проверяет. в противном случае скрипт идёт дальше.
отмечу, что эта с хема юзается в оригин/мэйне от R*. хотя наверно можно и так писать:
:Noname_1
wait 0
if
Model.Available(#IRGOGGLES)
jf @Noname_1
но ты гляди на различие - это не отдельный кусок скрипта: проверка модели и далее.
R* же всегда её (проверку) отдельно оформляет, с not. Думаю, это надо для стабильности.
А! Я понял! Но тогда почему для холодного оружия (ББ) подходит схема, как к огнестрельному, ведь у ББ оружия патронов нет? Или это от датафайла зависит? Мну кажетца, шо для норм игры без вылетов, надо чтоб все скрипты (по крайней мере сложные) были с проверкой. Тогда и глючить не будет!
В общем есть вопрос. Каким опкодом делается покупка оружия (собственно пик-ап), как например это было в ГТА3 или в Вайс Сити на свалке однорукого - чтобы моделька оружия крутилось как обычно когда его можно подобрать, а над ним цена. По ходу в СА такая фича не используется, как быть? Я в своем моде добавляю все фалосы в сэкс-шопе, и чтоб сделать культурно, хочу чтоб они были покупаемыми.
Пикап покупки, можно применять к чему угодно:
0518: $Buy = create_available_asset_pickup 'PROP_3' at $X $Y $Z price $Count
$Buy - имя пикапа
$X $Y $Z - координаты пикапа, как их определить написано в первой главе
$Count - деньги, которые мы платим за покупку,а вот что покупать, это уже надо самим писать.
Ток я сам недопонял где писать, что покупаешь?
__L.Z.__ 01.11.08
как быть?
Написать скрипт. Можно взять за основу Амму-Нацию (с таблицами), можно тупо отнимать бабло, но здесь цену нельзя посмотреть. Я бы создал маленькую сферу (красный кружок… ммм… в мануалах пишется "сфера", а это цилиндр… ну неважно). CJ заходит в неё, появляется таблица: товар - цена… ну короче, как в Амму-Нации.
Аttский Дем0n aka Daeman
Автор мануала не совсем точно выразился. Ты ставишь пикап покупки перед домом, к примеру, так? Значит, и ежу понятно, что ты будешь покупать этот дом, а не бордель за углом. Да, в GXT-файле можно написать типа "шоб заиметь эту хату гони стока-то бабок" (как в VC). Этот текст - 'PROP_3' (код можно узнать в help\GXT Strings\GTASA.text SB).
Я долго ломал голову над этим вопросом... ILdar07, ты не знаешь как актёру приписать маркер, ток не такой как в мануале СБ, (со стрелкой над актёром, и в легенде карты обозначается коряво) а такой, как, например, когда в СА члена банды вербуешь, или как в миссии?
Раз пошла такая "пьянка" подскажи, пожалуйста, как в одном клео файле (.cs) несколько клавишь задействовать? Ток не игровых клавишь (например "00E1: key_pressed 0 19"), а любых. Там ещё пишется сначала локальная переменная (например, "0@ = 304527") а потом сама проверка (допустим, "&0(0@,1i) == 0xFF"). По идее, чтобы использовать разные клавиши таким макаром в одном скрипте надо изменить переменную (0@) на другую, а потом написать проверку нажатия. Пробовал, игра вылетает. Приходится пока в разные файлы писать
Маркеры
они везде одинаковые - и когда в СА члена банды вербуешь, и в миссии. всё зависит от свойств: размер (0168:), цвет (0165:) и режим показа (их 3, без маркера на миникарте, ТОЛЬКО на миникарте и там и там; 018B:).
Клавиши
я юзаю 0AB0: всё чики пуки
Спасибо большое! Без тя бы, наверное, не справился бы! А как "0AB0" пользоваться? Там в примере этого опкода "0AB0: key_pressed 0x73", (т.к. 0x73) это значит кнопка с буквой "I"? В том смысле, что в мануале СБ таблица "virtual_key_codes", ей пользоваться для оперделения кнопки? Иещё плиз, где посмотреть/определить размер и цвет маркера? С помощью чего?
P.S. Посмотри личку.
как "0AB0" пользоваться
читай мануал. CLEO 3 Code Library => Список значений кнопок для 0AB0 цифра из первой колонки.
посмотреть размер и цвет маркера
в игре, ясен пень. а чтобы не перегружать свою память, пиши Сleo-скрипт, где создай маркер и задавай ему свойства через параметры. типа нажимаешь одну кнопку - изменяется размер, цвет. для удобства можно выводить число свойства. потом сворачиваешь игру, записываешь данные куда-нить, в тот же мануал можно. я это уже делал - проверено :-) в размерах всё просто - чем выше число, тем больше размер. 1 - самый малый, 50 - на всю миникарту.
определить размер и цвет маркера
в скрипте, ясен пень. вот попробуй:
{$VERSION 3.1.0027}
{$CLEO .cs}
wait 0
29@ = -2
:Noname_9
wait 10
if
00E1: player 0 pressed_key 11
jf @Noname_19
000A: 29@ += 1 // @ = any
gosub @Noname_1837
jump @Noname_1795
:Noname_19
wait 10
if
00E1: player 0 pressed_key 10
jf @Noname_29
000e: 29@ -= 1 // @ = any
gosub @Noname_1837
jump @Noname_1795
:Noname_29
wait 10
if
00E1: player 0 pressed_key 6
jf @Noname_9
gosub @Noname_1837
jump @Noname_1795
:Noname_1795
wait 10
jump @Noname_9
:Noname_1837
wait 0
04C4: create_coordinate $X_1 $Y_1 $Z_1 from_actor $PLAYER_ACTOR offset 100.0 100.0 1.0
0167: $Mark = create_marker_at $X_1 $Y_1 $Z_1 flags 0 2
//Marker.SetIconSize($Mark, 29@)
07E0: set_marker $Mark type_to 29@
0513: show_text_box_1number 'NUMBER' number 29@
:Noname_1889
wait 2500
Marker.Disable($Mark)
return
29@ - параметр, нажимаешь кнопки, он изменяет свойства, всё просто.
psps^ кстате у тя SB 3.04? обнови еси чо.
гыгыгы! Ну эт понятно, что в скрипте! Я думал, может, какая-нить таблица есть с номерами цветов или чё-то в этом роде! А за скрипт спс! Дай ссылочку на обновление СБ плиз! Из предложенного скрипта я понял, что при нажатии "ответ ДА" маркер увеличится на один размер; при нажатии "ответ НЕТ" маркер уменьшиться на один размер. Вот ток "000e: 29@ -= 1" будет работать ли? Надо написать (так уж работать точно будет) "Dec(29@)", и поставить макс. число переменной на 50 (ты сам говорил, что 50 - максимум) по идее, если больше 50-ти -- вылетет. И ещё, я несовсем понял, на ком создаётся маркер? На любом педе? "0167: $Mark = create_marker_at $X_1 $Y_1 $Z_1 flags 0 2" -- (тут написаны координаты относительно актёра), это, значит, что просто так маркер будет, ничейный? А зачем ":Noname_29"? он же, как я понял, ничего не значит! ВОТ:
:Noname_29 // Название label'а
wait 10 // Ожидать 1 мс (Во избежании непонятак, на всякий случай)
if // Простое условие для одного опкода
00E1: player 0 pressed_key 6 // Проверка на нажатость игровой кнопки№6 (прицел)
jf @Noname_9 // "jump_if_false" - по-русски говоря "прыжок, если неправда"
gosub @Noname_1837 // Условно -- начало (оттуда) повтора
jump @Noname_1795 // Прыжок
если есть время и желание - сделать самому "какая-нить таблица ... с номерами цветов или чё-то в этом роде" нет проблем.
ссылочкa на обновление СБ
будет работать ли
чувааак, я же писал - всё проверено. это сделано для самопроверки. посмотрел - запомнил - записал, потом проверяешь - правильно ли.
ты сам говорил, что 50 - максимум
не, я привёл пример. я не знаю максимума. его нет (наверно). просто юзай натуральные числа и всё.
на ком создаётся маркер
похоже, у тебя узкое представление о маркерах. это не только указатель над актёром/машиной, но и чекпоинт (квадратик) или иконка (как для миссий). у меня создаётся простой чекпоинт (как я понимаю, маркер - более широкое понятие, ему флаги можно задать, а чекпоинт - просто квадратик, его можно создать [018A:] и задать тип [08FB:] - вот и всё).
зачем ":Noname_29"?
чтобы создать маркер сразу, без изменения 29@, ибо у него уже есть значение по умолчанию: 29@ = -2
а gosub - это, как мы знаем, переход к части скрипта, которая должна выполниться несколько раз и заканчивается return, потом автоматом переходит на строку после gosub.
Ильдар, ты немног перепутал! Если ты хочешь сделать корону или чекпоинт, то надо написать для этого по-другому. ЧЕКПОИНТ: 018A: "1@ = create_checkpoint_at 1290.4906 -788.3314 95.4531" КОРОНУ: "024F: create_corona 0.2 2 0 with_color 255 0 0 at_point $X $Y $Z" А маркер, он объект помечает, стрелку делает. Вообщем корона, чекпоинт и маркер это разные вещи. Лучше сделать чела, а над ним маркер. Кароч, скрипт не работает, я пробовал.
Всем привет.Насколько понял эта ветка по скриптам, поэтому и задаю вопрос.Крч имею вот этот мейн (yy.lv/download.php?f=188156)
Он полностью оригинальный, не считая прописанной строки 08C6: set_actor $PLAYER_ACTOR stay_on_bike 1, чтобы игрок не мог упасть с мотоцикла.Ну так вот, когда я начинаю новую игру всё работает;его не возможно скинуть с байка, но как только я сохраняю игру, перезахожу в неё и загружаю этрт сейв, эта шифка не работает (((.Прошу помощи.Заранее благодарен
юзай клео. в оригинальном мейне что-то менять/добавлять - гиблое дело.
Просто пишешь внешний скрипт (для Cleo) с опкодом "08C6: set_actor $PLAYER_ACTOR stay_on_bike 1" и всё. Один опкод. Если слишком трудно, могу помочь! :)
Attский Дем0н аka Daemon если не трудно сделай что ты сказал.И залей готовое на какой-нить файлхостинг.Буду очень благодарен
Народ!я короч токо новичок и у меня одна проблема!
Когда я пишу эти скрипты
create_thread @NRG_500
end_thread
:NRG_500
wait 100
thread "NRG"
model.Load(#NRG500)
038B: load_requested_models
:NRG_510
Wait 100
If and
Model.Available(#NRG500)
jf @NRG_510
30@ = car.Create(#NRG500, 2510.2615, -1671.3036, 13.4114 )
Car.RemoveReferences(30@)
end_thread
Я их конвертирую,запускаю игру и выдаёт ошибку типо сан андреас не работает и будет закрыто и я нажимаю не отправлять (ну вы поняли )
В чём ошибка список скрипта как исправить чтобы сан андреас работал?
:NRG_510
Wait 100
If and // попробуй удалить and, его пишут если в условии больше 1 пункта
Model.Available(#NRG500)
jf @NRG_510
solom
Ты паркованную машину чтоль создать хочешь? Тогда используй:
014B: $Car = init_parked_car_generator #модель 8 8 0 alarm 50 door_lock 0 0 40000 at X Y Z angle 0.0
014C: set_parked_car_generator $переменная_машины cars_to_generate_to 101.
Готовый скрипт:
:NRG_500
Model.Load(#NRG500)
:NRG_510
wait 0 ms
if
model.available(#NRG500)
jf @NRG_510
014B: 30@ = init_parked_car_generator #NRG500 8 8 0 alarm 50 door_lock 0 0 40000 at 2510.2615 -1671.3036 13.4114 angle 0.0
014C: set_parked_car_generator 30@ cars_to_generate_to 101
end_thread
поправка: для генератора транспорта (как и для пикапов) модель загружать не надо. а если загрузил, то надо выгружать:
Model.Destroy(#STINGER)
типа бонус. подборка полезных опкодов:
0110: clear_player $PLAYER_CHAR wanted_level // очистить уровень розыска
01F7: set_player $PLAYER_CHAR ignored_by_cops 1 // копы игнорируют
0330: set_player $PLAYER_CHAR infinite_run 1 // бесконечный спринт (не устаёшь)
0331: set_player $PLAYER_CHAR fast_reload 1 // быстрая перезарядка оружия (!)
0335: enable_free_respray 1 // халявные перекраски
03BF: set_player $PLAYER_CHAR ignored_by_everyone 1 // все игнорируют
055D: make_player $PLAYER_CHAR fireproof 1 // огнеупорность
0572: enable_taxi_nitros 1 // все такси с азотоускорением
07A7: put_jetpack_on_actor $PLAYER_ACTOR // джетпак
0879: enable_gang_wars 1 // вкл. войны банд за территорию
09C7: change_player $PLAYER_CHAR model_to #SPECIAL01 // замена своей модели (сначала надо загрузить новую)
09E6: set_burglary_houses_accessible 1 // доступ в жилые дома
09E9: car 34@ add_single_nitro // одноразовый нитроазот
0A3D: enable_prostitutes_pay_you 1 // шлюхи платят тебе
...
список врядли полный.
Помогите в скриптинге:Хочу уметь скриптить я постояно вписую опкоды а онине действуют(, куда их писать я незнаю задолбалса уже искать везде подскажыте.Я вписывал все под Mission 0 а ефект нулевой.Помогите пл3
ILdar07,а ты, случаем, не знаешь опкод на бесконечные патроны перезарязаряжает/не перезаряжает.
ПРИВЕТ!!!
Кто-нибудь может помочь...
У меня в моде GHOST RIDER после того как я слажу с байка у меня вылетает игра.
КАК ЭТО МОЖНО ИИССППРАВВИТТЬЬ??????
....ЗАРАНИЕ СПАСИБО!!....
NEO[в асе и на сервах Blade]
читай мануалы, туториалы и проч. а если не понимаешь, то ызначит, скриптинг не для тебя, чувак :)
про100 Daeman
0331 - этот? но знаешь, он работает только на винтовках, а допустим, у пистолетов и автоматов всё равно перезарядка будет, правда цифры количества патронов/магазинов меняются быстрее.
ещё глюк видел галимый. когда кончаешь игру (типа все миссии), аммо не кончается. например, у тебя RPG с 4-мя ракетами. стреляешь, стреляешь - и всегда 4. что за ёперный театр, непонятно.
Myker
Вопрос к автору этого мода.
Это не глюк. Это задумка разрабов. Кстати, не знаешь как они так сделали? Опкода подходящего в мейне СА я не нешёл!
И опкод 0331: set_player $PLAYER_CHAR fast_reload 1 не бездейственный. Он говорит сам за себя. Работу этого опкода можно явно заметить, стреляя из базуки или снайперки. Но он действует на все оружия.
Это можно зметить: когда в обойме кончились патроны, нужно выключить а затем, сразу включить прицел, и снова нажать "огонь".
Возможно ли в помещении (локация бара) поставить маркер на актера (бармэншу)?
Возможно. Вот только ты хочешь поставить маркер на тобою созданную barwooman или на уже существующюю?
Уже существующею.
Подскажите, я делаю мод чтоб CJ мог садиться в указаном месте.
И у меня зависает игра. Сказано что нужно делать проверку именно на этой анимации.
Подскажите пожалуйста как и куда её вставлять?
{$VERSION 3.1.0027}
{$CLEO .cs}
//-------------MAIN---------------
0000: NOP
:NONAME_2
04ED: load_animation "PED"
038B: load_requested_models
jump @NONAME_18
:NONAME_18
wait 0
if
04EE: animation "PED" loaded
if and
0102: actor $PLAYER_ACTOR in_sphere 497.58 -76.03 998.76 radius 2.0 2.0 2.0 sphere 1 stopped_on_foot
else_jump @NONAME_18
Marker.Disable($MARK)
else_jump @NONAME_18
if
not Actor.Driving($PLAYER_ACTOR)
else_jump @NONAME_18
wait 600
0605: actor $PLAYER_ACTOR perform_animation_sequence "SEAT_DOWN" IFP_file "PED" 4.0 loop 1 0 0 0 time 15000 // versionA
else_jump @NONAME_18
wait 15000
jump @NONAME_2
И есть ли анимация, которая позволяет садиться на корточки?
Конечно игра зависнет, сказано что надо делать проверку, а загружать 'PED' НЕЛЬЗЯ! Он сам загружается при запуске игры......тока проверку надо оставить.....и ещё, зачем ты удаляешь какой-то маркер? (он вообще существует?)
:NONAME_18
wait 0
if
04EE: animation "PED" loaded
if and
0102: actor $PLAYER_ACTOR in_sphere 497.58 -76.03 998.76 radius 2.0 2.0 2.0 sphere 1 stopped_on_foot
else_jump @NONAME_18
Marker.Disable($MARK)
Зачем ставить проверку на нахождения игрока в машине, если у тебя стоит проверка
0102: actor $PLAYER_ACTOR in_sphere 497.58 -76.03 998.76 radius 2.0 2.0 2.0 sphere 1 stopped_on_foot
тут же написано stopped_on_foot - остановился пешим (на ногах), тоесть проверка на нахождение в машине НЕ НУЖНА!
Зачем ты ставишь
else_jump @NONAME_18
после опкода
Marker.Disable($MARK)
и
0605: actor $PLAYER_ACTOR perform_animation_sequence "SEAT_DOWN" IFP_file "PED" 4.0 loop 1 0 0 0 time 15000 // versionA
else_jump ставится ТОЛЬКО ПОСЛЕ ПРОВЕРОК!!!!!!
после простых опкодов else_jump НЕ СТАВИТСЯ НИКОГДА!!!!!
Короче тут ещё много ошибок..........
Конечный скрипт будет выглядеть так:
:NONAME_18
wait 0
if and
04EE: animation "PED" loaded
0102: actor $PLAYER_ACTOR in_sphere 497.58 -76.03 998.76 radius 2.0 2.0 2.0 sphere 1 stopped_on_foot
else_jump @NONAME_18
wait 600
0605: actor $PLAYER_ACTOR perform_animation_sequence "SEAT_DOWN" IFP_file "PED" 4.0 loop 1 0 0 0 time 15000 // versionA
wait 15000
jump @NONAME_18
Если ты действительно хочешь делать мод - сначала научись писать скрипты)))))
P.S. Если ты не понял что за проверку надо ставить на эту аниму - ты её уже поставил: 04EE: animation "PED" loaded
а файл 'PED' загружать нельзя, он загружен с самого начала игры......
Если чё - ася в анкете.....
Ах да, забыл, тут вместо использования анимации мона использовать опкод
04EB: AS_actor 65@ crouch 1
Вот скрипт:
:NONAME_2
wait 0
if
0102: actor $PLAYER_ACTOR in_sphere 497.58 -76.03 998.76 radius 2.0 2.0 2.0 sphere 1 stopped_on_foot
else_jump @NONAME_2
wait 600
04EB: AS_actor $PLAYER_ACTOR crouch 1
wait 15000
04EB: AS_actor $PLAYER_ACTOR crouch 0
jump @NONAME_2
Вот и всё......
Санни Билдер нормальная программа токо я не могу понять как создать мощную миссию... ПОМОГИТЕ!!!!!
А вот моя миссия. Кто-нибудь может глянуть нет ли ошибок (она идет но просто хочу узнать)
:Mymission
wait 0
if and
not actor.Driving($PLAYER_ACTOR)
0102: actor $PLAYER_ACTOR near_pt 2374.85 -1642.29 13.5543 radius 3.0 3.0 3.0 sphere 0
00E1: key_pressed 0 4
jf @Mymission
jump to @Mission1
:Mission1
model.Load(#CELLPHONE)
model.Load(#MALE01)
model.Load(#M4)
model.Load(#TEC9)
038B: load_requested_models
:Mission1_2
if
model.Available(#CELLPHONE)
model.Available(#MALE01)
model.Available(#M4)
model.Available(#TEC9)
jf @Mission1_2
01B4: set_player $PLAYER_CHAR can_move 0
0729: AS_actor $PLAYER_ACTOR hold_cellphone 1
03E5: show_text_box 'MISSION1' //Male 01 is very dangerous for us. You need to kill him. There is Tec9 under the telephone. 03E5
wait 7000
01B4: set_player $PLAYER_CHAR can_move 1
0729: AS_actor $PLAYER_ACTOR hold_cellphone 0
wait 1000
01B2: give_actor $PLAYER_ACTOR weapon 32 ammo 600
wait 10
actor.Create($Act,CivMale,#MALE01,2354.18,-1357.16,23.7734)
wait 10
marker.CreateIconWithoutSphere($ICON,18,2354.18,-1357.16,23.7734)
wait 10
marker.CreateAboveActor($Actmark,$Act)
wait 10
actor.Health($Act)=1000
wait 10
01B2: give_actor $Act weapon 31 ammo 600
wait 10
jump to @Mission1_3
:Mission1_3
wait 10
if
actor.Dead($Act)
jf @Mission1_3
marker.Disable($ICON)
marker.Disable($Actmark)
player.Money($PLAYER_CHAR) +=2500
0110: clear_player $PLAYER_CHAR wanted_level
wait 5000
actor.DestroyInstantly($Act)
wait 10000
jump to @Mymission
end_thread
А вот моя миссия. Кто-нибудь может глянуть нет ли ошибок (она идет но просто хочу узнать)
:Mymission
wait 0
if and
not actor.Driving($PLAYER_ACTOR)
0102: actor $PLAYER_ACTOR near_pt 2374.85 -1642.29 13.5543 radius 3.0 3.0 3.0 sphere 0
00E1: key_pressed 0 4
jf @Mymission
jump to @Mission1
:Mission1
model.Load(#CELLPHONE)
model.Load(#MALE01)
model.Load(#M4)
model.Load(#TEC9)
038B: load_requested_models
:Mission1_2
if
model.Available(#CELLPHONE)
model.Available(#MALE01)
model.Available(#M4)
model.Available(#TEC9)
jf @Mission1_2
01B4: set_player $PLAYER_CHAR can_move 0
0729: AS_actor $PLAYER_ACTOR hold_cellphone 1
03E5: show_text_box 'MISSION1' //Male 01 is very dangerous for us. You need to kill him. There is Tec9 under the telephone. 03E5
wait 7000
01B4: set_player $PLAYER_CHAR can_move 1
0729: AS_actor $PLAYER_ACTOR hold_cellphone 0
wait 1000
01B2: give_actor $PLAYER_ACTOR weapon 32 ammo 600
wait 10
actor.Create($Act,CivMale,#MALE01,2354.18,-1357.16,23.7734)
wait 10
marker.CreateIconWithoutSphere($ICON,18,2354.18,-1357.16,23.7734)
wait 10
marker.CreateAboveActor($Actmark,$Act)
wait 10
actor.Health($Act)=1000
wait 10
01B2: give_actor $Act weapon 31 ammo 600
wait 10
jump to @Mission1_3
:Mission1_3
wait 10
if
actor.Dead($Act)
jf @Mission1_3
marker.Disable($ICON)
marker.Disable($Actmark)
player.Money($PLAYER_CHAR) +=2500
0110: clear_player $PLAYER_CHAR wanted_level
wait 5000
actor.DestroyInstantly($Act)
wait 10000
jump to @Mymission
end_thread
Привет ВСЕМ Я не так давно начал закидывать скрипты CLEO но закинул клео скрипт и игра начала вылетать после загрузки такой скрипт там еще заглушить движок можно вкл/выкл фары вроде клео скрипт3 называется
Плиз подсожите чё не так :URANUS
wait 100
thread "URANUS"
Model.Load(#URANUS)
038B: load_requested_models
:URANUS_1
Wait 100
If and
Model.Available(#URANUS)
jf @URANUS
30@ = Car.Create(#URANUS, 2510.2615, -1671.3036, 13.4114 )
Car.RemoveReferences(30@)
end_thread
я хочу чтоб эта тачка стояла возле дома cj захожу в игру и фиг
Gta 47
в SB.
R-JAY
If and замени на If. и тачка пропадёт, если этот поток запускается только 1 раз. спаун-поинты для авто обсуждались в са-а-амом начале темы.
У меня такой вопрос, кто сможет помогите: Как сделать чтобы дым из под колес авто, долго задерживался, не испарялся быстро, и более густым его?, но густым ладно, главное чтоб дольше оставался? заранее большое спасибо)
Спасибо, но густость я сам сделал, а вот как сделать чтоб он дольше задерживался не знаю и найти не могу(
Слушате, у меня тут такая ситуация. Мне дали GTA SA Criminal Russia поиграть, я скачал санни билдер и хочу открыть main.scm, а мне пишут, что я не имею права. Что мне сделать, чтоб его открыть?
зделайте клео мод который отматывает времь после смерти игрока чтобы потом можно было играть дальше как будто ни чего и не было
Может кто нибудь сделать мод что бы было затолено все по самые крыши небоскрёбов?
Во первых тут оффтоп (тема про скриптинг), а во вторых - такой мод сделать оч просто....прога есть такая Water Tool кажется называется (кажется)...там можно изменять высоту воды, и высоту волн...
Немного непонял про дым из под колёс, поподробней опиши что ты хочешь сделать.
ребенков алексей
редактировать нужно water.dat и water1.dat, с помощью той проги которой сказал alexvor295
думешь все так просто?? XD
ты знаеш тогда сколько было бы самопальных мультиплееров?
Чёт я несовсем понял тебя! Ты хочешь играть на одном компе вдвоём, или тебе уже SA-MP'а мало?
Да, может: 0A9D: readfile $hFILE size 2 to $150
0A9E: writefile $hFILE size 128 from 0@
Напишите тут скрипт на доп. территории вражеских банд по всему штату, давно ищу или скиньте готовый мне на мыло xzibid2006@yandex.ru Заранее спасибо!
вообщем написал пробный скрипт на доп территории банд
{$CLEO .cs}
:Band
0001: wait 90 ms
0879: toggle_gang_wars 1
0767: 'MARKST' 14
076C: set_zone 'MARKST' controlled_by_gang 0 density 30
0767: 'SUN1' 2
076C: set_zone 'SUN1' controlled_by_gang 1 density 30
0767: 'COM1A' 9
076C: set_zone 'COM1A' controlled_by_gang 2 density 40
004E: end_thread
территории добавились, а вот SJ стоит на месте, и двигаться нельзя, кто объяснит в чём тут ошибка?
Гыы, в клео скриптах нельзя писать end_thread!!! Тут надо вот такой опкод писать:
0A93: end_custom_thread
Какие скрипты отвечают за длину работы нитры и за время ее регенерации? И как это все изменить?
где могу найти скрипт для открития всех 3 штатов с начала игры ?????????????????
А....если хочешь могу написать....такого скрипта в сети не найдёшь, его так просто не пишут, обычно делают в майне, если изменяют миссии и т.д.
А, не, забыл, тут тока можно сделать так чтобы не давали 4 звезды при входе на запрещённую территорию...
Я к тому же....клео скриптами эт не делается...надо глобал моды качать...
Little Jacob[nik gtasa]
Делается это вот таким опкодом: 0237: set_gang 1 weapons_to 24 29 4
Где:
1 - номер банды
24 29 4 номера оружия банды.
P.S. Значение можно посмотреть в мануале SB (F12).
4 Carl Johnson aka CJ
Простыми скриптами и опкодами этого ты не изменишь. Здесь уже идёт работа с памятью. А это уже другой разговор. Если и вправду заинтересовался, пиши в форум Санни Билдера, там сидят глубоко изучившие это, в том числе Alexander, Seeman, Listener, Kapushon, JerneiL и другие, довольно знающие и разбирающиеся в памяти и exe'шнике игры дяди.
Уважаемый alexvor295!))
Вы несовсем правы. Чтобы открыть весь штат сначала (ну или в любое другое время) игры, или же наоборот - закрыть, можно изменить определённый стат до нужного значения (со значением можно поэкспериментировать или посмотреть в мэйне игры). А за неразыскиваемость в military zones (военных зонах) и закрытых зонах отвечает этот опкод:
0A24: enable_military_zones_wanted_level 1 // давать(1)/не давать(0) уровень разыскиваемости игроку при вхождении в военные зоны. CLEO-скриптами как раз это сделать возможно и никакие глобал моды искать ненадо. :)
Ну и плюсики справа уже-таки можете поставить, по-моему - помог. :)
______/\^/\ _\m/
2 Admins and Moders_// и другим правящим коалициям
Сорри за оффтоп и триплпостинг, а если считать и этот пост то и вообще квадраплпостинг.
Что насчёт триплпостинга - не соединяйте их, пожалуйста, это 3 разные темы, хоть и одного человека - меня.
P.S. Что насчёт этого поста - его можете удалить, он адресован именно вам и не требует прочтения больше одного раза. Или же наоборот, оставить и любоваться, но лучше скопировать в какой-нибудь word'ик и удалить, чтобы не захламлять форум такого вида постами да и вообще - весь РУнет. :)
Уважаемый Daeman.cs!))))
Это вы не правы!!! Если вы считаете что клео скриптом с опкодом 0629: change_integer_stat 181 to 4 (если вы говорили про этот опкод), то доношу до вашего сведения, что уже много раз пытался это сделать!!!!! Все заслонки так и остаются, а 4 звезды не дают! Вероятней всего заслонки создаются в майне как объекты, или же этот опкод действует только в мэйне. Можно спросить на форумах Санни Билдер, думаю там ответят...
И пожалуйста, зайди в асю или ещё куда нибудь, надо поговорить)))
ааааааа чуваки alexvor295 и Daeman.cs жжоте пишите ещё :D
насчёт заслонок
есть волшебные опкоды
0776: create_objects_in_object_group "CARTER" создаёт набор объектов. где определены координаты и сами объекты, пока не знаю.
0777: delete_objects_in_object_group "CARTER" удаляет набор/группу объектов
0778: recreate_objects_in_object_group "TRUTHSFARM" пересоздаёт. например, после провала миссии
"CARTER" это какбэ внешний интерьер крепости БС. холл. в оригинале он создаётся в последней миссии, поэтому если можно было бы убрать стену (которую мы ломаем и которая имеет иммунитеты до этого), то увидели бы "подземелья" СА.
"CRACK" завод крэка в СФ
"FUKDCRAK" факнутый завод крэка в СФ
"BARRIERS1" "BARRIERS2" вот они заслоны. первые не пускают в СФ, вторые в ЛВ
"TRUTHSFARM" ну понятно, конопля Правды
в оригинале юзаются такие наборы. может есть другие, не знаю.
2 alexvor295.
Я имел виду "открыть весь штат" в переносном смысле, то есть очистить карту от "белых пятен" и чтоб не давали разыскиваемость. Насчёт так называемых "заслонок" - это, конечно же, объекты я их даже где-то находил, когда в объектах копался, рылся и всё перелопачивал. :)
я сделал свою миссию и хочу еще добавить свою озвучку а как можно узнать какой звук нужно заменить? может таблица какая есть? а то их в са очень много и пока все переслушаешь с ума сойдешь!
Знаю только одно - в папке data есть файл AudioEvents.txt, последний номер звука обозначает последний звук в последнем Bank'е аудио-файла SCRIPT. Если бы я делал озвучку своей миссии, я бы начал с конца заменять...))
короче все миссия готова но один глюк:
все маркеры создающиеся во время миссии не включаются (хотя если стать на их место то все работает как надо), а загораются уже после миссии (неважно пройдена миссия или провалена). помогите плиз разобраться! вот мой мэйн:
DEFINE OBJECTS 0
DEFINE MISSIONS 1
DEFINE MISSION 0 at @MISSION
DEFINE EXTERNAL_SCRIPTS -1 // Use -1 to not write AAA script
DEFINE UNKNOWN_EMPTY_SEGMENT 0
DEFINE UNKNOWN_THREADS_MEMORY 0
thread 'MAIN'
var
$PLAYER_CHAR : Player
end
01F0: set_max_wanted_level_to 6
set_wb_check_to 0
00C0: set_current_time 8 0
04E4: unknown_refresh_game_renderer_at 2488.5601 -1666.84
Camera.SetAtPos(2488.5601, -1666.84, 13.38)
$PLAYER_CHAR = Player.Create(#NULL, 2488.5601, -1666.84, 13.38)
Player.Money($10) += 333
$PLAYER_ACTOR = Actor.EmulateFromPlayer($PLAYER_CHAR)
Camera.SetBehindPlayer
set_weather 0
wait 0
$PLAYER_CHAR.SetClothes("PLAYER_FACE", "HEAD", Head)
$PLAYER_CHAR.SetClothes("JEANSDENIM", "JEANS", Legs)
$PLAYER_CHAR.SetClothes("SNEAKERBINCBLK", "SNEAKER", Shoes)
$PLAYER_CHAR.SetClothes("VEST", "VEST", Torso)
$PLAYER_CHAR.Build
$PLAYER_CHAR.CanMove = True
fade 1 (out) 0 ms
select_interior 0
016C: restart_if_wasted at 2027.77 -1420.52 15.99 angle 137.0 unknown 0
016D: restart_if_busted at 1550.68 -1675.49 14.51 angle 90.0 unknown 0
0180: set_on_mission_flag_to $ONMISSION
create_thread @NRG_500
create_thread @Start
create_thread @MaxHealth
end_thread
:MaxHealth
wait 1000
062A: change_stat 24 to 1000.0
wait 500
actor.Health($PLAYER_ACTOR)=1000
end_thread
:NRG_500
wait 100
thread "NRG"
Model.Load(#NRG500)
038B: load_requested_models
:NRG_510
wait 100
if and
Model.Available(#NRG500)
jf @NRG_510
30@ = Car.Create(#NRG500, 2510.2615, -1671.3036, 13.4114 )
Car.RemoveReferences(30@)
end_thread
:Start
thread 'START'
wait 0
02A7: 1@ = create_icon_marker_and_sphere 13 at 2486.4475 -1650.9244 13.482 //Создаем сферу и иконку
:Start_37
wait 250
if and
Player.Defined($PLAYER_CHAR) //Игрок жив
0102: actor $PLAYER_ACTOR stopped_near_point_on_foot 2486.4475 -1650.9244 13.482 radius 1.2 1.2 3.0 sphere 1
not wasted_or_busted
Jf @start_37
Marker.Disable(1@)
00BA: text_styled 'SWE1_BG' 3000 ms 2
fade 0 500
wait 500
start_mission MISSION
end_thread
:MISSION
THREAD 'MISSION'
gosub @KOD_MISS
if
wasted_or_busted
Jf @PROPUSK_KOD
gosub @KOD_PROVAL
:PROPUSK_KOD
gosub @UDALENIE
end_thread
:KOD_MISS
increment_mission_attempts
$ONMISSION = 1
0110: clear_player $PLAYER_CHAR wanted_level
//---------------------------- Тут пишется сама миссия --------------------
:Firstlabel
wait 100
if and
Player.Defined($PLAYER_CHAR) //Жив ли игрок
jf @Firstlabel
wait 500
fade 1 500
02A3: toggle_widescreen 1
Player.CanMove($PLAYER_CHAR) = False
04E4: unknown_refresh_game_renderer_at 2487.3972 -1648.2908 //Прорисовываем местность
03CB: set_camera 2487.3972 -1648.2908 14.0703 //Тоже самое, но для камер
:createactor
wait 0
023c: request_special_actor 'cesar' as 1 // объявляем специального актёра , как 1
038b: load requested models
:Firstlabel_2
wait 0
if
023d: special_actor 1 loaded //специальный актёр 1 загружен
jf @Firstlabel_2
actor.create(6@,mission1, #special01, 2486.5762, -1646.9595, 14.0703)
wait 50
06A9: AS_actor 6@ look_at 2486.4475 -1650.9244 13.482 25000
015F: set_camera_position 2496.1287 -1656.0859 13.3704 0.0 0.0 0.0 //Установить позицию камеры
Camera.PointAt(2486.8562, -1651.9855, 13.4854, 1)
:Firstlabel_77
wait 0
04ED: load_animation "GANGS"
038B: load_requested_models
:Firstlabel_888
wait 0
if
04EE: animation "GANGS" loaded
jf @Firstlabel_888
:Firstlabel_347
wait 0
0639: unknown_action_sequence 6@ $PLAYER_ACTOR
0639: unknown_action_sequence $PLAYER_ACTOR 6@
0605: actor 6@ perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 10000 ms
00BC: text_highpriority 'MJET_1P' 10000 ms 7
wait 10000
0605: actor $PLAYER_ACTOR perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 3000 ms
00BC: text_highpriority 'RYDER_2' 3000 ms 7
wait 3000
0605: actor 6@ perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 4000 ms
00BC: text_highpriority 'SMOKE_1' 4000 ms 7
wait 4000
:Firstlabel_4
wait 0
if AND
8965:not actor $PLAYER_ACTOR swimming_in_water
jf @FirsTlabel_4
02A3: toggle_widescreen 0
Player.CanMove($PLAYER_CHAR) = True //То размораживаем его
0373: set_camera_directly_behind_player //Ставим обычную игровую камеру
02EB: restore_camera_with_jumpcut
:Createcar
wait 0
Model.Load(#SULTAN) //Загружаем модель автомобиля
038B: load_requested_models
:Createcar_3
wait 100
if
Model.Available(#SULTAN) //Если загружена, то..
jf @Createcar_3
$9 = Car.Create(#SULTAN, 2488.917, -1658.0735, 13.3549)
0229: set_car $9 color_to 31 0
marker.CreateAboveCar($mash,$9)
marker.SetColor($mash,1)
00BC: text_highpriority 'MOREREP' 1500 ms 7 //сядь в тачку!
:Create_car_888
wait 0
if
0448: actor $PLAYER_ACTOR in_car $9
jf @Create_car_888
marker.Disable($mash)
00BC: text_highpriority 'CRASH_1' 3000 ms 7 //едь в тюнинг-центр!
marker.CreateIconAndSphere($net,27,1042.0457, -1028.5052, 32.1016)
:createcar_99999
wait 0
if
0101: actor $PLAYER_ACTOR stopped_near_point 1042.0458 -1028.5057 32.1015 radius 3.0 3.0 10.0 sphere 1
jf @createcar_9990
jump @LabelMis1_1
:createcar_9990
wait 0
if and
81F4: not car $9 flipped
8119: not car $9 wrecked
82BF: not car $9 sunk
not wasted_or_busted
jf @KOD_PROVAL
jump @createcar_99999
:LabelMis1_1
wait 0
model.Load(#BFYBE)
model.Load(#BMYBE)
model.Load(#HFYBE)
model.Load(#BAT)
038B: load_requested_models
:LabelMis1_2
wait 0
if and
model.Available(#BFYBE)
model.Available(#BMYBE)
model.Available(#HFYBE)
model.Available(#BAT)
Jf @LabelMis1_2
marker.Disable($net)
actor.Create(55@,4,#BFYBE,1037.1315, -1024.8273, 32.1016)
actor.Create(66@,4,#BMYBE,1036.3175, -1024.8346, 32.1016)
actor.Create(77@,4,#HFYBE,1035.5337, -1024.6781, 32.1016)
wait 50
actor.Create(88@,4,#BFYBE,1037.1315, -1024.8273, 32.1016)
actor.Create(99@,4,#BMYBE,1036.3175, -1024.8346, 32.1016)
actor.Create(100@,4,#HFYBE,1035.5337, -1024.6781, 32.1016)
wait 50
actor.Create(101@,4,#BFYBE,1037.1315, -1024.8273, 32.1016)
actor.Create(102@,4,#BMYBE,1036.3175, -1024.8346, 32.1016)
actor.Create(103@,4,#HFYBE,1035.5337, -1024.6781, 32.1016)
01B2: give_actor 55@ weapon 5 ammo 999999
01B2: give_actor 66@ weapon 5 ammo 999999
01B2: give_actor 77@ weapon 5 ammo 999999
01B2: give_actor 88@ weapon 5 ammo 999999
01B2: give_actor 99@ weapon 5 ammo 999999
01B2: give_actor 100@ weapon 5 ammo 999999
01B2: give_actor 101@ weapon 5 ammo 999999
01B2: give_actor 102@ weapon 5 ammo 999999
01B2: give_actor 103@ weapon 5 ammo 999999
00BC: text_highpriority 'CRASH_3' 6000 ms 7 //подожди немного вдруг заметишь что-нибудь...
wait 500
05E2: AS_actor 55@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 66@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 77@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 88@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 99@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 100@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 101@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 102@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 103@ kill_actor $PLAYER_ACTOR
wait 5000
00BC: text_highpriority 'RYDER_1' 2000 ms 7 //убей их!!!
marker.CreateAboveActor($M,55@)
marker.CreateAboveActor($Ma,66@)
marker.CreateAboveActor($Mar,77@)
marker.CreateAboveActor($a,88@)
marker.CreateAboveActor($s,99@)
marker.CreateAboveActor($d,100@)
marker.CreateAboveActor($f,101@)
marker.CreateAboveActor($g,102@)
marker.CreateAboveActor($h,103@)
if
wasted_or_busted
01F4: car $9 flipped
0119: car $9 wrecked
02BF: car $9 sunk
jf @LabelMis1_4
jump @KOD_PROVAL
:LabelMis1_4
wait 0
if and
actor.Dead(55@)
actor.Dead(66@)
actor.Dead(77@)
actor.Dead(88@)
actor.Dead(99@)
actor.Dead(100@)
actor.Dead(101@)
jf @LabelMis1_4
if and
actor.Dead(102@)
actor.Dead(103@)
jf @LabelMis1_4
marker.Disable($M)
marker.Disable($Ma)
marker.Disable($Mar)
marker.Disable($a)
marker.Disable($s)
marker.Disable($d)
marker.Disable($f)
marker.Disable($g)
marker.Disable($h)
:DOMOI
wait 0
marker.CreateIconAndSphere($marker,23,2477.2422, -1652.0599, 13.0972)
00BC: text_highpriority 'RYDER_3' 4000 ms 7 //едь домой и расскажи цезарю обо всем что ты видел!
:proverka_99999
wait 0
if
0101: actor $PLAYER_ACTOR stopped_near_point 2477.2425 -1652.0596 13.0977 radius 3.0 3.0 10.0 sphere 1
jf @proverka_9990
jump @doma
:proverka_9990
wait 0
if and
81F4: not car $9 flipped
8119: not car $9 wrecked
82BF: not car $9 sunk
not wasted_or_busted
jf @KOD_PROVAL
jump @proverka_99999
:doma
wait 0
02A7: $marker = create_icon_marker_and_sphere 13 at 2490.5535 -1646.1421 14.0772
marker.Disable(5@)
:doma_2
wait 0
if
0101: actor $PLAYER_ACTOR stopped_near_point 2496.5535 -1646.1425 14.0773 radius 3.0 3.0 10.0 sphere 1
jf @doma_2
:konec
wait 0
Player.CanMove($PLAYER_CHAR) = False
0639: unknown_action_sequence 6@ $PLAYER_ACTOR
0639: unknown_action_sequence $PLAYER_ACTOR 6@
04E4: unknown_refresh_game_renderer_at 2490.5535 -1646.1421 //Прорисовываем местность
03CB: set_camera 2490.5535 -1646.1421 14.0772
:konec_2
wait 0
015F: set_camera_position 2492.0989 -1650.9307 13.5082 0.0 0.0 0.0 //Устанавливаем камеру
0160: point_camera 2488.1511 -1646.0101 14.0703 2 //И её поинт
0605: actor 6@ perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 2000 ms
00BC: text_highpriority 'SMOKE_2' 2000 ms 7 //ты видел там что-нибудь интересное?
wait 2000 //Опытным скриптерам удобнее делать проверки времени, но новичков для начала устроит пауза
0605: actor $PLAYER_ACTOR perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 4000 ms
00BC: text_highpriority 'SMOKE_3' 6000 ms 7 //на меня там напали какие-то сумасшедшие пляжники! ну я их всех перемочил и все!
0936: set_camera 2492.0989 -1650.9307 13.5082 position_to 2485.3611 -1652.261 13.4741 6000 ms unknown 1
0920: point_camera 2488.1511 -1646.0101 14.0703 transverse_to 2488.1511 -1646.0101 14.0703 6000 ms unknown 1
wait 6000
015F: set_camera_position 2485.3611 -1652.261 13.4741 0.0 0.0 0.0
0605: actor 6@ perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 3000 ms
00BC: text_highpriority 'STRAP_2' 3000 ms 7 //отлично! я так и думал!
wait 3000
0605: actor $PLAYER_ACTOR perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 1000 ms
00BC: text_highpriority 'STRAP_1' 1000 ms 7 //но что это было?
wait 6000 //Ждем 6 секунд, за это время камера передвинется
0605: actor 6@ perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 3000 ms
00BC: text_highpriority 'SMOKE_4' 1500 ms 7 //потом узнаешь!
wait 1500
jump @UDACHN
:createmis
wait 0
if and
81F4: not car $9 flipped
8119: not car $9 wrecked
82BF: not car $9 sunk
not wasted_or_busted
jf @KOD_PROVAL
if and
Player.Defined($PLAYER_CHAR) //Жив ли игрок
0101: actor $PLAYER_ACTOR stopped_near_point 2486.4475 -1650.9244 13.482 radius 3.0 3.0 10.0 sphere 1
0448: actor $PLAYER_ACTOR in_car $9
jf @createmis
jump @UDACHN
:UDACHN // ------- Сюда надо делать переход(Jump), если миссия удалась ---
wait 0
01E3: text_1number_styled 'M_PASS' 1000 5000 ms 4
Player.Money($PLAYER_CHAR) += 1000
0110: clear_player $PLAYER_CHAR wanted_level
0394: play_music 1
marker.Disable(9@)
car.RemoveReferences($9)
Actor.RemoveReferences(55@)
Actor.RemoveReferences(66@)
Actor.RemoveReferences(77@)
Actor.RemoveReferences(88@)
Actor.RemoveReferences(99@)
Actor.RemoveReferences(100@)
Actor.RemoveReferences(101@)
Actor.RemoveReferences(102@)
Actor.RemoveReferences(103@)
Actor.RemoveReferences(6@)
gosub @PROPUSK_KOD
return
:KOD_PROVAL //--- Сюда надо делать переход(Jump), если миссия провалена --
00BA: text_styled 'M_FAIL' 5000 ms 1
marker.Disable(9@)
$ONMISSION = 0
car.RemoveReferences($9)
Actor.RemoveReferences(55@)
Actor.RemoveReferences(66@)
Actor.RemoveReferences(77@)
Actor.RemoveReferences(88@)
Actor.RemoveReferences(99@)
Actor.RemoveReferences(100@)
Actor.RemoveReferences(101@)
Actor.RemoveReferences(102@)
Actor.RemoveReferences(103@)
Actor.RemoveReferences(6@)
mission_cleanup
create_thread @Start
return
:UDALENIE
$ONMISSION = 0
mission_cleanup
return
Хммм....я сам оч удивлён))) Странно..надо в оригинальном майне посмотреть...
Дело не в этом, просто маркеры появляются после миссии.....)))Причём тут проверки?))
вот и я о том же
кстати глюк появился после того как я добавил эти строки:
:createcar_99999
wait 0
if
0101: actor $PLAYER_ACTOR stopped_near_point 1042.0458 -1028.5057 32.1015 radius 3.0 3.0 10.0 sphere 1
jf @createcar_9990
jump @LabelMis1_1
:createcar_9990
wait 0
if and
81F4: not car $9 flipped
8119: not car $9 wrecked
82BF: not car $9 sunk
not wasted_or_busted
jf @KOD_PROVAL
jump @createcar_99999
в первой части миссии и этих:
:proverka_99999
wait 0
if
0101: actor $PLAYER_ACTOR stopped_near_point 2477.2425 -1652.0596 13.0977 radius 3.0 3.0 10.0 sphere 1
jf @proverka_9990
jump @doma
:proverka_9990
wait 0
if and
81F4: not car $9 flipped
8119: not car $9 wrecked
82BF: not car $9 sunk
not wasted_or_busted
jf @KOD_PROVAL
jump @proverka_99999
во второй части миссии
но если их убрать то получается невозможно провалить миссию так что они обязательны!
еще я пытался потом эти проверки убрать и сделать как все было до этого - нифига, тот же глюк!
Незнаю, завтра пересмотрю всё...и убери плз проверку 81F4: not car $9 flipped, а то стоит на бок встать....МИССИЯ ПРОВАЛЕНА!!!!)))))
est zdes htoto hto umejet delat cleo scripti?
mne nuzna pomow s etoj animacij
spasibo za vnimanije
все я разобрался, миссия готова, если интересно посмотреть что я сделал - вот миссия:
:Firstlabel
wait 100
if and
Player.Defined($PLAYER_CHAR) //Жив ли игрок
jf @Firstlabel
wait 500
fade 1 500
02A3: toggle_widescreen 1
Player.CanMove($PLAYER_CHAR) = False
04E4: unknown_refresh_game_renderer_at 2487.3972 -1648.2908 //Прорисовываем местность
03CB: set_camera 2487.3972 -1648.2908 14.0703 //Тоже самое, но для камер
:createactor
wait 0
023c: request_special_actor 'cesar' as 1 // объявляем специального актёра , как 1
038b: load requested models
:Firstlabel_2
wait 0
if
023d: special_actor 1 loaded //специальный актёр 1 загружен
jf @Firstlabel_2
actor.create(6@,mission1, #special01, 2486.5762, -1646.9595, 14.0703)
wait 50
06A9: AS_actor 6@ look_at 2486.4475 -1650.9244 13.482 25000
015F: set_camera_position 2496.1287 -1656.0859 13.3704 0.0 0.0 0.0 //Установить позицию камеры
Camera.PointAt(2486.8562, -1651.9855, 13.4854, 1)
:Firstlabel_77
wait 0
04ED: load_animation "GANGS"
038B: load_requested_models
:Firstlabel_888
wait 0
if
04EE: animation "GANGS" loaded
jf @Firstlabel_888
03CF: load_wav 45255 as 1
:Firstlabel_347
wait 0
if and
03D0: wav 1 loaded //проверяем загрузку звука
jf @Firstlabel_347
0639: unknown_action_sequence 6@ $PLAYER_ACTOR
0639: unknown_action_sequence $PLAYER_ACTOR 6@
0605: actor 6@ perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 12000 ms
00BC: text_highpriority 'MJET_1P' 10000 ms 7
03D1: play_wav 1
wait 10000
:sounds_669
wait 0
if
03D2: wav 1 ended
jf @sounds_669
040D: unload_wav 1
:sounds_99999
wait 0
03CF: load_wav 45254 as 1
:sound
wait 0
if
03D0: wav 1 loaded
jf @sound
0605: actor $PLAYER_ACTOR perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 3000 ms
00BC: text_highpriority 'RYDER_2' 3000 ms 7
03D1: play_wav 1
wait 3000
:sounds_2
wait 0
if
03D2: wav 1 ended
jf @sounds_2
040D: unload_wav 1
:sounds_3
wait 0
03CF: load_wav 45253 as 1
:sounds_4
wait 0
if and
03D0: wav 1 loaded //проверяем загрузку звука
jf @sounds_4
0605: actor 6@ perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 4000 ms
00BC: text_highpriority 'SMOKE_1' 4000 ms 7
03D1: play_wav 1
wait 4000
:sounds_000
wait 0
if
03D2: wav 1 ended
jf @sounds_000
040D: unload_wav 1
:Firstlabel_4
wait 0
if AND
8965:not actor $PLAYER_ACTOR swimming_in_water
jf @FirsTlabel_4
02A3: toggle_widescreen 0
Player.CanMove($PLAYER_CHAR) = True //То размораживаем его
0373: set_camera_directly_behind_player //Ставим обычную игровую камеру
02EB: restore_camera_with_jumpcut
:Createcar
wait 0
Model.Load(#SULTAN) //Загружаем модель автомобиля
038B: load_requested_models
:car_3
wait 100
if
Model.Available(#SULTAN) //Если загружена, то..
jf @car_3
$9 = Car.Create(#SULTAN, 2488.917, -1658.0735, 13.3549)
0229: set_car $9 color_to 31 0
:CAR_4
WAIT 0
marker.CreateAboveCar($carr,$9)
marker.SetColor($carr,1)
00BC: text_highpriority 'MOREREP' 2500 ms 7 //сядь в тачку!
jump @M8_8025
:car_5
wait 0
marker.CreateAboveCar($carr,$9)
marker.SetColor($carr,1)
00BC: text_highpriority 'STRAP_4' 4500 ms 7 //сядь в машину, идиот!!!
0164: disable_marker 111@
03BD: destroy_sphere 112@
:M8_8025
00D6: if
80DB: not actor $PLAYER_ACTOR in_car $9
004D: jump_if_false @M8_8075
0001: wait 0 ms
00D6: if
8119: not car $9 wrecked
004D: jump_if_false @KOD_PROVAL
0001: wait 0 ms
0002: jump @M8_8025
:M8_8075
0164: disable_marker $carr
03BC: 112@ = create_sphere_at 1042.0457 -1028.5052 32.1016 radius 3.0
018A: 111@ = create_checkpoint_at 1042.0457 -1028.5052 32.1016
00BC: text_highpriority 'CRASH_1' 3000 ms 7 //едь в тюнинг-центр!
:M8_8125
0001: wait 0 ms
00D6: if
00DB: actor $PLAYER_ACTOR in_car $9
004D: jump_if_false @CAR_5
0001: wait 0 ms
00D6: if
8119: not car $9 wrecked
004D: jump_if_false @KOD_PROVAL
0001: wait 0 ms
00D6: if
8100: not actor $PLAYER_ACTOR in_sphere 1042.0457 -1028.5052 32.1016 radius 4.0 4.0 4.0 sphere 1 in_car
004D: jump_if_false @LabelMis1_1
0002: jump @M8_8125
:LabelMis1_1
wait 0
model.Load(#BFYBE)
model.Load(#BMYBE)
model.Load(#HFYBE)
model.Load(#BAT)
038B: load_requested_models
:LabelMis1_2
wait 0
if and
model.Available(#BFYBE)
model.Available(#BMYBE)
model.Available(#HFYBE)
model.Available(#BAT)
Jf @LabelMis1_2
marker.Disable(111@)
03BD: destroy_sphere 112@
actor.Create(55@,4,#BFYBE,1037.1315, -1024.8273, 32.1016)
actor.Create(66@,4,#BMYBE,1036.3175, -1024.8346, 32.1016)
actor.Create(77@,4,#HFYBE,1035.5337, -1024.6781, 32.1016)
wait 50
actor.Create(88@,4,#BFYBE,1037.1315, -1024.8273, 32.1016)
actor.Create(99@,4,#BMYBE,1036.3175, -1024.8346, 32.1016)
actor.Create(100@,4,#HFYBE,1035.5337, -1024.6781, 32.1016)
wait 50
actor.Create(101@,4,#BFYBE,1037.1315, -1024.8273, 32.1016)
actor.Create(102@,4,#BMYBE,1036.3175, -1024.8346, 32.1016)
actor.Create(103@,4,#HFYBE,1035.5337, -1024.6781, 32.1016)
01B2: give_actor 55@ weapon 5 ammo 999999
01B2: give_actor 66@ weapon 5 ammo 999999
01B2: give_actor 77@ weapon 5 ammo 999999
01B2: give_actor 88@ weapon 5 ammo 999999
01B2: give_actor 99@ weapon 5 ammo 999999
01B2: give_actor 100@ weapon 5 ammo 999999
01B2: give_actor 101@ weapon 5 ammo 999999
01B2: give_actor 102@ weapon 5 ammo 999999
01B2: give_actor 103@ weapon 5 ammo 999999
00BC: text_highpriority 'CRASH_3' 6000 ms 7 //подожди немного вдруг заметишь что-нибудь...
wait 500
05E2: AS_actor 55@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 66@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 77@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 88@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 99@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 100@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 101@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 102@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 103@ kill_actor $PLAYER_ACTOR
wait 5000
00BC: text_highpriority 'RYDER_1' 2000 ms 7 //убей их!!!
marker.CreateAboveActor($M,55@)
marker.CreateAboveActor($Ma,66@)
marker.CreateAboveActor($Mar,77@)
marker.CreateAboveActor($a,88@)
marker.CreateAboveActor($s,99@)
marker.CreateAboveActor($d,100@)
marker.CreateAboveActor($f,101@)
marker.CreateAboveActor($g,102@)
marker.CreateAboveActor($h,103@)
if
wasted_or_busted
01F4: car $9 flipped
0119: car $9 wrecked
02BF: car $9 sunk
jf @LabelMis1_4
jump @KOD_PROVAL
:LabelMis1_4
wait 0
if and
actor.Dead(55@)
actor.Dead(66@)
actor.Dead(77@)
actor.Dead(88@)
actor.Dead(99@)
actor.Dead(100@)
actor.Dead(101@)
jf @LabelMis1_4
if and
actor.Dead(102@)
actor.Dead(103@)
jf @LabelMis1_4
marker.Disable($M)
marker.Disable($Ma)
marker.Disable($Mar)
marker.Disable($a)
marker.Disable($s)
marker.Disable($d)
marker.Disable($f)
marker.Disable($g)
marker.Disable($h)
:car_55
wait 0
marker.CreateAboveCar($carr,$9)
marker.SetColor($carr,1)
00BC: text_highpriority 'STRAP_4' 4500 ms 7 //сядь в машину, идиот!!!
0164: disable_marker $k
03BD: destroy_sphere $ka
:M8_80255
00D6: if
80DB: not actor $PLAYER_ACTOR in_car $9
004D: jump_if_false @M8_80755
0001: wait 0 ms
00D6: if
8119: not car $9 wrecked
004D: jump_if_false @KOD_PROVAL
0001: wait 0 ms
0002: jump @M8_80255
:M8_80755
0164: disable_marker $carr
03BC: $ka = create_sphere_at 2477.2422 -1652.0599 13.0972 radius 3.0
018A: $k = create_checkpoint_at 2477.2422 -1652.0599 13.0972
00BC: text_highpriority 'RYDER_3' 4000 ms 7 //едь домой и расскажи цезарю обо всем что ты видел!
:M8_81255
0001: wait 0 ms
00D6: if
00DB: actor $PLAYER_ACTOR in_car $9
004D: jump_if_false @CAR_55
0001: wait 0 ms
00D6: if
8119: not car $9 wrecked
004D: jump_if_false @KOD_PROVAL
0001: wait 0 ms
00D6: if
8100: not actor $PLAYER_ACTOR in_sphere 2477.2422 -1652.0599 13.0972 radius 4.0 4.0 4.0 sphere 1 in_car
004D: jump_if_false @doma
0002: jump @M8_81255
:doma
wait 0
018A: $marke = create_checkpoint_at 2490.5535 -1646.1421 14.0772
03BC: $marke2 = create_sphere_at 2490.5535 -1646.1421 14.0772 radius 1.0
marker.Disable($k)
03BD: destroy_sphere $ka
:doma_2
wait 0
if
0101: actor $PLAYER_ACTOR stopped_near_point 2490.5798 -1645.9238 14.0772 radius 3.0 3.0 10.0 sphere 1
jf @doma_2
marker.Disable($marke)
03BD: destroy_sphere $marke2
02A3: toggle_widescreen 1
:konec
wait 0
Player.CanMove($PLAYER_CHAR) = False
0639: unknown_action_sequence 6@ $PLAYER_ACTOR
0639: unknown_action_sequence $PLAYER_ACTOR 6@
04E4: unknown_refresh_game_renderer_at 2490.5535 -1646.1421 //Прорисовываем местность
03CB: set_camera 2490.5535 -1646.1421 14.0772
:konec_2
wait 0
015F: set_camera_position 2492.0989 -1650.9307 13.5082 0.0 0.0 0.0 //Устанавливаем камеру
0160: point_camera 2488.1511 -1646.0101 14.0703 2 //И её поинт
:sounds_99996
wait 0
03CF: load_wav 45253 as 1
:sound_00
wait 0
if
03D0: wav 1 loaded
jf @sound_00
0605: actor 6@ perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 2000 ms
00BC: text_highpriority 'SMOKE_2' 2000 ms 7 //ты видел там что-нибудь интересное?
03D1: play_wav 1
wait 2000
:sounds_2_0
wait 0
if
03D2: wav 1 ended
jf @sounds_2_0
040D: unload_wav 1
:sounds_9994
wait 0
03CF: load_wav 45252 as 1
:sound_01
wait 0
if
03D0: wav 1 loaded
jf @sound_01
0605: actor $PLAYER_ACTOR perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 4000 ms
00BC: text_highpriority 'SMOKE_3' 6000 ms 7 //на меня там напали какие-то сумасшедшие пляжники! ну я их всех перемочил и все!
0936: set_camera 2492.0989 -1650.9307 13.5082 position_to 2485.3611 -1652.261 13.4741 6000 ms unknown 1
0920: point_camera 2488.1511 -1646.0101 14.0703 transverse_to 2488.1511 -1646.0101 14.0703 6000 ms unknown 1
03D1: play_wav 1
wait 6000
:sounds_2_1
wait 0
if
03D2: wav 1 ended
jf @sounds_2_1
040D: unload_wav 1
:sounds_9993
wait 0
03CF: load_wav 45251 as 1
:sound_03
wait 0
if
03D0: wav 1 loaded
jf @sound_03
015F: set_camera_position 2485.3611 -1652.261 13.4741 0.0 0.0 0.0
0605: actor 6@ perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 3000 ms
00BC: text_highpriority 'STRAP_2' 3000 ms 7 //отлично! я так и думал!
03D1: play_wav 1
wait 3000
:sounds_2_2
wait 0
if
03D2: wav 1 ended
jf @sounds_2_2
040D: unload_wav 1
:sounds_9992
wait 0
03CF: load_wav 45250 as 1
:sound_04
wait 0
if
03D0: wav 1 loaded
jf @sound_04
0605: actor $PLAYER_ACTOR perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 1000 ms
00BC: text_highpriority 'STRAP_1' 1000 ms 7 //но что это было?
03D1: play_wav 1
wait 3000
:sounds_2_3
wait 0
if
03D2: wav 1 ended
jf @sounds_2_3
040D: unload_wav 1
:sounds_9991
wait 0
03CF: load_wav 45249 as 1
:sound_05
wait 0
if
03D0: wav 1 loaded
jf @sound_05
0605: actor 6@ perform_animation_sequence "PRTIAL_GNGTLKF" from_file "GANGS" 4.0 loop 0 0 0 1 3000 ms
00BC: text_highpriority 'SMOKE_4' 1500 ms 7 //потом узнаешь!
03D1: play_wav 1
wait 1500
02A3: toggle_widescreen 0
:sounds_2_4
wait 0
if
03D2: wav 1 ended
jf @sounds_2_4
040D: unload_wav 1
jump @UDACHN
:createmis
wait 0
if and
81F4: not car $9 flipped
8119: not car $9 wrecked
82BF: not car $9 sunk
not wasted_or_busted
jf @KOD_PROVAL
if and
Player.Defined($PLAYER_CHAR) //Жив ли игрок
0101: actor $PLAYER_ACTOR stopped_near_point 2486.4475 -1650.9244 13.482 radius 3.0 3.0 10.0 sphere 1
0448: actor $PLAYER_ACTOR in_car $9
jf @createmis
jump @UDACHN
:UDACHN // ------- Сюда надо делать переход(Jump), если миссия удалась ---
wait 0
01E3: text_1number_styled 'M_PASS' 1000 5000 ms 4
Player.Money($PLAYER_CHAR) += 1000
0110: clear_player $PLAYER_CHAR wanted_level
0394: play_music 1
marker.Disable($marke)
car.RemoveReferences($9)
Actor.RemoveReferences(55@)
Actor.RemoveReferences(66@)
Actor.RemoveReferences(77@)
Actor.RemoveReferences(88@)
Actor.RemoveReferences(99@)
Actor.RemoveReferences(100@)
Actor.RemoveReferences(101@)
Actor.RemoveReferences(102@)
Actor.RemoveReferences(103@)
actor.DestroyInstantly(6@)
Actor.RemoveReferences(6@)
gosub @PROPUSK_KOD
return
:KOD_PROVAL //--- Сюда надо делать переход(Jump), если миссия провалена --
00BA: text_styled 'M_FAIL' 5000 ms 1
marker.Disable(9@)
$ONMISSION = 0
car.RemoveReferences($9)
Actor.RemoveReferences(55@)
Actor.RemoveReferences(66@)
Actor.RemoveReferences(77@)
Actor.RemoveReferences(88@)
Actor.RemoveReferences(99@)
Actor.RemoveReferences(100@)
Actor.RemoveReferences(101@)
Actor.RemoveReferences(102@)
Actor.RemoveReferences(103@)
actor.DestroyInstantly(6@)
Actor.RemoveReferences(6@)
:kod_1
wait 0
if
075C: marker 111@ enabled
jf @kod_2
Marker.Disable(111@)
03BD: destroy_sphere 112@
:kod_2
wait 0
if
075C: marker $k enabled
jf @kod_3
Marker.Disable($k)
03BD: destroy_sphere $ka
:kod_3
wait 0
if
075C: marker $marke enable
jf @kod_4
Marker.Disable($marke)
03BD: destroy_sphere $marke2
:kod_4
wait 0
mission_cleanup
create_thread @Start
return
:UDALENIE
$ONMISSION = 0
mission_cleanup
return
ну ладно, нужно так нужно, спасибо тебе за тот совет про звуки! я уже 4 миссии сделал полностью озвученные и все надписи тоже изменил! короче пока все ок!
Ну у тя и родители)) Мои если б узнали в какую игру я тута играю....(мама не любит всякие убивалки и т.д., кста SA по идее только для совершеннолетних)))
да такие же родители у меня! тоже запретили в са рубаться! а теперь я им сказал что типа все старое удалил, а свое делаю без мочилова, а так гонки, тюнинг, угон и т д... они и не против. ладно хватит флудить! у меня к тебе такие вопросы:
1. а как сделать чтоб актер шел по определенному пути? причем несколько актеров одновременно по разным путям
2. еще как заставить актера чтоб если я сяду в тачку садился со мной, а если я вышел то чтоб выходил как и я?
3. как еще заставить актера сесть за вод. сиденье и чтоб ехал по нужному мне пути?
с последним я думаю раберусь а вот первые два чего-то не получается...
main- это очень большой набор скриптов! если ты хочешь спросить разбираемся ли мы в скриптинге- ответ -да! правда кто больше, кто меньше!
как сделать чтоб актер шел по определенному пути
создать последовательность действий, к примеру:
0615: define_AS_pack_begin 0@
05D3: AS_actor -1 goto_point 0.0 0.0 0.0 mode 4 1000 ms
05D3: AS_actor -1 goto_point 0.0 0.0 0.0 mode 4 1000 ms
05D3: AS_actor -1 goto_point 0.0 0.0 0.0 mode 4 1000 ms
0616: define_AS_pack_end 0@
0618: assign_actor $PLAYER_ACTOR to_AS_pack 0@
061B: remove_references_to_AS_pack 0@
AS_actor обязательно -1, goto_point координаты, mode скорость (4-7), ms время (если оно пройдёт, а актёр ещё не дошёл, то его телепортирует).
есть много опкодов про ходьбу. нажми Ctrl+Alt+2 в SB и введи walk или go. самый интересный, по-моему, 0804.
актёр будет всегда и везде следовать за тобой, если сунуть его в свою группу:
0631: put_actor 0@ in_group $PLAYER_GROUP
0632 обратное действие.
Чтобы поставить актёра на определённый путь:
05D6: clear_scmpath
05D7: add_point_to_scmpath 0.0 0.0 0.0 //точки которые будет проходить актёр
05D8: AS_assign_scmpath to_actor $PLAYER_ACTOR flags 6 0 // первая цифра это скорость, вторая, незнаю, но её менять не надо
Чтобы заставить актёра сесть за вод. сидение и ехать по пути:
05D6: clear_scmpath
05D7: add_point_to_scmpath 0.0 0.0 0.0 //точки которые будет проходить авто
0615: define_AS_pack_begin 0@
05CB: AS_actor $PLAYER_ACTOR enter_car 1@ as_driver -1 ms //актёр сядет в машину 1@, вместо -1 можно поставить любое другое значение, но по истечении этого времени если актёр не будет находиться в машине, то его телепортирует туда
06BB: set_actor -1 drive_car 1@ speed 10.0 along_SCM_path
0616: define_AS_pack_end 0@
0618: assign_actor $PLAYER_ACTOR to_AS_pack 0@
061B: remove_references_to_AS_pack 0@
в AS_pack нельзя писать конкретного актёра/машину, надо писать -1. посмотри как в оригинале:
0615: define_AS_pack_begin 121@
05D3: AS_actor -1 goto_point 47@ 69@ 91@ mode 6 -1 ms
0605: actor -1 perform_animation_sequence "IDLE_TIRED" IFP_file "PED" 4.0 loop 1 0 0 0 time -1
0616: define_AS_pack_end 121@
0618: assign_actor 35@ to_AS_pack 121@
061B: remove_references_to_AS_pack 121@
из миссии Running Dog.
А что нужно сменить чтоб когда игра начиналась то играл не сиджеем а райдером?
Или кемто другим
люди помогите плиз! как мне сделать чтоб записать в переменную желательно всех или хотя бы несколько педов в определенном радиусе? и как потом сделать чтоб эти педы запаниковали и разбежались куда подальше?
if
06FF: any_ped_near_actor $PLAYER_ACTOR in_range 20.0 // 20.0 - радиус
jf @Noname
0AB5: store_actor $PLAYER_ACTOR closest_vehicle_to -1 closest_ped_to 1@
if
not 1@ == -1
jf @Noname
if
not Actor.Dead(1@)
jf @Noname
потом пиши опкод со словом flee. их вроде три: 05DB, 05DD, 0751.
Народ, а ни кто не знает, можно ли как-нибудь считать кол-во оборотов в минуту двигателя машины? И если да, то как?
CraZZZy-GameRRR, нет и врядли это кому надо, хотя если только вроде в клео3 или построением кода, но это трудно и бессмысленно
врядли это кому надо - мне надо. Делаю спидометр для ГТА, хотел к нему ещё тахометр добавить.
дайте кто нибудь код на сохранение игры для очищенного мэйна! пробовал пользоваться клео модами- но при загрузке сохранения игра вылетает!
CraZZZy-GameRRR, попробуй клео опкоды почитать, мож там где-нибудь найдешь, в принципе задумка неплохая, Удачи!!!
Actor.StorePos($PLAYER_ACTOR, 15@, 16@, 17@)
089E: get_actor_in_sphere 15@ 16@ 17@ radius 5.0 handle_as 1@ // versionB
if
1@ > -1
else_jump @SHOP_15
0470: 2@ = actor $PLAYER_ACTOR current_weapon
if
2@ > 0
else_jump @SHOP_533
074D: AS_actor 1@ turns_to_and_look_at_actor $PLAYER_ACTOR timelimit -1
0967: actor 1@ move_mouth -1 ms
00BE: text_clear_all
:SHOP_288
0209: 6@ = random_int_in_ranges 200 9000
01E3: show_text_1number_styled GXT 'IE30' number 6@ time 1000 style 1 // 3APA6OTKN~n~~w~$~1~
:SHOP_318
if
00E1: player 0 pressed_key 11
else_jump @SHOP_342
jump @SHOP_468
:SHOP_342
wait 0
if
00E1: player 0 pressed_key 10
else_jump @SHOP_370
jump @SHOP_533
:SHOP_533
wait 0
Actor.RemoveReferences(1@)
jump @SHOP_15
:SHOP_549
wait 0
21@ = 304489
if
80E1: not player 0 pressed_key 4
else_jump @TURRET
if
&0(21@,1i) == 16711680
else_jump @SHOP_15
03C0: 11@ = actor $PLAYER_ACTOR car
Actor.StorePos($PLAYER_ACTOR, 15@, 16@, 17@)
089E: get_actor_in_sphere 15@ 16@ 17@ radius 8.0 handle_as 1@ // versionB
if
1@ > -1
else_jump @SHOP_937
if
not Actor.Driving(1@)
else_jump @SHOP_937
0772: AS_actor 1@ run_to_car 11@ -1 ms stop_at_distance 5.0
20@ = Marker.CreateAboveActor(1@)
Marker.SetColor(20@, 4)
Marker.SetIconSize(20@, 2)
0209: 12@ = random_int_in_ranges 500 40000
01E3: show_text_1number_styled GXT 'IE30' number 12@ time 1000 style 1 // 3APA6OTKN~n~~w~$~1~
:SHOP_749
if
00E1: player 0 pressed_key 11
else_jump @SHOP_773
jump @SHOP_848
:SHOP_773
wait 0
if
00E1: player 0 pressed_key 10
else_jump @SHOP_806
05DE: AS_actor 1@ walk_around_ped_path
jump @SHOP_937
:SHOP_806
wait 0
if or
Car.Wrecked(11@)
0741: actor $PLAYER_ACTOR busted
Actor.Dead($PLAYER_ACTOR)
Actor.Dead(1@)
else_jump @SHOP_749
jump @SHOP_937
:SHOP_848
wait 0
01E3: show_text_1number_styled GXT 'IE30' number 12@ time 1000 style 1 // 3APA6OTKN~n~~w~$~1~
Player.Money($PLAYER_CHAR) += 12@
05CD: AS_actor $PLAYER_ACTOR exit_car 11@
05CB: AS_actor 1@ enter_car 11@ as_driver -1 ms
Car.SetDriverBehaviour(11@, FollowRoad)
Car.SetMaxSpeed(11@, 30.0)
:SHOP_914
wait 0
if
Actor.InCar(1@, 11@)
else_jump @SHOP_914
:SHOP_937
Marker.Disable(20@)
Car.RemoveReferences(11@)
Actor.RemoveReferences(1@)
jump @SHOP_15
Это мой код продажи оружия и машин прохожим
Все левые проверки и лишние переходы поудаляйте, там у меня было четыре кода в одном потоке, щас бошка плотхо соображает, так, что дерзайте
Shkun, вот бери, выдран из сайв алл
Player.CanMove($PLAYER_CHAR) = False
wait 400
03D8: show_save_screen
:SAVEALL_40
wait 0
if
03D9: save_done
else_jump @SAVEALL_40
Actor.Angle($PLAYER_ACTOR) = 0.0
Actor.Health($PLAYER_ACTOR) = 1500
Actor.Armour($PLAYER_ACTOR) = 0
Player.CanMove($PLAYER_CHAR) = True
Camera.SetBehindPlayer
Camera.Restore_WithJumpCut
jump @PANEL
Вот еще один мой код, действия такого, сидя в машине можно из багажника вытаскивать рс кары(присутствует все: машина, танк, самолет)
Для реалистичности можете поставить, чтоб кары были не вовсех машинах, а только в некоторых
вызываются по нажатии клавишь которые по правую сторону 1,2,3,4,6(пятая кнопка чет неработала)
:CAR_SET
thread 'CAR_SET'
wait 0
0@ = 304484
if and
Player.Defined($PLAYER_CHAR)
Actor.Driving($PLAYER_ACTOR)
else_jump @CAR_SET
if
84C8: not actor $PLAYER_ACTOR driving_flying_vehicle
else_jump @CAR_SET
if
8A4B: not controls_set_to_joystick
else_jump @CAR_SET_98
if
&0(0@,1i) == 255
else_jump @CAR_SET_255
:CAR_SET_98
03C0: $CAR[0] = actor $PLAYER_ACTOR car
067F: set_car $CAR[0] lights 2
wait 1000
067F: set_car $CAR[0] lights 0
Car.SetImmunities($CAR[0], 1, 1, 1, 1, 1)
Car.DoorStatus($CAR[0]) = 2
0508: car $CAR[0] close_all_doors
wait 2000
:CAR_SET_157
wait 0
09E9: car $CAR[0] add_single_nitro
if or
Actor.Dead($PLAYER_ACTOR)
0741: actor $PLAYER_ACTOR busted
not Actor.Driving($PLAYER_ACTOR)
&0(0@,1i) == 255
else_jump @CAR_SET_157
Car.DoorStatus($CAR[0]) = 0
Car.SetImmunities($CAR[0], 0, 0, 0, 0, 0)
Car.RemoveReferences($CAR[0])
wait 1000
jump @CAR_SET
Car.RemoveReferences($CAR[0])
jump @CAR_SET
:CAR_SET_255
$KEY_RC = 304484
if
&0($KEY_RC,1i) == 16711680
else_jump @CAR_SET_559
Model.Load(#RCTIGER)
038B: load_requested_models
:CAR_SET_297
wait 100
if
Model.Available(#RCTIGER)
else_jump @CAR_SET_297
03C0: 2@ = actor $PLAYER_ACTOR car
0407: store_coords_to $X_CAR $Y_CAR $Z_CAR from_car 2@ with_offset 0.0 -5.0 0.0
0657: car 2@ open_componentA 1
1@ = Car.Create(#RCTIGER, $X_CAR, $Y_CAR, $Z_CAR)
Car.SetImmunities(2@, 1, 1, 1, 1, 1)
Car.DoorStatus(2@) = 2
Car.LockInCurrentPosition(2@) = True
wait 2000
0715: put_player $PLAYER_CHAR in_RC_mode_in_car 1@ // on foot version
wait 1000
Model.Destroy(#RCTIGER)
095E: set_car 2@ componentA 1 manipulation 1 value 0.0
04D6: enable_RC_car_detonation 0 // or opcode 048A
048A: set_RC_car_detonation 0 // or opcode 04D6
wait 1000
:CAR_SET_457
wait 0
if or
00E1: player 0 pressed_key 15
02BF: car 1@ sunk
02BF: car 2@ sunk
Car.Wrecked(1@)
Car.Wrecked(2@)
Actor.Dead($PLAYER_ACTOR)
else_jump @CAR_SET_457
04DB: exit_RC_mode // on foot version
0151: remove_status_text $HEALTH_CAR
Car.LockInCurrentPosition(2@) = False
03C0: 2@ = actor $PLAYER_ACTOR car
Car.SetImmunities(2@, 0, 0, 0, 0, 0)
Car.RemoveReferences(2@)
Car.DoorStatus(2@) = 0
jump @CAR_SET
:CAR_SET_559
$KEY_RC_1 = 304485
if
&0($KEY_RC_1,1i) == 255
else_jump @CAR_SET_848
Model.Load(#RCBARON)
038B: load_requested_models
:CAR_SET_599
wait 100
if
Model.Available(#RCBARON)
else_jump @CAR_SET_599
03C0: 2@ = actor $PLAYER_ACTOR car
0407: store_coords_to $X_CAR $Y_CAR $Z_CAR from_car 2@ with_offset 0.0 -5.0 0.0
0657: car 2@ open_componentA 1
1@ = Car.Create(#RCBARON, $X_CAR, $Y_CAR, $Z_CAR)
Car.SetImmunities(2@, 1, 1, 1, 1, 1)
Car.DoorStatus(2@) = 2
Car.LockInCurrentPosition(2@) = True
wait 2000
0715: put_player $PLAYER_CHAR in_RC_mode_in_car 1@ // on foot version
wait 1000
Model.Destroy(#RCBARON)
095E: set_car 2@ componentA 1 manipulation 1 value 0.0
04D6: enable_RC_car_detonation 0 // or opcode 048A
048A: set_RC_car_detonation 0 // or opcode 04D6
wait 1000
:CAR_SET_759
wait 0
if or
00E1: player 0 pressed_key 15
Car.Wrecked(2@)
02BF: car 1@ sunk
02BF: car 2@ sunk
Actor.Dead($PLAYER_ACTOR)
Car.Wrecked(1@)
else_jump @CAR_SET_759
04DB: exit_RC_mode // on foot version
Car.LockInCurrentPosition(2@) = False
Car.SetImmunities(2@, 0, 0, 0, 0, 0)
Car.RemoveReferences(2@)
Car.DoorStatus(2@) = 0
jump @CAR_SET
:CAR_SET_848
$KEY_RC_2 = 304485
if
&0($KEY_RC_2,1i) == 16711680
else_jump @CAR_SET_1131
Model.Load(#RCBANDIT)
038B: load_requested_models
:CAR_SET_890
wait 100
if
Model.Available(#RCBANDIT)
else_jump @CAR_SET_890
03C0: 2@ = actor $PLAYER_ACTOR car
0407: store_coords_to $X_CAR $Y_CAR $Z_CAR from_car 2@ with_offset 0.0 -5.0 0.0
0657: car 2@ open_componentA 1
1@ = Car.Create(#RCBANDIT, $X_CAR, $Y_CAR, $Z_CAR)
Car.SetImmunities(2@, 1, 1, 1, 1, 1)
Car.DoorStatus(2@) = 2
Car.LockInCurrentPosition(2@) = True
wait 2000
0715: put_player $PLAYER_CHAR in_RC_mode_in_car 1@ // on foot version
wait 1000
Model.Destroy(#RCBANDIT)
095E: set_car 2@ componentA 1 manipulation 1 value 0.0
wait 1000
:CAR_SET_1042
wait 0
if or
00E1: player 0 pressed_key 15
Car.Wrecked(2@)
02BF: car 1@ sunk
02BF: car 2@ sunk
Actor.Dead($PLAYER_ACTOR)
Car.Wrecked(1@)
else_jump @CAR_SET_1042
04DB: exit_RC_mode // on foot version
Car.LockInCurrentPosition(2@) = False
Car.SetImmunities(2@, 0, 0, 0, 0, 0)
Car.RemoveReferences(2@)
Car.DoorStatus(2@) = 0
jump @CAR_SET
:CAR_SET_1131
$KEY_RC_3 = 304486
if
&0($KEY_RC_3,1i) == 16711680
else_jump @CAR_SET
Model.Load(#RCRAIDER)
038B: load_requested_models
:CAR_SET_1173
wait 100
if
Model.Available(#RCRAIDER)
else_jump @CAR_SET_1173
03C0: 2@ = actor $PLAYER_ACTOR car
0407: store_coords_to $X_CAR $Y_CAR $Z_CAR from_car 2@ with_offset 0.0 -5.0 0.0
0657: car 2@ open_componentA 1
1@ = Car.Create(#RCRAIDER, $X_CAR, $Y_CAR, $Z_CAR)
Car.SetImmunities(2@, 1, 1, 1, 1, 1)
Car.DoorStatus(2@) = 2
Car.LockInCurrentPosition(2@) = True
wait 2000
0715: put_player $PLAYER_CHAR in_RC_mode_in_car 1@ // on foot version
wait 1000
Model.Destroy(#RCRAIDER)
095E: set_car 2@ componentA 1 manipulation 1 value 0.0
04D6: enable_RC_car_detonation 0 // or opcode 048A
048A: set_RC_car_detonation 0 // or opcode 04D6
wait 1000
:CAR_SET_1333
wait 0
if or
00E1: player 0 pressed_key 15
Car.Wrecked(2@)
02BF: car 1@ sunk
02BF: car 2@ sunk
Actor.Dead($PLAYER_ACTOR)
Car.Wrecked(1@)
else_jump @CAR_SET_1333
04DB: exit_RC_mode // on foot version
Car.LockInCurrentPosition(2@) = False
Car.SetImmunities(2@, 0, 0, 0, 0, 0)
Car.RemoveReferences(2@)
Car.DoorStatus(2@) = 0
jump @CAR_SET
Потом через таблицу зделаю
mywalkman спасибо большое за скрипт сохрания! а что за сейволл и где его взять?
У меня появился ещё один вопросик. За что отвечает переменная $ACTIVE_INTERIOR, а то частенько её в скриптах вижу и понять не могу.
CraZZZy-GameRRR, за активный интерьер, ну комната в доме, еще че-нить, а вот и сама команда 077E: get_active_interior_to $ACTIVE_INTERIOR - она и записывает номер интерьера в переменную
Даниил Лаврентьев, программу санни билдер качай, там есть кнопка справка, вот туды жмешь и читаешь, чего непоймеш пиши мне в личку помогу www.sannybuilder.com/ - официальный сайт
Какой опкод проверяет включены или выключены фары и какое максимальное кол-во жизней авто?
Проверка фар вроде как нет. Есть
067F: set_car 0@ lights 2
0919: enable_car 0@ parking_lights 1
Жизнь авто обычно 100. Его можно менять
0224: set_car 0@ health_to 1000
CraZZZy-GameRRR, Проверок на фары не существует, можно проверить с помощью адресов в гта эксэ, но это очень сложно и бесмысленно, жизни машине можешь поставить хоть сколько, чем больше тем дольше ты её будешь гробить
С жизнями всё понятно. Что касается фар, я всё-таки решил попробовать заняться этим вопросом, может что нибудь получиться.
Я скриптингом занимаюсь относительно недавно, так что простите за то, что задаю много вопросов. Что делает опкод NOP?
Привет всем. никто не знает как сделать, чтобы в клео скрипте dragger было 2 драгера, пожалуйста, очень надо, буду очень благодарен.
Этот скрипт позволяет машине на задние колеса вставать. Надо что-то в dragger.ini дописать, а у меня не получается никуя, как только не пробовал
Поздравьте меня! После долгих мучений наконец-то разобрался с проверкой фар, благо один человек готовый исходник скрипта дал.
Кому надо, берите ручку, записывайте:
03C0: 1@ = actor $PLAYER_ACTOR car
0A97: 0@ = car 1@ struct
0@ += 1412
0A8D: 0@ = read_memory 0@ size 1 virtual_protect 0
if
08B7: test 0@ bit 0
then
//Фары включены
else
//Фары выключены
end
Всё! Не так уж "сложно и бесмысленно", как MYWALKMAN говорил.
Примечание: если фары разбиты, будет считать их выключенными.
Небольшое уточнение к предыдущему посту, точнее скрипту.
Как я убедился на своём опыте, данный скрипт показывает горит или нет только правая фара (почему именно так - не знаю).
Вот скрипт получше:
03C0: 5@ = actor $PLAYER_ACTOR car
0A97: 0@ = car 5@ struct
0@ += 0x4A8
0A8D: 1@ = read_memory 0@ size 1 virtual_protect 0
0@ += 0xDC
0A8D: 0@ = read_memory 0@ size 4 virtual_protect 0
if or
08B7: test 1@ bit 3
08B7: test 1@ bit 4
not 0@ == 0
then
//Фары горят
else
//Фары не горят
end
Данный скрипт выдаст TRUE, даже если фары должны гореть, но они разбиты.
CraZZZy-GameRRR, не знаю зачем тебе это понадобилось, но могу сказать одно "МОЛОДЕЦ"!!!
Это мне для датчика фар для спидометра, который я создаю, нужно. Кстати, скоро он будет полностью готов и я его вам обязательно покажу. Осталось ждать немного.
Что касается фар, вот пара ссылок на информацию по теме:
sannybuilder.com/forums/viewtopic.php?pid=3729#p..
sannybuilder.com/forums/viewtopic.php?pid=7223#p..
Кому интересно, почитайте.
mywalkman [спец по скриптингу в GTA SA]
07.08.09 07:35
CraZZZy-GameRRR, Проверок на фары не существует, можно проверить с помощью адресов в гта эксэ, но это очень сложно и бесмысленно, жизни машине можешь поставить хоть сколько, чем больше тем дольше ты её будешь гробить
Жизни стандартной машины можно проверить записав в переменную рандом тачу от ГГ, затем записать её жизни в переменную, а после того высветить переменную в какой-нить GXT, например - NUMBER или DOLLAR.
Каждый по своему воспринимает, что для него бессмысленно, а что нет.
Насчёт "бессмысленного и сложного копания в гта эксэ" - давным-давно уже нашли эти адреса и теперь остаётся только заглядывать в такого рода таблицы, узнавать адрес и что к чему.
02A7: $0 = create_icon_marker_and_sphere $ICON at $X $Y $Z
04CE: $0 = create_icon_marker_without_sphere $ICON at 0.0 0.0 0.0
читай мануал (в SB F12).
Не, я другое имел в виду. Можно ли в набор иконок добавить свою, новую? Я так понимаю, создаём в HUD.TXD новую текстуру иконки, а дальше не знаю.
Это немного не совсем то. С запихиванием иконки в TXD файл у меня проблем нет. Лучше я на форуме SannyBuilder`а спрошу, там народ лучше в этом разбирается.
Хочу спросить,как сделать так чтобы коп мог арестовать других людей?Например,своей дубиной бьёт нарушителя,тот падает и коп пистолет на него направляет,потом говорит чтобы тот встал,тот встаёт,поднимает руки вверх,коп нападает на него и валит,одевает наручники и сажает в полицейскую тачку.
Никто не знает есь ли такой карпунер, в котором когда просто смотришь машины, а он номер и название показывает, просто я много машин добавил, теперь хочу поисправлять
08-03
16.08.09 15:27
Хочу спросить,как сделать так чтобы коп мог арестовать других людей?Например,своей дубиной бьёт нарушителя,тот падает и коп пистолет на него направляет,потом говорит чтобы тот встал,тот встаёт,поднимает руки вверх,коп нападает на него и валит,одевает наручники и сажает в полицейскую тачку.
Нужно создать своего рода скрипт, в котором коп делает с "арестованным" всё, что ты описал. Но это больше похоже на сценарий части миссии, нежели на "уличный" скрипт. Если ты имел в виду, чтоб у каждого прохожего был уровень преступности (разыскиваемости) как и у CPed'а (Игрока) - такое даже невообразимо в осуществлении. Даже если удастся - никакой процессор и движок не потянет.
Ну я воче имел ввиду что у них есть опрелённый уровень,не так как у игрока,не так что там заним гонялся спецназ,вояки и т.д.Ну если взять к примеру,когда в полицейскую машину врезается кто-то из людей,то я заметил что коп выходит и пуляет в него насмерть,но копы непереговариваются по рации,просто коп сам делает своё дело,т.е "реагирует",но все остальные копы его неразыскивают.Просто хотел сделать реалистично.
Мой тебе совет:
Прочитай учебник по SB и попробуй сам такой скрипт создать.
Идея, впринципе, неплохая.
В самом Sanny Builder`е есть, в разделе справки.
Если информации, изложеной в нём,окажется мало, полазай по этим сайтам:
lond-riders.clan.su/publ/1-1-0-4
missions.gtamaps.net/articles.php
gtamodding.ru/wiki/%D0%9A%D0%B0%D1%82%D0%B5%D0%B3%D0%BE%D1%80%D0%B8%D1%8F:%D0%A1%D0%BA%D1%80%D0%B8%D0%BF%D1%82%D0%B8%D0%BD%D0%B3
Или, если хочешь, я могу тебе помочь в создании скрипта. Я, правда, профессионалом в этой области сам себя не считаю, но в этом деле мои знания отнюдь не маленькие.
------------------------
Ура! Наконец-то создал свой CraZZZy Speedometr (как я его назвал по аналогии с моим ником). Правда, это событие произошло ещё в пятницу, 14-ого числа. Несколько дней ждал, пока мой скрипт добавят в список фалов на PlayGround`е. Сегодня выяснилось, что человека, отвечающего за выкладку модов на сайт, не было все выходные, а, следовательно, мой спидометр будет длбавлен в каталог не раньше чем через несколько дней. Вообщем выложил его пока только на GTA.ru.
Вот ссылка: gta.com.ua/file_sa_details.phtml?id=848
Просьба оценить спидометр и высказать свои замечания или предложения по его усовершенствованию. Спидометр получился довольно многофункциональным. Он включает в себя:
- понятное дело, сам спидометр (аналоговый)
- аналоговый тахометр
- индикатор передачи
- индикатор ручного тормоза
- индикатор фар
- индикатор повреждений
- цифровой одометр, сохраняющий своё значение при выходе из авто и при сохранении
Кстати, это мой первый скрипт, не считая, разве что, пары простеньких для себя.
Наконец на GTA.ru добавили - www.gta.ru/sanandreas/files/21489/
Я видел,прикольно!Только вот у меня проблемма,плохо понятны записи в скриптинге,-можешь помочь?-
Могу. Можешь по-подробней сформулировать, что конкретно непонятно.
Знаки типо @ $ ACTOR = и т.п.Как например правильно при создании скриптинга,=+вести запись+=?Я ещё думал над одним недостатком в игре,это то что копы нереагируют на чужие выстрелы,а как можно этот недостаток исправить?
Я вот хочу исправить,но незнаю как правильно начать.
Хорошо, постараюсь объяснить, что есть что.
В игре в папке "data" есть файл "main.scm". Это основной скриптовый файл в игре. Можно добавлять новые потоки в него, но лучше установить библиотеку CLEO 3 (надеюсь, ты знаешь, что это такое) и создавать потоки в отдельных CS-файлах.
Вобщем, открываем Sanny Builder. Рекомендую сразу же в настройках установить галочку рядом с "Перезапись выходного файла", чтобы избежать дублирования фалов при компиляции. Выбираем в меню "Создать". Вставляем, указанный ниже, код:
// This file was decompiled using sascm.ini published by Seemann (sannybuilder.com/files/SASCM.rar) on 13.10.2007
{$VERSION 3.1.0027}
{$CLEO .cs}
//-------------MAIN---------------
0000: NOP
:MyThread_1
wait 0
if
00DF: actor $PLAYER_ACTOR driving
jf @MyThread_1
0@ = 0
:MyThread_2
if
00DF: actor $PLAYER_ACTOR driving
jf @MyThread_3
0@ += 1
wait 1000
jump @MyThread_2
:MyThread_3
01E4: show_text_1number_lowpriority GXT 'TIMEINC' number 0@ time 2000 flag 1
wait 2000
jump @MyThread_1
Что мы здесь видим?
Всё, что идёт до //-------------MAIN--------------- - служебная информация билдера, она нас не интересует.
0000: NOP - ничего не делающий опкод. Зачем нужен, объясню чуть позже.
Затем идёт сам поток.
:MyThread_1 - начало потока, т.е. нашего скрипта, где "MyThread" - название метки, которое может состоять из английских букв без использования пробелов и других спец-символов, типа кавычек, точек, запятых. "1" - номер метки, любое целое число, рекомендую нумеровать метки по порядку, чтоб не запутаться.
wait 0 - ждём 0 мс. Обязательно ставим в начале потока.
if
00DF: actor $PLAYER_ACTOR driving - проверяем, управляет ли игрок каким-либо транспортным средством. Если да, выполнение потока переходит дальше, в противном случае переходим на метку "MyThread_1", тобишь скрипт начинает выполняться сначала.
0@ = 0 - создаём локальную (определённую только в данном потоке) переменную с номером 0. В потоке номер для локальных переменных может быть от нуля до 33-х и до 1024-х в миссиях. Глобальные переменных в своём названии могут содержать любые английские буквы или числа, например: $Var, $Var32, $32. После номера локальной переменной ставиться знак собаки ("@"), а перед названием глобальной - доллар ("$").
Затем процесс выполнения подходит ко второй метке, т.е. "MyThread_2".
После этого (попробуй догадаться зачем) опять проверяем, управляет-ли актёр транспортом. Если выражение ложно, командой jf @MyThread_3, переходим на третью метку.
0@ += 1 если условие истинно, увеличиваем значение переменной "0@" на единицу.
wait 1000 - затем ждём 1000 миллисекунд, т.е. одну секунду.
Команда jump @MyThread_2, переводит нас на метку номер 2, и часть скрипта, расположенная между второй и третьей меткой будет выполняться бесконечно, пока актёр не выйдет из машины, т.е. когда условие
if
00DF: actor $PLAYER_ACTOR driving
будет ложно, по команде jf @MyThread_3 будет выполнен переход на третью метку.
Затем опкод 01E4: show_text_1number_lowpriority GXT 'TIMEINC' number 0@ time 2000 flag 1 выведет на экран текст с заголовком "TIMEINC" из GXT-файла текста и значение переменной "0@" на две секунды. Ставлю сотню, что записи с таким заголовком нету в твоём GTX-файле. Тогда добавим запись в FXT-файл. Открываем папку с GTA, заходим в каталог "cleo", затем в "cleo_text". Если данной папки нет, убедись, что в папке "cleo" есть файл GxtHook.cleo. Если его нет, то скачай отсюда cleo.sannybuilder.com/plugins/gxthook.rar и распакуй в папку "cleo". Затем создай папку "cleo_text" в данной папке. После этого создай с помощью блокнота файл "text.fxt" и запиши в него эту строку "TIMEINC Time in car is ~1~" (без кавычек).
Вернёмся к нашему скрипту.
Через две секунды после вывода текста команда jump @MyThread_1 запустит скрипт сначала.
Как ты возможно догадался, при выходе из машины на экран выводится время, в течении которого ты был в ней. Если в самом конце команду jump @MyThread_1 заменит на end_thread (конец потока), скрипт выполнится только один раз, а, следовательно, информация о времени, проведённом в авто, появится только один раз при первом выходе из ТС.
Небольшое примечание:
Если в потоке какая-либо часть выполняется несколько или более раз подряд (в нашем скрипте части между 2-ой и 3-ей меткой и весь скрипт от начала до конца), обязательно должна быть пауза (опкод wait) (в нашем случае wait 1000 в конце второй и wait 2000 в конце третьей метки, и, понятное дело, wait 0 в самом начале), пусть даже со значением равным нулю.
Теперь вернёмся к опкоду 0000: NOP в самом начале. Как я уже говорил, он ничего не делает. Так зачем же он нужен? Дело в том, что если скрипт хоть раз переходит на начальную метку (в нашем случае jump @MyThread_1 в конце), то при запуске вместо сохранённой игры запустится новая. Если используешь Sanny Builder последней версии 3.04, то при компиляции билдер напомнит тебе об этом, выда сообщение "Переход на нулевой оффсет.". Так что в самом начале ставим хотя бы один какой-нибудь опкод: либо 0A95: enable_thread_saving (сохраняет процесс выполнения потока и его переменные вместе со своими значениями в сейв при сохранении игры), либо создаём переменную и присуждаем ей значение (пример - $DIST= 0.0), либо ставим опкод-пустышку 0000: NOP.
После того, как мы создали скрипт, его нужно сохранить. Нажми клавишу "F6". Выйдет диалог сохранения файла. Файл сохраняем в папку "cleo" в формате "CS", установив в "Типе файла" значение "Any files (*.*)".
Надеюсь, всё понятно? Если нет, могу ещё раз более подробно объяснить. Хочу заметить, что это очень простой, можно даже сказать наилегчайший, пример скрипта.
Привет всем, никто не знает как повысить посадку машины над землей, а то я все легковые заменил, а у некоторых колеса в асфальт немного проваливаются, сажите, пожалуйста, очень надо
Скачать библиотеку CLEO 3 (CLEO 3 Code Library) можешь ЗДЕСЬ.
Потом ещё сюда загляни, если хочешь. 
Daeman.cs, битая ссылка.
Вот рабочая: cleo.sannybuilder.com/cleo3.exe
И сюда тоже. ;-)
Я смотрел тему www.trainsforgta.net/print.php?type=F&thread.. добавлять тачки в gta, а не заменять,если честно-неполучилось.
В том посте написано. Ладно, повторю:
при выходе из машины на экран выводится время, в течении которого ты был в ней
Это пример скрипта, чтобы ты понял, так сказать, азы скриптинга. К тому скрипту, который нужен тебе, он, впрочем, не относится.
Народ, что за глюк такой? При компиляции и последующей декомпиляции скрипта названия меток меняются на NONAME.
Это не глюк. Зайди в Настройки > Форматирование > Формат меток. У меня например выбрано второе (Имя потока+смещение от его начала).
SB называет поток NONAME в том случае, если он не определён опкодом 03A4.
:VZLOM_16
thread 'VZLOM' не проще ли сделать так?
VZLOM вместо взлом вставь своё имя для потока, но помни в слове должно быть не больше 7 букв и слово должно быть в кавычках, как показано в примере
Так никто не знает, как сделать, чтобы колеса в асфальт не проваливались, мне очень надо, пожалуйста, просто обидно стало, я столько мучился, заменял, настраивал, а эту проблему решить не могу. За мной не заржавеет.
CraZZZy-GameRRR,помоги сделать скрипт для копов,чтобы они могли на выстрелы других людей реагировать.
[b]mywalkman[/b] - Mersi!
[b]Banzay-RUS[/b] - По-моему в HANDLING.CFG какой-то параметр за это отвечает. Зайди на gta.com.ua/ , там в разделе программ для Сан Андреаса скачай редактор параметров авто (как прога точно называется не помню). Открой ею даный файл, там разберешься.
[b]08-03[/b] - Помогу, но только через пару дней - сейчас я вне дома, под рукой компа с ГТА и Санни Билдером к сожалению нету в инет выхожу через мобильник, причем за немалые деньги.
Banzay-RUS, точно не помню, но по моему через VEHICLES, что в папке дата, попробуй методом тыка, я как-то подымал высоко машину, но в каком файле менял параметры авто не помню
08-03, это трудно и совсем не к чему
CraZZZy-GameRRR и mywalkman спасибо, я уже как-то сделал, но мля опять проблема теперь очень маленькие колеса, а у некоторых вообще пропали, у всех авто, которые я заменил, я знаю как исправить, но всё равно уже меня это за*бало мля сцука
скажите а кто нибудь знает как закончить rrr путь? а то я сделал свой путь, а машина ездит по нему бесконечно!
Мужики!!!!!!! Я тут новичёк в GTA SA и не знаю как устанавливать скрипты для неё, может ктонибуть поможет разобраться!!!!!! Помогите пожалуйста!!!!!!!!!!!!!!!!!!!!!
Сворганил на досуге небольшой скрипт, который прибавляет игре большую реалистичность. При авариях количество жизней СиДжея уменьшается (как в Мафии). Тоже самое происходит и при возгорании авто.
В скрипте имеется пара небольших багов, хотелось бы их исправить:
- Жизни игрока не должны уменьшаться, когда по его тачке кто-нибудь стреляет. Какой опкод проверяет, стреляют ли по тачке или нет?
- Когда актёр умирает, он вываливается из машины. Хотелось бы сделать так, чтоб его голова падала на колени, как-будто машина взорвалась вместе с ним внутри. Помогите пожалуйста так сделать, а то я в анимации мало чего понимаю.
Исходный код скрипта:
//-------------MAIN---------------
0000: NOP
:Health_1
thread 'Health'
wait 0
if and
Actor.Driving($PLAYER_ACTOR)
84C8: not actor $PLAYER_ACTOR driving_flying_vehicle
84A7: not actor $PLAYER_ACTOR driving_boat
89AE: not actor $PLAYER_ACTOR driving_train
jf @Health_1
03C0: 0@ = actor $PLAYER_ACTOR car
0227: 1@ = car 0@ health
:Health_2
wait 100
if and
Actor.Driving($PLAYER_ACTOR)
actor.InCar($PLAYER_ACTOR, 0@)
jf @Health_1
if
8495: not car 0@ burning
jf @Health_3
0227: 2@ = car 0@ health
0085: 3@ = 1@
0063: 3@ -= 2@
0085: 1@ = 2@
0226: 4@ = actor $PLAYER_ACTOR health
0063: 4@ -= 3@
0223: set_actor $PLAYER_ACTOR health_to 4@
jump @Health_2
:Health_3
wait 50
if and
Actor.Driving($PLAYER_ACTOR)
actor.InCar($PLAYER_ACTOR, 0@)
jf @Health_1
if
0495: car 0@ burning
jf @Health_4
0226: 4@ = actor $PLAYER_ACTOR health
4@ -= 1
0223: set_actor $PLAYER_ACTOR health_to 4@
jump @Health_3
031E: car 0@ hit_by_weapon 38
А зачем анимация, когда можно запереть двери?
ILdar07 wrote:
031E: car 0@ hit_by_weapon 38
Это проверка какого-то конкретного оружия, а мне вообще надо узнать стреляют или нет.
ILdar07 wrote:
А зачем анимация, когда можно запереть двери?
Увы, не работает. Всё равно вываливается. ![]()
Если вообще надо узнать стреляют или нет, то ставь вместо 38 другие цифры из мануала и будет проверка каждого оружия. Общего опкода нет.
А если заморозить актёра?
8686: not car 84@ attached точно не помню, но по моему эта проверка отвечает, за повреждения машины от всех ружий
020A: set_car 0@ door_status_to 4 - так поставь, проверь, вроде не должен вываливаться
8686: not car 84@ attached - проверка присоединен car 84@ к чему либо или нет
031E: car 0@ hit_by_weapon 38
А вместо 38 не пробовал ставить -1?? По ходу будет от любого оружия... И ещё, можно от каждого оружия поставить свою уменьшаемость жизней, т.е. из пистолета по чуть чуть забирает, из M4 посильнее, из минига ещё сильней и т.д.
CraZZZy-GameRRR,ты незнаешь случайно как можно сделать так чтобы банды перестали курить,пить и вести себя по идиотски,-водить руками как обкуренные и т.п.Я пробовал программы,например ped editor,pedstats editor и т.п.,но не вышло,потом думаю,наверно надо скрипт сделать или что-то исправить в скрипте относящийся к ним,-поможешь?
Я хочу свой мод один создать, но при этом хочу исправить их поведение.
Извиняюсь, что не по теме, но никто не знает где можно скачать прогу, чтобы с диска C на диск D с помощью её можно было память перекинуть, а то у меня на C уже 11 гигов всего, скажите, кто знает, очень надо
Partiton Magic (ссылку на прогу, думаю, сам найдешь)
У меня тоже жёсткий диск не очень большой (50 ГБ), диск C по размерам на один с лишнем ГБ больше твоего.
насчет банд незнаю... разве что так:
записываешь в переменную педов вокруг сиджея, проверяешь банда это или нет, если нет выгружаешь переменную и возвращаешься в начало, если да, то устанавливаешь им нужные тебе анимации и выгружаешь переменную, и снова ищешь педов вокруг сиджея... пробуй.. если что непонятно-пиши.. разберемся..
08-03 wrote
Видно ответ неполучу.
Увы, помочь не могу - сам не в курсе, как это сделать.
библиотека CLEO 3
Устанавливаем в каталог с игрой, CS-файлы кидаем в папку "CLEO".
Чуваки!Никто не знает можно ли сделать скрипт для педов, чтобы у них был уровень разыскиваемости "урезанный" в две звезды, не больше.
Тебе уже давно на похожий вопрос Daeman.cs ответил.
чтоб у каждого прохожего был уровень преступности (разыскиваемости) как и у CPed'а (Игрока) - такое даже невообразимо в осуществлении. Даже если удастся - никакой процессор и движок не потянет.
Хотя, в принципе, такое возможно сделать, только очень трудно. Считываем хэндлы людей вокруг СиДжея в массив на небольшом расстоянии (думаю, не более нескольких сотен метров), создаём другой массив, где будут записываться уровни розыска для каждого педа. Далее идут многочисленные проверки - не нарушил ли данный гражданин закон? Если да, количество звёздочек увеличивается на одну, и копы начинают гоняться за нарушителем, а он от них удирает. Как только догонит, запускается анимация ареста.
Саму идею я тебе подсказал, больше ничем помочь не могу. Я в таких типах скриптов не очень разбираюсь.
--------------------------------------------------
На одном форуме, посвящённом компьютерной графике, под названием Демиарт, решил продемонстрировать свой CraZZZy Speedometer. Предварительно я его немного изменил, разукрасил приделал некоторые надписы. По-моему, получилось СУПЕР!

УВЕЛИЧИТЬ
Shkun,я правда не оч хорошо понял,ты говорил что:
записываешь в переменную педов вокруг сиджея, проверяешь банда это или нет, если нет выгружаешь переменную и возвращаешься в начало, если да, то устанавливаешь им нужные тебе анимации и выгружаешь переменную, и снова ищешь педов вокруг сиджея.
Просто непонял куда записовать.
значит сначала пиши простенькие скрипты из учебника к сани билдеру (ф12). потом поймешь. а у меня новая проблема:
я хочу сделать скрипт, чтоб при езде внизу появлялось колесико и когда машина едет то оно крутится. теперь вопрос: как можно изменить скорость его вращения? сейчас я его вращаю этим опкодом: 074B: draw_texture 1 position 370.0 385.0 scale 64.0 64.0 angle 0.1 RGBA 255 255 255 255 постоянно повторяя этот опкод. я пробовал изменять и angle и wait перед опкодом- все равно. вот мой код:
:TXD
thread 'MYTX'
var
$PLAYER_CHAR: Player
$PLAYER_ACTOR: Actor
1@: Float
end
:TXD_1
wait 0
if and
Actor.Driving($PLAYER_ACTOR)
$ACTIVE_INTERIOR == 0
jf @txd_1
03C0: 1@ = actor $PLAYER_ACTOR car
:txd_2
wait 0
0390: load_txd_dictionary "wheels"
038F: request_texture "wheel_saloon64" as 1
03f0: enable_text_draw 1
while true
if and
$PLAYER_CHAR.Defined
$PLAYER_CHAR.Controllable
$PLAYER_ACTOR.Driving
then
03F0: enable_text_draw 1
while 01C1: car 1@ stopped
03E3: set_texture_to_be_drawn_antialiased 1
038D: draw_texture 1 position 370.0 385.0 scale 64.0 64.0 RGBA 255 255 255 255
wait 0
end
while 81C1: not car 1@ stopped
03E3: set_texture_to_be_drawn_antialiased 1
038D: draw_texture 1 position 370.0 385.0 scale 64.0 64.0 RGBA 255 255 255 255
jump @krug
wait 0
end
wait 0
end
0391: release_txd_dictionary
03F0: enable_text_draw 0
Car.RemoveReferences(1@)
jump @txd_1
:krug
wait 0
03E3: set_texture_to_be_drawn_antialiased 1
074B: draw_texture 1 position 370.0 385.0 scale 64.0 64.0 angle 0.1 RGBA 255 255 255 255
jump @txd_2
end_thread
CraZZy-GameRRR, ты можешь мне ссылку кинуть файл cargrp.dat ,у меня после одних испытаний этот файл начал глючить.
Shkun
Какой-то у тебя скрипт глюченый. Колесо не крутится, а быстро мигает.
Короче, сам рабочий скрипт напишу.
//-------------MAIN---------------
0000: nop
:TXD_1
thread 'TXD'
wait 0
if and
Actor.Driving($PLAYER_ACTOR)
$ACTIVE_INTERIOR == 0
jf @txd_1
03C0: 1@ = actor $PLAYER_ACTOR car
0390: load_txd_dictionary "wheels"
038F: request_texture "wheel_saloon64r" as 1
03f0: enable_text_draw 0
10@ = 0.0
:txd_2
wait 0
if and
Actor.Driving($PLAYER_ACTOR)
$ACTIVE_INTERIOR == 0
00DB: actor $PLAYER_ACTOR in_car 1@
jf @txd_3
03F0: enable_text_draw 0
03E3: set_texture_to_be_drawn_antialiased 1
074B: draw_texture 1 position 370.0 385.0 scale 64.0 64.0 angle 10@ color_RGBA 255 255 255 255
10@ += 1.0 //Здесь 1.0 - коэффициент скорости вращения
//Если скорость вращения должна быть рассчитана
//исходя из скорости движения авто, расскоментируй
//всё это, а предыдущую строку удали.
//02E3: 11@ = car 1@ speed
//11@ *= 0.1 //Здесь 0.1 - коэффициент скорости вращения
//005b: 10@ += 11@
jump @txd_2
:TXD_3
wait 0
0391: release_txd_dictionary
03F0: enable_text_draw 0
Car.RemoveReferences(1@)
jump @TXD_3
08-03
narod.ru/disk/12689600000/cargrp.dat.html
mywalkman, загляни, пожалуйста, в личку!
Спасибо за ссылку!Я тут долго думал как можно создать скрипт для копов,чтобы они на чужой выстрел реагировали.Взял короче педов CRIMINAL,обычные бандиты и решил попробовать создать скрипт,только я без помощи не могу,посколько только учусь,наверняка фигню написал,но стал вникать.
Помоги мне исправить ошибки и продолжить,чтобы я ещё лучше врубился.
// This file was decompiled using sascm.ini published by Seemann (sannybuilder.com/files/SASCM.rar) on 13.10.2007
{$VERSION 3.1.0027}
{$CLEO .cs}
//-------------MAIN---------------
0000: NOP
:MyThread_1
wait 0
if
00DF:actor$criminal_ACTOR shooting
jf @MyThread_1
0@=0
:MyThread_2
if
00DF:actor$criminal_ACTOR shooting
jf @MyThread_3
0@+=1
wait 1000
Извини, но то что ты написал - полная чушь!
Ошибок море:
1) в опкоде 00DF пропущен пробел между actor и $criminal_ACTOR
2) не объявлена переменная $criminal_ACTOR
3) выполняется переход на несуществующую метку MyThread_3
4) в конце потока отсутствует end_thread или jump @метка
5) а главное - абсолютно неправильный скрипт
Ладно, постараюсь помочь тебе чем смогу, правда, сейчас я занят, постараюсь в свободное время заняться твоим скриптом.
Ой!Я неправильно написал,забыл пробел поставить,блин как это у меня вышло???????? ЗАШИБИСЬ!!! В математике не силён,путаница,непраВильно понемаю и т.д Вот БЛИН!
CraZZZy-GameRRR
Ошибки, конечно у 08-03 есть. Но, не стоит говорить, что он написал полную чушь, ерунду ахинею. Стоит только взглянуть на скрипт и понять, что порядок правильный. А это один из самых главных и неотъемлимых частей скриптинга.
08-03
Что конкретно насчёт ошибок - могу всё в точности объяснить и показать что к чему. А вообще, я примерно знаю, как реализовать такую идею. Только вот одна неурядица: спровоцировать педа атаковать, в данном случае - крайне возненавидеть до желания уничтожения или хотя бы нанесения увечий, Игрока способов не столь великое множества, учитывая, что игрок не влезет в "побоище" первым.
а можно сделать так, чтоб если колесо крутится с большой скоростью оно не превращалось в скомканный блин (постоянно сжимается и разжимается превращаясь в овал)?
Такие глюки (если не ошибаюсь) на широких мониторах возникают. Поставь ширину колёсика меньше чем высоту - должно помочь.
Вопрос не по теме, но всё же. Надеюсь, здесь есть автомобилисты? Отчего зависит расход топлива кроме как от оборотов двигателя? Мне это для скрипта ограниченного бензина нужно. Просто хочу по-реалистичней сделать.
Я не автомобилист, но по-моему от лошадиных сил, веса машины, скорости на которой она едет( скорость меньше-расход меньше и наоборот) и из-за возраста авто(чем старше тем больше жрет у моего пахана так было) и от движка(ну там дизель или инжектор). Если что может у отца спрошу, он точно знает.
CraZZZy-GameRRR, все делают зависимость от скорости, ну можешь сделать ещё зависимость от повреждений ну думаю больше и не надо, я смотрю ты хорошо шаришь в математике, я хер бы смог подсчитать скорость машины
По поводу л/с сообщений, я сообщения не читаю, т.к. все просят им что-то сделать, а поскольку я человек безотказный (и часто не выполняю свои обещания), поэтому я их и не читаю
скиньте самоучитель по скриптингу!Заранее спасибо!!!
нажми на ф12 в санни билдере- лучший самоучитель!
Отнюдь, Shkun. Самый лучший самоучитель - sannybuilder.com/forums . Ибо учиться заочно не всегда путь истинный
Daeman.cs, не понял ничего из выше сказанного, но могу по теме сказать одно, качаешь санни билдэр справка-помощь и там читаешь, я понему и научился скрипты писать
Адрес памяти +0x75 содержит информация о типе двигателя автомобиля. При считывании информации из него, каждый раз получаю разные и непонятные значения (что-то вроде: 0, 48, 128 и т.д.). Один человек на форуме SannyBuilder`а сказал, что это массив флагов. Я пытался понять какой бит за что отвечает, но мне это так и не удалось.
Может кто знает, как тип двигателя узнать или может где-нибудь скрипты, в которых это есть, видел?
Только через эксешник, по другому никак, яб помог, но я с игровой памятью никогда не работал
Ребят, быть может, кто-нибудь знает, существует ли проверка ВЫХОДА актёра из машины? Сразу хочу сказать, что проверка 09DE: actor $PLAYER_ACTOR entering_car не подходит, т.к. она отвечает только за ВХОД (в чём я убедился на своём опыте). Сей вопрос также был задан мною на форуме SannyBuilder`а, но там, к моему большому разочарованию, мне никто так и не сумел помочь.
А чем тебе не нравятся команды типа: 00DB: actor $PLAYER_ACTOR in_car 22@, 0449: actor 101@ in_a_car, 00DF: actor $PLAYER_ACTOR driving, а если тебе нужна именно проверка выхода, то делай через анимации Actor.Animation($PLAYER_ACTOR) == "BIKE_ELBOWL" - благо есть программа где все эти анимации расписаны
Эти проверки возвращают TRUE, даже при выходе (это я уже давно знаю). К тому же на форуме SannyBuilder`а наконец нашёлся человек, который мне помог.
0A96: 0@ = actor $PLAYER_ACTOR struct
inc(0@,0x530)
0A8D: 0@ = read_memory 0@ size 4 virtual_protect 0
if
0@ == 0
then
// Актёр выходит из машины
else
// Актёр не выходит из машины
end
Но всё равно, спасибо, MyWalkman!
Скажите пожалуйста как проверить включена сирена на машине или нет? (Проверить установлена ли на этой машине сирена я могу сам, главное включена или нет) CraZZZy-GameRRR помнишь ты сделал проверку на фары? может получится сделать тоже самое с сиреной?
ТАК!ВИЖУ что никто нехочет помоЧь мне в этом моде,сколько мне ещё ЖДАТЬ?! Сложно что ли???
УЛУЧЩЕНИЕ ДЛЯ ИГРЫ, ЕСЛИ ТАК СДЕЛАТЬ МОД, ТО ИГРЕ +++++++++++++++++++++++++++++++++++++ "БОЛЬШОЙ'
большой! """""""""""""""""""Кто-нибудь здесь есть?"""""""""""""""""""""""
Shkun wrote:
может получится сделать тоже самое с сиреной?
Конечно, почему бы и нет!
Через опкод:
03C0: 0@ = actor $PLAYER_ACTOR car
if
0ABD: vehicle 0@ siren_on
then
// Сирена включена
else
// Сирена выключена
end
и, если очень хочется, через память:
03C0: 0@ = actor $PLAYER_ACTOR car
0A97: 0@ = car 0@ struct
0@ += 1069
0A8D: 0@ = read_memory 0@ size 1 virtual_protect 0
if
0@ == 208
then
// Сирена включена
else
// Сирена выключена
end
08-03 wrote:
Сложно что ли???
Если честно, то для меня да. Я вообще (как я уже говорил) в таких типах скриптов не силён. Рекомендую зайти на SannyBuilder`ский форум. Там много умных людей, думаю, там тебе 100% помогут.
08-03
Объясни, пожалуйста, внятно, с чем тебе помочь. А то только орёшь сидишь и на всех грешишь.
У меня идея!Лучще без ареста других педов,ладно sorry у меня плохое настроение было ,короче я придумал легче и иначе никакого уровня разыскиваемости ненадо.
Я хочу чтобы мне помогли создать такой мод,чтобы копы изначально реагировали на выстрелы нарушителя,если вопче пед приминяет любое оружие "кроме кулаков" чтобы копы стреляли в нарушителя,если пед использует кулаки,то коп применяет дубину,но не арестовывает его.
Возможно. Тебе написать скрипт? Или только толкнуть в правильном направлении? :)
1 октября 2009 года открывается новый Sa-MP сервер "Nur-Bat-Liberti City"!
Нa сервер требуются персонал (это модераторы смотрящие за порядком,лагами,переводами),(скриптеры),что бы стать модератором на сервере необходимы знания PWN !
заявки в комментарии!
www.nur-bat.co.cc/
А можете сделать скрипт что-бы дырки от пуль в машине появлялись когда в неё стреляешь?
CraZZZy-GameRRR, у меня возникла проблемма с cleo 3.Я заметил что у педов после установки программы,поменялось повидение в худшую сторону.Им лень меня бить,т.е. подерётся немного,потом встаёт как-будто меня потерял и всё.
Кстаки я тут думал как можно ошибку исправить одну,когда бьёш по тачке [например гангстера,рабочего и бандита],они сразу не реагируют на удар,а это элемент нереалестичности.
Типо:опкод проверяет бьёт ли игрок или какой-нибудь другой пед по тачке.
Если утверждение истинно, то тогда гангстер от первого удара реагирует,не ждёт ни секунды.
Значит wait 0, я так понимаю.
Можно УБИТЬСЯ,возмо скриптинг мне не под силу.
08-03 wrote:
у меня возникла проблемма с cleo 3
А сам клео-то тут причём? Может ты какой-нибудь скрипт поставил, вот они и не хотят тебя бить?
08-03 wrote:
я тут думал как можно ошибку исправить одну
Скрипт будет выглядеть примерно так:
//-------------MAIN---------------
0000: NOP
:THREAD_1
wait 0
if
056D: actor $PLAYER_ACTOR defined
jf @THREAD_1
//Проверяем, существует ли игрок?
04C4: store_coords_to 11@ 12@ 13@ from_actor $PLAYER_ACTOR with_offset 10.0 10.0 0.0
04C4: store_coords_to 21@ 22@ 23@ from_actor $PLAYER_ACTOR with_offset -10.0 -10.0 0.0
09C0: 0@ = get_random_car_in_area 11@ 12@ 21@ 22@ 1.0 with_actors -1
//Считываем хэндл случайной близстоящей машины.
if
056E: car 0@ defined
jf @THREAD_1
//Проверяем, существует ли авто 0@?
//Если нет, значит поблизости игрока нет ни одной машины
if
//Здесь должна быть проверка: атакует ли актёр $PLAYER_ACTOR машину 0@?
jf @THREAD_1
046C: 1@ = car 0@ driver
//Считываем хэндл водителя машины 0@.
if
056D: actor 1@ defined
jf @THREAD_1
//Проверяем, существует ли он?
//Если нет, значит машина без водителя.
07A5: AS_actor 1@ attack_actor $PLAYER_ACTOR 99999 ms
//Заставляем водителя атаковать СиДжея в течениии 99 сек.
wait 5000
//Небольшая пауза (пока водитель выходит из машины).
jump @THREAD_1
Народ, разрешите задать пару вопросов?
1) Что в опкоде 09C0: 0@ = get_random_car_in_area 11@ 12@ 21@ 22@ 1.0 with_actors -1 означает предпоследний параметр?
2) Какой опкод проверяет, атакует ли актёр машину?
08-03 wrote:
скриптинг мне не под силу.
Почитай справку в Sanny Builder`е, или хочешь, я тебя научу всему, что сам знаю (и то и другое я тебе уже когда-то предлагал).
Что в опкоде 09C0: 0@ = get_random_car_in_area 11@ 12@ 21@ 22@ 1.0 with_actors -1 означает предпоследний параметр?
Высоту над уровнем моря.
Какой опкод проверяет, атакует ли актёр машину?
031E.
ILdar07 wrote:
Высоту над уровнем моря.
Спасибо!
ILdar07 wrote:
031E.
Меня интересует ударяет ли КОНКРЕТНЫЙ актёр КОНКРЕТНУЮ машину или нет? Из какого оружия, совершенно не важно.
Скорее всего на нижеуказанный вопрос получу отрицательный ответ, но всё же.
Кто-нибудь из присутсвующих здесь знает ассемблер и умеет писать, пусть даже простые, CLEO-плагины?
ILdar07, ты тут смотрю помогал уже когда то с этим.. чтобы с байка не падать. у того чувака получилось? Я почитал чёта пробовал, но нехрена не получилось как и у него сперва
Создай CLEO-скрипт и пиши там:
0000: NOP
:Noname_2
wait 250
if
Player.Defined($PLAYER_CHAR)
else_jump @Noname_75
08C6: set_actor $PLAYER_ActoR stay_on_bike 1
:Noname_75
jump @Noname_2
Нда.... видимо, я не в тему, но хоть КТО-НИБУДЬ вообще мне может объяснить что делать если cleo 3 не работает? Я уже всё сегодня испробовала... Версия у меня не та наверное, но у всех блин всё работает, а у меня нет.
Всё правильно делаю, в папку с игрой кладу все что надо, но скрипты не работают...
1) Попробуй переустановить игру.
2) Скачай последнюю версию CLEO 3 ОТСЮДА и установи.
А в чём заключалась причина неработоспособности CLEO, если не секрет? Что сделала?
Здарова всем!....сам шарю в скриптинге(шушуть ХД)...но вот на днях нашёл клео скрипт....в нё у оружия можно переключать прицелы есть ещё фонарик и 4 типа подствольника.....но вот тема.....мне нада лазерный прицел(он там присутсвует).....скока я этот скрипт не полошил нифига выдрать его неполучилось.....это жесть....если кто может накатайте скрипт лазерного прицельчика....буду благодарен....
ILdar07, в каком формате то он быть должен? через sb над создавать?
CraZZZy-GameRRR, я скачала с твоей ссылки клео, там при установке можно было выбрать другой файл cleo.asi, вот из за него не работало.
TheBlackDahliaMurder wrote:
через sb над создавать?
А как же! (Правда, можно ещё через MB, но он более древний и вообще хуже.)
1) Скачиваем SB ОТСЮДА.
2) Устанавливаем в любую папку и указываем путь к директории с игрой.
3) Где-то должен спросить "Установить CLEO 3?" - отвечаем "Да!".
4) Запускаем SB.
5) Выбираем "Файл --> Создать" или нажимаем "ctrl + n".
6) Вставляем исходный код, который тебе дал ILdar07, добавив в самом начале строку:
//-------------MAIN---------------
(иначе будет глюк).
7) Затем нажимаем "F6" - появляется диалог сохранения файла.
8) В качестве папки устанавливаем "GTA San Andreas\CLEO\".
9) В типе фала выбираем "Any file (*.*)", пишем любое имя прибавив к нему расширение "cs", например: "MyScript.cs".
10) Запускаем игру, убеждаемся, что скрипт работает.
Добрый день народ! Тема такая: Наша творческая организация "Мх студия" решила заняться моддингом GTA SA. Как новички, мы не знаем какие проги нам понадобятся. Если не влом, киньте ссылочки на нужные программки и желательно их описание!
TheBlackDahliaMurder wrote:
зависает после загрузки:\ cейва
Прошу прощения, кое-что забыл сказать. Перед
//-------------MAIN---------------
ещё надо
{$CLEO .cs}
добавить, чтобы на выходе не SCM-, а CS-файл получился.
Вообщем удали из папки "CLEO" CS и SCM-файлы твоего скрипта, и скомпилируй его заново с учётом моей поправки.
CraZZZy-GameRRR, теперь вылетает:\ вот так выглядит когда открываю:
// This file was decompiled using sascm.ini published by Seemann (sannybuilder.com/files/SASCM.rar) on 13.10.2007
{$VERSION 3.1.0027}
{$CLEO .cs}
//-------------MAIN---------------
0000: NOP
:NONAME_2
wait 250
if
Player.Defined($PLAYER_CHAR)
else_jump @NONAME_30
08C6: set_actor $PLAYER_ACTOR stay_on_bike 1
:NONAME_30
jump @NONAME_2
Посмотри, в папке "CLEO" случайно нет твоего скрипта в формате SCM? Если есть - удали, а иначе, я не знаю.
CraZZZy-GameRRR, 6л*:\ нету. это от мэйна не зависит? мод ставил на текстуры. или от того что это sa - copland..
TheBlackDahliaMurder wrote:
от мэйна не зависит?
and
или от того что это sa - copland..
Нет.
CraZZZy-GameRRR, можешь написать скрипт который я даеману писал,а то он куда-то провалился.
CraZZZy-GameRRR, :\ херово. а ты ставил скрипт этот всё намана?
CraZZZy-GameRRR, балин.. может кинешь мне его? на всякий случай. вот аська 470559455
TheBlackDahliaMurder wrote:
может кинешь мне его? вот аська
ICQ не имею, поэтому просто дам прямую ссылку на файл:
megabyte1024.narod.ru/Upload/StayOnBike.cs
08-03 wrote:
Как удалить старые миссии?
Способ №1:
Заменить файл "main.scm" из папки "GTA San Andreas\data\script" ЭТИМ. Из игры исчезнут все миссии, подмиссии, мини-игры и кое-что ещё (например: работа копом, таксистом, крановщиком и т.п., бильярд, игровые автоматы, тюнинг-ателье, авто-школа, всякие соревнования, а так же нельзя будет поесть (еда CJ`ю будет не нужна как в GTA Vice City) и подсадить к себе в машину девушку лёгкого поведения).
Внимание! Обязательно начни НОВУЮ игру. (В противном случае игра намертво зависнет.)
Способ №2:
Открыть "main.scm" и вручную удалить из него все ненужные тебе миссии, правда это более муторно.
Неудивительно. Как я уже говорил, из игры исчезнут не только миссии, но и кое-что ещё (в т.ч. и гангстеры).
Один вопрос.Я открыл main.scm и удалил миссию ограбление дяди сема.Миссия была в этом столбике:
DEFINE MISSION 11 AT @INTRO1 // Big Smoke
DEFINE MISSION 12 AT @INTRO2 // Ryder
DEFINE MISSION 13 AT @SWEET1 // Tagging Up Turf
DEFINE MISSION 14 AT @SWEET1B // Cleaning The Hood
DEFINE MISSION 15 AT @SWEET3 // Drive-Thru
DEFINE MISSION 16 AT @SWEET2 // Nines And AK's
DEFINE MISSION 17 AT @SWEET4 // Drive-By
Только отсюда надо удалять или ещё где-то?
08-03 wrote:
Только отсюда надо удалять или ещё где-то?
А ты сам как думаешь? Здесь миссии только определяются и пронумеровываются. Сами исходные коды миссий расположены намного ниже (начиная со строки 22 441).
//-------------MISSION 0---------------
// Скрипт первой миссии
//-------------MISSION 1---------------
// Скрипт второй миссии
и т.д.
В принципе, можно удалить только DEFINE MISSION, и миссия отключиться. Только не забудь переименовать номера последующих миссий (они должны идти строго по порядку).
Чего-то я ни хрена не нашёл.Слушай если тебе не лень,можешь удалить эти миссии сам и кинуть scm файл.
Попробовал я удалить миссии, вроде всё правильно сделал, но при запуске игры появляется чёрный экран (причём игра не виснет). Попробую на форуме SannyBuilder`а у людей спросить, есть вероятность, что помогут.
простая команда 016A: fade 0 time 0
первый параметр: 0 - потемнение, 1 - просветление экрана
второй параметр: время
Спасибо, ILdar07.
Радуйся, 08-03! Нашёл main, который тебе нужен - скачать файл. Убраны миссии и ничего кроме. Установка: скопируй файлы "main.scm" и "script.img" в папку "GTA San Andreas\data\script".
Гангстеры, кстати, присутствуют - сам лично проверил.
Скрипт читает файл с помощью данного исходного кода:
0A99: chdir 0
if
0AAB: file_exists "CLEO\Settings.ini"
jf @THREAD_3
0A9A: 21@ = openfile "CLEO\Settings.ini" mode 0x72
0A9D: readfile 21@ size 3 to 20@
0A9B: closefile 21@
При первом чтении всё нормально, а при последующих попытках получаю какие-то странные значения. Помогите разобраться, пожалуйста!
А я чайник! Не могу ничё сделать. Чё не делаю все не получается уже пол года. Кто нибудь что то посоветует? А то мне никакие инструкции не помогают.
CraZZZy-GameRRR!Эти два файла main.scm и script.img просто пройденные миссии.Мне ненадо так я хочу чтобы просто были удалены миссии а не пройденные.
Тогда чем тебя первый main.scm, который я тебе давал, не устраивает? Да и, если не секрет, зачем тебе это нужно?
08-03 wrote:
А тот скрипт ты сможешь написать?
Увы, нет.
Потому что я создаю свой мод!Я буду создавать новые миссии дюомом!Также карту буду переделывать,а миссии могут помешать,потому что из-за переделки со старыми миссиями будет вылет!
НАПРИМЕР:Ограбление дяди сема.Я переделывал порт там где происходит это событие но из-за нарушения параметров игра незагрузиться!
Скрипт который я daemanu писал,он мне неприслал,такое чувство что его в туалет засосало.
У меня проблема с гоночным скриптом. Когда я захожу на маркер гонки, то телепортируюсь к координатам старта игры (у меня чистый мэйн). И потом так как гонка делеко камера через пол города летит к старту, а на старте 4 машины вместо двух, причём две из них пустые, также клонируется CJ и сколько на старт не заходи столько сиджеев и появиться, а самое главное они всё делают сенхронно (тоесть ходят вместе с тобой по нажатию клавиш). Помогите решить эту проблему!! Плиз!
Вот скрипт:
:NONAME_2
$RACEMIS1STARTX = 1415.66
$RACEMIS1STARTY = -1327.78
$RACEMIS1STARTZ = 13.55
$11192 = Marker.CreateIconAndSphere(53, $RACEMIS1STARTX, $RACEMIS1STARTY, $RACEMIS1STARTZ)
:NONAME_2_46
wait 1
if
Player.Defined($PLAYER_CHAR)
else_jump @NONAME_2_46
if
0101: actor $PLAYER_ACTOR in_sphere $RACEMIS1STARTX $RACEMIS1STARTY $RACEMIS1STARTZ radius 3.0 3.0 3.0 sphere 0 stopped
else_jump @NONAME_2_46
if
Player.Controllable($PLAYER_CHAR)
else_jump @NONAME_2_46
if
$ONMISSION == 0
else_jump @NONAME_2_46
Marker.Disable($11192)
054C: use_GXT_table 'RACETOR'
00BA: show_text_styled GXT 'RACES_0' time 1 style 2 // FOHKN
0169: set_fade_color_RGB 0 0 0
fade 0 2500
:NONAME_2_188
wait 0
if
not fading
else_jump @NONAME_2_188
00BE: text_clear_all
03E6: remove_text_box
start_mission 1 // Initial 2
create_thread @RACEMS2
end_thread
:RACEMS2
thread 'RACEMS2'
gosub @RACEMS2_47
if
wasted_or_busted
else_jump @RACEMS2_38
gosub @RACEMS2_3278
:RACEMS2_38
gosub @RACEMS2_3477
end_thread
:RACEMS2_47
increment_mission_attempts
$ONMISSION = 1
set_weather 8
Player.ClearWantedLevel($PLAYER_CHAR)
00BE: text_clear_all
$A0 = 0
$A1 = 1
$A2 = 2
$A3 = 3
$A4 = 4
$A5 = 5
$A6 = 6
$A7 = 7
$A8 = 8
$A9 = 9
$A10 = 10
$A11 = 11
$A12 = 12
$A13 = 13
$A14 = 14
$A15 = 15
$A16 = 16
$MONEY = 2000
$TRAFF = 1.0
$A = 2
$AK = 1
$B = 8
$D = 0
$TIME = 0.0
$POS = 1
$POS2 = 1
$PAR = 1
:RACEMS2_263
$STAGE($PAR,6i) = 1
$PAR += 1
001C: $PAR > $A // (int)
else_jump @RACEMS2_263
$POINTX($A1,16f) = 1377.91
$POINTY($A1,16f) = -1539.05
$POINTZ($A1,16f) = 8.67
$SPEED($A1,16f) = 16.0
$TYPE($A1,16i) = 1
$POINTX($A2,16f) = 1363.99
$POINTY($A2,16f) = -1705.34
$POINTZ($A2,16f) = 8.55
$SPEED($A2,16f) = 100.0
$TYPE($A2,16i) = 1
$POINTX($A3,16f) = 1389.91
$POINTY($A3,16f) = -1715.98
$POINTZ($A3,16f) = 8.47
$SPEED($A3,16f) = 100.0
$TYPE($A3,16i) = 1
$POINTX($A4,16f) = 1624.75
$POINTY($A4,16f) = -1764.64
$POINTZ($A4,16f) = 3.95
$SPEED($A4,16f) = 100.0
$TYPE($A4,16i) = 1
$POINTX($A5,16f) = 1964.76
$POINTY($A5,16f) = -1849.17
$POINTZ($A5,16f) = 4.01
$SPEED($A5,16f) = 100.0
$TYPE($A5,16i) = 1
$POINTX($A6,16f) = 2275.43
$POINTY($A6,16f) = -2164.38
$POINTZ($A6,16f) = 6.06
$SPEED($A6,16f) = 100.0
$TYPE($A6,16i) = 1
$POINTX($A7,16f) = 2261.22
$POINTY($A7,16f) = -2231.15
$POINTZ($A7,16f) = 13.31
$SPEED($A7,16f) = 100.0
$TYPE($A7,16i) = 1
$POINTX($A8,16f) = 2297.57
$POINTY($A8,16f) = -2266.45
$POINTZ($A8,16f) = 13.37
$SPEED($A8,16f) = 100.0
$TYPE($A8,16i) = 1
$CARX($A1,6f) = 1408.62
$CARY($A1,6f) = -1361.82
$CARZ($A1,6f) = 8.55
$ANGLE($A1,6f) = 0.0
$CARX($A2,6f) = 1413.19
$CARY($A2,6f) = -1363.15
$CARZ($A2,6f) = 8.55
$ANGLE($A2,6f) = 0.0
$MODEL($A1,6i) = 422
$MODEL($A2,6i) = 422
054C: use_GXT_table 'RACETOR'
$PAR = 1
:RACEMS2_986
Model.Load($MODEL($PAR,6i))
$PAR += 1
001C: $PAR > $A // (int)
else_jump @RACEMS2_986
wait 1000
:RACEMS2_1022
wait 0
$PAR = 1
:RACEMS2_1033
if
Model.Available($MODEL($PAR,6i))
else_jump @RACEMS2_1022
$PAR += 1
001C: $PAR > $A // (int)
else_jump @RACEMS2_1033
01EB: set_traffic_density_multiplier_to 0.0
0395: clear_area 1 at $CARX($AK,6f) $CARY($AK,6f) $CARZ($AK,6f) radius 300.0
$PAR = 1
:RACEMS2_1119
$CAR($PAR,6i) = Car.Create($MODEL($PAR,6i), $CARX($PAR,6f), $CARY($PAR,6f), $CARZ($PAR,6f))
Car.Angle($CAR($PAR,6i)) = $ANGLE($PAR,6f)
07EE: car $CAR($PAR,6i) enable_tire_marks 1
Car.DoorStatus($CAR($PAR,6i)) = 2
if
803A: not $PAR == $AK // (int)
else_jump @RACEMS2_1243
0560: create_random_actor_in_car $CAR($PAR,6i) handle_as $ACT($PAR,6i)
0423: set_car $CAR($PAR,6i) improved_handling_to 2.0 // (float)
:RACEMS2_1243
$PAR += 1
001C: $PAR > $A // (int)
else_jump @RACEMS2_1119
036A: put_actor $PLAYER_ACTOR in_car $CAR($AK,6i)
0407: store_coords_to $CAMX $CAMY $CAMZ from_car $CAR($AK,6i) with_offset 0.0 -23.7 14.1
Camera.SetPosition($CAMX, $CAMY, $CAMZ, 0.0, 0.0, 0.0)
Camera.OnVehicle($CAR($AK,6i), 15, 1)
Player.CanMove($PLAYER_CHAR) = False
03BF: set_player $PLAYER_CHAR ignored_by_everyone 1
03F4: set_all_cars_apply_damage_rules 0
wait 2500
fade 1 1000
wait 1000
00BA: show_text_styled GXT 'RACES_4' time 1100 style 4 // 3
097A: play_audio_at 0.0 0.0 0.0 event 1056
wait 1100
0407: store_coords_to $CAMX2 $CAMY2 $CAMZ2 from_car $CAR($AK,6i) with_offset 0.0 -13.7 7.1
Camera.SetPosition($CAMX2, $CAMY2, $CAMZ2, 0.0, 0.0, 0.0)
Camera.OnVehicle($CAR($AK,6i), 15, 1)
0460: set_camera_transverse_delay 0.0 time 2000
00BA: show_text_styled GXT 'RACES_5' time 1100 style 4 // 2
097A: play_audio_at 0.0 0.0 0.0 event 1056
wait 1100
0407: store_coords_to $CAMX3 $CAMY3 $CAMZ3 from_car $CAR($AK,6i) with_offset 0.0 -6.7 3.1
Camera.SetPosition($CAMX3, $CAMY3, $CAMZ3, 0.0, 0.0, 0.0)
Camera.OnVehicle($CAR($AK,6i), 15, 1)
0460: set_camera_transverse_delay 0.0 time 2000
00BA: show_text_styled GXT 'RACES_6' time 1100 style 4 // 1
097A: play_audio_at 0.0 0.0 0.0 event 1056
wait 1100
00BA: show_text_styled GXT 'RACES_7' time 800 style 4 // BZEPED!
097A: play_audio_at 0.0 0.0 0.0 event 1057
01BD: 11@ = current_time_in_ms
Player.CanMove($PLAYER_CHAR) = True
03BF: set_player $PLAYER_CHAR ignored_by_everyone 0
03F4: set_all_cars_apply_damage_rules 1
01EB: set_traffic_density_multiplier_to $TRAFF
Camera.SetBehindPlayer
Camera.Restore
$PAR = 1
:RACEMS2_1746
if
803A: not $PAR == $AK // (int)
else_jump @RACEMS2_1853
05D1: AS_actor $ACT($PAR,6i) drive_car -1 to $POINTX($A1,16f) $POINTY($A1,16f) $POINTZ($A1,16f) speed $SPEED($A1,16f) $TYPE($A1,16i) model #NULL 2
$MARK($PAR,6i) = Marker.CreateAboveCar($CAR($PAR,6i))
Marker.SetColor($MARK($PAR,6i), 2)
Marker.SetIconSize($MARK($PAR,6i), 2)
:RACEMS2_1853
$PAR += 1
001C: $PAR > $A // (int)
else_jump @RACEMS2_1746
03C3: set_timer_to $TIME type 0 GXT 'TIMER' // global_variable // BPEMR
$KAR = 1
:RACEMS2_1898
0084: $NAR = $KAR // (int)
$NAR += 1
018A: $CHEKP = create_checkpoint_at $POINTX($KAR,16f) $POINTY($KAR,16f) $POINTZ($KAR,16f)
Marker.SetIconSize($CHEKP, 4)
if
003A: $KAR == $B // (int)
else_jump @RACEMS2_1979
Marker.SetColor($CHEKP, 0)
$A0 = 1
:RACEMS2_1979
06D5: $RCHEKP = create_racing_checkpoint_at $POINTX($KAR,16f) $POINTY($KAR,16f) $POINTZ($KAR,16f) point_to $POINTX($NAR,16f) $POINTY($NAR,16f) $POINTZ($NAR,16f) type $A0 radius 6.0
:RACEMS2_2034
8100: not actor $PLAYER_ACTOR in_sphere $POINTX($KAR,16f) $POINTY($KAR,16f) $POINTZ($KAR,16f) radius 12.0 12.0 12.0 sphere 0 in_car
else_jump @RACEMS2_2365
gosub @RACEMS2_2424
03F0: enable_text_draw 0
0084: $POS2 = $POS // (int)
0340: set_text_draw_RGBA 134 155 184 255
0349: set_text_draw_font 1
033F: set_text_draw_letter_size 1.0 3.6
0341: unknown_text_draw_flag 3
0342: enable_text_draw_centered 1
0343: set_text_draw_linewidth 640.0
060D: draw_text_shadow 2 color_RGBA 0 0 0 180
038E: draw_box_position 570.7242 356.2812 size 68.2072 48.2072 RGBA 0 0 0 255
038E: draw_box_position 570.7242 356.2812 size 66.2072 46.2072 RGBA 134 155 184 255
038E: draw_box_position 570.7242 356.2812 size 62.2072 42.2072 RGBA 0 0 0 255
045A: draw_text_1number 570.0 339.0 GXT 'RACES44' number $POS2 // ~1~N
$POS = 1
if
not Actor.InCar($PLAYER_ACTOR, $CAR($AK,6i))
else_jump @RACEMS2_2318
jump @RACEMS2_3278
:RACEMS2_2318
if or
Car.Wrecked($CAR($AK,6i))
02BF: car $CAR($AK,6i) sunk
else_jump @RACEMS2_2354
jump @RACEMS2_3278
:RACEMS2_2354
wait 0
jump @RACEMS2_2034
:RACEMS2_2365
Marker.Disable($CHEKP)
06D6: disable_racing_checkpoint $RCHEKP
097A: play_audio_at 0.0 0.0 0.0 event 1058
$KAR += 1
001C: $KAR > $B // (int)
else_jump @RACEMS2_1898
jump @RACEMS2_2952
:RACEMS2_2424
$IND = 1
:RACEMS2_2431
if
803A: not $IND == $AK // (int)
else_jump @RACEMS2_2928
if
not $CAR($IND,6i) == -1
else_jump @RACEMS2_2928
if
801C: not $STAGE($IND,6i) > $B // (int)
else_jump @RACEMS2_2845
0084: $TAR = $STAGE($IND,6i) // (int)
if
0100: actor $ACT($IND,6i) in_sphere $POINTX($TAR,16f) $POINTY($TAR,16f) $POINTZ($TAR,16f) radius 12.0 12.0 12.0 sphere 0 in_car
else_jump @RACEMS2_2666
$STAGE($IND,6i) += 1
if
801C: not $STAGE($IND,6i) > $B // (int)
else_jump @RACEMS2_2666
0084: $TAR = $STAGE($IND,6i) // (int)
05D1: AS_actor $ACT($IND,6i) drive_car $CAR($IND,6i) to $POINTX($TAR,16f) $POINTY($TAR,16f) $POINTZ($TAR,16f) speed $SPEED($TAR,16f) $TYPE($TAR,16i) model #NULL 2
:RACEMS2_2666
if
003A: $KAR == $STAGE($IND,6i) // (int)
else_jump @RACEMS2_2808
Car.StorePos($CAR($AK,6i), $XPOS, $YPOS, $ZPOS)
0509: $DIST = distance_between_XY $XPOS $YPOS and_XY $POINTX($KAR,16f) $POINTY($KAR,16f)
Car.StorePos($CAR($IND,6i), $XPOS2, $YPOS2, $ZPOS2)
0509: $DIST2 = distance_between_XY $XPOS2 $YPOS2 and_XY $POINTX($KAR,16f) $POINTY($KAR,16f)
if
0024: $DIST > $DIST2 // (float)
else_jump @RACEMS2_2801
$POS += 1
:RACEMS2_2801
jump @RACEMS2_2838
:RACEMS2_2808
if
001C: $STAGE($IND,6i) > $KAR // (int)
else_jump @RACEMS2_2838
$POS += 1
:RACEMS2_2838
jump @RACEMS2_2852
:RACEMS2_2845
$POS += 1
:RACEMS2_2852
if or
Car.Wrecked($CAR($IND,6i))
02BF: car $CAR($IND,6i) sunk
not Actor.Driving($ACT($IND,6i))
else_jump @RACEMS2_2928
Actor.RemoveReferences($ACT($IND,6i))
$CAR($IND,6i) = -1
Car.RemoveReferences($CAR($IND,6i))
Marker.Disable($MARK($IND,6i))
:RACEMS2_2928
$IND += 1
001C: $IND > $A // (int)
else_jump @RACEMS2_2431
return
:RACEMS2_2952
gosub @RACEMS2_3311
if
$POS2 == 1
else_jump @RACEMS2_3135
00BA: show_text_styled GXT 'RACES18' time 3000 style 1 // ZO6EDNTELJ!
wait 3000
01E3: show_text_1number_styled GXT 'M_PASS' number $MONEY time 4000 style 1 // MNCCNR BSZOLHEHA!~n~~w~$~1~
Player.Money($PLAYER_CHAR) += $MONEY
01BD: 12@ = current_time_in_ms
0085: 13@ = 12@ // (int)
0062: 13@ -= 11@ // (int)
13@ /= 1000.0
0085: 33@ = 13@ // (int)
33@ /= 60
0085: 33@ = 33@ // (int)
33@ *= 60
0085: 33@ = 13@ // (int)
0062: 33@ -= 33@ // (int)
0394: play_music 1
02FD: show_text_2numbers_lowpriority GXT 'TIME' numbers 32@ 33@ time 8000 flag 1 // ~1~:~1~
jump @RACEMS2_3253
:RACEMS2_3135
01E3: show_text_1number_styled GXT 'RACES_8' number 200 time 5000 style 1 // ZPONFPABWNN!
01BD: 12@ = current_time_in_ms
0085: 13@ = 12@ // (int)
0062: 13@ -= 11@ // (int)
13@ /= 1000.0
0085: 33@ = 13@ // (int)
33@ /= 60
0085: 33@ = 32@ // (int)
33@ *= 60
0085: 33@ = 13@ // (int)
0062: 33@ -= 33@ // (int)
02FD: show_text_2numbers_lowpriority GXT 'TIME' numbers 32@ 33@ time 8000 flag 1 // ~1~:~1~
:RACEMS2_3253
0318: set_latest_mission_passed 'RACES_0' // FOHKN
Player.ClearWantedLevel($PLAYER_CHAR)
gosub @RACEMS2_38
return
:RACEMS2_3278
gosub @RACEMS2_3311
00BA: show_text_styled GXT 'RACES_8' time 5000 style 1 // ZPONFPABWNN!
create_thread @NONAME_2
return
:RACEMS2_3311
01EB: set_traffic_density_multiplier_to 1.0
Car.DoorStatus($CAR($AK,6i)) = 0
$PAR = 1
:RACEMS2_3336
if
not $CAR($PAR,6i) == -1
else_jump @RACEMS2_3432
Car.SetImmunities($CAR($PAR,6i), 0, 0, 0, 0, 0)
Model.Destroy($MODEL($PAR,6i))
Car.RemoveReferences($CAR($PAR,6i))
if
803A: not $PAR == $AK // (int)
else_jump @RACEMS2_3432
Marker.Disable($MARK($PAR,6i))
Actor.RemoveReferences($ACT($PAR,6i))
:RACEMS2_3432
$PAR += 1
001C: $PAR > $A // (int)
else_jump @RACEMS2_3336
Marker.Disable($CHEKP)
06D6: disable_racing_checkpoint $RCHEKP
03F0: enable_text_draw 0
014F: stop_timer $TIME
01B7: release_weather
return
:RACEMS2_3477
$ONMISSION = 0
mission_cleanup
end_thread
И ещё как зделать так чтобы миссия больше не повторялась, и нельзя было приступить к другой гонке, не пройдя эту? За ранее благодарен!
Скрипт рабочий, так что можите поставить и проверить все баги)
Почему то когда ставлю новые автомобили в gta san andreas сразу перестает запускаться а точнее виснет на загрузке, и у меня вопрос, (я новечок в San andreas и мало что знаю) может надо снять защиту, как к примеру в gta 4 надо ставить аси лоадер и файл фикс, или просто автомобили которые я поставил кривые???
08-03 wrote:
Эти два файла main.scm и script.img просто пройденные миссии.
Ан нет! Миссии здесь полностью убраны, а игра выглядит, как-будто она полностью пройдена, тобищь всё открыто и доступно. Можешь ради интереса в исходном коде поглядеть:
объявлены только мини-миссии и мини-игры. Всего 33 штуки. Для сравнения, в оригинальном MAIN`е их, если не ошибаюсь, аж 134. Проблем с DYOM`ом, а также из-за изменения карты по сути возникнуть не должно.
В справке Sanny Builder`а (Документация по SCM - GTA SA - Объекты).
А у меня такой вопрос:читая мануал, там пишут, что например "загрузка моделей актёров происхдит вот этой командой".А как эти команды вводить???Знаю вроде в опкодник залазаешь и там ишешь.Ну нашел опкод, дальше что с ним делать????????????/?
Выделяешь нужный опкод левой кнопкой мыши, затем нажимаешь правую, выбираешь "Копировать", вставляешь в свой скрипт, меняешь различные параметры и имена переменных на те, которые нужны тебе, и всё! Согласись, абсолютно ничего сложного.
Подскажите плиз если нетрудно, как с помощью CLEO скрипта можно создать новую парикмахерскую, в Ganton? Заблокированное здание я уже подметил.
На днях закончил создание своего второго спидометра. Спидометр получился очень красивым и многофункциональным. Добавлен мод ограниченного топлива, индикатор температуры охлаждающей жидкости, индикатор нитро, а также появилась возможность изменить размер панелей по своему вкусу.

CraZZZy Speedometer v.2
Просьба оценить.
В самое ближайшее время будет добавлена новая версия моего первого спидометра.
Хм...Мне понравилось.Для меня лучший спидометр из всех что я видел.Честно.А то есть которые маленькие, слишком большие, функций мало.А этот как раз хороший.
А что за месность на скрине?
Ну да, только когда название раёна выводица, о5 некрасиво, ага ;-)
Ну название районов тоже некрасивые , особенно в Las-Venturas
А что за месность на скрине?
Ты уже пятый человек, задавший мне такой вопрос. Мод называется Криминальная Россия. Скачать можно отсюда - gta.criminalrussia.ru/
08-03 Wrote:
я кстати свой мод такого типа создаю!
И как идёт процесс? Чего интересного уже сделал?
Здравствуйте я в скриптинге и модинге новичок и у меня такой вопрос в моде я ниписал ид перса координаты появления но когда захожу на сервер то изображения персонажа не видно и выбирать приходиться вслепую подскажи как сделать чтоб персонаж отображался при выборе?))
Помогите пожалуйста.Я написал скрипт в sany builder,теперь хочу его залить,но как его сделать в формате CS?
Довольно простой вопрос. Просто ставим
{$CLEO .cs} перед //-------------MAIN---------------, нажимаем "F6", к названию файла дописываем .cs, в типе файла ставим "*.* | All files" и всё.
Сильно разочаровался в администрации PlayGround.ru. Сегодня исполнился ровно месяц с того момента когда я добавил CraZZZy Speedometer v.1.2, а на сайте до сих пор он так и появился. Несколько раз писал модератору, тот обещал в самое ближайшее время его добавить, но так обещания своего и не выполнил. Так что ссылку даю с gta.com.ua.
CraZZZy Speedometer v.1.2 + Ограниченный бензин
![]()
Ссылка: gta.com.ua/file_sa_details.phtml?id=940
CraZZZy-GameRRR Wrote:
И как идёт процесс? Чего интересного уже сделал?
спасибо всё ОК!много изменений:банды переделал,скины новые,полностью автопарк переделал,здания создаю тоже и т.д.Я хочу потом в интернет поместить.Только кроме этого скриптовые моды хочу добавить.
Слушай есть тут дело,поскольку ты скриптер,то можешь помочь?
Не замечал ли ты в игре,когда любой пед бьёт по банде,то гангстеры удирают от него.Если другой гангстер ударит по вражеской банде,то они его атакуют.
Можно это исправить?
Привет люди помомоги пожалуйста установить cleo никак немогу =(((
Какими командами можно скрыть актёра?Ну что-бы было так,когда снимает камера,актёр есть,а после когда ты играешь его нет.
034F: destroy_actor_with_fade 2@
01C2: remove_references_to_actor 2@
009B: destroy_actor 2@
Я загружал в 3Ds Max .ifp и так смотрел. А спецпрог для этого нет.
PS. Здесь рассматриваются те три файла.
Кто-нибудь может мне помочь и подробно рассказать, как вводить в игры утилиты, патчи, моды и дополнения?
Подскажите, что я делаю не правильно.
Я через SB захожу в main.scm и в самом конце пишу:
create_thread @Myplanes
:Myplanes
wait 0
014B: $Myplanes1 = init_parked_car_generator #AT400 color -1 -1 1 alarm 0 door_lock 0 0 10000 at -1266.0 -438.0 35.349 angle 0.0
014C: set_parked_car_generator $Myplanes1 cars_to_generate_to 101
014B: $Myplanes2 = init_parked_car_generator #BAGGAGE color -1 -1 1 alarm 0 door_lock 0 0 1 at -1286.0 -432.0 35.676 angle 90.0
014C: set_parked_car_generator $Myplanes2 cars_to_generate_to 101
014B: $Myplanes3 = init_parked_car_generator #TUGSTAIR color -1 -1 1 alarm 0 door_lock 0 0 1 at -1282.0 -432.0 35.676 angle 90.0
014C: set_parked_car_generator $Myplanes3 cars_to_generate_to 101
014B: $Myplanes4 = init_parked_car_generator #ANDROM color -1 -1 1 alarm 0 door_lock 0 0 10000 at -1556.0 -160.0 36.419 angle 310.0
014C: set_parked_car_generator $Myplanes4 cars_to_generate_to 101
end_thread
После, компилирую (F6). Но когда сохранённая игра загружается, то выдаётся ошибка о невозможности прочтения памяти
Чуваки! Можно сделать штоб карл с обычным пистолетом назад мог отходить, как например с SMG. А то комп может отходить назад и с узи, и с пистолетом и с TEC9 тоже. Это какая-то несправедливость прям. Говорю сразу!- ФАЙЛ WEAPON.DAT не помогает! Я всё в этом файле перерыл и ни чё не смог сделать! Мне кажется это можно исправить через скрипт, но я не знаю как. Сам только начинающий скриптер. Кто чё посоветует изменить или добавить в скрипт?
Я вот сегодня создал маленький скрипт по которому при нажатии определённой клавиши появляется заданная текстура.
:TXD-SAS
wait 0
0390: load_txd_dictionary "SAS"
038F: request_texture "blood" as 1
:TXD_1
wait 0
if
00E1: key_pressed 0 16
jf @TXD_1
038D: create_texture 1 position 560.0 200.0 scale 180.0 180.0 color 255 255 255 alpha 255
end_thread
Вопросы
1.Как сделать чтобы эта текстура отключалась при нажатии НА ЭТУ САМУЮ КЛАВИШУ(в данном случае пробел - надо нарн ставить проверку включена ли она сейчас?)
2.Есть ли проверка на то, получает ли гг урон?
ЗЫ
Если данные вопросы показались вам слишком нубскими, не судите сразу обо мне, я только сегодня начал учится.
ребят а как я могу форму и цвет кроссовок изменить??? Научите валенка))))))
Чуваки! Можно сделать штоб карл с обычным пистолетом назад мог отходить, как например с SMG. А то комп может отходить назад и с узи, и с пистолетом и с TEC9 тоже. Это какая-то несправедливость прям. Говорю сразу!- ФАЙЛ WEAPON.DAT не помогает! Я всё в этом файле перерыл и ни чё не смог сделать! Мне кажется это можно исправить через скрипт, но я не знаю как. Сам только начинающий скриптер. Кто чё посоветует изменить или добавить в скрипт?
Чуваки помогите! Как сделать штоб в скрипте, когда я сижу пассажиром, можно было двигатель включать и выключать, фары, двери. Повторяю не водилой, а ПАССАЖИРОМ! Вот этот скрипт и чё в нём надо изменить. Я пробовал ставить проверку на то что игрок просто в машине , а не за рулём, но но компилятор просто говорит что надо 2 параметра! Какие 2 параметра? Вот текст:
// This file was decompiled using sascm.ini published by Seemann (sannybuilder.com/files/SASCM.rar) on 13.10.2007
{$VERSION 3.1.0027}
{$CLEO .cs}
//-------------MAIN---------------
1@ = 0
0AB3: var 0 = 0
:NONAME_13
wait 250
if and
Actor.InCar($PLAYER_ACTOR)
$ONMISSION == 0
89AE: not actor $PLAYER_ACTOR driving_train
not Actor.DrivingVehicleType($PLAYER_ACTOR, #BMX)
not Actor.DrivingVehicleType($PLAYER_ACTOR, #BIKE)
not Actor.DrivingVehicleType($PLAYER_ACTOR, #MTBIKE)
else_jump @NONAME_259
077E: get_active_interior_to $ACTIVE_INTERIOR
03C0: 0@ = actor $PLAYER_ACTOR car
046C: 26@ = car 0@ driver
if and
$ACTIVE_INTERIOR == 0
003B: 26@ == $PLAYER_ACTOR // (int)
else_jump @NONAME_259
if
0AB0: key_pressed 190
else_jump @NONAME_140
gosub @NONAME_332
:NONAME_140
if
0AB0: key_pressed 76
else_jump @NONAME_162
gosub @NONAME_537
:NONAME_162
if
0AB0: key_pressed 79
else_jump @NONAME_184
gosub @NONAME_602
:NONAME_184
if
0AB0: key_pressed 70
else_jump @NONAME_206
gosub @NONAME_266
:NONAME_206
0A97: 8@ = car 0@ struct
8@ += 1064
0A8D: 9@ = read_memory 8@ size 1 virtual_protect 0
if
9@ == 16
else_jump @NONAME_259
08C0: clear 1@ bit 1
:NONAME_259
jump @NONAME_13
:NONAME_266
if and
84A9: not actor $PLAYER_ACTOR driving_heli
847A: not actor $PLAYER_ACTOR driving_bike
84A7: not actor $PLAYER_ACTOR driving_boat
else_jump @NONAME_312
Car.DoorStatus(0@) = 1
02D4: car 0@ turn_off_engine
0622: AS_actor $PLAYER_ACTOR bail_car 0@
:NONAME_312
wait 250
0AB3: var 0 = 0
1@ = 0
return
:NONAME_332
if
88B4: not test 1@ bit 1
else_jump @NONAME_446
if and
84A9: not actor $PLAYER_ACTOR driving_heli
84A7: not actor $PLAYER_ACTOR driving_boat
847A: not actor $PLAYER_ACTOR driving_bike
else_jump @NONAME_412
051E: 19@ = get_current_radio_station
0918: unknown_car 0@ driver_flag 0
041E: set_radio_station 12
08BA: set 1@ bit 1
0AB3: var 0 = 1
jump @NONAME_530
:NONAME_412
02D4: car 0@ turn_off_engine
051E: 19@ = get_current_radio_station
041E: set_radio_station 12
08BA: set 1@ bit 1
0AB3: var 0 = 1
jump @NONAME_530
:NONAME_446
if and
84A9: not actor $PLAYER_ACTOR driving_heli
84A7: not actor $PLAYER_ACTOR driving_boat
847A: not actor $PLAYER_ACTOR driving_bike
else_jump @NONAME_504
0918: unknown_car 0@ driver_flag 1
041E: set_radio_station 19@
08C0: clear 1@ bit 1
0AB3: var 0 = 0
jump @NONAME_530
:NONAME_504
036A: put_actor $PLAYER_ACTOR in_car 0@
041E: set_radio_station 19@
08C0: clear 1@ bit 1
0AB3: var 0 = 0
:NONAME_530
wait 1000
return
:NONAME_537
if
88B4: not test 1@ bit 2
else_jump @NONAME_581
067F: set_car 0@ lights 2
08BA: set 1@ bit 2
wait 1000
jump @NONAME_600
:NONAME_581
067F: set_car 0@ lights 1
08C0: clear 1@ bit 2
wait 1000
:NONAME_600
return
:NONAME_602
if and
847A: not actor $PLAYER_ACTOR driving_bike
84A7: not actor $PLAYER_ACTOR driving_boat
else_jump @NONAME_761
if
88B4: not test 1@ bit 3
else_jump @NONAME_694
Car.DoorStatus(0@) = 4
054C: use_GXT_table 'WUZI1'
00BC: show_text_highpriority GXT 'WOO1@00' time 3000 flag 1 // ~z~M’ ‡AKP’T’! ’OKA!
08BA: set 1@ bit 3
wait 1000
jump @NONAME_761
:NONAME_694
if and
84A7: not actor $PLAYER_ACTOR driving_boat
847A: not actor $PLAYER_ACTOR driving_bike
else_jump @NONAME_761
Car.DoorStatus(0@) = 1
054C: use_GXT_table 'HEIST3'
00BC: show_text_highpriority GXT 'HE3_DA' time 3000 flag 1 // ~z~€BEPG0; OTKP’TA, XO‡•H!
08C0: clear 1@ bit 3
wait 1000
:NONAME_761
return
Есть ли скрипт что бы остановить игру. Или такой что бы замедлть время в игре, просто поставить др значение, на макс уровень.
Если нет, то что нужно писать? Или создайте плиз такой.
Извини незнаю.
Я хочу спросить.Помнишь,как я давно тебе говорил про то что если ударить по автомобилю водитель сразу не реагирует.Этот скрипт который ты писал, правильный?
//-------------MAIN---------------
0000: NOP
:THREAD_1
wait 0
if
056D: actor $PLAYER_ACTOR defined
jf @THREAD_1
04C4: store_coords_to 11@ 12@ 13@ from_actor $PLAYER_ACTOR with_offset 10.0 10.0 0.0
04C4: store_coords_to 21@ 22@ 23@ from_actor $PLAYER_ACTOR with_offset -10.0 -10.0 0.0
09C0: 0@ = get_random_car_in_area 11@ 12@ 21@ 22@ 1.0 with_actors -1
if
056E: car 0@ defined
jf @THREAD_1
if
jf @THREAD_1
046C: 1@ = car 0@ driver
if
056D: actor 1@ defined
jf @THREAD_1
07A5: AS_actor 1@ attack_actor $PLAYER_ACTOR 99999 ms
wait 5000
jump @THREAD_1
Кстати!В этом скрипте водитель только на игрока сразу среагирует?
if
056E: car 0@ defined
jf @THREAD_1
if
// тут должна быть проверка чего-либо
jf @THREAD_1
046C: 1@ = car 0@ driver
if
056D: actor 1@ defined
jf @THREAD_1
V-13 wrote:
Есть ли скрипт что бы остановить игру.
А почему бы и нет? В скриптинге нет ничего невозможного. (Или почти ничего.) ![]()
{$CLEO .cs}
//-------------MAIN---------------
:Time
015D: set_gamespeed 0.9 //0.9 - скорость игры
end_thread
Надеюсь, с Sanny Builder`ом обращаться умеешь, сам скомпилируешь.
Смотри справку в Sanny Builder`e. Там всё написано. Будут вопросы - задавай на форуме.
Компилировать - преобразовать исходный текст программы в готовый файл (не путать с сохранить).
Декомпилировать - тоже самое, только наоборот.
Опкод - оператор, выполняющиё какое-либо действие, например: запись числа в переменную, вывод текста на экран, создание объекта и т.п. (Список основных опкодов можно найти тут - acteam.clan.su/publ/2-1-0-22.)
В исходном коде в самое начало вставляем эти строки:
{$CLEO .cs}
//-------------MAIN---------------
Внимание! При выборе "Сохранить файл" сохраняется только исходный код, а не сам скрипт.
Для сохранения самого скрипта выбираем "Компилировать" ("F6"). Сохраняем готовый скрипт в папку "GTA San Andreas/CLEO", установив в типе файла "All files" и дописав расширение ".cs" к названию файла.
CraZZZy-GameRRR
Я пока дошёл только до того как припарковывать машины...
К этому надо ещё что-то писать? И как это дать опр кнопке. Что бы при нажатии скорость игры менялась.
{$CLEO .cs}
//-------------MAIN---------------
:Time
015D: set_gamespeed 0.9 //0.9 - скорость игры
end_thread
Reply to V-13
Вот полный исходный код:
{$CLEO .cs}
//-------------MAIN---------------
0A95: enable_thread_saving
0@ = 1.0
:Time_1
wait 0
if
0AB0: key_pressed 0x21
jf @Time_2
if
not 0@ = 10.0
jf @Time_4
0@ += 0.1
jump @Time_3
:Time_2
if
0AB0: key_pressed 0x22
jf @Time_1
if
not 0@ = 0.0
jf @Time_4
0@ -= 0.1
:Time_3
015D: set_gamespeed 0@
:Time_4
0087: 1@ = 0@
1@ *= 10.0
0092: 1@ = float 1@ to_integer
00BE: text_clear_all
01E4: show_text_1number_lowpriority GXT 'NUMBER' number 1@ time 1000 flag 1
wait 300
jump @Time_1
Извини, GTA SA у меня в данный момент не установлена, протестировать скрипт не было возможности, но, вроде, дожен работать.
Управление:
"Page Up" - увеличить скорость игры
"Page Down" - уменьшить
При изменении скорости, её значение выводится на экран. Кроме того, скорость сохраняется при сохранении игры.
CraZZZy-GameRRR! Можешь помочь мне со скриптом?
Я хочу тачку припарковать:
// This file was decompiled using sascm.ini published by Seemann (sannybuilder.com/files/SASCM.rar) on 13.10.2007
{$VERSION 3.1.0027}
{$CLEO .cs}
//-------------MAIN---------------
create_thread @MyCars
:MyCars
wait 0
014B: $Car1 = init_parked_car_generator #ZB 2 1 0 alarm 0 door_lock 0 0 40000 at 2650.87 -2193.2 13.4703 angle 120.0
014C: set_parked_car_generator $Car cars_to_generate_to 101
end_thread
create_thread @MyCars тут ненужен. И внимательней: в 014B ты пишешь $Car1, а в 014С почему-то $Car. И что за модель #ZB?
Не рекомендую использовать глобальные переменные - лучше пользуйся локальными.
if(classid == 0){
SetPlayerPos(playerid, 1538.9819,-1353.5656,329.4639,65.8240);
SetPlayerCameraPos(playerid, 1538.9819,-1353.5656,329.4639,65.8240);
SetPlayerCameraLookAt(playerid, 1538.9819,-1353.5656,329.4639,65.8240);
gTeam[playerid] = TEAM_1;
GameTextForPlayer(playerid, "FBI", 1000, 3);}
(421) : warning 202: number of arguments does not match definition
(422) : warning 202: number of arguments does not match definition
(423) : warning 202: number of arguments does not match definition
блин че он хочет???=((
кто может сделат подобие мотоцикла по фоткам , незнаю че за марка и модель нашел на сайте 3d моделей хочется такую с полным функционалом , а сам пока неумаю , учусь тока
Кто хочет поиграть в НОВЫЙ паркур мод - gta-parkour.uc*z.ru/ (вместо * поставьте o)
Как сделать что бы банды нападали на обычного педа,если тот атакует их?
пари заходите поиграем там прикольно на прокачку 194.146.228.42:7777
[SCTD]FROG, "number of arguments does not match definition" - "количество аргументов не должно быть бесконечным". Думай где у тебя аргументы кишмя кишит.
Здравствуйте.Я хочу сделать простенькую миссию для своего мода.Т.к в скриптинге я почти ничего не понимаю,не могли бы вы мне помочь?Я хочу что бы при старте игры СJ появился на корабле(-2392.7439 1529.0458 31.8594),затем проследовал к чекпоинту.Помогите пожалуйста с потоком(ну а чекпоинт я как-нибудь сам поставлю)
Для людей, которые хотят создать свою миссию, но совершенно не разбираются в скриптинге DYOM самое оно.
Кто-нибудь может сгенерировать припаркованную машину добавленной модели? Я пытался создать cleo-скрипт, но почему-то добавленные модели на месте не появляются, хотя если в том же скрипте поставить стандартную модель (ID 400-611), то проблем нет. Please help!
Кто-нибудь может сгенерировать припаркованную машину добавленной модели? Я пытался создать cleo-скрипт, но почему-то добавленные модели на месте не появляются, хотя если в том же скрипте поставить стандартную модель (ID 400-611), то проблем нет. Please help!
CraZZZy-GameRRR! Так как зделать что бы банды нападали на обычного педа,если тот атакует их?
:Noname
wait 0
if and
06FF: any_ped_near_actor $PLAYER_ACTOR in_range 20.0 // радиус
Player.Defined($PLAYER_CHAR)
else_jump @Noname
0AB5: store_actor $PLAYER_ACTOR closest_vehicle_to -1 closest_ped_to 1@
if
not 1@ == -1
else_jump @Noname
Спасибо, Ильдар, тольо мне не ближайший, а рандомный пед нужен.
Тогда другой вопрос. Ты в памяти GTA SA разбираешься? Не знаешь, как вычислить адрес, где расположен хэндл какого-либо педа, а то я читал на gtamodding, но так и не понял.
В памяти GTA SA не разбираюсь. По таким серьёзным вопросам лучше обращаться на форум SB.
О ужас! Форум SB не работает (впрочем, так же как и сам сайт). Впервые такое вижу. Надеюсь, это временно.
Народ! у меня на миссиях нет маркеров и иконок! они пропадат если я пройду 4-5 миссий! что делать?? Решил исправить! поиграть в свой сохранение через читсую Саню! но не выходит! Подскажите плис!
muskatooo wrote:
А как выкладывать свой файл на сайт?!
www.playground.ru/files/add/
вот короче такая тема: конвертирую педов из разных игр, в самом конце начинаю текстурить,но не знаю как затекстурить отдельные части (руки, голову, одежду и т.д.) всё по отдельности не получается, пед красится весь целиком, ЧТО ДЕЛАТЬ и как?
и вот такая ещё: бывает так, что когда вынимаю педа из игры, сую его в 3д макс, он в 3д максе отображается затекстуренным, но самих файлов с картинками нигде нет, КАК ИЗ 3Д МАКСА ВЫНУТЬ ЭТИ САМЫЕ ТЕКСТУРЫ, ЧТОБЫ В ДАЛЬНЕЙШЕМ УЖЕ ГОТОВЫЕ КАРТИНКИ СУНУТЬ В TXD WORKSHOP?
люди помогите новичку... плизз
нужен main без миссий (чистый), но с возможностями 100% прохождения и оставлеными парикмахерскими, магазинами, тюнингсалонами и т.д
или напишите скрипт у самого не получается =(
Люди, извените что не по теме, но скажите как в 3Ds Max 2010 из ped.ifp вытащить именно одну анимацию??? Скажите плиз! Спасибо!
чтобы покатать cj'я в качестве пассажира, следует создать такой поток:
:PASSEHG
03A4: name_thread 'PASSEHG'
:PASSEHG_11
060A: unknown_create_entity 0 $12249
01C3: remove_references_to_car $11248
01C2: remove_references_to_actor $12246
01C2: remove_references_to_actor $12247
01C2: remove_references_to_actor $12248
:PASSEHG_38
0001: wait 50 ms
00D6: if and
810F: not player $2 wanted_level > 3
8449: not actor $3 in_a_car
00E1: key_pressed 0 11
0038: $409 == 0 // integer values
004D: jump_if_false @PASSEHG_38
04C4: create_coordinate $11247 $11246 $11245 from_actor $3 offset 3.75 3.75 0.0
04C4: create_coordinate $11244 $11243 $11245 from_actor $3 offset -3.7499 -3.7499 0.0
053E: $11248 = get_random_car_with_actors -1 in_area $11247 $11246 $11244 $11243
00D6: if
056E: carcass_of_car $11248 valid
004D: jump_if_false @PASSEHG_38
046C: $12246 = car $11248 driver
00D6: if
056D: carcass_of_actor $12246 valid
004D: jump_if_false @PASSEHG_11
00D6: if
056C: actor $12246 driving_police_vehicle
004D: jump_if_false @PASSEHG_245
01C0: $12244 = player $2 wanted_level
0008: $12244 += 1 // integer values
010D: set_player $2 wanted_level_to $12244
0001: wait 50 ms
0002: jump @PASSEHG_11
:PASSEHG_245
00D6: if and
8137: not car $11248 id == #BMX
8137: not car $11248 id == #BIKE
8137: not car $11248 id == #MTBIKE
84C8: not actor $3 driving_flying_vehicle
84A9: not actor $3 driving_helicopter
84A7: not actor $3 driving_boat
89AE: not actor $3 driving_train
004D: jump_if_false @PASSEHG_11
00A9: set_car $11248 to_normal_driver
060B: unknown_actor_use_entity $12246 $12249
0224: set_car $11248 health_to 1750
00AE: unknown_set_car $11248 to_ignore_traffic_lights 2
0004: $12250 = 0 // integer values
00D6: if
8431: not car $11248 car_passenger_seat_free 0
004D: jump_if_false @PASSEHG_493
00D6: if
0431: car $11248 car_passenger_seat_free 1
004D: jump_if_false @PASSEHG_418
0004: $12250 = 1 // integer values
0519: lock_vehicle $11248 in_current_position 1
0002: jump @PASSEHG_468
:PASSEHG_418
00D6: if
0431: car $11248 car_passenger_seat_free 2
004D: jump_if_false @PASSEHG_11
0004: $12250 = 2 // integer values
0519: lock_vehicle $11248 in_current_position 1
0432: $12247 = get_actor_handle_from_car $11248 passenger 1
060B: unknown_actor_use_entity $12247 $12249
:PASSEHG_468
0432: $12248 = get_actor_handle_from_car $11248 passenger 0
060B: unknown_actor_use_entity $12248 $12249
0002: jump @PASSEHG_500
:PASSEHG_493
0519: lock_vehicle $11248 in_current_position 1
:PASSEHG_500
05CA: AS_actor $3 enter_car $11248 passenger_seat $12250 -1 ms
0001: wait 50 ms
00D6: if
00E1: key_pressed 0 10
004D: jump_if_false @PASSEHG_592
:PASSEHG_534
0633: AS_actor $3 exit_vehicle
0519: lock_vehicle $11248 in_current_position 0
05D2: unknown_action_sequence $12246 $11248 20.0 2
0001: wait 100 ms
05C0: AS_actor $3 look_at_car $11248 5000 ms
06C9: remove_actor $12246 from_group
0001: wait 100 ms
0002: jump @PASSEHG_11
:PASSEHG_592
00D6: if or
0118: actor $3 dead
0741: (unknown) $3
004D: jump_if_false @PASSEHG_650
06C9: remove_actor $12246 from_group
05D2: unknown_action_sequence $12246 $11248 20.0 0
0002: jump @PASSEHG_11
:PASSEHG_650
00D6: if
01C1: car $11248 stopped
004D: jump_if_false @PASSEHG_534
00D6: if and
8741: not (unknown) $3
0448: actor $3 in_car $11248
004D: jump_if_false @PASSEHG_500
0519: lock_vehicle $11248 in_current_position 0
05D2: unknown_action_sequence $12246 $11248 20.0 2
:PASSEHG_736
0001: wait 50 ms
00D6: if and
8741: not (unknown) $3
0448: actor $3 in_car $11248
004D: jump_if_false @PASSEHG_11
00D6: if
00E1: key_pressed 0 10
004D: jump_if_false @PASSEHG_954
00D6: if
847A: not actor $3 driving_a_motorbike
004D: jump_if_false @PASSEHG_954
00D6: if
0038: $12250 == 0 // integer values
004D: jump_if_false @PASSEHG_954
:PASSEHG_815
0001: wait 50 ms
00D6: if and
8741: not (unknown) $3
0448: actor $12246 in_car $11248
004D: jump_if_false @PASSEHG_870
0622: AS_unknown_remove_actor $12246 from_car $11248
00D6: if
8448: not actor $12246 in_car $11248
004D: jump_if_false @PASSEHG_815
:PASSEHG_870
0676: AS_actor $3 in_car $11248 move_from_passengerseat_to_driverseat
0001: wait 50 ms
00D6: if
00DF: actor $3 driving
004D: jump_if_false @PASSEHG_870
05CB: AS_actor $3 enter_car_as_driver $11248 -1 ms
05C0: AS_actor $12246 look_at_car $11248 -1 ms
05D2: unknown_action_sequence $12246 $11248 20.0 2
0001: wait 100 ms
0002: jump @PASSEHG_11
:PASSEHG_954
00D6: if
00E1: key_pressed 0 15
004D: jump_if_false @PASSEHG_736
:PASSEHG_971
0622: AS_unknown_remove_actor $3 from_car $11248
0001: wait 50 ms
00D6: if
8448: not actor $3 in_car $11248
004D: jump_if_false @PASSEHG_971
0633: AS_actor $3 exit_vehicle
0519: lock_vehicle $11248 in_current_position 0
05D2: unknown_action_sequence $12246 $11248 17.5 2
0001: wait 100 ms
05C0: AS_actor $3 look_at_car $11248 7500 ms
06C9: remove_actor $12246 from_group
0001: wait 100 ms
0002: jump @PASSEHG_11
end_thread
поясняю: $2 и $3 - сам cj как написано в начале main'a; $11248 - сама тачка; $12246, $12247 и $12248 - сам водила и потенциальные попутчики cj'я; если сядем в коповозку - дадут звезду на память; так что тачку выбирай с умом - о всяких летающих биглях и великах забудь.
как использовать: подходи к тачке с хотя бы одним свободным местом, жми "Беседа - да" (по умолчанию Y). Чувак залезет в тачку. Шоб вылезти - Entеr, выкинуть водилу - "Беседа - нет" (обычно N).
насчёт курить - тоже просто. также создаёш поток, назначаеш определённой анимации клавиши - и вперёд. клавы и анимации можно поизучать по оригинальному скрипту и учебникам. сигару оружием сделать? думаю лишнее. и так видно же)) невозможного ничего нет.
CraZZZy-GameRRR! Помоги пожалуйсто как оружие спецназу изменить?!
Написал скрипт:
// This file was decompiled using sascm.ini published by Seemann (sannybuilder.com/files/SASCM.rar) on 13.10.2007
{$VERSION 3.1.0027}
{$CLEO .cs}
//-------------MAIN---------------
0000: NOP
:NONAME_2
Model.Load(#SWAT)
01B9: set_actor #SWAT armed_weapon_to 32
jump @NONAME_2
08-03 это у тебя так сказать эээ... ну типо.. даже в голову не лезет.. ты када скриптингом занялся???
08-03 ясно, если желаешь, пиши мне в асю: 6653594, постараюсь за короткий срок тебя чему нибудь научить
Напишите плз формочку для CLEO скрипта чтоб тачку поставить где-нибудь. Чтоб мне поставить только координаты ну и собственно тачку, ато не разберусь как клео начать.
Victor CC вот держи:
{$CLEO .cs}
thread 'tachka'
0A95: enable_thread_saving
014B: 0@ = init_parked_car_generator #Model 8 8 0 alarm 0 door_lock 0 0 40000 at X Y Z angle 180.0
014C: set_parked_car_generator 0@ cars_to_generate_to 101
0A93: end_custom_thread
Skripter, мне нужно просто вставить название тачки и координаты (после X Y Z?) и компилировать и все?
Обьясняю:
первая команда:
1. 0@ - имя тр. средства, не должно повторяться.
2. #Model - показывает, машина какой модели должна быть припаркована
3. Цифры 8 8 обозначают цвет машины
4. Цифра 0 после слова "alarm" показывает установленность сигнализации в машине, это проценты.
5. Цифра 0 после слова "door_lock" показывает вероятность(в процентах) закрытых дверей.
6. Цифра 0 после слова "lock 0" указывает будут ли менты реагировать на то, что ты угнал машину,если 0,то будут,а если 1, то им это будет по-барабану.
7. Цифра 40000 указывает цену машины
8. X Y Z - понятно, что это координаты машины(ставить координаты вместо этих букв)
9. Цифра 180.0 указывает на угол поворота машины.
следующая команда:
1. 0@ - имя тр. средства, которое мы только-что создали.
2. 101 - частота появления машины, если поставим 0, то вообще никогда тачку не увидим, а вот если 101, то транспортное средство будет появлятся всегда
Все остальное не трогай(кроме thread 'tachka' конечно), иначе потом будешь думать почему у тебя ошибка или несколько машин друг на друге...
{$CLEO .cs}
thread 'Tank'
0A95: enable_thread_saving
014B: 0@ = init_parked_car_generator #SWATVAN 8 8 0 alarm 0 door_lock 0 0 40000 at коордX коордY коордZ angle 180.0
014C: set_parked_car_generator 0@ cars_to_generate_to 101
0A93: end_custom_thread
Вот так правильно?
p.s. вместо коордX Y Z поставлю координаты только щас скачаю клео скрипт...
angle всегда 180.0?
{$CLEO .cs}
thread 'Tank'
0A95: enable_thread_saving
014B: 0@ = init_parked_car_generator #SWATVAN 8 8 0 alarm 0 door_lock 0 0 40000 at 1546,343 -1653,204 13,26828 angle -1,6015
014C: set_parked_car_generator 0@ cars_to_generate_to 101
0A93: end_custom_thread
вот так?
Skripter
Хреновый ты скриптер, если не знаешь, что дробные числа надо писать с точкой.
ILdar07 между прочим это он координаты вставил из коорд менеджера горячими клавишами, так что рускай сам поучится, иначе не будет обращать внимания на них
Victor CC! На держи!Вместо запятых точки должны быть!
// This file was decompiled using sascm.ini published by Seemann (sannybuilder.com/files/SASCM.rar) on 13.10.2007
{$VERSION 3.1.0027}
{$CLEO .cs}
//-------------MAIN---------------
thread 'CAR'
0A95: enable_thread_saving
014B: 0@ = init_parked_car_generator #SWATVAN color 8 8 0 alarm 0 door_lock 0 0 40000 at 1546.343 -1653,204 13.26828 angle 180.0
014C: set_parked_car_generator 0@ cars_to_generate_to 101
0A93: end_custom_thread
08-03, ты там не во всех координатах точку вместо запуятой поставил! Так и надо?
\\\This file was decompiled... - это тоже надо?
// This file was decompiled using sascm.ini published by Seemann (sannybuilder.com/files/SASCM.rar) on 13.10.2007
{$VERSION 3.1.0027}
Все это не надо, эта инфа твоего "SASCM.INI" появляется тока при декомпиляции, компилироваь можно без этого, главное {$CLEO .cs} - где ".cs" - не контер-страйк, а расширение, которое получит скрипт после компиляции, все что идет за // игнорируется компилятором
Извини торопился!Сделал ошибку.Вместо запятых ставь точки!Всё что написал всё и записывай!
Skripter! Я незнаю что это! Меня это никогда не интересовало!
Haker-47! Добавить авто можно,но тогда тебе сюда:forums.playground.ru/gta_san_andreas/modding/178..
Сан Саныч, качай скрипт DUMPSCREEN или могу скинуть. А лучше вообще FRAPS установить.
San SanЫч 7, если тебе надо зделать скрин без радара и HUD'а, то в настройках выруби и юзай клавишу Print Screen, потом вставляй в паинт или фотошоп клавишами Ctrl+V
Skripter! Помоги пожалуйсто мне зделать эффект,а то у меня не получается.
// This file was decompiled using sascm.ini published by Seemann (sannybuilder.com/files/SASCM.rar) on 13.10.2007
{$VERSION 3.1.0027}
{$CLEO .cs}
//-------------MAIN---------------
0000: NOP
thread 'effect'
wait 0
066D: $Atch = attach_particle "WS_factorysmoke" to_object $powerstat1_lae2 offset 2660.4 -1449.65 79.3406
end_thread
Ещё один вопрос.Как удалить старые задания в игре кроме покупки еды,вора и гангстеров?
Чуваки! Помогите мне - кто знает где в Main-не прописаны миссии вора, жрачка, мисии типа BloodRing, оружейки и т.п.? Позарез надо - если кто знает, то напишите сточки или что-нибудь в этом роде. Да и ещё вопрос - почему у меня внешний скрипт парашута не пашет? Или его надо прописать к Сиджею в начале майна?
08-03 - надо прописать начальную точку появления игрока в начале мейна и просто тупо удалить все миссии. Да и когда миссии удалишь, то удали все строки после DEFINE MISSIONS , а так же DEFINE MISSIONS 0 сделай - это будет обозначать, что миссий в игре нет. Да и не забудь где-нибудь прописать зоны игры, так как зоны изначально лежат в нулевой миссии. Просто тупо создай поток(постоянный) и когда будешь миссии удалять коперни всё из нулевой в свой поток(всё что касается территорий). Вроде так самое основное объяснил.
в интернете. Введи в яндексе или в гугле.
Подскажите плз как в Сани Билдер вообще начать создание клео скрипта! Я знаю только как менй запускать.
08-03, я так понимаю ты собрался создавать эффект в тех координатах, то тебе надо другая команда, кароче вот так:
{$CLEO .cs}
//-------------MAIN---------------
0000: NOP
thread 'effect'
wait 0
064B: $Atch = create_particle "fire_large" at 2660.4 -1449.65 79.3406 1 // Создаем эффект(я сменил эффект на другой, т.к. "WS_factorysmoke" чего то не работает)
064C: make_particle $Atch visible // Делаем этот эффект видимым
0A93: end_custom_thread // В клео скриптах завершай всегда поток этим опкодом
в общем перемещайся в эти координаты и там увидишь огонь
P.S. что бы удалить все старые миссии, ты лучше создай новый маин и всовывай в него все, что нужно кроме самих миссий и прочей ереси, иначе у тебя там получится непонятно что, ну а если хочешь, могу тебе уже готовый выложить маин без миссий
Victor CC,
начало любого клео скрипта:
{$CLEO .cs}
// здесь сам скрипт, т.е. метки, название потока если хочешь и все остальное
потом тупо компилируй в папку GTA San Andreas\Cleo\ и запускай игру
Подскажите плз, что такое.
Ну вот я написал скрипт
{$CLEO .cs}
(здесь пропустил строчку)
//-------------MAIN---------------
thread 'TANK'
0A95: enable_thread_saving
014B: 0@ = init_parked_car_generator #SWATVAN color 8 8 0 alarm 0 door_lock 0 0 40000 at 1546.343 -1653.204 13.26828 angle 180.0
014C: set_parked_car_generator 0@ cars_to_generate_to 101
0A93: end_custom_thread
Потом компилировал в папку GTA SA\CLEO. В папке появились файлы TANK.txt и TANK.cs. Но в игре скрипт не работает! И в файле TANK.txt не написано "THIS FILE COMPILED USING SASCM.INI"
все там работает, и пропускать строчки дело не обязательное, это ты сам пиши как тебе нравится, как я уже говорил все что идет после // игнорируется компилятором, отсюда следует что //-------------MAIN--------------- тоже не надо. Если машина не появляется, попробуй отойти подальше, потом вернись, просто не всегда есть шанс что транспорт будет тебя ждать или попробуй убрать опкод 0A95: enable_thread_saving или удали папку cleo_saves
{$CLEO .cs}
//-------------MAIN---------------
create_thread @NONAME_8
:NONAME_8
wait 0
014B: $X_ANGEL_PINE_MOTEL = init_parked_car_generator #LANDSTAL color 8 8 0 alarm 50 door_lock 0 1 40000 at -1991.004 154.8551 27.5391 angle 180.1707
014C: set_parked_car_generator $X_ANGEL_PINE_MOTEL cars_to_generate_to 101
end_thread
В чём проблема????
когда я начинаю игру,СJ не двигаеться.
Как исправить???
Может не в скрипте дело??
Но это начинаеться как только добовляю свой скрипт в папку CLEO
create_thread @NONAME_8 УДАЛИТЬ!
$X_ANGEL_PINE_MOTEL ЗАМЕНИТЬ! на 0@, к примеру
СJ не двигаеться
А ты клавиши движения нажимал?
А ты клавиши движения нажимал?
Нажимал и крутить камеру пытался и оружия менть пытался,но не чего игрок стоит на месте не двигаеться,НО все обьекты вокруг двигаються.Что такое подскажите??
CJ не двигается потому что стоит опкод end_thread, в клео скриптах всегда надо использовать 0A93: end_custom_thread
нАПИСАЛ ПРОСТЕНЬКИЙ СКРИПТ,ЧТО БЫ ПРИ НАЖАТИИ "Y" ПОЯВЛЯЛСЯ МУЖИК С MINIGUN И ХОТЕЛ МЕНЯ УБИТЬ,А ЕСЛЕ Я БЫ ЕГО УБИЛ ТО МНЕ ДАЛИ БЫ 250$,НО НАЖАВ ЭТу КНОПКу НИЧЕГО НЕ ПРОИСХОДИТ!!чТО НЕ ТАК??пОМОГИТЕ ПЛИЗЗ!
{$CLEO .cs}
//-------------MAIN---------------
thread 'SKRIPT'
:SKRIPT_11
wait 0
Model.Load(#MINIGUN)
Model.Load(#FAM1)
038B: load_requested_models
:SKRIPT_26
wait 0
if and
Model.Available(#MINIGUN)
Model.Available(#FAM1)
Player.Defined($PLAYER_CHAR)
not Actor.Driving($PLAYER_ACTOR)
00E1: player 0 pressed_key 11
jf @SKRIPT_26
wait 5000
04C4: store_coords_to $X_1 $Y_1 $Z_1 from_actor $PLAYER_ACTOR with_offset 0.0 10.0 3.0
1@ = Actor.Create(CivMale, #FAM1, $X1, $Y1, $Z1)
01B2: give_actor 1@ weapon 38 ammo 6000
wait 100
05E2: AS_actor 1@ kill_actor $PLAYER_ACTOR
80E1: not player 0 pressed_key 11
jump @SKRIPT_26
:SKRIPT_153
if
Actor.Dead(1@)
jump @SKRIPT_153
Model.Destroy(#FAM1)
Model.Destroy(#MINIGUN)
Player.Money($PLAYER_CHAR) += 250
Player.ClearWantedLevel($PLAYER_CHAR)
jump @SKRIPT_11
thread 'SKRIPT' УДАЛИТЬ!
05E2: AS_actor 1@ kill_actor $PLAYER_ACTOR
80E1: not player 0 pressed_key 11
jump @SKRIPT_26
тут где-то потерялся if
:SKRIPT_153
if
Actor.Dead(1@)
jump @SKRIPT_153
тут игра зависнет
1. thread 'SKRIPT' удалять не обязательно
2. после :SKRIPT_153
if
Actor.Dead(1@) нужно поставить jf @SKRIPT_153
3. обрати внимание на переменные здесть:
04C4: store_coords_to $X_1 $Y_1 $Z_1 from_actor $PLAYER_ACTOR with_offset 0.0 10.0 3.0
1@ = Actor.Create(CivMale, #FAM1, $X1, $Y1, $Z1)
координат пишешь в $X_1 $Y_1 $Z_1, а создаешь чувачка по $X1, $Y1, $Z1
Skripter! Можешь мне написать скрипт чтобы копы реагировали на чужие выстрелы,а то если например гангстер стреляет то копы которые рядом должны стрелять в него,но этого не происходит.Можно ли это исправить? Можно ещё так сделать чтобы если пед убил другово педа (включая игрока),то копы чтобы стреляли в него.Если пед атакует другово педа любым оружием 'кроме кулаков' то копы тоже стрелали бы в него,а если пед использует кулаки,то копы чтобы мочили его дубинками.
не, я попробовал, но только половину из этого можно сделать, короче нужно както из памяти игры вытащить хендл педа который начал пальбу или драку и натравить на него ментов
Skripter! Слушай я конечно не потеме но у меня проблемы с dff файлом.Я создал здание и импортировал его в гта, но объект выглядит не так как в zmodeler он стал похож на ежа.версии файлов dff 'san andreas' Я импортировал ещё раньше всё было нормально прадо у меня был сан андреас 2005 а сейчас я установил другово года.
Народ пожалуйста помогите мне найти скрипт отпускания стёкол в машине я слыхал что такой есть а если нету то вот и новая идея если кто-то её воплотит скиньте мне на мыло Kostyan_Chern@mail.ru просто я в скриптинге полный ноль зарание спасибо...
Да и если кто знает хороший учебник для скриптинга тоже кинте не мыло ссылку.
Вот моё мыло Kostyan_Chern@mail.ru
08-03 тебе Сюда
Kostyan_Chern лучший учебник - это справка в проге Sanny Builder
Skripter я насчёт скрипта отпускания и поднимание стёкол...
Такой есть или нет?
p00 - вроде такого пока нет, но я пробовал анимацию править в максе и получилась одна хрень.
08-03 - какое именно оружие хочешь поставить спецназу? Есть скрипт на cleo - там менты палят по игроку из машины, вот его можно подправить и сделать чтоб оружие у спецназа нужное было.
Skripter - спасибо за скрипт, давно искал такой. Да и не знаешь что надо сделать, чтоб гроувцы карла за своего не считали? вроде такое обнаружил когда писал мод на очищенном Main. Если не лень, то пришли ещё то что отвечает за девушек карла, тату, причёски и одежду.
Просто пишу ща мод, а в нём можно выбрать перса, за которого играть - даже за балласа.
Я написал скрипт,но он не работает!
// This file was decompiled using sascm.ini published by Seemann (sannybuilder.com/files/SASCM.rar) on 13.10.2007
{$VERSION 3.1.0027}
{$CLEO .cs}
//-------------MAIN---------------
0000: NOP
thread 'omon'
01B9: set_actor 285 armed_weapon_to 30
0A93: end_custom_thread
08-03 - это не правильно. Если ты хочешь чтоб у тебя спецназ к примеру стрелял с другого оружия при уровне розыска надо создать переменного актёра. Поясняю что это такое - это создание актёра в определённом радиусе от игрока. То есть - нужно записать координаты игрока в перменную и поставить на них радиус действия. Вроде записываются переменные командой: create_coordinate. И радиус ставится в этой же команде.
Записывают координаты, так как игрок постоянно двигается и его координаты постоянно обновляются.
Вот скрипт копа-турретчика:
thread 'COPTURRETCHECK'
:COPTURRETCHECK_19
wait 100
if
Player.WantedLevel($PLAYER_CHAR) > 1
jf @COPTURRETCHECK_19
wait 100
Model.Load(#TEC9)
038B: load_requested_models
:COPTURRETCHECK_52
wait 100
if
Model.Available(#TEC9)
jf @COPTURRETCHECK_52
03C0: 20@ = actor $PLAYER_ACTOR car
:COPTURRETCHECK_80
wait 3000
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 60.0 60.0 0.0
04C4: store_coords_to 4@ 5@ 6@ from_actor $PLAYER_ACTOR with_offset -60.0 -60.0 0.0
10@ = -1
053E: 10@ = get_random_car_with_model -1 in_rectangle_cornerA 1@ 2@ cornerB 4@ 5@
if
not 10@ == -1
jf @COPTURRETCHECK_416
if or
Car.Model(10@) == #COPCARLA
Car.Model(10@) == #COPCARRU
Car.Model(10@) == #COPCARSF
Car.Model(10@) == #COPCARVG
Car.Model(10@) == #ENFORCER
jf @COPTURRETCHECK_416
if
8431: not car 10@ passenger_seat_free 0
jf @COPTURRETCHECK_416
wait 100
0432: 11@ = get_actor_handle_from_car 10@ passenger_seat 0
if
not Car.Wrecked(10@)
jf @COPTURRETCHECK_416
wait 100
01B2: give_actor 11@ weapon 32 ammo 30000 // Load the weapon model before using this
01B9: set_actor 11@ armed_weapon_to 0
01B9: set_actor 11@ armed_weapon_to 32
Actor.SetCarWeapon(11@, 32, 200000)
:COPTURRETCHECK_326
wait 700
if
not Car.Wrecked(10@)
jf @COPTURRETCHECK_80
if
not Actor.Dead(11@)
jf @COPTURRETCHECK_80
if
Actor.Driving(11@)
jf @COPTURRETCHECK_326
0713: actor 11@ driveby_actor $PLAYER_ACTOR car 20@ point 0.0 0.0 0.0 radius 5000.0 8 1 firing_rate 90
:COPTURRETCHECK_416
jump @COPTURRETCHECK_80
Car.RemoveReferences(10@)
Actor.RemoveReferences(11@)
jump @COPTURRETCHECK_19
Только тут в скрипте координаты прочитываются, а не создаются, но практически это одно и тоже. Скрипт не мой. Просто я его вскрыл.
А опкод 03C0 работает, если в начале не проверять, за рулём ирок или нет?
ILdar07
А опкод 03C0 работает, если в начале не проверять, за рулём ирок или нет?
А отчего бы он не работал? Он в любом случае сработает, даже если актёр не в машине, но вот если ты с несуществующей машиной что-то попытаешься сделать, - гарантированный вылет игры!
Вот именно. Если пешком, в переменную записывается несуществующее значение. Чтобы этого не случилось, нужна проверка.
Скриптеры, помогите. Короче мне нужна помощь по выведению текстур на экран, я как только вывожу текстуру, она через секунду пропадает. :( Как это изменить?
ILdar07, а зачем задавать вопрос, ответ на который тебе заведомо известен.
Rixer0, зацикли эту команду, сделай её бесконечной, чтобы эта текстура выводилась снова и снова. Тогда достигнешь желаемого результата ;)
Ну как сменить оружие спецназу вы ответети мне когда-нибудь в ЖИЗНИ???
Может быть, Daeman.cs, мне просто хочется поговорить.
08-03, в этой ЖИЗНИ никогда, может быть, в следующей.
плиз напишите как написать действие через клавишу (нажать клавишу для действия) а в справке какието 19 клавиш и все :(
08-03
Ищи опкод 0237, он отвечает за оружие гангстеров.
warbossik
Запустил SB, нажал F12, выбрал раздел CLEO 3 Code Library, далее CLEO3: опкоды, тебе нужен 0AB0.
08-03 Мне кажется это должно работать:
Открой справку SB, открой статью "External Script – что это такое и как с ним работать?", почитай как привязать внешний скрипт к актеру, напиши сам внешний скрипт, тело которого будет состоять из загрузки модели оружия, которое тебе нужно для спецназа, проверки на загруженность, и собственно дающее это оружие тому чуваку в игре, к модели которого привязан скрипт. Ну вот впринципе и все, думаю ты понял что я попытался тебе сказать.
P.S. не забудь скрипт привязать к актеру!!!
У меня вопрос. Я токо учу Санни Билдер и у меня такой вопрос: возможен ли скриптинг для GTA 3 и GTA VC на Sanny Bulder'e?
P.A.N.T.E.U.X. да, возможен, нужно лишь переключить SB для конкретной игры, в справке все описано
Йо чувачок P.A.N.T.E.U.X., как жизнь в гетто? Запусти SB, в нижней панели справа рядом с CLEO кликай значок. Все эти игры можно заскриптить нафик!!! Выбирай одну и пиши.
Но твоя главная ошибка в том, что ты не посмотрел справку. Там на первой же странице: Поддерживаемые игры...
Спасибо!
P.S. Я смотрел справку.
Йао, всё ОК))
А как узнавать координаты? Ну не тупо же ставить цыферги??
Запусти игру и SB. Далее в проге:
Сервис > Инструменты > Редактор координат
или
Ctrl+Alt+1
{$CLEO}
create_thread @aptechka
:aptechka
00D6: if and
00E1: key_pressed 0 14
00E1: key_pressed 0 16
004D: jump_if_false @aptechka
actor.Health($PLAYER_ACTOR) =100
0002: jump @aptechka
end_thread @aptechka
я сделал скрипт что в нем не так?
create_thread @aptechka - не нужно в клео
end_thread @aptechka - во-первых после end_thread не нужно писать имя потока, во-вторых в клео нужно писать опкод 0A93: end_custom_thread, а в-третьих зачем тебе заканчивать поток после jump, если end_thread в данном скрипте никогда не выполнится?
а разве end_thread не заканчивает скрипт навсегда?
а за подсказку спс
а пробела и нет мож между ($PLAYER_ACTOR) и =100?
заканчивает, но у тебя jump стоит и зачем тебе его заканчивать, ты же хочешь что бы он всегда работал
ага понял
и исчо я установил клео вместе с санни а там клео глючит :) переустановил и игра пошла.тока без скрипта :))
и если в cleo скрипте поставить end_thread вместо 0A93: end_custom_thread, то случится тоже что и у гражданина с постом выше(VanSpR 04.03.10 18:32)
а еще когда грузишь анимацию разрешение файла писать? (то есть food.ipf или food хватит?)
постом выше
понял ок
0605: actor -1 perform_animation_sequence "Anim" from_file "File" 4.0 loop 0 0 0 1 -1 ms
После слова actor идёт число -1 -это имя неопределённого актёра, если вы не собираетесь использовать последовательность действий, то вместо -1 надо поставить имя актёра, который будет выполнять анимацию. Если надо, чтобы анимация повторялась, то число, стоящее сразу после слова "loop" должно быть равным 1, а если надо, чтобы анимация не повторялась (обязательное условие последовательности), то ставьте 0.
Если надо, чтобы анимация повторялась определённое кол-во времени, то после "loop" ставете 1 и вместо "-1 ms" ставите своё время.
Если надо, чтобы анимация заканчивалась и актёр возвращался в исходное положение, то число,
стоящее перед -1 ms меняйте на 0, если чтоб оставался в последнем движении анимации, то ставьте 1.
а если я сделал так actor. (открылось меню,я выбрал animation) потом ($PLAYER_ACTOR) и все что ты написал со своими настройками (все по нулям).
правильно?
actor.Animation() - это условие, например: actor.Animation($3) == "food"
{$CLEO}
:aptechka
wait 6000
04ED: load_animation "food"
00D6: if and
04EE: animation "food" loaded
0AB0: key_pressed 0x76
0AA0: gosub_if_false @aptechka
0605: actor.Animation($PLAYER_ACTOR) perform_animation_sequence "EAT_BURGER" from_file "food" 4.0 loop 0 0 0 0 0 ms
actor.Health($PLAYER_ACTOR) =100
jump @aptechka
вот я сделал скрипт (по идее сиджи ест секретный бургер и восстановливает здоровье.) активация на L
неправильно, когда проверяешь анимацию или модель на загруженность, то в случае если она не загружена скрипт не переводи на метку где ты ее загружаешь, т.к. если она еще не загрузилать, то она пойдет на повторнуюю загрузку и будет вылет игры, так что перед
00D6: if and
04EE: animation "food" сделай новую метку и в случае не выполненного условия переход на нее.
анимацию присваивай так:
0605: actor $PLAYER_ACTOR perform_animation_sequence "EAT_BURGER" from_file "food" 4.0 loop 0 0 0 0 -1 ms
сиджею лучше дать здоровья 1000 а не 100, т.к. если у тебя строка здоровья увеличена до максимума и она полная, то получится что здоровье станет меньше
далее всегда выгружай анимацию из памяти
и wait 6000 поставь в конце перед jump @aptechka , а в начале 6000 смени на 0, иначе тебе придется жать на кнопку что бы скрипт заработал около 6 секунд
Скажите, а почему в справке Sanny Builder НЕ написаны все ID пушек, тачек, банд и т.д. для GTA3???
08-03 можно, но после каждого изменения майна нужно начинать новую игру.
P.A.N.T.E.U.X. потому что их не написали, но в последней версии SB если поставить курсор перед названием модели и нажать Ctrl+Alt+H то будет тебе ID
Хаха!
если поставить курсор перед названием модели и нажать Ctrl+Alt+H то будет тебе ID
у меня получлось проще - я ввёл # и тут такое:

:))) И все модели и номера выскочили сами :)
Skripter! Помнишь ты мне давал чистый маин, правдо там не всё удалено.Можно так сделать чтобы там были только гангстеры и потребление Сиджея жрать?
P.A.N.T.E.U.X. не все! а только основные, которые компилируются без объявления их в заголовке DEFINE OBJECT как это нужно делать в майне и нельзя в Cleo...
08-03 Можно
Помогите! Вообщем написал скрипт для VC чтобы у Томми стояла тачка в одном месте.
create_thread @INFERNUS
:INFERNUS
wait 0
014B: $Car = init_parked_car_generator #INFERNUS 2 2 0 alarm 0 door_lock 1 1 150000 at -1061.9845 -227.0772 11.4464 angle 180.0
014C: set_parked_car_generator $Car cars_to_generate_to 101
end_thread
Чё дальше делать? Как его запихивать в папку VC?
Найди файл data\main.scm
Открой его в SB
Найди строку с create_thread и впиши свой create_thread @INFERNUS в новую строку
Между потоками вставь свой :INFERNUS...end_thread
Например между
:MAIN_13817
return
// сюда. поток MAIN кончился, далее идёт другой
:AMBBANK
Но если ты новичок, можешь просто найти строку
//-------------Mission 0---------------
и вписать над ней свой поток
А так это всё нерационально, чувачок. Ради двух опкодов писать целый поток
В оригинальном main.scm и create_thread, и 014B с 014С написаны сразу в первом потоке 'MAIN'.
ЗЫ. Лучше на форуме VС обсуждать это наверн.
Как определить, фары у машины были бы включены или нет, если они не были бы разбиты?
Я там спрашивал, только мне никто не ответил. Думал, может здесь кто-нибудь знает.
0746: set_acquaintance 1 of_actors_pedtype 7 to_actors_pedtype 0
0746: set_acquaintance 1 of_actors_pedtype 8 to_actors_pedtype 0
0746: set_acquaintance 1 of_actors_pedtype 9 to_actors_pedtype 0
0746: set_acquaintance 1 of_actors_pedtype 10 to_actors_pedtype 0
0746: set_acquaintance 1 of_actors_pedtype 11 to_actors_pedtype 0
0746: set_acquaintance 1 of_actors_pedtype 12 to_actors_pedtype 0
0746: set_acquaintance 1 of_actors_pedtype 13 to_actors_pedtype 0
0746: set_acquaintance 1 of_actors_pedtype 14 to_actors_pedtype 0
CraZZZy-GameRRR! Помнишь ты мне давно давал чистый маин без гангстеров.Можно их в этом чистом main.scm прописать,а также и диллеров?
А что мешает использовать main.scm без миссий? Там гангстеры есть.
Skripter wrote:
кто знает где взять все известные адреса памяти?
Я знаю. ;-)
www.gtamodding.ru/wiki/Адреса_Памяти_Функций_(SA..
Тут не все, но процентов 70-80 найти точно можно.
08-03 wrote:
Много пошлятины !
Ты был прав - не понял. Можешь объяснить?
CraZZZy-GameRRR! Слушай в майне с гангстерами который ты давал кое что осталось.Смотри, выхожу на улицу,заварачиваю на право, ещё раз на право, потом на лево, иду и через дорогу дом, там ещё автомобиль припаркован. Это можно удалить?
Если под словом ЭТО имеется ввиду автомобиль, то да - narod.ru/disk/19107886000/main.scm.html
Да нет! Ну блин осталось из старого сюжета,на карте есть радар. Ну помнишь миссию горящее желание, когда курицу надо ту было спасти.
какую курицу?всю СА прошел и видел только муляж.А миссии чтобы муляж спасать не видел.
а про миссию-помню,так что там тачка стоит тоже помню.
я не понял ты что удалить хочешь?
Ну блин развели тут базар «моя твоя не понимать». 08-03 не понравилась фича, что с тёлками мутить можно. Её надо удалить. Ясно теперь???
Вчіть російську, хлопці!
marker.CreateAboveActor($Mark,$Actor)
$Mark - имя маркера,
$Actor - имя актёра.
Какие бывают имена маркера, чтобы актёр:
1. Был врагом
2. Был другом и следовал за тобой
Отношение не зависит от имени.
Чтобы был врагом, надо прописать:
077A: set_actor $Actor acquaintance 4 to_actors_pedtype 0 // 0 – это игрок
Чтобы был другом и следовал за тобой:
077A: set_actor $Actor acquaintance 1 to_actors_pedtype 0
07AF: $PLAYER_GROUP = player $PLAYER_CHAR group
0631: put_actor $Actor in_group $PLAYER_GROUP
Отношения acquaintance бывают такие: 1 – уважение, 2 – симпатия, 3 – неприязнь, 4 – вражда.
Имя маркера зависит от твоей фантазии, но обязательно должен быть с @ или $.
Skripter! Можешь сделать скрипт,чтобы копы реагировали на чужие выстрелы?
ЛЮДИ !!! МНЕ НУЖЕН СКРИПТЕР ДЛЯ ОДНОГО ГЛОБАЛЬНОГО МОДА !!! КТО ШАРИТ В СКРИПТИНГЕ СТУЧИТЕ В АСЬКУ 613449906 . СРОЧНО
Кто хорошо в скриптинге шарит...мне б "учителя" по скриптингу...очень над
icq - 446120317
Команду набирать собираюсь там для дела.
P.S: позарез надо
Skripter! можешь помочь? создал скрипт,чтобы если гангстеров атакует прохожий, то они атаковали его, а не убегали.
//-------------MAIN---------------
0000: NOP
:NONAME_1
wait 0
if
07A5: AS_actor $1000 attack_actor 7 10000 ms
jf @NONAME_1
:NONAME_3
if
07A5: AS_actor $1000 attack_actor 7 10000 ms
wait 1000
jump @NONAME_1
:NONAME_5
05E2: actor 7 kill_actor $1000
wait 2000
jump @NONAME_1
У опкодов-проверок после двуеточия больше одново пробела.
Там без разницы сколько пробелов, главное что бы вообще были
Я хочу чтобы, если гангстеров атакует прохожий, то они атаковали его, а не убегали.
009A: 2@ = create_actor_pedtype 4 model #MALE01 at 0.0 0.0 0.0
2@ – переменная.
ILdar07! Спасибо! Но хочу ещё спросить.Если в скриптинге, когда проверяешь действие,то оно верное, как опкод записать чтобы установить действие?
В скриптинге проверяешь не действие, а условие. Создаёшь, к примеру, маркер и проверяешь через 00ЕС, актёр рядом или нет. Можно сравнивать числовые переменные.
Помогите плз. Мне нужно создать красные маркеры в которые нужно зайти в определенных местах. На радаре не должно быть ничего, что указывает на эти маркеры. После входа в маркер у CJ поменяется прическа и одежда.
Я пробовал сделать одежду, но в том скрипте который я взял за основу было 3 параметра одежды, я вбил 4, и про компиляции вылезает ошибка, вот:
{$CLEO .cs}
//-------------MAIN---------------
thread "JUMPER"
wait 0
:JUMPER_14
wait 0
if
Player.Defined($PLAYER_ACTOR)
else_jump @JUMPER_14
if
00E1: player 0 pressed_key 0
00E1: player 0 pressed_key 1
else_jump @JUMPER_14
if
84AD: not actor $PLAYER_ACTOR in_water
else_jump @JUMPER_14
wait 0
Player.SetClothes($PLAYER_CHAR, "CAPRED", "CAP", Hats)
Player.SetClothes($PLAYER_CHAR, "HAIRGREEN", "HEAD", Head)
Player.SetClothes($PLAYER_CHAR, "FIELD", "FIELD", Torso)
Player.SetClothes($PLAYER_CHAR, "JEANSDENIM", "JEANS", Head)
Player.SetClothes($PLAYER_CHAR, "HITOP", "HITOP", Shoes)
Player.Build($PLAYER_CHAR)
wait 40
Player.CanMove($PLAYER_CHAR) = True
Actor.HasWeapon($PLAYER_ACTOR, 22)
if
else_jump @JUMPER_194
:JUMPER_194
jump @JUMPER_14
Но нужно еще сделать маркер.
if
Actor.HasWeapon($PLAYER_ACTOR, 22)
else_jump @JUMPER_194
так правильнее наверно.
if
00E1: player 0 pressed_key 0
00E1: player 0 pressed_key 1
else_jump @JUMPER_14
тут 2ве проверки значит надо писать if and чтоб выполнялись обе или if or чтоб выполнялась одна из них
Чуваки! Помогите пожалуйста мне установить спецназу оружие,а то у меня sa зависает после загрузки.
//-------------MAIN---------------
0000: NOP
:NONAME_2
wait 0
Model.Load(#SWAT)
Model.Load(#AK47)
038B: load_requested_models
:NONAME_18
wait 0
if and
Model.Available(#SWAT)
Model.Available(#AK47)
else_jump @NONAME_18
:NONAME_43
if
Player.WantedLevel($PLAYER_CHAR) > 4
else_jump @NONAME_43
wait 5000
1@ = Actor.Create(Cop, #SWAT, $X1, $Y1, $Z1)
01B9: set_actor 1@ armed_weapon_to 30
jump @NONAME_43
:NONAME_99
if
Actor.Dead(1@)
else_jump @NONAME_99
Model.Destroy(#SWAT)
Model.Destroy(#AK47)
jump @NONAME_2
:NONAME_43
wait 0
if
Player.WantedLevel($PLAYER_CHAR) > 4
else_jump @NONAME_43
wait 5000
04C4: store_coords_to $X $Y $Z from_actor $PLAYER_ACTOR with_offset 10.0 3.0 1.0
02C0: store_to $X1 $Y1 $Z1 ped_path_coords_closest_to $X $Y $Z
1@ = Actor.Create(Cop, #SWAT, $X1, $Y1, $Z1)
01B2: give_actor 1@ weapon 30 ammo 6969
01B9: set_actor 1@ armed_weapon_to 30
:NONAME_99
wait 0
if
Actor.Dead(1@)
else_jump @NONAME_99
Не подскажете, что делают эти два опкода?
0253: save_current_time и 0254: restore_current_time
CraZZZy-GameRRR я как то находил файл в винде отвечающий за время на компе, только не помню как называется, так вот из него думаю можно прочитать текущее время
CraZZZy-GameRRR! Помоги пожалуйста, я хочу поставить бандам отношение к актёру (определённому).
//-------------MAIN---------------
0000: NOP
:NONAME_1
wait 0
Model.Load(#BALLAS1)
Model.Load(#BALLAS2)
Model.Load(#BALLAS3)
Model.Load(#BMYDJ)
038B: load_requested_models
:NONAME_3
wait 0
if and
Model.Available(#BALLAS1)
Model.Available(#BALLAS2)
Model.Available(#BALLAS3)
Model.Available(#BMYDJ)
jf @NONAME_3
wait 5000
1@ = Actor.Create(Criminal, #BALLAS1, $X1, $Y1, $Z1)
3@ = Actor.Create(Criminal, #BALLAS2, $X1, $Y1, $Z1)
5@ = Actor.Create(Criminal, #BALLAS3, $X1, $Y1, $Z1)
8@ = Actor.Create(CivMale, #BMYDJ, $X1, $Y1, $Z1)
0746: set_acquaintance 3 of_actors_pedtype 1@ to_actors_pedtype 8@
0746: set_acquaintance 3 of_actors_pedtype 3@ to_actors_pedtype 8@
0746: set_acquaintance 3 of_actors_pedtype 5@ to_actors_pedtype 8@
jump @NONAME_3
:NONAME_5
wait 0
if
Actor.Dead(1@)
Actor.Dead(3@)
Actor.Dead(5@)
Actor.Dead(8@)
jf @NONAME_5
Model.Destroy(#BALLAS1)
Model.Destroy(#BALLAS2)
Model.Destroy(#BALLAS3)
Model.Destroy(#BMYDJ)
jump @NONAME_1
CraZZZy-GameRRR
Скатай это, покопайся в исходнике, может найдёшь что-нибудь.
08-03 in Los Santos
Потому что это самое оружие прописано в EXE, как и пистолет у копов.
Параметры опкода 0746:
1-е число = отношение (см. 27.03.10 15:25);
2-е и 3-е числа = тип педов (см. Справку SB: Документация по SCM > GTA SA > Типы пешеходов)
До сих пор не могу понять, почему когда несколько условий, пишут только if.
А как в EXE изменить, ведь блокнотом не исправить.Я пробывал, но это бред.
Скатай SA Limit Adjuster. Открой salimit.ini, там есть #SWAT Weapon=28, 28 это УЗИ, # означает что игра эту строку не читает.
Я установил.Но минусы-исчез загрузочный экран и в salimit.ini поменял оружие спецназу,но когда уровень разыскиваемости 4, sa вылетает.
031D: actor 55@ hit_by_weapon 38
если вместо 38 писать 51 например, то будет проверка на любое оружие наверно.
ILdar07! Слушай у меня проблема. Я решил взять чистый маин без миссий, потом начал редактировать его.Дело в том что у меня sa вылетает, чуть не через 5 минут.Ты не знаешь чё за фигня?
Я знаю чё за фигня! Ты наделал косяков и ща их раскуриваешь. Надо поновой взять чистый маин без миссий и редактировать его внимаетльно.
Как сделать так чтобы если гангстеров атаковал актёр, чтобы они его атаковали.Написал скрипт, но он не работает.
//-------------MAIN---------------
0000: NOP
:GANG_1
wait 0
if
051A: actor 8 damaged_by_actor 4
jf @GANG_1
:GANG_3
05E2: actor 8 kill_actor 4
jump @GANG_1
Надо писать имя актёра, то есть переменную, в которую ты его записал, а не его тип педа. И сначала создать конечно же самого актёра, либо взять из окружения (см. 12.02.10 20:50).
Я кстати один раз записал актёра и указал координаты, только когда приехал на место он там появлялся безконечно.
Подскажите,пожалуйста,как сменить модель CJ-я на модель нужного мне педа?Извиняюсь,так сказать,за нубость.
Предположим, модель нужного тебе педа – #BFORI.
Model.Load(#BFORI)
:Noname
if
not Model.Available(#BFORI)
else_jump @Noname_2
wait 0
jump @Noname
:Noname_2
09C7: change_player $PLAYER_CHAR model_to #BFORI
Model.Destroy(#BFORI)
Метка "NONAME_2" переобъявлена. что значит сея ошибка?
CraZZZy-GameRRR Спасибо : )
Хмм...Блин.Что-то у меня совсем ничего не получается...=(
Reply to Открывалка:
Метка переобьявлена
Данная ошибка возникает, если вы используете одно и то же имя для нескольких меток, вследствие чего компилятор не может распознать на какую из них вы ссылаетесь.
Возможные решения: укажите иное имя для метки, которая повторяется дважды.
------------------
Совет: Если SB пишет ошибку, нажимай "Помощь" и всё сразу станет ясно.
Ещё вопрос.
Как сделать так,чтобы при поднятии пикапа отнималось опр. кол-во денег?
{$CLEO .CS}
:PickUp_1
Model.Load(1239)
:PickUp_2
wait 0
if
Model.Available(1239)
jf @PickUp_2
:PickUp_3
02E1: 0@ = create_cash_pickup -1000 at 2625.6196 1112.9114 10.8203 permanence_flag 1
// Здесь -1000 - кол-во денег, отнимаемое у игрока
// а 2625.6196 1112.9114 10.8203 - координаты пикапа
Model.Destroy(1239)
0A93: end_custom_thread
Я хочу сменить Сиджея на другого персонажа, только неполучается.
Короче взял dff и txd переименовал их maks.dff и maks.txd. Потом в peds.ide написал
0, maks, maks, CRIMINAL, STAT_PLAYER, man, 0, 0, man, 9, 9, PED_TYPE_GEN, VOICE_GEN_CR, VOICE_PLY_CR
Написал скрипт:
:maks
thread 'maks'
Model.Load (#MAKS)
:maks
wait 0
if
not Model.Available (#MAKS)
jf @maks_3
wait 0
jump @maks
:maks_3
09C7: change_player $PLAYER_CHAR model_to #MAKS
Model.Destroy(#MAKS)
end_thread
Что неправильно?
Зачем что-то менять в peds.ide, если хочешь изменить скриптом. И трогать 0 тогда не надо, лучше найти педа, которого нет в pedgrp.dat, и его менять.
Две одинаковых метки maks.
На заметку: модель, на которую игрока меняем через скрипт, не обязательно прописывать в файлах.
плиз сделайте скрипт чтоб возле крана в Сан Фиерро стояла Euros. Её невозможно найти - а надо.
:ParkedCar
014B: 0@ = init_parked_car_generator #EUROS 8 8 0 alarm 0 door_lock 0 0 40000 at -2081.5081 231.0162 34.9918 angle 134.0291
014C: set_parked_car_generator 0@ cars_to_generate_to 101
end_thread
Товарищи скриптеры)), очень нужна ваша помощь. Вы, наверное, знаете скрипт "Новый алгоритм движения поездов v5"? Так вот, мне нужно "заточить" его под старую КР(0.1.5), а то у меня вместо светофоров по бокам "хрущевки" стоят и подъезды прям к рельсам выходят))))) Существует и 1-я версия - без светофоров, но в ней багов полно(( Сможете помочь? Заранее спасибо)
Блин сорри что я задаю такой вопрос, но как мне перевести формат файла в .CS после написания скрипта?
а зделайте скин неро из devil may cry 4 а рука демона в место кастета
Как можно сделать так чтобы копы могли ходить по улицам с micro_uzi в руках т.е например один идёт как обычно а другой держит micro_uzi?
{$CLEO .CS}
1@ = 0
:GUNS1
Model.Load(#LAPD1)
Model.Load(#MICRO_UZI)
:GUNS1_8
if or
not Model.Available(#LAPD1)
not Model.Available(#MICRO_UZI)
jf @GUNS1_20
wait 0
jump @GUNS1_8
:GUNS1_20
wait 5000
00A0: store_actor $PLAYER_ACTOR position_to 1@ 2@ 3@
02C0: store_to 7@ 8@ 9@ ped_path_coords_closest_to 1@ 2@ 3@
009A: 4@ = create_actor_pedtype 6 model #LAPD1 at 7@ 8@ 9@
if
82CB: not actor 4@ bounding_sphere_visible
jf @GUNS1_30
01B2: give_actor 4@ weapon 28 ammo 60
05DE: AS_actor 4@ walk_around_ped_path
01C2: remove_references_to_actor 4@
jump @GUNS1_20
:GUNS1_30
009B: destroy_actor 4@
jump @GUNS1_20
ILdar07! Слушай я никак не смог сменить сиджея ни фига всё попробывал Скрипт взял из cleo который может заменить игрока твой не помог ничего не помагает Загружаю сан-андреас и он вылетает ЧЁ делать не знаю!
:MAKS
thread 'MAKS'
:MAKS_18
wait 0
Model.Load(#MAKS)
038B: load_requested_models
jump @MAKS_804
:MAKS_804
wait 0
if
Model.Available(#MAKS)
else_jump @MAKS_804
wait 5000
09C7: change_player $PLAYER_CHAR model_to #MAKS
jf @MAKS_804
:MAKS_5
wait 0
if
Actor.Dead($PLAYER_ACTOR)
jf @MAKS_5
Model.Destroy(#MAKS)
jump @MAKS_18
jf @MAKS_804
Это зачем??? В MAKS_5 после Model.Destroy(#MAKS) добавь 09C7: change_player $PLAYER_CHAR model_to #NULL, чтоб к игроку вернулась родная модель.
Этот скрипт тож неробит? (F5 для активации)
гггыыы, you Crazzzyyy man! меня щас перекосит от сумашедших скриптов 08-03 in Las Venturas'a))))
CLEO 3 ухудшает гта! Я сам видел. Он изменил поведение актёров в худшую сторону, а копы не реагируют на то что я угнал автомобиль! Решил провереть, удалил все скрипты и ничего не изменилось значит виноват asi плагин!
А что плохого в том что изменилось поведение актёров в худшую сторону, а копы не реагируют на то что ты угнал автомобиль?
А какие папки CLEO существуют для GTA 3 и VC? Делаю на них скрипт и в игре не показывается :((
ВСЕМ привет я вот тут решил создать в грув стрит мастерскую и построить дома и я не могу это сделать помогите для samp или я не туда попал ?
Может кто нибудь,наиболее подробно,объяснить как мне сделать мисиию,как те,в которых надо доставлять пакеты в красные круги?
Буду премного благодарен.
Как сделать чтобы когда актёр имеет в руке огнестрельное оружие, чтобы копы стреляли в него.И ещё если копы рядом то чтобы банды прятали оружие, а когда коп изчезает чтобы оружие банды с ново держали оружие в руке.
у меня возникла проблема - как только я в main.scm через SB создаю нужный скрипт, и нажимаю "компилировать", в конце процесса выскакивает ошибка "метка NONAME_2 не найдена". если же я переименовываю название потока, который до этого назывался, к примеру, "MAN", в "NONAME_2", то выскакивает ошибка "метка MAN_2 не найдена". подскажите пожалуйста, что делать, так как я новичок в скриптинге!
Всегда надо с чего-то начинать. В данном случае мы начинаем с отсутствия нужных меток. Временами такое случается. По-моему, из-за того, что декомпилятор "съедает" некоторые ненужные на его взгляд метки. А потом сам же и жалуется, что их нет.
Помочь тут чем-то сложно. Надо смотреть весь файл и прописывать недостающие элементы. Я так и делал по крайней мере. Только конечно же не переименовывал существующие, а писал в новые строки там, где на мой взгляд и должна находиться нужная метка.
PS. В сообщении об ошибке SB есть кнопка "Помощь".
я знаю, что там есть эта кнопка, но эта так называемая "помощь" мне ничего не дала, так как там не указано, где именно надо прописать требуемую метку. причем когда я первый раз создавала скрипт, той ошибки не было.
А никто тебе и не скажет, где её прописывать. Скрипт видишь только ты, и только ты и знаешь, что там и как и почему и зачем и когда.
SB любит терзать нервы скриптера, создавая ошибки на пустом месте.
пацаны как создать телепорт например поставить в 1 городе красный круг в него зайти и появится во 2 городе гденибудь
кто знает можите написать или отправить на mail. /////parkour.fox_1.@mail.ru//////
зарание спосибо
{$VERSION 3.1.0027}
{$CLEO .cs}
//-------------MAIN---------------
4@ = -1
:Noname_1
02A7: 0@ = create_icon_marker_and_sphere 37 at 2447.4 -1974.5 12.547 // в 1 городе красный круг
:Noname_2
wait 0
if
00ED: actor $PLAYER_ACTOR 0 near_point 2447.4 -1974.5 radius 1.0 1.0 on_foot
jf @Noname_2
player.CanMove($PLAYER_chAR) = false
016A: fade 0 time 2000
wait 2000
00A1: put_actor $PLAYER_ACTOR at -2623.5 1405.661 6.1 // во 2 городе гденибудь
wait 2000
016A: fade 1 time 2000
player.CanMove($PLAYER_chAR) = true
jump @Noname_2
кто знает как создать интерер в дом.я создал дом и хочу чтобы у двери стоял красный круг или стрелка зоходишь в него и ты в интерере а потом в интерере тоже красный круг и выходишь обратно к дому к двери.
помогите плизззззз срочно надо.зорание спс
Через IPL проще намного.
{$CLEO .cs}
//-------------MAIN---------------
4@ = -1
:Noname_1
wait 0
if
00ED: actor $PLAYER_ACTOR 1 near_point 2447.4 -1974.5 radius 2.0 2.0 on_foot
jf @Noname_1
player.CanMove($PLAYER_chAR) = false
016A: fade 0 time 2000
wait 2000
select_interior 3
0860: link actor $PLAYER_ACTOR to interior 3
actor.PutAt($PLAYER_ACTOR,2494.05, -1696.73 ,1013.75)
0A40: 1@ = create_entrance_marker_at 2494.05 -1696.73 1015.0 color 14
wait 2000
016A: fade 1 time 2000
player.CanMove($PLAYER_chAR) = true
:Noname_12
wait 0
if
80ED: not actor $PLAYER_ACTOR 0 near_point 2494.05 -1696.73 radius 2.5 2.5 on_foot
jf @Noname_12
:Noname_2
wait 1000
09E8: 0@ = actor $PLAYER_ACTOR active_interior
if
not 0@ == 0
else_jump @Noname_1
if
00ED: actor $PLAYER_ACTOR 1 near_point 2494.05 -1696.73 radius 2.0 2.0 on_foot
jf @Noname_2
0A41: destroy_entrance_marker 1@
player.CanMove($PLAYER_chAR) = false
016A: fade 0 time 2000
wait 2000
04BB: select_interior 0
0860: link_actor $PLAYER_ACTOR to_interior 0
00A1: put_actor $PLAYER_ACTOR at 2447.4 -1974.5 12.547
wait 2000
016A: fade 1 time 2000
player.CanMove($PLAYER_chAR) = true
:Noname_22
wait 0
if
80ED: not actor $PLAYER_ACTOR 0 near_point 2447.4 -1974.5 radius 2.5 2.5 on_foot
jf @Noname_22
jump @Noname_1
ILdar07 а ты знаешь как создать машинам путь.но смысли чтоб она ехала по координатам которые самому создать.
я пытался не получается sa вылетает.для актёров умею создовать пути а вот для машин не получается.и за интерер спс большое.
Показал бы свои попытки, было бы конструктивней. С машинами всё то же самое, что и с педами, только надо посадить актёра в авто и указать:
06BB: set_actor -1 drive_car 0@ speed 10.0 along_SCM_path // -1 актёр, 0@ авто, 10.0 скорость
а как создать pickup на покупку дома как только его купить и следом появляется pickup сохранения
Знаю два опкода, пишу скрипты для себя. Сочиняю рифмы, слушаю рэп любя. Йо!
а как создать pickup на покупку дома как только его купить и следом появляется pickup сохранения
скажи если не тркдно
{$CLEO .cs}
//-------------MAIN---------------
0518: 4@ = create_available_asset_pickup 'PROP_3' at $X $Y $Z price 1@ // $X $Y $Z координаты, 1@ цена
:Noname_1
wait 0
if
0214: pickup 4@ picked_up
jf @Noname_1
player.CanMove($PLAYER_chAR) = false
016A: fade 0 time 2000
wait 2000
0215: destroy_pickup 4@
wait 2000
016A: fade 1 time 2000
player.CanMove($PLAYER_chAR) = true
:Noname_12
wait 0
if
80ED: not actor $PLAYER_ACTOR 0 near_point $X $Y radius 2.5 2.5 on_foot
jf @Noname_12
4@ = Pickup.Create(1277, 3, $X, $Y, $Z)
:Noname_2
wait 0
if
0214: pickup 4@ picked_up
else_jump @Noname_2
player.CanMove($PLAYER_chAR) = false
03D8: show_save_screen
0215: destroy_pickup 4@
:Noname_22
wait 0
if
03D9: save_done
jf @Noname_22
player.CanMove($PLAYER_chAR) = true
jump @Noname_12
Эта информация не подлежит обсуждению в данном топике. Рекомендую воспользоваться системой Личные Сообщения (ЛС) на этом сайте либо прибегнуть к услугам специальных программ для обмена мгновенными сообщениями (типа ICQ, M-Агент и др.).
А ТЫ СКАЖИ СВОЁ МЫЛО ЕСЛИ ЧТО ТАМ ПООБЩАЕМСЯ ВОТ МОЁ {parkour.fox_1.@mail.ru}
ILdar07. Помоги пожалуйста! Как сделать чтобы когда актёр имеет в руке огнестрельное оружие, чтобы копы стреляли в него.И ещё если копы рядом то чтобы банды прятали оружие, а когда коп изчезает чтобы оружие банды с ново держали оружие в руке.
не я хочу узнать как писать скрипты какие символы там нужны или что как воше их писать
vampire-man
единственное, что могу посоветовать - скачай нормальный учебник по скриптингу, так как за один день ты всё равно не научишься писать скрипты.
0681: attach_object 1@ to_car 0@ with_offset 0.5 0.3 0.3 rotation 0.0 0.0 0.0
я дилетант в скриптах,самоучка не читал ни каких инструкций,пользовался старым санни который даже клео не знал,у меня просто инета небыло и приходилось так разбираться,кто-то уже спрашивал про это но всё же, хочу написать свой сценарий работа застопорилась на смешном я барьеры между городами убрал,а как сделать чтобы звёзды не прибавляли за пределами лос сантоса и как сделать тюннинг с самого начала незнаю и таких вопросов полно а главное я не очень по части клео(вроде все тоже но многое всё равно не ясно).Я прощарил весь меин и много других модов и так и не понял подскажите пожалуйста если незатруднит..заранее спасибо)))
0629: change_integer_stat 181 to 4 // чтобы звёзды не прибавляли
Garage.Activate('VECMOD') // LV
Garage.Activate('MODLAST') // LS Low-Rida
Garage.Activate('BODLAWN') // LS
Garage.Activate('MDSSFSE') // SF
Garage.Activate('MDS1SFS') // SF Street-Raca тюннинг с самого начала
Но тюнинг по-любому не будет работать, если у тебя нет внешнего скрипта (EXTERNAL SCRIPT CARMOD1 AT @CARMOD // 66 в оригинале).
Советую не заморачиваться, взять чистый мейн без миссий, но со всем остальным, там всё открыто и доступно.
Почему когда я добавляю CLEO скрипт в папку CLEO, при загрузке игра вылетает, хотя я всё в точности делал правильно?
помогите новечку как ставить на сервер в samp ворота некотрым франкциям и как узновать потом как они открываются напишите пл в личку
Помогите по скрипту.
Пишу скрипт, суть которого заключается в том чтобы когда число человек в банде больше чем мест в машине, оставшиеся на улице бандиты садились в ближайшую попавшуюся машину и ехали за игроком.
Проблема такая: напарник садится за руль случайного авто и сразу вылазит, потом снова садится и опять вылазит (и так до бесконечности).
Кто нибудь встречался с такой фигней? Отпишитесь плиз
вот фрагмент скрипта:
...
:int_2
wait 100
if
00DF: actor $PLAYER_ACTOR driving
jf @int_3
jump @InT_2_1
:InT_2_1
03C0: 0@ = actor $PLAYER_ACTOR car
01EA: 1@ = car 0@ max_passengers
07AF: $PLAYER_GROUP = player $PLAYER_CHAR group
07F6: get_group $PLAYER_GROUP number_of_leaders_to 6@ number_of_members_to 7@
092B: 8@ = group $PLAYER_GROUP member 1@
if
056D: actor 8@ defined
jf @int_2
04C4: store_coords_to 9@ 10@ 11@ from_actor 8@ with_offset 5.75 5.75 0.0
04C4: store_coords_to 12@ 13@ 14@ from_actor 8@ with_offset -5.75 -5.75 0.0
053E: 15@ = get_random_car_with_model -1 in_rectangle_cornerA 9@ 10@ cornerB 12@ 13@
if
056E: car 15@ defined
jf @int_2
0615: define_AS_pack_begin 18@
05CB: AS_actor -1 enter_car 15@ as_driver -2 ms
0616: define_AS_pack_end 18@
0618: assign_actor 8@ to_AS_pack 18@
wait 2000
if
0448: actor 8@ in_car 15@
jf @int_2
jump @int_2_2
....
Зачем для одного действия назначать AS_pack. Попробуй без него, просто сразу AS_actor (и кстати, есть опкод 05D2).
ILdar07
спасибо за опкод, не знал что такой имеется) теперь все работает ЯХУУ!
Если хочешь спросить, то спрашивай, не стесняйся. А скрипт создать может и можно, невозможное возможно, но очень сложно. Я лично такой хернёй не страдаю.
Вопрос по поводу DYOM (v5). А можно создать миссию, где за рулём сидит кто-то другой, а на месте пассажира - ГГ с оружием (типа последней миссии)? Если да, то как?
ПЛЗ помогите кто нидь знает почему в гта са после того как я установил скрипт "taxi mod' у мя на карте перестали появляться метки миссий преходиться делать все вслепую. Хотя я уже удалил этот скрипт все равно метки невидно
Здорова всем Помогите мне пожалыста найти опкод который проверяет открыты ли двери у тачки
еще вот что как проверить атакует ли актер ту или иную машину.И ещё врезался ли актер в ту или иную машину.Разрабатываю скрипт сигнализация почти готов
051C: car 0@ damaged_by_actor $PLAYER_ACTOR
и
0547: actor $PLAYER_ACTOR colliding_with_car 0@
спасибо и вот последний вопрос как заставить любого актёра(Не главного) не двигаться т.e стоять на месте.И ещё как задать Какому либо пешеходу Wanted_level
Здравствуйте, обитатели форума=)
Я новичок. Но уже кое что умею.
Написал код, вот он:
create_thread @GUARD_44
end_thread
thread 'GUARD'
Model.Load(#CELLPHONE)
Model.Load(#BULLET)
Model.Load(#BMYBOUN)
Model.Load(#MP5LNG)
038B: load_requested_models
054C: use_GXT_table 'BODYGUA'
:GUARD_44
wait 0
if and
Model.Available(#CELLPHONE)
Model.Available(#BULLET)
Model.Available(#BMYBOUN)
Model.Available(#MP5LNG)
jf @GUARD_44
:GUARD_68
if
0AB0: key_pressed 90
jf @GUARD_68
:guard_43
0729: AS_actor $PLAYER_ACTOR hold_cellphone 1
wait 2500
00BC: show_text_highpriority GXT 'CALL' time 1200 1 // ~z~Hello, i can take two bodyguards?
wait 1500
00BC: show_text_highpriority GXT 'FRASE' time 1200 1 // ~z~Sure. Wait for a few minutes, guards on the way.
wait 1500
00BC: show_text_highpriority GXT 'THANKS' time 1000 1 // ~z~Thanks.
wait 1500
0729: AS_actor $PLAYER_ACTOR hold_cellphone 0
wait 3000
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 8.0 0.0
$GUARD = Car.Create(#BULLET, 2495.368, -1994.034, 13.5038)
Car.Angle($GUARD) = 180.0
0229: set_car $GUARD primary_color_to 1 secondary_color_to 0
0129: 12@ = create_actor_pedtype 4 model #BMYBOUN in_car $GUARD driverseat
01C8: 13@ = create_actor_pedtype 4 model #BMYBOUN in_car $GUARD passenger_seat 1
01B2: give_actor 12@ weapon 29 ammo 9999 // Load the weapon model before using this
01B2: give_actor 13@ weapon 29 ammo 9999 // Load the weapon model before using this
Model.Destroy(#BMYBOUN)
Model.Destroy(#BULLET)
Model.Destroy(#MP5LNG)
Model.Destroy(#CELLPHONE)
0631: put_actor $12 in_group $PLAYER_GROUP
0631: put_actor $13 in_group $PLAYER_GROUP
0630: put_actor $PLAYER_ACTOR in_group $PLAYER_GROUP as_leader
Actor.WeaponAccuracy($12) = 95
Actor.WeaponAccuracy($13) = 95
Actor.Health($12) = 200
Actor.Health($13) = 200
Actor.Armour($12) = 200
Actor.Armour($13) = 200
Car.DriveTo($GUARD, 1@, 2@, 3@)
:GUARD_394
if
01C1: car $GUARD stopped
jf @GUARD_394
0633: AS_actor $13 exit_car
0633: AS_actor $12 exit_car
end_thread
Суть в том, что Карл должен позвонить по телефону и вызвать двух охранников, машина создается в определенном участке, в месте с ней два актера, вооруженных.
Ис помощью кода драйвту едут ко мне.
Я списал координаты, с офсетом 4 по оси y (то есть машина остановится прямо передо мнойб в 4 метрах).
Но к сожалению, Карл даже трубку брать не хочет! В чем дело? Подскажите пожалуйста.
Diaz0
05B9: AS_actor 1@ stay_idle 1 ms // 1@ – имя актёра, 1 – время простоя
Wanted_level работает только на игроке.
Scripter21
end_thread
:GUARD
thread 'GUARD'
Model.Load(#CELLPHONE)
Model.Load(#BULLET)
Model.Load(#BMYBOUN)
Model.Load(#MP5LNG)
038B: load_requested_models
054C: use_GXT_table 'BODYGUA'
:GUARD_44
wait 0
if and
Model.Available(#CELLPHONE)
Model.Available(#BULLET)
Model.Available(#BMYBOUN)
Model.Available(#MP5LNG)
jf @GUARD_44
:GUARD_68
wait 0
if
0AB0: key_pressed 90
jf @GUARD_68
:guard_43
0729: AS_actor $PLAYER_ACTOR hold_cellphone 1
wait 2500
00BC: show_text_highpriority GXT 'CALL' time 1200 1 // ~z~Hello, i can take two bodyguards?
wait 1500
00BC: show_text_highpriority GXT 'FRASE' time 1200 1 // ~z~Sure. Wait for a few minutes, guards on the way.
wait 1500
00BC: show_text_highpriority GXT 'THANKS' time 1000 1 // ~z~Thanks.
wait 1500
0729: AS_actor $PLAYER_ACTOR hold_cellphone 0
wait 3000
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 8.0 0.0
$GUARD = Car.Create(#BULLET, 2495.368, -1994.034, 13.5038)
Car.Angle($GUARD) = 180.0
0229: set_car $GUARD primary_color_to 1 secondary_color_to 0
0129: 12@ = create_actor_pedtype 4 model #BMYBOUN in_car $GUARD driverseat
01C8: 13@ = create_actor_pedtype 4 model #BMYBOUN in_car $GUARD passenger_seat 1
01B2: give_actor 12@ weapon 29 ammo 9999 // Load the weapon model before using this
01B2: give_actor 13@ weapon 29 ammo 9999 // Load the weapon model before using this
0631: put_actor $12 in_group $PLAYER_GROUP
0631: put_actor $13 in_group $PLAYER_GROUP
0630: put_actor $PLAYER_ACTOR in_group $PLAYER_GROUP as_leader
Actor.WeaponAccuracy($12) = 95
Actor.WeaponAccuracy($13) = 95
Actor.Health($12) = 200
Actor.Health($13) = 200
Actor.Armour($12) = 200
Actor.Armour($13) = 200
Car.DriveTo($GUARD, 1@, 2@, 3@)
:GUARD_394
wait 0
if
01C1: car $GUARD stopped
jf @GUARD_394
0633: AS_actor $13 exit_car
0633: AS_actor $12 exit_car
Model.Destroy(#BMYBOUN)
Model.Destroy(#BULLET)
Model.Destroy(#MP5LNG)
Model.Destroy(#CELLPHONE)
end_thread
ILdar07 у меня этот опкод не идёт почему то я его пробую а пед как шёл так и продолжает идти
Не забудь проверочку поставить
00D6: if
0256: player $PLAYER_CHAR defined ///если игрок существует. иначе возможны вылеты в некоторых местах
diaz0, попробуй это:
player.canMove(переменная актера@) = False/True
--------------------------------------------------
True - может ходить
false - нет
Между False и True можно поставить wait.
ну или это - put_actor 12@ stay_put = 1
1 - стоп
0 - идет
опкод к сожалению не помню,
введи в поиске опкодов.
Кстати, можно вас попросить заценить мой скрипт=)
Вот, скомпилируйте в клео=)
Z- позвонить и вызвать двух охранников
X - сесть в их машину пассажиром, выставить цель на карте, нажать F8
Машина поедет туда.
Только одна трабла!
Машина почему то едет на очень черепашьей скорости, не знаю почему=((
Начните новую игру!!! Возможен вылет после воторого, третьего использования.
//-------------MAIN---------------
thread "GUARD"
wait 100
Model.Load(#CELLPHONE)
Model.Load(#EMPEROR)
Model.Load(#BMYBOUN)
Model.Load(#MP5LNG)
Model.Load(#MAFBOSS)
038B: load_requested_models
054C: use_GXT_table 'BODYGUA'
:GUARD_50
wait 100
if and
Model.Available(#CELLPHONE)
Model.Available(#EMPEROR)
Model.Available(#BMYBOUN)
Model.Available(#MP5LNG)
Model.Available(#MAFBOSS)
else_jump @GUARD_50
:GUARD_89
wait 100
if and
0AB0: key_pressed 90
not Actor.Driving($PLAYER_ACTOR)
else_jump @GUARD_89
0729: AS_actor $PLAYER_ACTOR hold_cellphone 1
wait 2500
00BC: show_text_highpriority GXT 'CALL' time 2000 flag 1 // ~z~Hello, i can take two bodyguards?
wait 1500
00BC: show_text_highpriority GXT 'FRASE' time 2000 flag 1 // ~z~Sure. Wait for a few minutes, guards on the way.
wait 1500
00BC: show_text_highpriority GXT 'THANKS' time 1000 flag 1 // ~z~Thanks.
wait 1500
0729: AS_actor $PLAYER_ACTOR hold_cellphone 0
wait 3000
Player.CanMove($PLAYER_CHAR) = False
wait 3000
04C4: store_coords_to 10@ 11@ 15@ from_actor $PLAYER_ACTOR with_offset 5.5 -6.5 0.0
$GUARD = Car.Create(#EMPEROR, 10@, 11@, 15@)
0229: set_car $GUARD primary_color_to 0 secondary_color_to 0
04C4: store_coords_to 7@ 8@ 9@ from_actor $PLAYER_ACTOR with_offset 1.5 3.5 0.0
01C8: 13@ = create_actor_pedtype 4 model #BMYBOUN in_car $GUARD passenger_seat 0
01C8: 12@ = create_actor_pedtype 4 model #BMYBOUN in_car $GUARD passenger_seat 1
01B2: give_actor 13@ weapon 29 ammo 9999 // Load the weapon model before using this
Actor.Health(13@) = 500
Actor.WeaponAccuracy(13@) = 95
Actor.Armour(13@) = 100
0129: 14@ = create_actor_pedtype 4 model #MAFBOSS in_car $GUARD driverseat
01B2: give_actor 12@ weapon 29 ammo 9999 // Load the weapon model before using this
Actor.WeaponAccuracy(12@) = 90
Actor.Armour(12@) = 100
Actor.Health(12@) = 500
07AF: $PLAYER_GROUP = player $PLAYER_CHAR group
Car.DriveTo($GUARD, 7@, 8@, 9@)
:GUARD_424
wait 0
if
01AD: car $GUARD sphere 0 near_point 7@ 8@ radius 3.0 3.1
else_jump @GUARD_424
0633: AS_actor 12@ exit_car
0633: AS_actor 13@ exit_car
Player.CanMove($PLAYER_CHAR) = True
0631: put_actor 12@ in_group $PLAYER_GROUP
0631: put_actor 13@ in_group $PLAYER_GROUP
0630: put_actor $PLAYER_ACTOR in_group $PLAYER_GROUP as_leader
00BC: show_text_highpriority GXT 'BODYGA' time 2200 flag 1 // ~z~Hi, we are your bodyguards. We will protect you.
:GUARD_553
wait 0
if
0AB0: key_pressed 88
jf @GUARD_553
05CA: AS_actor $PLAYER_ACTOR enter_car $GUARD passenger_seat 1 10000 ms
05CA: AS_actor 12@ enter_car $GUARD passenger_seat 2 20000 ms
05CA: AS_actor 13@ enter_car $GUARD passenger_seat 0 15000 ms
:GUARD_613
wait 0
if
0AB0: key_pressed 119
jf @GUARD_613
0AB6: store_target_marker_coords_to 21@ 22@ 23@ // IF and SET
wait 500
02CE: 11@ = ground_z_at 21@ 22@ 23@
if and
not 21@ == -1
not 22@ == -1
not 11@ == -1
wait 100
Car.DriveTo($GUARD, 21@, 22@, 11@)
:GUARD_539
wait 0
if or
0741: actor $PLAYER_ACTOR busted
Actor.Dead($PLAYER_ACTOR)
else_jump @GUARD_539
Actor.Dead(12@)
Actor.Dead(13@)
Car.Destroy($GUARD)
Car.RemoveReferences($GUARD)
Actor.RemoveReferences(12@)
Actor.RemoveReferences(13@)
Actor.RemoveReferences(14@)
7@=0
8@=0
9@=0
10@=0
11@=0
15@=0
Model.Destroy(#BMYBOUN)
Model.Destroy(#EMPEROR)
Model.Destroy(#MP5LNG)
Model.Destroy(#CELLPHONE)
model.Destroy(#MAFBOSS)
jump @GUARD_89
К сожалению текста не будет, но текст вы можете увидеть в комментариях.
Scripter21
player.canMove – если читать внимательно, можно найти слово player (игрок). Все опкоды с этим словом работают только на ГГ.
Diaz0
Покажи, как ты его создаёшь.
AS_actor 0@ stay_idle 9999 ms
где unknown_get_actor_in_sphere 4@ 5@ 6@ radius 1.5 1.5 1.5 handle_as 0@
если надо скрипт скину
Ну ясно, ты его не создаёшь, а берёшь из окружения, всё понятно. Попробуй создать по туториалу: загрузка модели, проверка на загруженность и создание. Тогда он шевелиться не должен по идее.
ILdar07 мне вот нужно чтобы именно из окружения брало)идея скрипта такова подходш к прохожему нажимаеш клавишу приезжает смоук и съедает его голову,поэтому мне нужно из окружения,ну я смог решить эту проблему сделал просто чтобы смоук догонял этого прохожего бегом.Всем кто помогал спасибо
подходш к прохожему нажимаеш клавишу приезжает смоук и съедает его голову
Хорошая фантазия у тебя!
Люди! Помогите нубу!)) Я только-только начинаю разбираться с клео. Решил написать скрипт выключения радио по клавише и обратное включение по той же клавише:
0000: NOP
thread 'radio'
:radio_21
wait 10
if
Player.Defined($PLAYER_CHAR)
Actor.Driving($PLAYER_ACTOR)
else_jump @radio_21
jump @radio_48
:radio_48
wait 50
051E: 1@ = get_current_radio_station
if and
0AB0: key_pressed 88
else_jump @radio_48
jump @radio_144
:radio_144
wait 10
041E: set_radio_station 12
else_jump @radio_48
jump @radio_168
:radio_168
wait 50
0AB0: key_pressed 88
else_jump @radio_168
jump @radio_192
:radio_192
wait 10
041E: set_radio_station 1@
else_jump @radio_168
jump @radio_21
Что то получается, но не совсем то. Подскажите, чего не хватает, а что нужно убрать. Заранее благодарю!
{$CLEO .cs}
//-------------MAIN---------------
0@ = 0
:radio_21
wait 10
if and
Player.Defined($PLAYER_CHAR)
Actor.Driving($PLAYER_ACTOR)
else_jump @radio_21
jump @radio_48
:radio_48
wait 50
051E: 1@ = get_current_radio_station
if and
0@ == 0
0AB0: key_pressed 88
else_jump @radio_168
jump @radio_144
:radio_144
wait 10
041E: set_radio_station 12
0@ = 1
jump @radio_168
:radio_168
wait 50
if and
0@ == 1
0AB0: key_pressed 88
else_jump @radio_48
jump @radio_192
:radio_192
wait 10
041E: set_radio_station 1@
0@ = 0
jump @radio_21
ILdar07 благодарю за помощь! Но судя по всему тут тоже не тот результат, который нужен. Суть состоит в том, что допустим запущена какая нибудь радиостанция, и по нажатию X радио отключается, повторное нажатие - запускается та станция, которая была до отключения (а-ля ГТА 4).
:radio_48
wait 50
if and
0@ == 0
0AB0: key_pressed 88
else_jump @radio_168
jump @radio_144
:radio_144
wait 10
051E: 1@ = get_current_radio_station
041E: set_radio_station 12
0@ = 1
jump @radio_168
Эх, получается, да опять не совсем то. В общем ладно, попробую еще... Так что всё равно благодарю, ILdar07, за помощь.
Для полной красоты вот так=)
{$CLEO}
0000:
while true
wait 0
if Player.Defined($PLAYER_CHAR)
jf continue
if Actor.Driving($PLAYER_ACTOR)
jf continue
if 0AB0: key_pressed 88
jf continue
051E: 0@ = get_current_radio_station
while 0AB0: key_pressed 88
wait 0
end
041E: set_radio_station 12
while true
wait 0
if not Player.Defined($PLAYER_CHAR)
then
break
end
if not Actor.Driving($PLAYER_ACTOR)
then
break
end
if 0AB0: key_pressed 88
then
while 0AB0: key_pressed 88
wait 0
end
041E: set_radio_station 0@
break
end
end
0B12: 0@ = 0@ XOR 0@
end
Жаль пробелы стираются, претензии не ко мне=(
Кстати я такое делал в своём моде GTA IV radio-HUD=)
Хм, нажимаю на X - радио выключается, повторное же нажатие приводит к вылету игры. Но тем не менее благодарю за помощь! И ещё: можно ли по подробней насчет мода?
Убери это 0B12: 0@ = 0@ XOR 0@, у тебя вероятно не клео4.
И ещё: можно ли по подробней насчет мода?
Ммм ну знаешь в гта4 такая хигня, когда переключаешь радио, сверху иконки крутятся.
У меня как раз-таки клео 4))
А, это, как так сделать чтоб вместо надписи иконки были? Тоже скриптом? Хотя, тупой вопрос, конечно))
Задумал написать миссии в main.scm. В моей первой миссии сначала показывается игрок и текст от его лица, затем можно взять миссию в маркере, потом название миссии-сесть на байк-приехать к бару. После того, как игрок садится на байк, ничего не происходит! Я уже попробовал вписать jump - то же самое. Вот раскомпилированный код миссии, до компиляции он выглядел совсем иначе.
После строки Mission0 и до конца:
:MYTRIGGER_314
gosub @MYTRIGGER_350
if
wasted_or_busted
else_jump @MYTRIGGER_341
gosub @MYTRIGGER_641
:MYTRIGGER_341
gosub @MYTRIGGER_676
end_thread
:MYTRIGGER_350
increment_mission_attempts
$ONMISSION = 1
Player.ClearWantedLevel($PLAYER_CHAR)
fade 0 500
Model.Load(#FREEWAY)
:MYTRIGGER_376
not Model.Available(#FREEWAY)
else_jump @MYTRIGGER_399
wait 0
jump @MYTRIGGER_376
:MYTRIGGER_399
1@ = Car.Create(#FREEWAY, -2703.964, 817.1313, 49.561)
0229: set_car 1@ primary_color_to 28 secondary_color_to 29
7@ = Marker.CreateAboveCar(1@)
07E0: set_marker 7@ type_to 1
wait 500
fade 1 500
:MYTRIGGER_458
not Actor.InCar($PLAYER_ACTOR, 1@)
else_jump @MYTRIGGER_484
wait 0
jump @MYTRIGGER_458
:MYTRIGGER_484
Marker.Disable(7@)
6@ = Marker.CreateIconAndSphere(1, -2276.867, -119.2239, 35.3203)
jump @MYTRIGGER_511
:MYTRIGGER_511
wait 0
if
0103: actor $PLAYER_ACTOR in_sphere -2276.867 -119.2239 35.3203 radius 4.0 4.0 6.0 sphere 0 stopped_in_car
else_jump @MYTRIGGER_570
jump @MYTRIGGER_601
:MYTRIGGER_570
jump @MYTRIGGER_511
:MYTRIGGER_577
wait 0
if
wasted_or_busted
else_jump @MYTRIGGER_577
jump @MYTRIGGER_641
:MYTRIGGER_601
wait 0
01E3: show_text_1number_styled GXT 'M_PASS' number 0 time 5000 style 4 // MISSION PASSED!~n~~w~$~1~
Player.ClearWantedLevel($PLAYER_CHAR)
0394: play_music 1
gosub @MYTRIGGER_341
return
:MYTRIGGER_641
00BA: show_text_styled GXT 'M_FAIL' time 5000 style 1 // ~r~MISSION FAILED!
$ONMISSION = 0
mission_cleanup
create_thread @MYTRIGGER
return
:MYTRIGGER_676
$ONMISSION = 0
mission_cleanup
return
:MYTRIGGER_458
if
not Actor.InCar($PLAYER_ACTOR, 1@)
else_jump @MYTRIGGER_484
wait 0
jump @MYTRIGGER_458
Не помогает. Вообще-то слово not заменяет if, так что его добавление ничего не изменяет.
Вот это
:MYTRIGGER_458
not Actor.InCar($PLAYER_ACTOR, 1@)
else_jump @MYTRIGGER_484
wait 0
jump @MYTRIGGER_458
:MYTRIGGER_484
Marker.Disable(7@)
6@ = Marker.CreateIconAndSphere(1, -2276.867, -119.2239, 35.3203)
jump @MYTRIGGER_511
Заменить на это
:MYTRIGGER_458
wait 0
if Actor.InCar($PLAYER_ACTOR, 1@)
jf @MYTRIGGER_458
Marker.Disable(7@)
0570: 6@ = create_asset_radar_marker_with_icon 1 at -2276.867, -119.2239, 35.3203
jump @MYTRIGGER_511
--EDIT--
Начиная с метки MYTRIGGER_458, и до метки :MYTRIGGER_601 поставить это
:MYTRIGGER_458
wait 0
if Actor.InCar($PLAYER_ACTOR, 1@)
jf @MYTRIGGER_458
Marker.Disable(7@)
02A8: 6@ = create_asset_radar_marker_with_icon 10 at -2276.867, -119.2239, 35.3203 49.8281
while 8103: not actor $PLAYER_ACTOR in_sphere -2276.867, -119.2239, 35.3203 radius 4.0 4.0 6.0 sphere 1 stopped_in_car
wait 0
end
Marker.Disable(6@)
Здрасте ещё раз. Так вот значит, решил ещё один скрипт написать:
thread 'ADRENALIN'
:ADRENALIN_19
wait 0
04ED: load_animation "SMOKING"
:ADRENALIN_50
wait 0
if and
Player.Defined($PLAYER_CHAR)
not Actor.Driving($PLAYER_ACTOR)
8184: not actor $PLAYER_ACTOR health >= 21
04EE: animation "SMOKING" loaded
0AB0: key_pressed 84
else_jump @ADRENALIN_50
jump @ADRENALIN_96
:ADRENALIN_96
wait 0
0605: actor $PLAYER_ACTOR perform_animation_sequence "M_SMKSTND_LOOP" IFP_file "SMOKING" 4.0 loop 0 0 0 0 time -1 // versionA
wait 5000
0@ = Actor.Health($PLAYER_ACTOR)
0@ -= 20
Actor.Health($PLAYER_ACTOR) = 0@
Player.InfiniteRun($PLAYER_CHAR) = True
Player.SetDrunkVisuals($PLAYER_CHAR, 50)
0169: set_fade_color_RGB 200 10 0
fade 0 1000
wait 1000
fade 1 1000
015D: set_gamespeed 0.8
04EF: release_animation "SMOKING"
jump @ADRENALIN_239
:ADRENALIN_239
wait 50000
Player.InfiniteRun($PLAYER_CHAR) = False
Player.SetDrunkVisuals($PLAYER_CHAR, 0)
015D: set_gamespeed 1.0
jump @ADRENALIN_19
Суть скрипта: при нажатии на T Карл типа глотает таблетку с адреналином, экран краснеет, камера шатается, и бег бесконечен, а также отнимается 20 пунктов здоровья. После окончания скрипта всё возвращается на круги своя... кроме здоровья.
Проблема: скрипт должен работать, если только у Карла здоровья достаточно, чтоб принять таблетку. То есть если таблетка отнимает 20 пунктов, то у Карла должно быть 21 или больше, иначе будет баг.
Я всяко пытался, но получается наоборот: скрипт работает только тогда, когда у Карла меньше или ровно 21 здоровья.
2Sanchez Ramirez
Понятное дело, ты ведь ставишь проверку, меньше ли здоровья у игрока. Т.е,
Это
8184: not actor $PLAYER_ACTOR health >= 21
Заменить на это
0184: actor $PLAYER_ACTOR health >= 21
Условие Player.Defined($PLAYER_CHAR) лучше написать отдельно от остальных. И ещё. Вот эти строчки
-----------------------------
jump @ADRENALIN_96
:ADRENALIN_96
-----------------------------
Можно смело убрать. То есть, примерно так можно записать:
-----------------------------
:ADRENALIN_50
wait 0
if Player.Defined($PLAYER_CHAR)
jf @ADRENALIN_50
if and
not Actor.Driving($PLAYER_ACTOR)
0184: actor $PLAYER_ACTOR health >= 21
04EE: animation "SMOKING" loaded
0AB0: key_pressed 84
jf @ADRENALIN_50
0605: actor $PLAYER_ACTOR perform_animation_sequence "M_SMKSTND_LOOP" IFP_file "SMOKING" 4.0 loop 0 0 0 0 time -1 // versionA
...
-----------------------------
Всё равно не робит. Насчёт 8184: not actor $PLAYER_ACTOR health >= 21. Я писал так, убирал not, но результат один и тот же. То есть всяко-разно писал, а результата - 0. Всё равно работает только когда меньше или ровно 21.
У меня всё работает.
--------------------------------------
{$CLEO}
thread 'ADRENALIN'
:ADRENALIN_19
wait 0
04ED: load_animation "SMOKING"
:ADRENALIN_50
wait 0
if Player.Defined($PLAYER_CHAR)
jf @ADRENALIN_50
if and
not Actor.Driving($PLAYER_ACTOR)
0184: actor $PLAYER_ACTOR health >= 21
04EE: animation "SMOKING" loaded
0AB0: key_pressed 84
jf @ADRENALIN_50
0605: actor $PLAYER_ACTOR perform_animation_sequence "M_SMKSTND_LOOP" IFP_file "SMOKING" 4.0 loop 0 0 0 0 time -1
wait 5000
0@ = Actor.Health($PLAYER_ACTOR)
0@ -= 20
Actor.Health($PLAYER_ACTOR) = 0@
Player.InfiniteRun($PLAYER_CHAR) = True
Player.SetDrunkVisuals($PLAYER_CHAR, 50)
0169: set_fade_color_RGB 200 10 0
fade 0 1000
wait 1000
fade 1 1000
015D: set_gamespeed 0.8
04EF: release_animation "SMOKING"
wait 50000
Player.InfiniteRun($PLAYER_CHAR) = False
Player.SetDrunkVisuals($PLAYER_CHAR, 0)
015D: set_gamespeed 1.0
jump @ADRENALIN_19
--------------------------------------------------
О! Терь робит как часы! Респект тебе! А вот ещё что: есть ли какой то опкод/параметр чтобы "Motion Blur" включить?
Можно через память, но у меня этих адрессов нигде нету записанных.
А вот ещё: подскажите пжлст, как заставить педа выполнить анимацию? Вот я подошёл к нему, нажал кнопку - он должен выполнить анимацию, но не выполняет. Я писал вот как:
..........
0A3E: unknown_get_actor_in_sphere 4@ 5@ 6@ radius 1.5 1.5 1.5 handle_as $BUY
if
Actor.Defined($BUY)
..........
if or
Actor.Model($BUY) == #WMYDRUG
Actor.Model($BUY) == #BMYDRUG
..........
0605: actor $BUY perform_animation_sequence "DRUGS_BUY" IFP_file "GANGS" 4.0 loop 0 0 0 0 time -1
..........
$BUY - барыга.
DRUGS_BUY - это типа он наркоту даёт.
Любой IFP-файл, кроме "PED", надо предварительно загружать опкодом 04ED, проверять – 04EE, выгружать – 04EF.
Ааааааа)) Ясно! Чё-то я тупанул конкретно))) Ну просто я пока не очень разбираюсь во всех этих тонкостях)) Только так, в общих чертах.
Итак, предлагаю чуть оживить тему!)) У меня, значит, снова вопрос:
Я заспавнил чела, под мостом у дома CJ'я:
actor.Create($SELLER,4,#WMYDRUG,2433.426,-1678.631,13.74978)
Actor.SetImmunities($SELLER, 1, 1, 1, 1, 1) - тут всё в порядке
Теперь мне нужно, чтобы когда я к нему подхожу (ИМЕННО К НЕМУ!), по нажатию кнопки происходила анимация (АНИМАЦИЯ ЧЕЛА, А НЕ CJ'я), к примеру. Так как мне сделать, чтоб это распространялось только к этому челу и чтоб вообще работало? А то я пробовал всяко, но либо его под мостом нет, либо нажатие кнопки не работает, либо вообще начинаются дикие тормоза. Я уже запутался что после чего должно быть.
{$CLEO}
thread "BUY"
:BUY_2
wait 0
model.Load(#WMYDRUG)
038B: load_requested_models
04ED: load_animation "SMOKING"
04ED: load_animation "GANGS"
:BUY_4
wait 0
if
Player.Defined($PLAYER_CHAR)
jf @BUY_4
if and
model.Available(#WMYDRUG)
04EE: animation "GANGS" loaded
jf @BUY_4
Actor.StorePos($PLAYER_ACTOR, 4@, 5@, 6@)
0A3E: unknown_get_actor_in_sphere 4@ 5@ 6@ radius 1.0 1.0 1.0 handle_as $SELLER
if
Actor.Defined($SELLER)
else_jump @BUY_8
actor.Create($SELLER,17,#WMYDRUG,2433.426,-1678.631,13.74978)
Actor.SetImmunities($SELLER, 1, 1, 1, 1, 1)
if
0AB0: key_pressed 66
jf @BUY_4
0605: actor $PLAYER_ACTOR perform_animation_sequence "DEALER_DEAL" IFP_file "GANGS" 4.0 loop 0 0 0 0 time -1
wait 1000
Player.Money($PLAYER_CHAR) += -300
04EF: release_animation "GANGS"
jump @BUY_6
:BUY_6
wait 0
if
Player.Defined($PLAYER_CHAR)
jf @BUY_6
if and
not Actor.Dead($PLAYER_ACTOR)
not Actor.Driving($PLAYER_ACTOR)
0184: actor $PLAYER_ACTOR health >= 20
04EE: animation "SMOKING" loaded
0AB0: key_pressed 84
jf @BUY_6
0605: actor $PLAYER_ACTOR perform_animation_sequence "M_SMKSTND_LOOP" IFP_file "SMOKING" 4.0 loop 0 0 0 0 time -1
wait 5000
0@ = Actor.Health($PLAYER_ACTOR)
0@ -= 20
Actor.Health($PLAYER_ACTOR) = 0@
Player.InfiniteRun($PLAYER_CHAR) = True
0169: set_fade_color_RGB 0 0 0
fade 0 1000
wait 1000
fade 1 1000
08B2: enable_thermal_vision 1
015D: set_gamespeed 0.8
04EF: release_animation "SMOKING"
wait 25000
Player.InfiniteRun($PLAYER_CHAR) = False
0169: set_fade_color_RGB 255 255 255
fade 0 1000
wait 1000
fade 1 1000
08B2: enable_thermal_vision 0
015D: set_gamespeed 1.0
jump @BUY_2
:BUY_8
wait 0
Actor.RemoveReferences($SELLER)
jump @BUY_2
Суть: подходишь к челу под мостом, жмёшь B, деньги -300, теперь вторая часть скрипта - использование таблетки с адреналином)) Ну эта часть функционирует на ура, а вот первая...
Сначала ты берёшь из окружения случайного педа и называешь его $SELLER. Далее ты создаёшь актёра под тем же именем. Зачем? Или бери случайного, или создавай нового, к тому же имя одинаковое. Потом проверка на нажатие клавиши. Если не нажата, то скрипт прыгает почти на самое начало и опять идёт то же самое: получение педа, создание тёзки-актёра (причём старый, уже созданный, ещё в памяти). Вот отсюда тормоза: игра создаёт в одной точке кучу человеков. Поэтому следует разделить поток:
Actor.SetImmunities($SELLER, 1, 1, 1, 1, 1)
:BUY_5
wait 0
if
0AB0: key_pressed 66
jf @BUY_5
Ну поэтому я и говорю, что запутался. И поэтому спрашиваю: как мне сделать, чтоб использовался не случайный пед из окружения, а именно тот, который под мостом? А насчёт тормозов эт я понял, просто их там бесконечное кол-во появляется. В общем ладно, ща попробую.
Чтоб использовался не случайный пед из окружения, а именно тот, который под мостом, не надо писать опкод 0A3E, а надо создавать нового актёра под мостом и его использовать (в 0605 писать не $PLAYER_ACTOR, а $SELLER).
Именно это я и хочу узнать (как использовать определённого), просто не могу представить, как это будет выглядеть. А насчёт 0605, так это я анимацию для игрока сделал, так, для проверки, а анимация чела позже будет. И мне нужно чтобы я подходил к нему, допустим на расстоянии полметра и только тогд можно было бы нажимать клавишу.
Если у тебя слабое воображение, в скриптинге будет сложно.
if and
00F3: actor $PLAYER_ACTOR near_actor $SELLER radius 1.5 1.5 0 on_foot
0AB0: key_pressed 66
jf @BUY_5
Ещё где-то слышал, что CLEO не любит глобальные переменные. Т.е. вместо $SELLER лучше писать 1@, к примеру. Но если работает, всё нормально.
Не, воображение не то что слабое, просто я НЕ ЗНАЮ ЕЩЁ всех этих опкодов и тд., а насчёт переменных - всё робит, нет необходимости переименовывать.
А кстати, реально ли сделать так, чтоб когда игрок берёт бронежилет, он был на нём (одет как бы)?
Sanchez Ramirez
если есть модель броника, то можно ее напялить на определенное место на игроке, хоть на голову, только была бы и все.
Эээм, в смысле если заменить броник на какой нить предмет/одежу?
в смысле если заменить броник на какой нить предмет/одежу?
Смысл в том, что ты заходишь в какой-нибудь магазин одежды, и покупаешь бронежилет там.
нет. смысл в том чтобы использовать модель оружия (броника) в качестве объекта, который прикрепляется и телу игрока. надо сначала проверить, что уровень брони больше 0, а потом создавать объект и цеплять его
Ну так это я понял, просто я не знаю как именно модель броника прилепить к плееру.
А не проще через одежду?
Player.SetClothes($PLAYER_CHAR, "VEST", "VEST", Torso)
Первый "VEST" – название текстуры из player.img, второй – модель оттуда же. Можно, наверно, похимичить с текстурой какой-нибудь майки или куртки, сделать как бронежилет. Но это уже не скриптинг.
Ну я так и думал в общем то. Ладно, попробую чё нить сделать.
как сделать скрипт чтобы можно было использовать укрытия и стрелять из них (как в gta 4)??? Можно ли сделать чтобы казино 4 дракона приносило прибыль после прохождения всех миссий за триад, возможность купить клуб Джиззи?
sneake можно прибыль сделать легко. сначала проверить статистику и глянуть, пройдена ли опр. миссия, если да, создать пикап с деньгами.
стрельба из укрытия. можно проверить, есть ли между координатами игрока и определенными координатами какие-либо объекты, а потом анимация и стрельба (игрок не сможет сам выбирать куда стрелять наврно, но можно сделать вылет пули в опр. коорд.)
клуб. да, можно создать пикап, проверить, поднят ли он и нажата клавиша "действие" и тогда забирать деньги, выводить текст "куплено" и создавать припаркованные машины, оружие и т.д.
Снова всем привет! Назрел у меня вопрос, снова:
{$CLEO .cs}
thread 'nitro'
:nitro_4
wait 0
if
Player.Defined($PLAYER_CHAR)
jf @nitro_4
if
Actor.Driving($PLAYER_ACTOR)
jf @nitro_4
if
Actor.DrivingVehicleType($PLAYER_ACTOR, #BULLET)
jf @nitro_4
03CF: load_wav 45400 as 1
03C0: 0@ = actor $PLAYER_ACTOR car
02E3: 1@ = car 0@ speed
if and
00E1: key_pressed 0 14
00E1: key_pressed 0 16
1@ == 0
03D0: wav 1 loaded
jf @nitro_4
jump @nitro_25
:nitro_25
wait 0
03D1: play_wav 1
if
80E1: not player 0 pressed_key 14
jf @nitro_25
wait 10
01EC: make_car 0@ very_heavy 1
040D: unload_wav 1
04BA: set_car 0@ speed_to 30.0
066C: 2@ = attach_particle "explosion_molotov" to_car 0@ with_offset 0.0 -2.8 0.0 rotation 0.0 1.0 0.0 flag 1
066C: 3@ = attach_particle "explosion_tiny" to_car 0@ with_offset 0.0 -2.8 0.0 rotation 0.0 0.0 0.0 flag 1
066C: 4@ = attach_particle "fire" to_car 0@ with_offset 0.8 -2.7 -0.5 rotation 0.0 1.0 0.0 flag 1
066C: 5@ = attach_particle "fire" to_car 0@ with_offset -0.8 -2.7 -0.5 rotation 0.0 1.0 0.0 flag 1
064C: make_particle 2@ visible
064C: make_particle 3@ visible
064C: make_particle 4@ visible
064C: make_particle 5@ visible
wait 1000
0650: destroy_particle 2@
0650: destroy_particle 3@
wait 1000
0650: destroy_particle 4@
0650: destroy_particle 5@
01EC: make_car 0@ very_heavy 0
jump @nitro_4
Суть: сидя в тачке bullet, игрок жмёт газ и тормоз одновременно, тормоз отпускается и у тачки из под колёс идёт огонёк, а сама тача разгоняется на приличную скорость.
Что требуется: я хочу сделать так, чтобы газ и тормоз надо было держать 3 секунды, т.е. если держишь 1 секунду - всё начинается по новой до тех пор, пока не продержишь 3 секунды. Но у меня не получается ни как.
Жду совета =)
Переменные 32@ и 33@ - таймеры.
32@ с отсчётом вперёд, 33@ - с обратным отсчётом.
Когда будут нажаты клавиши, обнули (другим словом, "включи") таймер. Потом в цикле делай проверки - нажаты ли до сих пор клавиши, и дошёл ли таймер до отметки в 3000 мс. Также в этом цикле желательно сделать проверку на существ. игрока (а вдруг что-то приключится).
if and
00E1: key_pressed 0 14
00E1: key_pressed 0 16
then
32@ = 0 //Обнуляем
while true // Цикл
wait 0
if or
80E1: NOT key_pressed 0 14
80E1: NOT key_pressed 0 16
then
jump @OTPUSTIL
end
if not Player.Defined($Player_Char)
then
jump @WTF
end
if 32@ > 3000
then
jump @VSE_OK
end
end // while
end // if and
:WTF
//Игрок не найден
:OTPUSTIL
//Играющий не продержал клавиши 3 секунды
:VSE_OK
//Играющий продержал клавиши на протяжении 3 секунд.
Хм, как только залезаю в машину - сразу срабатывает. Я так понял: если Игрок не найден, то возвращаемся в начало (т.е. :nitro_4), если Играющий не продержал клавиши 3 секунды, то тоже в начало, если Играющий продержал клавиши на протяжении 3 секунд, то переходим к :nitro_25. Так?
Потесть=)
{$CLEO .cs}
thread 'nitro'
:nitro_4
wait 0
if Player.Defined($PLAYER_CHAR)
jf @nitro_4
if Actor.Driving($PLAYER_ACTOR)
jf @nitro_4
if Actor.DrivingVehicleType($PLAYER_ACTOR, #BULLET)
jf @nitro_4
03CF: load_wav 45400 as 1
03C0: 0@ = actor $PLAYER_ACTOR car
02E3: 1@ = car 0@ speed
if and
00E1: key_pressed 0 14
00E1: key_pressed 0 16
1@ == 0
jf @nitro_4
while 83D0: NOT wav 1 loaded
wait 0
end
32@ = 0
while true
wait 0
if NOT Player.Defined($Player_Char)
then
jump @RELEASE
end
if or
NOT Car.Defined(0@)
80E1: NOT key_pressed 0 14
80E1: NOT key_pressed 0 16
then
jump @RELEASE
end
if 32@ > 3000
then
jump @nitro_25
end
end
:nitro_25
03D1: play_wav 1
wait 10
01EC: make_car 0@ very_heavy 1
04BA: set_car 0@ speed_to 30.0
066C: 2@ = attach_particle "explosion_molotov" to_car 0@ with_offset 0.0 -2.8 0.0 rotation 0.0 1.0 0.0 flag 1
066C: 3@ = attach_particle "explosion_tiny" to_car 0@ with_offset 0.0 -2.8 0.0 rotation 0.0 0.0 0.0 flag 1
066C: 4@ = attach_particle "fire" to_car 0@ with_offset 0.8 -2.7 -0.5 rotation 0.0 1.0 0.0 flag 1
066C: 5@ = attach_particle "fire" to_car 0@ with_offset -0.8 -2.7 -0.5 rotation 0.0 1.0 0.0 flag 1
064C: make_particle 2@ visible
064C: make_particle 3@ visible
064C: make_particle 4@ visible
064C: make_particle 5@ visible
wait 1000
0650: destroy_particle 2@
0650: destroy_particle 3@
wait 1000
0650: destroy_particle 4@
0650: destroy_particle 5@
01EC: make_car 0@ very_heavy 0
:RELEASE
040D: unload_wav 1
Car.RemoveReferences(0@)
jump @nitro_4
Вроде всё робит =) Благодарю за помощь, иначе я бы не справился сам, по крайней мере пока что.
Скажите пожалуйста! Как можно сделать скрипт чтобы если прохожий ударил кого-нибудь из гангстеров в банде, чтобы они не убегали от него а убили.
А то тупо они вооружены, обычный чел ударил они убегают.
преступник, они просто боятся копов:) Можно скрипт но проще прописать через ped.dat.
Господа скриптеры, срочно прошу вашей помощи, у меня тут заминка с CLEO миссией.
Начинается миссия, и идут одни ролики, без всяких поездок на маркер, но это ведь есть в скрипте! Потом игрок падает (понятно, это из-за интерьера, это ладно, потом надо подредактировать), потом игра возобновляется и надо убить Райдера и Смоука, и все. Потом миссия начинается снова!
Стартер миссии (.cs):
{$CLEO .cs}
//-------------MAIN---------------
thread "MISSION_STARTER"
wait 0
1@ = Marker.CreateIconAndSphere(15, 927.9838, -1063.212, 24.2891)
:MISSION_STARTER_45
wait 250
if and
Player.Defined($PLAYER_CHAR)
0102: actor $PLAYER_ACTOR in_sphere 927.9838 -1063.212 24.2891 radius 2.0 2.0 1.0 sphere 1 stopped_on_foot
jf @MISSION_STARTER_45
Marker.Disable(1@)
00BA: text_styled 'MIS_NAME' 1000 ms 2
0A94: start_custom_mission "MOMS"
$ONMISSION = 1
:MISSION_STARTER_117
wait 0
if
$ONMISSION == 0
jf @MISSION_STARTER_117
0A93: end_custom_thread
Миссия (.cm):
{$CLEO .cm}
//-------------MAIN---------------
thread 'MOMS'
increment_mission_attempts
$ONMISSION = 1
gosub @MOMS_64
if
wasted_or_busted
jf @MOMS_55
gosub @MOMS_444
:MOMS_55
gosub @MOMS_490
0A93: end_custom_thread
:MOMS_64
increment_mission_attempts
$ONMISSION = 1
Player.ClearWantedLevel($PLAYER_CHAR)
wait 0
fade 0 500
Model.Load(#BFORI)
Model.Load(#FAM1)
Model.Load(#AK47)
Model.Load(#BALLAS1)
Model.Load(#MAJESTIC)
023C: request_special_actor 'SMOKEV' as 1
023C: request_special_actor 'RYDER2' as 2
038B: load_requested_models
:MOMS_MISSION
wait 0
if and
Player.Defined($PLAYER_CHAR)
Model.Available(#BFORI)
jf @MOMS_MISSION
09C7: change_player $PLAYER_CHAR model_to #BFORI
Player.Build($PLAYER_CHAR)
actor.PutAt($PLAYER_ACTOR, 932.7957, -1057.7502, 24.7584)
fade 1 1100
02A3: enable_widescreen 1
Player.CanMove($PLAYER_CHAR) = False
Camera.SetPosition(929.7402, -1060.5007, 24.3759, 0.0, 0.0, 0.0)
Camera.OnPed($PLAYER_ACTOR, 15, 2)
00BC: show_text_highpriority GXT 'MOMS_1' time 3000 flag 1
wait 3000
02A3: enable_widescreen 0
Camera.Restore_WithJumpCut
Player.CanMove($PLAYER_CHAR) = True
02A8: 6@ = create_marker 0 at 2492.5503 -1683.4075 13.3375
Marker.SetIconSize(6@, 3)
00BC: show_text_highpriority GXT 'MOMS_2' time 3000 flag 1
jump @MOMS_MISSION2
:MOMS_MISSION2
8103: not actor $PLAYER_ACTOR in_sphere 2492.5503 -1683.4075 13.3375 radius 4.0 4.0 6.0 sphere 1 stopped_on_foot
jf @MOMS_MISSION2
Marker.Disable(6@)
02A8: 7@ = create_marker 0 at 2493.2463 -1701.9479 1014.7424
Marker.SetIconSize(7@, 3)
00BC: show_text_highpriority GXT 'MOMS_3' time 3000 flag 1
jump @MOMS_MISSION3
:MOMS_MISSION3
8103: not actor $PLAYER_ACTOR in_sphere 2493.2463 -1701.9479 1014.7424 radius 4.0 4.0 6.0 sphere 1 stopped_on_foot
jf @MOMS_MISSION3
Marker.Disable(7@)
02A3: enable_widescreen 1
Player.CanMove($PLAYER_CHAR) = False
Camera.SetPosition(2492.741, -1701.9777, 1014.7521, 0.0, 0.0, 0.0)
Camera.PointAt(2492.0454, -1702.019, 1014.7654, 1)
00BC: show_text_highpriority GXT 'MOMS_4' time 3000 flag 1
wait 3000
02A3: enable_widescreen 0
Camera.Restore_WithJumpCut
Player.CanMove($PLAYER_CHAR) = True
jump @MOMS_MISSION4
:MOMS_MISSION4
wait 0
if and
Model.Available(#FAM1)
Model.Available(#BALLAS1)
Model.Available(#MAJESTIC)
jf @MOMS_MISSION4
actor.create(16@,8,#FAM1,2456.53, -1655.0756, 13.3047)
01B2: give_actor 16@ weapon 30 ammo 2000
actor.create(17@,7,#BALLAS1,2457.0996, -1658.8373, 13.3047)
actor.Dead(17@)
car.Create(20@,#MAJESTIC, 2451.8899, -1662.7943, 13.3047)
car.Angle(20@) = 180.0
02A8: 8@ = create_marker 0 at 2494.5471 -1686.0857 13.5128
Marker.SetIconSize(8@, 3)
00BC: show_text_highpriority GXT 'MOMS_5' time 3000 flag 1
jump @MOMS_MISSION5
:MOMS_MISSION5
8103: not actor $PLAYER_ACTOR in_sphere 2494.5471 -1686.0857 13.5128 radius 4.0 4.0 6.0 sphere 1 stopped_on_foot
jf @MOMS_MISSION5
Marker.Disable(8@)
02A3: enable_widescreen 1
Player.CanMove($PLAYER_CHAR) = False
Camera.SetPosition(2464.6309, -1659.0415, 13.2957, 0.0, 0.0, 0.0)
00BC: show_text_highpriority GXT 'MOMS_6' time 3000 flag 1
wait 3000
02A3: enable_widescreen 0
Camera.Restore_WithJumpCut
Player.CanMove($PLAYER_CHAR) = True
jump @MOMS_MISSION6
:MOMS_MISSION6
wait 0
if
Model.Available(#AK47)
jf @MOMS_MISSION6
032B: 30@ = create_weapon_pickup #AK47 type 15 ammo 200 at 2457.0996 -1658.8373 13.3047
02A8: 24@ = create_marker 0 at 936.0135 -1103.7766 24.3054
Marker.SetIconSize(24@, 3)
00BC: show_text_highpriority GXT 'MOMS_7' time 3000 flag 1
jump @MOMS_MISSION7
:MOMS_MISSION7
8103: not actor $PLAYER_ACTOR in_sphere 936.0135 -1103.7766 24.3054 radius 4.0 4.0 6.0 sphere 1 stopped_on_foot
jf @MOMS_MISSION7
Marker.Disable(24@)
jump @MOMS_MISSION8
:MOMS_MISSION8
wait 0
if and
023D: special_actor 1 loaded
023D: special_actor 2 loaded
jf @MOMS_MISSION8
actor.create(40@,mission1, #special01, 902.9046, -1078.7025, 24.2969)
actor.create(41@,mission1, #special02, 902.8586, -1086.0817, 24.2969)
01B2: give_actor 40@ weapon 30 ammo 2000
01B2: give_actor 41@ weapon 30 ammo 2000
wait 500
05E2: AS_actor 40@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 41@ kill_actor $PLAYER_ACTOR
00BC: show_text_highpriority GXT 'MOMS_8' time 3000 flag 1
jump @MOMS_MISSION9
:MOMS_MISSION9
wait 0
if and
actor.Dead(40@)
actor.Dead(41@)
jf @MOMS_MISSION9
09C7: change_player $PLAYER_CHAR model_to #NULL
Player.Build($PLAYER_CHAR)
Model.Destroy(#BFORI)
actor.PutAt($PLAYER_ACTOR, 2494.8694, -1703.6049, 1018.3438)
02A3: enable_widescreen 1
Player.CanMove($PLAYER_CHAR) = False
Camera.SetPosition(2492.4409, -1705.6853, 1018.3438, 0.0, 0.0, 0.0)
Camera.OnPed($PLAYER_ACTOR, 15, 2)
00BC: show_text_highpriority GXT 'CJ_WAKEUP' time 3000 flag 1
wait 3000
02A3: enable_widescreen 0
Camera.Restore_WithJumpCut
Player.CanMove($PLAYER_CHAR) = True
jump @MOMS_360
:MOMS_336
wait 0
if
wasted_or_busted
jf @MOMS_360
jump @MOMS_444
:MOMS_360
wait 0
01E3: show_text_1number_styled GXT 'M_PASSD' number 0 time 5000 style 4 // MNCCNR BSZOLHEHA!~n~~w~$~1~
Player.ClearWantedLevel($PLAYER_CHAR)
0394: play_music 1
Model.Destroy(#FAM1)
Model.Destroy(#BALLAS1)
Model.Destroy(#MAJESTIC)
mission_cleanup
return
:MOMS_444
00BA: show_text_styled GXT 'M_FAIL' time 5000 style 1 // ~r~MNCCNR ZPOBALEHA!
$ONMISSION = 0
Model.Destroy(#FAM1)
Model.Destroy(#BALLAS1)
Model.Destroy(#MAJESTIC)
mission_cleanup
return
:MOMS_490
$ONMISSION = 0
return
После :MOMS_MISSION2, :MOMS_MISSION3, :MOMS_MISSION5 и :MOMS_MISSION7 надо писать
wait 0
if
ILdar07, мне говорил опытный скриптер про not...,ну ок попробую так, обычным способом.
ped.dat? Я делал через опкод, но они начинают испытывать неприязнь к копам.Я не хочу чтобы они приставали к копам.Лучше скрипт.Пожалуйста помогите!
CraZZZy-GameRRR!Я 08-03.Просто логин теперь другой. Помоги сделать скрипт чтобы если прохожий ударил гангстеров чтобы они убили, а убегали от него.
Этот скрипт выбирает случайного прохожего.Я пробывал расставить по разному, но не вышло.Помоги всё расставить.Пожалуйста!
:Noname
wait 0
if and
06FF: any_ped_near_actor $PLAYER_ACTOR in_range 20.0 // радиус
Player.Defined($PLAYER_CHAR)
else_jump @Noname
0AB5: store_actor $PLAYER_ACTOR closest_vehicle_to -1 closest_ped_to 1@
if
not 1@ == -1
else_jump @Noname
Не знаю, как завершить мою CLEO миссию, при смерти игрока вылетает, помогите плиз (здесь только код провала, сама миссия выше):
:MOMS_444
wait 0
if
Player.Defined($PLAYER_CHAR)
jf @MOMS_444
jump @MOMS_511
:MOMS_511
wait 0
if
Actor.Dead($PLAYER_ACTOR)
jf @MOMS_511
gosub @FAIL
$ONMISSION = 0
mission_cleanup
end_thread
:FAIL
09C7: change_player $PLAYER_CHAR model_to #NULL
Player.Build($PLAYER_CHAR)
00BA: show_text_styled GXT 'M_FAIL' time 5000 style 1
01F0: set_max_wanted_level_to 6
Model.Destroy(#BFORI)
Model.Destroy(#FAM1)
Model.Destroy(#AK47)
Model.Destroy(#BALLAS1)
Model.Destroy(#MAJESTIC)
return
В миссиях обычно используют wasted_or_busted. Почему вылетает? Потому что после смерти игрок не сразу доступен для каких-либо действий над ним (к примеру, смена модели). Так что либо используй опкод 0112, либо после :FAIL надо поставить задержку wait. А текст о провале миссии перенести перед gosub @FAIL.
ILdar07! Ну помоги пожалуйста! У меня ни как скрипт не работает!Я не понимаю как всё расстановить!
Опкод 0AB5 это 1@ в конце любой прохожий?
:Noname
wait 0
if and
06FF: any_ped_near_actor $PLAYER_ACTOR in_range 20.0 // радиус
Player.Defined($PLAYER_CHAR)
else_jump @Noname
0AB5: store_actor $PLAYER_ACTOR closest_vehicle_to -1 closest_ped_to 1@
if
not 1@ == -1
else_jump @Noname
Да, в 1@ записывается любой случайный пед, потом проверка, «поймала» ли игра человека, если нет (1@ = -1), то скрипт прыгает в начало и всё заново.
Всем снова привет! Хочу узнать, можно ли написать в скрипте, что в данный момент на игрока наводятся ракеты? А точнее говоря есть ли такой опкод и тд.? Я хочу сделать так: когда игрок сидит в Гидре, и на него наводятся другие истребители или ПВО, то воспроизводится сигнал тревоги.
А зачем? По-моему, этот сигнал и так воспроизводится при запуске ракеты в игрока.
Нет, я не этот сигнал имел в виду. Хочу реальный звук запихнуть.
Тогда надо найти в аудиофайлах этот сигнал и заменить его реальным звуком. А это уже не скриптинг.
Скриптинг,FAQ по нему и все что к этому относится.
Не забывайте, что новый созданный вами скрипт требует новой игры
Кто может подробно объяснить, как делать гаражи перекраски и тюнинга..? плиз! очень надо!