Главная Форум Файлы
Справка Сообщество Календарь Сообщения за день Поиск

Вернуться   Mafia-Game Forum > Mafia: The City Of Lost Heaven > Скриптинг
Расширенный поиск

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 06.12.2018, 14:47   #1
El Padrino вне форума El Padrino
Аватар для El Padrino
Senior Member
Сообщений: 102
Репутация: 179
El Padrino has a spectacular aura about El Padrino has a spectacular aura about
Judge
Информация о репутации (El Padrino)
×
За активное участие в жизни форума и помощь пользователям вы можете получить очки репутации. За определённое количество очков репутации вам будет присвоенно соответствующее звание. Полученное звание всегда будет отображаться в нижней части области Вашего профиля, слева от сообщения.
Detective
0
Gangster
55
Thug
100
El Padrino / 179
Judge
159
Enforcer
260
Priest
396
Snitch
780
Hitman
800
Councilor
1200
Deputy
2501
Overseer
4896
Press
6020
Don
20000

Part - I

Скрипт регенерации (EgoR[SLM])

Если вы играли в Мафию2, то видели, что Вито имел способность регенерации здоровья, что здорово облегчало игру. Благодаря этому скрипту, регерация доступна и в Мафии 1. Строка wait 2000, это скорость регенерации, если его уменшьить, то скорость восстановления будет больше, если увеличить, то соответственно меньше.

dim_act 1
dim_flt 1
getactiveplayer 0

label regen
human_getproperty 0,0, Energy
if flt[0]<100, -1, regen
wait 2000\\скорость регенерации
human_getproperty 0,0, Energy
let flt[0]=flt[0]+1
human_setproperty 0,flt[0],Energy
goto regen
[свернуть]


Скрипт ожидания смерти сразу нескольких enemy (EgoR[SLM])

dim_act 6
dim_flt 1
findactor 0, "enemy00"
findactor 1, "enemy01"
findactor 2, "enemy02"
findactor 3, "enemy03"
findactor 4, "enemy04"
findactor 5, "enemy05"
label 101
human_getproperty 0, 0, Energy
if flt[0] = 0, -1, 101
human_getproperty 1, 0, Energy
if flt[0] = 0, -1, 101
human_getproperty 2, 0, Energy
if flt[0] = 0, -1, 101
human_getproperty 3, 0, Energy
if flt[0] = 0, -1, 101
human_getproperty 4, 0, Energy
if flt[0] = 0, -1, 101
human_getproperty 5, 0, Energy
if flt[0] = 0, -1, 101
label dead
....//далее - действие которое выполняет скрипт после смерти enemy00-05.
[свернуть]


Скрипт рандомных характеристик у enemy (EgoR[SLM])

dim_flt 2
dim_act 1

findactor 0, ""

rnd 0, 8
let flt[0]=flt[0]+1
goto flt[0]

label 1
\\хар-ка_1
goto script

label 2
\\хар-ка_2
goto script

label 3
\\хар-ка_3
goto script

label 4
\\хар-ка_4
goto script

label 5
\\хар-ка_5
goto script

label 6
\\хар-ка_6
goto script

label 7
\\хар-ка_7
goto script

label 8
\\хар-ка_8
label script
goto script
[свернуть]


Cкрипт отключения/включения city music (EgoR[SLM])

При игре в Гонку Без Правил (FREERIDE), порой хочется отключить всю городскую музыку, спокойно ходить, ездить на поездах и трамваях. Если вы из такого типа людей, то вам наверняка понравится этот скрипт. По нажатию кнопки дополнительного свистка,отключается городская музыка. При повторном нажатии - включается обратно

dim_flt 1
//по нажатию кнопки дополнительного свистка
//отключается\включается городская музыка
label 1
ctrl_read 0,HORN1
if flt[0]=1, -1, 1
citymusic_off
console_addtext 229
wait 300
goto 2
label 2
ctrl_read 0,HORN1
if flt[0]=1, -1, 2
citymusic_on
console_addtext 228
wait 300
goto 1
[свернуть]


Вид от первого лица (EgoR[SLM])

Скрипт для игры от первого лица. First Person mode включается/отключается на кнопку HORN1 ("дополнительный свист", но можно заменить.) Работает нормально только тогда, когда игрок без оружия, или в машине.

dim_act 1
dim_frm 2
dim_flt 1
findactor 0, "Tommy"
getactivecamera 0
findframe 1, "Tommy.neck"
//вид от первого лица везде (работает нормально только когда томми без оружия)
//и в машине
label 1
ctrl_read 0,HORN1
if flt[0]=1, -1, 1
camera_lock 1
frm_seton 1, 0
frm_linkto 0,1
console_addtext 222
wait 300
goto 2
label 2
ctrl_read 0,HORN1
if flt[0]=1, -1, 2
camera_unlock
console_addtext 229
wait 300
goto 1
[свернуть]


Скрипт спринта (EgoR[SLM])

По нажатию кнопки "MAP" ("КАРТА", но можно поменять), персонаж ускоряется в 3 раза, при этом, бег сопровождается вытягиванием экрана, что придает ощущение скорости. Спустя несколько секунд эффект проходит и нужно некоторое время (от 1 секунды до 13-15) чтобы персонаж отдохнул и снова мог использовать спринт.

dim_act 1
dim_flt 3
getactiveplayer 0

