По нажатию кнопки F1 передает управление камере (Том блокируется). Установка стандартная.Для запуска выбрать Прогулка\Город-День. По сути это скрипт который можно установить в любую миссию.
Кнопки мыши двигают камеру вперед назад, кнопки вперд\назад\вправо\влево и дополнительные - крутят камеру вокруг осей XYZ.
Как это работает[]
Хорошо бы объяснить что делает скрипт. А пока ясно одно:
- С помощью BSV в scene2.bin выбранной миссии добавляют объект типа "Other" c именем freecamera1.
- и добавляют ему скрипт:
dim_act 1 dim_frm 2 dim_flt 13 //scriptcamera_mode beta GOLOD55 02.02.08 findactor 0,"Tommy" getactivecamera 0 findframe 1,"Tommy.neck" vect_set 10,0,1,1 Label 101 commandblock 0 wait 1000 Label 100 commandblock 0 commandblock 1 human_getseatidx 0,10 ctrl_read 1,OBJECTIVES if flt[1]=1,CAM,-1 if flt[11]=-1,-1,100 if flt[10]=-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.01,0,0 ctrl_read 1,UP if flt[1]=1,ROTS,-1 vect_set 2,-0.01,0,0 ctrl_read 1,DOWN if flt[1]=1,ROTS,-1 vect_set 2,0,0.01,0 ctrl_read 1,LEFT if flt[1]=1,ROTS,-1 vect_set 2,0,-0.01,0 ctrl_read 1,RIGHT if flt[1]=1,ROTS,-1 vect_set 2,0,0,-0.01 ctrl_read 1,LEFT1 if flt[1]=1,ROTS,-1 vect_set 2,0,0,0.01 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 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[10]=-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 camera_setfov 10 goto 101 label unlock frm_linkto 0,-1 camera_unlock act_setstate 0,active label unsnip camera_setfov 70 goto 101