SCRIPT LIBERATION HABITANTS

Voir le sujet précédent Voir le sujet suivant Aller en bas

LIBERATION.sqf

Message par ('l|) Nach le Dim 8 Jan - 23:41

Voici le script de "liberation.sqf" qui est le script qui donne l action sur les otages .

Je vous souhaites une bonne édition et j espère que les heures de travail que j ai  fourni  portera les fruits d une Template  qui vous plaira.

Bien a vous Nach.
avatar
('l|) Nach

Messages : 321
Date d'inscription : 31/01/2016

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

LIBERATION.sqf

Message par ('l|) Nach le Dim 8 Jan - 23:36

_unit = _this select 0;
_Group = Group leader _unit;

_unit removeAction 0;
_unit enableAI "move";
_unit setCaptive false;

_pos = getmarkerpos "spawcivil";
_posecentre = _pos;
_start_distance = 1200;


_xpos = _posecentre select 0;
_ypos = _posecentre select 1;
_zpos = _posecentre select 2;

_distance = _start_distance;

_angle = random 360;

_xxpos = (_distance * cos _angle);
_yypos = (_distance * sin _angle);

_xpos = _xpos + _xxpos;
_ypos = _ypos + _yypos;

_posecentre set [0, _xpos];
_posecentre set [1, _ypos];
_posecentre set [2, _zpos];



_waypoint = _Group addWaypoint [_pos, 0];
_waypoint setWaypointType "MOVE";
_waypoint setWaypointSpeed "FULL";

_message = format ["Merci soldat %1",name player];
hint _message;

sleep 40;
deleteVehicle _unit;
avatar
('l|) Nach

Messages : 321
Date d'inscription : 31/01/2016

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: SCRIPT LIBERATION HABITANTS

Message par ('l|) Nach le Dim 8 Jan - 23:21

Voici une de mes créations la seule chose a faire c est d exécuter ce script  avec null =[] execvm "*.sqf";
La deuxième est de placé un marqueur nommé  spawncivil sur la carte de l editeur sur la zone habité;
Les variables exemple "Land_House_Small_01_F" etc. sont les maisons que l on souhaite affecter le script ici elle appartiennent au DLC TANOA;
comment trouver une variable maison ou autre d un objet dans l éditeur  me diriez vous  allez c est partit!!

Voici ma méthode >>> en appuyant sur echap dans l éditeur on fait apparaître une fenêtre de debug .
Une fenêtre s ouvre avec un grand carré , elle permet d y insérer un script ..

1/ je vise l objet
2/ Touche ESC
3/ je tape ceux ci hint str(typeOf cursortarget); copyToClipboard str(typeOf cursortarget); et je click sur ExcServeur;

Votre variable est copiée il n y a plus qu a faire contrôle+V pour la coller dans votre script. Celle ci est toujours entre guillemet voir couleur vert sur le script précèdent.

Le diamètre autour du marqueur spawncivil est en rouge attention de ne pas mettre une valeur trop exhaustive . Sur le script c est un diamètre de 150

Pas de magie mais la variable s est copié dans votre presse papier

un derniere chose mettre devant les trois lignes qui commence par _mrkr  ces signes // lors de l envoi de la mission sinon des marqueurs apparaitront sur la carte de la mission avec la position des otages.



Dernière édition par ('l|) Nach le Dim 8 Jan - 23:51, édité 2 fois
avatar
('l|) Nach

Messages : 321
Date d'inscription : 31/01/2016

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

SCRIPT LIBERATION HABITANTS

Message par ('l|) Nach le Dim 8 Jan - 22:57

if (isServer) then {

_listecivils = ["C_man_1","C_man_1_1_F","C_man_1_2_F","C_man_1_3_F","C_man_hunter_1_F","C_man_p_beggar_F","C_man_p_fugitive_F",
"C_man_p_shorts_1_F","C_man_polo_1_F","C_man_polo_2_F","C_man_polo_3_F","C_man_polo_4_F","C_man_polo_5_F",
"C_man_polo_6_F","C_man_shorts_1_F","C_man_shorts_2_F","C_man_shorts_3_F","C_man_shorts_4_F","C_man_w_worker_F"];

_lop = ["O_T_Support_GMG_F","O_T_Support_MG_F","O_T_Support_MG_F","O_T_Support_AMG_F","O_T_Support_AMort_F","O_T_Soldier_TL_F","O_T_Soldier_SL_F","O_T_Soldier_Exp_F","O_T_Soldier_F","O_T_Soldier_LAT_F","O_T_Soldier_AR_F","O_T_Soldier_AR_F","O_T_Soldier_AAR_F","O_T_Soldier_GL_F","O_T_Crew_F","O_T_Medic_F","O_T_Officer_F","O_T_Soldier_A_F","O_T_Soldier_Repair_F","O_T_Engineer_F","O_T_Soldier_AA_F","O_T_Soldier_AT_F","O_T_Soldier_AAA_F","O_T_Soldier_AAT_F","O_T_Recon_F","O_T_Recon_LAT_F","O_T_Recon_Exp_F","O_T_Spotter_F"];



//variable editeur des maisons Tanoa + creation des civils
_objectLoc = nearestObjects "spawncivil"), ["Land_House_Small_01_F","Land_House_Small_03_F","Land_House_Small_04_F","Land_House_Small_07_F"], 150];// variables des maisons et le 150 diametre du script actif
if(isNil("_objectLoc"))exitWith{nil};
if((count _objectLoc)==0)exitWith{nil , hint "pas de maison"};


{

// creation d un civil aleatoire par variable maison
   _grb1 = createGroup civilian;
   _nombre1 = round(random ((count _listecivils)-1));
   _s12 = _listecivils select _nombre1;
   _s12 createUnit [getpos _x, _grb1];

//debugage marker spawn des civils a // ces trois lignes pour cacher les markers
_mrkr = createMarker  [str(_x),getPos _x];
_mrkr setMarkerType "loc_Transmitter";
_mrkr setMarkerColor "Colorblue";

} forEach _objectLoc;


// Recherche de chaque civils addaction + unité ennemi le gardant
_otage = nearestObjects "spawncivil"), ["C_man_1","C_man_1_1_F","C_man_1_2_F","C_man_1_3_F","C_man_hunter_1_F","C_man_p_beggar_F","C_man_p_fugitive_F",
               "C_man_p_shorts_1_F","C_man_polo_1_F","C_man_polo_2_F","C_man_polo_3_F","C_man_polo_4_F","C_man_polo_5_F",
               "C_man_polo_6_F","C_man_shorts_1_F","C_man_shorts_2_F","C_man_shorts_3_F","C_man_shorts_4_F","C_man_w_worker_F"],
150];// nouveau diametre pour la recherche otage
{
// addaction Civil
    addac = _x addAction ["libérer Habitant","liberation.sqf",[],1,false,true,"","(_target distance _this) < 3"]; // besoin de liberation.sqf dans le dossier de la mission
    publicVariable "addac";
    _x disableAI "move";
    _x setCaptive true;

// creation d un opfor aleatoire par variable civil

   _grb2 = createGroup east;
   _nombre2 = round(random ((count _lop)-1));
   _s11 = _lop select _nombre2;
   _s11 createUnit [getpos _x, _grb2];
  [_grb2, getpos _x, 100] call BIS_fnc_taskDefend;

} forEach _otage;



// installation du trigger et de la task civil absent

pos9Miss = getmarkerpos "spawncivil";
textoMiss = "Libérer les habitants";
misot1 = "obj9";
publicVariable "pos9Miss";
publicVariable "textoMiss";
publicVariable "misot1";
//missiondone=false;
//publicVariable "missiondone";


// creation est spawn de la task
[player,misot1,["",textoMiss, pos9Miss],"",true]call bis_fnc_taskCreate;

// validation par civil absent
trg9 = createTrigger["EmptyDetector",pos9miss];
trg9 setTriggerArea[1000,1000,0,false];
trg9 setTriggerActivation["CIV","ABSENT",false];
trg9 setTriggerStatements["this", "null = [misot1,""SUCCEEDED"",true] call bis_fnc_taskSetState;publicVariable 'misot1';publicVariable 'textomiss';", ""];
publicVariable "trg9";
};


Dernière édition par ('l|) Nach le Dim 8 Jan - 23:58, édité 4 fois
avatar
('l|) Nach

Messages : 321
Date d'inscription : 31/01/2016

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: SCRIPT LIBERATION HABITANTS

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum