Version haut débit de: Armée de l'Ombre
Aide - Rechercher - Membres

Custom Sound

Praxis (21 Novembre 2013, 14:10)
Bonjour à tous,

Je viens faire appel à vos compétences pour un problême que je rencontre sur une PvP en préparation et que je n'arrive pas à solutionner seul.
Je souhaite que la présence d'un ou plusieurs membres d'un squad BLUEFOR dans une zone déterminée déclenche un son 3d (l'aboiement d'un chien en l'occurrence) et que ce son se coupe si ce squad se trouve à une distance donnée (du chien donc).
J'ai besoin que l'opération se répête autant de fois que le squad rentre ou sort du périmêtre, que le son soit audible par les deux camps et que tout ça soit compatible en multi

J'ai trouvé ce script que j'appelle par un déclencheur sur présence, groupé au squad leader, script qui s'en sort plutôt pas mal, sauf que si je me slot en REDFOR j'active quand même le script.
Ma question et donc de savoir que puis-je modifier pour que seul le squad nommé Delta par exemple active ou désactive le script, que le son déclenché soit audible par les deux camps, et que le tout fonctionne en multi.

Merci par avance, et bonne continuation aux ADO.

Le script en question:

Citation
// JBOY_soundLoop.sqf
// Version 0.6
// by johnnboy
//
// Will play the same sound over and over, until object is dead, or times out.
//
// Sample call:
// dmy=[dog,son1,10,-1] execvm "JBOY_soundLoop.sqf";
//
//
// Parameters:
// 1: Object that will 'say' the sound.
// 2: Name of the sound to play (from your description.ext file).
// 3: Length of sound in seconds.
// 4: Maximum times to play the loop. Use -1 if you want it to be infinite.
// ************************************************** ***************************
// Change History:
// v0.6 Added Wolfrugs good suggestions:
// - Don't play sound if no player nearby.
// - Add -1 as _maxPlays parameter that is infinite.
// v0.5 Created.
_obj = _this select 0;
_sound = _this select 1;
_lengthInSeconds = _this select 2;
_maxPlays = _this select 3;

// We won't play the sound if player is further than this away.
_toggleOffDistance = 30;

_i = 0;
while { (alive _obj) and ((_i < _maxPlays) or (_maxPlays == -1)) } do
{
if ((_obj distance player) < _toggleOffDistance) then
{
_obj say _sound;
};
sleep _lengthInSeconds;
_i = _i + 1;
};