Jump to content

[RELEASE] Enigma_EPOCH_Animations


happydayz

Recommended Posts

                                                                                                             
           G                 GM    G             A      
   GMAEN  M E     E IGM   IG   N   AEN    EN    EN      
          E IG    I MAE  GM        NIG  EN G    IGM     
   N      I  AE   M ENIG A         G  ENI  A    MA N    
   G      MA  IG  E I MAEN         A  IG   N    E  G    
   A      EN  MA  I MAENI          N       G    I   E   
   NIGMA  IG   NI M  NIGM         IG       AE  GMAENI   
   G      MA    MAE  GMAEN      IGMA       NI  A   GMA  
   A      EN    E I  AEN G      MAEN       GM  N    EN  
   N       G     GM  NI  AEN    ENIG       AE        G  
   G       A     AE  GM   IGMAEN GM        NI M         
   AENIG  E          A       N             G            
                                                        

https://github.com/happydayz-enigma/Enigma_EPOCH_Animations

 

 
The purpose of this addon is to allow anyone executing animations on a client to easily transfer that animation across to all players within a specified range.
 
Normally this is done through the use of bis_fnc_mp however that has currently been disabled by the Epoch Devs.
 
Please note: The animations will only play on clients that have them  installed! Default Arma animations will work out of the box, however any animation mods will require all parties to have the animations installed for them to be visible!
 
 
 
 
------------------------------------------------------------------HOW TO GUIDE:------------------------------------------------------------------
 

 
To send your animations to surrounding clients you need to make changes to how you call animations in your custom script.
 
 
This example is for 2 animations - the first on the player, the second on _target.
 
Currently you will have something like this:
 
 
 
player switchMove "AinvPercMstpSnonWnonDnon_Putdown_AmovPercMstpSnonWnonDnon";
_target switchMove "AcinPercMstpSnonWnonDnon_agony";

 

 
 
 
This works fine from the clients point of view, however it is only visible for the executing client and not for surrounding players - including the target themselves!
 
 
To enable the target and any spectating clients to see the animations you need to make a few changes.
 
 
player switchMove "AinvPercMstpSnonWnonDnon_Putdown_AmovPercMstpSnonWnonDnon";
_target switchMove "AcinPercMstpSnonWnonDnon_agony";

ENIGMA_switchMove_PVS = [player, _animationCaseNumber, Epoch_personalToken, _target];
publicVariableServer "ENIGMA_switchMove_PVS";
_handled = true;

 

 
There is one last thing you will have to do on your client files. 
 
_animationCaseNumber is a specific case number that you will assign to each of your animation scenarios.
 
Lets say this is case #20. The Code will now read:
 
 
player switchMove "AinvPercMstpSnonWnonDnon_Putdown_AmovPercMstpSnonWnonDnon";
_target switchMove "AcinPercMstpSnonWnonDnon_agony";

ENIGMA_switchMove_PVS = [player, 20, Epoch_personalToken, _target];
publicVariableServer "ENIGMA_switchMove_PVS";
_handled = true;

 

 
 
 
This concludes any changes to your client code. We now move into the a3_epoch_enigma.pbo.
 
 
Open the file: a3_epoch_enigma\compile\epoch_animations\ENIGMA_server_handle_switchMove.sqf and locate the line:
 
 
case 20:{_animationRange=1000;
_originalClientAnimation= "AinvPercMstpSnonWnonDnon_Putdown_AmovPercMstpSnonWnonDnon";
_targetClientAnimation= "AcinPercMstpSnonWnonDnon_agony";
};

 

 
 
 
This is the format that any of your animations should be laid out.
 
 
 
_originalClientAnimation is the players animation.
_targetClientAnimation is the _targets animation.
_animationRange is the range you want clients to be able to see the animation.
 
 
The above example was for 2 animations to be played - both player and target. But what if you only want 1 animation to be played? Simple! 
 
 
In your client file use the following:
 
 
player switchMove "AinvPercMstpSnonWnonDnon_Putdown_AmovPercMstpSnonWnonDnon";

ENIGMA_switchMove_PVS = [player, 21, Epoch_personalToken];
publicVariableServer "ENIGMA_switchMove_PVS";
_handled = true;

 

 
 
In the server file use the following case format:
 
case 21:{_animationRange=1000;
_originalClientAnimation= "AinvPercMstpSnonWnonDnon_Putdown_AmovPercMstpSnonWnonDnon";
};

 

 
 
And there you have it!
 
 
I hope this helps with any animations issues you have been having!
 

 
 
[ZEN]happydayz - ENIGMA
 
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Discord

×
×
  • Create New...