Français Solved Comment ajouter une fonction de réanimation en l'absence de médic

okin74

User
18/5/20
114
4
10
1 100
rhone alpes FRANCE
Bonjour, bonsoir,

J'ai un léger soucis concernant les réanimations.

Alors avec les Médic aucun soucis tout fonctionne parfaitement, mais il manque une chose essentielle, pouvoir réanimer en amenant une personne directement sur un panneau quand il y a zéro Médic en ligne.
Je ne sait pas si c'est une fonction de base sur le mod AltisLife, mais l'ayant vu a peu près partout je me pose la question car dans mon cas je n'arrive pas a avoir cette interaction.
Le but serait pour moi de placer cette interaction dans le même panneau que celui qui peut nous soigner (placé dans un hôpital très généralement).

Je vous remercie d'avance !
 
Solution
Salut, il te suffit de call un script depuis l'addAction :

Code:
this addAction[
    "<t color='#00FF00'>Soigner un inconscient</t>",
    "[] spawn life_fnc_healHospitalOther"
];
Tu créer ta fonction healHospitalOther, tu la déclare dans le cfgFunction et dedans tu met :


Code:
/*
    Author: Yuri Zoko
    Web site: www.the-programmer.com
    Discord: discord.the-programmer.com

    Terms of use:
      - This file is forbidden unless you have permission from the author. If you have this file without permission to use it please do not use it and do not share it.
      - If you have permission to use this file, you can use it on your server however it is strictly forbidden to share it.
      - Out of respect for the author please do not...
Salut, il te suffit de call un script depuis l'addAction :

Code:
this addAction[
    "<t color='#00FF00'>Soigner un inconscient</t>",
    "[] spawn life_fnc_healHospitalOther"
];
Tu créer ta fonction healHospitalOther, tu la déclare dans le cfgFunction et dedans tu met :


Code:
/*
    Author: Yuri Zoko
    Web site: www.the-programmer.com
    Discord: discord.the-programmer.com

    Terms of use:
      - This file is forbidden unless you have permission from the author. If you have this file without permission to use it please do not use it and do not share it.
      - If you have permission to use this file, you can use it on your server however it is strictly forbidden to share it.
      - Out of respect for the author please do not delete this information.
*/
private _startPos = position player;

if ({side _x == independent} count playableUnits > 3 && playerSide != independent) exitWith { hint "Il y a suffisamment de pompiers connectés pour qu'ils soignent votre ami!"; };
hint "Veuillez pointer le patient";
waitUntil {sleep 0.1; cursorTarget isKindOf "Man" && (cursorTarget getVariable ["ACE_isUnconscious",false] || playerSide == independent)};
private _target = cursorTarget;
if (!alive _target) exitWith { hint "Cette personne est morte."; };
if (_startPos distance player > 15) exitWith { hint "Vous vous êtes trop éloigné du médecin!"; };

hint "Le blessé va être soigné dans quelques instant!";
[] remoteExec ["life_fnc_healHospital", _target];

Ensuite modifie ton healHospital par celui-ci :

Code:
/*
    Author: Yuri Zoko
    Web site: www.the-programmer.com
    Discord: discord.the-programmer.com

    Terms of use:
      - This file is forbidden unless you have permission from the author. If you have this file without permission to use it please do not use it and do not share it.
      - If you have permission to use this file, you can use it on your server however it is strictly forbidden to share it.
      - Out of respect for the author please do not delete this information.
*/
if ({side _x isEqualTo independent } count playableUnits > 3) exitWith { hint "Il y a suffisamment de médecins pour qu'ils vous soignent!"; };
if ({side _x isEqualTo independent && player distance _x < 1500} count playableUnits > 1) exitWith { hint "Il y a des médecins juste à côté !"; };
if ({side _x isEqualTo independent && player distance _x < 500} count playableUnits > 0) exitWith { hint "Erreur","Il y a des médecins juste à côté !"; };

hint format [localize "STR_NOTF_HS_Healing", 10];

uiSleep 10;

if (count _this > 0 && player distance (_this select 0) > 5) exitWith { titleText[localize "STR_NOTF_HS_ToFar","PLAIN"] };
hint localize "STR_NOTF_HS_Healed";
[player,player] call ace_medical_fnc_treatmentAdvanced_fullHealLocal;

N'oublies pas d'ajouter cette dernière fonction dans le cfgRemoteExec :

Code:
F(life_fnc_healHospital,CLIENT)
 
Dernière édition:
  • Love
Les réactions: Joe Dalton
Solution
Re, je viens aux nouvelles ^^

Alors je n'est pas compris ou je doit placer la première partie, j'ai quand même tenter de l'ajouter a l'init dans mon panneau mais j'étais presque sur que ce n'était pas ça.
Vraiment désolé, j'avoue avoir encore quelques lacunes :D

Pourriez-vous m'éclairer d'avantage svp ?
Par avance merci !
 
Mais dans un panneau ça n'a aucun sens ? Car ta _target n'existe plus ?
Le mieux serais d'ajouter l'action sur un joueur quand il as une personne qui est morte en face de lui :D

Essaye quelques chose comme ça (je suis au boulot, donc ça reste brouillon) :
Code:
player addAction ["<t color='#00FF00'>Soigner un inconscient</t>",{ [] spawn life_fnc_healHospitalOther },nil,1.5,true,true,"",'getVariable ["ACE_isUnconscious",false]',5];
 
Merci pour vos réponses !
Je vais essayer vos deux propositions et voir laquelle conviens le mieux :)

Le panneau c'était dans l'esprit d'amener son camarade inconscient a l'hôpital pour avoir une chance de l'en faire sortir grâce au panneau et surtout si il y a pas de médecins en ville (ou 3 avec la proposition tout en haut)
 
Mais dans un panneau ça n'a aucun sens ? Car ta _target n'existe plus ?
Le mieux serais d'ajouter l'action sur un joueur quand il as une personne qui est morte en face de lui :D

Essaye quelques chose comme ça (je suis au boulot, donc ça reste brouillon) :
Code:
player addAction ["<t color='#00FF00'>Soigner un inconscient</t>",{ [] spawn life_fnc_healHospitalOther },nil,1.5,true,true,"",'getVariable ["ACE_isUnconscious",false]',5];
Tu as mal lu le code alors, _target = cursorTarget après l'action du panneau (il y a un waitUntil)

Réa un mec via un addaction n'importe quand je trouve ça bof, un panneau c'est mieux ;)

ps : au passage j'avais oublié 1 fichier x) j'ai edit ma 1ere réponse
 
Dernière édition:
Re,

Je viens donner des nouvelles de mon essai.

Du coup on à mis un civil dans le coma ( léger coup de pare choc ), on à trainer le patient au panneau, l'interaction s'affiche bien, la personne en cours de soin reçoit une notification qui dit "ne bougez pas", puis reçoit la notification "vous avez été soigné ".
La "santé" remonte bien à 100%, par contre les blessures, saignement etc ne disparaissent pas et la personne reste dans le coma.

On est vraiment pas loin, vous pensez que ça peut venir d'où ce soucis svp ?
 
Si tu as la dernière version, dans le healHospital remplace la dernière ligne
Code:
[player,player] call ace_medical_fnc_treatmentAdvanced_fullHealLocal;
Par
Code:
[player] call ace_medical_treatment_fnc_fullHealLocal