• Réaliser une translation via un script (animation ascenseur)


    Bonjour, je fais appel à vous pour quelques infos concernant les translations via des scripts. J’aimerai donc animer un ascenseur sur l’axe Y donc un TranslationY.

    Voici mon model.cfg :

    /*
    */
    
    class CfgSkeletons
    {
    	class Skeleton_MacSim_Test
    	{
    		isDiscrete = 1;
    		skeletonInherit = "";
    		skeletonBones[]=
    		{
    			"model","",
    			"",""
    		};
    	};
    };
    class CfgModels
    {
    	class MacSim_Test_base
    	{
    		sectionsInherit="";
    		skeletonName = "Skeleton_MacSim_Test_base";
    		sections[]={"model"};
    	};
    		
    	class MacSim_Test: MacSim_Test_base
    	{
    		class Animations 
    		{
    			class ascenseur_translationY
    			{
    			    type="translationX";
    				source="user"; 
    				selection="model";
    				axis="";
    				memory=1;
    				minValue="0";
    				maxValue="5.2";
    			};
    
    		};
    	};
    };
    

    Et voici le config.cpp :

    #include "BIS_AddonInfo.hpp"
    class CfgPatches
    {
    	class MacSim_Test
    		{
    			units[] = {"MacSim_Test_base"};
    			weapons[] = {};
    			requiredVersion = 1.0;
    		};
    };
    
    class CfgVehicles
    {
    	class All{};
    	class Static: All{};
    	class MacSim_Test_base: Static
    	{
    		model = "\MacSim_Test\MacSim_Test.p3d";
    		author = "[UnKnow] MacSim";
    		scope = 2;
    		side = 3;
    		displayName = "MacSim_Test";
    
    	};
    };
    
    class AnimationSources
    {
    			class ascenseur_translationY
    			{
    				source = "user";
    				animPeriod = 2;
    			};
    };
    
    class UserActions
     {
       class ascenseur_translationY // action to open the door
     	{
       			class Open_Coffre
    			{
    				displayName = "Monter";
    				position = "pouf";
    				radius = 4;
    				condition = "this animationphase ""ascenseur_translationY"" == 0";
    				statement = "this animate [""ascenseur_translationY"",1]";
    				onlyforplayer = "true";
    			};
    
    			class Close_Coffre : Open_Coffre
    			{
    				displayName = "Descendre";
    				condition = "this animationphase ""ascenseur_translationY"" == 1";
    				statement = "this animate [""ascenseur_translationY"",0]";
    			};
    	};
     };
    

    J’ai cherché pendant plus de 3 heures une solution sans la trouvé. Ai-je oublié de noté une chose? En ai-je trop marqué? Bref, je suis perdu car je ne trouve aucun résultats au modifs que je fait pour permettre de trouver l’erreur.

    Je ne demande pas un code tout fais mais plutôt une solution (m’expliquer mon erreur pour ne plus la refaire).

    J’aimerai également des précisions sur les significations de “source”, “selection”, min et maxValue, et les offset0 et offset1. Car malgré la traduction approximative du wiki de BIS, je ne comprend pas vraiment leur rôle, quand les mettres, quand ne pas les mettres…

    Merci d’avance pour vos réponse futurs.

    Bon Dev !

  • Je suis curieux de le savoir aussi

  • vite fait tu doit crée une animation slide avec deux point(memory) pour indiquer la translation

  • Merci John mais je n’ai rien trouvé sur le slide. Pourrais-tu m’apporter plus de précisions stp?

  • je me rappelle plus trop

    mais au lieu d’utiliser une rotation en type tu choisi une translation

    // model.cfg
    ....
    class Animations
    {
    	class Door_1_rot
    	{
    		type = rotation;
    		source = Door_1_sound_source;
    		selection = Door_1;
    		axis = Door_1_axis;
    		memory = 1;
    		minValue = 0.1;
    		maxValue = 1;
    		angle0 = 0;
    		angle1 = (rad 110);
    	};
    	class Door_Handle_1_rot
    	{
    		type = rotation;
    		source = Door_1_noSound_source;
    		selection = Door_Handle_1;
    		axis = Door_Handle_1_axis;
    		memory = 1;
    		minValue = 0;
    		maxValue = 0.1;
    		angle0 = 0;
    		angle1 = (rad -50);
    	};
    };```
    
    
    https://community.bistudio.com/wiki/Model_Config#Animation_sources
  • J’ai vu cela et c’est ce que j’ai fait mais rien ne fonctionne. J’ai beau lire et relire, modifier et re-modifier, rien n’y fait.

animation1 Messages 6Vues 385