label 156
ctrl_read 0, MAP
if flt[0]=1, -1, 156
camera_getfov 1
human_setproperty 0, 300, Speed

label 124
commandblock 0
commandblock 1
let flt[1] = flt[1] + 0.5
camera_setfov flt[1]
if flt[1]>110, -1, 124

label 182
commandblock 0
commandblock 1
let flt[1] = flt[1] - 0.4
camera_setfov flt[1]
if flt[1]<75, -1, 182
commandblock 0
wait 100
human_setproperty 0, 100, Speed
rnd 2,99
let flt[2] = flt[2] * 120
wait flt[2]
goto 156
[свернуть]


Скрипт моментальной смерти от выстрела в голову (EgoR[SLM])

В оригинальной Мафии, была такая недоработка (а может быть и специально), что выстрел в голову практически из всех пистолетов не убивал врага. Благодаря этому скрипту, это исправлено. Иногда противнику сносит голову от выстрела, сопровождаясь фонтаном крови. Вписывать не в актора-противника, а в отдельный скрипт! Иначе работать не будет.

dim_act 1
dim_flt 10
dim_frm 1

findactor 0, "actor"
findframe 0, "actor.neck"

human_setproperty 0, 60000, ENERGY

frm_getscale 0, 2

let flt[2] = 0.000001
let flt[3] = 0.000001
let flt[4] = 0.000001

label 303
commandblock 0
commandblock 1
human_getactanimid 0, 1
if flt[1]=204, neck1, -1
human_getactanimid 0, 1
if flt[1]=205, neck2, -1
goto 303

//==========================
//Голова, спереди.

label neck1
human_setproperty 0, 0, ENERGY
rnd 5,10
//freeride_scoreset flt[5]
if flt[5]<3, -1, 402
frm_setscale 0, 2
emitparticle 0,40, 0

//==========================
//Голова, сзади

label neck2
human_setproperty 0, 0, ENERGY
rnd 5,10
//freeride_scoreset flt[5]
if flt[5]<3, -1, 402
frm_setscale 0, 2
emitparticle 0,40, 0
goto 1001

label 402
wait 5000
end
[свернуть]


Новая версия телохранителя угоняющего автомобили (Atrox)

---------------------------------
Телохранитель угоняющий автомобили - V.4.
///programmed by Atrox (c)
///sergey.brusov@gmail.com

Что бы телохранитель угнал автомобиль, надо дать ему команду " стоять " и рядом с ним сесть в автомобиль и нажать на клаксон.
Если у Томми есть 500 игровых уе - то телохранитель начнет искать автомобиль для угона, исходя из ниже приведенных четырёх НО.

НО:
0. Угоняет только стоячие автомобили.
1. Если в них не сидит Томми!
2. Автомобили не шибко повреждены!
3. Автомобили не далее 96-ти игрометров!
PS: Угоняет даже автомобили, указанные на радаре красным цветом.

Если у Томми нет 500 игровых уе - то телохранитель намекнет Томми об этом.

Когда телохранитель поймает автомобиль, то, если Томми дальше 30-ти игрометров, то подгонит автомобиль к Томми и вылезет из автомобиля.
Если Томми ближе 30-ти игрометров, то телохранитель подождет Томми 20-ть секунд, и если Томми не сядет в его автомобиль, то телохранитель поедет в 3-тий фрейм, вылезет и пойдет в 4-ый фрейм.
PS: А так же выполняет команды " стоять " и " за мной ".

Рекомендуется ставиль на модель Полли (Paulie) с именем Paulie
Если не хотите, то в findactor 0, "***" и в findframe 0, "***",
между кавычек, вместо Paulie напишите имя ... любое.
Например Atrox.

------------------------------------------------------------

dim_act 10
dim_flt 10
dim_frm 10

findactor 0, "Paulie"
findactor 1, "Tommy"
findactor 2, "null"
///programmed by atrox (c)
///sergey.brusov@gmail.com
findframe 0, "Paulie"
findframe 1, "Tommy"
findframe 2, "null"
findframe 3, "taxi_point22"
findframe 4, "taxi_point21"

human_set8slot 0, 1
human_setproperty 0, 999, Energy
human_setproperty 0, 999, Intelligence
human_addweapon 0,12,2,8888
human_holster 0
enemy_blastfire
let flt[0]=1

label 1
if flt[0]=1, stopp, -1
let flt[1]=1
enemy_action_follow 1, 1, nonext, crouch, 1
enemy_followplayer yes
let flt[1]=0

label stopp
human_holster 0
setplayerhornevent 0, 1
goto 1

event use_ab,10970002
enemy_forcescript 0
enemy_actionsclear
enemy_brainwash
enemy_stop
detector_issignal 5, 65, -1
getactorsdist 0, 5, 2
if flt[2]<5, -1, 65

label 65
event_use_cb 1
if flt[0]=1, 2, -1
enemy_talk 1, 11990741
enemy_wait
human_looktoactor 0, 1, 1
enemy_talk 0, 950020
enemy_wait
enemy_talk 0, 950011
enemy_wait
human_looktoactor 0
enemy_forcescript 0
let flt[0]=1
return

label 2
enemy_talk 1, 11990731
enemy_wait
human_looktoactor 0, 1, 1
enemy_talk 0, 950008
enemy_wait
human_stoptalk 0
human_looktoactor 0
let flt[0]=0
return

