;[b]Écrit pour OFP Fonctionne avec Arma version française ;==========================================================================[/b] ;Ce script réalise la vue caméra d'un véhicule en déplacement ; ; Paramètre ; 1: Le véhicule suivi ; 2: distance de la caméra au véhicule en mètres ; 3: hauteur de la caméra par rapport au véhicule ; 4: cible de la caméra ; 5: tableau contenant la condition d'arrêt ; ; Exemple pour que la camera pointe droit devant: ; [helico,10,5,objNull,[false]] exec "cam_suiveuse.sqs" ; ; Exemple pour que la camera pointe vers une cible: ; [helico,10,5,tank,[false]] exec "cam_suiveuse.sqs"
_vehicule = _this select 0 _distance = _this select 1 _hauteur = _this select 2 _cible = _this select 3 _fini = _this select 4
;Crée une caméra et la positionne sur _vehicule _camx = getpos _vehicule select 0 _camy = getpos _vehicule select 1 _camz = getpos _vehicule select 2 _dir = getdir _vehicule _cam = "camera" CamCreate [_camx + _distance * sin _dir,_camy + _distance * cos _dir,_camz + _hauteur] _cam CameraEffect ["Internal","Front"] _cam camCommand "inertia on" ? not (isNull _cible) : _cam camsettarget _cible ? isNull _cible : _cam camsettarget [_camx + 1000 * sin _dir,_camy + 1000 * cos _dir,2];goto "camLoop" _cam CamCommit 0
;La caméra suit le véhicule #camloopCible _camx = getpos _vehicule select 0 _camy = getpos _vehicule select 1 _camz = getpos _vehicule select 2 _dir = getdir _vehicule _cam camsetpos [_camx + _distance * sin _dir,_camy + _distance * cos _dir,_camz + _hauteur] _cam camcommit 0 ~0.01 ?not (_fini select 0) : goto "camloopCible" goto "Fin"
;La caméra pointe droit devant #camloop _camx = getpos _vehicule select 0 _camy = getpos _vehicule select 1 _camz = getpos _vehicule select 2 _dir = getdir _vehicule _cam camsetpos [_camx + _distance * sin _dir,_camy + _distance * cos _dir,_camz + _hauteur] _cam camsettarget [_camx + 1000 * sin _dir,_camy + 1000 * cos _dir,2] _cam camcommit 0 ~0.01 ?not (_fini select 0) : goto "camloop"
;Termine la séquence vidéo #Fin _cam CameraEffect ["Terminate","Back"] CamDestroy _cam ;cuttext [format["%1",_fini],"PLAIN"] exit
 |