[Résolu] Jouer un son avec remoteExec

Bonjour,

Je rencontre avec un problème avec l’utilisation d’un remoteExec.

Ce que je fais

J’essaie d’exécuter un script via un remoteExec afin de jouer un son à tous les joueurs environnants. Voici les scripts :
unconscious.hpp (déclaré dans le MasterHandler.hpp) : https://pastebin.com/MLV2h1ZN
fn_launchHelp.sqf : https://pastebin.com/aR99caqk
fn_help.sqf : https://pastebin.com/vzrCAyTd

J’ai bien pensé à déclarer mon remoteExec JIP(life_fnc_help,CLIENT) ainsi que mon son dans le Functions.hpp.

Ce que je veux

Que lorsque j’appuie sur le bouton askForHelp (dans unconscious.hpp), un son soit joué à tous les joueurs proches.

Ce que j’obtiens

Lorsque je clique sur le bouton, il ne se passe rien.

Logs & infos complémentaires

Je vous conseille d’aller voir dans les logs clients (les autres n’ont guère d’infos utiles), vers la fin, on voit bien l’erreur, mais j’ai du mal à l’interpréter.
Si vous avez besoin de plus d’infos, faites-moi signe !

Version du serveur : v5
Système d’exploitation : Linux (Debian 9.9)

Yop ^^
Déja le son tu le déclares dans le CfgSounds dans le fichier description.ext
Ensuite est ce que t’as inclus ton script_macros sachant que tu utilises RCLIENT =)

Merci de ta réponse =)

Alors oui mon son a bien été déclaré mais effectivement j’ai zappé d’inclure le script_macros, je fais un essai et je reviens vers toi !

1 J'aime

Merci beaucoup et bien vu ! Je m’en veux d’avoir zappé cela >< En tout cas tout fonctionne à présent =)

Pas de soucis , c’est avec plaisir , je préfère zappé un include qu’un point-virgule XD

@Pierre Sujet Résolu ^^

tu sais que le say3D a ete recree par tonic ??

/*
File: fn_say3D.sqf
Author: Bryan "Tonic" Boardwine
Modified by: blackfisch

Description:
Pass your sounds that you want everyone nearby to hear through here.

Example:   [_veh,"unlock",50,1] remoteExec ["life_fnc_say3D",0];
*/
params [
["_object",objNull,[objNull]],
["_sound","",[""]],
["_distance",100,[0]],
["_pitch",1,[0]]
];

if (isNull _object || {_sound isEqualTo ""}) exitWith {};
if (_distance < 0) then {_distance = 100};
_object say3D [_sound,_distance,_pitch];

afin qu il soit global …

@brutalzic merci pour l’info, c’est bon à savoir ^^

@brutalzic par contre il l’exécute en 0 alors que le RCLIENT l’exécute en -2. Sur le coup c’est quoi le plus opti ? En global ou sur les clients ?

**targets** (Optional): [default: 0 = everyone]

* [Number](https://community.bistudio.com/wiki/Number) - Only 0 and 2 are special. When 0, the function or command will be executed globally, i.e. on the server and every connected client, including the one where remoteExec was originated. When 2, it will be executed only on the [server](https://community.bistudio.com/wiki/isServer). When 3, 4, 5...etc it will be executed on the client where [clientOwner](https://community.bistudio.com/wiki/clientOwner) ID matches the given number. When number is negative, the effect is inverted. -2 means execute on every client but not the server. -12, for example, means execute on the server and every client, but not on the client where [clientOwner](https://community.bistudio.com/wiki/clientOwner) ID is equal to 12.

le server ne gerant pas le son, ca changera pas la face du monde …

J’avais lu cela, mais je ne vois pas la différence entre 0 et -2, genre, si je suis la logique, 0 c’est tout les clients sur le serveur exécute le script mais pour -2 aussi alors ?

tous sauf le server …

-2 means execute on every client but not the server.

Oh ok, merci, faut que je me réveille x)

Ce qui veut dire dans ce cas que je n’utilise pas le JIP mais le SERVER dans le CfgRemoteExec.sqf donc ^^

JIP et SERVER n on rien a voir … le JIP c est pour affecter la fonction au joueur qui rejoigne le server en cours de route (Joint In Progress)