label go
let flt[0]=0
return

event enemy_to_ai
event_use_cb 1
if flt[1]=1, ret, -1
enemy_talk 0, 950089
enemy_wait
label ret
human_holster 0
return

event 1
enemy_look 1
commandblock 1
getactorsdist 0, 1, 0
if flt[0]>9, ret, -1
commandblock 0
enemy_talk 1, 950106
enemy_wait
freeride_scoreget 0
if flt[0]<500,MALOPENEZ,-1
let flt[0]=flt[0]-500
freeride_scoreset flt[0]
human_getowner 1, 2
human_looktoactor 0, 1, 1
enemy_playanim "gestikulace03.i3d", 1, simple
enemy_talk 0, 19991497
enemy_wait
enemy_stopanim
enemy_talk 0, 950005
enemy_playanim "gestikulacenew02.i3d"
enemy_wait
enemy_stopanim
setnoanimhit 0, 1
human_looktoactor 0
label 202
findnearactor 0, 3, car
car_getspeed 3, 3
if flt[3]>0.05, -1, 212
goto 202
label 212
car_switchshowenergy 3, 1
getcardamage 3, 3
if flt[3]<0.7, -1, 222
goto 202
label 222
getactorsdist 1, 3, 1
if flt[1]<3, -1, 232
goto 202
label 232
getactorsdist 3, 0, 3
if flt[3]>96, -1, 242
goto 202
label 242
car_getspeed 3, 3
if flt[3]>0.05, -1, 252
goto 202
label 252
car_lock_all 3, 1
human_holster 0
enemy_move_to_car 3, 0, run
enemy_look 3
human_holster 0
playsound "carunlock3.wav", -1, 12, 1
enemy_playanim "KradeniAuta.i3d", 1
let flt[1]=flt[1]-83
wait flt[1]
enemy_usecar 3, 0
car_lock_all 3, 0
label 262
human_getowner 0, 4
actorupdateplacement 4
car_calm 4
getactorsdist 0, 1, 0
if flt[0]>29, -1, 272
getactorframe 1, 1
enemy_car_moveto 4, 1, stop
enemy_usecar
wait 1000
human_holster 0
let flt[0]=1
return
label 272
wait 18000
compareownerwithex 1, 4, -1, 282
carlight_light 4, 1
enemy_car_moveto 4, 3, stop
carlight_light 4, 0
enemy_usecar
wait 1000
human_holster 0
goto 292
label 282
car_setactlevel 4, 1
wait 2000
carlight_light 4, 1
enemy_car_moveto 4, 3, stop
carlight_light 4, 0
wait 2000
car_setactlevel 4, 0
enemy_usecar
wait 1000
human_holster 0
label 292
enemy_changeanim "walk1.i3d", "ChuzeRuceZaZady1.I3D"
enemy_move_to_frame 4, 0, walk
setnoanimhit 0, 0
human_setproperty 0, 999, Energy
wait 1000
let flt[0]=1
return

label MALOPENEZ
human_looktoactor 0, 1, 1
enemy_playanim "Gestikulace01.I3D", 0
enemy_talk 0, 18990131
enemy_wait
enemy_stopanim
human_looktoactor 1, 0, 1
enemy_talk 1, 18990161
enemy_wait
human_looktoactor 1
enemy_playanim "Gestikulace02.I3D", 0
enemy_talk 0, 18990151
console_addtext 3472
enemy_wait
enemy_stopanim
human_looktoactor 1, 0, 1
enemy_talk 1, 18990261
enemy_wait
human_looktoactor 1
enemy_playanim "Gestikulace03.I3D", 0
enemy_talk 0, 18990291
enemy_wait
enemy_stopanim
enemy_talk 1, 18990301
enemy_wait
human_looktoactor 0
enemy_playanim "polst03.i3d"
enemy_talk 0, 18020560
enemy_wait
enemy_talk 0, 18020570
enemy_wait
enemy_stopanim
let flt[0]=1
return

event hit_from_player
enemy_actionsclear
enemy_stop
enemy_look 1
enemy_wait
human_looktoactor 0, 1, 1
rnd 1,4
if flt[1]=0,-1,113
enemy_talk 0, 950080
enemy_wait
label 113
if flt[1]=1,-1,114
enemy_talk 0, 950003
enemy_wait
label 114
if flt[1]=2,-1,115
enemy_talk 0, 950004
enemy_wait
label 115
if flt[1]=3,-1,116
enemy_talk 0, 950031
enemy_wait
label 116
human_looktoactor 0
enemy_forcescript 0
return
[свернуть]
[свернуть]

Последний раз редактировалось El Padrino; 12.12.2018 в 21:56.
цитата
Поблагодарили: 8
admpos (05.03.2023), Andrey (08.12.2018), EmptyBowl (06.12.2018), Johnny777 (05.06.2019), Knight Rider (06.12.2018), ruslan13 (04.03.2023), spartaque12 (06.12.2018), Staghound (08.12.2018)
Старый 08.12.2018, 11:36   #2
El Padrino вне форума El Padrino
Аватар для El Padrino
Senior Member
Сообщений: 102
Репутация: 179
El Padrino has a spectacular aura about El Padrino has a spectacular aura about
Judge
Информация о репутации (El Padrino)
×
За активное участие в жизни форума и помощь пользователям вы можете получить очки репутации. За определённое количество очков репутации вам будет присвоенно соответствующее звание. Полученное звание всегда будет отображаться в нижней части области Вашего профиля, слева от сообщения.
Detective
0
Gangster
55
Thug
100
El Padrino / 179
Judge
159
Enforcer
260
Priest
396
Snitch
780
Hitman
800
Councilor
1200
Deputy
2501
Overseer
4896
Press
6020
Don
20000

Part - II

Скрипт свободно движущейся камеры (GOLOD55)

//free_camera beta1

//сделан ручной фокус зуума. удерживая клавишу SNIPERMODE, настройте зуум. повтор.нажатие выключит зуум.

//F1 = вкл\выкл. скрипткамеру
//LEFT \ RIGHT \ UP \ DOWN = вращение камеры
//LEFT1 \ RIGHT1 = горизонтальная коррекция
//FIRE \ ACTION (лмаус\рмаус) = вперед\назад
//SNIPERMODE = зум камеры. удерживать клаву.

dim_act 1
dim_frm 2
dim_flt 14
//scriptcamera_mode beta1 GOLOD55 30.03.08
findactor 0,"Tommy"
getactivecamera 0
findframe 1,"Tommy.neck"
vect_set 10,1,1,1

Label 101
commandblock 0
wait 1000
Label 100
commandblock 0
commandblock 1
human_getseatidx 0,0
ctrl_read 1,OBJECTIVES
if flt[1]=1,CAM,-1
if flt[11]=-1,-1,100
if flt[0]=-1,-1,INCAR
if flt[9]=1,CAM,-1

label INCAR
ctrl_read 1,SNIPERMODE
if flt[1]=1,snip,-1
vect_set 2,0.015,0,0
ctrl_read 1,UP
if flt[1]=1,ROTS,-1
vect_set 2,-0.015,0,0
ctrl_read 1,DOWN
if flt[1]=1,ROTS,-1
vect_set 2,0,0.015,0
ctrl_read 1,LEFT
if flt[1]=1,ROTS,-1
vect_set 2,0,-0.015,0
ctrl_read 1,RIGHT
if flt[1]=1,ROTS,-1
vect_set 2,0,0,-0.015
ctrl_read 1,LEFT1
if flt[1]=1,ROTS,-1
vect_set 2,0,0,0.015
ctrl_read 1,RIGHT1
if flt[1]=1,ROTS,-1
vect_set 2,0,0,0.1
ctrl_read 1,FIRE
if flt[1]=1,MOVE,-1
vect_set 2,0,0,-0.1
ctrl_read 1,ACTION
if flt[1]=1,-1,100
---
label MOVE
frm_getrot 0,5
vect_mul_quat 2,5
frm_getpos 0,5
vect_add_vect 2,5
frm_setpos 0,2
goto 100
---
Label ROTS
vect_mul_scl 2,flt[10]
frm_getrot 0,5
quat_mul_quat 1,5
frm_setrot 0,1
goto 100
---
Label CAM
let flt[11]=-flt[11]
if flt[11]=-1,-1,unlock
camera_lock 1
frm_linkto 0,1
let flt[9]=1
if flt[0]=-1,-1,101
act_setstate 0,inactive
let flt[9]=0
goto 101
---
label snip
let flt[12]=-flt[12]
if flt[12]=-1,-1,unsnip
label zoom
commandblock 0
commandblock 1
ctrl_read 1,SNIPERMODE
if flt[1]=1,-1,100
camera_getfov 13
let flt[13]=flt[13]-0.5
camera_setfov flt[13]
let flt[10]=flt[10]-0.007
if flt[13]<5,101,zoom
---
label unlock
frm_linkto 0,-1
camera_unlock
act_setstate 0,active
label unsnip
camera_setfov 70
let flt[10]=1
goto 101
[свернуть]


Скрипт, который убирает индикаторы (Loque)

dim_frm 1
dim_act 1
dim_flt 3
findactor 0, "Tommy"
findframe 0, "Tommy"
let flt[1]=0
policemanager_del "Tommy"

/// was made by **LOQUE** ///

label 1
ctrl_read 0,HORN
if flt[0]=1,2,1

label 2
if flt[1]=0,-1,3
setcompass -1
human_holster 0
frm_seton 0,0
freeride_scoreget 2
freeride_scoreon 0
let flt[1]=1
goto 1

label 3
if flt[1]=1,-1,2
frm_seton 0,1
freeride_scoreon 1
freeride_scoreset flt[2]
let flt[1]=0
goto 1
[свернуть]


Скрипт для снятия координат

dim_frm 1
dim_flt 3
findframe 0,"Tommy"

label press_key
ctrl_read 0,HOLSTER
if flt[0]=1,-1,press_key

frm_getpos 0,0
vect_mul_scl 0,1000

freeride_scoreon 1
freeride_scoreset flt[0]
wait 4000
freeride_scoreset flt[1]
wait 4000
freeride_scoreset flt[2]
wait 4000
freeride_scoreon 0
wait 4000
goto press_key
[свернуть]


Скрипт для открытия закр. дверей которые юзаются (DSD)

dim_flt 2
dim_act 2
findactor 0, "Tommy"

label press_key
ctrl_read 0, ACTION1
if flt[0]=1, -1, press_key
findnearactor 0, 1, Door
door_getstate 1, 1
if flt[1]=1, -1, press_key2
door_lock 1, 0
door_open 1, 1
label press_key2
door_open 1, 0
goto press_key
[свернуть]


Скрипт переодевания (Восинед)

dim_act 1
dim_frm 1
findactor 0, "Tommy"

label 1
detector_waitforuse
player_lockcontrols 1
zatmyse 1
wait 500
human_changemodel 0, "На кого меняться.i3d"
policemanager_del "Tommy"
wait 3000
policemanager_add "Tommy"
zatmyse 0
wait 500
player_lockcontrols 0
goto 2
label 2
detector_waitforuse
player_lockcontrols 1
zatmyse 1
wait 500
human_changemodel 0, "Tommy.i3d"
policemanager_del "Tommy"
wait 3000
policemanager_add "Tommy"
zatmyse 0
wait 500
player_lockcontrols 0
goto 1
[свернуть]


Скрипт позволяющий сохранять игру где угодно

dim_flt 10
dim_act 10
dim_frm 10

label norm
ctrl_read 1,crouch1
if flt[1]=0,norm,-1
goto 2

label 2
autosavegamefull 5584
goto norm
[свернуть]


Старая версия телохранителя угоняющего машины (Atrox)

dim_act 10
dim_flt 10
dim_frm 10
findactor 0, "teloxranitel" - имя телохранителя
findactor 1, "Tommy"
findactor 2, Car
findactor 3, "NULL"
findframe 1, "фрейм1" - фрейм куда гнать машину
findframe 2, "фрейм2" - фрейм куда идти пешком

human_set8slot 0, 3
human_setproperty 0, 9999, Energy
human_setproperty 0, 9999, Intelligence
human_addweapon 0, 10, 50, 9999
human_holster 0
let flt[0]=0
label 1
if flt[0]=1, stopp, -1
let flt[1]=1
enemy_action_follow 1, 1, nonext, crouch, 1
enemy_followplayer yes
let flt[1]=0

label stopp
human_holster 0
setplayerhornevent 0, oborot

goto 1
event use_ab, 10970003
detector_issignal 5, 65, -1
getactorsdist 0, 5, 2
if flt[2] < 5, -1, 65

label 65
event_use_cb 1
if flt[0] = 1, 2, -1
enemy_talk 1, 11990741
enemy_forcescript 0
let flt[0] = 1
return
label 2
enemy_talk 1, 11990731
let flt[0] = 0
return
label go
let flt[0]=0
return
event hit_from_player
event_use_cb 1
return
event enemy_to_ai
event_use_cb 1
enemy_talk 01940071
if flt[1]=1, ret, -1
wait 5000
label ret
human_holster 0
return

event oborot
goto poisk

lebel poisk
findnearactor 0, 2, Car
getactorsdist 0, 2, 2
if flt[2] > 20, poisk, delo

label delo
car_lock_all 2, 1
compareownerwithex 2, 2, poisk, vzlom

label vzlom
enemy_move_to_car 2, 0, walk
enemy_look 2
playsound "carunlock3.wav", -1, 12, 1
enemy_playanim "RalphKradeVelkeAuto.i3d",0
let flt[0]=flt[0]-1
wait flt[0]
car_enableus 2, 1
car_setdooropen 2, 0, 10
wait flt[0]
enemy_usecar 2, 0
car_lock_all 2, 0
iscarusable 2, 0
if flt[0]=0,-1, gon

label gon
human_getowner 0, 3
actorupdateplacement 3
ENEMY_CAR_MOVETO 3, 1, stop
//ENEMY_CAR_ESCAPE 3, 1, 1, -1, 10, 60, 1
goto next

label next
enemy_usecar 2, 0
freeride_scoreadd 3000
wait 1000
setnoanimhit 0, 1
enemy_move_to_frame 2, 0, walk
setnoanimhit 0, 0
human_setproperty 0, 9999, Energy
wait 1000
return
[свернуть]


Скрипт продавца оружия (бесплатного)

dim_act 2
dim_flt 2
findactor 0, "Tommy"
findactor 1, ""
human_setproperty 1, 9000, Energy
human_addweapon 1, 7, 6, 12
human_holster 1

label 101
wait 4000
goto 101

event use_ab
getenemyaistate 1,0
iffltinrange 0,2,5,120
HUMAN_LOOKTOACTOR 1, 0, 1

//player_lockcontrols 1

gunshop_menu

//player_lockcontrols 0
return
event 1000
label BLBOST
enemy_action_fire 0
goto BLBOST
[свернуть]
[свернуть]

Последний раз редактировалось El Padrino; 12.12.2018 в 21:56.
цитата
Поблагодарили: 9
Abradox (12.12.2018), Adilka (08.12.2018), admpos (05.03.2023), Andrey (08.12.2018), EmptyBowl (10.12.2018), Johnny777 (05.06.2019), ruslan13 (04.03.2023), spartaque12 (08.12.2018), Staghound (08.12.2018)
Старый 12.12.2018, 21:54   #3
El Padrino вне форума El Padrino
Аватар для El Padrino
Senior Member
Сообщений: 102
Репутация: 179
El Padrino has a spectacular aura about El Padrino has a spectacular aura about
Judge
Информация о репутации (El Padrino)
×
За активное участие в жизни форума и помощь пользователям вы можете получить очки репутации. За определённое количество очков репутации вам будет присвоенно соответствующее звание. Полученное звание всегда будет отображаться в нижней части области Вашего профиля, слева от сообщения.
Detective
0
Gangster
55
Thug
100
El Padrino / 179
Judge
159
Enforcer
260
Priest
396
Snitch
780
Hitman
800
Councilor
1200
Deputy
2501
Overseer
4896
Press
6020
Don
20000

Part - III

Cкрипт моментального разгона машины до 250 км/ч (Akay)

dim_act 3
dim_frm 3
findactor 0,"Tommy"
label 101
findnearactor 0, 1, Car
ctrl_read 1, JUMP1
if flt[1]=0, 101, -1
compareownerwithex 0, 1, -1, 101
human_setproperty 0,300,Energy
car_setspeed 1, 250
wait 10
goto 101

***********************************************

Срипт действует при нажатии кнопки "Дополнительный прыжок"
Советую вписать ещё один скрипт для починки авто. При скорости 250км/ч машины очень быстро ломаются, мнутся и взрываются.

***********************************************

dim_flt 3
dim_act 3
dim_frm 3
findactor 0,"Tommy"
label 101
findnearactor 0, 1, Car
ctrl_read 1, HORN1
if flt[1]=0, 101, -1
human_setproperty 0,300,Energy
car_repair 1
goto 101
[свернуть]


Скрипт "TurboCar" (Akay)

dim_flt 10
dim_act 10
dim_frm 10
findactor 0, "Tommy"
findframe 0, "Tommy"

label norm
commandblock 0
commandblock 1
findnearactor 0, 1, Car
ctrl_read 1, HORN1
if flt[1]=0, norm, -1
compareownerwithex 0, 1, -1, norm
human_setproperty 0,300,Energy
commandblock 0
goto 2

label 2
commandblock 1
emitparticle 0,20,0
playsound "pump.wav", 0, 70, 1
car_unbreakable 1,1
car_setspeed 1, 190
camera_getfov 3
commandblock 0
label 3
commandblock 0
commandblock 1
let flt[3] = flt[3] * 1.05
camera_setfov flt[3]
if flt[3] >140, -1, 3
label 4
commandblock 0
commandblock 1
let flt[3] = flt[3] * 0.98
camera_setfov flt[3]
if flt[3] < 75, -1, 4
commandblock 0
wait 5000
goto norm
[свернуть]


Скрипт "Быстрого Тома", бегает как Гонзалес (Akay)

dim_flt 10
dim_act 10
dim_frm 10

findactor 0,"Tommy"
human_setproperty 0,500,Energy

label 1
human_setproperty 0, 100, Speed
ctrl_read 1,HORN1
if flt[1]=0, 1, -1
console_addtext 128
goto 2
label 2
human_setproperty 0, 400, Speed
ctrl_read 1,HORN1
if flt[1]=0, 2, -1
console_addtext 128
goto 3
label 3
human_setproperty 0, 800, Speed
ctrl_read 1,HORN1
if flt[1]=0, 3, -1
console_addtext 128
goto 4
label 4
human_setproperty 0, 1300, Speed
ctrl_read 1,HORN1
if flt[1]=0, 4, -1
console_addtext 128
goto 1

**********************************

У Тома 3 скорости. Переключение - дополнительная кнопка свиста (гудка).

**********************************
[свернуть]


Скрипт для снега, дождя

Снег:

weather_setparam ON, 1
weather_setparam SPEED, 45
weather_setparam LEN, 0.1
weather_setparam WIDTH, 0.1
weather_setparam MAX_DIST, 45
weather_setparam MAX_HEIGHT, 12
weather_setparam MAX_CNT, 9500
weather_setparam DIR_X, 0
weather_setparam DIR_Y, -0.98
weather_setparam DIR_Z, 0
weather_setparam MODE, 2

Дождь:

weather_setparam ON, 1
weather_setparam SPEED, 45
weather_setparam LEN, 0.9
weather_setparam WIDTH, 0.02
weather_setparam MAX_DIST, 45
weather_setparam MAX_HEIGHT, 12
weather_setparam MAX_CNT, 7500
weather_setparam DIR_X, 0
weather_setparam DIR_Y, -0.98
[свернуть]


Скрипт для включения во фрирайде-ночь фар

dim_act 7
dim_flt 7
getactiveplayer 0

label 1
ctrl_read 0, HOLSTER
if flt[0]=1,2,1

label 2
findnearactor 0,1,Car
compareownerwithex 0,1,3,1

label 3
carlight_main 1,0
goto 4
label 4
ctrl_read 1, HOLSTER
if flt[1]=1,5,4

label 5
findnearactor 0,1,Car
compareownerwithex 0,1,-1,3
carlight_main 1,2
goto 1
[свернуть]


Скрипт доставит Вас в больницу после смерти (GOLOD55)

dim_act 1
dim_flt 2
dim_frm 2
findactor 0, "Tommy"
findframe 0,"Tommy"
findframe 1,"bolnica"

let flt[0] = 1100
human_setproperty 0, flt[0], Energy

label 10
human_getproperty 0, 0, Energy
if flt[0] < 1005, -1, 10
player_lockcontrols 1
enemy_block
policemanager_del "Tommy"
camera_setfov 120
person_playanim 0, "4d Paulie T zveda.i3d"
wait 20000
person_stopanim 0
zatmyse 1, 10
actor_setplacement 0, 1
player_lockcontrols 0
enemy_unblock
let flt[0] = 1100
human_setproperty 0, flt[0], Energy
policemanager_add "Tommy"
wait 10000
zatmyse 0, 10
camera_setfov 70
human_delweapon 0, 10
human_delweapon 0, 12
human_delweapon 0, 7
human_delweapon 0, 9
autosavegamefull 5584
goto 10
[свернуть]


Скрпит дождя версия 2

dim_act 9
dim_flt 9
dim_frm 9

Label Start
wait 100000
weather_setparam ON, 1
wait 100000
weather_setparam ON, 0
goto Start
[свернуть]


Скрипт позволяющий начать Фрирайд без машины

Скрипт прописывать во фрэйм с любыми координатами / ротацией.

dim_act 3
dim_frm 3

findactor 0,"Tommy"
findframe 1,"emeth_1" - точка где появимся (emeth_1...emeth_4)
findframe 2,"emeth_4"

zatmyse 1, 90
human_getowner 0, 1
actor_setplacement 1, 2
actor_setplacement 0, 1
car_explosion 1
zatmyse 0, 90
autosavegamefull 5584
[свернуть]
[свернуть]



Part - IV

Скрипт автоприбавления жизней у Тома (Akay)

dim_act 1
dim_flt 1
findactor 0,"Tommy"

label 101
human_getproperty 0,0,Energy
if flt[0]>100,101,-1
if flt[0]
[свернуть]


Скрипт для летающих машин (tomas100)

*****************************

Для взлёта:

*****************************

dim_flt 3
dim_act 3
dim_frm 3
findactor 0,"Tommy"
findactor 2,"NULL"
findframe 0, "Tommy.neck"
label 101
ctrl_read 1, JUMP
if flt[1]=0, 101, -1
car_unbreakable 2,1
compareownerwithex 0, 2, 101, -1
human_getowner 0, 1
actor_setplacement 1, 0
label 999
car_setspeed 1, 230
human_setproperty 0,300,Energy
ctrl_read 1, JUMP
if flt[1]=0, 999, -1
car_setspeed 1, 40
goto 101

*****************************

И на посадку:

*****************************

dim_flt 3
dim_act 3
dim_frm 3
findactor 0,"Tommy"
findactor 2,"NULL"
findframe 0, "Tommy.neck"
label 101
ctrl_read 1, JUMP
if flt[1]=0, 101, -1
car_unbreakable 2,1
compareownerwithex 0, 2, 101, -1
human_getowner 0, 1
actor_setplacement 1, 0
label 999
car_setspeed 1, 230
human_setproperty 0,300,Energy
ctrl_read 1, JUMP
if flt[1]=0, 999, -1
car_setspeed 1, 40
goto 101

*****************************

Правда управляемость фиговая =)

*****************************
[свернуть]


Скрипт для мужика, который снимает деньги за разговор

dim_act 5
dim_flt 5
dim_frm 5
findactor 1,"Tommy"
findactor 2, "Torgash"

human_set8slot 0, 3
human_setproperty 2, 9999, Energy
human_setproperty 2, 50, Speed
human_addweapon 2,12,2,8888
human_holster 2
enemy_vidim 1

label 1
let flt[1] = flt[1] + 1
enemy_playanim "breathB1.i3d",1
wait flt[1]
goto 1
event use_ab, 10970007
enemy_talk 00950027
freeride_scoreadd -5
return
[свернуть]


Скрипт попарно разговаривающих людей

***********************

1-ый

***********************

dim_flt 3
dim_act 2
findactor 0, "Delnik2"
findactor 1, "Delnik"
enemy_group_new 1
enemy_group_add 1, 0
enemy_group_add 1, 1

label 2
event_use_cb 1
if flt[0] = 1, 2, -1
console_addtext 99970001
if flt[0] = 2, 2, -1
enemy_forcescript 0
let flt[0] = 1
wait 500
enemy_playanim "gesto2 nogun1a.i3d"
wait 3000
enemy_playanim "gesto2 nogun1a.i3d", 0
let flt[0] = flt[0] - 100
wait flt[0]
enemy_playanim "gesto2 nogun1a.i3d"
wait 3000
enemy_playanim "gesto2 nogun1c.i3d", 0
let flt[0] = flt[0] - 100
wait flt[0]
enemy_playanim "gesto2 nogun1a.i3d"
wait 3000
enemy_playanim "gesto2 nogun1d.i3d", 0
let flt[0] = flt[0] - 270
wait flt[0]
goto 2

***********************

2-ой

***********************

dim_flt 1

label 1
enemy_playanim "gesto2 nogun1a.i3d"
wait 5000
enemy_playanim "gesto2 nogun1c.i3d", 0
let flt[0] = flt[0] - 100
wait flt[0]
enemy_playanim "gesto2 nogun1a.i3d"
wait 5000
enemy_playanim "gesto2 nogun1a.i3d", 0
let flt[0] = flt[0] - 100
wait flt[0]
enemy_playanim "gesto2 nogun1a.i3d"
wait 5000
enemy_playanim "gesto2 nogun1d.i3d", 0
let flt[0] = flt[0] - 270
wait flt[0]
goto 1
[свернуть]


Скрипт автодиллера

dim_act 2
dim_flt 1
findactor 0,"Tommy"
findactor 1,"cordca"

car_enableus 1,0

label 101
detector_waitforuse 3512

freeride_scoreget 0
if flt[0]<5000,MALOPENEZ,-1
let flt[0]=flt[0]-5000
freeride_scoreset flt[0]
car_enableus 1,1
mission_objectives 22930000
wait 5000
mission_objectivesclear
goto 101

label MALOPENEZ
console_addtext 3472
goto 101
[свернуть]


Скрипт телепорта в миссию при юзаньи

dim_flt 1
dim_frm 1

findframe 0, "load freekrajina01"
setcompass 0

detector_waitforuse

commandblock 1
freeride_scoreadd 1
freeride_scoreget 0
setmissionnumber flt[0]
change_mission "freekrajina","load_z_mesta01",40
commandblock 0
[свернуть]


Скрипт телепорта в миссию при входе во фрейм

dim_flt 1
label 101
wait 100
detector_inrange 0,30
if flt[0]=1,-1,101

commandblock 1
freeride_scoreadd 1
freeride_scoreget 0
setmissionnumber flt[0]
change_mission "freekrajina","load_z_mesta01",40
commandblock 0
[свернуть]


Скрипт говорящего продавца оружия

dim_act 2
dim_flt 2
findactor 0, "Tommy"
findactor 1, ""
human_setproperty 1, 9000, Energy
human_setproperty 0, 9000, Energy
human_addweapon 1, 10, 50, 200
human_holster 1
label 101
wait 4000
goto 101

event use_ab
getenemyaistate 1,0
iffltinrange 0,2,5,120
HUMAN_LOOKTOACTOR 1, 0, 1

//player_lockcontrols 1

enemy_talk 05010190
wait 1500
gunshop_menu
enemy_talk 05010350

//player_lockcontrols 0
return

event 1000
label BLBOST
enemy_action_fire 0
goto BLBOST
[свернуть]
[свернуть]

Последний раз редактировалось El Padrino; 12.12.2018 в 22:01.
цитата
Поблагодарили: 7
Abradox (12.12.2018), Adilka (13.12.2018), admpos (05.03.2023), EmptyBowl (13.12.2018), Johnny777 (05.06.2019), ruslan13 (04.03.2023), Staghound (13.12.2018)
Старый 04.03.2023, 19:36   #4
alex5995 вне форума alex5995
Senior Member
Сообщений: 244
Репутация: 183
alex5995 has a spectacular aura about alex5995 has a spectacular aura about
Judge
Информация о репутации (alex5995)
×
За активное участие в жизни форума и помощь пользователям вы можете получить очки репутации. За определённое количество очков репутации вам будет присвоенно соответствующее звание. Полученное звание всегда будет отображаться в нижней части области Вашего профиля, слева от сообщения.
Detective
0
Gangster
55
Thug
100
alex5995 / 183
Judge
159
Enforcer
260
Priest
396
Snitch
780
Hitman
800
Councilor
1200
Deputy
2501
Overseer
4896
Press
6020
Don
20000
В скриптах часто встречается "label 101". Чем он отличается, к примеру, от "label 1"?
цитата
Старый 05.03.2023, 03:24   #5
Melhior вне форума Melhior
Аватар для Melhior
Mafia Modding Crew
Сообщений: 144
Репутация: 160
Melhior has a spectacular aura about Melhior has a spectacular aura about
Judge
Информация о репутации (Melhior)
×
За активное участие в жизни форума и помощь пользователям вы можете получить очки репутации. За определённое количество очков репутации вам будет присвоенно соответствующее звание. Полученное звание всегда будет отображаться в нижней части области Вашего профиля, слева от сообщения.
Detective
0
Gangster
55
Thug
100
Melhior / 160
Judge
159
Enforcer
260
Priest
396
Snitch
780
Hitman
800
Councilor
1200
Deputy
2501
Overseer
4896
Press
6020
Don
20000
Цитата:
Сообщение от alex5995 Посмотреть сообщение
В скриптах часто встречается "label 101". Чем он отличается, к примеру, от "label 1"?
Да ничем. Имя метки можно любое давать.
__________________
Группа модостроя в ВК
https://vk.com/mafia_and_mafia2_modding
цитата
Поблагодарил:
alex5995 (05.03.2023)
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Регистрация
×
Чтобы оставлять на форуме Mafia-Game Forum сообщения, необходимо сначала зарегистрироваться.
Пожалуйста, укажите ваше имя пользователя, адрес электронной почты и прочую обязательную информацию о себе в форме ниже.
Имя:
Пароль / Адрес электронной почты
Пароль:
Подтвердите пароль:
Адрес электронной почты:
Подтвердите адрес:
Реферер
Если вы пришли на этот форум по совету одного из участников, то, пожалуйста, введите его имя пользователя.
Реферер:
Время на форуме может быть выставлено в соответствии с тем, где вы находитесь. Выберите свой часовой пояс из списка ниже.
Учитывать переход на летнее или зимнее время (DST).
Получать электронные письма
Время от времени администрация может посылать вам сообщения по электронной почте.

Если вы не хотите получать эти сообщения, отключите эту опцию.
Разрешить другим участникам писать вам по электронной почте.
Правила форума

Текущее время: 10:21. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.11 Release Candidate 2
Copyright ©2000 - 2024, vBulletin Solutions Inc. Перевод: zCarot (VK2425)