/******************************************************************************
 * 457_Raym.cxx : file automaticly generated
 ******************************************************************************/

#include "gamedata\world\levels\_common\cfast\457_Raym.h"
void CFast_YLT_RaymanModel_Rfx_BNT_ReflexeMort ( void ) ;
void CFast_YLT_RaymanModel_Rfx_YLT_AucunReflexe ( void ) ;
void CFast_YLT_RaymanModel_Rfx_YLT_SautDetecteSol ( void ) ;
void CFast_YLT_RaymanModel_Rfx_YLT_ReflexeAttente ( void ) ;
void CFast_YLT_RaymanModel_Rfx_YLT_SautCourant ( void ) ;
void CFast_YLT_RaymanModel_Rfx_JAC_GiReflexe ( void ) ;
void CFast_YLT_RaymanModel_Rfx_BNT_ReflexeNage ( void ) ;
void CFast_YLT_RaymanModel_Rfx_BNT_ReflexeGrappin ( void ) ;
void CFast_YLT_RaymanModel_Rfx_CHG_VarREflexe ( void ) ;
void CFast_YLT_RaymanModel_Rfx_FRD_Entr2Reflexe ( void ) ;
void CFast_YLT_RaymanModel_Rfx_BNT_TonneauFuseeReflexe ( void ) ;
void CFast_YLT_RaymanModel_Rfx_BNT_ReflexeDansLeSiegeRusse ( void ) ;
void CFast_YLT_RaymanModel_Rfx_BNT_ReflexeTonneauPorte ( void ) ;
void CFast_YLT_RaymanModel_Rfx_YLT_ReinitReflexe ( void ) ;
void CFast_YLT_RaymanModel_Rfx_BNT_ReflexePatin ( void ) ;
void CFast_YLT_RaymanModel_Rfx_BNT_SautImpulsionReflexe ( void ) ;

void CFast_YLT_RaymanModel_Cmp_YLT_Init ( void ) ;
void CFast_YLT_RaymanModel_Cmp_YLT_Attente ( void ) ;
void CFast_YLT_RaymanModel_Cmp_YLT_SautReception ( void ) ;
void CFast_YLT_RaymanModel_Cmp_YLT_SautMontee ( void ) ;
void CFast_YLT_RaymanModel_Cmp_YLT_Helico ( void ) ;
void CFast_YLT_RaymanModel_Cmp_BNT_Nage ( void ) ;
void CFast_YLT_RaymanModel_Cmp_YLT_BlocMode ( void ) ;
void CFast_YLT_RaymanModel_Cmp_BNT_Grappin ( void ) ;
void CFast_YLT_RaymanModel_Cmp_YLT_GiBlocMode ( void ) ;
void CFast_YLT_RaymanModel_Cmp_YLT_Reinit ( void ) ;
void CFast_YLT_RaymanModel_Cmp_YLT_Desactive ( void ) ;
void CFast_YLT_RaymanModel_Cmp_YLT_EntreDeux ( void ) ;
void CFast_YLT_RaymanModel_Cmp_YLT_EntreDeuxAvance ( void ) ;
void CFast_YLT_RaymanModel_Cmp_YLT_EntreDeuxRecul ( void ) ;
void CFast_YLT_RaymanModel_Cmp_CHG_RaymanPaf ( void ) ;
void CFast_YLT_RaymanModel_Cmp_CHG_RayPafAir ( void ) ;
void CFast_YLT_RaymanModel_Cmp_CHG_RayPafEau ( void ) ;
void CFast_YLT_RaymanModel_Cmp_CHG_RayPafEcrase ( void ) ;
void CFast_YLT_RaymanModel_Cmp_YLT_PafSol ( void ) ;
void CFast_YLT_RaymanModel_Cmp_YLT_TonneauFuseeComport ( void ) ;
void CFast_YLT_RaymanModel_Cmp_YLT_Vide ( void ) ;
void CFast_YLT_RaymanModel_Cmp_BNT_RayPafAttendLaMort ( void ) ;
void CFast_YLT_RaymanModel_Cmp_YLT_PafGi ( void ) ;
void CFast_YLT_RaymanModel_Cmp_YLT_ChuteInfinie ( void ) ;
void CFast_YLT_RaymanModel_Cmp_YLT_SautImpulsion ( void ) ;
void CFast_YLT_RaymanModel_Cmp_BNT_DansLeSiegeRusse ( void ) ;
void CFast_YLT_RaymanModel_Cmp_YLT_SautSommet ( void ) ;
void CFast_YLT_RaymanModel_Cmp_YLT_Varappe ( void ) ;
void CFast_YLT_RaymanModel_Cmp_BNT_TonneauAttente ( void ) ;
void CFast_YLT_RaymanModel_Cmp_BNT_TonneauMarcheAvant ( void ) ;
void CFast_YLT_RaymanModel_Cmp_YLT_GiAttente ( void ) ;
void CFast_YLT_RaymanModel_Cmp_YLT_GiMarche ( void ) ;
void CFast_YLT_RaymanModel_Cmp_BNT_AccrocheAuBord ( void ) ;
void CFast_YLT_RaymanModel_Cmp_BNT_AccrocheRemonte ( void ) ;
void CFast_YLT_RaymanModel_Cmp_BNT_NagePlonge ( void ) ;
void CFast_YLT_RaymanModel_Cmp_BNT_NageSaute ( void ) ;
void CFast_YLT_RaymanModel_Cmp_BNT_WalkRunComport ( void ) ;
void CFast_YLT_RaymanModel_Cmp_BNT_AccrocheTentatives ( void ) ;
void CFast_YLT_RaymanModel_Cmp_BNT_NewPatin ( void ) ;
void CFast_YLT_RaymanModel_Cmp_BNT_PafElectrique ( void ) ;
void CFast_YLT_RaymanModel_Cmp_BNT_Atterrissage ( void ) ;
void CFast_YLT_RaymanModel_Cmp_BNT_Basket ( void ) ;
void CFast_YLT_RaymanModel_Cmp_BNT_TransePolochusComport ( void ) ;
void CFast_YLT_RaymanModel_Cmp_BNT_FadeDeLaMort ( void ) ;
void CFast_YLT_RaymanModel_Cmp_BNT_FadeDeLaMortBis ( void ) ;

long CFast_YLT_RaymanModel_Sbr_0  (void ) ; /* BNT_GestionDuTirAccumule */
long CFast_YLT_RaymanModel_Sbr_1  (void ) ; /* BNT_CommenceTirBlocEnFonctionDuQuart */
long CFast_YLT_RaymanModel_Sbr_2  (void ) ; /* BNT_PrepareReinit */
long CFast_YLT_RaymanModel_Sbr_3  (void ) ; /* BNT_AccrocheToi */
long CFast_YLT_RaymanModel_Sbr_4  (void ) ; /* BNT_PasseEnSautDescente */
long CFast_YLT_RaymanModel_Sbr_5  (void ) ; /* BNT_GenereProjectileSiNecessaire */
long CFast_YLT_RaymanModel_Sbr_6  (void ) ; /* BNT_CommenceTirEnSaut */
long CFast_YLT_RaymanModel_Sbr_7  (void ) ; /* BNT_ReinitZeMapQuandJeSuisMort */
long CFast_YLT_RaymanModel_Sbr_8  (void ) ; /* BNT_RaymanEstIlImprudentEnNage */
long CFast_YLT_RaymanModel_Sbr_9  (void ) ; /* BNT_VerifieCollisionElectrique */
long CFast_YLT_RaymanModel_Sbr_10  (void ) ; /* BNT_VerifieCollisionLave */
long CFast_YLT_RaymanModel_Sbr_11  (void ) ; /* BNT_VerifieCollisionChuteInfinie */
long CFast_YLT_RaymanModel_Sbr_12  (void ) ; /* BNT_VerifieCollisionMort */
long CFast_YLT_RaymanModel_Sbr_13  (void ) ; /* BNT_VerifieCollisionRonces */
long CFast_YLT_RaymanModel_Sbr_14  (void ) ; /* BNT_RaymanEstIlImprudentAuSol */
long CFast_YLT_RaymanModel_Sbr_15  (void ) ; /* BNT_RaymanEstIlImprudentEnLair */
long CFast_YLT_RaymanModel_Sbr_16  (void ) ; /* BNT_RaymanEstIlPafe */
long CFast_YLT_RaymanModel_Sbr_17  (void ) ; /* BNT_PropageTirEnAttenteSiNecessaire */
long CFast_YLT_RaymanModel_Sbr_18  (void ) ; /* BNT_PasseEnAttente */
long CFast_YLT_RaymanModel_Sbr_19  (void ) ; /* BNT_OrienteVersCibleEnCombat */
long CFast_YLT_RaymanModel_Sbr_20  (void ) ; /* BNT_CommenceTirEnAttente */
long CFast_YLT_RaymanModel_Sbr_21  (void ) ; /* BNT_EffectuePassageEnVarappe */
long CFast_YLT_RaymanModel_Sbr_22  (void ) ; /* BNT_PropageTirEnSaut */
long CFast_YLT_RaymanModel_Sbr_23  (void ) ; /* BNT_PropageTirEnAttente */
long CFast_YLT_RaymanModel_Sbr_24  (void ) ; /* BNT_PropageTirEnCourse */
long CFast_YLT_RaymanModel_Sbr_25  (void ) ; /* BNT_EntreDeuxSauteALaDemande */
long CFast_YLT_RaymanModel_Sbr_26  (void ) ; /* BNT_AMortLesMusiquesParasites */
long CFast_YLT_RaymanModel_Sbr_27  (void ) ; /* BNT_RaymanEstIlInvulnerable */
long CFast_YLT_RaymanModel_Sbr_28  (void ) ; /* BNT_AtterritSurLeSol */
long CFast_YLT_RaymanModel_Sbr_29  (void ) ; /* BNT_PasseEnVarappeDuSaut */
long CFast_YLT_RaymanModel_Sbr_30  (void ) ; /* BNT_FaitRebondirRayman */
long CFast_YLT_RaymanModel_Sbr_31  (void ) ; /* BNT_TestEcrasement */
long CFast_YLT_RaymanModel_Sbr_32  (void ) ; /* BNT_PasseEnHelico */
long CFast_YLT_RaymanModel_Sbr_33  (void ) ; /* BNT_QuitteLeModeChuteSiDemande */
long CFast_YLT_RaymanModel_Sbr_34  (void ) ; /* BNT_CalculeDirectionDeDeplacementEnSaut */
long CFast_YLT_RaymanModel_Sbr_35  (void ) ; /* BNT_ChangeAnimDescente */
long CFast_YLT_RaymanModel_Sbr_36  (void ) ; /* BNT_TombeDansLEau */
long CFast_YLT_RaymanModel_Sbr_37  (void ) ; /* BNT_FaitPloufDansLesFlaques */
long CFast_YLT_RaymanModel_Sbr_38  (void ) ; /* BNT_GereLaFinDAnimDePaf */
long CFast_YLT_RaymanModel_Sbr_39  (void ) ; /* BNT_EjectionLateraleQuandPeutTomberEnSaut */
long CFast_YLT_RaymanModel_Sbr_40  (void ) ; /* BNT_CoupeImpulsionForceeContreLesMurs */
long CFast_YLT_RaymanModel_Sbr_41  (void ) ; /* BNT_PasseEnSautMontee */
long CFast_YLT_RaymanModel_Sbr_42  (void ) ; /* BNT_PasseEnComportPatinDepuisLeSol */
long CFast_YLT_RaymanModel_Sbr_43  (void ) ; /* BNT_CoupeAccrochageArriereSiNecessaire */
long CFast_YLT_RaymanModel_Sbr_44  (void ) ; /* BNT_LitPadEnSaut */
long CFast_YLT_RaymanModel_Sbr_45  (void ) ; /* BNT_PasseEnVarappeDuSol */
long CFast_YLT_RaymanModel_Sbr_46  (void ) ; /* BNT_FinCommuneComportsEntreDeux */
long CFast_YLT_RaymanModel_Sbr_47  (void ) ; /* BNT_GenerePloufDEntreeDansLEau */
long CFast_YLT_RaymanModel_Sbr_48  (void ) ; /* BNT_PasseEnEntreDeux */
long CFast_YLT_RaymanModel_Sbr_49  (void ) ; /* BNT_GiPasseEnAttente */
long CFast_YLT_RaymanModel_Sbr_50  (void ) ; /* BNT_LacheLeTonneau */
long CFast_YLT_RaymanModel_Sbr_51  (void ) ; /* BNT_AttrapeTonneauAuDessusOuDevant */
long CFast_YLT_RaymanModel_Sbr_52  (void ) ; /* BNT_PasseEnGI */
long CFast_YLT_RaymanModel_Sbr_53  (void ) ; /* BNT_PafReinitEnSautDescente */
long CFast_YLT_RaymanModel_Sbr_54  (void ) ; /* BNT_PafReinitEnSautMontee */
long CFast_YLT_RaymanModel_Sbr_55  (void ) ; /* BNT_CommenceAAccumuler */
long CFast_YLT_RaymanModel_Sbr_56  (void ) ; /* BNT_MemoriseVitessePere */
long CFast_YLT_RaymanModel_Sbr_57  (void ) ; /* BNT_GereLaVitesseRelativeEtLInertieEnSaut */
long CFast_YLT_RaymanModel_Sbr_58  (void ) ; /* BNT_RestaurePositionInitiale */
long CFast_YLT_RaymanModel_Sbr_59  (void ) ; /* BNT_GiSauteALaDemande */
long CFast_YLT_RaymanModel_Sbr_60  (void ) ; /* BNT_ImmobiliseLaCamera */
long CFast_YLT_RaymanModel_Sbr_61  (void ) ; /* BNT_QuitteLeModeTonneauFusee */
long CFast_YLT_RaymanModel_Sbr_62  (void ) ; /* BNT_PerdUnPointDeMegaShoot */
long CFast_YLT_RaymanModel_Sbr_63  (void ) ; /* BNT_PerdTousLesPointsDeMegashoot */
long CFast_YLT_RaymanModel_Sbr_64  (void ) ; /* BNT_TombeDansLEauZiva */

CFast_EvalFunc CFast_YLT_RaymanModel_ArrayReflex[] = {
  CFast_YLT_RaymanModel_Rfx_BNT_ReflexeMort,
  CFast_YLT_RaymanModel_Rfx_YLT_AucunReflexe,
  CFast_YLT_RaymanModel_Rfx_YLT_SautDetecteSol,
  CFast_YLT_RaymanModel_Rfx_YLT_ReflexeAttente,
  CFast_YLT_RaymanModel_Rfx_YLT_SautCourant,
  CFast_YLT_RaymanModel_Rfx_JAC_GiReflexe,
  CFast_YLT_RaymanModel_Rfx_BNT_ReflexeNage,
  CFast_YLT_RaymanModel_Rfx_BNT_ReflexeGrappin,
  CFast_YLT_RaymanModel_Rfx_CHG_VarREflexe,
  CFast_YLT_RaymanModel_Rfx_FRD_Entr2Reflexe,
  CFast_YLT_RaymanModel_Rfx_BNT_TonneauFuseeReflexe,
  CFast_YLT_RaymanModel_Rfx_BNT_ReflexeDansLeSiegeRusse,
  CFast_YLT_RaymanModel_Rfx_BNT_ReflexeTonneauPorte,
  CFast_YLT_RaymanModel_Rfx_YLT_ReinitReflexe,
  CFast_YLT_RaymanModel_Rfx_BNT_ReflexePatin,
  CFast_YLT_RaymanModel_Rfx_BNT_SautImpulsionReflexe
};
CFast_EvalFunc CFast_YLT_RaymanModel_ArrayComport[] = { 
  CFast_YLT_RaymanModel_Cmp_YLT_Init,
  CFast_YLT_RaymanModel_Cmp_YLT_Attente,
  CFast_YLT_RaymanModel_Cmp_YLT_SautReception,
  CFast_YLT_RaymanModel_Cmp_YLT_SautMontee,
  CFast_YLT_RaymanModel_Cmp_YLT_Helico,
  CFast_YLT_RaymanModel_Cmp_BNT_Nage,
  CFast_YLT_RaymanModel_Cmp_YLT_BlocMode,
  CFast_YLT_RaymanModel_Cmp_BNT_Grappin,
  CFast_YLT_RaymanModel_Cmp_YLT_GiBlocMode,
  CFast_YLT_RaymanModel_Cmp_YLT_Reinit,
  CFast_YLT_RaymanModel_Cmp_YLT_Desactive,
  CFast_YLT_RaymanModel_Cmp_YLT_EntreDeux,
  CFast_YLT_RaymanModel_Cmp_YLT_EntreDeuxAvance,
  CFast_YLT_RaymanModel_Cmp_YLT_EntreDeuxRecul,
  CFast_YLT_RaymanModel_Cmp_CHG_RaymanPaf,
  CFast_YLT_RaymanModel_Cmp_CHG_RayPafAir,
  CFast_YLT_RaymanModel_Cmp_CHG_RayPafEau,
  CFast_YLT_RaymanModel_Cmp_CHG_RayPafEcrase,
  CFast_YLT_RaymanModel_Cmp_YLT_PafSol,
  CFast_YLT_RaymanModel_Cmp_YLT_TonneauFuseeComport,
  CFast_YLT_RaymanModel_Cmp_YLT_Vide,
  CFast_YLT_RaymanModel_Cmp_BNT_RayPafAttendLaMort,
  CFast_YLT_RaymanModel_Cmp_YLT_PafGi,
  CFast_YLT_RaymanModel_Cmp_YLT_ChuteInfinie,
  CFast_YLT_RaymanModel_Cmp_YLT_SautImpulsion,
  CFast_YLT_RaymanModel_Cmp_BNT_DansLeSiegeRusse,
  CFast_YLT_RaymanModel_Cmp_YLT_SautSommet,
  CFast_YLT_RaymanModel_Cmp_YLT_Varappe,
  CFast_YLT_RaymanModel_Cmp_BNT_TonneauAttente,
  CFast_YLT_RaymanModel_Cmp_BNT_TonneauMarcheAvant,
  CFast_YLT_RaymanModel_Cmp_YLT_GiAttente,
  CFast_YLT_RaymanModel_Cmp_YLT_GiMarche,
  CFast_YLT_RaymanModel_Cmp_BNT_AccrocheAuBord,
  CFast_YLT_RaymanModel_Cmp_BNT_AccrocheRemonte,
  CFast_YLT_RaymanModel_Cmp_BNT_NagePlonge,
  CFast_YLT_RaymanModel_Cmp_BNT_NageSaute,
  CFast_YLT_RaymanModel_Cmp_BNT_WalkRunComport,
  CFast_YLT_RaymanModel_Cmp_BNT_AccrocheTentatives,
  CFast_YLT_RaymanModel_Cmp_BNT_NewPatin,
  CFast_YLT_RaymanModel_Cmp_BNT_PafElectrique,
  CFast_YLT_RaymanModel_Cmp_BNT_Atterrissage,
  CFast_YLT_RaymanModel_Cmp_BNT_Basket,
  CFast_YLT_RaymanModel_Cmp_BNT_TransePolochusComport,
  CFast_YLT_RaymanModel_Cmp_BNT_FadeDeLaMort,
  CFast_YLT_RaymanModel_Cmp_BNT_FadeDeLaMortBis
};

void CFast_Dummy_YLT_RaymanModel(void) ;
char g_YLT_RaymanModel_StaticTreeInit = 0 ;


void CFast_YLT_RaymanModel_Main ( HIE_tdxHandleToSuperObject hSuperObjPerso )
{
  register long                lIndex ;
   register AI_tdstMind         *p_stMind = M_pstGetMindOfBrain(M_GetMSHandle(hSuperObjPerso, Brain)) ;

  p_stGlobalMind = p_stMind;
  gp_stRefTree = &M_CFast_GetReferenceNodeN(hSuperObjPerso, 0);
  g_hSuperObjectPerso = hSuperObjPerso;

#ifndef U64
  gp_stPseudoTree = p_stMind->p_stAIModel->CFast_dst_ParamArray;
#else
  gp_stPseudoTree = CFast_gast_ArrayFunctions[p_stMind->p_stAIModel->CFast_lFunction].mp_stPseudoTree;
#endif

#ifdef DEBUG_CFAST
  if ( !g_YLT_RaymanModel_StaticTreeInit )
  {
    g_YLT_RaymanModel_StaticTreeInit = 1 ;
    CFast_Dummy_YLT_RaymanModel();
  }
#endif /* DEBUG_CFAST */
  p_cGlobalDsgMemBuffer = p_stMind->p_stDsgMem->p_cDsgMemBuffer;
  p_stGlobalDsgVarInfo = (*(p_stMind->p_stDsgMem->p_p_stDsgVar))->p_stDsgVarInfo;
  CFast_g_bMetaActionInRfx = 0 ;
  AI_M_SetDoingIntel(p_stMind, 0) ;
  CFast_g_bProcessReflex = 1 ;
  lIndex = M_GetCurrentComport(AI_M_p_stGetReflex(p_stMind))->CFast_lMyIndex ;
  CFast_YLT_RaymanModel_ArrayReflex[lIndex]();

  if ( !CFast_g_bMetaActionInRfx  )
  {
    AI_M_SetDoingIntel(p_stMind, 1) ;
    CFast_g_bProcessReflex = 0 ;
    lIndex = M_GetCurrentComport(AI_M_p_stGetIntelligence(p_stMind))->CFast_lMyIndex ;
    CFast_YLT_RaymanModel_ArrayComport[lIndex]();
  }
}
/*
 * Model : YLT_RaymanModel Subroutine BNT_GestionDuTirAccumule
 */
long CFast_YLT_RaymanModel_Sbr_35 (void) /* BNT_GestionDuTirAccumule */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
  if ( CFast_CallCondition_Static(0) ) {

/* [Cond : ACT_TestFinAction] ********** [0, 0, 2]*/
    long1 = CFast_CallCondition_Static(2) ;
if ( long1 ) {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 3]*/
      long1 = CFast_CallCondition_Static(3) ;
    }
    if ( long1 ) {

/* [Cond : BoutonAppuye] ********** [1, 1, 2]*/
      long1 = (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+40)) ? 1 : 0;
if ( long1 ) {
        long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 120))));
      }
      if ( long1 ) {
        if ( CFast_YLT_RaymanModel_Sbr_0 ( ) )
          return 1 ;
/* [MacroRef : 0] ********** [0]*/
      }
      else {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
        fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
        CFast_CallProcedure_Static( 5 ) ;
        if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
          CFast_g_bMetaActionInRfx = 1 ;
          if ( CFast_g_bProcessReflex )
            p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
          else
            p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
          return (1) ;
        }
      }
    }

/* [Cond : BoutonAppuye] ********** [1, 1, 2]*/
    long1 = (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+40)) ? 1 : 0;
if ( long1 ) {
      long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16))));
    }
    if ( long1 ) {

/* [Cond : BoutonJusteAppuye] ********** [1, 1, 1]*/
      if ( (long)IPT_fn_bIsJustValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+40)) ) {
        LocalCFast_fn_vSetDsgVarBoolean(20, 1) ;
      }

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
      if ( CFast_CallCondition_Static(7) ) {

/* [Func : Temps_LitDT] ********** [0, 0, 2]*/
        CFast_CallFunction2_Static( 9 ) ;
        LocalCFast_fn_vSetDsgVarFloat(19, MTH_M_xAdd(LocalCFast_fn_xGetDsgVarFloat(19),M_GetSetParam_xValue(CFast_g_a_stParam+2))) ;
        M_GetSetParam_xValue(&CFast_g_a_stParam[3]) = MTH_M_xMin((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 19)))),MTH_M_xLongToReal(2000));
        M_GetSetParam_Type(&CFast_g_a_stParam[3]) = E_vt_Float;

/* [Math_ : Math_MinimumReel] ********** [0, 2, 3]*/
        LocalCFast_fn_vSetDsgVarFloat(36, MTH_M_xAdd(MTH_M_xMul(M_GetSetParam_xValue(CFast_g_a_stParam+3),MTH_M_xDiv(MTH_M_xFloatToReal(2.90000f),MTH_M_xLongToReal(2000))),MTH_M_xFloatToReal(0.10000f))) ;
        if ( ! ( gcGlobAleat & 0x1 ) )
        {

/* [Cond : >=] ********** [3, 2, 1]*/
          if ( MTH_M_bGreaterEqual((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 19)))), MTH_M_xLongToReal(2000)) ) {

/* [Func : MOD_PositionAbsolueModule] ********** [3, 1, 1]*/
            CFast_CallFunction1_Static( 10 ) ;

/* [Func : ACT_ViseePerso] ********** [3, 0, 2]*/
            CFast_CallFunction2_Static( 12 ) ;
            M_Full_GetSetParam_Float(&CFast_g_a_stParam[3], MTH_M_xMul((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 36)))),MTH_M_xFloatToReal(2.000000f)));

/* [Proc : LanceAGO] *********** [6, 5, 0]*/
              M_p_stVectorInterpret(p_stPseudoTree+15) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
              M_p_stVectorInterpret(p_stPseudoTree+16) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
              M_lValueInterpret(p_stPseudoTree+18) = M_GetSetParam_lValue(CFast_g_a_stParam+3);
            CFast_CallProcedure_Static( 13 ) ;
            if ( !( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 121)))) ) ) {
              LocalCFast_fn_vSetDsgVarBoolean(121, 1) ;

/* [Proc : EnvoieRequeteSon] *********** [2, 1, 0]*/
              CFast_CallProcedure_Static( 19 ) ;
            }
          }
        }
        else {

/* [Func : MOD_PositionAbsolueModule] ********** [3, 1, 1]*/
          CFast_CallFunction1_Static( 10 ) ;

/* [Func : ACT_ViseePerso] ********** [3, 0, 2]*/
          CFast_CallFunction2_Static( 12 ) ;

/* [Proc : LanceAGO] *********** [6, 5, 0]*/
            M_p_stVectorInterpret(p_stPseudoTree+23) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
            M_p_stVectorInterpret(p_stPseudoTree+24) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
          CFast_CallProcedure_Static( 21 ) ;
        }

/* [Cond : >] ********** [3, 2, 1]*/
        if ( MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 19)))), MTH_M_xLongToReal(5000)) ) {
          LocalCFast_fn_vSetDsgVarBoolean(20, 1) ;

/* [Proc : ChangeAction] *********** [2, 1, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 5 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            CFast_g_bMetaActionInRfx = 1 ;
            if ( CFast_g_bProcessReflex )
              p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
            else
              p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
            return (1) ;
          }
        }
      }
      else {

/* [Cond : ANI_TestFinAnim] ********** [1, 0, 2]*/
        long1 = CFast_CallCondition_Static(27) ;
if ( long1 ) {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [2, 1, 4]*/
          long1 = CFast_CallCondition_Static(28) ;
if ( long1 ) {
            long1 =!(*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 20))));
          }
        }
        if ( long1 ) {
          long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 120))));
if ( long1 ) {

/* [Cond : <=] ********** [3, 2, 3]*/
            long1 = MTH_M_bLessEqual((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 19)))), MTH_M_xLongToReal(5000)) ? 1 : 0;
          }
          if ( long1 ) {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [2, 1, 1]*/
            if ( CFast_CallCondition_Static(30) ) {
              if ( CFast_YLT_RaymanModel_Sbr_0 ( ) )
                return 1 ;
/* [MacroRef : 0] ********** [1]*/
            }
            else {

/* [Proc : ChangeAction] *********** [2, 1, 0]*/
              fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
              CFast_CallProcedure_Static( 32 ) ;
              if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
                CFast_g_bMetaActionInRfx = 1 ;
                if ( CFast_g_bProcessReflex )
                  p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
                else
                  p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
                return (1) ;
              }
            }
          }
          else {

/* [Proc : ChangeAction] *********** [2, 1, 0]*/
            fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
            CFast_CallProcedure_Static( 32 ) ;
            if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
              CFast_g_bMetaActionInRfx = 1 ;
              if ( CFast_g_bProcessReflex )
                p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
              else
                p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
              return (1) ;
            }
          }
        }
      }
    }
    else {
      M_GetSetParam_xValue(&CFast_g_a_stParam[1]) = MTH_M_xMin(MTH_M_xLongToReal(2000),(*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 19)))));
      M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Float;

/* [Math_ : Math_MinimumReel] ********** [1, 2, 1]*/
      LocalCFast_fn_vSetDsgVarFloat(19, M_GetSetParam_xValue(CFast_g_a_stParam+1)) ;

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [2, 1, 1]*/
      if ( CFast_CallCondition_Static(34) ) {

/* [Proc : ChangeAction] *********** [2, 1, 0]*/
        fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
        CFast_CallProcedure_Static( 5 ) ;
        if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
          CFast_g_bMetaActionInRfx = 1 ;
          if ( CFast_g_bProcessReflex )
            p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
          else
            p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
          return (1) ;
        }
      }

/* [Cond : ANI_TestFinAnim] ********** [1, 0, 2]*/
      long1 = CFast_CallCondition_Static(27) ;
if ( long1 ) {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [2, 1, 4]*/
        long1 = CFast_CallCondition_Static(28) ;
if ( long1 ) {
          long1 =!(*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 20))));
        }
      }
      if ( long1 ) {

/* [Proc : ChangeAction] *********** [2, 1, 0]*/
        fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
        CFast_CallProcedure_Static( 32 ) ;
        if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
          CFast_g_bMetaActionInRfx = 1 ;
          if ( CFast_g_bProcessReflex )
            p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
          else
            p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
          return (1) ;
        }
      }
    }

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [2, 1, 2]*/
    long1 = CFast_CallCondition_Static(28) ;
if ( long1 ) {
      long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 20))));
    }
    if ( long1 ) {

/* [Proc : ChangeActionForce] *********** [2, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 36 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        CFast_g_bMetaActionInRfx = 1 ;
        if ( CFast_g_bProcessReflex )
          p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
        else
          p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
        return (1) ;
      }
    }
    CFast_YLT_RaymanModel_Sbr_1 ( ) ;
/* [MacroRef : 0] ********** [1]*/
  }
/* [EndTree] ************ [1]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_CommenceTirBlocEnFonctionDuQuart
 */
long CFast_YLT_RaymanModel_Sbr_37 (void) /* BNT_CommenceTirBlocEnFonctionDuQuart */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : <] ********** [2, 2, 1]*/
  if ( MTH_M_bLess(MTH_M_xLongToReal((*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 33))))), MTH_M_xFloatToReal(3.000000f)) ) {

/* [Cond : =] ********** [2, 2, 1]*/
    if ( (*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 33)))) == 1 ) {

/* [Op : :=] ********** [2, 2, 0]*/
      CFast_CallOperator0_Static ( 38 ) ;

/* [Op : :=] ********** [2, 2, 0]*/
      CFast_CallOperator0_Static ( 41 ) ;

/* [Op : :=] ********** [2, 2, 0]*/
      CFast_CallOperator0_Static ( 44 ) ;
    }
    else {

/* [Op : :=] ********** [2, 2, 0]*/
      CFast_CallOperator0_Static ( 47 ) ;

/* [Op : :=] ********** [2, 2, 0]*/
      CFast_CallOperator0_Static ( 50 ) ;

/* [Op : :=] ********** [2, 2, 0]*/
      CFast_CallOperator0_Static ( 53 ) ;
    }
  }
  else {

/* [Cond : =] ********** [2, 2, 1]*/
    if ( (*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 33)))) == 4 ) {

/* [Op : :=] ********** [2, 2, 0]*/
      CFast_CallOperator0_Static ( 56 ) ;

/* [Op : :=] ********** [2, 2, 0]*/
      CFast_CallOperator0_Static ( 59 ) ;

/* [Op : :=] ********** [2, 2, 0]*/
      CFast_CallOperator0_Static ( 62 ) ;
    }
    else {

/* [Op : :=] ********** [2, 2, 0]*/
      CFast_CallOperator0_Static ( 65 ) ;

/* [Op : :=] ********** [2, 2, 0]*/
      CFast_CallOperator0_Static ( 68 ) ;

/* [Op : :=] ********** [2, 2, 0]*/
      CFast_CallOperator0_Static ( 71 ) ;
    }
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_PrepareReinit
 */
long CFast_YLT_RaymanModel_Sbr_55 (void) /* BNT_PrepareReinit */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  LocalCFast_fn_vSetDsgVarBoolean(96, 0) ;
  LocalCFast_fn_vSetDsgVarInteger(29, 0) ;
  LocalCFast_fn_vSetDsgVarFloat(30, MTH_M_xFloatToReal(8.00000f)) ;
  LocalCFast_fn_vSetDsgVarInteger(24, 0) ;
  LocalCFast_fn_vSetDsgVarInteger(23, (-1 + LocalCFast_fn_lGetDsgVarInteger(90))) ;
  LocalCFast_fn_vSetDsgVarFloat(93, 0) ;

/* [Op : .] ********** [2, 2, 0]*/

/* [Func : ACT_LitBooleenDansTableau] ********** [4, 2, 1]*/
  M_eFuncIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Function][0]) = (tdeFuncId)248 ;

/* [Op : .] ********** [0, 2, 0]*/
  M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][1], E_ti_Operator);
  M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[3][1]) = (tdeOperatorId)12 ;
  CFast_memcpy ( 3, 2, 15) ;
  CFast_memcpy ( 3, 3, 16) ;
  M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][4], E_ti_Constant);
  M_lValueInterpret(&CFast_g_a_stPseudoTree[3][4]) = 1095 ;
  CFast_CallFunction1_NoStatic( ) ;
  LocalCFast_fn_vSetDsgVarBoolean(106,  ۟(CFast_g_a_stParam+1)) ;

/* [Vector] *********** [3, 3, 2]*/
  CFast_CallVector2_Static (74) ;

/* [Func : VEC_VecteurAbsolu] ********** [1, 1, 1]*/
    M_p_stVectorInterpret(p_stPseudoTree+79) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
  CFast_CallFunction1_Static( 78 ) ;
  LocalCFast_fn_vSetDsgVarVector(22, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
  LocalCFast_fn_vSetDsgVarVector(94, LocalCFast_fn_p_stGetDsgVarVector(22)) ;
  (LocalCFast_fn_p_stGetDsgVarVector(22))->xZ= MTH_M_xLongToReal(0) ;
  LocalCFast_fn_vSetDsgVarBoolean(51, 0) ;
  CFast_YLT_RaymanModel_Sbr_2 ( ) ;
/* [MacroRef : 0] ********** [0]*/
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_AccrocheToi
 */
long CFast_YLT_RaymanModel_Sbr_41 (void) /* BNT_AccrocheToi */
{
  MTH3D_tdstVector stVector0;
  MTH3D_tdstVector stVector1;
  MTH3D_tdstVector stVector2;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register tdstIntelligence * p_stReflex = p_stLocalMind0->p_stReflex ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  long lMetaAction ;

  lMetaAction = CFast_g_bProcessReflex ? p_stLocalMind0->CFast_lRfxMetaActionForMacro : p_stLocalMind0->CFast_lCmpMetaActionForMacro ;
  switch(lMetaAction)
  {
  case 1 : goto label1 ;
  }
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 45)))) ) {

/* [Cond : Col_ZDMCollisionAvecSol] ********** [1, 1, 1]*/
    if ( CFast_CallCondition_Static(80) ) {
      LocalCFast_fn_vSetDsgVarFloat(15, MTH_M_xFloatToReal(0.00000f)) ;

/* [Func : COL_LitPointCollisionMains] ********** [0, 0, 1]*/
      CFast_CallFunction1_Static( 82 ) ;
      LocalCFast_fn_vSetDsgVarVector(39, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;

/* [Cond : VEC_VecteurNul] ********** [1, 1, 1]*/
      if ( !( CFast_CallCondition_Static(83) ) ) {
        POS_fn_vGetTranslationVector(HIE_fn_hGetSuperObjectMatrix(g_hSuperObjectPerso), &stVector1); ;
        POS_fn_vGetTranslationVector(HIE_fn_hGetSuperObjectMatrix(g_hSuperObjectPerso), &stVector0); ;
        MTH3D_M_vSetVectorElements(&stVector2, (&stVector1)->xX, (&stVector0)->xY, LocalCFast_fn_p_stGetDsgVarVector(39)->xZ) ;
        LocalCFast_fn_vSetDsgVarVector(40, &stVector2) ;

/* [Vector] *********** [4, 3, 3]*/
        CFast_CallVector3_Static (85) ;

/* [Func : COL_PointCollision] ********** [3, 3, 2]*/
          M_p_stVectorInterpret(p_stPseudoTree+91) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+3);
        CFast_CallFunction2_Static( 89 ) ;

/* [Cond : VEC_VecteurNul] ********** [1, 1, 1]*/
          M_p_stVectorInterpret(p_stPseudoTree+94) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
        if ( CFast_CallCondition_Static(93) ) {
          LocalCFast_fn_vSetDsgVarVector(56, LocalCFast_fn_p_stGetDsgVarVector(40)) ;
          MTH3D_M_vSubVector(&stVector0, LocalCFast_fn_p_stGetDsgVarVector(39),LocalCFast_fn_p_stGetDsgVarVector(40)) ;
          MTH3D_M_vMulScalarVector(&stVector1, MTH_M_xFloatToReal(1.20000f),&stVector0) ;
          LocalCFast_fn_vSetDsgVarVector(39, &stVector1) ;
          LocalCFast_fn_vSetDsgVarBoolean(46, 0) ;
          LocalCFast_fn_vSetDsgVarInteger(38, 0) ;
          LocalCFast_fn_p_stGetDsgVarVector(40)->xZ = MTH_M_xSub(LocalCFast_fn_p_stGetDsgVarVector(40)->xZ,MTH_M_xFloatToReal(0.10000f)) ;

/* [Proc : Boucle] *********** [1, 1, 0]*/
          {
            int i0;
for ( i1=3 ; i1>0 ; i1-- ) { /* Boucle 0 */

/* [Func : COL_NormaleCollision] ********** [3, 3, 1]*/
            CFast_CallFunction1_Static( 95 ) ;
            LocalCFast_fn_vSetDsgVarVector(41, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;

/* [Cond : VEC_VecteurNul] ********** [1, 1, 2]*/
            long1 = CFast_CallCondition_Static(99) ;
            if ( !long1 ) {

/* [Op : .Z] ********** [1, 1, 4]*/
              CFast_CallOperator4_Static( 101 ) ;

/* [Cond : >] ********** [2, 2, 3]*/
              long1 = MTH_M_bGreater(M_GetSetParam_xValue(&CFast_g_a_stParam[4]), MTH_M_xFloatToReal(0.500000f)) ? 1 : 0;
            }
            if ( long1 ) {
              LocalCFast_fn_p_stGetDsgVarVector(40)->xZ = MTH_M_xSub(LocalCFast_fn_p_stGetDsgVarVector(40)->xZ,MTH_M_xFloatToReal(0.20000f)) ;
              LocalCFast_fn_vSetDsgVarInteger(38, (LocalCFast_fn_lGetDsgVarInteger(38)+1)) ;
            }
            else {

/* [Op : v_] ********** [1, 1, 1]*/
              CFast_CallOperator1_Static( 103 ) ;

/* [Proc : ACT_ChangeViseePerso] *********** [1, 1, 0]*/
                M_p_stVectorInterpret(p_stPseudoTree+106) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
              CFast_CallProcedure_Static( 105 ) ;

/* [Func : COL_PointCollision] ********** [3, 3, 1]*/
              CFast_CallFunction1_Static( 107 ) ;
              LocalCFast_fn_vSetDsgVarVector(41, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
              LocalCFast_fn_vSetDsgVarBoolean(46, 1) ;

/* [Proc : Break] *********** [1, 1, 0]*/
              break ;
            }

/* [Proc : FinBoucle] ********** [0, 0, 0]*/
            }
}
          if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 46)))) ) {
            MTH3D_M_vSubVector(&stVector0, LocalCFast_fn_p_stGetDsgVarVector(41),LocalCFast_fn_p_stGetDsgVarVector(56)) ;
            MTH3D_M_vMulScalarVector(&stVector1, MTH_M_xFloatToReal(1.15000f),&stVector0) ;
            LocalCFast_fn_vSetDsgVarVector(39, &stVector1) ;
            (LocalCFast_fn_p_stGetDsgVarVector(39))->xZ= MTH_M_xFloatToReal(0.50000f) ;

/* [Func : COL_PointCollision] ********** [3, 3, 2]*/
            CFast_CallFunction2_Static( 111 ) ;

/* [Cond : VEC_VecteurNul] ********** [1, 1, 1]*/
              M_p_stVectorInterpret(p_stPseudoTree+94) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
            if ( !( CFast_CallCondition_Static(93) ) ) {
              LocalCFast_fn_vSetDsgVarBoolean(46, 1) ;
            }
          }
        }
        if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 46)))) ) {
          M_Full_GetSetParam_Float(&CFast_g_a_stParam[5], MTH_M_xMul(MTH_M_xFloatToReal(0.200000f),MTH_M_xLongToReal((*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 38)))))));
          M_Full_GetSetParam_Float(&CFast_g_a_stParam[4], MTH_M_xAdd(MTH_M_xFloatToReal(-1.800000f),M_GetSetParam_xValue(&CFast_g_a_stParam[5])));

/* [Vector] *********** [3, 3, 3]*/
            M_lValueInterpret(p_stPseudoTree+118) = M_GetSetParam_lValue(CFast_g_a_stParam+4);
          CFast_CallVector3_Static (115) ;

/* [Func : VEC_VecteurLocalToGlobal] ********** [1, 1, 2]*/
            M_p_stVectorInterpret(p_stPseudoTree+120) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+3);
          CFast_CallFunction2_Static( 119 ) ;
          MTH3D_M_vAddVector(LocalCFast_fn_p_stGetDsgVarVector(41),LocalCFast_fn_p_stGetDsgVarVector(41),&M_GetSetParam_stVectorValue(CFast_g_a_stParam+2)) ;
          LocalCFast_fn_vSetDsgVarVector(39, LocalCFast_fn_p_stGetDsgVarVector(41)) ;
          MTH3D_M_vSetVectorElements(&stVector0, MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(-0.90000f)) ;
          LocalCFast_fn_vSetDsgVarVector(40, &stVector0) ;

/* [Vector] *********** [3, 3, 4]*/
          CFast_CallVector4_Static (121) ;

/* [Func : VEC_VecteurLocalToGlobal] ********** [1, 1, 3]*/
            M_p_stVectorInterpret(p_stPseudoTree+120) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+4);
          CFast_CallFunction3_Static( 119 ) ;
          MTH3D_M_vAddVector(LocalCFast_fn_p_stGetDsgVarVector(41),LocalCFast_fn_p_stGetDsgVarVector(41),&M_GetSetParam_stVectorValue(CFast_g_a_stParam+3)) ;

/* [Func : COL_PointCollision] ********** [3, 3, 1]*/
          CFast_CallFunction1_Static( 125 ) ;
          LocalCFast_fn_vSetDsgVarVector(43, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;

/* [Vector] *********** [3, 3, 5]*/
          CFast_CallVector5_Static (129) ;

/* [Func : VEC_VecteurLocalToGlobal] ********** [1, 1, 4]*/
            M_p_stVectorInterpret(p_stPseudoTree+120) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+5);
          CFast_CallFunction4_Static( 119 ) ;
          MTH3D_M_vAddVector(LocalCFast_fn_p_stGetDsgVarVector(39),LocalCFast_fn_p_stGetDsgVarVector(39),&M_GetSetParam_stVectorValue(CFast_g_a_stParam+4)) ;

/* [Func : COL_PointCollision] ********** [3, 3, 1]*/
          CFast_CallFunction1_Static( 133 ) ;
          LocalCFast_fn_vSetDsgVarVector(44, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;

/* [Cond : VEC_VecteurNul] ********** [1, 1, 2]*/
          long1 = CFast_CallCondition_Static(137) ;
if ( long1 ) {

/* [Cond : VEC_VecteurNul] ********** [1, 1, 3]*/
            long1 = CFast_CallCondition_Static(139) ;
          }
          if ( !long1 ) {

/* [Cond : VEC_VecteurNul] ********** [1, 1, 1]*/
            if ( CFast_CallCondition_Static(137) ) {

/* [Vector] *********** [3, 3, 3]*/
              CFast_CallVector3_Static (141) ;

/* [Func : VEC_VecteurLocalToGlobal] ********** [1, 1, 2]*/
                M_p_stVectorInterpret(p_stPseudoTree+120) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+3);
              CFast_CallFunction2_Static( 119 ) ;
              MTH3D_M_vAddVector(&stVector0, LocalCFast_fn_p_stGetDsgVarVector(44),&M_GetSetParam_stVectorValue(CFast_g_a_stParam+2)) ;
              LocalCFast_fn_vSetDsgVarVector(43, &stVector0) ;
            }
            else {

/* [Cond : VEC_VecteurNul] ********** [1, 1, 1]*/
              if ( CFast_CallCondition_Static(139) ) {

/* [Vector] *********** [3, 3, 3]*/
                CFast_CallVector3_Static (145) ;

/* [Func : VEC_VecteurLocalToGlobal] ********** [1, 1, 2]*/
                  M_p_stVectorInterpret(p_stPseudoTree+120) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+3);
                CFast_CallFunction2_Static( 119 ) ;
                MTH3D_M_vAddVector(&stVector0, LocalCFast_fn_p_stGetDsgVarVector(43),&M_GetSetParam_stVectorValue(CFast_g_a_stParam+2)) ;
                LocalCFast_fn_vSetDsgVarVector(44, &stVector0) ;
              }
            }

/* [Vector] *********** [3, 3, 3]*/
            CFast_CallVector3_Static (149) ;

/* [Func : VEC_VecteurLocalToGlobal] ********** [1, 1, 2]*/
              M_p_stVectorInterpret(p_stPseudoTree+120) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+3);
            CFast_CallFunction2_Static( 119 ) ;
            MTH3D_M_vAddVector(LocalCFast_fn_p_stGetDsgVarVector(43),LocalCFast_fn_p_stGetDsgVarVector(43),&M_GetSetParam_stVectorValue(CFast_g_a_stParam+2)) ;

/* [Vector] *********** [3, 3, 4]*/
            CFast_CallVector4_Static (153) ;

/* [Func : VEC_VecteurLocalToGlobal] ********** [1, 1, 3]*/
              M_p_stVectorInterpret(p_stPseudoTree+120) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+4);
            CFast_CallFunction3_Static( 119 ) ;
            MTH3D_M_vAddVector(LocalCFast_fn_p_stGetDsgVarVector(44),LocalCFast_fn_p_stGetDsgVarVector(44),&M_GetSetParam_stVectorValue(CFast_g_a_stParam+3)) ;
            MTH3D_M_vAddVector(&stVector0, LocalCFast_fn_p_stGetDsgVarVector(44),LocalCFast_fn_p_stGetDsgVarVector(43)) ;
            MTH3D_M_vMulScalarVector(&stVector1, MTH_M_xFloatToReal(0.50000f),&stVector0) ;

/* [Vector] *********** [3, 3, 4]*/
            CFast_CallVector4_Static (157) ;

/* [Func : VEC_VecteurLocalToGlobal] ********** [1, 1, 3]*/
              M_p_stVectorInterpret(p_stPseudoTree+120) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+4);
            CFast_CallFunction3_Static( 119 ) ;
            MTH3D_M_vAddVector(&stVector2, &stVector1,&M_GetSetParam_stVectorValue(CFast_g_a_stParam+3)) ;
            LocalCFast_fn_vSetDsgVarVector(71, &stVector2) ;

/* [Proc : MEC_ActiveInertie] *********** [1, 1, 0]*/
            CFast_CallProcedure_Static( 161 ) ;

/* [Proc : MEC_ActiveLimiteVitesse] *********** [1, 1, 0]*/
            CFast_CallProcedure_Static( 163 ) ;
            LocalCFast_fn_vSetDsgVarVector(31, LocalCFast_fn_p_stGetDsgVarVector(71)) ;
            POS_fn_vGetTranslationVector(HIE_fn_hGetSuperObjectMatrix(g_hSuperObjectPerso), &stVector0); ;
            (LocalCFast_fn_p_stGetDsgVarVector(31))->xZ= (&stVector0)->xZ ;

/* [Proc : ACT_ImposeVitesseXYZ] *********** [3, 3, 0]*/
            CFast_CallProcedure_Static( 165 ) ;

/* [Proc : ACT_ChangePositionAbsoluePerso] *********** [1, 1, 0]*/
            CFast_CallProcedure_Static( 169 ) ;
            MTH3D_M_vSubVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[2]), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 43))), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 71))));
            M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Vector;

/* [Func : VEC_VecteurRelatif] ********** [1, 1, 1]*/
              M_p_stVectorInterpret(p_stPseudoTree+172) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
            CFast_CallFunction1_Static( 171 ) ;
            LocalCFast_fn_vSetDsgVarVector(43, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
            MTH3D_M_vSubVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[2]), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 44))), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 71))));
            M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Vector;

/* [Func : VEC_VecteurRelatif] ********** [1, 1, 1]*/
              M_p_stVectorInterpret(p_stPseudoTree+172) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
            CFast_CallFunction1_Static( 171 ) ;
            LocalCFast_fn_vSetDsgVarVector(44, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;

/* [Func : HIER_MonPere] ********** [0, 0, 1]*/
            CFast_CallFunction1_Static( 173 ) ;
            LocalCFast_fn_vSetDsgVarPersoWithEngine(61, M_GetSetParam_p_stEngineObjValue(CFast_g_a_stParam+1)) ;

/* [Cond : ObjetValide] ********** [1, 1, 1]*/
            if ( CFast_CallCondition_Static(174) ) {

/* [Vector] *********** [3, 3, 2]*/
              CFast_CallVector2_Static (176) ;

/* [Op : ..] ********** [2, 1, 0]*/

/* [Func : VEC_VecteurRelatif] ********** [3, 2, 1]*/
              CFast_fn_vSetUltraOperatorPersoVar(61);
                M_p_stVectorInterpret(p_stPseudoTree+181) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
              CFast_CallFunction1_Static( 180 ) ;
              LocalCFast_fn_vSetDsgVarVector(101, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;

/* [Proc : HIER_ForcePere] *********** [1, 1, 0]*/
              CFast_CallProcedure_Static( 182 ) ;

/* [Op : .] ********** [3, 2, 0]*/

/* [Op : v-] ********** [4, 2, 2]*/
              M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Operator][0]) = (tdeOperatorId)17 ;
              M_SetTypeInterpret(&CFast_g_a_stPseudoTree[2][1], E_ti_DsgVarRef);
              M_lValueInterpret(&CFast_g_a_stPseudoTree[2][1]) = 31 ;

/* [Op : .] ********** [0, 2, 0]*/
              M_SetTypeInterpret(&CFast_g_a_stPseudoTree[2][2], E_ti_Operator);
              M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[2][2]) = (tdeOperatorId)12 ;
              M_SetTypeInterpret(&CFast_g_a_stPseudoTree[2][3], E_ti_DsgVarRef);
              M_lValueInterpret(&CFast_g_a_stPseudoTree[2][3]) = 61 ;
              M_SetTypeInterpret(&CFast_g_a_stPseudoTree[2][4], E_ti_Field);
              M_eFieldIdInterpret(&CFast_g_a_stPseudoTree[2][4]) = (tdeFieldId)0 ;
              CFast_CallOperator2_NoStatic( ) ;

/* [Op : ..] ********** [2, 1, 0]*/

/* [Func : VEC_VecteurRelatif] ********** [3, 2, 1]*/
              CFast_fn_vSetUltraOperatorPersoVar(61);
                M_p_stVectorInterpret(p_stPseudoTree+172) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
              CFast_CallFunction1_Static( 171 ) ;
              LocalCFast_fn_vSetDsgVarVector(31, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;

/* [Op : .] ********** [3, 2, 0]*/

/* [Op : v-] ********** [4, 2, 2]*/
              M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Operator][0]) = (tdeOperatorId)17 ;
              M_lValueInterpret(&CFast_g_a_stPseudoTree[2][1]) = 71 ;

/* [Op : .] ********** [0, 2, 0]*/
              M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[2][2]) = (tdeOperatorId)12 ;
              M_lValueInterpret(&CFast_g_a_stPseudoTree[2][3]) = 61 ;
              M_eFieldIdInterpret(&CFast_g_a_stPseudoTree[2][4]) = (tdeFieldId)0 ;
              CFast_CallOperator2_NoStatic( ) ;

/* [Op : ..] ********** [2, 1, 0]*/

/* [Func : VEC_VecteurRelatif] ********** [3, 2, 1]*/
              CFast_fn_vSetUltraOperatorPersoVar(61);
                M_p_stVectorInterpret(p_stPseudoTree+172) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
              CFast_CallFunction1_Static( 171 ) ;
              LocalCFast_fn_vSetDsgVarVector(71, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
            }

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
            CFast_CallProcedure_Static( 184 ) ;

/* [bloquant moteur] *********************/
                                    return (1);
label1 :
                        if ( CFast_g_bProcessReflex ) {
              CFast_YLT_RaymanModel_ArrayReflex[p_stReflex->p_stCurrentComport->CFast_lMyIndex]();
            }
else
{
              CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
            }
            return (1) ;
          }
        }
      }
    }
    else {

/* [Proc : COL_AnnuleDernierPersoCollisionne] *********** [0, 0, 0]*/
      CFast_CallProcedure_Static( 187 ) ;
    }
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_PasseEnSautDescente
 */
long CFast_YLT_RaymanModel_Sbr_19 (void) /* BNT_PasseEnSautDescente */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register tdstIntelligence * p_stReflex = p_stLocalMind0->p_stReflex ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  LocalCFast_fn_vSetDsgVar_32768To32767(33, 0) ;
  LocalCFast_fn_vSetDsgVar_32768To32767(32, 0) ;
  LocalCFast_fn_vSetDsgVarBoolean(97, 0) ;
  LocalCFast_fn_vSetDsgVarBoolean(99, 0) ;

/* [Vector] *********** [3, 3, 1]*/
  CFast_CallVector1_Static (176) ;

/* [Vector] *********** [4, 3, 2]*/
  CFast_CallVector2_Static (188) ;

/* [Proc : ACT_ReorientePerso] *********** [3, 3, 0]*/
    M_p_stVectorInterpret(p_stPseudoTree+193) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
    M_p_stVectorInterpret(p_stPseudoTree+194) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
  CFast_CallProcedure_Static( 192 ) ;

/* [Proc : ACT_ImposeVitesseZ] *********** [1, 1, 0]*/
  CFast_CallProcedure_Static( 196 ) ;
  LocalCFast_fn_vSetDsgVarInteger(24, 0) ;
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 14)))) ) {

/* [Proc : MEC_FixeGravite] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 198 ) ;
  }

/* [Cond : <>] ********** [2, 2, 1]*/
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) != 28 ) {
    LocalCFast_fn_vSetDsgVar0To255(9, 13) ;
  }
  LocalCFast_fn_vSetDsgVarBoolean(47, 0) ;

/* [Op : .] ********** [2, 2, 0]*/

/* [Func : ACT_LitBooleenDansTableau] ********** [4, 2, 1]*/
  M_eFuncIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Function][0]) = (tdeFuncId)248 ;

/* [Op : .] ********** [0, 2, 0]*/
  M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][1], E_ti_Operator);
  M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[3][1]) = (tdeOperatorId)12 ;
  CFast_memcpy ( 3, 2, 15) ;
  CFast_memcpy ( 3, 3, 16) ;
  M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][4], E_ti_Constant);
  M_lValueInterpret(&CFast_g_a_stPseudoTree[3][4]) = 1095 ;
  CFast_CallFunction1_NoStatic( ) ;
  LocalCFast_fn_vSetDsgVarBoolean(106,  ۟(CFast_g_a_stParam+1)) ;
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 120)))) ) {

/* [Proc : EnvoieRequeteSon] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 200 ) ;

/* [Proc : EnvoieRequeteSon] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 202 ) ;
  }

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
  CFast_CallProcedure_Static( 204 ) ;
  if ( CFast_g_bProcessReflex ) {
    CFast_YLT_RaymanModel_ArrayReflex[p_stReflex->p_stCurrentComport->CFast_lMyIndex]();
  }
else
{
    CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
  }
  return (1) ;
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_GenereProjectileSiNecessaire
 */
long CFast_YLT_RaymanModel_Sbr_1 (void) /* BNT_GenereProjectileSiNecessaire */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : UserEvent_IsSet2] ********** [2, 2, 1]*/
  if ( CFast_CallCondition_Static(207) ) {
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 20)))) ) {

/* [Func : GenereObjet] ********** [2, 2, 1]*/
      CFast_CallFunction1_Static( 210 ) ;
      LocalCFast_fn_vSetDsgVarPersoWithEngine(60, M_GetSetParam_p_stEngineObjValue(CFast_g_a_stParam+1)) ;
      LocalCFast_fn_vSetDsgVarBoolean(20, 0) ;

/* [Func : HIER_MonPere] ********** [1, 0, 5]*/
      CFast_CallFunction5_Static( 173 ) ;

/* [Cond : ObjetValide] ********** [2, 1, 4]*/
        M_lValueInterpret(p_stPseudoTree+214) = M_GetSetParam_lValue(CFast_g_a_stParam+5);
      long2 = CFast_CallCondition_Static(213) ;
      long3 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 10)))); /* oups */

/* [Cond : Non] ********** [1, 1, 5]*/
      long3 = !long3;

/* [Cond : Et] ********** [1, 2, 3]*/
      long2 &= long3;
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[3], long2) ;
      if (M_lValueInterpret(&CFast_g_a_stParam[3])) {
        M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
        M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(0.000000f) ;
      } else {
        M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
        M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(1.000000f) ;
      }
      M_GetSetParam_xValue(&CFast_g_a_stParam[1]) = RND_fn_xGetRealRandomValue(0,M_GetSetParam_xValue(&CFast_g_a_stParam[2]),MTH_M_xFloatToReal(1.000000f));
      M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Float;

/* [Math_ : Math_ReelAuHasard] ********** [1, 2, 1]*/

/* [Op : :=] ********** [2, 2, 0]*/
        M_lValueInterpret(p_stPseudoTree+217) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
      CFast_CallOperator0_Static ( 215 ) ;

/* [Cond : >] ********** [2, 2, 1]*/
      if ( MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 36)))), MTH_M_xFloatToReal(0.500000f)) ) {
        if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 121)))) ) {

/* [Proc : EnvoieRequeteSon] *********** [1, 1, 0]*/
          CFast_CallProcedure_Static( 218 ) ;
        }
        else {

/* [Proc : EnvoieRequeteSon] *********** [1, 1, 0]*/
          CFast_CallProcedure_Static( 220 ) ;
        }
      }
      LocalCFast_fn_vSetDsgVarBoolean(121, 0) ;

/* [Proc : EnvoieRequeteSon] *********** [1, 1, 0]*/
      CFast_CallProcedure_Static( 200 ) ;

/* [Proc : EnvoieRequeteSon] *********** [1, 1, 0]*/
      CFast_CallProcedure_Static( 202 ) ;
    }
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_CommenceTirEnSaut
 */
long CFast_YLT_RaymanModel_Sbr_43 (void) /* BNT_CommenceTirEnSaut */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : BoutonJusteAppuye] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsJustValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+40)) ) {
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))) ) {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
      if ( !( CFast_CallCondition_Static(0) ) ) {
        LocalCFast_fn_vSetDsgVarAction(117, NULL) ;

/* [Op : :=] ********** [2, 2, 0]*/
        CFast_CallOperator0_Static ( 222 ) ;

/* [Op : :=] ********** [2, 2, 0]*/
        CFast_CallOperator0_Static ( 225 ) ;
        LocalCFast_fn_vSetDsgVarBoolean(120, 0) ;
        LocalCFast_fn_vSetDsgVarBoolean(20, 1) ;
        LocalCFast_fn_vSetDsgVarFloat(19, MTH_M_xFloatToReal(0.00000f)) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
        fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
        CFast_CallProcedure_Static( 228 ) ;
        if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
          CFast_g_bMetaActionInRfx = 1 ;
          if ( CFast_g_bProcessReflex )
            p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
          else
            p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
          return (1) ;
        }
        LocalCFast_fn_vSetDsgVarBoolean(96, 1) ;
      }
    }
  }
  else {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
    if ( CFast_CallCondition_Static(0) ) {
      LocalCFast_fn_vSetDsgVarBoolean(96, 1) ;
    }
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_ReinitZeMapQuandJeSuisMort
 */
long CFast_YLT_RaymanModel_Sbr_63 (void) /* BNT_ReinitZeMapQuandJeSuisMort */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register tdstIntelligence * p_stReflex = p_stLocalMind0->p_stReflex ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Keyword : Moi] ********** [0, 0, 2]*/

/* [Func : ACT_LitPointsDeVie] ********** [1, 1, 1]*/
  CFast_CallFunction1_Static( 230 ) ;
  long1 = M_GetSetParam_lValue(&CFast_g_a_stParam[1]);
  if ( long1 ) {

/* [Op : .] ********** [3, 2, 0]*/

/* [Cond : ObjetValide] ********** [4, 1, 1]*/
    M_eCondIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Condition][0]) = (tdeCondId)49 ;

/* [Op : .] ********** [1, 2, 0]*/
    M_SetTypeInterpret(&CFast_g_a_stPseudoTree[1][1], E_ti_Operator);
    M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[1][1]) = (tdeOperatorId)12 ;
    CFast_memcpy ( 1, 2, 15) ;
    CFast_memcpy ( 1, 3, 79) ;
    long1 = CFast_CallCondition_NoStatic( ) ;
    if ( long1 ) {

/* [Op : .] ********** [3, 2, 0]*/

/* [Keyword : Personne] ********** [4, 0, 1]*/
      CFast_CallKeyword_Static(232, 1) ;

/* [Proc : MortDuJoueurAvecRepositionnement] *********** [5, 2, 0]*/
      M_eProcedureIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Procedure][0]) = (tdeProcedureId)92 ;

/* [Op : .] ********** [1, 2, 0]*/
      M_SetTypeInterpret(&CFast_g_a_stPseudoTree[4][1], E_ti_Operator);
      M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[4][1]) = (tdeOperatorId)12 ;
      CFast_memcpy ( 4, 2, 15) ;
      CFast_memcpy ( 4, 3, 79) ;
      M_SetTypeInterpret(&CFast_g_a_stPseudoTree[4][4], E_ti_Constant);
      M_lValueInterpret(&CFast_g_a_stPseudoTree[4][4]) = M_GetSetParam_lValue(&CFast_g_a_stParam[1]) ;
      CFast_CallProcedure_NoStatic( ) ;
    }
    else {

/* [Proc : MortDuJoueur] *********** [1, 0, 0]*/
      CFast_CallProcedure_Static( 233 ) ;
    }
  }
  else {
    CFast_fn_vSetDsgVarPerso(M_CFast_ucGetRealIndice(79), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 15)),NULL) ;

/* [Keyword : Moi] ********** [1, 0, 2]*/

/* [Func : ACT_LitPointsDeVie] ********** [2, 1, 1]*/
    CFast_CallFunction1_Static( 230 ) ;
    long1 = M_GetSetParam_lValue(&CFast_g_a_stParam[1]);
    if ( long1 ) {
      CFast_YLT_RaymanModel_Sbr_3 ( ) ;
/* [MacroRef : 0] ********** [2]*/
    }
    else {
      LocalCFast_fn_vSetDsgVarInteger(24, 0) ;
      LocalCFast_fn_vSetDsgVarPerso(42, NULL) ;

/* [Proc : ACT_ChangeCustomBit] *********** [4, 2, 0]*/
      CFast_CallProcedure_Static( 234 ) ;

/* [Proc : ACT_ChangeCustomBit] *********** [4, 2, 0]*/
      CFast_CallProcedure_Static( 237 ) ;

/* [Proc : ACT_ChangeSpoFlag] *********** [4, 2, 0]*/
      CFast_CallProcedure_Static( 240 ) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [4, 2, 0]*/
      CFast_CallProcedure_Static( 243 ) ;
      if ( CFast_g_bProcessReflex ) {
        CFast_YLT_RaymanModel_ArrayReflex[p_stReflex->p_stCurrentComport->CFast_lMyIndex]();
      }
else
{
        CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
      }
      return (1) ;
    }
  }

/* [Proc : BreakAI] *********** [2, 0, 0]*/
  fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
  CFast_CallProcedure_Static( 246 ) ;
  if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
    CFast_g_bMetaActionInRfx = 1 ;
    if ( CFast_g_bProcessReflex )
      p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
    else
      p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
    return (1) ;
  }
/* [EndTree] ************ [2]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_RaymanEstIlImprudentEnNage
 */
long CFast_YLT_RaymanModel_Sbr_29 (void) /* BNT_RaymanEstIlImprudentEnNage */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : Col_PasDeCollision] ********** [0, 0, 1]*/
  if ( !( CFast_CallCondition_Static(247) ) ) {
    CFast_YLT_RaymanModel_Sbr_4 ( ) ;
/* [MacroRef : 0] ********** [0]*/
    CFast_YLT_RaymanModel_Sbr_5 ( ) ;
/* [MacroRef : 0] ********** [0]*/

/* [Func : COL_LitTypeMateriauCollision] ********** [0, 0, 2]*/
    CFast_CallFunction2_Static( 248 ) ;

/* [Cond : COL_TesteCmtContreMasque] ********** [2, 2, 1]*/
      M_lValueInterpret(p_stPseudoTree+250) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
    if ( CFast_CallCondition_Static(249) ) {

/* [Proc : COL_ChangeTypeDeCollisionneur] *********** [2, 2, 0]*/
      CFast_CallProcedure_Static( 252 ) ;

/* [Func : COL_VecteurNormalCollision] ********** [2, 0, 2]*/
      CFast_CallFunction2_Static( 255 ) ;
      MTH3D_M_vMulScalarVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[1]), MTH_M_xFloatToReal(5.000000f), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[2]));
      M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Vector;

/* [Proc : COL_ChangeVecteurDeCollisionneur] *********** [3, 3, 0]*/
        M_p_stVectorInterpret(p_stPseudoTree+259) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
      CFast_CallProcedure_Static( 256 ) ;

/* [Proc : COL_ChangeReelDeCollisionneur] *********** [3, 3, 0]*/
      CFast_CallProcedure_Static( 260 ) ;
    }
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_VerifieCollisionElectrique
 */
long CFast_YLT_RaymanModel_Sbr_4 (void) /* BNT_VerifieCollisionElectrique */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Func : COL_LitTypeMateriauCollision] ********** [0, 0, 2]*/
  CFast_CallFunction2_Static( 248 ) ;

/* [Cond : COL_TesteCmtContreMasque] ********** [2, 2, 1]*/
    M_lValueInterpret(p_stPseudoTree+265) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
  if ( CFast_CallCondition_Static(264) ) {

/* [Proc : COL_ChangeTypeDeCollisionneur] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 267 ) ;

/* [Func : COL_VecteurNormalCollision] ********** [2, 0, 2]*/
    CFast_CallFunction2_Static( 255 ) ;
    MTH3D_M_vMulScalarVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[1]), MTH_M_xFloatToReal(5.000000f), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[2]));
    M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Vector;

/* [Proc : COL_ChangeVecteurDeCollisionneur] *********** [3, 3, 0]*/
      M_p_stVectorInterpret(p_stPseudoTree+259) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
    CFast_CallProcedure_Static( 256 ) ;

/* [Proc : COL_ChangeReelDeCollisionneur] *********** [3, 3, 0]*/
    CFast_CallProcedure_Static( 260 ) ;
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_VerifieCollisionLave
 */
long CFast_YLT_RaymanModel_Sbr_7 (void) /* BNT_VerifieCollisionLave */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Func : COL_LitTypeMateriauCollision] ********** [0, 0, 2]*/
  CFast_CallFunction2_Static( 248 ) ;

/* [Cond : COL_TesteCmtContreMasque] ********** [2, 2, 1]*/
    M_lValueInterpret(p_stPseudoTree+271) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
  if ( CFast_CallCondition_Static(270) ) {

/* [Func : COL_LitTypeMateriauCollision2] ********** [1, 1, 2]*/
    CFast_CallFunction2_Static( 273 ) ;

/* [Cond : COL_TesteCmtContreMasque] ********** [2, 2, 1]*/
      M_lValueInterpret(p_stPseudoTree+276) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
    if ( CFast_CallCondition_Static(275) ) {

/* [Proc : COL_ChangeTypeDeCollisionneur] *********** [2, 2, 0]*/
      CFast_CallProcedure_Static( 278 ) ;

/* [Proc : COL_ChangeReelDeCollisionneur] *********** [3, 3, 0]*/
      CFast_CallProcedure_Static( 281 ) ;
      LocalCFast_fn_vSetDsgVarBoolean(85, 0) ;
    }
    else {

/* [Proc : COL_ChangeTypeDeCollisionneur] *********** [2, 2, 0]*/
      CFast_CallProcedure_Static( 252 ) ;

/* [Func : COL_VecteurNormalCollision] ********** [2, 0, 2]*/
      CFast_CallFunction2_Static( 255 ) ;
      MTH3D_M_vMulScalarVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[1]), MTH_M_xFloatToReal(5.000000f), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[2]));
      M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Vector;

/* [Proc : COL_ChangeVecteurDeCollisionneur] *********** [3, 3, 0]*/
        M_p_stVectorInterpret(p_stPseudoTree+259) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
      CFast_CallProcedure_Static( 256 ) ;

/* [Proc : COL_ChangeReelDeCollisionneur] *********** [3, 3, 0]*/
      CFast_CallProcedure_Static( 260 ) ;
    }
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_VerifieCollisionChuteInfinie
 */
long CFast_YLT_RaymanModel_Sbr_6 (void) /* BNT_VerifieCollisionChuteInfinie */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Func : COL_LitTypeMateriauCollision] ********** [0, 0, 2]*/
  CFast_CallFunction2_Static( 248 ) ;

/* [Cond : COL_TesteCmtContreMasque] ********** [2, 2, 1]*/
    M_lValueInterpret(p_stPseudoTree+286) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
  if ( CFast_CallCondition_Static(285) ) {

/* [Proc : COL_ChangeTypeDeCollisionneur] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 288 ) ;

/* [Proc : COL_ChangeReelDeCollisionneur] *********** [3, 3, 0]*/
    CFast_CallProcedure_Static( 291 ) ;
    LocalCFast_fn_vSetDsgVarBoolean(85, 0) ;
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_VerifieCollisionMort
 */
long CFast_YLT_RaymanModel_Sbr_5 (void) /* BNT_VerifieCollisionMort */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Func : COL_LitTypeMateriauCollision] ********** [0, 0, 2]*/
  CFast_CallFunction2_Static( 248 ) ;

/* [Cond : COL_TesteCmtContreMasque] ********** [2, 2, 1]*/
    M_lValueInterpret(p_stPseudoTree+296) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
  if ( CFast_CallCondition_Static(295) ) {

/* [Proc : COL_ChangeTypeDeCollisionneur] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 298 ) ;

/* [Proc : COL_ChangeReelDeCollisionneur] *********** [3, 3, 0]*/
    CFast_CallProcedure_Static( 281 ) ;
    LocalCFast_fn_vSetDsgVarBoolean(85, 0) ;
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_VerifieCollisionRonces
 */
long CFast_YLT_RaymanModel_Sbr_8 (void) /* BNT_VerifieCollisionRonces */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Func : COL_LitTypeMateriauCollision] ********** [0, 0, 3]*/
  CFast_CallFunction3_Static( 248 ) ;

/* [Cond : COL_TesteCmtContreMasque] ********** [2, 2, 2]*/
    M_lValueInterpret(p_stPseudoTree+250) = M_GetSetParam_lValue(CFast_g_a_stParam+3);
  long1 = CFast_CallCondition_Static(249) ;
if ( long1 ) {

/* [Func : COL_LitTypeMateriauCollision2] ********** [1, 1, 5]*/
    CFast_CallFunction5_Static( 301 ) ;

/* [Cond : COL_TesteCmtContreMasque] ********** [2, 2, 4]*/
      M_lValueInterpret(p_stPseudoTree+304) = M_GetSetParam_lValue(CFast_g_a_stParam+5);
    long1 =!CFast_CallCondition_Static(303) ;
  }
  if ( long1 ) {

/* [Func : COL_LitTypeMateriauCollision] ********** [0, 0, 2]*/
    CFast_CallFunction2_Static( 248 ) ;

/* [Cond : COL_TesteCmtContreMasque] ********** [2, 2, 1]*/
      M_lValueInterpret(p_stPseudoTree+307) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
    if ( CFast_CallCondition_Static(306) ) {

/* [Proc : COL_ChangeTypeDeCollisionneur] *********** [2, 2, 0]*/
      CFast_CallProcedure_Static( 252 ) ;

/* [Vector] *********** [5, 3, 1]*/
      CFast_CallVector1_Static (309) ;

/* [Proc : COL_ChangeVecteurDeCollisionneur] *********** [3, 3, 0]*/
        M_p_stVectorInterpret(p_stPseudoTree+316) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
      CFast_CallProcedure_Static( 313 ) ;

/* [Proc : COL_ChangeReelDeCollisionneur] *********** [3, 3, 0]*/
      CFast_CallProcedure_Static( 317 ) ;
    }
    else {

/* [Func : COL_LitTypeMateriauCollision] ********** [0, 0, 2]*/
      CFast_CallFunction2_Static( 248 ) ;

/* [Cond : COL_TesteCmtContreMasque] ********** [2, 2, 1]*/
        M_lValueInterpret(p_stPseudoTree+322) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
      if ( CFast_CallCondition_Static(321) ) {

/* [Func : COL_LitTypeMateriauCollision2] ********** [1, 1, 2]*/
        CFast_CallFunction2_Static( 273 ) ;

/* [Cond : COL_TesteCmtContreMasque] ********** [2, 2, 1]*/
          M_lValueInterpret(p_stPseudoTree+325) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
        if ( CFast_CallCondition_Static(324) ) {

/* [Proc : COL_ChangeTypeDeCollisionneur] *********** [2, 2, 0]*/
          CFast_CallProcedure_Static( 298 ) ;

/* [Proc : COL_ChangeReelDeCollisionneur] *********** [3, 3, 0]*/
          CFast_CallProcedure_Static( 327 ) ;
          LocalCFast_fn_vSetDsgVarBoolean(85, 0) ;
        }
        else {

/* [Proc : COL_ChangeTypeDeCollisionneur] *********** [2, 2, 0]*/
          CFast_CallProcedure_Static( 252 ) ;

/* [Func : COL_VecteurNormalCollision] ********** [2, 0, 2]*/
          CFast_CallFunction2_Static( 255 ) ;
          MTH3D_M_vMulScalarVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[1]), MTH_M_xFloatToReal(5.000000f), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[2]));
          M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Vector;

/* [Proc : COL_ChangeVecteurDeCollisionneur] *********** [3, 3, 0]*/
            M_p_stVectorInterpret(p_stPseudoTree+259) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
          CFast_CallProcedure_Static( 256 ) ;

/* [Proc : COL_ChangeReelDeCollisionneur] *********** [3, 3, 0]*/
          CFast_CallProcedure_Static( 260 ) ;
        }
      }
      else {

/* [Proc : COL_ChangeTypeDeCollisionneur] *********** [2, 2, 0]*/
        CFast_CallProcedure_Static( 252 ) ;

/* [Func : COL_VecteurNormalCollision] ********** [2, 0, 2]*/
        CFast_CallFunction2_Static( 255 ) ;
        MTH3D_M_vMulScalarVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[1]), MTH_M_xFloatToReal(5.000000f), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[2]));
        M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Vector;

/* [Proc : COL_ChangeVecteurDeCollisionneur] *********** [3, 3, 0]*/
          M_p_stVectorInterpret(p_stPseudoTree+259) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
        CFast_CallProcedure_Static( 256 ) ;

/* [Proc : COL_ChangeReelDeCollisionneur] *********** [3, 3, 0]*/
        CFast_CallProcedure_Static( 260 ) ;
      }
    }
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_RaymanEstIlImprudentAuSol
 */
long CFast_YLT_RaymanModel_Sbr_9 (void) /* BNT_RaymanEstIlImprudentAuSol */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  CFast_YLT_RaymanModel_Sbr_4 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_5 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_6 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_7 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_8 ( ) ;
/* [MacroRef : 0] ********** [0]*/
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_RaymanEstIlImprudentEnLair
 */
long CFast_YLT_RaymanModel_Sbr_23 (void) /* BNT_RaymanEstIlImprudentEnLair */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : Col_PasDeCollision] ********** [0, 0, 1]*/
  if ( !( CFast_CallCondition_Static(247) ) ) {
    CFast_YLT_RaymanModel_Sbr_9 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  }
  if ( ! ( gcGlobAleat & 0x3 ) )
  {

/* [Cond : >] ********** [2, 2, 2]*/
    long1 = MTH_M_bGreater(MTH_M_xLongToReal((*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 24))))), (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 17))))) ? 1 : 0;
if ( long1 ) {

/* [Keyword : Moi] ********** [0, 0, 5]*/

/* [Cond : EstDansComportement] ********** [2, 2, 4]*/
      long1 =!CFast_CallCondition_Static(331) ;
    }
    if ( long1 ) {

/* [Proc : COL_ChangeTypeDeCollisionneur] *********** [2, 2, 0]*/
      CFast_CallProcedure_Static( 288 ) ;

/* [Proc : COL_ChangeReelDeCollisionneur] *********** [3, 3, 0]*/
      CFast_CallProcedure_Static( 291 ) ;
      LocalCFast_fn_vSetDsgVarBoolean(85, 0) ;
    }
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_RaymanEstIlPafe
 */
long CFast_YLT_RaymanModel_Sbr_21 (void) /* BNT_RaymanEstIlPafe */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register tdstIntelligence * p_stReflex = p_stLocalMind0->p_stReflex ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  if ( ! ( gcGlobAleat & 0x1 ) )
  {

/* [Cond : COL_CollisionneurTouche] ********** [0, 0, 1]*/
    if ( CFast_CallCondition_Static(334) ) {
      long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 85))));
if ( long1 ) {

/* [Func : COL_LitTypeDeCollisionneur] ********** [0, 0, 4]*/
        CFast_CallFunction4_Static( 335 ) ;

/* [Cond : <] ********** [2, 2, 3]*/
          M_lValueInterpret(p_stPseudoTree+337) = M_GetSetParam_lValue(CFast_g_a_stParam+4);
        long1 = CFast_CallCondition_Static(336) ;
      }
      if ( !long1 ) {
        LocalCFast_fn_vSetDsgVarBoolean(85, 1) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
        CFast_CallProcedure_Static( 339 ) ;
        if ( CFast_g_bProcessReflex ) {
          CFast_YLT_RaymanModel_ArrayReflex[p_stReflex->p_stCurrentComport->CFast_lMyIndex]();
        }
else
{
          CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
        }
        return (1) ;
      }
    }
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_PropageTirEnAttenteSiNecessaire
 */
long CFast_YLT_RaymanModel_Sbr_11 (void) /* BNT_PropageTirEnAttenteSiNecessaire */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
  if ( CFast_CallCondition_Static(0) ) {
    if ( CFast_YLT_RaymanModel_Sbr_10 ( ) )
      return 1 ;
/* [MacroRef : 0] ********** [0]*/
  }
  else {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 342 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      CFast_g_bMetaActionInRfx = 1 ;
      if ( CFast_g_bProcessReflex )
        p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
      else
        p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
      return (1) ;
    }
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_PasseEnAttente
 */
long CFast_YLT_RaymanModel_Sbr_51 (void) /* BNT_PasseEnAttente */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register tdstIntelligence * p_stReflex = p_stLocalMind0->p_stReflex ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  LocalCFast_fn_vSetDsgVar_32768To32767(33, 0) ;
  LocalCFast_fn_vSetDsgVar_32768To32767(32, 0) ;
  LocalCFast_fn_vSetDsgVarInteger(24, 0) ;
  LocalCFast_fn_vSetDsgVar0To255(87, 0) ;

/* [Op : .] ********** [2, 2, 0]*/

/* [Func : ACT_LitBooleenDansTableau] ********** [4, 2, 1]*/
  M_eFuncIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Function][0]) = (tdeFuncId)248 ;

/* [Op : .] ********** [0, 2, 0]*/
  M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][1], E_ti_Operator);
  M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[3][1]) = (tdeOperatorId)12 ;
  CFast_memcpy ( 3, 2, 15) ;
  CFast_memcpy ( 3, 3, 16) ;
  M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][4], E_ti_Constant);
  M_lValueInterpret(&CFast_g_a_stPseudoTree[3][4]) = 1095 ;
  CFast_CallFunction1_NoStatic( ) ;
  LocalCFast_fn_vSetDsgVarBoolean(106,  ۟(CFast_g_a_stParam+1)) ;

/* [Func : ACT_ViseePerso] ********** [0, 0, 1]*/
  CFast_CallFunction1_Static( 12 ) ;

/* [Proc : ACT_ChangeViseePerso] *********** [1, 1, 0]*/
    M_p_stVectorInterpret(p_stPseudoTree+345) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
  CFast_CallProcedure_Static( 344 ) ;

/* [Func : COL_LitTypeMateriauCollision2] ********** [1, 1, 2]*/
  CFast_CallFunction2_Static( 273 ) ;

/* [Cond : COL_TesteCmtContreMasque] ********** [2, 2, 1]*/
    M_lValueInterpret(p_stPseudoTree+347) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
  if ( CFast_CallCondition_Static(346) ) {
    LocalCFast_fn_vSetDsgVarBoolean(45, 0) ;

/* [Func : ACT_AssiettePerso] ********** [0, 0, 1]*/
    CFast_CallFunction1_Static( 349 ) ;
    LocalCFast_fn_vSetDsgVarVector(101, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
    LocalCFast_fn_vSetDsgVarInteger(24, 0) ;
    LocalCFast_fn_vSetDsgVar0To255(9, 4) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 350 ) ;
    if ( CFast_g_bProcessReflex ) {
      CFast_YLT_RaymanModel_ArrayReflex[p_stReflex->p_stCurrentComport->CFast_lMyIndex]();
    }
else
{
      CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    }
    return (1) ;
  }
  else {
    LocalCFast_fn_vSetDsgVar0To255(9, 0) ;
    if ( CFast_YLT_RaymanModel_Sbr_11 ( ) )
      return 1 ;
/* [MacroRef : 0] ********** [0]*/
  }

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
  CFast_CallProcedure_Static( 353 ) ;
  if ( CFast_g_bProcessReflex ) {
    CFast_YLT_RaymanModel_ArrayReflex[p_stReflex->p_stCurrentComport->CFast_lMyIndex]();
  }
else
{
    CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
  }
  return (1) ;
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_OrienteVersCibleEnCombat
 */
long CFast_YLT_RaymanModel_Sbr_39 (void) /* BNT_OrienteVersCibleEnCombat */
{
  MTH3D_tdstVector stVector0;
  MTH3D_tdstVector stVector1;
  MTH3D_tdstVector stVector2;
  MTH3D_tdstVector stVector3;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Func : ACT_ViseePerso] ********** [4, 0, 2]*/
  CFast_CallFunction2_Static( 12 ) ;

/* [Func : ACT_CibleLaPlusProcheAvecAngles] ********** [7, 7, 1]*/
    M_p_stVectorInterpret(p_stPseudoTree+361) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
  CFast_CallFunction1_Static( 356 ) ;
  LocalCFast_fn_vSetDsgVarPersoWithEngine(42, M_GetSetParam_p_stEngineObjValue(CFast_g_a_stParam+1)) ;

/* [Cond : ObjetValide] ********** [1, 1, 1]*/
  if ( CFast_CallCondition_Static(364) ) {
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 112))));
if ( long1 ) {

/* [Op : ..] ********** [2, 1, 0]*/

/* [Cond : ACT_TestCustomBit] ********** [3, 2, 3]*/
      CFast_fn_vSetUltraOperatorPersoVar(42);
      long1 = CFast_CallCondition_Static(366) ;
    }
    if ( !long1 ) {
      POS_fn_vGetTranslationVector(HIE_fn_hGetSuperObjectMatrix(LocalCFast_fn_hGetDsgVarPerso(42)), &stVector1); ;

/* [Func : ZON_LitCentreZDEType] ********** [3, 2, 4]*/
      CFast_CallFunction4_Static( 368 ) ;

/* [Op : ..] ********** [3, 1, 0]*/

/* [Func : VEC_VecteurAbsolu] ********** [4, 2, 3]*/
      CFast_fn_vSetUltraOperatorPersoVar(42);
        M_p_stVectorInterpret(p_stPseudoTree+372) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+4);
      CFast_CallFunction3_Static( 371 ) ;
      MTH3D_M_vAddVector(&stVector2, &stVector1,&M_GetSetParam_stVectorValue(CFast_g_a_stParam+3)) ;
      POS_fn_vGetTranslationVector(HIE_fn_hGetSuperObjectMatrix(g_hSuperObjectPerso), &stVector0); ;
      MTH3D_M_vSubVector(&stVector3, &stVector2,&stVector0) ;
      LocalCFast_fn_vSetDsgVarVector(39, &stVector3) ;
      M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH3D_M_xNormVector(((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 39))));
      M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;

/* [Cond : <] ********** [3, 2, 1]*/
      if ( MTH_M_bLess(M_GetSetParam_xValue(&CFast_g_a_stParam[2]), (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 18))))) ) {
        LocalCFast_fn_vSetDsgVar0To255(9, LocalCFast_fn_lGetDsgVarInteger(38)) ;
        (LocalCFast_fn_p_stGetDsgVarVector(39))->xZ= MTH_M_xFloatToReal(0.00000f) ;

/* [Func : ACT_ViseePerso] ********** [1, 0, 1]*/
        CFast_CallFunction1_Static( 12 ) ;
        LocalCFast_fn_vSetDsgVarVector(40, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
        (LocalCFast_fn_p_stGetDsgVarVector(40))->xZ= MTH_M_xFloatToReal(0.00000f) ;

/* [Func : VEC_VecteurAngle] ********** [4, 3, 5]*/
        CFast_CallFunction5_Static( 373 ) ;
        M_Full_GetSetParam_Float(&CFast_g_a_stParam[4], MTH_M_xMul(M_GetSetParam_xValue(&CFast_g_a_stParam[5]),MTH_M_xFloatToReal(5.000000f)));
        M_GetSetParam_xValue(&CFast_g_a_stParam[3]) = MTH_M_bLess(M_GetSetParam_xValue(&CFast_g_a_stParam[4]), MTH_M_xFloatToReal(-250.000000f)) ?  MTH_M_xFloatToReal(-250.000000f) : (MTH_M_bGreater(M_GetSetParam_xValue(&CFast_g_a_stParam[4]), MTH_M_xFloatToReal(250.000000f)) ? MTH_M_xFloatToReal(250.000000f) : M_GetSetParam_xValue(&CFast_g_a_stParam[4])) ;
        M_GetSetParam_Type(&CFast_g_a_stParam[3]) = E_vt_Float;

/* [Math_ : Math_ReelBorne] ********** [1, 3, 3]*/

/* [Func : Temps_LitDT] ********** [2, 0, 4]*/
        CFast_CallFunction4_Static( 9 ) ;
        M_Full_GetSetParam_Float(&CFast_g_a_stParam[2], MTH_M_xMul(M_GetSetParam_xValue(&CFast_g_a_stParam[3]),M_GetSetParam_xValue(&CFast_g_a_stParam[4])));
        M_Full_GetSetParam_Float(&CFast_g_a_stParam[1], MTH_M_xMul(M_GetSetParam_xValue(&CFast_g_a_stParam[2]),MTH_M_xFloatToReal(0.001000f)));

/* [Proc : ACT_TournePersoAutourDeZ] *********** [2, 1, 0]*/
          M_lValueInterpret(p_stPseudoTree+378) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
        CFast_CallProcedure_Static( 377 ) ;
      }
    }
  }
/* [EndTree] ************ [1]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_CommenceTirEnAttente
 */
long CFast_YLT_RaymanModel_Sbr_34 (void) /* BNT_CommenceTirEnAttente */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : BoutonJusteAppuye] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsJustValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+40)) ) {
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))) ) {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
      if ( !( CFast_CallCondition_Static(0) ) ) {

/* [Op : :=] ********** [2, 2, 0]*/
        CFast_CallOperator0_Static ( 379 ) ;

/* [Op : :=] ********** [2, 2, 0]*/
        CFast_CallOperator0_Static ( 382 ) ;

/* [Op : :=] ********** [2, 2, 0]*/
        CFast_CallOperator0_Static ( 385 ) ;

/* [Op : .] ********** [2, 2, 0]*/

/* [Func : ACT_LitBooleenDansTableau] ********** [4, 2, 1]*/
        M_eFuncIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Function][0]) = (tdeFuncId)248 ;

/* [Op : .] ********** [0, 2, 0]*/
        M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][1], E_ti_Operator);
        M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[3][1]) = (tdeOperatorId)12 ;
        CFast_memcpy ( 3, 2, 15) ;
        CFast_memcpy ( 3, 3, 16) ;
        M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][4], E_ti_Constant);
        M_lValueInterpret(&CFast_g_a_stPseudoTree[3][4]) = 1143 ;
        CFast_CallFunction1_NoStatic( ) ;
        LocalCFast_fn_vSetDsgVarBoolean(120,  ۟(CFast_g_a_stParam+1)) ;
        LocalCFast_fn_vSetDsgVarBoolean(20, 1) ;
        LocalCFast_fn_vSetDsgVarFloat(19, MTH_M_xFloatToReal(0.00000f)) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
        fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
        CFast_CallProcedure_Static( 388 ) ;
        if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
          CFast_g_bMetaActionInRfx = 1 ;
          if ( CFast_g_bProcessReflex )
            p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
          else
            p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
          return (1) ;
        }
      }
    }
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_EffectuePassageEnVarappe
 */
long CFast_YLT_RaymanModel_Sbr_12 (void) /* BNT_EffectuePassageEnVarappe */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register tdstIntelligence * p_stReflex = p_stLocalMind0->p_stReflex ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  long lMetaAction ;

  lMetaAction = CFast_g_bProcessReflex ? p_stLocalMind0->CFast_lRfxMetaActionForMacro : p_stLocalMind0->CFast_lCmpMetaActionForMacro ;
  switch(lMetaAction)
  {
  case 1 : goto label1 ;
  }
  LocalCFast_fn_vSetDsgVarBoolean(14, 1) ;
  LocalCFast_fn_vSetDsgVarBoolean(86, 0) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
  fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
  CFast_CallProcedure_Static( 390 ) ;
  if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
    CFast_g_bMetaActionInRfx = 1 ;
    if ( CFast_g_bProcessReflex )
      p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
    else
      p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
    return (1) ;
  }
  LocalCFast_fn_vSetDsgVar_32768To32767(33, 0) ;
  LocalCFast_fn_vSetDsgVar_32768To32767(32, 0) ;
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 120)))) ) {

/* [Proc : EnvoieRequeteSon] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 200 ) ;

/* [Proc : EnvoieRequeteSon] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 202 ) ;
  }

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
  CFast_CallProcedure_Static( 392 ) ;

/* [bloquant moteur] *********************/
      return (1);
label1 :
    if ( CFast_g_bProcessReflex ) {
    CFast_YLT_RaymanModel_ArrayReflex[p_stReflex->p_stCurrentComport->CFast_lMyIndex]();
  }
else
{
    CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
  }
  return (1) ;
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_PropageTirEnSaut
 */
long CFast_YLT_RaymanModel_Sbr_18 (void) /* BNT_PropageTirEnSaut */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  LocalCFast_fn_vSetDsgVarAction(117, NULL) ;

/* [Op : :=] ********** [2, 2, 0]*/
  CFast_CallOperator0_Static ( 222 ) ;

/* [Op : :=] ********** [2, 2, 0]*/
  CFast_CallOperator0_Static ( 225 ) ;
  LocalCFast_fn_vSetDsgVarBoolean(120, 0) ;

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
  if ( CFast_CallCondition_Static(34) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 228 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      CFast_g_bMetaActionInRfx = 1 ;
      if ( CFast_g_bProcessReflex )
        p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
      else
        p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
      return (1) ;
    }
  }
  else {

/* [Proc : ChangeActionAvecEvenements] *********** [2, 2, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 395 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      CFast_g_bMetaActionInRfx = 1 ;
      if ( CFast_g_bProcessReflex )
        p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
      else
        p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
      return (1) ;
    }
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_PropageTirEnAttente
 */
long CFast_YLT_RaymanModel_Sbr_10 (void) /* BNT_PropageTirEnAttente */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Op : :=] ********** [2, 2, 0]*/
  CFast_CallOperator0_Static ( 379 ) ;

/* [Op : :=] ********** [2, 2, 0]*/
  CFast_CallOperator0_Static ( 382 ) ;

/* [Op : :=] ********** [2, 2, 0]*/
  CFast_CallOperator0_Static ( 385 ) ;

/* [Op : .] ********** [2, 2, 0]*/

/* [Func : ACT_LitBooleenDansTableau] ********** [4, 2, 1]*/
  M_eFuncIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Function][0]) = (tdeFuncId)248 ;

/* [Op : .] ********** [0, 2, 0]*/
  M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][1], E_ti_Operator);
  M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[3][1]) = (tdeOperatorId)12 ;
  CFast_memcpy ( 3, 2, 15) ;
  CFast_memcpy ( 3, 3, 16) ;
  M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][4], E_ti_Constant);
  M_lValueInterpret(&CFast_g_a_stPseudoTree[3][4]) = 1143 ;
  CFast_CallFunction1_NoStatic( ) ;
  LocalCFast_fn_vSetDsgVarBoolean(120,  ۟(CFast_g_a_stParam+1)) ;

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
  if ( CFast_CallCondition_Static(3) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 388 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      CFast_g_bMetaActionInRfx = 1 ;
      if ( CFast_g_bProcessReflex )
        p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
      else
        p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
      return (1) ;
    }
  }
  else {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
    if ( CFast_CallCondition_Static(7) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 398 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        CFast_g_bMetaActionInRfx = 1 ;
        if ( CFast_g_bProcessReflex )
          p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
        else
          p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
        return (1) ;
      }
    }
    else {

/* [Proc : ChangeActionAvecEvenements] *********** [2, 2, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 400 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        CFast_g_bMetaActionInRfx = 1 ;
        if ( CFast_g_bProcessReflex )
          p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
        else
          p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
        return (1) ;
      }
    }
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_PropageTirEnCourse
 */
long CFast_YLT_RaymanModel_Sbr_38 (void) /* BNT_PropageTirEnCourse */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  LocalCFast_fn_vSetDsgVarAction(117, NULL) ;

/* [Op : :=] ********** [2, 2, 0]*/
  CFast_CallOperator0_Static ( 403 ) ;

/* [Op : :=] ********** [2, 2, 0]*/
  CFast_CallOperator0_Static ( 385 ) ;
  LocalCFast_fn_vSetDsgVarBoolean(120, 0) ;

/* [Proc : ChangeActionAvecEvenements] *********** [2, 2, 0]*/
  fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
  CFast_CallProcedure_Static( 406 ) ;
  if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
    CFast_g_bMetaActionInRfx = 1 ;
    if ( CFast_g_bProcessReflex )
      p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
    else
      p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
    return (1) ;
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_EntreDeuxSauteALaDemande
 */
long CFast_YLT_RaymanModel_Sbr_17 (void) /* BNT_EntreDeuxSauteALaDemande */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register tdstIntelligence * p_stReflex = p_stLocalMind0->p_stReflex ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : BoutonJusteAppuye] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsJustValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+30)) ) {

/* [Proc : ZON_FixeTailleZDMSphere] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 409 ) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 412 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      CFast_g_bMetaActionInRfx = 1 ;
      if ( CFast_g_bProcessReflex )
        p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
      else
        p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
      return (1) ;
    }

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 353 ) ;
    if ( CFast_g_bProcessReflex ) {
      CFast_YLT_RaymanModel_ArrayReflex[p_stReflex->p_stCurrentComport->CFast_lMyIndex]();
    }
else
{
      CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    }
    return (1) ;
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_AMortLesMusiquesParasites
 */
long CFast_YLT_RaymanModel_Sbr_59 (void) /* BNT_AMortLesMusiquesParasites */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Proc : EnvoieRequeteMusique] *********** [1, 1, 0]*/
  CFast_CallProcedure_Static( 414 ) ;

/* [Keyword : Moi] ********** [0, 0, 2]*/

/* [Func : ACT_LitPointsDeVie] ********** [1, 1, 1]*/
  CFast_CallFunction1_Static( 230 ) ;
  long1 = M_GetSetParam_lValue(&CFast_g_a_stParam[1]);
  if ( !long1 ) {

/* [Proc : EnvoieRequeteSon] *********** [2, 1, 0]*/
    CFast_CallProcedure_Static( 416 ) ;
  }
/* [EndTree] ************ [1]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_RaymanEstIlInvulnerable
 */
long CFast_YLT_RaymanModel_Sbr_20 (void) /* BNT_RaymanEstIlInvulnerable */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  if ( ! ( gcGlobAleat & 0x1 ) )
  {
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 85)))) ) {

/* [Cond : <] ********** [2, 2, 2]*/
      long1 = MTH_M_bLess(MTH_M_xLongToReal((*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 84))))), MTH_M_xFloatToReal(0.000000f)) ? 1 : 0;
if ( long1 ) {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 4]*/
        long1 =!CFast_CallCondition_Static(418) ;
      }
      if ( long1 ) {
        LocalCFast_fn_vSetDsgVarInteger(84, 0) ;
        LocalCFast_fn_vSetDsgVarBoolean(85, 0) ;

/* [Proc : ACT_ActivationTransparence] *********** [1, 1, 0]*/
        CFast_CallProcedure_Static( 420 ) ;
      }

/* [Func : Temps_LitDT] ********** [0, 0, 3]*/
      CFast_CallFunction3_Static( 9 ) ;
      LocalCFast_fn_vSetDsgVarInteger(84, (LocalCFast_fn_lGetDsgVarInteger(84)-MTH_M_xRealToLong(MTH_M_xMul(M_GetSetParam_xValue(CFast_g_a_stParam+3),MTH_M_xFloatToReal(2.00000f))))) ;
    }
  }
/* [EndTree] ************ [1]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_AtterritSurLeSol
 */
long CFast_YLT_RaymanModel_Sbr_30 (void) /* BNT_AtterritSurLeSol */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register tdstIntelligence * p_stReflex = p_stLocalMind0->p_stReflex ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : MEC_PeutTomber] ********** [1, 1, 1]*/
  if ( CFast_CallCondition_Static(422) ) {

/* [Func : COL_VecteurNormalCollision2] ********** [1, 1, 1]*/
    CFast_CallFunction1_Static( 424 ) ;
    LocalCFast_fn_vSetDsgVarVector(40, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
    (LocalCFast_fn_p_stGetDsgVarVector(40))->xZ= MTH_M_xFloatToReal(0.00000f) ;

/* [Func : VEC_ProduitScalaire] ********** [2, 2, 1]*/
    CFast_CallFunction1_Static( 426 ) ;
    LocalCFast_fn_vSetDsgVarFloat(67, M_GetSetParam_xValue(CFast_g_a_stParam+1)) ;
  }

/* [Cond : MEC_PeutTomber] ********** [1, 1, 2]*/
  long1 = CFast_CallCondition_Static(422) ;
if ( long1 ) {

/* [Cond : Col_CollisionAvecMur] ********** [0, 0, 5]*/
    long1 =!CFast_CallCondition_Static(429) ;
    if ( !long1 ) {

/* [Cond : >] ********** [2, 2, 5]*/
      long1 = MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 67)))), MTH_M_xFloatToReal(-0.500000f)) ? 1 : 0;
    }
  }
  if ( !long1 ) {
    LocalCFast_fn_vSetDsgVarFloat(72, MTH_M_xFloatToReal(1.00000f)) ;
    LocalCFast_fn_vSetDsgVar_32768To32767(32, 0) ;
    LocalCFast_fn_vSetDsgVarBoolean(45, 1) ;
    LocalCFast_fn_vSetDsgVarBoolean(14, 1) ;

/* [Func : ACT_ViseePerso] ********** [0, 0, 1]*/
    CFast_CallFunction1_Static( 12 ) ;

/* [Proc : ACT_ChangeViseePerso] *********** [1, 1, 0]*/
      M_p_stVectorInterpret(p_stPseudoTree+345) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
    CFast_CallProcedure_Static( 344 ) ;

/* [Op : .] ********** [2, 2, 0]*/

/* [Func : ACT_LitBooleenDansTableau] ********** [4, 2, 1]*/
    M_eFuncIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Function][0]) = (tdeFuncId)248 ;

/* [Op : .] ********** [0, 2, 0]*/
    M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][1], E_ti_Operator);
    M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[3][1]) = (tdeOperatorId)12 ;
    CFast_memcpy ( 3, 2, 15) ;
    CFast_memcpy ( 3, 3, 16) ;
    M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][4], E_ti_Constant);
    M_lValueInterpret(&CFast_g_a_stPseudoTree[3][4]) = 1095 ;
    CFast_CallFunction1_NoStatic( ) ;
    LocalCFast_fn_vSetDsgVarBoolean(106,  ۟(CFast_g_a_stParam+1)) ;

/* [Func : Temps_Obtenir] ********** [0, 0, 1]*/
    CFast_CallFunction1_Static( 430 ) ;
    LocalCFast_fn_vSetDsgVarInteger(35, M_GetSetParam_ulValue(CFast_g_a_stParam+1)) ;
    LocalCFast_fn_vSetDsgVarFloat(100, MTH_M_xFloatToReal(0.00000f)) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 431 ) ;
    if ( CFast_g_bProcessReflex ) {
      CFast_YLT_RaymanModel_ArrayReflex[p_stReflex->p_stCurrentComport->CFast_lMyIndex]();
    }
else
{
      CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    }
    return (1) ;
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_PasseEnVarappeDuSaut
 */
long CFast_YLT_RaymanModel_Sbr_42 (void) /* BNT_PasseEnVarappeDuSaut */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : ZON_ZDMContreMur] ********** [1, 1, 2]*/
  long1 = CFast_CallCondition_Static(434) ;
if ( long1 ) {

/* [Cond : ZON_ZDMContreMur] ********** [1, 1, 4]*/
    long1 =!CFast_CallCondition_Static(436) ;
  }
  if ( long1 ) {

/* [Vector] *********** [4, 3, 4]*/
    CFast_CallVector4_Static (438) ;

/* [Op : v+] ********** [2, 2, 3]*/
      M_p_stVectorInterpret(p_stPseudoTree+444) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+4);
    CFast_CallOperator3_Static( 442 ) ;

/* [Func : COL_VecteurNormalCollision2] ********** [2, 1, 5]*/
    CFast_CallFunction5_Static( 424 ) ;
    MTH3D_M_vMulScalarVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[4]), MTH_M_xFloatToReal(-5.000000f), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[5]));
    M_GetSetParam_Type(&CFast_g_a_stParam[4]) = E_vt_Vector;

/* [Func : COL_PointCollisionAvecMateriau] ********** [4, 4, 2]*/
      M_p_stVectorInterpret(p_stPseudoTree+446) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+3);
      M_p_stVectorInterpret(p_stPseudoTree+447) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+4);
    CFast_CallFunction2_Static( 445 ) ;

/* [Cond : VEC_VecteurNul] ********** [1, 1, 1]*/
      M_p_stVectorInterpret(p_stPseudoTree+451) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
    if ( !( CFast_CallCondition_Static(450) ) ) {
      p_stLocalMind0->CFast_lRfxMetaAction = 1;
label1 :
      if ( CFast_YLT_RaymanModel_Sbr_12 ( ) )
        return 1 ;
      p_stLocalMind0 -> CFast_lRfxMetaAction = 0 ;
/* [MacroRef : 0] ********** [0]*/
    }
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_FaitRebondirRayman
 */
long CFast_YLT_RaymanModel_Sbr_27 (void) /* BNT_FaitRebondirRayman */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : ZON_ZDMContreSol] ********** [1, 1, 1]*/
  if ( CFast_CallCondition_Static(452) ) {
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 12)))) ) {
      LocalCFast_fn_vSetDsgVarInteger(8, 7) ;

/* [Proc : ChangeMonComportement] *********** [1, 1, 0]*/
      CFast_CallProcedure_Static( 454 ) ;
      if ( !CFast_g_bProcessReflex )
{
        CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
        return (1) ;
      }
    }
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_TestEcrasement
 */
long CFast_YLT_RaymanModel_Sbr_22 (void) /* BNT_TestEcrasement */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register tdstIntelligence * p_stReflex = p_stLocalMind0->p_stReflex ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : MEC_ActeurPrincipalEcrase] ********** [0, 0, 1]*/
  if ( CFast_CallCondition_Static(456) ) {

/* [Proc : COL_ChangeReelDeCollisionneur] *********** [3, 3, 0]*/
    CFast_CallProcedure_Static( 457 ) ;

/* [Proc : COL_ChangeTypeDeCollisionneur] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 461 ) ;
    LocalCFast_fn_vSetDsgVarBoolean(85, 1) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 339 ) ;
    if ( CFast_g_bProcessReflex ) {
      CFast_YLT_RaymanModel_ArrayReflex[p_stReflex->p_stCurrentComport->CFast_lMyIndex]();
    }
else
{
      CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    }
    return (1) ;
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_PasseEnHelico
 */
long CFast_YLT_RaymanModel_Sbr_14 (void) /* BNT_PasseEnHelico */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register tdstIntelligence * p_stReflex = p_stLocalMind0->p_stReflex ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  long1 =!(*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 99))));
  if ( !long1 ) {
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 107))));
  }
  if ( long1 ) {
    if ( (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 30)))) ) {
      LocalCFast_fn_vSetDsgVarFloat(30, LocalCFast_fn_xGetDsgVarFloat(4)) ;
    }
    LocalCFast_fn_vSetDsgVarBoolean(86, 0) ;
    LocalCFast_fn_vSetDsgVarInteger(24, 0) ;

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
    if ( CFast_CallCondition_Static(0) ) {

/* [Op : :=] ********** [2, 2, 0]*/
      CFast_CallOperator0_Static ( 464 ) ;

/* [Op : :=] ********** [2, 2, 0]*/
      CFast_CallOperator0_Static ( 467 ) ;

/* [Op : :=] ********** [2, 2, 0]*/
      CFast_CallOperator0_Static ( 470 ) ;

/* [Op : .] ********** [2, 2, 0]*/

/* [Func : ACT_LitBooleenDansTableau] ********** [4, 2, 1]*/
      M_eFuncIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Function][0]) = (tdeFuncId)248 ;

/* [Op : .] ********** [0, 2, 0]*/
      M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][1], E_ti_Operator);
      M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[3][1]) = (tdeOperatorId)12 ;
      CFast_memcpy ( 3, 2, 15) ;
      CFast_memcpy ( 3, 3, 16) ;
      M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][4], E_ti_Constant);
      M_lValueInterpret(&CFast_g_a_stPseudoTree[3][4]) = 1143 ;
      CFast_CallFunction1_NoStatic( ) ;
      LocalCFast_fn_vSetDsgVarBoolean(120,  ۟(CFast_g_a_stParam+1)) ;
      LocalCFast_fn_vSetDsgVarFloat(19, MTH_M_xFloatToReal(0.00000f)) ;

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
      if ( CFast_CallCondition_Static(3) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
        fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
        CFast_CallProcedure_Static( 473 ) ;
        if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
          CFast_g_bMetaActionInRfx = 1 ;
          if ( CFast_g_bProcessReflex )
            p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
          else
            p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
          return (1) ;
        }
      }
      else {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
        if ( CFast_CallCondition_Static(7) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 475 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            CFast_g_bMetaActionInRfx = 1 ;
            if ( CFast_g_bProcessReflex )
              p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
            else
              p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
            return (1) ;
          }
        }
        else {

/* [Proc : ChangeActionAvecEvenements] *********** [2, 2, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 477 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            CFast_g_bMetaActionInRfx = 1 ;
            if ( CFast_g_bProcessReflex )
              p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
            else
              p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
            return (1) ;
          }
        }
      }

/* [Proc : EnvoieRequeteSon] *********** [1, 1, 0]*/
      CFast_CallProcedure_Static( 480 ) ;
    }
    else {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 482 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        CFast_g_bMetaActionInRfx = 1 ;
        if ( CFast_g_bProcessReflex )
          p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
        else
          p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
        return (1) ;
      }
    }

/* [Cond : <] ********** [2, 2, 1]*/
    if ( MTH_M_bLess((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 21)))), MTH_M_xFloatToReal(0.100000f)) ) {
      if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 1)))) ) {
        M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Float;
        M_GetSetParam_xValue(&CFast_g_a_stParam[1]) = (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 3)))) ;
      } else {
        M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Float;
        M_GetSetParam_xValue(&CFast_g_a_stParam[1]) = MTH_M_xFloatToReal(4.000000f) ;
      }

/* [Proc : MEC_FixeGravite] *********** [1, 1, 0]*/
        M_lValueInterpret(p_stPseudoTree+485) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
      CFast_CallProcedure_Static( 484 ) ;
    }
    else {

/* [Proc : MEC_FixeGravite] *********** [1, 1, 0]*/
      CFast_CallProcedure_Static( 486 ) ;
    }
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 1)))) ) {
      LocalCFast_fn_vSetDsgVar0To255(9, 17) ;
      LocalCFast_fn_vSetDsgVarBoolean(47, 1) ;

/* [Vector] *********** [3, 3, 1]*/
      CFast_CallVector1_Static (488) ;

/* [Proc : MEC_FixeVitesseMax] *********** [1, 1, 0]*/
        M_p_stVectorInterpret(p_stPseudoTree+493) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
      CFast_CallProcedure_Static( 492 ) ;
    }
    else {
      LocalCFast_fn_vSetDsgVarBoolean(47, 0) ;
      LocalCFast_fn_vSetDsgVar0To255(9, 15) ;
    }

/* [Op : .] ********** [2, 2, 0]*/

/* [Func : ACT_LitBooleenDansTableau] ********** [4, 2, 1]*/
    M_eFuncIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Function][0]) = (tdeFuncId)248 ;

/* [Op : .] ********** [0, 2, 0]*/
    M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][1], E_ti_Operator);
    M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[3][1]) = (tdeOperatorId)12 ;
    CFast_memcpy ( 3, 2, 15) ;
    CFast_memcpy ( 3, 3, 16) ;
    M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][4], E_ti_Constant);
    M_lValueInterpret(&CFast_g_a_stPseudoTree[3][4]) = 1095 ;
    CFast_CallFunction1_NoStatic( ) ;
    LocalCFast_fn_vSetDsgVarBoolean(106,  ۟(CFast_g_a_stParam+1)) ;
    LocalCFast_fn_vSetDsgVarBoolean(97, 1) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 494 ) ;
    if ( CFast_g_bProcessReflex ) {
      CFast_YLT_RaymanModel_ArrayReflex[p_stReflex->p_stCurrentComport->CFast_lMyIndex]();
    }
else
{
      CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    }
    return (1) ;
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_QuitteLeModeChuteSiDemande
 */
long CFast_YLT_RaymanModel_Sbr_44 (void) /* BNT_QuitteLeModeChuteSiDemande */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : BoutonJusteAppuye] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsJustValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+30)) ) {
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16))));
if ( long1 ) {
      long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 47))));
    }
    if ( long1 ) {
      long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 1))));
      if ( !long1 ) {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 4]*/
        long1 =!CFast_CallCondition_Static(418) ;
      }
      if ( long1 ) {
        p_stLocalMind0->CFast_lRfxMetaAction = 1;
label1 :
        if ( CFast_YLT_RaymanModel_Sbr_13 ( ) )
          return 1 ;
        p_stLocalMind0 -> CFast_lRfxMetaAction = 0 ;
/* [MacroRef : 0] ********** [0]*/
        if ( CFast_YLT_RaymanModel_Sbr_14 ( ) )
          return 1 ;
/* [MacroRef : 0] ********** [0]*/
      }
    }
  }
  else {

/* [Cond : BoutonRelache] ********** [1, 1, 1]*/
    if ( (long)IPT_fn_bIsInvalidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+30)) ) {
      LocalCFast_fn_vSetDsgVarBoolean(47, 1) ;
    }
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_CalculeDirectionDeDeplacementEnSaut
 */
long CFast_YLT_RaymanModel_Sbr_47 (void) /* BNT_CalculeDirectionDeDeplacementEnSaut */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : BoutonRelache] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsInvalidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+27)) ) {

/* [Func : ACT_ViseePerso] ********** [1, 0, 3]*/
    CFast_CallFunction3_Static( 12 ) ;

/* [Func : VEC_ContributionVecteur] ********** [2, 2, 2]*/
      M_p_stVectorInterpret(p_stPseudoTree+499) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+3);
    CFast_CallFunction2_Static( 497 ) ;
    MTH3D_M_vMulScalarVector(&stVector0, MTH_M_xMul(LocalCFast_fn_xGetDsgVarFloat(30),MTH_M_xFloatToReal(0.01000f)),&M_GetSetParam_stVectorValue(CFast_g_a_stParam+2)) ;
    LocalCFast_fn_vSetDsgVarVector(31, &stVector0) ;
  }
  else {
    if ( (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 30)))) ) {
      MTH3D_M_vMulScalarVector(&stVector0, MTH_M_xMul(MTH_M_xFloatToReal(7.00000f),MTH_M_xFloatToReal(0.01000f)),LocalCFast_fn_p_stGetDsgVarVector(76)) ;
      LocalCFast_fn_vSetDsgVarVector(31, &stVector0) ;
    }
    else {
      MTH3D_M_vSetVectorElements(&stVector0, MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(0.00000f)) ;
      LocalCFast_fn_vSetDsgVarVector(31, &stVector0) ;
    }
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_ChangeAnimDescente
 */
long CFast_YLT_RaymanModel_Sbr_46 (void) /* BNT_ChangeAnimDescente */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
  if ( !( CFast_CallCondition_Static(500) ) ) {

/* [Func : MEC_LitGravite] ********** [0, 0, 1]*/
    CFast_CallFunction1_Static( 502 ) ;
    LocalCFast_fn_vSetDsgVarFloat(36, M_GetSetParam_xValue(CFast_g_a_stParam+1)) ;

/* [Cond : =] ********** [2, 2, 1]*/
    if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 29)))) == 0 ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 503 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        CFast_g_bMetaActionInRfx = 1 ;
        if ( CFast_g_bProcessReflex )
          p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
        else
          p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
        return (1) ;
      }
    }
    else {

/* [Cond : =] ********** [2, 2, 1]*/
      if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 29)))) == 1 ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
        fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
        CFast_CallProcedure_Static( 505 ) ;
        if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
          CFast_g_bMetaActionInRfx = 1 ;
          if ( CFast_g_bProcessReflex )
            p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
          else
            p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
          return (1) ;
        }
      }
      else {

/* [Cond : =] ********** [2, 2, 1]*/
        if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 29)))) == 2 ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 507 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            CFast_g_bMetaActionInRfx = 1 ;
            if ( CFast_g_bProcessReflex )
              p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
            else
              p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
            return (1) ;
          }
        }
      }
    }

/* [Proc : MEC_FixeGravite] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 509 ) ;
    LocalCFast_fn_vSetDsgVarBoolean(96, 1) ;
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_TombeDansLEau
 */
long CFast_YLT_RaymanModel_Sbr_24 (void) /* BNT_TombeDansLEau */
{
  MTH3D_tdstVector stVector0;
  MTH3D_tdstVector stVector1;
  MTH3D_tdstVector stVector2;
  struct DNM_stDynamics *p_stDynam;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : Col_CollisionAvecEau] ********** [0, 0, 2]*/
  long1 = CFast_CallCondition_Static(511) ;
if ( long1 ) {

/* [Func : COL_LitTypeMateriauCollision2] ********** [1, 1, 4]*/
    CFast_CallFunction4_Static( 301 ) ;

/* [Cond : COL_TesteCmtContreMasque] ********** [2, 2, 3]*/
      M_lValueInterpret(p_stPseudoTree+304) = M_GetSetParam_lValue(CFast_g_a_stParam+4);
    long1 = CFast_CallCondition_Static(303) ;
  }
  if ( long1 ) {

/* [Func : COL_LitPointCollision2] ********** [1, 1, 1]*/
    CFast_CallFunction1_Static( 512 ) ;
    LocalCFast_fn_vSetDsgVarVector(39, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
    POS_fn_vGetTranslationVector(HIE_fn_hGetSuperObjectMatrix(g_hSuperObjectPerso), &stVector1); ;
    POS_fn_vGetTranslationVector(HIE_fn_hGetSuperObjectMatrix(g_hSuperObjectPerso), &stVector0); ;
    MTH3D_M_vSetVectorElements(&stVector2, (&stVector1)->xX, (&stVector0)->xY, LocalCFast_fn_p_stGetDsgVarVector(39)->xZ) ;
    LocalCFast_fn_vSetDsgVarVector(39, &stVector2) ;
    LocalCFast_fn_vSetDsgVarFloat(50, LocalCFast_fn_p_stGetDsgVarVector(39)->xZ) ;

/* [Func : COL_VecteurNormalCollision2] ********** [1, 1, 1]*/
    CFast_CallFunction1_Static( 514 ) ;
    LocalCFast_fn_vSetDsgVarVector(40, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
    p_stDynam = fn_p_stDynamGetDynamicsSO(g_hSuperObjectPerso);
if (p_stDynam != NULL){
MTH3D_M_vCopyVector(&stVector0, DNM_M_pDynamicsGetPreviousSpeed(p_stDynam));}
else {MTH3D_M_vNullVector(&stVector0);} ;
    LocalCFast_fn_vSetDsgVarFloat(21, (&stVector0)->xZ) ;

/* [Cond : Col_CollisionAvecSol] ********** [0, 0, 2]*/
    long1 = CFast_CallCondition_Static(516) ;
if ( long1 ) {

/* [Cond : Col_ZDMCollisionAvecSol] ********** [1, 1, 4]*/
      long1 =!CFast_CallCondition_Static(80) ;
    }
    if ( long1 ) {

/* [Func : COL_LitPointCollision2] ********** [1, 1, 1]*/
      CFast_CallFunction1_Static( 517 ) ;
      LocalCFast_fn_vSetDsgVarVector(41, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
      LocalCFast_fn_vSetDsgVarFloat(36, MTH_M_xSub(LocalCFast_fn_xGetDsgVarFloat(50),LocalCFast_fn_p_stGetDsgVarVector(41)->xZ)) ;

/* [Cond : >] ********** [2, 2, 1]*/
      if ( MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 36)))), MTH_M_xFloatToReal(0.030000f)) ) {

/* [Func : COL_VecteurNormalCollision2] ********** [1, 1, 3]*/
        CFast_CallFunction3_Static( 514 ) ;
        MTH3D_M_vMulScalarVector(&stVector0, MTH_M_xFloatToReal(0.02000f),&M_GetSetParam_stVectorValue(CFast_g_a_stParam+3)) ;
        MTH3D_M_vAddVector(&stVector1, LocalCFast_fn_p_stGetDsgVarVector(39),&stVector0) ;
        LocalCFast_fn_vSetDsgVarVector(41, &stVector1) ;
        CFast_YLT_RaymanModel_Sbr_15 ( ) ;
/* [MacroRef : 0] ********** [0]*/
      }
      else {
        LocalCFast_fn_vSetDsgVarFloat(21, MTH_M_xFloatToReal(1.00000f)) ;
      }
    }

/* [Cond : <] ********** [2, 2, 2]*/
    long1 = MTH_M_bLess((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 21)))), MTH_M_xFloatToReal(0.000000f)) ? 1 : 0;
    if ( !long1 ) {

/* [Cond : =] ********** [2, 2, 3]*/
      long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 22 ? 1 : 0;
    }
    if ( long1 ) {

/* [Func : ZON_LitPositionZDM] ********** [1, 1, 2]*/
      CFast_CallFunction2_Static( 519 ) ;

/* [Func : ZON_LitDimensionZDM] ********** [2, 1, 3]*/
      CFast_CallFunction3_Static( 521 ) ;
      MTH3D_M_vAddVector(&stVector0, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2),&M_GetSetParam_stVectorValue(CFast_g_a_stParam+3)) ;
      LocalCFast_fn_vSetDsgVarVector(54, &stVector0) ;

/* [Func : ZON_LitPositionZDM] ********** [1, 1, 2]*/
      CFast_CallFunction2_Static( 523 ) ;

/* [Func : ZON_LitDimensionZDM] ********** [2, 1, 3]*/
      CFast_CallFunction3_Static( 525 ) ;
      MTH3D_M_vSubVector(&stVector0, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2),&M_GetSetParam_stVectorValue(CFast_g_a_stParam+3)) ;
      LocalCFast_fn_vSetDsgVarVector(56, &stVector0) ;
      MTH3D_M_vMulScalarVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[4]), MTH_M_xFloatToReal(-0.001000f), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 40))));
      M_GetSetParam_Type(&CFast_g_a_stParam[4]) = E_vt_Vector;
      MTH3D_M_vAddVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[3]), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 39))), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[4]));
      M_GetSetParam_Type(&CFast_g_a_stParam[3]) = E_vt_Vector;

/* [Op : .Z] ********** [3, 1, 7]*/
      CFast_CallOperator7_Static( 527 ) ;

/* [Op : .Z] ********** [4, 1, 8]*/
      CFast_CallOperator8_Static( 529 ) ;
      M_Full_GetSetParam_Float(&CFast_g_a_stParam[6], MTH_M_xSub(M_GetSetParam_xValue(&CFast_g_a_stParam[7]),M_GetSetParam_xValue(&CFast_g_a_stParam[8])));
      M_Full_GetSetParam_Float(&CFast_g_a_stParam[5], MTH_M_xMul(M_GetSetParam_xValue(&CFast_g_a_stParam[6]),MTH_M_xFloatToReal(1.100000f)));
      MTH3D_M_vMulScalarVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[4]), M_GetSetParam_xValue(&CFast_g_a_stParam[5]), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 40))));
      M_GetSetParam_Type(&CFast_g_a_stParam[4]) = E_vt_Vector;

/* [Func : COL_PointCollision] ********** [3, 3, 2]*/
        M_p_stVectorInterpret(p_stPseudoTree+532) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+3);
        M_p_stVectorInterpret(p_stPseudoTree+533) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+4);
      CFast_CallFunction2_Static( 531 ) ;

/* [Cond : VEC_VecteurNul] ********** [1, 1, 1]*/
        M_p_stVectorInterpret(p_stPseudoTree+94) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
      if ( CFast_CallCondition_Static(93) ) {
        MTH3D_M_vMulScalarVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[3]), MTH_M_xFloatToReal(1.801000f), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 40))));
        M_GetSetParam_Type(&CFast_g_a_stParam[3]) = E_vt_Vector;
        MTH3D_M_vAddVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[2]), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 39))), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[3]));
        M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Vector;
        MTH3D_M_vMulScalarVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[3]), MTH_M_xFloatToReal(-1.800000f), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 40))));
        M_GetSetParam_Type(&CFast_g_a_stParam[3]) = E_vt_Vector;

/* [Func : COL_PointCollision] ********** [3, 3, 1]*/
          M_p_stVectorInterpret(p_stPseudoTree+532) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
          M_p_stVectorInterpret(p_stPseudoTree+533) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+3);
        CFast_CallFunction1_Static( 531 ) ;
        LocalCFast_fn_vSetDsgVarVector(41, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;

/* [Cond : VEC_VecteurNul] ********** [1, 1, 1]*/
        if ( !( CFast_CallCondition_Static(99) ) ) {
          MTH3D_M_vMulScalarVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[3]), MTH_M_xFloatToReal(1.801000f), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 40))));
          M_GetSetParam_Type(&CFast_g_a_stParam[3]) = E_vt_Vector;
          MTH3D_M_vAddVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[2]), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 39))), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[3]));
          M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Vector;
          MTH3D_M_vMulScalarVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[3]), MTH_M_xFloatToReal(-1.800000f), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 40))));
          M_GetSetParam_Type(&CFast_g_a_stParam[3]) = E_vt_Vector;

/* [Func : COL_NormaleCollision] ********** [3, 3, 1]*/
            M_p_stVectorInterpret(p_stPseudoTree+536) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
            M_p_stVectorInterpret(p_stPseudoTree+537) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+3);
          CFast_CallFunction1_Static( 535 ) ;
          LocalCFast_fn_vSetDsgVarVector(41, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
        }

/* [Op : .Z] ********** [1, 1, 3]*/
        CFast_CallOperator3_Static( 101 ) ;
        M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xAbs(M_GetSetParam_xValue(&CFast_g_a_stParam[3])) ;
        M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;

/* [Math_ : Math_ValeurAbsolue] ********** [0, 1, 2]*/

/* [Cond : <] ********** [2, 2, 1]*/
        if ( MTH_M_bLess(M_GetSetParam_xValue(&CFast_g_a_stParam[2]), MTH_M_xFloatToReal(0.100000f)) ) {
          MTH3D_M_vMulScalarVector(&stVector0, MTH_M_xFloatToReal(0.02000f),LocalCFast_fn_p_stGetDsgVarVector(40)) ;
          MTH3D_M_vAddVector(&stVector1, LocalCFast_fn_p_stGetDsgVarVector(39),&stVector0) ;
          LocalCFast_fn_vSetDsgVarVector(41, &stVector1) ;
          CFast_YLT_RaymanModel_Sbr_15 ( ) ;
/* [MacroRef : 0] ********** [0]*/

/* [Func : ZON_LitPositionZDM] ********** [1, 1, 1]*/
          CFast_CallFunction1_Static( 519 ) ;
          LocalCFast_fn_vSetDsgVarVector(41, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;

/* [Cond : >] ********** [2, 2, 2]*/
          long1 = MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 21)))), MTH_M_xFloatToReal(0.000000f)) ? 1 : 0;
if ( long1 ) {

/* [Cond : <>] ********** [2, 2, 3]*/
            long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) != 22 ? 1 : 0;
          }
          if ( long1 ) {

/* [Func : ZON_LitDimensionZDM] ********** [1, 1, 2]*/
            CFast_CallFunction2_Static( 521 ) ;
            MTH3D_M_vSubVector(LocalCFast_fn_p_stGetDsgVarVector(41),LocalCFast_fn_p_stGetDsgVarVector(41),&M_GetSetParam_stVectorValue(CFast_g_a_stParam+2)) ;
            LocalCFast_fn_vSetDsgVarFloat(36, MTH_M_xFloatToReal(0.95000f)) ;
            LocalCFast_fn_vSetDsgVarFloat(50, MTH_M_xAdd(LocalCFast_fn_xGetDsgVarFloat(50),MTH_M_xFloatToReal(10.00000f))) ;
          }
          else {

/* [Func : ZON_LitDimensionZDM] ********** [1, 1, 2]*/
            CFast_CallFunction2_Static( 521 ) ;
            MTH3D_M_vAddVector(LocalCFast_fn_p_stGetDsgVarVector(41),LocalCFast_fn_p_stGetDsgVarVector(41),&M_GetSetParam_stVectorValue(CFast_g_a_stParam+2)) ;
            LocalCFast_fn_vSetDsgVarFloat(36, MTH_M_xFloatToReal(-1.05000f)) ;
          }
          MTH3D_M_vMulScalarVector(&stVector0, MTH_M_xMul(LocalCFast_fn_p_stGetDsgVarVector(41)->xZ,LocalCFast_fn_xGetDsgVarFloat(36)),LocalCFast_fn_p_stGetDsgVarVector(40)) ;
          MTH3D_M_vAddVector(&stVector1, LocalCFast_fn_p_stGetDsgVarVector(39),&stVector0) ;
          LocalCFast_fn_vSetDsgVarVector(63, &stVector1) ;
          p_stLocalMind0->CFast_lRfxMetaAction = 1;
label1 :
label2 :
          if ( CFast_YLT_RaymanModel_Sbr_16 ( ) )
            return 1 ;
          p_stLocalMind0 -> CFast_lRfxMetaAction = 0 ;
/* [MacroRef : 0] ********** [0]*/
        }
      }
    }
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_FaitPloufDansLesFlaques
 */
long CFast_YLT_RaymanModel_Sbr_28 (void) /* BNT_FaitPloufDansLesFlaques */
{
  MTH_tdxReal xReal0;
  MTH3D_tdstVector stVector0;
  struct DNM_stDynamics *p_stDynam;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : Col_CollisionAvecEau] ********** [0, 0, 2]*/
  long1 = CFast_CallCondition_Static(511) ;
if ( long1 ) {

/* [Func : COL_LitTypeMateriauCollision2] ********** [1, 1, 4]*/
    CFast_CallFunction4_Static( 301 ) ;

/* [Cond : COL_TesteCmtContreMasque] ********** [2, 2, 3]*/
      M_lValueInterpret(p_stPseudoTree+304) = M_GetSetParam_lValue(CFast_g_a_stParam+4);
    long1 = CFast_CallCondition_Static(303) ;
  }
  if ( long1 ) {

/* [Func : COL_LitPointCollision2] ********** [1, 1, 2]*/
    CFast_CallFunction2_Static( 512 ) ;

/* [Func : COL_LitPointCollision2] ********** [2, 1, 3]*/
    CFast_CallFunction3_Static( 517 ) ;
    MTH3D_M_vSubVector(&stVector0, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2),&M_GetSetParam_stVectorValue(CFast_g_a_stParam+3)) ;
    LocalCFast_fn_vSetDsgVarVector(39, &stVector0) ;
    p_stDynam = fn_p_stDynamGetDynamicsSO(g_hSuperObjectPerso);
if (p_stDynam != NULL){
xReal0 = MTH3D_M_xNormVector(DNM_M_pDynamicsGetPreviousSpeed(p_stDynam));}
else {xReal0=MTH_C_ZERO;} ;
    LocalCFast_fn_vSetDsgVarFloat(36, MTH_M_xMul(MTH_M_xMul(MTH_M_xLongToReal(xReal0),LocalCFast_fn_p_stGetDsgVarVector(39)->xZ),MTH_M_xFloatToReal(0.10000f))) ;

/* [Cond : >] ********** [2, 2, 1]*/
    if ( MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 36)))), MTH_M_xFloatToReal(0.000000f)) ) {

/* [Func : Temps_LitDT] ********** [0, 0, 3]*/
      CFast_CallFunction3_Static( 9 ) ;
      LocalCFast_fn_vSetDsgVarFloat(100, MTH_M_xAdd(LocalCFast_fn_xGetDsgVarFloat(100),MTH_M_xMul(LocalCFast_fn_xGetDsgVarFloat(36),M_GetSetParam_xValue(CFast_g_a_stParam+3)))) ;

/* [Cond : >] ********** [3, 2, 1]*/
      if ( MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 100)))), MTH_M_xFloatToReal(64.000000f)) ) {
        LocalCFast_fn_vSetDsgVarFloat(100, MTH_M_xFloatToReal(0.00000f)) ;

/* [Func : COL_LitPointCollision2] ********** [3, 1, 3]*/
        CFast_CallFunction3_Static( 512 ) ;

/* [Func : COL_VecteurNormalCollision2] ********** [4, 1, 5]*/
        CFast_CallFunction5_Static( 514 ) ;
        MTH3D_M_vMulScalarVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[4]), MTH_M_xFloatToReal(0.010000f), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[5]));
        M_GetSetParam_Type(&CFast_g_a_stParam[4]) = E_vt_Vector;
        MTH3D_M_vAddVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[2]), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[3]), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[4]));
        M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Vector;

/* [Func : ACT_ViseePerso] ********** [3, 0, 4]*/
        CFast_CallFunction4_Static( 12 ) ;
        MTH3D_M_vMulScalarVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[3]), (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 36)))), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[4]));
        M_GetSetParam_Type(&CFast_g_a_stParam[3]) = E_vt_Vector;
        MTH3D_M_vAddVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[1]), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[2]), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[3]));
        M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Vector;
        M_Full_GetSetParam_Float(&CFast_g_a_stParam[3], MTH_M_xAdd(MTH_M_xFloatToReal(0.200000f),(*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 36))))));

/* [Vector] *********** [6, 3, 2]*/
          M_lValueInterpret(p_stPseudoTree+542) = M_GetSetParam_lValue(CFast_g_a_stParam+3);
        CFast_CallVector2_Static (539) ;

/* [Proc : LanceAGO] *********** [6, 5, 0]*/
          M_p_stVectorInterpret(p_stPseudoTree+545) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
          M_p_stVectorInterpret(p_stPseudoTree+546) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
        CFast_CallProcedure_Static( 543 ) ;

/* [Proc : EnvoieRequeteSon] *********** [2, 1, 0]*/
        CFast_CallProcedure_Static( 549 ) ;
      }
    }
  }
  else {
    LocalCFast_fn_vSetDsgVarFloat(100, MTH_M_xFloatToReal(0.00000f)) ;
  }
/* [EndTree] ************ [1]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_GereLaFinDAnimDePaf
 */
long CFast_YLT_RaymanModel_Sbr_45 (void) /* BNT_GereLaFinDAnimDePaf */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : ACT_TestFinAction] ********** [0, 0, 2]*/
  long1 = CFast_CallCondition_Static(2) ;
if ( long1 ) {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 3]*/
    long1 = CFast_CallCondition_Static(418) ;
  }
  if ( long1 ) {

/* [Func : MEC_LitGravite] ********** [0, 0, 1]*/
    CFast_CallFunction1_Static( 502 ) ;
    LocalCFast_fn_vSetDsgVarFloat(36, M_GetSetParam_xValue(CFast_g_a_stParam+1)) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 551 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      CFast_g_bMetaActionInRfx = 1 ;
      if ( CFast_g_bProcessReflex )
        p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
      else
        p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
      return (1) ;
    }

/* [Proc : MEC_FixeGravite] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 509 ) ;
    LocalCFast_fn_vSetDsgVarBoolean(96, 1) ;
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_EjectionLateraleQuandPeutTomberEnSaut
 */
long CFast_YLT_RaymanModel_Sbr_26 (void) /* BNT_EjectionLateraleQuandPeutTomberEnSaut */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : MEC_PeutTomber] ********** [1, 1, 1]*/
  if ( CFast_CallCondition_Static(422) ) {
    MTH3D_M_vMulScalarVector(LocalCFast_fn_p_stGetDsgVarVector(39),MTH_M_xFloatToReal(4.00000f),LocalCFast_fn_p_stGetDsgVarVector(39)) ;

/* [Op : .X] ********** [1, 1, 1]*/
    CFast_CallOperator1_Static( 553 ) ;

/* [Op : .Y] ********** [2, 1, 2]*/
    CFast_CallOperator2_Static( 555 ) ;

/* [Proc : ACT_ImposeVitesseAbsoluXY] *********** [2, 2, 0]*/
      M_lValueInterpret(p_stPseudoTree+558) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
      M_lValueInterpret(p_stPseudoTree+559) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
    CFast_CallProcedure_Static( 557 ) ;
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_CoupeImpulsionForceeContreLesMurs
 */
long CFast_YLT_RaymanModel_Sbr_25 (void) /* BNT_CoupeImpulsionForceeContreLesMurs */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : Col_CollisionAvecMur] ********** [0, 0, 1]*/
  if ( CFast_CallCondition_Static(429) ) {

/* [Cond : VEC_VecteurNul] ********** [1, 1, 1]*/
    if ( !( CFast_CallCondition_Static(560) ) ) {

/* [Func : COL_VecteurNormalCollision2] ********** [1, 1, 1]*/
      CFast_CallFunction1_Static( 424 ) ;
      LocalCFast_fn_vSetDsgVarVector(39, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
      if (MTH3D_M_bIsNullVector(((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 94))))) {
        MTH3D_M_vCopyVector(&M_GetSetParam_stVectorValue(&CFast_g_a_stParam[4]), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 94))));
      } else {
        MTH3D_M_vNormalizeVector(&M_GetSetParam_stVectorValue(&CFast_g_a_stParam[4]), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 94))));
      }
      M_GetSetParam_Type(&CFast_g_a_stParam[4]) = E_vt_Vector;

/* [Func : VEC_ProduitScalaire] ********** [5, 2, 3]*/
        M_p_stVectorInterpret(p_stPseudoTree+564) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+4);
      CFast_CallFunction3_Static( 562 ) ;
      M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xMax(MTH_M_xFloatToReal(0.000000f),M_GetSetParam_xValue(&CFast_g_a_stParam[3]));
      M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;

/* [Math_ : Math_MaximumReel] ********** [2, 2, 2]*/

/* [Func : COL_CalculVecteurRebond] ********** [3, 3, 1]*/
        M_lValueInterpret(p_stPseudoTree+568) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
      CFast_CallFunction1_Static( 565 ) ;
      LocalCFast_fn_vSetDsgVarVector(94, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
    }
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_PasseEnSautMontee
 */
long CFast_YLT_RaymanModel_Sbr_36 (void) /* BNT_PasseEnSautMontee */
{
  MTH3D_tdstVector stVector0;
  struct DNM_stDynamics *p_stDynam;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register tdstIntelligence * p_stReflex = p_stLocalMind0->p_stReflex ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  long lMetaAction ;

  lMetaAction = CFast_g_bProcessReflex ? p_stLocalMind0->CFast_lRfxMetaActionForMacro : p_stLocalMind0->CFast_lCmpMetaActionForMacro ;
  switch(lMetaAction)
  {
  case 1 : goto label1 ;
  }
  LocalCFast_fn_vSetDsgVarBoolean(96, 0) ;
  LocalCFast_fn_vSetDsgVar_32768To32767(33, 0) ;
  LocalCFast_fn_vSetDsgVar_32768To32767(32, 0) ;
  LocalCFast_fn_vSetDsgVarInteger(24, 0) ;
  p_stDynam = fn_p_stDynamGetDynamicsSO(g_hSuperObjectPerso);
if (p_stDynam != NULL){
MTH3D_M_vCopyVector(&stVector0, DNM_M_pDynamicsGetPreviousSpeed(p_stDynam));}
else {MTH3D_M_vNullVector(&stVector0);} ;
  LocalCFast_fn_vSetDsgVarVector(22, &stVector0) ;
  LocalCFast_fn_vSetDsgVarBoolean(52, 0) ;
  LocalCFast_fn_vSetDsgVarBoolean(51, 0) ;
  CFast_YLT_RaymanModel_Sbr_2 ( ) ;
/* [MacroRef : 0] ********** [0]*/

/* [Keyword : Moi] ********** [0, 0, 2]*/

/* [Cond : EstDansComportement] ********** [2, 2, 1]*/
  if ( CFast_CallCondition_Static(569) ) {

/* [Cond : >] ********** [2, 2, 1]*/
    if ( CFast_CallCondition_Static(572) ) {

/* [Cond : =] ********** [3, 2, 1]*/
      long2 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 107)))) == 0 ? 1 : 0;
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[1], long2) ;

/* [Op : :=] ********** [2, 2, 0]*/
        M_lValueInterpret(p_stPseudoTree+577) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
      CFast_CallOperator0_Static ( 575 ) ;
    }
    else {
      LocalCFast_fn_vSetDsgVarBoolean(99, 0) ;
    }
  }
  else {
    LocalCFast_fn_vSetDsgVarBoolean(99, 0) ;

/* [Cond : Col_CollisionAvecSol] ********** [0, 0, 1]*/
    if ( CFast_CallCondition_Static(516) ) {
      MTH3D_M_vSetVectorElements(&stVector0, MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(0.00000f)) ;
      LocalCFast_fn_vSetDsgVarVector(94, &stVector0) ;
    }
  }

/* [Cond : =] ********** [2, 2, 1]*/
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 6 ) {

/* [Func : ACT_ViseePerso] ********** [4, 0, 2]*/
    CFast_CallFunction2_Static( 12 ) ;

/* [Func : ACT_CibleLaPlusProcheAvecAngles] ********** [7, 7, 1]*/
      M_p_stVectorInterpret(p_stPseudoTree+361) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
    CFast_CallFunction1_Static( 356 ) ;
    LocalCFast_fn_vSetDsgVarPersoWithEngine(42, M_GetSetParam_p_stEngineObjValue(CFast_g_a_stParam+1)) ;
    LocalCFast_fn_vSetDsgVar0To255(9, 12) ;
  }
  else {

/* [Cond : <>] ********** [2, 2, 1]*/
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) != 28 ) {
      LocalCFast_fn_vSetDsgVar0To255(9, 11) ;
    }
  }

/* [Op : .] ********** [2, 2, 0]*/

/* [Func : ACT_LitBooleenDansTableau] ********** [4, 2, 1]*/
  M_eFuncIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Function][0]) = (tdeFuncId)248 ;

/* [Op : .] ********** [0, 2, 0]*/
  M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][1], E_ti_Operator);
  M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[3][1]) = (tdeOperatorId)12 ;
  CFast_memcpy ( 3, 2, 15) ;
  CFast_memcpy ( 3, 3, 16) ;
  M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][4], E_ti_Constant);
  M_lValueInterpret(&CFast_g_a_stPseudoTree[3][4]) = 1095 ;
  CFast_CallFunction1_NoStatic( ) ;
  LocalCFast_fn_vSetDsgVarBoolean(106,  ۟(CFast_g_a_stParam+1)) ;
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 120)))) ) {

/* [Proc : EnvoieRequeteSon] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 200 ) ;

/* [Proc : EnvoieRequeteSon] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 202 ) ;
  }

/* [Vector] *********** [3, 3, 1]*/
  CFast_CallVector1_Static (176) ;

/* [Vector] *********** [4, 3, 2]*/
  CFast_CallVector2_Static (188) ;

/* [Proc : ACT_ReorientePerso] *********** [3, 3, 0]*/
    M_p_stVectorInterpret(p_stPseudoTree+193) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
    M_p_stVectorInterpret(p_stPseudoTree+194) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
  CFast_CallProcedure_Static( 192 ) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
  CFast_CallProcedure_Static( 578 ) ;

/* [bloquant moteur] *********************/
      return (1);
label1 :
    if ( CFast_g_bProcessReflex ) {
    CFast_YLT_RaymanModel_ArrayReflex[p_stReflex->p_stCurrentComport->CFast_lMyIndex]();
  }
else
{
    CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
  }
  return (1) ;
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_PasseEnComportPatinDepuisLeSol
 */
long CFast_YLT_RaymanModel_Sbr_33 (void) /* BNT_PasseEnComportPatinDepuisLeSol */
{
  MTH_tdxReal xReal0;
  MTH3D_tdstVector stVector0;
  struct DNM_stDynamics *p_stDynam;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register tdstIntelligence * p_stReflex = p_stLocalMind0->p_stReflex ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  long lMetaAction ;

  lMetaAction = CFast_g_bProcessReflex ? p_stLocalMind0->CFast_lRfxMetaActionForMacro : p_stLocalMind0->CFast_lCmpMetaActionForMacro ;
  switch(lMetaAction)
  {
  case 1 : goto label1 ;
  }

/* [Func : COL_LitTypeMateriauCollision2] ********** [1, 1, 2]*/
  CFast_CallFunction2_Static( 273 ) ;

/* [Cond : COL_TesteCmtContreMasque] ********** [2, 2, 1]*/
    M_lValueInterpret(p_stPseudoTree+347) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
  if ( CFast_CallCondition_Static(346) ) {

/* [Func : ACT_AssiettePerso] ********** [0, 0, 1]*/
    CFast_CallFunction1_Static( 349 ) ;
    LocalCFast_fn_vSetDsgVarVector(101, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;

/* [Func : Temps_Obtenir] ********** [0, 0, 1]*/
    CFast_CallFunction1_Static( 430 ) ;
    LocalCFast_fn_vSetDsgVarInteger(35, M_GetSetParam_ulValue(CFast_g_a_stParam+1)) ;
    p_stDynam = fn_p_stDynamGetDynamicsSO(g_hSuperObjectPerso);
if (p_stDynam != NULL){
MTH3D_M_vCopyVector(&stVector0, DNM_M_pDynamicsGetPreviousSpeed(p_stDynam));}
else {MTH3D_M_vNullVector(&stVector0);} ;
    LocalCFast_fn_vSetDsgVarVector(94, &stVector0) ;
    p_stDynam = fn_p_stDynamGetDynamicsSO(g_hSuperObjectPerso);
if (p_stDynam != NULL){
xReal0 = MTH3D_M_xNormVector(DNM_M_pDynamicsGetPreviousSpeed(p_stDynam));}
else {xReal0=MTH_C_ZERO;} ;
    LocalCFast_fn_vSetDsgVarFloat(21, xReal0) ;
    LocalCFast_fn_vSetDsgVarInteger(24, 0) ;
    LocalCFast_fn_vSetDsgVarFloat(67, MTH_M_xFloatToReal(0.00000f)) ;
    LocalCFast_fn_vSetDsgVarFloat(48, MTH_M_xFloatToReal(60.00000f)) ;
    LocalCFast_fn_vSetDsgVarBoolean(34, 0) ;

/* [Proc : EnvoieRequeteSon] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 581 ) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 583 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      CFast_g_bMetaActionInRfx = 1 ;
      if ( CFast_g_bProcessReflex )
        p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
      else
        p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
      return (1) ;
    }

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 350 ) ;

/* [bloquant moteur] *********************/
            return (1);
label1 :
        if ( CFast_g_bProcessReflex ) {
      CFast_YLT_RaymanModel_ArrayReflex[p_stReflex->p_stCurrentComport->CFast_lMyIndex]();
    }
else
{
      CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    }
    return (1) ;
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_CoupeAccrochageArriereSiNecessaire
 */
long CFast_YLT_RaymanModel_Sbr_49 (void) /* BNT_CoupeAccrochageArriereSiNecessaire */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Func : VEC_VecteurRelatif] ********** [1, 1, 1]*/
  CFast_CallFunction1_Static( 585 ) ;
  LocalCFast_fn_vSetDsgVarVector(39, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;

/* [Func : VEC_VecteurRelatif] ********** [1, 1, 1]*/
  CFast_CallFunction1_Static( 587 ) ;
  LocalCFast_fn_vSetDsgVarVector(40, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;

/* [Op : .Y] ********** [1, 1, 3]*/
  CFast_CallOperator3_Static( 555 ) ;

/* [Cond : <] ********** [2, 2, 2]*/
  long1 = MTH_M_bLess(M_GetSetParam_xValue(&CFast_g_a_stParam[3]), MTH_M_xFloatToReal(-80.000000f)) ? 1 : 0;
  if ( !long1 ) {

/* [Op : .Y] ********** [1, 1, 4]*/
    CFast_CallOperator4_Static( 589 ) ;
    M_Full_GetSetParam_Float(&CFast_g_a_stParam[5], MTH_M_xMul((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 30)))),MTH_M_xFloatToReal(-0.970000f)));

/* [Cond : <] ********** [2, 2, 3]*/
    long1 = MTH_M_bLess(M_GetSetParam_xValue(&CFast_g_a_stParam[4]), M_GetSetParam_xValue(&CFast_g_a_stParam[5])) ? 1 : 0;
  }
  if ( long1 ) {

/* [Proc : ZON_ForceDesactivationZDM] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 591 ) ;
  }
  else {

/* [Proc : ZON_LibereActivationZDM] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 593 ) ;
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_LitPadEnSaut
 */
long CFast_YLT_RaymanModel_Sbr_50 (void) /* BNT_LitPadEnSaut */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  long2 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))); /* oups */

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [5, 1, 6]*/
  long3 = CFast_CallCondition_Static(418) ;

/* [Cond : Non] ********** [4, 1, 5]*/
  long3 = !long3;

/* [Cond : Et] ********** [4, 2, 3]*/
  long2 &= long3;
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[3], long2) ;
  if (M_lValueInterpret(&CFast_g_a_stParam[3])) {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xLongToReal(1) ;
  } else {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xLongToReal(0) ;
  }
  M_GetSetParam_lValue(&CFast_g_a_stParam[1]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
  M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [4, 1, 1]*/

/* [Cond : BoutonRelache] ********** [6, 1, 2]*/
  long2 = (long)IPT_fn_bIsInvalidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+27));
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[2], long2) ;

/* [Op : ..] ********** [8, 1, 0]*/

/* [Proc : PAD_LitJoyAnalogiqueModeMario] *********** [9, 8, 0]*/
  CFast_fn_vSetUltraOperatorPersoRef(12);
    M_lValueInterpret(p_stPseudoTree+600) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
    M_lValueInterpret(p_stPseudoTree+601) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
  CFast_CallProcedure_Static( 595 ) ;
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_PasseEnVarappeDuSol
 */
long CFast_YLT_RaymanModel_Sbr_52 (void) /* BNT_PasseEnVarappeDuSol */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : >] ********** [2, 2, 1]*/
  if ( MTH_M_bGreater(MTH_M_xLongToReal((*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 24))))), MTH_M_xFloatToReal(500.000000f)) ) {

/* [Cond : ZON_ZDMContreMur] ********** [1, 1, 2]*/
    long1 = CFast_CallCondition_Static(434) ;
if ( long1 ) {

/* [Cond : ZON_ZDMContreMur] ********** [1, 1, 4]*/
      long1 =!CFast_CallCondition_Static(436) ;
    }
    if ( long1 ) {

/* [Vector] *********** [4, 3, 4]*/
      CFast_CallVector4_Static (438) ;

/* [Op : v+] ********** [2, 2, 3]*/
        M_p_stVectorInterpret(p_stPseudoTree+444) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+4);
      CFast_CallOperator3_Static( 442 ) ;

/* [Func : COL_VecteurNormalCollision2] ********** [2, 1, 5]*/
      CFast_CallFunction5_Static( 424 ) ;
      MTH3D_M_vMulScalarVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[4]), MTH_M_xFloatToReal(-5.000000f), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[5]));
      M_GetSetParam_Type(&CFast_g_a_stParam[4]) = E_vt_Vector;

/* [Func : COL_PointCollisionAvecMateriau] ********** [4, 4, 2]*/
        M_p_stVectorInterpret(p_stPseudoTree+446) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+3);
        M_p_stVectorInterpret(p_stPseudoTree+447) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+4);
      CFast_CallFunction2_Static( 445 ) ;

/* [Cond : VEC_VecteurNul] ********** [1, 1, 1]*/
        M_p_stVectorInterpret(p_stPseudoTree+451) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
      if ( !( CFast_CallCondition_Static(450) ) ) {

/* [Func : COL_VecteurNormalCollision2] ********** [1, 1, 2]*/
        CFast_CallFunction2_Static( 424 ) ;

/* [Func : VEC_VecteurGlobalToLocal] ********** [1, 1, 1]*/
          M_p_stVectorInterpret(p_stPseudoTree+604) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
        CFast_CallFunction1_Static( 603 ) ;
        LocalCFast_fn_vSetDsgVarVector(39, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;

/* [Op : .Y] ********** [1, 1, 2]*/
        CFast_CallOperator2_Static( 555 ) ;

/* [Cond : >] ********** [2, 2, 1]*/
        if ( MTH_M_bGreater(M_GetSetParam_xValue(&CFast_g_a_stParam[2]), MTH_M_xFloatToReal(0.000000f)) ) {
          p_stLocalMind0->CFast_lRfxMetaAction = 1;
label1 :
          if ( CFast_YLT_RaymanModel_Sbr_12 ( ) )
            return 1 ;
          p_stLocalMind0 -> CFast_lRfxMetaAction = 0 ;
/* [MacroRef : 0] ********** [0]*/
        }
      }
    }
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_FinCommuneComportsEntreDeux
 */
long CFast_YLT_RaymanModel_Sbr_56 (void) /* BNT_FinCommuneComportsEntreDeux */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  if ( CFast_YLT_RaymanModel_Sbr_17 ( ) )
    return 1 ;
/* [MacroRef : 0] ********** [0]*/
  CFast_fn_vSetDsgVar0To255(M_CFast_ucGetRealIndice(13), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),3) ;
  CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;
  LocalCFast_fn_vSetDsgVar0To255(9, 26) ;

/* [Func : Temps_LitDT] ********** [0, 0, 2]*/
  CFast_CallFunction2_Static( 9 ) ;
  LocalCFast_fn_vSetDsgVarInteger(24, (LocalCFast_fn_lGetDsgVarInteger(24)+MTH_M_xRealToLong(M_GetSetParam_xValue(CFast_g_a_stParam+2)))) ;
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))) ) {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(1.000000f) ;
  } else {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(0.000000f) ;
  }
  M_GetSetParam_lValue(&CFast_g_a_stParam[1]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
  M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [4, 1, 1]*/

/* [Op : ..] ********** [8, 1, 0]*/

/* [Proc : PAD_LitJoyAnalogiqueModeMario] *********** [9, 8, 0]*/
  CFast_fn_vSetUltraOperatorPersoRef(12);
    M_lValueInterpret(p_stPseudoTree+610) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
  CFast_CallProcedure_Static( 605 ) ;

/* [Func : ACT_ViseePerso] ********** [0, 0, 3]*/
  CFast_CallFunction3_Static( 12 ) ;

/* [Func : VEC_ProduitScalaire] ********** [2, 2, 2]*/
    M_p_stVectorInterpret(p_stPseudoTree+614) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+3);
  CFast_CallFunction2_Static( 613 ) ;
  M_GetSetParam_lValue(&CFast_g_a_stParam[1]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
  M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [0, 1, 1]*/
  LocalCFast_fn_vSetDsgVar_32768To32767(75, M_GetSetParam_lValue(CFast_g_a_stParam+1)) ;
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_GenerePloufDEntreeDansLEau
 */
long CFast_YLT_RaymanModel_Sbr_15 (void) /* BNT_GenerePloufDEntreeDansLEau */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Vector] *********** [5, 3, 1]*/
  CFast_CallVector1_Static (616) ;

/* [Proc : LanceAGO] *********** [5, 5, 0]*/
    M_p_stVectorInterpret(p_stPseudoTree+623) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
  CFast_CallProcedure_Static( 620 ) ;

/* [Vector] *********** [5, 3, 1]*/
  CFast_CallVector1_Static (626) ;

/* [Proc : LanceAGO] *********** [5, 5, 0]*/
    M_p_stVectorInterpret(p_stPseudoTree+633) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
  CFast_CallProcedure_Static( 630 ) ;

/* [Vector] *********** [5, 3, 1]*/
  CFast_CallVector1_Static (188) ;

/* [Proc : LanceAGO] *********** [5, 5, 0]*/
    M_p_stVectorInterpret(p_stPseudoTree+639) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
  CFast_CallProcedure_Static( 636 ) ;

/* [Vector] *********** [5, 3, 1]*/
  CFast_CallVector1_Static (188) ;

/* [Proc : LanceAGO] *********** [5, 5, 0]*/
    M_p_stVectorInterpret(p_stPseudoTree+645) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
  CFast_CallProcedure_Static( 642 ) ;

/* [Proc : EnvoieRequeteSon] *********** [1, 1, 0]*/
  CFast_CallProcedure_Static( 648 ) ;
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_PasseEnEntreDeux
 */
long CFast_YLT_RaymanModel_Sbr_13 (void) /* BNT_PasseEnEntreDeux */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register tdstIntelligence * p_stReflex = p_stLocalMind0->p_stReflex ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  long lMetaAction ;

  lMetaAction = CFast_g_bProcessReflex ? p_stLocalMind0->CFast_lRfxMetaActionForMacro : p_stLocalMind0->CFast_lCmpMetaActionForMacro ;
  switch(lMetaAction)
  {
  case 1 : goto label1 ;
  }
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 62)))) ) {
    LocalCFast_fn_vSetDsgVarInteger(24, 0) ;
    LocalCFast_fn_vSetDsgVarBoolean(106, 0) ;

/* [Proc : ZON_FixeTailleZDMSphere] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 650 ) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 653 ) ;

/* [bloquant moteur] *********************/
            return (1);
label1 :
        if ( CFast_g_bProcessReflex ) {
      CFast_YLT_RaymanModel_ArrayReflex[p_stReflex->p_stCurrentComport->CFast_lMyIndex]();
    }
else
{
      CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    }
    return (1) ;
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_GiPasseEnAttente
 */
long CFast_YLT_RaymanModel_Sbr_53 (void) /* BNT_GiPasseEnAttente */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  LocalCFast_fn_vSetDsgVar_32768To32767(33, 0) ;
  LocalCFast_fn_vSetDsgVar_32768To32767(32, 0) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
  fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
  CFast_CallProcedure_Static( 656 ) ;
  if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
    CFast_g_bMetaActionInRfx = 1 ;
    if ( CFast_g_bProcessReflex )
      p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
    else
      p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
    return (1) ;
  }

/* [Proc : ChangeMonComportement] *********** [1, 1, 0]*/
  CFast_CallProcedure_Static( 658 ) ;
  if ( !CFast_g_bProcessReflex )
{
    CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    return (1) ;
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_LacheLeTonneau
 */
long CFast_YLT_RaymanModel_Sbr_31 (void) /* BNT_LacheLeTonneau */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : ObjetValide] ********** [1, 1, 1]*/
  if ( CFast_CallCondition_Static(660) ) {

/* [Op : ..] ********** [3, 1, 0]*/

/* [Proc : ACT_ChangeCustomBit] *********** [4, 3, 0]*/
    CFast_fn_vSetUltraOperatorPersoVar(60);
    CFast_CallProcedure_Static( 662 ) ;

/* [Vector] *********** [5, 3, 1]*/
    CFast_CallVector1_Static (665) ;

/* [Op : ..] ********** [4, 1, 0]*/

/* [Proc : COL_ChangeVecteurDeCollisionneur] *********** [5, 4, 0]*/
    CFast_fn_vSetUltraOperatorPersoVar(60);
      M_p_stVectorInterpret(p_stPseudoTree+672) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
    CFast_CallProcedure_Static( 669 ) ;

/* [Op : ..] ********** [3, 1, 0]*/

/* [Proc : ACT_ChangeSpoFlag] *********** [4, 3, 0]*/
    CFast_fn_vSetUltraOperatorPersoVar(60);
    CFast_CallProcedure_Static( 673 ) ;
    LocalCFast_fn_vSetDsgVarPerso(60, NULL) ;
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_AttrapeTonneauAuDessusOuDevant
 */
long CFast_YLT_RaymanModel_Sbr_32 (void) /* BNT_AttrapeTonneauAuDessusOuDevant */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register tdstIntelligence * p_stReflex = p_stLocalMind0->p_stReflex ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : =] ********** [2, 2, 2]*/
  long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 87)))) == (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 38)))) ? 1 : 0;
  if ( !long1 ) {

/* [Cond : <] ********** [2, 2, 3]*/
    long1 = MTH_M_bLess(MTH_M_xLongToReal((*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 87))))), MTH_M_xFloatToReal(0.000000f)) ? 1 : 0;
  }
  if ( long1 ) {

/* [Cond : =] ********** [2, 2, 1]*/
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 87)))) == 1 ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 676 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        CFast_g_bMetaActionInRfx = 1 ;
        if ( CFast_g_bProcessReflex )
          p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
        else
          p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
        return (1) ;
      }
    }
    else {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 678 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        CFast_g_bMetaActionInRfx = 1 ;
        if ( CFast_g_bProcessReflex )
          p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
        else
          p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
        return (1) ;
      }
    }
    LocalCFast_fn_vSetDsgVar0To255(87, 0) ;
    LocalCFast_fn_vSetDsgVarInteger(24, 0) ;
    LocalCFast_fn_vSetDsgVarBoolean(106, 0) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 680 ) ;
    if ( CFast_g_bProcessReflex ) {
      CFast_YLT_RaymanModel_ArrayReflex[p_stReflex->p_stCurrentComport->CFast_lMyIndex]();
    }
else
{
      CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    }
    return (1) ;
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_PasseEnGI
 */
long CFast_YLT_RaymanModel_Sbr_40 (void) /* BNT_PasseEnGI */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register tdstIntelligence * p_stReflex = p_stLocalMind0->p_stReflex ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  long lMetaAction ;

  lMetaAction = CFast_g_bProcessReflex ? p_stLocalMind0->CFast_lRfxMetaActionForMacro : p_stLocalMind0->CFast_lCmpMetaActionForMacro ;
  switch(lMetaAction)
  {
  case 1 : goto label1 ;
  case 2 : goto label2 ;
  case 3 : goto label3 ;
  }

/* [Cond : ZON_ZDMContrePlafond] ********** [1, 1, 1]*/
  if ( CFast_CallCondition_Static(683) ) {

/* [Func : COL_VecteurNormalCollision2] ********** [2, 1, 4]*/
    CFast_CallFunction4_Static( 685 ) ;
    MTH3D_M_vMulScalarVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[3]), MTH_M_xFloatToReal(-3.500000f), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[4]));
    M_GetSetParam_Type(&CFast_g_a_stParam[3]) = E_vt_Vector;

/* [Func : COL_PointCollisionAvecMateriau] ********** [4, 4, 2]*/
      M_p_stVectorInterpret(p_stPseudoTree+689) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+3);
    CFast_CallFunction2_Static( 687 ) ;

/* [Cond : VEC_VecteurNul] ********** [1, 1, 1]*/
      M_p_stVectorInterpret(p_stPseudoTree+451) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
    if ( !( CFast_CallCondition_Static(450) ) ) {
      LocalCFast_fn_vSetDsgVarBoolean(46, 0) ;
      LocalCFast_fn_vSetDsgVarBoolean(106, 0) ;
      LocalCFast_fn_vSetDsgVarBoolean(14, 1) ;
      LocalCFast_fn_vSetDsgVarInteger(24, 0) ;
      LocalCFast_fn_vSetDsgVarBoolean(86, 0) ;

/* [Cond : BoutonRelache] ********** [2, 1, 1]*/
      long2 = (long)IPT_fn_bIsInvalidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+30));
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[1], long2) ;

/* [Op : :=] ********** [2, 2, 0]*/
        M_lValueInterpret(p_stPseudoTree+694) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
      CFast_CallOperator0_Static ( 692 ) ;

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
      if ( CFast_CallCondition_Static(0) ) {

/* [Op : :=] ********** [2, 2, 0]*/
        CFast_CallOperator0_Static ( 695 ) ;

/* [Op : :=] ********** [2, 2, 0]*/
        CFast_CallOperator0_Static ( 698 ) ;

/* [Op : :=] ********** [2, 2, 0]*/
        CFast_CallOperator0_Static ( 701 ) ;

/* [Op : .] ********** [2, 2, 0]*/

/* [Func : ACT_LitBooleenDansTableau] ********** [4, 2, 1]*/
        M_eFuncIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Function][0]) = (tdeFuncId)248 ;

/* [Op : .] ********** [0, 2, 0]*/
        M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][1], E_ti_Operator);
        M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[3][1]) = (tdeOperatorId)12 ;
        CFast_memcpy ( 3, 2, 15) ;
        CFast_memcpy ( 3, 3, 16) ;
        M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][4], E_ti_Constant);
        M_lValueInterpret(&CFast_g_a_stPseudoTree[3][4]) = 1143 ;
        CFast_CallFunction1_NoStatic( ) ;
        LocalCFast_fn_vSetDsgVarBoolean(120,  ۟(CFast_g_a_stParam+1)) ;
        LocalCFast_fn_vSetDsgVarFloat(19, MTH_M_xFloatToReal(0.00000f)) ;

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
        if ( CFast_CallCondition_Static(3) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 704 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            CFast_g_bMetaActionInRfx = 1 ;
            if ( CFast_g_bProcessReflex )
              p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
            else
              p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
            return (1) ;
          }
        }
        else {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
          if ( CFast_CallCondition_Static(7) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
            fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
            CFast_CallProcedure_Static( 706 ) ;
            if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
              CFast_g_bMetaActionInRfx = 1 ;
              if ( CFast_g_bProcessReflex )
                p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
              else
                p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
              return (1) ;
            }
          }
          else {

/* [Proc : ChangeActionAvecEvenements] *********** [2, 2, 0]*/
            fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
            CFast_CallProcedure_Static( 708 ) ;
            if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
              CFast_g_bMetaActionInRfx = 1 ;
              if ( CFast_g_bProcessReflex )
                p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
              else
                p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
              return (1) ;
            }
          }
        }

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
        CFast_CallProcedure_Static( 711 ) ;

/* [bloquant moteur] *********************/
                        return (1);
label1 :
                if ( CFast_g_bProcessReflex ) {
          CFast_YLT_RaymanModel_ArrayReflex[p_stReflex->p_stCurrentComport->CFast_lMyIndex]();
        }
else
{
          CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
        }
        return (1) ;
      }
      else {
        if ( (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 78)))) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 714 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            CFast_g_bMetaActionInRfx = 1 ;
            if ( CFast_g_bProcessReflex )
              p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
            else
              p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
            return (1) ;
          }

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
          CFast_CallProcedure_Static( 716 ) ;

/* [bloquant moteur] *********************/
                              return (1);
label2 :
                    if ( CFast_g_bProcessReflex ) {
            CFast_YLT_RaymanModel_ArrayReflex[p_stReflex->p_stCurrentComport->CFast_lMyIndex]();
          }
else
{
            CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
          }
          return (1) ;
        }
        else {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 656 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            CFast_g_bMetaActionInRfx = 1 ;
            if ( CFast_g_bProcessReflex )
              p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
            else
              p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
            return (1) ;
          }

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
          CFast_CallProcedure_Static( 711 ) ;

/* [bloquant moteur] *********************/
                              return (1);
label3 :
                    if ( CFast_g_bProcessReflex ) {
            CFast_YLT_RaymanModel_ArrayReflex[p_stReflex->p_stCurrentComport->CFast_lMyIndex]();
          }
else
{
            CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
          }
          return (1) ;
        }
      }
    }
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_PafReinitEnSautDescente
 */
long CFast_YLT_RaymanModel_Sbr_61 (void) /* BNT_PafReinitEnSautDescente */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  LocalCFast_fn_vSetDsgVarFloat(28, 6) ;
  LocalCFast_fn_vSetDsgVarInteger(8, 4) ;
  LocalCFast_fn_vSetDsgVar0To255(9, 28) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
  fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
  CFast_CallProcedure_Static( 719 ) ;
  if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
    CFast_g_bMetaActionInRfx = 1 ;
    if ( CFast_g_bProcessReflex )
      p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
    else
      p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
    return (1) ;
  }

/* [Proc : ChangeMonComportement] *********** [1, 1, 0]*/
  CFast_CallProcedure_Static( 454 ) ;
  if ( !CFast_g_bProcessReflex )
{
    CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    return (1) ;
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_PafReinitEnSautMontee
 */
long CFast_YLT_RaymanModel_Sbr_60 (void) /* BNT_PafReinitEnSautMontee */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  LocalCFast_fn_vSetDsgVarInteger(8, 3) ;
  LocalCFast_fn_vSetDsgVar0To255(9, 28) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
  fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
  CFast_CallProcedure_Static( 719 ) ;
  if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
    CFast_g_bMetaActionInRfx = 1 ;
    if ( CFast_g_bProcessReflex )
      p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
    else
      p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
    return (1) ;
  }

/* [Proc : ChangeMonComportement] *********** [1, 1, 0]*/
  CFast_CallProcedure_Static( 454 ) ;
  if ( !CFast_g_bProcessReflex )
{
    CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    return (1) ;
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_CommenceAAccumuler
 */
long CFast_YLT_RaymanModel_Sbr_0 (void) /* BNT_CommenceAAccumuler */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Proc : ChangeAction] *********** [1, 1, 0]*/
  fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
  CFast_CallProcedure_Static( 721 ) ;
  if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
    CFast_g_bMetaActionInRfx = 1 ;
    if ( CFast_g_bProcessReflex )
      p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
    else
      p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
    return (1) ;
  }
  LocalCFast_fn_vSetDsgVarBoolean(20, 1) ;
  LocalCFast_fn_vSetDsgVarBoolean(121, 0) ;

/* [Proc : EnvoieRequeteSon] *********** [1, 1, 0]*/
  CFast_CallProcedure_Static( 723 ) ;
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_MemoriseVitessePere
 */
long CFast_YLT_RaymanModel_Sbr_2 (void) /* BNT_MemoriseVitessePere */
{
  MTH3D_tdstVector stVector0;
  struct DNM_stDynamics *p_stDynam;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Func : HIER_MonPere] ********** [0, 0, 1]*/
  CFast_CallFunction1_Static( 173 ) ;
  LocalCFast_fn_vSetDsgVarPersoWithEngine(42, M_GetSetParam_p_stEngineObjValue(CFast_g_a_stParam+1)) ;

/* [Cond : ObjetValide] ********** [1, 1, 2]*/
  long1 = CFast_CallCondition_Static(364) ;
if ( long1 ) {
    long1 = MTH_M_xRealToLong((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 15)))));
  }
  if ( long1 ) {
    p_stDynam = fn_p_stDynamGetDynamicsSO(LocalCFast_fn_hGetDsgVarPerso(42));
if (p_stDynam != NULL){
MTH3D_M_vCopyVector(&stVector0, DNM_M_pDynamicsGetPreviousSpeed(p_stDynam));}
else {MTH3D_M_vNullVector(&stVector0);} ;
    LocalCFast_fn_vSetDsgVarVector(71, &stVector0) ;
  }
  else {
    MTH3D_M_vSetVectorElements(&stVector0, MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(0.00000f)) ;
    LocalCFast_fn_vSetDsgVarVector(71, &stVector0) ;
  }
/* [EndTree] ************ [1]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_GereLaVitesseRelativeEtLInertieEnSaut
 */
long CFast_YLT_RaymanModel_Sbr_48 (void) /* BNT_GereLaVitesseRelativeEtLInertieEnSaut */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  if ( (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 15)))) ) {
    MTH3D_M_vMulScalarVector(&stVector0, LocalCFast_fn_xGetDsgVarFloat(15),LocalCFast_fn_p_stGetDsgVarVector(71)) ;
    MTH3D_M_vAddVector(LocalCFast_fn_p_stGetDsgVarVector(31),LocalCFast_fn_p_stGetDsgVarVector(31),&stVector0) ;
  }
  MTH3D_M_vAddVector(LocalCFast_fn_p_stGetDsgVarVector(31),LocalCFast_fn_p_stGetDsgVarVector(31),LocalCFast_fn_p_stGetDsgVarVector(94)) ;

/* [Op : .X] ********** [1, 1, 1]*/
  CFast_CallOperator1_Static( 725 ) ;

/* [Op : .Y] ********** [2, 1, 2]*/
  CFast_CallOperator2_Static( 727 ) ;

/* [Proc : ACT_ProposeVitesseAbsoluXY] *********** [2, 2, 0]*/
    M_lValueInterpret(p_stPseudoTree+730) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
    M_lValueInterpret(p_stPseudoTree+731) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
  CFast_CallProcedure_Static( 729 ) ;
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_RestaurePositionInitiale
 */
long CFast_YLT_RaymanModel_Sbr_3 (void) /* BNT_RestaurePositionInitiale */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Keyword : Moi] ********** [0, 0, 1]*/

/* [Proc : ACT_FixePositionPerso] *********** [2, 2, 0]*/
  CFast_CallProcedure_Static( 732 ) ;

/* [Proc : ACT_ChangeViseePerso] *********** [1, 1, 0]*/
  CFast_CallProcedure_Static( 735 ) ;

/* [Proc : ACT_ForcePositionMoyennePerso] *********** [0, 0, 0]*/
  CFast_CallProcedure_Static( 737 ) ;

/* [Keyword : Moi] ********** [0, 0, 1]*/

/* [Keyword : Personne] ********** [1, 0, 2]*/
  CFast_CallKeyword_Static(232, 2) ;

/* [Proc : MortDuJoueurAvecRepositionnement] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 738 ) ;
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_GiSauteALaDemande
 */
long CFast_YLT_RaymanModel_Sbr_54 (void) /* BNT_GiSauteALaDemande */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : BoutonAppuye] ********** [1, 1, 3]*/
  long1 = (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+30)) ? 1 : 0;
if ( long1 ) {
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16))));
if ( long1 ) {
      long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 47))));
    }
  }
  if ( !long1 ) {

/* [Cond : ZON_ZDMContrePlafond] ********** [1, 1, 4]*/
    long1 =!CFast_CallCondition_Static(683) ;
  }
  if ( long1 ) {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
    if ( CFast_CallCondition_Static(0) ) {
      if ( CFast_YLT_RaymanModel_Sbr_18 ( ) )
        return 1 ;
/* [MacroRef : 0] ********** [0]*/
    }
    else {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 551 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        CFast_g_bMetaActionInRfx = 1 ;
        if ( CFast_g_bProcessReflex )
          p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
        else
          p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
        return (1) ;
      }
    }
    if ( CFast_YLT_RaymanModel_Sbr_19 ( ) )
      return 1 ;
/* [MacroRef : 0] ********** [0]*/
  }

/* [Cond : BoutonJusteRelache] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsJustInvalidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+30)) ) {
    LocalCFast_fn_vSetDsgVarBoolean(47, 1) ;
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_ImmobiliseLaCamera
 */
long CFast_YLT_RaymanModel_Sbr_64 (void) /* BNT_ImmobiliseLaCamera */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Op : ..] ********** [3, 1, 0]*/

/* [Proc : Cam_ChangeConstants] *********** [4, 3, 0]*/
  CFast_fn_vSetUltraOperatorPersoRef(12);
  CFast_CallProcedure_Static( 741 ) ;
  CFast_fn_vSetDsgVarInteger(M_CFast_ucGetRealIndice(210), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),255) ;

/* [Op : .] ********** [4, 2, 0]*/

/* [Op : ..] ********** [6, 1, 0]*/

/* [Proc : Cam_ForcePosition] *********** [7, 4, 0]*/
  M_eProcedureIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Procedure][0]) = (tdeProcedureId)498 ;
  M_SetTypeInterpret(&CFast_g_a_stPseudoTree[4][1], E_ti_Constant);
  M_lValueInterpret(&CFast_g_a_stPseudoTree[4][1]) = 1 ;
  M_SetTypeInterpret(&CFast_g_a_stPseudoTree[4][2], E_ti_Constant);
  M_lValueInterpret(&CFast_g_a_stPseudoTree[4][2]) = 1 ;

/* [Op : .] ********** [0, 2, 0]*/
  M_SetTypeInterpret(&CFast_g_a_stPseudoTree[4][3], E_ti_Operator);
  M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[4][3]) = (tdeOperatorId)12 ;
  CFast_memcpy ( 4, 4, 12) ;
  M_SetTypeInterpret(&CFast_g_a_stPseudoTree[4][5], E_ti_Field);
  M_eFieldIdInterpret(&CFast_g_a_stPseudoTree[4][5]) = (tdeFieldId)0 ;

/* [Op : ..] ********** [0, 1, 0]*/
  CFast_fn_vSetUltraOperatorPersoRef(12);
  CFast_CallProcedure_NoStatic( ) ;
  CFast_fn_vSetDsgVar0To255(M_CFast_ucGetRealIndice(13), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),11) ;
  CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_QuitteLeModeTonneauFusee
 */
long CFast_YLT_RaymanModel_Sbr_62 (void) /* BNT_QuitteLeModeTonneauFusee */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Vector] *********** [3, 3, 1]*/
  CFast_CallVector1_Static (176) ;

/* [Vector] *********** [4, 3, 2]*/
  CFast_CallVector2_Static (188) ;

/* [Proc : ACT_ReorientePerso] *********** [3, 3, 0]*/
    M_p_stVectorInterpret(p_stPseudoTree+193) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
    M_p_stVectorInterpret(p_stPseudoTree+194) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
  CFast_CallProcedure_Static( 192 ) ;

/* [Cond : ObjetValide] ********** [1, 1, 1]*/
  if ( CFast_CallCondition_Static(660) ) {

/* [Op : ..] ********** [3, 1, 0]*/

/* [Proc : ACT_ChangeCustomBit] *********** [4, 3, 0]*/
    CFast_fn_vSetUltraOperatorPersoVar(60);
    CFast_CallProcedure_Static( 662 ) ;
  }
  LocalCFast_fn_vSetDsgVarPerso(60, NULL) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
  fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
  CFast_CallProcedure_Static( 551 ) ;
  if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
    CFast_g_bMetaActionInRfx = 1 ;
    if ( CFast_g_bProcessReflex )
      p_stLocalMind0->CFast_lRfxMetaAction = 0 ;
    else
      p_stLocalMind0->CFast_lCmpMetaAction = 0 ;
    return (1) ;
  }
  if ( CFast_YLT_RaymanModel_Sbr_19 ( ) )
    return 1 ;
/* [MacroRef : 0] ********** [0]*/
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_PerdUnPointDeMegaShoot
 */
long CFast_YLT_RaymanModel_Sbr_57 (void) /* BNT_PerdUnPointDeMegaShoot */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Op : .] ********** [2, 2, 0]*/

/* [Func : ACT_LitNombreDeBooleensDansTableau] ********** [5, 3, 1]*/
  M_eFuncIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Function][0]) = (tdeFuncId)249 ;

/* [Op : .] ********** [0, 2, 0]*/
  M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][1], E_ti_Operator);
  M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[3][1]) = (tdeOperatorId)12 ;
  CFast_memcpy ( 3, 2, 15) ;
  CFast_memcpy ( 3, 3, 16) ;
  M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][4], E_ti_Constant);
  M_lValueInterpret(&CFast_g_a_stPseudoTree[3][4]) = 962 ;
  M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][5], E_ti_Constant);
  M_lValueInterpret(&CFast_g_a_stPseudoTree[3][5]) = 963 ;
  CFast_CallFunction1_NoStatic( ) ;
  LocalCFast_fn_vSetDsgVarInteger(38, M_GetSetParam_lValue(CFast_g_a_stParam+1)) ;
  if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 38)))) ) {

/* [Cond : =] ********** [2, 2, 1]*/
    if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 38)))) == 2 ) {

/* [Op : .] ********** [2, 2, 0]*/

/* [Proc : ACT_FixeBooleenDansTableau] *********** [5, 3, 0]*/
      M_eProcedureIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Procedure][0]) = (tdeProcedureId)352 ;

/* [Op : .] ********** [0, 2, 0]*/
      M_SetTypeInterpret(&CFast_g_a_stPseudoTree[4][1], E_ti_Operator);
      M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[4][1]) = (tdeOperatorId)12 ;
      CFast_memcpy ( 4, 2, 15) ;
      CFast_memcpy ( 4, 3, 16) ;
      M_SetTypeInterpret(&CFast_g_a_stPseudoTree[4][4], E_ti_Constant);
      M_lValueInterpret(&CFast_g_a_stPseudoTree[4][4]) = 963 ;
      M_SetTypeInterpret(&CFast_g_a_stPseudoTree[4][5], E_ti_Constant);
      M_lValueInterpret(&CFast_g_a_stPseudoTree[4][5]) = 0 ;
      CFast_CallProcedure_NoStatic( ) ;
    }
    else {

/* [Op : .] ********** [2, 2, 0]*/

/* [Func : ACT_LitBooleenDansTableau] ********** [4, 2, 1]*/
      M_eFuncIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Function][0]) = (tdeFuncId)248 ;

/* [Op : .] ********** [0, 2, 0]*/
      M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][1], E_ti_Operator);
      M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[3][1]) = (tdeOperatorId)12 ;
      CFast_memcpy ( 3, 2, 15) ;
      CFast_memcpy ( 3, 3, 16) ;
      M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][4], E_ti_Constant);
      M_lValueInterpret(&CFast_g_a_stPseudoTree[3][4]) = 963 ;
      CFast_CallFunction1_NoStatic( ) ;
      long1 = M_GetSetParam_lValue(&CFast_g_a_stParam[1]);
      if ( long1 ) {

/* [Op : .] ********** [3, 2, 0]*/

/* [Proc : ACT_FixeBooleenDansTableau] *********** [6, 3, 0]*/
        M_eProcedureIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Procedure][0]) = (tdeProcedureId)352 ;

/* [Op : .] ********** [1, 2, 0]*/
        M_SetTypeInterpret(&CFast_g_a_stPseudoTree[4][1], E_ti_Operator);
        M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[4][1]) = (tdeOperatorId)12 ;
        CFast_memcpy ( 4, 2, 15) ;
        CFast_memcpy ( 4, 3, 16) ;
        M_SetTypeInterpret(&CFast_g_a_stPseudoTree[4][4], E_ti_Constant);
        M_lValueInterpret(&CFast_g_a_stPseudoTree[4][4]) = 963 ;
        M_SetTypeInterpret(&CFast_g_a_stPseudoTree[4][5], E_ti_Constant);
        M_lValueInterpret(&CFast_g_a_stPseudoTree[4][5]) = 0 ;
        CFast_CallProcedure_NoStatic( ) ;
      }
      else {

/* [Op : .] ********** [3, 2, 0]*/

/* [Proc : ACT_FixeBooleenDansTableau] *********** [6, 3, 0]*/
        M_eProcedureIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Procedure][0]) = (tdeProcedureId)352 ;

/* [Op : .] ********** [1, 2, 0]*/
        M_SetTypeInterpret(&CFast_g_a_stPseudoTree[4][1], E_ti_Operator);
        M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[4][1]) = (tdeOperatorId)12 ;
        CFast_memcpy ( 4, 2, 15) ;
        CFast_memcpy ( 4, 3, 16) ;
        M_SetTypeInterpret(&CFast_g_a_stPseudoTree[4][4], E_ti_Constant);
        M_lValueInterpret(&CFast_g_a_stPseudoTree[4][4]) = 962 ;
        M_SetTypeInterpret(&CFast_g_a_stPseudoTree[4][5], E_ti_Constant);
        M_lValueInterpret(&CFast_g_a_stPseudoTree[4][5]) = 0 ;
        CFast_CallProcedure_NoStatic( ) ;

/* [Op : .] ********** [3, 2, 0]*/

/* [Proc : ACT_FixeBooleenDansTableau] *********** [6, 3, 0]*/
        M_eProcedureIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Procedure][0]) = (tdeProcedureId)352 ;

/* [Op : .] ********** [1, 2, 0]*/
        M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[4][1]) = (tdeOperatorId)12 ;
        CFast_memcpy ( 4, 2, 15) ;
        CFast_memcpy ( 4, 3, 16) ;
        M_lValueInterpret(&CFast_g_a_stPseudoTree[4][4]) = 963 ;
        M_lValueInterpret(&CFast_g_a_stPseudoTree[4][5]) = 1 ;
        CFast_CallProcedure_NoStatic( ) ;
      }
    }
  }
/* [EndTree] ************ [1]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_PerdTousLesPointsDeMegashoot
 */
long CFast_YLT_RaymanModel_Sbr_58 (void) /* BNT_PerdTousLesPointsDeMegashoot */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Op : .] ********** [2, 2, 0]*/

/* [Proc : ACT_FixeBooleenDansTableau] *********** [5, 3, 0]*/
  M_eProcedureIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Procedure][0]) = (tdeProcedureId)352 ;

/* [Op : .] ********** [0, 2, 0]*/
  M_SetTypeInterpret(&CFast_g_a_stPseudoTree[4][1], E_ti_Operator);
  M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[4][1]) = (tdeOperatorId)12 ;
  CFast_memcpy ( 4, 2, 15) ;
  CFast_memcpy ( 4, 3, 16) ;
  M_SetTypeInterpret(&CFast_g_a_stPseudoTree[4][4], E_ti_Constant);
  M_lValueInterpret(&CFast_g_a_stPseudoTree[4][4]) = 962 ;
  M_SetTypeInterpret(&CFast_g_a_stPseudoTree[4][5], E_ti_Constant);
  M_lValueInterpret(&CFast_g_a_stPseudoTree[4][5]) = 0 ;
  CFast_CallProcedure_NoStatic( ) ;

/* [Op : .] ********** [2, 2, 0]*/

/* [Proc : ACT_FixeBooleenDansTableau] *********** [5, 3, 0]*/
  M_eProcedureIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Procedure][0]) = (tdeProcedureId)352 ;

/* [Op : .] ********** [0, 2, 0]*/
  M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[4][1]) = (tdeOperatorId)12 ;
  CFast_memcpy ( 4, 2, 15) ;
  CFast_memcpy ( 4, 3, 16) ;
  M_lValueInterpret(&CFast_g_a_stPseudoTree[4][4]) = 963 ;
  M_lValueInterpret(&CFast_g_a_stPseudoTree[4][5]) = 0 ;
  CFast_CallProcedure_NoStatic( ) ;
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Subroutine BNT_TombeDansLEauZiva
 */
long CFast_YLT_RaymanModel_Sbr_16 (void) /* BNT_TombeDansLEauZiva */
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register tdstIntelligence * p_stReflex = p_stLocalMind0->p_stReflex ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  long lMetaAction ;

  lMetaAction = CFast_g_bProcessReflex ? p_stLocalMind0->CFast_lRfxMetaActionForMacro : p_stLocalMind0->CFast_lCmpMetaActionForMacro ;
  switch(lMetaAction)
  {
  case 1 : goto label1 ;
  case 2 : goto label2 ;
  }

/* [Keyword : Moi] ********** [0, 0, 1]*/

/* [Proc : ACT_FixePositionPerso] *********** [2, 2, 0]*/
  CFast_CallProcedure_Static( 744 ) ;

/* [Func : COL_LitTypeMateriauCollision2] ********** [1, 1, 2]*/
  CFast_CallFunction2_Static( 301 ) ;

/* [Cond : COL_TesteCmtContreMasque] ********** [2, 2, 1]*/
    M_lValueInterpret(p_stPseudoTree+748) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
  if ( CFast_CallCondition_Static(747) ) {

/* [Func : COL_LitTypeMateriauCollision] ********** [0, 0, 2]*/
    CFast_CallFunction2_Static( 248 ) ;

/* [Cond : COL_TesteCmtContreMasque] ********** [2, 2, 1]*/
      M_lValueInterpret(p_stPseudoTree+322) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
    if ( CFast_CallCondition_Static(321) ) {

/* [Keyword : Moi] ********** [0, 0, 1]*/

/* [Func : COL_LitPointCollision2] ********** [2, 1, 2]*/
      CFast_CallFunction2_Static( 512 ) ;

/* [Proc : ACT_FixePositionPerso] *********** [2, 2, 0]*/
        M_p_stVectorInterpret(p_stPseudoTree+752) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
      CFast_CallProcedure_Static( 750 ) ;

/* [Proc : COL_ChangeTypeDeCollisionneur] *********** [2, 2, 0]*/
      CFast_CallProcedure_Static( 753 ) ;

/* [Proc : COL_ChangeReelDeCollisionneur] *********** [3, 3, 0]*/
      CFast_CallProcedure_Static( 756 ) ;
    }
    else {

/* [Keyword : Moi] ********** [0, 0, 1]*/

/* [Proc : ACT_FixePositionPerso] *********** [2, 2, 0]*/
      CFast_CallProcedure_Static( 744 ) ;

/* [Proc : COL_ChangeTypeDeCollisionneur] *********** [2, 2, 0]*/
      CFast_CallProcedure_Static( 760 ) ;

/* [Proc : COL_ChangeReelDeCollisionneur] *********** [3, 3, 0]*/
      CFast_CallProcedure_Static( 756 ) ;
    }
    LocalCFast_fn_vSetDsgVarBoolean(85, 1) ;

/* [Proc : ACT_ImposeVitesseXYZ] *********** [3, 3, 0]*/
    CFast_CallProcedure_Static( 165 ) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 339 ) ;

/* [bloquant moteur] *********************/
            return (1);
label1 :
        if ( CFast_g_bProcessReflex ) {
      CFast_YLT_RaymanModel_ArrayReflex[p_stReflex->p_stCurrentComport->CFast_lMyIndex]();
    }
else
{
      CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    }
    return (1) ;
  }
  else {

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 763 ) ;

/* [bloquant moteur] *********************/
            return (1);
label2 :
        if ( CFast_g_bProcessReflex ) {
      CFast_YLT_RaymanModel_ArrayReflex[p_stReflex->p_stCurrentComport->CFast_lMyIndex]();
    }
else
{
      CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    }
    return (1) ;
  }
/* [EndTree] ************ [0]*/
  return (0) ;
}

/*
 * Model : YLT_RaymanModel Reflexe BNT_ReflexeMort
 */
void CFast_YLT_RaymanModel_Rfx_BNT_ReflexeMort (void)
{
}

/*
 * Model : YLT_RaymanModel Reflexe YLT_AucunReflexe
 */
void CFast_YLT_RaymanModel_Rfx_YLT_AucunReflexe (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  CFast_YLT_RaymanModel_Sbr_20 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_21 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_22 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Reflexe YLT_SautDetecteSol
 */
void CFast_YLT_RaymanModel_Rfx_YLT_SautDetecteSol (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  CFast_YLT_RaymanModel_Sbr_23 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_20 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_21 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_24 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_25 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_26 ( ) ;
/* [MacroRef : 0] ********** [0]*/
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Reflexe YLT_ReflexeAttente
 */
void CFast_YLT_RaymanModel_Rfx_YLT_ReflexeAttente (void)
{
  MTH3D_tdstVector stVector0;
  MTH3D_tdstVector stVector1;
  MTH3D_tdstVector stVector2;
  struct DNM_stDynamics *p_stDynam;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stReflex = p_stLocalMind0->p_stReflex ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  if ( p_stLocalMind0 -> CFast_lRfxMetaAction )
    goto label1 ;
  CFast_YLT_RaymanModel_Sbr_9 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_20 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_21 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_27 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_22 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 92)))) ) {

/* [Cond : Col_CollisionAvecEau] ********** [0, 0, 2]*/
    long1 = CFast_CallCondition_Static(511) ;
if ( long1 ) {

/* [Func : COL_LitTypeMateriauCollision2] ********** [1, 1, 4]*/
      CFast_CallFunction4_Static( 301 ) ;

/* [Cond : COL_TesteCmtContreMasque] ********** [2, 2, 3]*/
        M_lValueInterpret(p_stPseudoTree+304) = M_GetSetParam_lValue(CFast_g_a_stParam+4);
      long1 = CFast_CallCondition_Static(303) ;
    }
    if ( long1 ) {

/* [Func : COL_LitPointCollision2] ********** [1, 1, 1]*/
      CFast_CallFunction1_Static( 512 ) ;
      LocalCFast_fn_vSetDsgVarVector(39, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
      LocalCFast_fn_vSetDsgVarFloat(50, LocalCFast_fn_p_stGetDsgVarVector(39)->xZ) ;
      LocalCFast_fn_vSetDsgVarBoolean(52, 1) ;
      LocalCFast_fn_vSetDsgVarBoolean(53, 1) ;
    }
    else {
      LocalCFast_fn_vSetDsgVarBoolean(53, 0) ;
    }
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 52))));
if ( long1 ) {
      long1 =!(*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 53))));
    }
    if ( long1 ) {

/* [Func : COL_LitPointCollision2] ********** [1, 1, 1]*/
      CFast_CallFunction1_Static( 517 ) ;
      LocalCFast_fn_vSetDsgVarVector(40, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;

/* [Op : .Z] ********** [1, 1, 2]*/
      CFast_CallOperator2_Static( 766 ) ;

/* [Cond : >=] ********** [2, 2, 1]*/
      if ( MTH_M_bGreaterEqual(M_GetSetParam_xValue(&CFast_g_a_stParam[2]), (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 50))))) ) {
        LocalCFast_fn_vSetDsgVarBoolean(52, 0) ;
      }
    }
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 52)))) ) {
      POS_fn_vGetTranslationVector(HIE_fn_hGetSuperObjectMatrix(g_hSuperObjectPerso), &stVector0); ;

/* [Func : ZON_LitPositionZDM] ********** [1, 1, 3]*/
      CFast_CallFunction3_Static( 768 ) ;
      MTH3D_M_vAddVector(&stVector1, &stVector0,&M_GetSetParam_stVectorValue(CFast_g_a_stParam+3)) ;

/* [Func : ZON_LitDimensionZDM] ********** [1, 1, 3]*/
      CFast_CallFunction3_Static( 770 ) ;
      MTH3D_M_vAddVector(&stVector2, &stVector1,&M_GetSetParam_stVectorValue(CFast_g_a_stParam+3)) ;
      LocalCFast_fn_vSetDsgVarVector(40, &stVector2) ;

/* [Op : .Z] ********** [2, 1, 2]*/
      CFast_CallOperator2_Static( 766 ) ;

/* [Cond : >=] ********** [2, 2, 1]*/
      if ( MTH_M_bGreaterEqual((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 50)))), M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ) {
        if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 85)))) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 772 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            CFast_g_bMetaActionInRfx = 1 ;
            return ;
          }
        }
        else {

/* [Cond : =] ********** [2, 2, 1]*/
          if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 0 ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
            fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
            CFast_CallProcedure_Static( 774 ) ;
            if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
              CFast_g_bMetaActionInRfx = 1 ;
              return ;
            }
          }
          else {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
            fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
            CFast_CallProcedure_Static( 776 ) ;
            if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
              CFast_g_bMetaActionInRfx = 1 ;
              return ;
            }
          }
        }

/* [Proc : HIER_LiberePere] *********** [0, 0, 0]*/
        CFast_CallProcedure_Static( 778 ) ;

/* [Func : COL_LitTypeMateriauCollision2] ********** [1, 1, 2]*/
        CFast_CallFunction2_Static( 301 ) ;

/* [Cond : COL_TesteCmtContreMasque] ********** [2, 2, 1]*/
          M_lValueInterpret(p_stPseudoTree+748) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
        if ( CFast_CallCondition_Static(747) ) {

/* [Proc : MEC_ActiveCollision] *********** [1, 1, 0]*/
          CFast_CallProcedure_Static( 779 ) ;
          LocalCFast_fn_vSetDsgVarBoolean(16, 0) ;

/* [Proc : MEC_ActiveLimiteVitesse] *********** [1, 1, 0]*/
          CFast_CallProcedure_Static( 781 ) ;

/* [Vector] *********** [3, 3, 1]*/
          CFast_CallVector1_Static (188) ;

/* [Proc : MEC_FixeVitesseMax] *********** [1, 1, 0]*/
            M_p_stVectorInterpret(p_stPseudoTree+493) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
          CFast_CallProcedure_Static( 492 ) ;
          POS_fn_vGetTranslationVector(HIE_fn_hGetSuperObjectMatrix(g_hSuperObjectPerso), &stVector0); ;
          LocalCFast_fn_vSetDsgVarVector(40, &stVector0) ;
        }
        else {

/* [Proc : ACT_ImposeVecteurVitesseAbsolu] *********** [1, 1, 0]*/
          CFast_CallProcedure_Static( 783 ) ;

/* [Proc : COL_TraiteCollisionTraversee] *********** [1, 1, 0]*/
          CFast_CallProcedure_Static( 785 ) ;
        }
        LocalCFast_fn_vSetDsgVarBoolean(106, 0) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
        CFast_CallProcedure_Static( 787 ) ;
label1 :
        return ;
      }
    }
  }
/* [EndTree] ************ [0]*/
  CFast_YLT_RaymanModel_Sbr_28 ( ) ;
/* [MacroRef : 0] ********** [0]*/

/* [Cond : Col_CollisionAvecSol] ********** [0, 0, 1]*/
  if ( CFast_CallCondition_Static(516) ) {

/* [Func : Temps_Obtenir] ********** [0, 0, 1]*/
    CFast_CallFunction1_Static( 430 ) ;
    LocalCFast_fn_vSetDsgVarInteger(35, M_GetSetParam_ulValue(CFast_g_a_stParam+1)) ;
  }
  else {

/* [Cond : TempsDepasse] ********** [2, 2, 1]*/
    if ( CFast_CallCondition_Static(790) ) {

/* [Keyword : Moi] ********** [1, 0, 3]*/

/* [Cond : EstDansComportement] ********** [3, 2, 2]*/
      long2 = CFast_CallCondition_Static(793) ;
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[2], long2) ;
      if (M_lValueInterpret(&CFast_g_a_stParam[2])) {

/* [Func : Math_TernInf] ********** [5, 4, 3]*/
        CFast_CallFunction3_Static( 796 ) ;
        M_xValueInterpret(&CFast_g_a_stParam[1]) = M_xValueInterpret(&CFast_g_a_stParam[3]);
      } else {
        M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Float;
        M_GetSetParam_xValue(&CFast_g_a_stParam[1]) = MTH_M_xFloatToReal(8.000000f) ;
      }

/* [Op : :=] ********** [2, 2, 0]*/
        M_lValueInterpret(p_stPseudoTree+803) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
      CFast_CallOperator0_Static ( 801 ) ;
      LocalCFast_fn_vSetDsgVarInteger(29, 0) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 551 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        CFast_g_bMetaActionInRfx = 1 ;
        return ;
      }
      if ( CFast_YLT_RaymanModel_Sbr_19 ( ) )
        return ;
/* [MacroRef : 0] ********** [0]*/
    }
  }
/* [EndTree] ************ [0]*/

/* [Cond : MEC_PeutTomber] ********** [1, 1, 1]*/
  if ( CFast_CallCondition_Static(422) ) {

/* [Func : COL_VecteurNormalCollision2] ********** [1, 1, 1]*/
    CFast_CallFunction1_Static( 424 ) ;
    LocalCFast_fn_vSetDsgVarVector(40, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
    (LocalCFast_fn_p_stGetDsgVarVector(40))->xZ= MTH_M_xFloatToReal(0.00000f) ;

/* [Func : VEC_ProduitScalaire] ********** [2, 2, 1]*/
    CFast_CallFunction1_Static( 426 ) ;
    LocalCFast_fn_vSetDsgVarFloat(67, M_GetSetParam_xValue(CFast_g_a_stParam+1)) ;

/* [Cond : Col_CollisionAvecMur] ********** [0, 0, 3]*/
    long1 =!CFast_CallCondition_Static(429) ;
    if ( !long1 ) {

/* [Cond : >] ********** [2, 2, 3]*/
      long1 = MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 67)))), MTH_M_xFloatToReal(-0.500000f)) ? 1 : 0;
    }
    if ( long1 ) {
      POS_fn_vGetTranslationVector(HIE_fn_hGetSuperObjectMatrix(g_hSuperObjectPerso), &stVector0); ;

/* [Func : COL_LitPointCollision2] ********** [1, 1, 3]*/
      CFast_CallFunction3_Static( 517 ) ;
      MTH3D_M_vSubVector(&stVector1, &stVector0,&M_GetSetParam_stVectorValue(CFast_g_a_stParam+3)) ;
      MTH3D_M_vMulScalarVector(&stVector2, MTH_M_xFloatToReal(4.00000f),&stVector1) ;
      LocalCFast_fn_vSetDsgVarVector(39, &stVector2) ;

/* [Op : .Z] ********** [1, 1, 2]*/
      CFast_CallOperator2_Static( 804 ) ;

/* [Cond : <] ********** [2, 2, 1]*/
      if ( MTH_M_bLess(M_GetSetParam_xValue(&CFast_g_a_stParam[2]), MTH_M_xFloatToReal(-1.200000f)) ) {
        LocalCFast_fn_vSetDsgVarInteger(29, 0) ;
        LocalCFast_fn_vSetDsgVarFloat(30, MTH_M_xFloatToReal(8.00000f)) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
        fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
        CFast_CallProcedure_Static( 551 ) ;
        if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
          CFast_g_bMetaActionInRfx = 1 ;
          return ;
        }
        if ( CFast_YLT_RaymanModel_Sbr_19 ( ) )
          return ;
/* [MacroRef : 0] ********** [0]*/
      }
      else {
        M_GetSetParam_xValue(&CFast_g_a_stParam[4]) = MTH3D_M_xNormVector(((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 39))));
        M_GetSetParam_Type(&CFast_g_a_stParam[4]) = E_vt_Float;
        M_Full_GetSetParam_Float(&CFast_g_a_stParam[3], MTH_M_xSub(M_GetSetParam_xValue(&CFast_g_a_stParam[4]),MTH_M_xFloatToReal(1.000000f)));
        M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xMax(MTH_M_xFloatToReal(0.000000f),M_GetSetParam_xValue(&CFast_g_a_stParam[3]));
        M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;

/* [Math_ : Math_MaximumReel] ********** [0, 2, 2]*/
        (LocalCFast_fn_p_stGetDsgVarVector(39))->xZ= MTH_M_xNeg(M_GetSetParam_xValue(CFast_g_a_stParam+2)) ;
        MTH3D_M_vAddVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[1]), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 39))), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 22))));
        M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Vector;

/* [Proc : ACT_ImposeVecteurVitesseAbsolu] *********** [2, 1, 0]*/
          M_p_stVectorInterpret(p_stPseudoTree+807) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
        CFast_CallProcedure_Static( 806 ) ;
      }
    }
    else {
      p_stDynam = fn_p_stDynamGetDynamicsSO(g_hSuperObjectPerso);
if (p_stDynam != NULL){
MTH3D_M_vCopyVector(&stVector0, DNM_M_pDynamicsGetPreviousSpeed(p_stDynam));}
else {MTH3D_M_vNullVector(&stVector0);} ;
      LocalCFast_fn_vSetDsgVarVector(22, &stVector0) ;
    }
  }
  else {
    p_stDynam = fn_p_stDynamGetDynamicsSO(g_hSuperObjectPerso);
if (p_stDynam != NULL){
MTH3D_M_vCopyVector(&stVector0, DNM_M_pDynamicsGetPreviousSpeed(p_stDynam));}
else {MTH3D_M_vNullVector(&stVector0);} ;
    LocalCFast_fn_vSetDsgVarVector(22, &stVector0) ;
  }
/* [EndTree] ************ [1]*/
}

/*
 * Model : YLT_RaymanModel Reflexe YLT_SautCourant
 */
void CFast_YLT_RaymanModel_Rfx_YLT_SautCourant (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  CFast_YLT_RaymanModel_Sbr_23 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_20 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_21 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_25 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_26 ( ) ;
/* [MacroRef : 0] ********** [0]*/
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Reflexe JAC_GiReflexe
 */
void CFast_YLT_RaymanModel_Rfx_JAC_GiReflexe (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  CFast_YLT_RaymanModel_Sbr_9 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_20 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_21 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Reflexe BNT_ReflexeNage
 */
void CFast_YLT_RaymanModel_Rfx_BNT_ReflexeNage (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  CFast_YLT_RaymanModel_Sbr_29 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_20 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_21 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))) ) {

/* [Cond : Col_CollisionAvecEau] ********** [0, 0, 1]*/
    if ( CFast_CallCondition_Static(511) ) {

/* [Cond : Col_CollisionAvecSol] ********** [0, 0, 2]*/
      long1 = CFast_CallCondition_Static(516) ;
if ( long1 ) {

/* [Cond : >] ********** [2, 2, 3]*/
        long1 = MTH_M_bGreater(MTH_M_xLongToReal((*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 24))))), MTH_M_xFloatToReal(200.000000f)) ? 1 : 0;
      }
      if ( long1 ) {

/* [Proc : ActiveCanal] *********** [1, 1, 0]*/
        CFast_CallProcedure_Static( 808 ) ;

/* [Proc : ActiveCanal] *********** [1, 1, 0]*/
        CFast_CallProcedure_Static( 810 ) ;

/* [Proc : ActiveCanal] *********** [1, 1, 0]*/
        CFast_CallProcedure_Static( 812 ) ;

/* [Proc : ActiveCanal] *********** [1, 1, 0]*/
        CFast_CallProcedure_Static( 814 ) ;

/* [Proc : COL_TraiteCollisionTraversee] *********** [1, 1, 0]*/
        CFast_CallProcedure_Static( 816 ) ;

/* [Vector] *********** [3, 3, 1]*/
        CFast_CallVector1_Static (176) ;

/* [Vector] *********** [4, 3, 2]*/
        CFast_CallVector2_Static (188) ;

/* [Proc : ACT_ReorientePerso] *********** [3, 3, 0]*/
          M_p_stVectorInterpret(p_stPseudoTree+193) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
          M_p_stVectorInterpret(p_stPseudoTree+194) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
        CFast_CallProcedure_Static( 192 ) ;
        LocalCFast_fn_vSetDsgVarBoolean(52, 1) ;
        LocalCFast_fn_vSetDsgVarBoolean(53, 0) ;
        LocalCFast_fn_vSetDsgVarBoolean(62, 0) ;

/* [Keyword : Moi] ********** [0, 0, 1]*/

/* [Func : COL_LitPointCollision2] ********** [2, 1, 2]*/
        CFast_CallFunction2_Static( 517 ) ;

/* [Proc : ACT_FixePositionPerso] *********** [2, 2, 0]*/
          M_p_stVectorInterpret(p_stPseudoTree+752) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
        CFast_CallProcedure_Static( 750 ) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
        fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
        CFast_CallProcedure_Static( 342 ) ;
        if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
          CFast_g_bMetaActionInRfx = 1 ;
          return ;
        }

/* [Op : ..] ********** [8, 1, 0]*/

/* [Proc : PAD_LitJoyAnalogiqueModeMario] *********** [9, 8, 0]*/
        CFast_fn_vSetUltraOperatorPersoRef(12);
        CFast_CallProcedure_Static( 818 ) ;
        if ( CFast_YLT_RaymanModel_Sbr_30 ( ) )
          return ;
/* [MacroRef : 0] ********** [0]*/
      }
    }
  }
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Reflexe BNT_ReflexeGrappin
 */
void CFast_YLT_RaymanModel_Rfx_BNT_ReflexeGrappin (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  CFast_YLT_RaymanModel_Sbr_9 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_20 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_21 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Reflexe CHG_VarREflexe
 */
void CFast_YLT_RaymanModel_Rfx_CHG_VarREflexe (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  CFast_YLT_RaymanModel_Sbr_9 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_20 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_21 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_24 ( ) ;
/* [MacroRef : 0] ********** [0]*/
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Reflexe FRD_Entr2Reflexe
 */
void CFast_YLT_RaymanModel_Rfx_FRD_Entr2Reflexe (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  CFast_YLT_RaymanModel_Sbr_9 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_20 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_21 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  if ( !( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 62)))) ) ) {

/* [Proc : ZON_FixeTailleZDMSphere] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 409 ) ;
    LocalCFast_fn_vSetDsgVarInteger(29, 0) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 551 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      CFast_g_bMetaActionInRfx = 1 ;
      return ;
    }
    if ( CFast_YLT_RaymanModel_Sbr_19 ( ) )
      return ;
/* [MacroRef : 0] ********** [0]*/
  }
/* [EndTree] ************ [0]*/

/* [Func : ACT_ViseePerso] ********** [1, 0, 2]*/
  CFast_CallFunction2_Static( 12 ) ;

/* [Func : VEC_VecteurAngle] ********** [3, 3, 1]*/
    M_p_stVectorInterpret(p_stPseudoTree+828) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
  CFast_CallFunction1_Static( 826 ) ;
  LocalCFast_fn_vSetDsgVarFloat(68, M_GetSetParam_xValue(CFast_g_a_stParam+1)) ;

/* [Cond : >] ********** [2, 2, 1]*/
  if ( MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 68)))), MTH_M_xFloatToReal(90.000000f)) ) {
    LocalCFast_fn_vSetDsgVarFloat(68, MTH_M_xSub(MTH_M_xFloatToReal(180.00000f),LocalCFast_fn_xGetDsgVarFloat(68))) ;
  }
  else {

/* [Cond : <] ********** [2, 2, 1]*/
    if ( MTH_M_bLess((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 68)))), MTH_M_xFloatToReal(-90.000000f)) ) {
      LocalCFast_fn_vSetDsgVarFloat(68, MTH_M_xSub(MTH_M_xFloatToReal(-180.00000f),LocalCFast_fn_xGetDsgVarFloat(68))) ;
    }
    else {
      LocalCFast_fn_vSetDsgVarFloat(68, MTH_M_xNeg(LocalCFast_fn_xGetDsgVarFloat(68))) ;
    }
  }
/* [EndTree] ************ [0]*/
  M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xAbs((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 68))))) ;
  M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;

/* [Math_ : Math_ValeurAbsolue] ********** [0, 1, 2]*/

/* [Cond : >] ********** [2, 2, 1]*/
  if ( MTH_M_bGreater(M_GetSetParam_xValue(&CFast_g_a_stParam[2]), MTH_M_xFloatToReal(1.000000f)) ) {

/* [Proc : ACT_TourneAngle] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 830 ) ;

/* [Proc : BreakAI] *********** [0, 0, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 246 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      CFast_g_bMetaActionInRfx = 1 ;
      return ;
    }
  }
/* [EndTree] ************ [0]*/
  POS_fn_vGetTranslationVector(HIE_fn_hGetSuperObjectMatrix(g_hSuperObjectPerso), &stVector0); ;
  LocalCFast_fn_vSetDsgVarVector(66, &stVector0) ;
  MTH3D_M_vSubVector(&stVector0, LocalCFast_fn_p_stGetDsgVarVector(66),LocalCFast_fn_p_stGetDsgVarVector(65)) ;
  LocalCFast_fn_vSetDsgVarVector(64, &stVector0) ;

/* [Func : VEC_ProduitScalaire] ********** [2, 2, 1]*/
  CFast_CallFunction1_Static( 832 ) ;
  LocalCFast_fn_vSetDsgVarFloat(67, M_GetSetParam_xValue(CFast_g_a_stParam+1)) ;
  (LocalCFast_fn_p_stGetDsgVarVector(66))->xX = MTH_M_xAdd(LocalCFast_fn_p_stGetDsgVarVector(65)->xX,MTH_M_xMul(LocalCFast_fn_xGetDsgVarFloat(67),LocalCFast_fn_p_stGetDsgVarVector(63)->xX)) ;
  (LocalCFast_fn_p_stGetDsgVarVector(66))->xY = MTH_M_xAdd(LocalCFast_fn_p_stGetDsgVarVector(65)->xY,MTH_M_xMul(LocalCFast_fn_xGetDsgVarFloat(67),LocalCFast_fn_p_stGetDsgVarVector(63)->xY)) ;

/* [Proc : ACT_ChangePositionAbsoluePerso] *********** [1, 1, 0]*/
  CFast_CallProcedure_Static( 835 ) ;
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Reflexe BNT_TonneauFuseeReflexe
 */
void CFast_YLT_RaymanModel_Rfx_BNT_TonneauFuseeReflexe (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  CFast_YLT_RaymanModel_Sbr_23 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_20 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_21 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  if ( ! ( gcGlobAleat & 0x1 ) )
  {

/* [Cond : Col_CollisionAvecSol] ********** [0, 0, 2]*/
    long1 = CFast_CallCondition_Static(516) ;
    if ( !long1 ) {

/* [Cond : Col_CollisionAvecMur] ********** [0, 0, 4]*/
      long1 = CFast_CallCondition_Static(429) ;
      if ( !long1 ) {

/* [Cond : Col_CollisionAvecPlafond] ********** [0, 0, 5]*/
        long1 = CFast_CallCondition_Static(837) ;
      }
    }
    if ( long1 ) {

/* [Func : COL_VecteurNormalCollision] ********** [0, 0, 1]*/
      CFast_CallFunction1_Static( 255 ) ;
      LocalCFast_fn_vSetDsgVarVector(39, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;

/* [Func : ACT_ViseePerso] ********** [0, 0, 3]*/
      CFast_CallFunction3_Static( 12 ) ;

/* [Func : VEC_VecteurCos] ********** [2, 2, 2]*/
        M_p_stVectorInterpret(p_stPseudoTree+839) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+3);
      CFast_CallFunction2_Static( 838 ) ;

/* [Cond : <] ********** [2, 2, 1]*/
      if ( MTH_M_bLess(M_GetSetParam_xValue(&CFast_g_a_stParam[2]), MTH_M_xFloatToReal(-0.500000f)) ) {

/* [Cond : ObjetValide] ********** [1, 1, 1]*/
        if ( CFast_CallCondition_Static(660) ) {

/* [Op : ..] ********** [3, 1, 0]*/

/* [Proc : ACT_ChangeCustomBit] *********** [4, 3, 0]*/
          CFast_fn_vSetUltraOperatorPersoVar(60);
          CFast_CallProcedure_Static( 841 ) ;
        }
      }
      else {

/* [Func : ACT_ViseePerso] ********** [0, 0, 2]*/
        CFast_CallFunction2_Static( 12 ) ;

/* [Func : COL_CalculVecteurRebond] ********** [3, 3, 1]*/
          M_p_stVectorInterpret(p_stPseudoTree+845) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
        CFast_CallFunction1_Static( 844 ) ;

/* [Vector] *********** [4, 3, 2]*/
        CFast_CallVector2_Static (188) ;

/* [Proc : ACT_ReorientePerso] *********** [3, 3, 0]*/
          M_p_stVectorInterpret(p_stPseudoTree+849) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
          M_p_stVectorInterpret(p_stPseudoTree+850) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
        CFast_CallProcedure_Static( 848 ) ;
      }
    }
  }
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Reflexe BNT_ReflexeDansLeSiegeRusse
 */
void CFast_YLT_RaymanModel_Rfx_BNT_ReflexeDansLeSiegeRusse (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Op : ..] ********** [2, 1, 0]*/

/* [Cond : ACT_TestCustomBit] ********** [3, 2, 1]*/
  CFast_fn_vSetUltraOperatorPersoVar(61);
  if ( !( CFast_CallCondition_Static(852) ) ) {
    CFast_YLT_RaymanModel_Sbr_20 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  }
/* [EndTree] ************ [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_21 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Reflexe BNT_ReflexeTonneauPorte
 */
void CFast_YLT_RaymanModel_Rfx_BNT_ReflexeTonneauPorte (void)
{
  MTH3D_tdstVector stVector0;
  MTH3D_tdstVector stVector1;
  MTH3D_tdstVector stVector2;
  struct DNM_stDynamics *p_stDynam;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  CFast_YLT_RaymanModel_Sbr_9 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_20 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_21 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_28 ( ) ;
/* [MacroRef : 0] ********** [0]*/

/* [Cond : Col_CollisionAvecSol] ********** [0, 0, 1]*/
  if ( CFast_CallCondition_Static(516) ) {

/* [Func : Temps_Obtenir] ********** [0, 0, 1]*/
    CFast_CallFunction1_Static( 430 ) ;
    LocalCFast_fn_vSetDsgVarInteger(35, M_GetSetParam_ulValue(CFast_g_a_stParam+1)) ;
  }
  else {

/* [Cond : TempsDepasse] ********** [2, 2, 1]*/
    if ( CFast_CallCondition_Static(790) ) {
      LocalCFast_fn_vSetDsgVarFloat(30, MTH_M_xFloatToReal(8.00000f)) ;
      LocalCFast_fn_vSetDsgVarInteger(29, 0) ;
      CFast_YLT_RaymanModel_Sbr_31 ( ) ;
/* [MacroRef : 0] ********** [0]*/

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 551 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        CFast_g_bMetaActionInRfx = 1 ;
        return ;
      }
      if ( CFast_YLT_RaymanModel_Sbr_19 ( ) )
        return ;
/* [MacroRef : 0] ********** [0]*/
    }
  }
/* [EndTree] ************ [0]*/

/* [Cond : MEC_PeutTomber] ********** [1, 1, 1]*/
  if ( CFast_CallCondition_Static(422) ) {

/* [Func : COL_VecteurNormalCollision2] ********** [1, 1, 1]*/
    CFast_CallFunction1_Static( 424 ) ;
    LocalCFast_fn_vSetDsgVarVector(40, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
    (LocalCFast_fn_p_stGetDsgVarVector(40))->xZ= MTH_M_xFloatToReal(0.00000f) ;

/* [Func : VEC_ProduitScalaire] ********** [2, 2, 1]*/
    CFast_CallFunction1_Static( 426 ) ;
    LocalCFast_fn_vSetDsgVarFloat(67, M_GetSetParam_xValue(CFast_g_a_stParam+1)) ;

/* [Cond : Col_CollisionAvecMur] ********** [0, 0, 3]*/
    long1 =!CFast_CallCondition_Static(429) ;
    if ( !long1 ) {

/* [Cond : >] ********** [2, 2, 3]*/
      long1 = MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 67)))), MTH_M_xFloatToReal(-0.500000f)) ? 1 : 0;
    }
    if ( long1 ) {
      POS_fn_vGetTranslationVector(HIE_fn_hGetSuperObjectMatrix(g_hSuperObjectPerso), &stVector0); ;

/* [Func : COL_LitPointCollision2] ********** [1, 1, 3]*/
      CFast_CallFunction3_Static( 517 ) ;
      MTH3D_M_vSubVector(&stVector1, &stVector0,&M_GetSetParam_stVectorValue(CFast_g_a_stParam+3)) ;
      MTH3D_M_vMulScalarVector(&stVector2, MTH_M_xFloatToReal(4.00000f),&stVector1) ;
      LocalCFast_fn_vSetDsgVarVector(39, &stVector2) ;

/* [Op : .Z] ********** [1, 1, 2]*/
      CFast_CallOperator2_Static( 804 ) ;

/* [Cond : <] ********** [2, 2, 1]*/
      if ( MTH_M_bLess(M_GetSetParam_xValue(&CFast_g_a_stParam[2]), MTH_M_xFloatToReal(-1.200000f)) ) {
        LocalCFast_fn_vSetDsgVarInteger(29, 0) ;
        LocalCFast_fn_vSetDsgVarFloat(30, MTH_M_xFloatToReal(8.00000f)) ;
        CFast_YLT_RaymanModel_Sbr_31 ( ) ;
/* [MacroRef : 0] ********** [0]*/

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
        fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
        CFast_CallProcedure_Static( 551 ) ;
        if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
          CFast_g_bMetaActionInRfx = 1 ;
          return ;
        }
        if ( CFast_YLT_RaymanModel_Sbr_19 ( ) )
          return ;
/* [MacroRef : 0] ********** [0]*/
      }
      else {
        M_GetSetParam_xValue(&CFast_g_a_stParam[4]) = MTH3D_M_xNormVector(((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 39))));
        M_GetSetParam_Type(&CFast_g_a_stParam[4]) = E_vt_Float;
        M_Full_GetSetParam_Float(&CFast_g_a_stParam[3], MTH_M_xSub(M_GetSetParam_xValue(&CFast_g_a_stParam[4]),MTH_M_xFloatToReal(1.000000f)));
        M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xMax(MTH_M_xFloatToReal(0.000000f),M_GetSetParam_xValue(&CFast_g_a_stParam[3]));
        M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;

/* [Math_ : Math_MaximumReel] ********** [0, 2, 2]*/
        (LocalCFast_fn_p_stGetDsgVarVector(39))->xZ= MTH_M_xNeg(M_GetSetParam_xValue(CFast_g_a_stParam+2)) ;
        MTH3D_M_vAddVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[1]), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 39))), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 22))));
        M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Vector;

/* [Proc : ACT_ImposeVecteurVitesseAbsolu] *********** [2, 1, 0]*/
          M_p_stVectorInterpret(p_stPseudoTree+807) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
        CFast_CallProcedure_Static( 806 ) ;
      }
    }
    else {
      p_stDynam = fn_p_stDynamGetDynamicsSO(g_hSuperObjectPerso);
if (p_stDynam != NULL){
MTH3D_M_vCopyVector(&stVector0, DNM_M_pDynamicsGetPreviousSpeed(p_stDynam));}
else {MTH3D_M_vNullVector(&stVector0);} ;
      LocalCFast_fn_vSetDsgVarVector(22, &stVector0) ;
    }
  }
  else {
    p_stDynam = fn_p_stDynamGetDynamicsSO(g_hSuperObjectPerso);
if (p_stDynam != NULL){
MTH3D_M_vCopyVector(&stVector0, DNM_M_pDynamicsGetPreviousSpeed(p_stDynam));}
else {MTH3D_M_vNullVector(&stVector0);} ;
    LocalCFast_fn_vSetDsgVarVector(22, &stVector0) ;
  }
/* [EndTree] ************ [1]*/
}

/*
 * Model : YLT_RaymanModel Reflexe YLT_ReinitReflexe
 */
void CFast_YLT_RaymanModel_Rfx_YLT_ReinitReflexe (void)
{
}

/*
 * Model : YLT_RaymanModel Reflexe BNT_ReflexePatin
 */
void CFast_YLT_RaymanModel_Rfx_BNT_ReflexePatin (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Proc : MEC_ControleCollision] *********** [1, 1, 0]*/
  CFast_CallProcedure_Static( 854 ) ;

/* [Proc : MEC_ActiveNeTombePas] *********** [1, 1, 0]*/
  CFast_CallProcedure_Static( 856 ) ;

/* [Proc : MEC_FixeCoefDeGlisseXYZ] *********** [3, 3, 0]*/
  CFast_CallProcedure_Static( 858 ) ;
  CFast_YLT_RaymanModel_Sbr_9 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_20 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_21 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Reflexe BNT_SautImpulsionReflexe
 */
void CFast_YLT_RaymanModel_Rfx_BNT_SautImpulsionReflexe (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  CFast_YLT_RaymanModel_Sbr_23 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_20 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_21 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement YLT_Init
 */
void CFast_YLT_RaymanModel_Cmp_YLT_Init (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  if ( p_stLocalMind0 -> CFast_lCmpMetaAction ) 
    goto label1 ;
  CFast_fn_vSetDsgVar0To255(M_CFast_ucGetRealIndice(13), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),0) ;
  CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;

/* [Proc : MEC_ActiveFlux] *********** [1, 1, 0]*/
  CFast_CallProcedure_Static( 862 ) ;

/* [Proc : ACT_ImposeVitesseXYZ] *********** [3, 3, 0]*/
  CFast_CallProcedure_Static( 165 ) ;

/* [Cond : <>] ********** [2, 2, 1]*/
  if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 24)))) != 110270 ) {
    if ( !( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 102)))) ) ) {
      POS_fn_vGetTranslationVector(HIE_fn_hGetSuperObjectMatrix(g_hSuperObjectPerso), &stVector0); ;
      LocalCFast_fn_vSetDsgVarVector(103, &stVector0) ;

/* [Func : ACT_ViseePerso] ********** [0, 0, 1]*/
      CFast_CallFunction1_Static( 12 ) ;
      LocalCFast_fn_vSetDsgVarVector(104, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
      LocalCFast_fn_vSetDsgVarBoolean(102, 1) ;
    }
#ifndef U64
    LocalCFast_fn_vSetDsgVarFloat(81, MTH_M_xFloatToReal(17.00000f)) ;
    LocalCFast_fn_vSetDsgVarFloat(82, MTH_M_xFloatToReal(28.00000f)) ;
    LocalCFast_fn_vSetDsgVarFloat(83, MTH_M_xFloatToReal(22.00000f)) ;
#endif

/* [Op : .] ********** [3, 2, 0]*/

/* [Func : ACT_LitNombreDeBooleensDansTableau] ********** [6, 3, 2]*/
    M_eFuncIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Function][0]) = (tdeFuncId)249 ;

/* [Op : .] ********** [1, 2, 0]*/
    M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][1], E_ti_Operator);
    M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[3][1]) = (tdeOperatorId)12 ;
    CFast_memcpy ( 3, 2, 15) ;
    CFast_memcpy ( 3, 3, 16) ;
    M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][4], E_ti_Constant);
    M_lValueInterpret(&CFast_g_a_stPseudoTree[3][4]) = 962 ;
    M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][5], E_ti_Constant);
    M_lValueInterpret(&CFast_g_a_stPseudoTree[3][5]) = 963 ;
    CFast_CallFunction2_NoStatic( ) ;

/* [Cond : >] ********** [3, 2, 1]*/
      M_lValueInterpret(p_stPseudoTree+865) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
    long2 = CFast_CallCondition_Static(864) ;
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[1], long2) ;

/* [Op : :=] ********** [2, 2, 0]*/
      M_lValueInterpret(p_stPseudoTree+869) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
    CFast_CallOperator0_Static ( 867 ) ;

/* [Proc : FixeVisuelGMTChrome] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 870 ) ;

/* [Proc : FixeVisuelGMTChrome] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 873 ) ;
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 34)))) ) {
      M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
      M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(2.000000f) ;
    } else {
      M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
      M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(1.000000f) ;
    }
    M_GetSetParam_lValue(&CFast_g_a_stParam[1]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
    M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [1, 1, 1]*/

/* [Proc : FixeNoImageVisuelGMT] *********** [2, 2, 0]*/
      M_lValueInterpret(p_stPseudoTree+878) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
    CFast_CallProcedure_Static( 876 ) ;
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 34)))) ) {
      M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
      M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(2.000000f) ;
    } else {
      M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
      M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(1.000000f) ;
    }
    M_GetSetParam_lValue(&CFast_g_a_stParam[1]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
    M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [1, 1, 1]*/

/* [Proc : FixeNoImageVisuelGMT] *********** [2, 2, 0]*/
      M_lValueInterpret(p_stPseudoTree+881) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
    CFast_CallProcedure_Static( 879 ) ;

/* [Proc : ChangeMonComportementReflexe] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 882 ) ;
    LocalCFast_fn_vSetDsgVarInteger(24, 110270) ;
    MTH3D_M_vSetVectorElements(&stVector0, MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(0.00000f)) ;
    LocalCFast_fn_vSetDsgVarVector(70, &stVector0) ;

/* [Proc : COL_ChangeVecteurDeCollisionneur] *********** [3, 3, 0]*/
    CFast_CallProcedure_Static( 884 ) ;

/* [Cond : COL_CollisionneurTouche] ********** [0, 0, 1]*/
    if ( CFast_CallCondition_Static(334) ) {

/* [nerienfaire()] *********** [0, 0, 0]*/
    }

/* [Vector] *********** [3, 3, 1]*/
    CFast_CallVector1_Static (888) ;

/* [Proc : ACT_DeformePerso] *********** [1, 1, 0]*/
      M_p_stVectorInterpret(p_stPseudoTree+893) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
    CFast_CallProcedure_Static( 892 ) ;

/* [Proc : ZON_FixeTailleZDMSphere] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 409 ) ;

/* [Keyword : Moi] ********** [0, 0, 1]*/

/* [Vector] *********** [5, 3, 2]*/
    CFast_CallVector2_Static (438) ;

/* [Proc : ZON_FixePositionZDM] *********** [3, 3, 0]*/
      M_p_stVectorInterpret(p_stPseudoTree+897) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
    CFast_CallProcedure_Static( 894 ) ;
    LocalCFast_fn_vSetDsgVarFloat(30, MTH_M_xFloatToReal(8.00000f)) ;

/* [Keyword : Moi] ********** [0, 0, 2]*/

/* [Func : ACT_LitPointsDeVie] ********** [1, 1, 1]*/
    CFast_CallFunction1_Static( 230 ) ;
    long1 = M_GetSetParam_lValue(&CFast_g_a_stParam[1]);
    if ( !long1 ) {

/* [Keyword : Moi] ********** [1, 0, 1]*/

/* [Proc : ACT_ReinitPointsDeVie] *********** [2, 1, 0]*/
      CFast_CallProcedure_Static( 898 ) ;
    }

/* [Proc : ACT_NiveauTransparence] *********** [2, 1, 0]*/
    CFast_CallProcedure_Static( 900 ) ;

/* [Proc : ACT_ActivationTransparence] *********** [2, 1, 0]*/
    CFast_CallProcedure_Static( 420 ) ;

/* [Proc : OMBRE_Affichage] *********** [2, 1, 0]*/
    CFast_CallProcedure_Static( 902 ) ;

/* [Proc : ACT_ChangeSpoFlag] *********** [3, 2, 0]*/
    CFast_CallProcedure_Static( 673 ) ;
    LocalCFast_fn_vSetDsgVarBoolean(16, 1) ;
    LocalCFast_fn_vSetDsgVarFloat(21, 0) ;
    LocalCFast_fn_vSetDsgVarBoolean(45, 1) ;

/* [Func : ZON_LitPositionZDM] ********** [2, 1, 1]*/
    CFast_CallFunction1_Static( 519 ) ;
    LocalCFast_fn_vSetDsgVarVector(7, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;

/* [Proc : DesactiveCanal] *********** [2, 1, 0]*/
    CFast_CallProcedure_Static( 904 ) ;

/* [Proc : ActiveCanal] *********** [2, 1, 0]*/
    CFast_CallProcedure_Static( 808 ) ;

/* [Proc : ActiveCanal] *********** [2, 1, 0]*/
    CFast_CallProcedure_Static( 810 ) ;

/* [Proc : ActiveCanal] *********** [2, 1, 0]*/
    CFast_CallProcedure_Static( 812 ) ;

/* [Proc : ActiveCanal] *********** [2, 1, 0]*/
    CFast_CallProcedure_Static( 814 ) ;

/* [Proc : COL_TraiteCollisionTraversee] *********** [2, 1, 0]*/
    CFast_CallProcedure_Static( 816 ) ;

/* [Proc : MEC_StopLimiteDeplacementXYZ] *********** [1, 0, 0]*/
    CFast_CallProcedure_Static( 906 ) ;

/* [Proc : COL_AnnuleDernierPersoCollisionne] *********** [1, 0, 0]*/
    CFast_CallProcedure_Static( 187 ) ;
    LocalCFast_fn_vSetDsgVarBoolean(52, 0) ;
    LocalCFast_fn_vSetDsgVarBoolean(51, 0) ;
    LocalCFast_fn_vSetDsgVarBoolean(85, 0) ;

/* [Op : v-] ********** [3, 2, 3]*/
    CFast_CallOperator3_Static( 907 ) ;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH3D_M_xNormVector(&M_GetSetParam_stVectorValue(&CFast_g_a_stParam[3]));
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;

/* [Cond : >] ********** [3, 2, 1]*/
    if ( MTH_M_bGreater(M_GetSetParam_xValue(&CFast_g_a_stParam[2]), MTH_M_xFloatToReal(0.100000f)) ) {

/* [Op : ..] ********** [4, 1, 0]*/

/* [Proc : Cam_ChangeConstants] *********** [5, 3, 0]*/
      CFast_fn_vSetUltraOperatorPersoRef(12);
      CFast_CallProcedure_Static( 741 ) ;

/* [Op : ..] ********** [2, 1, 0]*/

/* [Proc : Cam_ForceBestPos] *********** [3, 1, 0]*/
      CFast_fn_vSetUltraOperatorPersoRef(12);
      CFast_CallProcedure_Static( 910 ) ;
    }

/* [Meta : Temps_AttenteFigee] ********** [2, 1, 0]*/
    CFast_CallMetaActionInit_Static( 911 ) ;
    p_stLocalMind0->CFast_lCmpMetaAction = 1;
label1 :
    if ( CFast_CallMetaAction(0) & (C_DefaultMetaActionNotFinished)) {
      return ;
    }
    p_stLocalMind0->CFast_lCmpMetaAction = 0;
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 113)))) ) {

/* [Proc : ChangeAction] *********** [2, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 913 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }
    }
    else {

/* [Proc : ChangeAction] *********** [2, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 551 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }
    }
  }
/* [EndTree] ************ [1]*/

/* [Cond : ACT_TestFinAction] ********** [1, 0, 2]*/
  long1 = CFast_CallCondition_Static(2) ;
  if ( !long1 ) {
    long1 =!(*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 113))));
  }
  if ( long1 ) {
    LocalCFast_fn_vSetDsgVarInteger(24, 0) ;

/* [Cond : COL_CollisionneurTouche] ********** [1, 0, 1]*/
    if ( CFast_CallCondition_Static(334) ) {

/* [nerienfaire()] *********** [1, 0, 0]*/
    }

/* [Cond : =] ********** [3, 2, 1]*/
    if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 8)))) == 0 ) {

/* [Proc : ChangeAction] *********** [2, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 551 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [3, 2, 0]*/
      CFast_CallProcedure_Static( 204 ) ;
      CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
      return ;
    }
    else {

/* [Proc : ChangeMonComportement] *********** [2, 1, 0]*/
      CFast_CallProcedure_Static( 454 ) ;
      CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
      return ;
    }
  }
/* [EndTree] ************ [1]*/
}

/*
 * Model : YLT_RaymanModel Comportement YLT_Attente
 */
void CFast_YLT_RaymanModel_Cmp_YLT_Attente (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  switch(p_stLocalMind0->CFast_lCmpMetaAction) {
  case 1 : goto label1 ;
  case 2 : goto label2 ;
  case 3 : goto label3 ;
  case 4 : goto label4 ;
  case 5 : goto label5 ;
  }

/* [Cond : >] ********** [2, 2, 1]*/
  if ( MTH_M_bGreater(MTH_M_xLongToReal((*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 24))))), MTH_M_xFloatToReal(13333.000000f)) ) {

/* [Cond : Col_CollisionAvecEau] ********** [0, 0, 2]*/
    long1 = CFast_CallCondition_Static(511) ;
if ( long1 ) {

/* [Func : COL_LitTypeMateriauCollision2] ********** [1, 1, 4]*/
      CFast_CallFunction4_Static( 301 ) ;

/* [Cond : COL_TesteCmtContreMasque] ********** [2, 2, 3]*/
        M_lValueInterpret(p_stPseudoTree+304) = M_GetSetParam_lValue(CFast_g_a_stParam+4);
      long1 = CFast_CallCondition_Static(303) ;
    }
    if ( long1 ) {
      LocalCFast_fn_vSetDsgVarInteger(24, 0) ;
    }
    else {

/* [Proc : COL_IgnoreFlagRayTraceAuProchainPicking] *********** [0, 0, 0]*/
      CFast_CallProcedure_Static( 915 ) ;

/* [Func : ACT_ViseePerso] ********** [1, 0, 6]*/
      CFast_CallFunction6_Static( 12 ) ;
      MTH3D_M_vMulScalarVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[5]), MTH_M_xFloatToReal(1.350000f), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[6]));
      M_GetSetParam_Type(&CFast_g_a_stParam[5]) = E_vt_Vector;

/* [Op : v+] ********** [2, 2, 4]*/
        M_p_stVectorInterpret(p_stPseudoTree+918) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+5);
      CFast_CallOperator4_Static( 916 ) ;

/* [Func : ACT_AssiettePerso] ********** [1, 0, 6]*/
      CFast_CallFunction6_Static( 349 ) ;
      MTH3D_M_vMulScalarVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[5]), MTH_M_xFloatToReal(0.300000f), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[6]));
      M_GetSetParam_Type(&CFast_g_a_stParam[5]) = E_vt_Vector;
      MTH3D_M_vAddVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[3]), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[4]), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[5]));
      M_GetSetParam_Type(&CFast_g_a_stParam[3]) = E_vt_Vector;

/* [Func : ACT_AssiettePerso] ********** [1, 0, 5]*/
      CFast_CallFunction5_Static( 349 ) ;
      MTH3D_M_vMulScalarVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[4]), MTH_M_xFloatToReal(-0.500000f), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[5]));
      M_GetSetParam_Type(&CFast_g_a_stParam[4]) = E_vt_Vector;

/* [Func : COL_PointCollision] ********** [3, 3, 2]*/
        M_p_stVectorInterpret(p_stPseudoTree+532) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+3);
        M_p_stVectorInterpret(p_stPseudoTree+533) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+4);
      CFast_CallFunction2_Static( 531 ) ;

/* [Cond : VEC_VecteurNul] ********** [1, 1, 1]*/
        M_p_stVectorInterpret(p_stPseudoTree+94) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
      if ( CFast_CallCondition_Static(93) ) {
        LocalCFast_fn_vSetDsgVarInteger(24, 0) ;
      }
      else {

/* [Proc : COL_IgnoreFlagRayTraceAuProchainPicking] *********** [0, 0, 0]*/
        CFast_CallProcedure_Static( 915 ) ;

/* [Func : ACT_AssiettePerso] ********** [1, 0, 5]*/
        CFast_CallFunction5_Static( 349 ) ;
        MTH3D_M_vMulScalarVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[4]), MTH_M_xFloatToReal(0.300000f), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[5]));
        M_GetSetParam_Type(&CFast_g_a_stParam[4]) = E_vt_Vector;

/* [Op : v+] ********** [2, 2, 3]*/
          M_p_stVectorInterpret(p_stPseudoTree+918) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+4);
        CFast_CallOperator3_Static( 916 ) ;

/* [Func : ACT_ViseePerso] ********** [1, 0, 5]*/
        CFast_CallFunction5_Static( 12 ) ;
        MTH3D_M_vMulScalarVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[4]), MTH_M_xFloatToReal(1.400000f), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[5]));
        M_GetSetParam_Type(&CFast_g_a_stParam[4]) = E_vt_Vector;

/* [Func : COL_PointCollision] ********** [3, 3, 2]*/
          M_p_stVectorInterpret(p_stPseudoTree+532) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+3);
          M_p_stVectorInterpret(p_stPseudoTree+533) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+4);
        CFast_CallFunction2_Static( 531 ) ;

/* [Cond : VEC_VecteurNul] ********** [1, 1, 1]*/
          M_p_stVectorInterpret(p_stPseudoTree+94) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
        if ( !( CFast_CallCondition_Static(93) ) ) {
          LocalCFast_fn_vSetDsgVarInteger(24, 0) ;
        }
      }
    }
    if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 24)))) ) {
      LocalCFast_fn_vSetDsgVarInteger(24, 0) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 919 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }

/* [Proc : ChangeMonComportement] *********** [1, 1, 0]*/
      CFast_CallProcedure_Static( 921 ) ;
      CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
      return ;
    }
    else {
      LocalCFast_fn_vSetDsgVarInteger(24, (LocalCFast_fn_lGetDsgVarInteger(24)+1)) ;
    }
  }
/* [EndTree] ************ [0]*/
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 105)))) ) {

/* [Cond : EstDansAction] ********** [1, 1, 1]*/
    if ( CFast_CallCondition_Static(923) ) {

/* [Proc : ANI_ChangeFrameCourante] *********** [1, 1, 0]*/
      CFast_CallProcedure_Static( 925 ) ;
      LocalCFast_fn_vSetDsgVarBoolean(105, 0) ;
    }
  }
/* [EndTree] ************ [0]*/
  LocalCFast_fn_vSetDsgVarInteger(38, 1) ;
  if ( CFast_YLT_RaymanModel_Sbr_32 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  LocalCFast_fn_vSetDsgVarInteger(38, 2) ;
  if ( CFast_YLT_RaymanModel_Sbr_32 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  LocalCFast_fn_vSetDsgVar0To255(87, 0) ;
  p_stLocalMind0->CFast_lCmpMetaAction = 1;
label1 :
  if ( CFast_YLT_RaymanModel_Sbr_33 ( ) )
    return ;
  p_stLocalMind0 -> CFast_lCmpMetaAction = 0 ;
/* [MacroRef : 0] ********** [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_34 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_35 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 3]*/
  long1 = CFast_CallCondition_Static(927) ;
  if ( !long1 ) {

/* [Cond : BoutonAppuye] ********** [1, 1, 6]*/
    long1 = (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+27)) ? 1 : 0;
    if ( !long1 ) {

/* [Cond : BoutonAppuye] ********** [1, 1, 7]*/
      long1 = (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+28)) ? 1 : 0;
    }
    if ( !long1 ) {

/* [Cond : BoutonAppuye] ********** [1, 1, 6]*/
      long1 = (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+29)) ? 1 : 0;
    }
  }
  if ( !long1 ) {
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16))));
if ( long1 ) {
      long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 10))));
    }
    long1 = long1 ? 0 : 1 ;
  }
  if ( long1 ) {
    LocalCFast_fn_vSetDsgVarInteger(24, 1) ;
  }
/* [EndTree] ************ [0]*/

/* [Cond : BoutonJusteAppuye] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsJustValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+30)) ) {
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))) ) {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
      if ( CFast_CallCondition_Static(0) ) {
        if ( CFast_YLT_RaymanModel_Sbr_18 ( ) )
          return ;
/* [MacroRef : 0] ********** [0]*/
        CFast_YLT_RaymanModel_Sbr_1 ( ) ;
/* [MacroRef : 0] ********** [0]*/
      }
      else {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
        fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
        CFast_CallProcedure_Static( 929 ) ;
        if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
          return ;
        }
      }
      LocalCFast_fn_vSetDsgVarFloat(30, MTH_M_xFloatToReal(8.00000f)) ;
      LocalCFast_fn_vSetDsgVarInteger(29, 0) ;
      LocalCFast_fn_vSetDsgVarInteger(23, 0) ;
      p_stLocalMind0->CFast_lCmpMetaAction = 2;
label2 :
      if ( CFast_YLT_RaymanModel_Sbr_36 ( ) )
        return ;
      p_stLocalMind0 -> CFast_lCmpMetaAction = 0 ;
/* [MacroRef : 0] ********** [0]*/
    }
  }
/* [EndTree] ************ [0]*/
  long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 10))));
if ( long1 ) {
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16))));
  }
  if ( long1 ) {

/* [Cond : >] ********** [2, 2, 1]*/
    if ( MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 78)))), (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 82))))) ) {

/* [Cond : BoutonAppuye] ********** [1, 1, 1]*/
      if ( (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+27)) ) {
        LocalCFast_fn_vSetDsgVarBoolean(34, 1) ;
        LocalCFast_fn_vSetDsgVarInteger(24, 0) ;

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
        if ( CFast_CallCondition_Static(0) ) {
          CFast_YLT_RaymanModel_Sbr_37 ( ) ;
/* [MacroRef : 0] ********** [0]*/

/* [Op : .] ********** [2, 2, 0]*/

/* [Func : ACT_LitBooleenDansTableau] ********** [4, 2, 1]*/
          M_eFuncIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Function][0]) = (tdeFuncId)248 ;

/* [Op : .] ********** [0, 2, 0]*/
          M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][1], E_ti_Operator);
          M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[3][1]) = (tdeOperatorId)12 ;
          CFast_memcpy ( 3, 2, 15) ;
          CFast_memcpy ( 3, 3, 16) ;
          M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][4], E_ti_Constant);
          M_lValueInterpret(&CFast_g_a_stPseudoTree[3][4]) = 1143 ;
          CFast_CallFunction1_NoStatic( ) ;
          LocalCFast_fn_vSetDsgVarBoolean(120,  ۟(CFast_g_a_stParam+1)) ;

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 2]*/
          long1 = CFast_CallCondition_Static(34) ;
if ( long1 ) {
            long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 120))));
          }
          if ( long1 ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
            fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
            CFast_CallProcedure_Static( 721 ) ;
            if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
              return ;
            }

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
            if ( CFast_CallCondition_Static(3) ) {

/* [Proc : EnvoieRequeteSon] *********** [1, 1, 0]*/
              CFast_CallProcedure_Static( 723 ) ;
            }
          }
          else {

/* [Proc : ChangeActionAvecEvenements] *********** [2, 2, 0]*/
            fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
            CFast_CallProcedure_Static( 931 ) ;
            if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
              return ;
            }
          }
          LocalCFast_fn_vSetDsgVar_32768To32767(32, LocalCFast_fn_lGetDsgVar_32768To32767(33)) ;
        }
        else {
          LocalCFast_fn_vSetDsgVar_32768To32767(32, 0) ;
        }

/* [Proc : ChangeMonComportement] *********** [1, 1, 0]*/
        CFast_CallProcedure_Static( 934 ) ;
label3 :
        return ;
      }
      else {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
        if ( CFast_CallCondition_Static(0) ) {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
          if ( !( CFast_CallCondition_Static(7) ) ) {
            if ( CFast_YLT_RaymanModel_Sbr_38 ( ) )
              return ;
/* [MacroRef : 0] ********** [0]*/
            LocalCFast_fn_vSetDsgVarBoolean(34, 0) ;

/* [Proc : ChangeMonComportement] *********** [1, 1, 0]*/
            CFast_CallProcedure_Static( 936 ) ;
label4 :
            return ;
          }
          else {

/* [Cond : BoutonAppuye] ********** [2, 1, 1]*/
            long2 = (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+27));
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[1], long2) ;

/* [Op : :=] ********** [2, 2, 0]*/
              M_lValueInterpret(p_stPseudoTree+940) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
            CFast_CallOperator0_Static ( 938 ) ;
          }
        }
        else {
          LocalCFast_fn_vSetDsgVarBoolean(34, 1) ;

/* [Proc : ChangeMonComportement] *********** [1, 1, 0]*/
          CFast_CallProcedure_Static( 936 ) ;
label5 :
          return ;
        }
      }
    }
    else {

/* [Cond : BoutonAppuye] ********** [2, 1, 1]*/
      long2 = (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+27));
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[1], long2) ;

/* [Op : :=] ********** [2, 2, 0]*/
        M_lValueInterpret(p_stPseudoTree+940) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
      CFast_CallOperator0_Static ( 938 ) ;
    }
  }
  else {
    LocalCFast_fn_vSetDsgVarBoolean(95, 0) ;
  }
/* [EndTree] ************ [0]*/
  CFast_fn_vSetDsgVar0To255(M_CFast_ucGetRealIndice(13), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),3) ;

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
  if ( CFast_CallCondition_Static(500) ) {
    CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;
  }
/* [EndTree] ************ [0]*/
  LocalCFast_fn_vSetDsgVar0To255(9, 0) ;
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 95)))) ) {
    LocalCFast_fn_vSetDsgVarInteger(38, 6) ;
    CFast_YLT_RaymanModel_Sbr_39 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  }
/* [EndTree] ************ [0]*/

/* [Func : Temps_LitDT] ********** [0, 0, 2]*/
  CFast_CallFunction2_Static( 9 ) ;
  LocalCFast_fn_vSetDsgVarInteger(24, (LocalCFast_fn_lGetDsgVarInteger(24)+MTH_M_xRealToLong(M_GetSetParam_xValue(CFast_g_a_stParam+2)))) ;
  LocalCFast_fn_vSetDsgVarFloat(21, LocalCFast_fn_xGetDsgVarFloat(77)) ;

/* [Cond : BoutonAppuye] ********** [4, 1, 2]*/
  long2 = (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+27));
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[2], long2) ;
  if (M_lValueInterpret(&CFast_g_a_stParam[2])) {
    M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[1]) = MTH_M_xLongToReal(0) ;
  } else {
    M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[1]) = MTH_M_xFloatToReal(0.800000f) ;
  }
  long2 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))); /* oups */

/* [Cond : EstDansComportement] ********** [6, 2, 8]*/
  long3 = CFast_CallCondition_Static(941) ;

/* [Cond : BoutonAppuye] ********** [5, 1, 9]*/
  long4 = (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+29));

/* [Cond : Ou] ********** [4, 2, 7]*/
  long3 |= long4;

/* [Cond : Non] ********** [4, 1, 6]*/
  long3 = !long3;

/* [Cond : Et] ********** [4, 2, 4]*/
  long2 &= long3;
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[4], long2) ;
  if (M_lValueInterpret(&CFast_g_a_stParam[4])) {
    M_GetSetParam_Type(&CFast_g_a_stParam[3]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[3]) = MTH_M_xLongToReal(1) ;
  } else {
    M_GetSetParam_Type(&CFast_g_a_stParam[3]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[3]) = MTH_M_xLongToReal(0) ;
  }
  M_GetSetParam_lValue(&CFast_g_a_stParam[2]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[3])) ;
  M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [4, 1, 2]*/

/* [Op : ..] ********** [8, 1, 0]*/

/* [Proc : PAD_LitJoyAnalogiqueModeMario] *********** [9, 8, 0]*/
  CFast_fn_vSetUltraOperatorPersoRef(12);
    M_lValueInterpret(p_stPseudoTree+948) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
    M_lValueInterpret(p_stPseudoTree+949) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
  CFast_CallProcedure_Static( 944 ) ;

/* [Cond : BoutonAppuye] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+27)) ) {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
    if ( !( CFast_CallCondition_Static(500) ) ) {

/* [Cond : BoutonAppuye] ********** [1, 1, 2]*/
      long1 = (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+29)) ? 1 : 0;
if ( long1 ) {

/* [Op : .] ********** [2, 2, 0]*/
        p_stLocalMind1 = M_pstGetMindOfBrain(M_GetMSHandle(M_CFast_hGetPersoRef(12) ,Brain));
        long1 = (*((char *)(M_GetDsgVarAddr(p_stLocalMind1, 1))));
        long1 = long1 ? 0 : 1 ;
      }
      if ( long1 ) {

/* [Op : ..] ********** [1, 1, 0]*/

/* [Func : ACT_ViseePerso] ********** [2, 1, 1]*/
        CFast_fn_vSetUltraOperatorPersoRef(12);
        CFast_CallFunction1_Static( 12 ) ;
        LocalCFast_fn_vSetDsgVarVector(39, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
        (LocalCFast_fn_p_stGetDsgVarVector(39))->xZ= MTH_M_xFloatToReal(0.00000f) ;

/* [Func : ACT_ViseePerso] ********** [0, 0, 2]*/
        CFast_CallFunction2_Static( 12 ) ;

/* [Func : VEC_VecteurAngle] ********** [3, 3, 1]*/
          M_p_stVectorInterpret(p_stPseudoTree+953) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
        CFast_CallFunction1_Static( 952 ) ;
        LocalCFast_fn_vSetDsgVarFloat(36, M_GetSetParam_xValue(CFast_g_a_stParam+1)) ;
        M_GetSetParam_xValue(&CFast_g_a_stParam[1]) = MTH_M_xAbs((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 36))))) ;
        M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Float;

/* [Math_ : Math_ValeurAbsolue] ********** [0, 1, 1]*/
        LocalCFast_fn_vSetDsgVarFloat(37, M_GetSetParam_xValue(CFast_g_a_stParam+1)) ;

/* [Cond : >] ********** [2, 2, 1]*/
        if ( MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 37)))), MTH_M_xFloatToReal(1.000000f)) ) {

/* [Func : ACT_ViseePerso] ********** [0, 0, 2]*/
          CFast_CallFunction2_Static( 12 ) ;
          M_Full_GetSetParam_Float(&CFast_g_a_stParam[4], MTH_M_xDiv((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 37)))),MTH_M_xFloatToReal(1200.000000f)));
          M_Full_GetSetParam_Float(&CFast_g_a_stParam[3], MTH_M_xAdd(MTH_M_xFloatToReal(0.850000f),M_GetSetParam_xValue(&CFast_g_a_stParam[4])));

/* [Op : ..] ********** [3, 1, 0]*/

/* [Func : ACT_ViseePerso] ********** [4, 1, 4]*/
          CFast_fn_vSetUltraOperatorPersoRef(12);
          CFast_CallFunction4_Static( 12 ) ;

/* [Func : VEC_CombinaisonTemporelleVecteur] ********** [3, 3, 1]*/
            M_p_stVectorInterpret(p_stPseudoTree+957) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
            M_lValueInterpret(p_stPseudoTree+958) = M_GetSetParam_lValue(CFast_g_a_stParam+3);
            M_p_stVectorInterpret(p_stPseudoTree+959) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+4);
          CFast_CallFunction1_Static( 956 ) ;

/* [Proc : ACT_ChangeViseePerso] *********** [1, 1, 0]*/
            M_p_stVectorInterpret(p_stPseudoTree+961) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
          CFast_CallProcedure_Static( 960 ) ;

/* [Cond : >] ********** [2, 2, 1]*/
          if ( MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 36)))), MTH_M_xFloatToReal(0.000000f)) ) {

/* [Cond : EstDansAction] ********** [1, 1, 1]*/
            if ( !( CFast_CallCondition_Static(962) ) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
              fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
              CFast_CallProcedure_Static( 964 ) ;
              if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
                return ;
              }
            }
          }
          else {

/* [Cond : EstDansAction] ********** [1, 1, 1]*/
            if ( !( CFast_CallCondition_Static(966) ) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
              fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
              CFast_CallProcedure_Static( 968 ) ;
              if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
                return ;
              }
            }
          }
        }
        else {

/* [Cond : EstDansAction] ********** [1, 1, 1]*/
          if ( !( CFast_CallCondition_Static(923) ) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
            fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
            CFast_CallProcedure_Static( 342 ) ;
            if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
              return ;
            }
          }
        }
      }
      else {

/* [Cond : EstDansAction] ********** [1, 1, 1]*/
        if ( !( CFast_CallCondition_Static(923) ) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 342 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            return ;
          }
        }
      }
    }
  }
  else {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 2]*/
    long1 = CFast_CallCondition_Static(0) ;
    if ( !long1 ) {
      long1 =!(*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 10))));
    }
    if ( long1 ) {
      LocalCFast_fn_vSetDsgVarFloat(77, MTH_M_xMul(LocalCFast_fn_xGetDsgVarFloat(77),MTH_M_xMul(LocalCFast_fn_xGetDsgVarFloat(78),MTH_M_xFloatToReal(0.08000f)))) ;
      LocalCFast_fn_vSetDsgVarFloat(36, LocalCFast_fn_xGetDsgVarFloat(77)) ;
      LocalCFast_fn_vSetDsgVarFloat(77, MTH_M_xAdd(MTH_M_xMul(LocalCFast_fn_xGetDsgVarFloat(77),MTH_M_xFloatToReal(0.30000f)),MTH_M_xMul(LocalCFast_fn_xGetDsgVarFloat(21),MTH_M_xFloatToReal(0.70000f)))) ;
      M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xAbs((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 77))))) ;
      M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;

/* [Math_ : Math_ValeurAbsolue] ********** [0, 1, 2]*/
      M_GetSetParam_xValue(&CFast_g_a_stParam[3]) = MTH_M_xAbs((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 36))))) ;
      M_GetSetParam_Type(&CFast_g_a_stParam[3]) = E_vt_Float;

/* [Math_ : Math_ValeurAbsolue] ********** [1, 1, 3]*/

/* [Cond : >] ********** [2, 2, 1]*/
      if ( MTH_M_bGreater(M_GetSetParam_xValue(&CFast_g_a_stParam[2]), M_GetSetParam_xValue(&CFast_g_a_stParam[3])) ) {
        LocalCFast_fn_vSetDsgVarFloat(77, LocalCFast_fn_xGetDsgVarFloat(36)) ;
      }

/* [Func : Temps_LitDT] ********** [1, 0, 3]*/
      CFast_CallFunction3_Static( 9 ) ;
      M_Full_GetSetParam_Float(&CFast_g_a_stParam[2], MTH_M_xMul((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 77)))),M_GetSetParam_xValue(&CFast_g_a_stParam[3])));
      M_Full_GetSetParam_Float(&CFast_g_a_stParam[1], MTH_M_xMul(M_GetSetParam_xValue(&CFast_g_a_stParam[2]),MTH_M_xFloatToReal(0.001000f)));

/* [Proc : ACT_TournePersoAutourDeZ] *********** [1, 1, 0]*/
        M_lValueInterpret(p_stPseudoTree+378) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
      CFast_CallProcedure_Static( 377 ) ;
    }

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 2]*/
    long1 = CFast_CallCondition_Static(500) ;
    if ( !long1 ) {

/* [Cond : EstDansAction] ********** [1, 1, 3]*/
      long1 = CFast_CallCondition_Static(923) ;
    }
    if ( !long1 ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 342 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }
    }
  }
/* [EndTree] ************ [0]*/

/* [Cond : BoutonJusteRelache] ********** [1, 1, 2]*/
  long1 = (long)IPT_fn_bIsJustInvalidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+28)) ? 1 : 0;
if ( long1 ) {

/* [Cond : EstDansComportement] ********** [2, 2, 4]*/
    long1 = CFast_CallCondition_Static(941) ;
if ( long1 ) {

/* [Op : .] ********** [2, 2, 0]*/
      p_stLocalMind1 = M_pstGetMindOfBrain(M_GetMSHandle(M_CFast_hGetPersoRef(12) ,Brain));
      long1 = (*((char *)(M_GetDsgVarAddr(p_stLocalMind1, 35))));
    }
  }
  if ( long1 ) {

/* [Op : ..] ********** [1, 1, 0]*/

/* [Func : ACT_ViseePerso] ********** [2, 1, 1]*/
    CFast_fn_vSetUltraOperatorPersoRef(12);
    CFast_CallFunction1_Static( 12 ) ;

/* [Proc : ACT_ChangeViseePerso] *********** [1, 1, 0]*/
      M_p_stVectorInterpret(p_stPseudoTree+345) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
    CFast_CallProcedure_Static( 344 ) ;
  }
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement YLT_SautReception
 */
void CFast_YLT_RaymanModel_Cmp_YLT_SautReception (void)
{
  MTH3D_tdstVector stVector0;
  struct DNM_stDynamics *p_stDynam;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  switch(p_stLocalMind0->CFast_lCmpMetaAction) {
  case 1 : goto label1 ;
  case 2 : goto label2 ;
  }
  if ( ! ( gcGlobAleat & 0x3 ) )
  {

/* [Cond : >] ********** [2, 2, 1]*/
    if ( MTH_M_bGreater(MTH_M_xLongToReal((*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 24))))), MTH_M_xFloatToReal(500.000000f)) ) {
      LocalCFast_fn_vSetDsgVarBoolean(97, 0) ;
    }
  }
/* [EndTree] ************ [0]*/
  p_stDynam = fn_p_stDynamGetDynamicsSO(g_hSuperObjectPerso);
if (p_stDynam != NULL){
MTH3D_M_vCopyVector(&stVector0, DNM_M_pDynamicsGetPreviousSpeed(p_stDynam));}
else {MTH3D_M_vNullVector(&stVector0);} ;
  LocalCFast_fn_vSetDsgVarFloat(21, (&stVector0)->xZ) ;

/* [Cond : Col_PasDeCollision] ********** [0, 0, 1]*/
  if ( !( CFast_CallCondition_Static(247) ) ) {

/* [Cond : >] ********** [2, 2, 1]*/
    if ( MTH_M_bGreater(MTH_M_xLongToReal((*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 24))))), MTH_M_xFloatToReal(250.000000f)) ) {
      LocalCFast_fn_vSetDsgVarBoolean(45, 1) ;
      p_stLocalMind0->CFast_lCmpMetaAction = 1;
label1 :
label2 :
label3 :
      if ( CFast_YLT_RaymanModel_Sbr_40 ( ) )
        return ;
      p_stLocalMind0 -> CFast_lCmpMetaAction = 0 ;
/* [MacroRef : 0] ********** [0]*/
    }
    LocalCFast_fn_vSetDsgVar_128To127(25, 0) ;
    p_stLocalMind0->CFast_lCmpMetaAction = 4;
label4 :
    if ( CFast_YLT_RaymanModel_Sbr_41 ( ) )
      return ;
    p_stLocalMind0 -> CFast_lCmpMetaAction = 0 ;
/* [MacroRef : 0] ********** [0]*/

/* [Cond : Col_CollisionAvecSol] ********** [0, 0, 1]*/
    if ( !( CFast_CallCondition_Static(516) ) ) {

/* [Cond : >] ********** [2, 2, 1]*/
      if ( MTH_M_bGreater(MTH_M_xLongToReal((*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 24))))), MTH_M_xFloatToReal(80.000000f)) ) {
        CFast_YLT_RaymanModel_Sbr_42 ( ) ;
/* [MacroRef : 0] ********** [0]*/
      }
    }
    else {

/* [Cond : Col_ZDMCollisionAvecSol] ********** [1, 1, 1]*/
      if ( !( CFast_CallCondition_Static(80) ) ) {
        if ( CFast_YLT_RaymanModel_Sbr_27 ( ) )
          return ;
/* [MacroRef : 0] ********** [0]*/
        LocalCFast_fn_vSetDsgVarBoolean(97, 0) ;
        if ( CFast_YLT_RaymanModel_Sbr_30 ( ) )
          return ;
/* [MacroRef : 0] ********** [0]*/
      }
    }
  }
/* [EndTree] ************ [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_43 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_35 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_44 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_45 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  if ( ! ( gcGlobAleat & 0x1 ) )
  {
    if ( !( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 96)))) ) ) {

/* [Cond : <] ********** [2, 2, 1]*/
      if ( MTH_M_bLess((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 21)))), (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 93))))) ) {
        if ( CFast_YLT_RaymanModel_Sbr_46 ( ) )
          return ;
/* [MacroRef : 0] ********** [0]*/
      }
    }
  }
/* [EndTree] ************ [0]*/
  CFast_YLT_RaymanModel_Sbr_47 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_48 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_49 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 97)))) ) {
    CFast_fn_vSetDsgVar0To255(M_CFast_ucGetRealIndice(13), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),8) ;
  }
  else {
    CFast_fn_vSetDsgVar0To255(M_CFast_ucGetRealIndice(13), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),3) ;
  }
/* [EndTree] ************ [0]*/
  CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;
  LocalCFast_fn_vSetDsgVar0To255(9, 13) ;

/* [Cond : BoutonAppuye] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+27)) ) {
    LocalCFast_fn_vSetDsgVarInteger(38, 14) ;
    CFast_YLT_RaymanModel_Sbr_39 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  }
/* [EndTree] ************ [0]*/

/* [Func : Temps_LitDT] ********** [0, 0, 2]*/
  CFast_CallFunction2_Static( 9 ) ;
  LocalCFast_fn_vSetDsgVarInteger(24, (LocalCFast_fn_lGetDsgVarInteger(24)+MTH_M_xRealToLong(M_GetSetParam_xValue(CFast_g_a_stParam+2)))) ;
  CFast_YLT_RaymanModel_Sbr_50 ( ) ;
/* [MacroRef : 0] ********** [0]*/
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement YLT_SautMontee
 */
void CFast_YLT_RaymanModel_Cmp_YLT_SautMontee (void)
{
  MTH3D_tdstVector stVector0;
  struct DNM_stDynamics *p_stDynam;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  switch(p_stLocalMind0->CFast_lCmpMetaAction) {
  case 1 : goto label1 ;
  case 2 : goto label2 ;
  }

/* [Cond : BoutonRelache] ********** [1, 1, 2]*/
  long1 = (long)IPT_fn_bIsInvalidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+30)) ? 1 : 0;
  if ( !long1 ) {

/* [Cond : >=] ********** [2, 2, 3]*/
    long1 = (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 23)))) >= (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 90)))) ? 1 : 0;
  }
  if ( long1 ) {
    long1 =!(*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 86))));
    if ( !long1 ) {

/* [Cond : >=] ********** [2, 2, 3]*/
      long1 = (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 23)))) >= (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 90)))) ? 1 : 0;
    }
    if ( long1 ) {
      if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 14)))) ) {

/* [Proc : MEC_FixeGravite] *********** [1, 1, 0]*/
        CFast_CallProcedure_Static( 970 ) ;
      }
      LocalCFast_fn_vSetDsgVarBoolean(96, 0) ;
      LocalCFast_fn_vSetDsgVarBoolean(97, 0) ;

/* [Op : .] ********** [2, 2, 0]*/

/* [Func : ACT_LitBooleenDansTableau] ********** [4, 2, 1]*/
      M_eFuncIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Function][0]) = (tdeFuncId)248 ;

/* [Op : .] ********** [0, 2, 0]*/
      M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][1], E_ti_Operator);
      M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[3][1]) = (tdeOperatorId)12 ;
      CFast_memcpy ( 3, 2, 15) ;
      CFast_memcpy ( 3, 3, 16) ;
      M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][4], E_ti_Constant);
      M_lValueInterpret(&CFast_g_a_stPseudoTree[3][4]) = 1095 ;
      CFast_CallFunction1_NoStatic( ) ;
      LocalCFast_fn_vSetDsgVarBoolean(106,  ۟(CFast_g_a_stParam+1)) ;
      (LocalCFast_fn_p_stGetDsgVarVector(94))->xZ= MTH_M_xLongToReal(0) ;

/* [Proc : ChangeMonComportement] *********** [1, 1, 0]*/
      CFast_CallProcedure_Static( 972 ) ;
      CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
      return ;
    }
  }
/* [EndTree] ************ [0]*/
  p_stDynam = fn_p_stDynamGetDynamicsSO(g_hSuperObjectPerso);
if (p_stDynam != NULL){
MTH3D_M_vCopyVector(&stVector0, DNM_M_pDynamicsGetPreviousSpeed(p_stDynam));}
else {MTH3D_M_vNullVector(&stVector0);} ;
  LocalCFast_fn_vSetDsgVarFloat(21, (&stVector0)->xZ) ;

/* [Cond : Col_PasDeCollision] ********** [0, 0, 1]*/
  if ( !( CFast_CallCondition_Static(247) ) ) {
    p_stLocalMind0->CFast_lCmpMetaAction = 1;
label1 :
label2 :
label3 :
    if ( CFast_YLT_RaymanModel_Sbr_40 ( ) )
      return ;
    p_stLocalMind0 -> CFast_lCmpMetaAction = 0 ;
/* [MacroRef : 0] ********** [0]*/
    LocalCFast_fn_vSetDsgVar_128To127(25, 0) ;
    p_stLocalMind0->CFast_lCmpMetaAction = 4;
label4 :
    if ( CFast_YLT_RaymanModel_Sbr_41 ( ) )
      return ;
    p_stLocalMind0 -> CFast_lCmpMetaAction = 0 ;
/* [MacroRef : 0] ********** [0]*/

/* [Cond : Col_CollisionAvecSol] ********** [0, 0, 3]*/
    long1 = CFast_CallCondition_Static(516) ;
if ( long1 ) {

/* [Cond : Col_ZDMCollisionAvecSol] ********** [1, 1, 5]*/
      long1 =!CFast_CallCondition_Static(80) ;
    }
    if ( long1 ) {

/* [Cond : >] ********** [2, 2, 3]*/
      long1 = MTH_M_bGreater(MTH_M_xLongToReal((*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 24))))), MTH_M_xFloatToReal(80.000000f)) ? 1 : 0;
    }
    if ( long1 ) {
      LocalCFast_fn_vSetDsgVarBoolean(97, 0) ;
      if ( CFast_YLT_RaymanModel_Sbr_30 ( ) )
        return ;
/* [MacroRef : 0] ********** [0]*/
    }

/* [Cond : Col_CollisionAvecPlafond] ********** [0, 0, 1]*/
    if ( CFast_CallCondition_Static(837) ) {
      LocalCFast_fn_vSetDsgVarInteger(23, LocalCFast_fn_lGetDsgVarInteger(90)) ;
    }
  }
/* [EndTree] ************ [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_43 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_35 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_44 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_45 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  if ( ! ( gcGlobAleat & 0x1 ) )
  {
    if ( !( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 96)))) ) ) {

/* [Op : .Z] ********** [1, 1, 3]*/
      CFast_CallOperator3_Static( 974 ) ;

/* [Cond : <] ********** [2, 2, 2]*/
      long1 = MTH_M_bLess(M_GetSetParam_xValue(&CFast_g_a_stParam[3]), (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 93))))) ? 1 : 0;
if ( long1 ) {
        long1 = (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 24))));
      }
      if ( long1 ) {
        if ( CFast_YLT_RaymanModel_Sbr_46 ( ) )
          return ;
/* [MacroRef : 0] ********** [0]*/
      }
    }
  }
/* [EndTree] ************ [0]*/
  CFast_YLT_RaymanModel_Sbr_47 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  long2 = (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 109)))); /* oups */

/* [Cond : Et] ********** [2, 2, 3]*/
  long1 &= long2;
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[3], long1) ;
  if (M_lValueInterpret(&CFast_g_a_stParam[3])) {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 109)))) ;
  } else {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(1.000000f) ;
  }
  M_Full_GetSetParam_Float(&CFast_g_a_stParam[1], MTH_M_xMul(MTH_M_xFloatToReal(12.000000f),M_GetSetParam_xValue(&CFast_g_a_stParam[2])));

/* [Op : .Z:=] ********** [2, 2, 0]*/
    M_lValueInterpret(p_stPseudoTree+978) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
  CFast_CallOperator0_Static( 976 ) ;
  CFast_YLT_RaymanModel_Sbr_48 ( ) ;
/* [MacroRef : 0] ********** [0]*/

/* [Op : .Z] ********** [1, 1, 1]*/
  CFast_CallOperator1_Static( 979 ) ;

/* [Proc : ACT_ImposeVitesseZ] *********** [1, 1, 0]*/
    M_lValueInterpret(p_stPseudoTree+982) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
  CFast_CallProcedure_Static( 981 ) ;
  CFast_YLT_RaymanModel_Sbr_49 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  CFast_fn_vSetDsgVar0To255(M_CFast_ucGetRealIndice(13), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),3) ;
  CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;
  LocalCFast_fn_vSetDsgVar0To255(9, 11) ;

/* [Cond : BoutonAppuye] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+27)) ) {
    LocalCFast_fn_vSetDsgVarInteger(38, 12) ;
    CFast_YLT_RaymanModel_Sbr_39 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  }
/* [EndTree] ************ [0]*/

/* [Func : Temps_LitDT] ********** [0, 0, 2]*/
  CFast_CallFunction2_Static( 9 ) ;
  LocalCFast_fn_vSetDsgVarInteger(24, (LocalCFast_fn_lGetDsgVarInteger(24)+MTH_M_xRealToLong(M_GetSetParam_xValue(CFast_g_a_stParam+2)))) ;

/* [Func : Temps_LitDT] ********** [0, 0, 2]*/
  CFast_CallFunction2_Static( 9 ) ;
  LocalCFast_fn_vSetDsgVarInteger(23, (LocalCFast_fn_lGetDsgVarInteger(23)+MTH_M_xRealToLong(M_GetSetParam_xValue(CFast_g_a_stParam+2)))) ;
  CFast_YLT_RaymanModel_Sbr_50 ( ) ;
/* [MacroRef : 0] ********** [0]*/
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement YLT_Helico
 */
void CFast_YLT_RaymanModel_Cmp_YLT_Helico (void)
{
  MTH3D_tdstVector stVector0;
  struct DNM_stDynamics *p_stDynam;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  switch(p_stLocalMind0->CFast_lCmpMetaAction) {
  case 1 : goto label1 ;
  case 2 : goto label2 ;
  case 3 : goto label3 ;
  case 4 : goto label4 ;
  }

/* [Cond : BoutonRelache] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsInvalidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+27)) ) {

/* [Func : ACT_ViseePerso] ********** [1, 0, 3]*/
    CFast_CallFunction3_Static( 12 ) ;

/* [Func : VEC_ContributionVecteur] ********** [2, 2, 2]*/
      M_p_stVectorInterpret(p_stPseudoTree+499) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+3);
    CFast_CallFunction2_Static( 497 ) ;
    MTH3D_M_vMulScalarVector(&stVector0, MTH_M_xMul(LocalCFast_fn_xGetDsgVarFloat(30),MTH_M_xFloatToReal(0.01000f)),&M_GetSetParam_stVectorValue(CFast_g_a_stParam+2)) ;
    LocalCFast_fn_vSetDsgVarVector(31, &stVector0) ;
  }
  else {
    MTH3D_M_vMulScalarVector(&stVector0, MTH_M_xMul(LocalCFast_fn_xGetDsgVarFloat(30),MTH_M_xFloatToReal(0.01000f)),LocalCFast_fn_p_stGetDsgVarVector(76)) ;
    LocalCFast_fn_vSetDsgVarVector(31, &stVector0) ;
  }
/* [EndTree] ************ [0]*/

/* [Cond : Col_PasDeCollision] ********** [0, 0, 1]*/
  if ( !( CFast_CallCondition_Static(247) ) ) {

/* [Cond : >] ********** [2, 2, 1]*/
    if ( MTH_M_bGreater(MTH_M_xLongToReal((*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 24))))), MTH_M_xFloatToReal(80.000000f)) ) {
      LocalCFast_fn_vSetDsgVarBoolean(45, 1) ;
    }
    LocalCFast_fn_vSetDsgVar_128To127(25, 0) ;
    p_stLocalMind0->CFast_lCmpMetaAction = 1;
label1 :
    if ( CFast_YLT_RaymanModel_Sbr_41 ( ) )
      return ;
    p_stLocalMind0 -> CFast_lCmpMetaAction = 0 ;
/* [MacroRef : 0] ********** [0]*/
    p_stLocalMind0->CFast_lCmpMetaAction = 2;
label2 :
label3 :
label4 :
    if ( CFast_YLT_RaymanModel_Sbr_40 ( ) )
      return ;
    p_stLocalMind0 -> CFast_lCmpMetaAction = 0 ;
/* [MacroRef : 0] ********** [0]*/
    CFast_YLT_RaymanModel_Sbr_42 ( ) ;
/* [MacroRef : 0] ********** [0]*/

/* [Cond : Col_CollisionAvecSol] ********** [0, 0, 2]*/
    long1 = CFast_CallCondition_Static(516) ;
if ( long1 ) {

/* [Cond : Col_ZDMCollisionAvecSol] ********** [1, 1, 4]*/
      long1 =!CFast_CallCondition_Static(80) ;
    }
    if ( long1 ) {
      if ( CFast_YLT_RaymanModel_Sbr_27 ( ) )
        return ;
/* [MacroRef : 0] ********** [0]*/
      if ( CFast_YLT_RaymanModel_Sbr_30 ( ) )
        return ;
/* [MacroRef : 0] ********** [0]*/
    }
  }
/* [EndTree] ************ [0]*/
  if ( !( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 99)))) ) ) {

/* [Vector] *********** [5, 3, 2]*/
    CFast_CallVector2_Static (188) ;

/* [Func : VEC_CombinaisonTemporelleVecteur] ********** [3, 3, 1]*/
      M_p_stVectorInterpret(p_stPseudoTree+986) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
    CFast_CallFunction1_Static( 983 ) ;
    LocalCFast_fn_vSetDsgVarVector(94, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
  }
/* [EndTree] ************ [0]*/
  CFast_YLT_RaymanModel_Sbr_48 ( ) ;
/* [MacroRef : 0] ********** [0]*/

/* [Cond : BoutonAppuye] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+30)) ) {
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))) ) {
      if ( !( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 1)))) ) ) {
        if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 47)))) ) {
          p_stLocalMind0->CFast_lCmpMetaAction = 5;
label5 :
          if ( CFast_YLT_RaymanModel_Sbr_13 ( ) )
            return ;
          p_stLocalMind0 -> CFast_lCmpMetaAction = 0 ;
/* [MacroRef : 0] ********** [0]*/

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
          if ( CFast_CallCondition_Static(0) ) {
            if ( CFast_YLT_RaymanModel_Sbr_18 ( ) )
              return ;
/* [MacroRef : 0] ********** [0]*/
            CFast_YLT_RaymanModel_Sbr_1 ( ) ;
/* [MacroRef : 0] ********** [0]*/
          }
          else {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
            fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
            CFast_CallProcedure_Static( 551 ) ;
            if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
              return ;
            }
          }
          LocalCFast_fn_vSetDsgVarInteger(24, 0) ;
          LocalCFast_fn_vSetDsgVarInteger(23, 0) ;
          LocalCFast_fn_vSetDsgVarBoolean(47, 0) ;
          LocalCFast_fn_vSetDsgVarBoolean(96, 1) ;
          LocalCFast_fn_vSetDsgVar0To255(9, 13) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
          CFast_CallProcedure_Static( 204 ) ;
label6 :
          return ;
        }
      }
      else {
        if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 47)))) ) {

/* [Op : .Z] ********** [1, 1, 2]*/
          CFast_CallOperator2_Static( 974 ) ;

/* [Func : Math_CombinaisonTemporelleReel] ********** [3, 3, 1]*/
            M_lValueInterpret(p_stPseudoTree+988) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
          CFast_CallFunction1_Static( 987 ) ;
          LocalCFast_fn_vSetDsgVarFloat(21, M_GetSetParam_xValue(CFast_g_a_stParam+1)) ;

/* [Proc : ACT_ImposeVitesseZ] *********** [1, 1, 0]*/
          CFast_CallProcedure_Static( 991 ) ;
        }
      }
    }
  }
  else {
    p_stDynam = fn_p_stDynamGetDynamicsSO(g_hSuperObjectPerso);
if (p_stDynam != NULL){
MTH3D_M_vCopyVector(&stVector0, DNM_M_pDynamicsGetPreviousSpeed(p_stDynam));}
else {MTH3D_M_vNullVector(&stVector0);} ;
    LocalCFast_fn_vSetDsgVarFloat(21, (&stVector0)->xZ) ;
  }
/* [EndTree] ************ [0]*/
  if ( !( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 1)))) ) ) {

/* [Cond : >] ********** [2, 2, 1]*/
    if ( MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 21)))), MTH_M_xFloatToReal(0.000000f)) ) {

/* [Proc : MEC_FixeGravite] *********** [1, 1, 0]*/
      CFast_CallProcedure_Static( 486 ) ;
    }
    else {

/* [Vector] *********** [3, 3, 1]*/
      CFast_CallVector1_Static (993) ;

/* [Proc : MEC_FixeVitesseMax] *********** [1, 1, 0]*/
        M_p_stVectorInterpret(p_stPseudoTree+493) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
      CFast_CallProcedure_Static( 492 ) ;

/* [Proc : MEC_FixeGravite] *********** [1, 1, 0]*/
      CFast_CallProcedure_Static( 997 ) ;
    }
  }
/* [EndTree] ************ [0]*/
  if ( ! ( gcGlobAleat & 0xf ) )
  {
    if ( 1 ) {
      if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 1)))) ) {
        LocalCFast_fn_vSetDsgVar0To255(9, 17) ;

/* [Vector] *********** [3, 3, 1]*/
        CFast_CallVector1_Static (488) ;

/* [Proc : MEC_FixeVitesseMax] *********** [1, 1, 0]*/
          M_p_stVectorInterpret(p_stPseudoTree+493) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
        CFast_CallProcedure_Static( 492 ) ;

/* [Proc : MEC_FixeGravite] *********** [1, 1, 0]*/
        CFast_CallProcedure_Static( 999 ) ;
      }
      else {
        LocalCFast_fn_vSetDsgVar0To255(9, 15) ;

/* [Vector] *********** [3, 3, 1]*/
        CFast_CallVector1_Static (993) ;

/* [Proc : MEC_FixeVitesseMax] *********** [1, 1, 0]*/
          M_p_stVectorInterpret(p_stPseudoTree+493) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
        CFast_CallProcedure_Static( 492 ) ;
        M_GetSetParam_xValue(&CFast_g_a_stParam[1]) = MTH_M_bLess((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 21)))), MTH_M_xFloatToReal(0.100000f)) ? MTH_M_xFloatToReal(4.000000f) : MTH_M_xFloatToReal(25.000000f) ;
        M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Float;

/* [Math_ : Math_TernInf] ********** [0, 4, 1]*/

/* [Proc : MEC_FixeGravite] *********** [1, 1, 0]*/
          M_lValueInterpret(p_stPseudoTree+1002) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
        CFast_CallProcedure_Static( 1001 ) ;
      }
    }
  }
/* [EndTree] ************ [0]*/

/* [Cond : BoutonRelache] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsInvalidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+30)) ) {
    LocalCFast_fn_vSetDsgVarBoolean(47, 1) ;
  }
/* [EndTree] ************ [0]*/

/* [Cond : BoutonJusteAppuye] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsJustValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+40)) ) {
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))) ) {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
      if ( !( CFast_CallCondition_Static(0) ) ) {

/* [Op : :=] ********** [2, 2, 0]*/
        CFast_CallOperator0_Static ( 464 ) ;

/* [Op : :=] ********** [2, 2, 0]*/
        CFast_CallOperator0_Static ( 467 ) ;

/* [Op : :=] ********** [2, 2, 0]*/
        CFast_CallOperator0_Static ( 470 ) ;

/* [Op : .] ********** [2, 2, 0]*/

/* [Func : ACT_LitBooleenDansTableau] ********** [4, 2, 1]*/
        M_eFuncIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Function][0]) = (tdeFuncId)248 ;

/* [Op : .] ********** [0, 2, 0]*/
        M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][1], E_ti_Operator);
        M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[3][1]) = (tdeOperatorId)12 ;
        CFast_memcpy ( 3, 2, 15) ;
        CFast_memcpy ( 3, 3, 16) ;
        M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][4], E_ti_Constant);
        M_lValueInterpret(&CFast_g_a_stPseudoTree[3][4]) = 1143 ;
        CFast_CallFunction1_NoStatic( ) ;
        LocalCFast_fn_vSetDsgVarBoolean(120,  ۟(CFast_g_a_stParam+1)) ;
        LocalCFast_fn_vSetDsgVarBoolean(20, 1) ;
        LocalCFast_fn_vSetDsgVarFloat(19, MTH_M_xFloatToReal(0.00000f)) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
        fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
        CFast_CallProcedure_Static( 473 ) ;
        if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
          return ;
        }
      }
    }
  }
/* [EndTree] ************ [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_35 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;
  CFast_fn_vSetDsgVar0To255(M_CFast_ucGetRealIndice(13), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),8) ;

/* [Cond : BoutonAppuye] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+27)) ) {
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 1)))) ) {
      M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
      M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xLongToReal(18) ;
    } else {
      M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
      M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xLongToReal(16) ;
    }
    M_GetSetParam_lValue(&CFast_g_a_stParam[1]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
    M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [0, 1, 1]*/
    LocalCFast_fn_vSetDsgVarInteger(38, M_GetSetParam_lValue(CFast_g_a_stParam+1)) ;
    CFast_YLT_RaymanModel_Sbr_39 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  }
/* [EndTree] ************ [0]*/

/* [Func : Temps_LitDT] ********** [0, 0, 2]*/
  CFast_CallFunction2_Static( 9 ) ;
  LocalCFast_fn_vSetDsgVarInteger(24, (LocalCFast_fn_lGetDsgVarInteger(24)+MTH_M_xRealToLong(M_GetSetParam_xValue(CFast_g_a_stParam+2)))) ;
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))) ) {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(1.000000f) ;
  } else {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(0.000000f) ;
  }
  M_GetSetParam_lValue(&CFast_g_a_stParam[1]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
  M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [4, 1, 1]*/

/* [Cond : BoutonRelache] ********** [6, 1, 2]*/
  long2 = (long)IPT_fn_bIsInvalidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+27));
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[2], long2) ;

/* [Op : ..] ********** [8, 1, 0]*/

/* [Proc : PAD_LitJoyAnalogiqueModeMario] *********** [9, 8, 0]*/
  CFast_fn_vSetUltraOperatorPersoRef(12);
    M_lValueInterpret(p_stPseudoTree+1008) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
    M_lValueInterpret(p_stPseudoTree+1009) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
  CFast_CallProcedure_Static( 1003 ) ;
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement BNT_Nage
 */
void CFast_YLT_RaymanModel_Cmp_BNT_Nage (void)
{
  MTH_tdxReal xReal0;
  MTH3D_tdstVector stVector0;
  MTH3D_tdstVector stVector1;
  MTH3D_tdstVector stVector2;
  MTH3D_tdstVector stVector3;
  struct DNM_stDynamics *p_stDynam;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  if ( p_stLocalMind0 -> CFast_lCmpMetaAction ) 
    goto label1 ;

/* [Cond : BoutonJusteAppuye] ********** [1, 1, 2]*/
  long1 = (long)IPT_fn_bIsJustValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+30)) ? 1 : 0;
if ( long1 ) {

/* [Cond : BoutonRelache] ********** [1, 1, 5]*/
    long1 = (long)IPT_fn_bIsInvalidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+27)) ? 1 : 0;
if ( long1 ) {
      long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16))));
    }
    if ( long1 ) {

/* [Cond : <] ********** [2, 2, 6]*/
      long1 = MTH_M_bLess((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 98)))), MTH_M_xFloatToReal(0.550000f)) ? 1 : 0;
if ( long1 ) {

/* [Cond : >] ********** [2, 2, 7]*/
        long1 = MTH_M_bGreater(MTH_M_xLongToReal((*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 24))))), MTH_M_xFloatToReal(90.000000f)) ? 1 : 0;
      }
    }
  }
  if ( long1 ) {

/* [Proc : ActiveCanal] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 808 ) ;

/* [Proc : ActiveCanal] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 810 ) ;

/* [Proc : ActiveCanal] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 812 ) ;

/* [Proc : ActiveCanal] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 814 ) ;
    LocalCFast_fn_vSetDsgVarFloat(26, 0) ;

/* [Cond : >] ********** [2, 2, 1]*/
    if ( MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 98)))), MTH_M_xFloatToReal(-0.050000f)) ) {
      LocalCFast_fn_vSetDsgVarFloat(27, MTH_M_xFloatToReal(0.00000f)) ;

/* [Vector] *********** [3, 3, 1]*/
      CFast_CallVector1_Static (176) ;

/* [Vector] *********** [4, 3, 2]*/
      CFast_CallVector2_Static (188) ;

/* [Proc : ACT_ReorientePersoAvecOffset] *********** [4, 4, 0]*/
        M_p_stVectorInterpret(p_stPseudoTree+1012) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
        M_p_stVectorInterpret(p_stPseudoTree+1013) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
      CFast_CallProcedure_Static( 1011 ) ;
    }
    else {
      LocalCFast_fn_vSetDsgVarFloat(27, MTH_M_xFloatToReal(-5.00000f)) ;

/* [Vector] *********** [3, 3, 1]*/
      CFast_CallVector1_Static (176) ;

/* [Func : COL_VecteurNormalCollision2] ********** [2, 1, 2]*/
      CFast_CallFunction2_Static( 424 ) ;

/* [Proc : ACT_ReorientePersoAvecOffset] *********** [4, 4, 0]*/
        M_p_stVectorInterpret(p_stPseudoTree+1017) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
        M_p_stVectorInterpret(p_stPseudoTree+1018) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
      CFast_CallProcedure_Static( 1016 ) ;

/* [Keyword : Moi] ********** [0, 0, 1]*/

/* [Func : COL_VecteurNormalCollision2] ********** [3, 1, 3]*/
      CFast_CallFunction3_Static( 424 ) ;

/* [Op : v+] ********** [3, 2, 2]*/
        M_p_stVectorInterpret(p_stPseudoTree+1023) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+3);
      CFast_CallOperator2_Static( 1021 ) ;

/* [Proc : ACT_FixePositionPerso] *********** [2, 2, 0]*/
        M_p_stVectorInterpret(p_stPseudoTree+1026) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
      CFast_CallProcedure_Static( 1024 ) ;
    }
    LocalCFast_fn_vSetDsgVarFloat(98, MTH_M_xFloatToReal(0.00000f)) ;
    LocalCFast_fn_vSetDsgVarFloat(28, MTH_M_xMul(MTH_M_xFloatToReal(12.00000f),MTH_M_xFloatToReal(0.10000f))) ;
    POS_fn_vGetTranslationVector(HIE_fn_hGetSuperObjectMatrix(g_hSuperObjectPerso), &stVector0); ;
    LocalCFast_fn_vSetDsgVarVector(39, &stVector0) ;
    (LocalCFast_fn_p_stGetDsgVarVector(39))->xZ= MTH_M_xAdd(LocalCFast_fn_xGetDsgVarFloat(50),MTH_M_xFloatToReal(0.01000f)) ;

/* [Vector] *********** [5, 3, 1]*/
    CFast_CallVector1_Static (616) ;

/* [Proc : LanceAGO] *********** [5, 5, 0]*/
      M_p_stVectorInterpret(p_stPseudoTree+1030) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
    CFast_CallProcedure_Static( 1027 ) ;

/* [Vector] *********** [5, 3, 1]*/
    CFast_CallVector1_Static (626) ;

/* [Proc : LanceAGO] *********** [5, 5, 0]*/
      M_p_stVectorInterpret(p_stPseudoTree+1036) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
    CFast_CallProcedure_Static( 1033 ) ;

/* [Vector] *********** [5, 3, 1]*/
    CFast_CallVector1_Static (188) ;

/* [Proc : LanceAGO] *********** [5, 5, 0]*/
      M_p_stVectorInterpret(p_stPseudoTree+1042) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
    CFast_CallProcedure_Static( 1039 ) ;

/* [Vector] *********** [5, 3, 1]*/
    CFast_CallVector1_Static (188) ;

/* [Proc : LanceAGO] *********** [5, 5, 0]*/
      M_p_stVectorInterpret(p_stPseudoTree+1048) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
    CFast_CallProcedure_Static( 1045 ) ;

/* [Proc : COL_TraiteCollisionTraversee] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 816 ) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 929 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      return ;
    }

/* [Proc : ACT_ImposeVitesseAbsoluXY] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 1051 ) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 1054 ) ;
label1 :
    return ;
  }
/* [EndTree] ************ [0]*/
  POS_fn_vGetTranslationVector(HIE_fn_hGetSuperObjectMatrix(g_hSuperObjectPerso), &stVector1); ;

/* [Func : ZON_LitPositionZDM] ********** [1, 1, 4]*/
  CFast_CallFunction4_Static( 519 ) ;

/* [Func : VEC_VecteurAbsolu] ********** [1, 1, 3]*/
    M_p_stVectorInterpret(p_stPseudoTree+1058) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+4);
  CFast_CallFunction3_Static( 1057 ) ;
  MTH3D_M_vAddVector(&stVector2, &stVector1,&M_GetSetParam_stVectorValue(CFast_g_a_stParam+3)) ;

/* [Func : ZON_LitDimensionZDM] ********** [1, 1, 4]*/
  CFast_CallFunction4_Static( 521 ) ;
  MTH3D_M_vMulScalarVector(&stVector0, MTH_M_xFloatToReal(1.03000f),&M_GetSetParam_stVectorValue(CFast_g_a_stParam+4)) ;
  MTH3D_M_vAddVector(&stVector3, &stVector2,&stVector0) ;
  LocalCFast_fn_vSetDsgVarVector(40, &stVector3) ;
  LocalCFast_fn_vSetDsgVarFloat(98, MTH_M_xSub(LocalCFast_fn_xGetDsgVarFloat(50),LocalCFast_fn_p_stGetDsgVarVector(40)->xZ)) ;

/* [Cond : BoutonJusteAppuye] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsJustValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+40)) ) {
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))) ) {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
      if ( !( CFast_CallCondition_Static(0) ) ) {
        LocalCFast_fn_vSetDsgVarAction(117, NULL) ;

/* [Op : :=] ********** [2, 2, 0]*/
        CFast_CallOperator0_Static ( 1059 ) ;

/* [Op : :=] ********** [2, 2, 0]*/
        CFast_CallOperator0_Static ( 1062 ) ;
        LocalCFast_fn_vSetDsgVarBoolean(120, 0) ;
        LocalCFast_fn_vSetDsgVarBoolean(20, 1) ;
        LocalCFast_fn_vSetDsgVarFloat(19, MTH_M_xFloatToReal(0.00000f)) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
        fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
        CFast_CallProcedure_Static( 1065 ) ;
        if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
          return ;
        }
      }
    }
  }
/* [EndTree] ************ [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_35 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  LocalCFast_fn_vSetDsgVarBoolean(51, 0) ;
  LocalCFast_fn_vSetDsgVarBoolean(53, 0) ;
  LocalCFast_fn_vSetDsgVarFloat(68, MTH_M_xFloatToReal(0.25000f)) ;
  long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16))));
if ( long1 ) {
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 10))));
  }
  if ( long1 ) {

/* [Cond : >] ********** [2, 2, 1]*/
    if ( MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 79)))), MTH_M_xFloatToReal(48.000000f)) ) {
      LocalCFast_fn_vSetDsgVarBoolean(51, 1) ;
      LocalCFast_fn_vSetDsgVarFloat(48, MTH_M_xMul(MTH_M_xMul(LocalCFast_fn_xGetDsgVarFloat(78),LocalCFast_fn_xGetDsgVarFloat(88)),MTH_M_xFloatToReal(-0.01000f))) ;

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
      if ( CFast_CallCondition_Static(0) ) {
        LocalCFast_fn_vSetDsgVarFloat(48, MTH_M_xMul(LocalCFast_fn_xGetDsgVarFloat(48),MTH_M_xFloatToReal(0.50000f))) ;
      }

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
      if ( !( CFast_CallCondition_Static(0) ) ) {

/* [Cond : EstDansAction] ********** [1, 1, 1]*/
        if ( !( CFast_CallCondition_Static(1067) ) ) {

/* [Cond : ANI_TestFinAnim] ********** [0, 0, 2]*/
          long1 = CFast_CallCondition_Static(27) ;
          if ( !long1 ) {

/* [Cond : EstDansAction] ********** [1, 1, 3]*/
            long1 = CFast_CallCondition_Static(1069) ;
          }
          if ( long1 ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
            fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
            CFast_CallProcedure_Static( 776 ) ;
            if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
              return ;
            }
          }
        }
      }
    }
    else {
      LocalCFast_fn_vSetDsgVarFloat(48, MTH_M_xFloatToReal(0.00000f)) ;
    }
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xAbs((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 77))))) ;
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;

/* [Math_ : Math_ValeurAbsolue] ********** [0, 1, 2]*/

/* [Cond : >] ********** [2, 2, 1]*/
    if ( MTH_M_bGreater(M_GetSetParam_xValue(&CFast_g_a_stParam[2]), MTH_M_xFloatToReal(7.000000f)) ) {
      LocalCFast_fn_vSetDsgVarFloat(49, MTH_M_xMul(MTH_M_xDiv(MTH_M_xMul(LocalCFast_fn_xGetDsgVarFloat(77),LocalCFast_fn_xGetDsgVarFloat(79)),MTH_M_xFloatToReal(134.00000f)),MTH_M_xDiv(MTH_M_xMul(MTH_M_xFloatToReal(2500.00000f),LocalCFast_fn_xGetDsgVarFloat(68)),MTH_M_xFloatToReal(134.00000f)))) ;
      M_GetSetParam_xValue(&CFast_g_a_stParam[3]) = MTH_M_xAbs((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 77))))) ;
      M_GetSetParam_Type(&CFast_g_a_stParam[3]) = E_vt_Float;

/* [Math_ : Math_ValeurAbsolue] ********** [0, 1, 3]*/

/* [Cond : >] ********** [2, 2, 2]*/
      long1 = MTH_M_bGreater(M_GetSetParam_xValue(&CFast_g_a_stParam[3]), MTH_M_xFloatToReal(45.000000f)) ? 1 : 0;
if ( long1 ) {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 4]*/
        long1 =!CFast_CallCondition_Static(0) ;
      }
      if ( long1 ) {
        M_GetSetParam_xValue(&CFast_g_a_stParam[3]) = MTH_M_xAbs((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 77))))) ;
        M_GetSetParam_Type(&CFast_g_a_stParam[3]) = E_vt_Float;

/* [Math_ : Math_ValeurAbsolue] ********** [0, 1, 3]*/
        LocalCFast_fn_vSetDsgVarFloat(48, MTH_M_xMul(LocalCFast_fn_xGetDsgVarFloat(48),MTH_M_xMul(M_GetSetParam_xValue(CFast_g_a_stParam+3),MTH_M_xFloatToReal(0.00556f)))) ;
        if ( !( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 51)))) ) ) {
          LocalCFast_fn_vSetDsgVarBoolean(53, 1) ;

/* [Cond : >] ********** [3, 2, 1]*/
          if ( MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 77)))), MTH_M_xFloatToReal(0.000000f)) ) {

/* [Cond : ChangeActionPossible] ********** [2, 1, 2]*/
            long1 = CFast_CallCondition_Static(1071) ;
if ( long1 ) {

/* [Cond : EstDansAction] ********** [2, 1, 4]*/
              long1 =!CFast_CallCondition_Static(1073) ;
            }
            if ( long1 ) {

/* [Proc : ChangeAction] *********** [2, 1, 0]*/
              fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
              CFast_CallProcedure_Static( 1075 ) ;
              if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
                return ;
              }
            }
          }
          else {

/* [Cond : ChangeActionPossible] ********** [2, 1, 2]*/
            long1 = CFast_CallCondition_Static(1077) ;
if ( long1 ) {

/* [Cond : EstDansAction] ********** [2, 1, 4]*/
              long1 =!CFast_CallCondition_Static(1079) ;
            }
            if ( long1 ) {

/* [Proc : ChangeAction] *********** [2, 1, 0]*/
              fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
              CFast_CallProcedure_Static( 1081 ) ;
              if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
                return ;
              }
            }
          }
        }
      }
    }
    else {
      LocalCFast_fn_vSetDsgVarFloat(49, MTH_M_xFloatToReal(0.00000f)) ;
    }

/* [Cond : BoutonAppuye] ********** [2, 1, 2]*/
    long1 = (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+27)) ? 1 : 0;
    if ( !long1 ) {

/* [Cond : BoutonAppuye] ********** [2, 1, 3]*/
      long1 = (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+30)) ? 1 : 0;
    }
    if ( long1 ) {
      LocalCFast_fn_vSetDsgVarBoolean(34, 1) ;

/* [Cond : BoutonAppuye] ********** [2, 1, 1]*/
      if ( (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+27)) ) {

/* [Cond : BoutonAppuye] ********** [2, 1, 1]*/
        if ( (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+30)) ) {

/* [Func : ACT_AssiettePerso] ********** [1, 0, 1]*/
          CFast_CallFunction1_Static( 349 ) ;
          LocalCFast_fn_vSetDsgVarVector(54, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
          LocalCFast_fn_vSetDsgVarBoolean(34, 0) ;
        }
        else {

/* [Func : ACT_ViseePerso] ********** [1, 0, 1]*/
          CFast_CallFunction1_Static( 12 ) ;
          LocalCFast_fn_vSetDsgVarVector(54, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
        }
      }
      else {

/* [Func : ACT_ViseePerso] ********** [1, 0, 2]*/
        CFast_CallFunction2_Static( 12 ) ;
        MTH3D_M_vNegVector(&stVector0,&M_GetSetParam_stVectorValue(CFast_g_a_stParam+2)) ;
        LocalCFast_fn_vSetDsgVarVector(54, &stVector0) ;
      }
      if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 34)))) ) {
        (LocalCFast_fn_p_stGetDsgVarVector(54))->xZ= MTH_M_xFloatToReal(0.20000f) ;
        if (MTH3D_M_bIsNullVector(((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 54))))) {
          MTH3D_M_vCopyVector(&M_GetSetParam_stVectorValue(&CFast_g_a_stParam[1]), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 54))));
        } else {
          MTH3D_M_vNormalizeVector(&M_GetSetParam_stVectorValue(&CFast_g_a_stParam[1]), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 54))));
        }
        M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Vector;
        LocalCFast_fn_vSetDsgVarVector(54, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
      }
    }
    else {
      LocalCFast_fn_vSetDsgVarBoolean(34, 1) ;
      MTH3D_M_vSetVectorElements(&stVector0, MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(1.00000f)) ;
      LocalCFast_fn_vSetDsgVarVector(54, &stVector0) ;
    }
  }
  else {
    LocalCFast_fn_vSetDsgVarBoolean(34, 1) ;
    MTH3D_M_vSetVectorElements(&stVector0, MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(1.00000f)) ;
    LocalCFast_fn_vSetDsgVarVector(54, &stVector0) ;
  }
/* [EndTree] ************ [1]*/
  long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 53))));
  if ( !long1 ) {
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 51))));
  }
  if ( !long1 ) {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [2, 1, 3]*/
    long1 = CFast_CallCondition_Static(0) ;
  }
  if ( !long1 ) {

/* [Cond : ANI_TestFinAnim] ********** [1, 0, 2]*/
    long1 = CFast_CallCondition_Static(27) ;
if ( long1 ) {

/* [Cond : EstDansAction] ********** [2, 1, 4]*/
      long1 =!CFast_CallCondition_Static(1069) ;
    }
    if ( long1 ) {

/* [Proc : ChangeAction] *********** [2, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 774 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }
    }
  }
/* [EndTree] ************ [1]*/

/* [Cond : EstDansAction] ********** [2, 1, 2]*/
  long1 = CFast_CallCondition_Static(1067) ;
if ( long1 ) {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [2, 1, 4]*/
    long1 =!CFast_CallCondition_Static(1083) ;
  }
  if ( long1 ) {

/* [Op : *] ********** [4, 2, 2]*/
    CFast_CallOperator2_Static(1085) ;
    M_GetSetParam_xValue(&CFast_g_a_stParam[1]) = MTH_M_xMax(MTH_M_xFloatToReal(60.000000f),M_GetSetParam_xValue(&CFast_g_a_stParam[2]));
    M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Float;

/* [Math_ : Math_MaximumReel] ********** [1, 2, 1]*/

/* [Proc : FixeFacteurVitesseAnimation] *********** [2, 1, 0]*/
      M_lValueInterpret(p_stPseudoTree+1089) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
    CFast_CallProcedure_Static( 1088 ) ;
  }
  else {

/* [Proc : FixeFacteurVitesseAnimation] *********** [2, 1, 0]*/
    CFast_CallProcedure_Static( 1090 ) ;
  }
/* [EndTree] ************ [1]*/

/* [Cond : Col_CollisionAvecSol] ********** [1, 0, 2]*/
  long1 = CFast_CallCondition_Static(516) ;
  if ( !long1 ) {

/* [Cond : Col_CollisionAvecPlafond] ********** [1, 0, 3]*/
    long1 = CFast_CallCondition_Static(837) ;
  }
  if ( long1 ) {

/* [Cond : Col_CollisionAvecEau] ********** [1, 0, 1]*/
    if ( !( CFast_CallCondition_Static(511) ) ) {
      LocalCFast_fn_vSetDsgVarBoolean(34, 1) ;
      if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 51)))) ) {

/* [Func : ACT_ViseePerso] ********** [1, 0, 1]*/
        CFast_CallFunction1_Static( 12 ) ;
        LocalCFast_fn_vSetDsgVarVector(39, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
        (LocalCFast_fn_p_stGetDsgVarVector(39))->xZ= MTH_M_xFloatToReal(0.00000f) ;
        if (MTH3D_M_bIsNullVector(((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 39))))) {
          MTH3D_M_vCopyVector(&M_GetSetParam_stVectorValue(&CFast_g_a_stParam[2]), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 39))));
        } else {
          MTH3D_M_vNormalizeVector(&M_GetSetParam_stVectorValue(&CFast_g_a_stParam[2]), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 39))));
        }
        M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Vector;

/* [Cond : Col_CollisionAvecSol] ********** [2, 0, 4]*/
        long2 = CFast_CallCondition_Static(516) ;
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[4], long2) ;
        if (M_lValueInterpret(&CFast_g_a_stParam[4])) {
          M_GetSetParam_Type(&CFast_g_a_stParam[3]) = E_vt_Float;
          M_GetSetParam_xValue(&CFast_g_a_stParam[3]) = MTH_M_xFloatToReal(-135.000000f) ;
        } else {
          M_GetSetParam_Type(&CFast_g_a_stParam[3]) = E_vt_Float;
          M_GetSetParam_xValue(&CFast_g_a_stParam[3]) = MTH_M_xFloatToReal(-45.000000f) ;
        }

/* [Func : ACT_HorizonPerso] ********** [3, 0, 4]*/
        CFast_CallFunction4_Static( 1092 ) ;

/* [Func : VEC_TourneVecteur] ********** [4, 3, 1]*/
          M_p_stVectorInterpret(p_stPseudoTree+1094) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
          M_lValueInterpret(p_stPseudoTree+1095) = M_GetSetParam_lValue(CFast_g_a_stParam+3);
          M_p_stVectorInterpret(p_stPseudoTree+1096) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+4);
        CFast_CallFunction1_Static( 1093 ) ;
        LocalCFast_fn_vSetDsgVarVector(54, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
      }
      else {
        MTH3D_M_vSetVectorElements(&stVector0, MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(1.00000f)) ;
        LocalCFast_fn_vSetDsgVarVector(54, &stVector0) ;
      }
    }
  }
/* [EndTree] ************ [1]*/

/* [Cond : Col_CollisionAvecMur] ********** [1, 0, 1]*/
  if ( CFast_CallCondition_Static(429) ) {

/* [Func : ACT_ViseePerso] ********** [4, 0, 5]*/
    CFast_CallFunction5_Static( 12 ) ;

/* [Func : COL_VecteurNormalCollision2] ********** [6, 1, 6]*/
    CFast_CallFunction6_Static( 424 ) ;

/* [Func : VEC_ProduitScalaire] ********** [6, 2, 4]*/
      M_p_stVectorInterpret(p_stPseudoTree+1098) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+5);
      M_p_stVectorInterpret(p_stPseudoTree+1099) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+6);
    CFast_CallFunction4_Static( 1097 ) ;
    M_GetSetParam_xValue(&CFast_g_a_stParam[3]) = MTH_M_xMin(MTH_M_xFloatToReal(0.000000f),M_GetSetParam_xValue(&CFast_g_a_stParam[4]));
    M_GetSetParam_Type(&CFast_g_a_stParam[3]) = E_vt_Float;

/* [Math_ : Math_MinimumReel] ********** [3, 2, 3]*/
    M_Full_GetSetParam_Float(&CFast_g_a_stParam[2], MTH_M_xMul(M_GetSetParam_xValue(&CFast_g_a_stParam[3]),MTH_M_xFloatToReal(0.250000f)));
    M_Full_GetSetParam_Float(&CFast_g_a_stParam[1], MTH_M_xAdd(MTH_M_xFloatToReal(0.600000f),M_GetSetParam_xValue(&CFast_g_a_stParam[2])));

/* [Proc : MEC_FixeInertie] *********** [4, 3, 0]*/
      M_lValueInterpret(p_stPseudoTree+1102) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
    CFast_CallProcedure_Static( 1100 ) ;
  }
  else {

/* [Proc : MEC_FixeInertie] *********** [4, 3, 0]*/
    CFast_CallProcedure_Static( 1104 ) ;
  }
/* [EndTree] ************ [1]*/

/* [Func : ACT_AssiettePerso] ********** [1, 0, 1]*/
  CFast_CallFunction1_Static( 349 ) ;
  LocalCFast_fn_vSetDsgVarVector(40, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 34)))) ) {

/* [Func : ACT_AssiettePerso] ********** [1, 0, 2]*/
    CFast_CallFunction2_Static( 349 ) ;

/* [Op : .Z] ********** [4, 1, 6]*/
    CFast_CallOperator6_Static( 766 ) ;
    M_GetSetParam_xValue(&CFast_g_a_stParam[5]) = MTH_M_xAbs(M_GetSetParam_xValue(&CFast_g_a_stParam[6])) ;
    M_GetSetParam_Type(&CFast_g_a_stParam[5]) = E_vt_Float;

/* [Math_ : Math_ValeurAbsolue] ********** [3, 1, 5]*/
    M_Full_GetSetParam_Float(&CFast_g_a_stParam[4], MTH_M_xMul(M_GetSetParam_xValue(&CFast_g_a_stParam[5]),MTH_M_xFloatToReal(0.041000f)));
    M_Full_GetSetParam_Float(&CFast_g_a_stParam[3], MTH_M_xSub(MTH_M_xFloatToReal(0.999000f),M_GetSetParam_xValue(&CFast_g_a_stParam[4])));

/* [Func : VEC_CombinaisonTemporelleVecteur] ********** [4, 3, 1]*/
      M_p_stVectorInterpret(p_stPseudoTree+1109) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
      M_lValueInterpret(p_stPseudoTree+1110) = M_GetSetParam_lValue(CFast_g_a_stParam+3);
    CFast_CallFunction1_Static( 1108 ) ;
    LocalCFast_fn_vSetDsgVarVector(39, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
  }
  else {
    LocalCFast_fn_vSetDsgVarVector(39, LocalCFast_fn_p_stGetDsgVarVector(54)) ;
  }
/* [EndTree] ************ [1]*/

/* [Func : ACT_HorizonPerso] ********** [1, 0, 1]*/
  CFast_CallFunction1_Static( 1092 ) ;
  LocalCFast_fn_vSetDsgVarVector(40, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
  (LocalCFast_fn_p_stGetDsgVarVector(40))->xZ= MTH_M_xFloatToReal(0.00000f) ;

/* [Proc : ACT_ReorientePersoAvecOffset] *********** [5, 4, 0]*/
  CFast_CallProcedure_Static( 1112 ) ;

/* [Vector] *********** [4, 3, 2]*/
  CFast_CallVector2_Static (176) ;

/* [Func : VEC_VecteurRelatif] ********** [2, 1, 1]*/
    M_p_stVectorInterpret(p_stPseudoTree+181) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
  CFast_CallFunction1_Static( 180 ) ;

/* [Func : Temps_LitDT] ********** [3, 0, 4]*/
  CFast_CallFunction4_Static( 9 ) ;
  M_Full_GetSetParam_Float(&CFast_g_a_stParam[3], MTH_M_xMul((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 49)))),M_GetSetParam_xValue(&CFast_g_a_stParam[4])));
  M_Full_GetSetParam_Float(&CFast_g_a_stParam[2], MTH_M_xMul(M_GetSetParam_xValue(&CFast_g_a_stParam[3]),MTH_M_xFloatToReal(0.001000f)));

/* [Proc : ACT_TournePersoAutourDeVecteurAvecOffset] *********** [4, 3, 0]*/
    M_p_stVectorInterpret(p_stPseudoTree+1118) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
    M_lValueInterpret(p_stPseudoTree+1119) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
  CFast_CallProcedure_Static( 1117 ) ;

/* [Vector] *********** [5, 3, 2]*/
  CFast_CallVector2_Static (1121) ;

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [4, 1, 4]*/
  long2 = CFast_CallCondition_Static(1083) ;
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[4], long2) ;
  if (M_lValueInterpret(&CFast_g_a_stParam[4])) {
    M_GetSetParam_Type(&CFast_g_a_stParam[3]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[3]) = MTH_M_xFloatToReal(0.500000f) ;
  } else {
    M_GetSetParam_Type(&CFast_g_a_stParam[3]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[3]) = MTH_M_xFloatToReal(1.000000f) ;
  }
  MTH3D_M_vMulScalarVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[1]), M_GetSetParam_xValue(&CFast_g_a_stParam[3]), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[2]));
  M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Vector;

/* [Op : :=] ********** [3, 2, 0]*/
    M_p_stVectorInterpret(p_stPseudoTree+1127) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
  CFast_CallOperator0_Static ( 1125 ) ;

/* [Cond : BoutonRelache] ********** [2, 1, 2]*/
  long1 = (long)IPT_fn_bIsInvalidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+27)) ? 1 : 0;
  if ( !long1 ) {
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16))));
if ( long1 ) {
      long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 10))));
    }
    long1 = long1 ? 0 : 1 ;
  }
  if ( long1 ) {

/* [Cond : <] ********** [3, 2, 1]*/
    if ( MTH_M_bLess((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 98)))), MTH_M_xFloatToReal(4.000000f)) ) {

/* [Vector] *********** [4, 3, 3]*/
      CFast_CallVector3_Static (1128) ;

/* [Func : VEC_VecteurRelatif] ********** [2, 1, 2]*/
        M_p_stVectorInterpret(p_stPseudoTree+181) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+3);
      CFast_CallFunction2_Static( 180 ) ;
      MTH3D_M_vAddVector(LocalCFast_fn_p_stGetDsgVarVector(41),LocalCFast_fn_p_stGetDsgVarVector(41),&M_GetSetParam_stVectorValue(CFast_g_a_stParam+2)) ;
    }
  }
/* [EndTree] ************ [1]*/

/* [Cond : MEC_MecaniqueBloque] ********** [1, 0, 1]*/
  if ( CFast_CallCondition_Static(1132) ) {

/* [Proc : ACT_ImposeVitesseXYZ] *********** [4, 3, 0]*/
    CFast_CallProcedure_Static( 165 ) ;
  }
  else {

/* [Proc : ACT_ProposeVecteurVitesse] *********** [2, 1, 0]*/
    CFast_CallProcedure_Static( 1133 ) ;
  }
/* [EndTree] ************ [1]*/

/* [Cond : <] ********** [3, 2, 1]*/
  if ( MTH_M_bLess((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 98)))), MTH_M_xFloatToReal(0.550000f)) ) {
    p_stDynam = fn_p_stDynamGetDynamicsSO(g_hSuperObjectPerso);
if (p_stDynam != NULL){
xReal0 = MTH3D_M_xNormVector(DNM_M_pDynamicsGetPreviousSpeed(p_stDynam));}
else {xReal0=MTH_C_ZERO;} ;
    LocalCFast_fn_vSetDsgVarFloat(36, MTH_M_xSub(MTH_M_xDiv(MTH_M_xLongToReal(xReal0),LocalCFast_fn_xGetDsgVarFloat(88)),MTH_M_xMul(LocalCFast_fn_xGetDsgVarFloat(98),MTH_M_xFloatToReal(3.00000f)))) ;

/* [Func : Temps_LitDT] ********** [3, 0, 4]*/
    CFast_CallFunction4_Static( 9 ) ;
    M_Full_GetSetParam_Float(&CFast_g_a_stParam[3], MTH_M_xMul((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 36)))),M_GetSetParam_xValue(&CFast_g_a_stParam[4])));
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xMax(MTH_M_xFloatToReal(0.000000f),M_GetSetParam_xValue(&CFast_g_a_stParam[3]));
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;

/* [Math_ : Math_MaximumReel] ********** [1, 2, 2]*/
    LocalCFast_fn_vSetDsgVarFloat(100, MTH_M_xAdd(LocalCFast_fn_xGetDsgVarFloat(100),M_GetSetParam_xValue(CFast_g_a_stParam+2))) ;

/* [Cond : >] ********** [3, 2, 1]*/
    if ( MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 100)))), MTH_M_xFloatToReal(150.000000f)) ) {
      LocalCFast_fn_vSetDsgVarFloat(100, MTH_M_xFloatToReal(0.00000f)) ;
      POS_fn_vGetTranslationVector(HIE_fn_hGetSuperObjectMatrix(g_hSuperObjectPerso), &stVector0); ;
      LocalCFast_fn_vSetDsgVarVector(39, &stVector0) ;
      (LocalCFast_fn_p_stGetDsgVarVector(39))->xZ= MTH_M_xAdd(LocalCFast_fn_xGetDsgVarFloat(50),MTH_M_xFloatToReal(0.01000f)) ;

/* [Vector] *********** [6, 3, 1]*/
      CFast_CallVector1_Static (1135) ;

/* [Proc : LanceAGO] *********** [6, 5, 0]*/
        M_p_stVectorInterpret(p_stPseudoTree+1036) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
      CFast_CallProcedure_Static( 1033 ) ;
    }
    LocalCFast_fn_vSetDsgVarBoolean(62, 1) ;

/* [Proc : DesactiveCanal] *********** [2, 1, 0]*/
    CFast_CallProcedure_Static( 1139 ) ;

/* [Proc : DesactiveCanal] *********** [2, 1, 0]*/
    CFast_CallProcedure_Static( 1141 ) ;

/* [Proc : ActiveCanal] *********** [2, 1, 0]*/
    CFast_CallProcedure_Static( 812 ) ;

/* [Proc : ActiveCanal] *********** [2, 1, 0]*/
    CFast_CallProcedure_Static( 814 ) ;
  }
  else {
    LocalCFast_fn_vSetDsgVarBoolean(62, 0) ;

/* [Proc : ActiveCanal] *********** [2, 1, 0]*/
    CFast_CallProcedure_Static( 808 ) ;

/* [Proc : ActiveCanal] *********** [2, 1, 0]*/
    CFast_CallProcedure_Static( 810 ) ;

/* [Proc : DesactiveCanal] *********** [2, 1, 0]*/
    CFast_CallProcedure_Static( 1143 ) ;

/* [Proc : DesactiveCanal] *********** [2, 1, 0]*/
    CFast_CallProcedure_Static( 1145 ) ;

/* [Func : Temps_LitDT] ********** [3, 0, 4]*/
    CFast_CallFunction4_Static( 9 ) ;
    M_Full_GetSetParam_Float(&CFast_g_a_stParam[3], MTH_M_xDiv(MTH_M_xFloatToReal(500.000000f),M_GetSetParam_xValue(&CFast_g_a_stParam[4])));
    M_GetSetParam_lValue(&CFast_g_a_stParam[2]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[3])) ;
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [2, 1, 2]*/

/* [Func : Math_EntierAuHasard] ********** [3, 2, 1]*/
      M_lValueInterpret(p_stPseudoTree+1149) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
    CFast_CallFunction1_Static( 1147 ) ;
    long1 = M_GetSetParam_lValue(&CFast_g_a_stParam[1]);
    if ( !long1 ) {

/* [Func : MOD_PositionAbsolueModule] ********** [4, 1, 1]*/
      CFast_CallFunction1_Static( 1150 ) ;
      if ( (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 50)))) > MTH_M_xFloatToReal(32766.000000f) ) {

/* [Op : .Z] ********** [7, 1, 4]*/
        CFast_CallOperator4_Static( 1152 ) ;
        M_Full_GetSetParam_Float(&CFast_g_a_stParam[3], MTH_M_xAdd(M_GetSetParam_xValue(&CFast_g_a_stParam[4]),MTH_M_xFloatToReal(10.000000f)));
        M_xValueInterpret(&CFast_g_a_stParam[2]) = M_xValueInterpret(&CFast_g_a_stParam[3]);
      } else {
        M_Full_GetSetParam_Float(&CFast_g_a_stParam[4], MTH_M_xSub((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 50)))),MTH_M_xFloatToReal(0.550000f)));
        M_xValueInterpret(&CFast_g_a_stParam[2]) = M_xValueInterpret(&CFast_g_a_stParam[4]);
      }

/* [Proc : LanceAGO] *********** [7, 5, 0]*/
        M_p_stVectorInterpret(p_stPseudoTree+1156) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
        M_lValueInterpret(p_stPseudoTree+1159) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
      CFast_CallProcedure_Static( 1154 ) ;
    }
  }
/* [EndTree] ************ [2]*/
  if ( ! ( gcGlobAleat & 0x7 ) )
  {
    if ( 1 ) {
      POS_fn_vGetTranslationVector(HIE_fn_hGetSuperObjectMatrix(g_hSuperObjectPerso), &stVector0); ;

/* [Func : ZON_LitPositionZDM] ********** [3, 1, 3]*/
      CFast_CallFunction3_Static( 519 ) ;

/* [Func : VEC_VecteurAbsolu] ********** [3, 1, 2]*/
        M_p_stVectorInterpret(p_stPseudoTree+1058) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+3);
      CFast_CallFunction2_Static( 1057 ) ;
      MTH3D_M_vAddVector(&stVector1, &stVector0,&M_GetSetParam_stVectorValue(CFast_g_a_stParam+2)) ;
      LocalCFast_fn_vSetDsgVarVector(41, &stVector1) ;
      MTH3D_M_vSetVectorElements(&stVector0, MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(10.00000f)) ;
      LocalCFast_fn_vSetDsgVarVector(40, &stVector0) ;

/* [Proc : COL_IgnoreFlagRayTraceAuProchainPicking] *********** [2, 0, 0]*/
      CFast_CallProcedure_Static( 915 ) ;

/* [Func : COL_PointCollisionAvecMateriau] ********** [6, 4, 1]*/
      CFast_CallFunction1_Static( 1160 ) ;
      LocalCFast_fn_vSetDsgVarVector(39, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;

/* [Cond : VEC_VecteurNul] ********** [4, 1, 2]*/
      long2 = CFast_CallCondition_Static(83) ;
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[2], long2) ;
      if (M_lValueInterpret(&CFast_g_a_stParam[2])) {
        M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Float;
        M_GetSetParam_xValue(&CFast_g_a_stParam[1]) = MTH_M_xFloatToReal(32767.000000f) ;
      } else {

/* [Op : .Z] ********** [4, 1, 3]*/
        CFast_CallOperator3_Static( 804 ) ;
        M_xValueInterpret(&CFast_g_a_stParam[1]) = M_xValueInterpret(&CFast_g_a_stParam[3]);
      }

/* [Op : :=] ********** [4, 2, 0]*/
        M_lValueInterpret(p_stPseudoTree+1167) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
      CFast_CallOperator0_Static ( 1165 ) ;
    }
  }
/* [EndTree] ************ [2]*/
  LocalCFast_fn_vSetDsgVar0To255(89, 0) ;

/* [Cond : EstDansAction] ********** [3, 1, 1]*/
  if ( !( CFast_CallCondition_Static(1069) ) ) {
    CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;
  }
/* [EndTree] ************ [2]*/
  CFast_fn_vSetDsgVar0To255(M_CFast_ucGetRealIndice(13), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;
  LocalCFast_fn_vSetDsgVar0To255(9, 25) ;

/* [Func : Temps_LitDT] ********** [2, 0, 2]*/
  CFast_CallFunction2_Static( 9 ) ;
  LocalCFast_fn_vSetDsgVarInteger(24, (LocalCFast_fn_lGetDsgVarInteger(24)+MTH_M_xRealToLong(M_GetSetParam_xValue(CFast_g_a_stParam+2)))) ;
  long2 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))); /* oups */

/* [Cond : EstDansComportement] ********** [8, 2, 7]*/
  long3 = CFast_CallCondition_Static(941) ;

/* [Cond : BoutonAppuye] ********** [7, 1, 8]*/
  long4 = (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+29));

/* [Cond : Ou] ********** [6, 2, 6]*/
  long3 |= long4;

/* [Cond : Non] ********** [6, 1, 5]*/
  long3 = !long3;

/* [Cond : Et] ********** [6, 2, 3]*/
  long2 &= long3;
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[3], long2) ;
  if (M_lValueInterpret(&CFast_g_a_stParam[3])) {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xLongToReal(1) ;
  } else {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xLongToReal(0) ;
  }
  M_GetSetParam_lValue(&CFast_g_a_stParam[1]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
  M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [6, 1, 1]*/

/* [Op : ..] ********** [10, 1, 0]*/

/* [Proc : PAD_LitJoyAnalogiqueModeMario] *********** [11, 8, 0]*/
  CFast_fn_vSetUltraOperatorPersoRef(12);
    M_lValueInterpret(p_stPseudoTree+1173) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
  CFast_CallProcedure_Static( 1168 ) ;

/* [Cond : BoutonJusteRelache] ********** [3, 1, 2]*/
  long1 = (long)IPT_fn_bIsJustInvalidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+28)) ? 1 : 0;
if ( long1 ) {

/* [Cond : EstDansComportement] ********** [4, 2, 4]*/
    long1 = CFast_CallCondition_Static(941) ;
if ( long1 ) {

/* [Op : .] ********** [4, 2, 0]*/
      p_stLocalMind1 = M_pstGetMindOfBrain(M_GetMSHandle(M_CFast_hGetPersoRef(12) ,Brain));
      long1 = (*((char *)(M_GetDsgVarAddr(p_stLocalMind1, 35))));
    }
  }
  if ( long1 ) {

/* [Op : ..] ********** [3, 1, 0]*/

/* [Func : ACT_ViseePerso] ********** [4, 1, 1]*/
    CFast_fn_vSetUltraOperatorPersoRef(12);
    CFast_CallFunction1_Static( 12 ) ;

/* [Proc : ACT_ChangeViseePerso] *********** [3, 1, 0]*/
      M_p_stVectorInterpret(p_stPseudoTree+345) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
    CFast_CallProcedure_Static( 344 ) ;
  }
/* [EndTree] ************ [2]*/
}

/*
 * Model : YLT_RaymanModel Comportement YLT_BlocMode
 */
void CFast_YLT_RaymanModel_Cmp_YLT_BlocMode (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  switch(p_stLocalMind0->CFast_lCmpMetaAction) {
  case 1 : goto label1 ;
  case 2 : goto label2 ;
  case 3 : goto label3 ;
  }
  long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 10))));
if ( long1 ) {
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16))));
  }
  if ( !long1 ) {

/* [Op : ..] ********** [8, 1, 0]*/

/* [Proc : PAD_LitJoyAnalogiqueModeMario] *********** [9, 8, 0]*/
    CFast_fn_vSetUltraOperatorPersoRef(12);
    CFast_CallProcedure_Static( 818 ) ;
    if ( CFast_YLT_RaymanModel_Sbr_51 ( ) )
      return ;
/* [MacroRef : 0] ********** [0]*/
  }
/* [EndTree] ************ [0]*/
  LocalCFast_fn_vSetDsgVarInteger(38, 1) ;
  if ( CFast_YLT_RaymanModel_Sbr_32 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  LocalCFast_fn_vSetDsgVar0To255(87, 0) ;
  p_stLocalMind0->CFast_lCmpMetaAction = 1;
label1 :
  if ( CFast_YLT_RaymanModel_Sbr_33 ( ) )
    return ;
  p_stLocalMind0 -> CFast_lCmpMetaAction = 0 ;
/* [MacroRef : 0] ********** [0]*/

/* [Cond : <] ********** [2, 2, 1]*/
  if ( MTH_M_bLess((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 78)))), (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 83))))) ) {
    LocalCFast_fn_vSetDsgVarBoolean(95, 1) ;
    M_GetSetParam_xValue(&CFast_g_a_stParam[1]) = MTH_M_xMin((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 81)))),(*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 78)))));
    M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Float;

/* [Math_ : Math_MinimumReel] ********** [0, 2, 1]*/
    LocalCFast_fn_vSetDsgVarFloat(78, M_GetSetParam_xValue(CFast_g_a_stParam+1)) ;
    if ( CFast_YLT_RaymanModel_Sbr_51 ( ) )
      return ;
/* [MacroRef : 0] ********** [0]*/
  }
/* [EndTree] ************ [0]*/

/* [Cond : BoutonRelache] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsInvalidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+27)) ) {

/* [Cond : >] ********** [2, 2, 1]*/
    if ( MTH_M_bGreater(MTH_M_xLongToReal((*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 24))))), MTH_M_xFloatToReal(80.000000f)) ) {
      if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 120)))) ) {

/* [Proc : EnvoieRequeteSon] *********** [1, 1, 0]*/
        CFast_CallProcedure_Static( 200 ) ;

/* [Proc : EnvoieRequeteSon] *********** [1, 1, 0]*/
        CFast_CallProcedure_Static( 202 ) ;
      }

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
      if ( CFast_CallCondition_Static(0) ) {
        LocalCFast_fn_vSetDsgVarAction(117, NULL) ;

/* [Op : :=] ********** [2, 2, 0]*/
        CFast_CallOperator0_Static ( 403 ) ;

/* [Op : :=] ********** [2, 2, 0]*/
        CFast_CallOperator0_Static ( 385 ) ;
        LocalCFast_fn_vSetDsgVarBoolean(120, 0) ;

/* [Proc : ChangeActionAvecEvenements] *********** [2, 2, 0]*/
        fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
        CFast_CallProcedure_Static( 406 ) ;
        if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
          return ;
        }
      }

/* [Proc : ChangeMonComportement] *********** [1, 1, 0]*/
      CFast_CallProcedure_Static( 936 ) ;
label2 :
      return ;
    }
  }
  else {
    LocalCFast_fn_vSetDsgVarInteger(24, 0) ;
  }
/* [EndTree] ************ [0]*/

/* [Cond : BoutonJusteAppuye] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsJustValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+40)) ) {
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))) ) {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
      if ( !( CFast_CallCondition_Static(0) ) ) {
        CFast_YLT_RaymanModel_Sbr_37 ( ) ;
/* [MacroRef : 0] ********** [0]*/

/* [Op : .] ********** [2, 2, 0]*/

/* [Func : ACT_LitBooleenDansTableau] ********** [4, 2, 1]*/
        M_eFuncIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Function][0]) = (tdeFuncId)248 ;

/* [Op : .] ********** [0, 2, 0]*/
        M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][1], E_ti_Operator);
        M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[3][1]) = (tdeOperatorId)12 ;
        CFast_memcpy ( 3, 2, 15) ;
        CFast_memcpy ( 3, 3, 16) ;
        M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][4], E_ti_Constant);
        M_lValueInterpret(&CFast_g_a_stPseudoTree[3][4]) = 1143 ;
        CFast_CallFunction1_NoStatic( ) ;
        LocalCFast_fn_vSetDsgVarBoolean(120,  ۟(CFast_g_a_stParam+1)) ;
        LocalCFast_fn_vSetDsgVarBoolean(20, 1) ;
        LocalCFast_fn_vSetDsgVarFloat(19, MTH_M_xFloatToReal(0.00000f)) ;
        if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 120)))) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 721 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            return ;
          }

/* [Proc : EnvoieRequeteSon] *********** [1, 1, 0]*/
          CFast_CallProcedure_Static( 723 ) ;
        }
        else {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 5 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            return ;
          }
        }
      }
    }
  }
/* [EndTree] ************ [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_35 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/

/* [Cond : <>] ********** [2, 2, 1]*/
  if ( (*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 33)))) != (*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 32)))) ) {

/* [Cond : ANI_TestFinAnim] ********** [0, 0, 2]*/
    long1 = CFast_CallCondition_Static(27) ;
    if ( !long1 ) {
      long1 =!(*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 32))));
    }
    if ( long1 ) {
      if ( (*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 32)))) ) {
        LocalCFast_fn_vSetDsgVarBoolean(34, 0) ;
      }
      LocalCFast_fn_vSetDsgVar_32768To32767(32, LocalCFast_fn_lGetDsgVar_32768To32767(33)) ;

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
      if ( CFast_CallCondition_Static(0) ) {
        CFast_YLT_RaymanModel_Sbr_37 ( ) ;
/* [MacroRef : 0] ********** [0]*/
        long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 120))));
if ( long1 ) {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 3]*/
          long1 = CFast_CallCondition_Static(34) ;
        }
        if ( long1 ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 721 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            return ;
          }

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
          if ( CFast_CallCondition_Static(3) ) {

/* [Proc : EnvoieRequeteSon] *********** [1, 1, 0]*/
            CFast_CallProcedure_Static( 723 ) ;
          }
        }
        else {

/* [Proc : ChangeActionAvecEvenements] *********** [2, 2, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 931 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            return ;
          }
        }
      }
      else {

/* [Cond : <] ********** [2, 2, 1]*/
        if ( MTH_M_bLess(MTH_M_xLongToReal((*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 33))))), MTH_M_xFloatToReal(3.000000f)) ) {

/* [Cond : =] ********** [2, 2, 1]*/
          if ( (*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 33)))) == 1 ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
            fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
            CFast_CallProcedure_Static( 1176 ) ;
            if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
              return ;
            }
          }
          else {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
            fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
            CFast_CallProcedure_Static( 1178 ) ;
            if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
              return ;
            }
          }
        }
        else {

/* [Cond : =] ********** [2, 2, 1]*/
          if ( (*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 33)))) == 4 ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
            fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
            CFast_CallProcedure_Static( 1180 ) ;
            if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
              return ;
            }
          }
          else {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
            fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
            CFast_CallProcedure_Static( 1182 ) ;
            if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
              return ;
            }
          }
        }
      }
    }
  }
/* [EndTree] ************ [0]*/

/* [Cond : ANI_TestFinAnim] ********** [0, 0, 2]*/
  long1 = CFast_CallCondition_Static(27) ;
if ( long1 ) {
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 34))));
  }
  if ( long1 ) {
    LocalCFast_fn_vSetDsgVarBoolean(34, 0) ;
  }
/* [EndTree] ************ [0]*/
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 34)))) ) {

/* [Proc : FixeFacteurVitesseAnimation] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 1090 ) ;
    MTH3D_M_vSetVectorElements(&stVector0, MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(0.00000f)) ;
    LocalCFast_fn_vSetDsgVarVector(31, &stVector0) ;
  }
  else {

/* [Func : VEC_VecteurRelatif] ********** [1, 1, 2]*/
    CFast_CallFunction2_Static( 585 ) ;
    MTH3D_M_vMulScalarVector(&stVector0, MTH_M_xMul(MTH_M_xFloatToReal(7.00000f),MTH_M_xFloatToReal(0.01000f)),&M_GetSetParam_stVectorValue(CFast_g_a_stParam+2)) ;
    LocalCFast_fn_vSetDsgVarVector(31, &stVector0) ;

/* [Proc : ACT_ProposeVecteurVitesse] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 1184 ) ;
    M_Full_GetSetParam_Float(&CFast_g_a_stParam[2], MTH_M_xAdd((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 78)))),MTH_M_xFloatToReal(30.000000f)));
    M_GetSetParam_xValue(&CFast_g_a_stParam[1]) = MTH_M_bLess(M_GetSetParam_xValue(&CFast_g_a_stParam[2]), MTH_M_xFloatToReal(50.000000f)) ?  MTH_M_xFloatToReal(50.000000f) : (MTH_M_bGreater(M_GetSetParam_xValue(&CFast_g_a_stParam[2]), MTH_M_xFloatToReal(100.000000f)) ? MTH_M_xFloatToReal(100.000000f) : M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
    M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Float;

/* [Math_ : Math_ReelBorne] ********** [0, 3, 1]*/

/* [Proc : FixeFacteurVitesseAnimation] *********** [1, 1, 0]*/
      M_lValueInterpret(p_stPseudoTree+1187) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
    CFast_CallProcedure_Static( 1186 ) ;
  }
/* [EndTree] ************ [0]*/

/* [Cond : BoutonJusteAppuye] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsJustValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+30)) ) {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
    if ( CFast_CallCondition_Static(0) ) {
      if ( CFast_YLT_RaymanModel_Sbr_18 ( ) )
        return ;
/* [MacroRef : 0] ********** [0]*/
      CFast_YLT_RaymanModel_Sbr_1 ( ) ;
/* [MacroRef : 0] ********** [0]*/
    }
    else {

/* [Cond : =] ********** [2, 2, 1]*/
      if ( (*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 33)))) == 1 ) {
        LocalCFast_fn_vSetDsgVarInteger(29, 1) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
        fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
        CFast_CallProcedure_Static( 412 ) ;
        if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
          return ;
        }
      }
      else {

/* [Cond : =] ********** [2, 2, 1]*/
        if ( (*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 33)))) == 3 ) {
          LocalCFast_fn_vSetDsgVarInteger(29, 2) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 1188 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            return ;
          }
        }
        else {
          LocalCFast_fn_vSetDsgVarInteger(29, 0) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 929 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            return ;
          }
        }
      }
    }
    LocalCFast_fn_vSetDsgVarFloat(30, MTH_M_xFloatToReal(8.00000f)) ;
    LocalCFast_fn_vSetDsgVarInteger(23, 0) ;
    p_stLocalMind0->CFast_lCmpMetaAction = 3;
label3 :
    if ( CFast_YLT_RaymanModel_Sbr_36 ( ) )
      return ;
    p_stLocalMind0 -> CFast_lCmpMetaAction = 0 ;
/* [MacroRef : 0] ********** [0]*/
  }
/* [EndTree] ************ [0]*/
  if ( ! ( gcGlobAleat & 0x3 ) )
  {

/* [Cond : Col_CollisionAvecMur] ********** [0, 0, 1]*/
    if ( CFast_CallCondition_Static(429) ) {

/* [Cond : =] ********** [2, 2, 1]*/
      if ( (*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 33)))) == 1 ) {
        CFast_YLT_RaymanModel_Sbr_52 ( ) ;
/* [MacroRef : 0] ********** [0]*/
      }
    }
  }
/* [EndTree] ************ [0]*/
  CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;
  CFast_fn_vSetDsgVar0To255(M_CFast_ucGetRealIndice(13), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),3) ;
  LocalCFast_fn_vSetDsgVar0To255(9, 5) ;
  LocalCFast_fn_vSetDsgVarInteger(38, 6) ;
  CFast_YLT_RaymanModel_Sbr_39 ( ) ;
/* [MacroRef : 0] ********** [0]*/

/* [Func : Temps_LitDT] ********** [0, 0, 2]*/
  CFast_CallFunction2_Static( 9 ) ;
  LocalCFast_fn_vSetDsgVarInteger(24, (LocalCFast_fn_lGetDsgVarInteger(24)+MTH_M_xRealToLong(M_GetSetParam_xValue(CFast_g_a_stParam+2)))) ;
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))) ) {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(1.000000f) ;
  } else {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(0.000000f) ;
  }
  M_GetSetParam_lValue(&CFast_g_a_stParam[1]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
  M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [4, 1, 1]*/

/* [Op : ..] ********** [8, 1, 0]*/

/* [Proc : PAD_LitJoyAnalogiqueModeMario] *********** [9, 8, 0]*/
  CFast_fn_vSetUltraOperatorPersoRef(12);
    M_lValueInterpret(p_stPseudoTree+1195) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
  CFast_CallProcedure_Static( 1190 ) ;
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement BNT_Grappin
 */
void CFast_YLT_RaymanModel_Cmp_BNT_Grappin (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  switch(p_stLocalMind0->CFast_lCmpMetaAction) {
  case 1 : goto label1 ;
  case 2 : goto label2 ;
  }

/* [Cond : Alw_EstAMoi] ********** [1, 1, 1]*/
  if ( CFast_CallCondition_Static(1198) ) {

/* [Cond : ACT_EstDejaTraite] ********** [1, 1, 1]*/
    if ( !( CFast_CallCondition_Static(1200) ) ) {

/* [Keyword : Personne] ********** [0, 0, 1]*/
      CFast_CallKeyword_Static(232, 1) ;

/* [Proc : HIER_ForcePere] *********** [1, 1, 0]*/
            CFast_CallProcedure_Static( 1202 ) ;

/* [Keyword : Moi] ********** [0, 0, 1]*/

/* [Proc : ACT_ForceTraitementPerso] *********** [1, 1, 0]*/
      CFast_CallProcedure_Static( 1204 ) ;

/* [Proc : ACT_ChangeCustomBit] *********** [2, 2, 0]*/
      CFast_CallProcedure_Static( 234 ) ;

/* [Proc : BreakAI] *********** [0, 0, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 246 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }
    }
  }
  else {
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xAbs(MTH_M_xLongToReal((*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 57)))))) ;
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;

/* [Math_ : Math_ValeurAbsolue] ********** [0, 1, 2]*/

/* [Cond : <] ********** [2, 2, 1]*/
    if ( MTH_M_bLess(M_GetSetParam_xValue(&CFast_g_a_stParam[2]), MTH_M_xFloatToReal(1.500000f)) ) {
      LocalCFast_fn_vSetDsgVarInteger(57, 2) ;
    }
  }
/* [EndTree] ************ [0]*/

/* [Proc : ACT_ChangeCustomBit] *********** [2, 2, 0]*/
  CFast_CallProcedure_Static( 1206 ) ;
  M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xAbs(MTH_M_xLongToReal((*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 57)))))) ;
  M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;

/* [Math_ : Math_ValeurAbsolue] ********** [0, 1, 2]*/

/* [Cond : >] ********** [2, 2, 1]*/
  if ( MTH_M_bGreater(M_GetSetParam_xValue(&CFast_g_a_stParam[2]), MTH_M_xFloatToReal(1.500000f)) ) {

/* [Vector] *********** [3, 3, 1]*/
    CFast_CallVector1_Static (176) ;

/* [Proc : ACT_ReorientePersoAvecOffset] *********** [4, 4, 0]*/
      M_p_stVectorInterpret(p_stPseudoTree+1210) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
    CFast_CallProcedure_Static( 1209 ) ;

/* [Cond : >] ********** [2, 2, 1]*/
    if ( MTH_M_bGreater(MTH_M_xLongToReal((*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 57))))), MTH_M_xFloatToReal(0.000000f)) ) {
      LocalCFast_fn_vSetDsgVarInteger(29, 1) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 505 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }
    }
    else {
      LocalCFast_fn_vSetDsgVarInteger(29, 2) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 507 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }
    }

/* [Proc : ACT_ImposeVitesseXYZ] *********** [3, 3, 0]*/
    CFast_CallProcedure_Static( 165 ) ;

/* [Meta : Temps_AttenteFigee] ********** [1, 1, 0]*/
    CFast_CallMetaActionInit_Static( 1214 ) ;
    p_stLocalMind0->CFast_lCmpMetaAction = 1;
label1 :
    if ( CFast_CallMetaAction(0) & (C_DefaultMetaActionNotFinished)) {
      return ;
    }
    p_stLocalMind0->CFast_lCmpMetaAction = 0;

/* [Proc : HIER_ControlePlatforme] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 1216 ) ;
    LocalCFast_fn_vSetDsgVarFloat(30, MTH_M_xFloatToReal(8.00000f)) ;

/* [Proc : ACT_ProposeVecteurVitesseAbsolu] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 1218 ) ;

/* [Op : .Z] ********** [1, 1, 1]*/
    CFast_CallOperator1_Static( 1220 ) ;

/* [Proc : ACT_ImposeVitesseZ] *********** [1, 1, 0]*/
      M_lValueInterpret(p_stPseudoTree+982) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
    CFast_CallProcedure_Static( 981 ) ;
    p_stLocalMind0->CFast_lCmpMetaAction = 2;
label2 :
    if ( CFast_YLT_RaymanModel_Sbr_36 ( ) )
      return ;
    p_stLocalMind0 -> CFast_lCmpMetaAction = 0 ;
/* [MacroRef : 0] ********** [0]*/
  }
/* [EndTree] ************ [0]*/

/* [Cond : BoutonJusteAppuye] ********** [1, 1, 3]*/
  long1 = (long)IPT_fn_bIsJustValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+30)) ? 1 : 0;
if ( long1 ) {
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16))));
  }
  if ( !long1 ) {

/* [Cond : Col_PasDeCollision] ********** [0, 0, 4]*/
    long1 =!CFast_CallCondition_Static(247) ;
  }
  if ( long1 ) {
    LocalCFast_fn_vSetDsgVarBoolean(58, 1) ;
  }
/* [EndTree] ************ [0]*/

/* [Cond : >] ********** [2, 2, 1]*/
  if ( MTH_M_bGreater(MTH_M_xLongToReal((*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 57))))), MTH_M_xFloatToReal(0.000000f)) ) {
    LocalCFast_fn_vSetDsgVarInteger(57, 0) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 1222 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      return ;
    }
  }
  else {

/* [Cond : <] ********** [2, 2, 1]*/
    if ( MTH_M_bLess(MTH_M_xLongToReal((*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 57))))), MTH_M_xFloatToReal(0.000000f)) ) {
      LocalCFast_fn_vSetDsgVarInteger(57, 0) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 1224 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }
    }
  }
/* [EndTree] ************ [0]*/
  CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;
  CFast_fn_vSetDsgVar0To255(M_CFast_ucGetRealIndice(13), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),2) ;
  LocalCFast_fn_vSetDsgVar0To255(9, 20) ;
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement YLT_GiBlocMode
 */
void CFast_YLT_RaymanModel_Cmp_YLT_GiBlocMode (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 10))));
  if ( !long1 ) {
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16))));
  }
  if ( !long1 ) {
    if ( CFast_YLT_RaymanModel_Sbr_53 ( ) )
      return ;
/* [MacroRef : 0] ********** [0]*/
  }
/* [EndTree] ************ [0]*/

/* [Cond : BoutonRelache] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsInvalidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+27)) ) {

/* [Cond : >] ********** [2, 2, 1]*/
    if ( MTH_M_bGreater(MTH_M_xLongToReal((*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 24))))), MTH_M_xFloatToReal(80.000000f)) ) {
      if ( CFast_YLT_RaymanModel_Sbr_53 ( ) )
        return ;
/* [MacroRef : 0] ********** [0]*/
    }
  }
  else {
    LocalCFast_fn_vSetDsgVarInteger(24, 0) ;
  }
/* [EndTree] ************ [0]*/

/* [Cond : MEC_GiBloque] ********** [0, 0, 1]*/
  if ( CFast_CallCondition_Static(1226) ) {

/* [Cond : VEC_VecteurNul] ********** [1, 1, 1]*/
    if ( CFast_CallCondition_Static(1227) ) {

/* [Cond : VEC_VecteurNul] ********** [1, 1, 1]*/
      if ( CFast_CallCondition_Static(1229) ) {

/* [Func : ACT_ViseePerso] ********** [0, 0, 1]*/
        CFast_CallFunction1_Static( 12 ) ;
        LocalCFast_fn_vSetDsgVarVector(91, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
      }
      else {
        LocalCFast_fn_vSetDsgVarVector(91, LocalCFast_fn_p_stGetDsgVarVector(76)) ;
      }
    }
    else {

/* [Op : .X] ********** [1, 1, 3]*/
      CFast_CallOperator3_Static( 1231 ) ;

/* [Op : .Y] ********** [2, 1, 4]*/
      CFast_CallOperator4_Static( 1233 ) ;

/* [Vector] *********** [3, 3, 2]*/
        M_lValueInterpret(p_stPseudoTree+1236) = M_GetSetParam_lValue(CFast_g_a_stParam+3);
        M_lValueInterpret(p_stPseudoTree+1237) = M_GetSetParam_lValue(CFast_g_a_stParam+4);
      CFast_CallVector2_Static (1235) ;
      if (MTH3D_M_bIsNullVector(&M_GetSetParam_stVectorValue(&CFast_g_a_stParam[2]))) {
        MTH3D_M_vCopyVector(&M_GetSetParam_stVectorValue(&CFast_g_a_stParam[1]), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[2]));
      } else {
        MTH3D_M_vNormalizeVector(&M_GetSetParam_stVectorValue(&CFast_g_a_stParam[1]), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[2]));
      }
      M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Vector;
      LocalCFast_fn_vSetDsgVarVector(91, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
    }
    LocalCFast_fn_vSetDsgVarBoolean(46, 1) ;
    if ( CFast_YLT_RaymanModel_Sbr_53 ( ) )
      return ;
/* [MacroRef : 0] ********** [0]*/
  }
/* [EndTree] ************ [0]*/

/* [Cond : <] ********** [2, 2, 1]*/
  if ( MTH_M_bLess((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 78)))), (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 83))))) ) {
    LocalCFast_fn_vSetDsgVarBoolean(95, 1) ;
    if ( CFast_YLT_RaymanModel_Sbr_53 ( ) )
      return ;
/* [MacroRef : 0] ********** [0]*/
  }
/* [EndTree] ************ [0]*/

/* [Cond : <>] ********** [2, 2, 1]*/
  if ( (*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 33)))) != (*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 32)))) ) {

/* [Cond : ANI_TestFinAnim] ********** [0, 0, 2]*/
    long1 = CFast_CallCondition_Static(27) ;
    if ( !long1 ) {

/* [Cond : <=] ********** [2, 2, 3]*/
      long1 = MTH_M_bLessEqual(MTH_M_xLongToReal((*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 32))))), MTH_M_xFloatToReal(0.000000f)) ? 1 : 0;
    }
    if ( long1 ) {
      LocalCFast_fn_vSetDsgVar_32768To32767(32, LocalCFast_fn_lGetDsgVar_32768To32767(33)) ;

/* [Cond : >] ********** [2, 2, 1]*/
      if ( MTH_M_bGreater(MTH_M_xLongToReal((*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 33))))), MTH_M_xFloatToReal(2.000000f)) ) {

/* [Cond : =] ********** [2, 2, 1]*/
        if ( (*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 33)))) == 3 ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 1239 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            return ;
          }
        }
        else {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 1241 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            return ;
          }
        }
      }
      else {

/* [Cond : =] ********** [2, 2, 1]*/
        if ( (*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 33)))) == 1 ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 1243 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            return ;
          }
        }
        else {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 1245 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            return ;
          }
        }
      }
    }
  }
/* [EndTree] ************ [0]*/
  long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 34))));
if ( long1 ) {

/* [Cond : ANI_TestFinAnim] ********** [0, 0, 3]*/
    long1 = CFast_CallCondition_Static(27) ;
  }
  if ( long1 ) {
    LocalCFast_fn_vSetDsgVarBoolean(34, 0) ;
  }
/* [EndTree] ************ [0]*/
  if ( !( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 34)))) ) ) {

/* [Cond : >] ********** [2, 2, 1]*/
    if ( MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 78)))), (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 82))))) ) {

/* [Func : VEC_VecteurGlobalToLocal] ********** [1, 1, 2]*/
      CFast_CallFunction2_Static( 1247 ) ;
      MTH3D_M_vMulScalarVector(&stVector0, MTH_M_xMul(MTH_M_xFloatToReal(4.00000f),MTH_M_xFloatToReal(0.01000f)),&M_GetSetParam_stVectorValue(CFast_g_a_stParam+2)) ;
      LocalCFast_fn_vSetDsgVarVector(31, &stVector0) ;

/* [Proc : ACT_ProposeVecteurVitesse] *********** [1, 1, 0]*/
      CFast_CallProcedure_Static( 1184 ) ;
      M_Full_GetSetParam_Float(&CFast_g_a_stParam[2], MTH_M_xAdd((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 78)))),MTH_M_xLongToReal(30)));
      M_GetSetParam_xValue(&CFast_g_a_stParam[1]) = MTH_M_bLess(M_GetSetParam_xValue(&CFast_g_a_stParam[2]), MTH_M_xLongToReal(50)) ?  MTH_M_xLongToReal(50) : (MTH_M_bGreater(M_GetSetParam_xValue(&CFast_g_a_stParam[2]), MTH_M_xLongToReal(100)) ? MTH_M_xLongToReal(100) : M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
      M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Float;

/* [Math_ : Math_ReelBorne] ********** [0, 3, 1]*/

/* [Proc : FixeFacteurVitesseAnimation] *********** [1, 1, 0]*/
        M_lValueInterpret(p_stPseudoTree+1187) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
      CFast_CallProcedure_Static( 1186 ) ;
    }
  }
/* [EndTree] ************ [0]*/

/* [Cond : BoutonJusteAppuye] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsJustValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+40)) ) {
    if ( CFast_YLT_RaymanModel_Sbr_53 ( ) )
      return ;
/* [MacroRef : 0] ********** [0]*/
  }
/* [EndTree] ************ [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_54 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  CFast_fn_vSetDsgVar0To255(M_CFast_ucGetRealIndice(13), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),10) ;
  CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;
  LocalCFast_fn_vSetDsgVar0To255(9, 23) ;
  LocalCFast_fn_vSetDsgVarInteger(38, 24) ;
  CFast_YLT_RaymanModel_Sbr_39 ( ) ;
/* [MacroRef : 0] ********** [0]*/

/* [Func : Temps_LitDT] ********** [0, 0, 2]*/
  CFast_CallFunction2_Static( 9 ) ;
  LocalCFast_fn_vSetDsgVarInteger(24, (LocalCFast_fn_lGetDsgVarInteger(24)+MTH_M_xRealToLong(M_GetSetParam_xValue(CFast_g_a_stParam+2)))) ;
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))) ) {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(1.000000f) ;
  } else {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(0.000000f) ;
  }
  M_GetSetParam_lValue(&CFast_g_a_stParam[1]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
  M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [4, 1, 1]*/

/* [Op : ..] ********** [8, 1, 0]*/

/* [Proc : PAD_LitJoyAnalogiqueModeMario] *********** [9, 8, 0]*/
  CFast_fn_vSetUltraOperatorPersoRef(12);
    M_lValueInterpret(p_stPseudoTree+1195) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
  CFast_CallProcedure_Static( 1190 ) ;
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement YLT_Reinit
 */
void CFast_YLT_RaymanModel_Cmp_YLT_Reinit (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  if ( p_stLocalMind0 -> CFast_lCmpMetaAction ) 
    goto label1 ;

/* [Cond : =] ********** [2, 2, 3]*/
  long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 7 ? 1 : 0;
  if ( !long1 ) {

/* [Cond : =] ********** [2, 2, 4]*/
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 19 ? 1 : 0;
  }
  if ( !long1 ) {

/* [Cond : =] ********** [2, 2, 3]*/
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 8 ? 1 : 0;
  }
  if ( long1 ) {
    CFast_YLT_RaymanModel_Sbr_31 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  }
/* [EndTree] ************ [0]*/
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 120)))) ) {

/* [Proc : EnvoieRequeteSon] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 200 ) ;

/* [Proc : EnvoieRequeteSon] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 202 ) ;
  }
/* [EndTree] ************ [0]*/
  CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;
  LocalCFast_fn_vSetDsgVarBoolean(62, 0) ;
  LocalCFast_fn_vSetDsgVarPerso(60, NULL) ;
  LocalCFast_fn_vSetDsgVar0To255(87, 0) ;

/* [Proc : OMBRE_Affichage] *********** [1, 1, 0]*/
  CFast_CallProcedure_Static( 902 ) ;

/* [Proc : MEC_FixeCoefDeGlisseXYZ] *********** [3, 3, 0]*/
  CFast_CallProcedure_Static( 858 ) ;

/* [Proc : MEC_RestaureParametresCarte] *********** [0, 0, 0]*/
  CFast_CallProcedure_Static( 1249 ) ;

/* [Cond : =] ********** [2, 2, 1]*/
  if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 8)))) == 11 ) {

/* [Func : Temps_Obtenir] ********** [0, 0, 1]*/
    CFast_CallFunction1_Static( 430 ) ;
    LocalCFast_fn_vSetDsgVarInteger(35, M_GetSetParam_ulValue(CFast_g_a_stParam+1)) ;

/* [Proc : ACT_ActivationTransparence] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 420 ) ;
    LocalCFast_fn_vSetDsgVarInteger(84, 0) ;
    LocalCFast_fn_vSetDsgVarBoolean(85, 0) ;
    LocalCFast_fn_vSetDsgVarBoolean(106, 0) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 1250 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      return ;
    }

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 1252 ) ;
    CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    return ;
  }
/* [EndTree] ************ [0]*/

/* [Cond : =] ********** [2, 2, 2]*/
  long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 9 ? 1 : 0;
  if ( !long1 ) {

/* [Cond : COL_CollisionneurTouche] ********** [0, 0, 3]*/
    long1 = CFast_CallCondition_Static(334) ;
  }
  if ( long1 ) {

/* [nerienfaire()] *********** [0, 0, 0]*/
  }
/* [EndTree] ************ [0]*/

/* [Cond : =] ********** [2, 2, 1]*/
  if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 8)))) == 0 ) {

/* [Func : Temps_Obtenir] ********** [0, 0, 1]*/
    CFast_CallFunction1_Static( 430 ) ;
    LocalCFast_fn_vSetDsgVarInteger(35, M_GetSetParam_ulValue(CFast_g_a_stParam+1)) ;

/* [Proc : ACT_ActivationTransparence] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 420 ) ;
    LocalCFast_fn_vSetDsgVarInteger(84, 0) ;
    LocalCFast_fn_vSetDsgVarBoolean(85, 0) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 342 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      return ;
    }
    if ( CFast_YLT_RaymanModel_Sbr_51 ( ) )
      return ;
/* [MacroRef : 0] ********** [0]*/
  }
/* [EndTree] ************ [0]*/

/* [Cond : =] ********** [2, 2, 1]*/
  if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 8)))) == 1 ) {
    CFast_YLT_RaymanModel_Sbr_55 ( ) ;
/* [MacroRef : 0] ********** [0]*/

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 929 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      return ;
    }
    LocalCFast_fn_vSetDsgVarBoolean(47, 0) ;

/* [Op : .Z] ********** [1, 1, 1]*/
    CFast_CallOperator1_Static( 1220 ) ;

/* [Proc : ACT_ImposeVitesseZ] *********** [1, 1, 0]*/
      M_lValueInterpret(p_stPseudoTree+982) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
    CFast_CallProcedure_Static( 981 ) ;
    (LocalCFast_fn_p_stGetDsgVarVector(94))->xZ= MTH_M_xLongToReal(0) ;
    LocalCFast_fn_vSetDsgVarFloat(93, MTH_M_xFloatToReal(8.00000f)) ;
    LocalCFast_fn_vSetDsgVar0To255(9, 11) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 1255 ) ;
    CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    return ;
  }
/* [EndTree] ************ [0]*/

/* [Cond : =] ********** [2, 2, 1]*/
  if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 8)))) == 2 ) {
    CFast_YLT_RaymanModel_Sbr_55 ( ) ;
/* [MacroRef : 0] ********** [0]*/

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 503 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      return ;
    }
    LocalCFast_fn_vSetDsgVarBoolean(47, 0) ;
    LocalCFast_fn_vSetDsgVar0To255(9, 13) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 204 ) ;
    CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    return ;
  }
/* [EndTree] ************ [0]*/

/* [Cond : =] ********** [2, 2, 1]*/
  if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 8)))) == 3 ) {
    CFast_YLT_RaymanModel_Sbr_55 ( ) ;
/* [MacroRef : 0] ********** [0]*/
    LocalCFast_fn_vSetDsgVarBoolean(47, 0) ;

/* [Op : .Z] ********** [1, 1, 1]*/
    CFast_CallOperator1_Static( 1220 ) ;

/* [Proc : ACT_ImposeVitesseZ] *********** [1, 1, 0]*/
      M_lValueInterpret(p_stPseudoTree+982) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
    CFast_CallProcedure_Static( 981 ) ;
    (LocalCFast_fn_p_stGetDsgVarVector(94))->xZ= MTH_M_xLongToReal(0) ;
    LocalCFast_fn_vSetDsgVarFloat(93, MTH_M_xFloatToReal(8.00000f)) ;
    LocalCFast_fn_vSetDsgVar0To255(9, 11) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 1255 ) ;
    CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    return ;
  }
/* [EndTree] ************ [0]*/

/* [Cond : =] ********** [2, 2, 1]*/
  if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 8)))) == 4 ) {
    CFast_YLT_RaymanModel_Sbr_55 ( ) ;
/* [MacroRef : 0] ********** [0]*/
    LocalCFast_fn_vSetDsgVarBoolean(47, 0) ;

/* [Op : .Z] ********** [1, 1, 1]*/
    CFast_CallOperator1_Static( 1220 ) ;

/* [Proc : ACT_ImposeVitesseZ] *********** [1, 1, 0]*/
      M_lValueInterpret(p_stPseudoTree+982) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
    CFast_CallProcedure_Static( 981 ) ;
    (LocalCFast_fn_p_stGetDsgVarVector(94))->xZ= MTH_M_xLongToReal(0) ;
    LocalCFast_fn_vSetDsgVar0To255(9, 13) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 204 ) ;
    CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    return ;
  }
/* [EndTree] ************ [0]*/

/* [Cond : =] ********** [2, 2, 1]*/
  if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 8)))) == 5 ) {
    CFast_YLT_RaymanModel_Sbr_55 ( ) ;
/* [MacroRef : 0] ********** [0]*/

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 1258 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      return ;
    }
    LocalCFast_fn_vSetDsgVarBoolean(47, 0) ;

/* [Op : .Z] ********** [1, 1, 1]*/
    CFast_CallOperator1_Static( 1220 ) ;

/* [Proc : ACT_ImposeVitesseZ] *********** [1, 1, 0]*/
      M_lValueInterpret(p_stPseudoTree+982) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
    CFast_CallProcedure_Static( 981 ) ;
    (LocalCFast_fn_p_stGetDsgVarVector(94))->xZ= MTH_M_xLongToReal(0) ;
    LocalCFast_fn_vSetDsgVar0To255(9, 11) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 1255 ) ;
    CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    return ;
  }
/* [EndTree] ************ [0]*/

/* [Cond : =] ********** [2, 2, 1]*/
  if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 8)))) == 6 ) {
    CFast_YLT_RaymanModel_Sbr_55 ( ) ;
/* [MacroRef : 0] ********** [0]*/

/* [Proc : OMBRE_Affichage] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 902 ) ;
    LocalCFast_fn_vSetDsgVarBoolean(85, 0) ;

/* [Proc : ChangeMonComportementReflexe] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 1260 ) ;

/* [Op : .] ********** [2, 2, 0]*/

/* [Cond : ObjetValide] ********** [3, 1, 1]*/
    M_eCondIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Condition][0]) = (tdeCondId)49 ;

/* [Op : .] ********** [0, 2, 0]*/
    M_SetTypeInterpret(&CFast_g_a_stPseudoTree[1][1], E_ti_Operator);
    M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[1][1]) = (tdeOperatorId)12 ;
    CFast_memcpy ( 1, 2, 15) ;
    CFast_memcpy ( 1, 3, 79) ;
    long1 = CFast_CallCondition_NoStatic( ) ;
    if ( long1 ) {
      LocalCFast_fn_vSetDsgVarPerso(42, CFast_fn_hGetDsgVarPerso(M_CFast_ucGetRealIndice(79), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 15)))) ;

/* [Op : .] ********** [2, 2, 0]*/

/* [Proc : ACT_ChangePositionAbsoluePerso] *********** [3, 1, 0]*/
      M_eProcedureIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Procedure][0]) = (tdeProcedureId)157 ;

/* [Op : .] ********** [0, 2, 0]*/
      M_SetTypeInterpret(&CFast_g_a_stPseudoTree[4][1], E_ti_Operator);
      M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[4][1]) = (tdeOperatorId)12 ;
      M_SetTypeInterpret(&CFast_g_a_stPseudoTree[4][2], E_ti_DsgVarRef);
      M_lValueInterpret(&CFast_g_a_stPseudoTree[4][2]) = 42 ;
      M_SetTypeInterpret(&CFast_g_a_stPseudoTree[4][3], E_ti_Field);
      M_eFieldIdInterpret(&CFast_g_a_stPseudoTree[4][3]) = (tdeFieldId)0 ;
      CFast_CallProcedure_NoStatic( ) ;

/* [Proc : ACT_ForcePositionMoyennePerso] *********** [0, 0, 0]*/
      CFast_CallProcedure_Static( 737 ) ;
    }

/* [Op : ..] ********** [3, 1, 0]*/

/* [Proc : Cam_SetFlagNoAngularParsing] *********** [4, 3, 0]*/
    CFast_fn_vSetUltraOperatorPersoRef(12);
    CFast_CallProcedure_Static( 1262 ) ;

/* [Op : ..] ********** [3, 1, 0]*/

/* [Proc : Cam_SetFlagNoLinearParsing] *********** [4, 3, 0]*/
    CFast_fn_vSetUltraOperatorPersoRef(12);
    CFast_CallProcedure_Static( 1265 ) ;

/* [Op : ..] ********** [3, 1, 0]*/

/* [Proc : Cam_SetFlagNoTargetParsing] *********** [4, 3, 0]*/
    CFast_fn_vSetUltraOperatorPersoRef(12);
    CFast_CallProcedure_Static( 1268 ) ;

/* [Op : ..] ********** [3, 1, 0]*/

/* [Proc : Cam_SetFlagNoObstacle] *********** [4, 3, 0]*/
    CFast_fn_vSetUltraOperatorPersoRef(12);
    CFast_CallProcedure_Static( 1271 ) ;

/* [Op : ..] ********** [1, 1, 0]*/

/* [Proc : Cam_ForceNormalState] *********** [2, 1, 0]*/
    CFast_fn_vSetUltraOperatorPersoRef(12);
    CFast_CallProcedure_Static( 1274 ) ;

/* [Meta : ExecuteAction] ********** [1, 1, 0]*/
    CFast_CallMetaActionInit_Static( 1275 ) ;
    p_stLocalMind0->CFast_lCmpMetaAction = 1;
label1 :
    if ( CFast_CallMetaAction(1) & (C_DefaultMetaActionNotFinished)) {
      return ;
    }
    p_stLocalMind0->CFast_lCmpMetaAction = 0;

/* [Proc : ACT_ImposeVitesseZ] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 1277 ) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 551 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      return ;
    }
    LocalCFast_fn_vSetDsgVarInteger(8, 2) ;
    LocalCFast_fn_vSetDsgVarFloat(26, 0) ;
    LocalCFast_fn_vSetDsgVarFloat(27, 0) ;
    LocalCFast_fn_vSetDsgVarFloat(28, -2) ;
  }
/* [EndTree] ************ [0]*/

/* [Cond : =] ********** [2, 2, 1]*/
  if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 8)))) == 7 ) {
    LocalCFast_fn_vSetDsgVarBoolean(86, 1) ;
    LocalCFast_fn_vSetDsgVarFloat(26, LocalCFast_fn_p_stGetDsgVarVector(11)->xX) ;
    LocalCFast_fn_vSetDsgVarFloat(27, LocalCFast_fn_p_stGetDsgVarVector(11)->xY) ;
    LocalCFast_fn_vSetDsgVarFloat(28, LocalCFast_fn_p_stGetDsgVarVector(11)->xZ) ;
    LocalCFast_fn_vSetDsgVarBoolean(14, 0) ;
    CFast_YLT_RaymanModel_Sbr_55 ( ) ;
/* [MacroRef : 0] ********** [0]*/
    LocalCFast_fn_vSetDsgVar0To255(9, 11) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 929 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      return ;
    }

/* [Proc : MEC_FixeGravite] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 1279 ) ;

/* [Proc : EnvoieRequeteSon] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 1281 ) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 578 ) ;
    CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    return ;
  }
/* [EndTree] ************ [0]*/

/* [Cond : =] ********** [2, 2, 1]*/
  if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 8)))) == 8 ) {
    LocalCFast_fn_vSetDsgVarFloat(50, MTH_M_xFloatToReal(32767.00000f)) ;

/* [Proc : COL_TraiteCollisionTraversee] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 785 ) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 774 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      return ;
    }
    LocalCFast_fn_vSetDsgVar0To255(9, 25) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 787 ) ;
    CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    return ;
  }
/* [EndTree] ************ [0]*/

/* [Cond : =] ********** [2, 2, 1]*/
  if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 8)))) == 9 ) {

/* [Proc : OMBRE_Affichage] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 1283 ) ;

/* [Proc : ChangeActionForce] *********** [1, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 1285 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      return ;
    }

/* [Proc : MEC_ActiveCollerAuxPlateformes] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 1287 ) ;
    LocalCFast_fn_vSetDsgVar0To255(9, 100) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 1289 ) ;
    CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    return ;
  }
/* [EndTree] ************ [0]*/

/* [Cond : =] ********** [2, 2, 1]*/
  if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 8)))) == 10 ) {
    LocalCFast_fn_vSetDsgVar0To255(9, 21) ;

/* [Proc : OMBRE_Affichage] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 1283 ) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 1292 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      return ;
    }

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 1294 ) ;
    CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    return ;
  }
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement YLT_Desactive
 */
void CFast_YLT_RaymanModel_Cmp_YLT_Desactive (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : <>] ********** [2, 2, 1]*/
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) != 100 ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 1297 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      return ;
    }

/* [Proc : MEC_ActiveCollerAuxPlateformes] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 1287 ) ;

/* [Proc : ChangeMonComportementReflexe] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 1260 ) ;
    LocalCFast_fn_vSetDsgVar0To255(9, 100) ;
  }
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement YLT_EntreDeux
 */
void CFast_YLT_RaymanModel_Cmp_YLT_EntreDeux (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  if ( ! ( gcGlobAleat & 0x3 ) )
  {

/* [Cond : >] ********** [2, 2, 1]*/
    if ( MTH_M_bGreater(MTH_M_xLongToReal((*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 75))))), (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 82))))) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 1299 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }

/* [Proc : ChangeMonComportement] *********** [1, 1, 0]*/
      CFast_CallProcedure_Static( 1301 ) ;
      CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
      return ;
    }
  }
/* [EndTree] ************ [0]*/
  if ( ! ( gcGlobAleat & 0x3 ) )
  {

/* [Op : _] ********** [2, 1, 2]*/
    CFast_CallOperator2_Static(1303) ;

/* [Cond : <] ********** [2, 2, 1]*/
    if ( MTH_M_bLess(MTH_M_xLongToReal((*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 75))))), M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 1305 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }

/* [Proc : ChangeMonComportement] *********** [1, 1, 0]*/
      CFast_CallProcedure_Static( 1307 ) ;
      CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
      return ;
    }
  }
/* [EndTree] ************ [0]*/

/* [Cond : EstDansAction] ********** [1, 1, 1]*/
  if ( !( CFast_CallCondition_Static(1309) ) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 1311 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      return ;
    }
  }
/* [EndTree] ************ [0]*/
  CFast_YLT_RaymanModel_Sbr_56 ( ) ;
/* [MacroRef : 0] ********** [0]*/
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement YLT_EntreDeuxAvance
 */
void CFast_YLT_RaymanModel_Cmp_YLT_EntreDeuxAvance (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  if ( ! ( gcGlobAleat & 0x3 ) )
  {

/* [Op : _] ********** [2, 1, 2]*/
    CFast_CallOperator2_Static(1303) ;

/* [Cond : <] ********** [2, 2, 1]*/
    if ( MTH_M_bLess(MTH_M_xLongToReal((*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 75))))), M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 1305 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }

/* [Proc : ChangeMonComportement] *********** [1, 1, 0]*/
      CFast_CallProcedure_Static( 1307 ) ;
      CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
      return ;
    }
  }
/* [EndTree] ************ [0]*/
  if ( ! ( gcGlobAleat & 0x3 ) )
  {

/* [Cond : <] ********** [2, 2, 1]*/
    if ( MTH_M_bLess(MTH_M_xLongToReal((*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 75))))), (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 83))))) ) {

/* [Proc : ChangeMonComportement] *********** [1, 1, 0]*/
      CFast_CallProcedure_Static( 1313 ) ;
      CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
      return ;
    }
  }
/* [EndTree] ************ [0]*/
  CFast_YLT_RaymanModel_Sbr_56 ( ) ;
/* [MacroRef : 0] ********** [0]*/
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement YLT_EntreDeuxRecul
 */
void CFast_YLT_RaymanModel_Cmp_YLT_EntreDeuxRecul (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  if ( ! ( gcGlobAleat & 0x3 ) )
  {

/* [Cond : >] ********** [2, 2, 1]*/
    if ( MTH_M_bGreater(MTH_M_xLongToReal((*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 75))))), (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 82))))) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 1299 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }

/* [Proc : ChangeMonComportement] *********** [1, 1, 0]*/
      CFast_CallProcedure_Static( 1301 ) ;
      CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
      return ;
    }
  }
/* [EndTree] ************ [0]*/
  if ( ! ( gcGlobAleat & 0x3 ) )
  {

/* [Op : _] ********** [2, 1, 2]*/
    CFast_CallOperator2_Static(1315) ;

/* [Cond : >] ********** [2, 2, 1]*/
    if ( MTH_M_bGreater(MTH_M_xLongToReal((*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 75))))), M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ) {

/* [Proc : ChangeMonComportement] *********** [1, 1, 0]*/
      CFast_CallProcedure_Static( 1313 ) ;
      CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
      return ;
    }
  }
/* [EndTree] ************ [0]*/
  CFast_YLT_RaymanModel_Sbr_56 ( ) ;
/* [MacroRef : 0] ********** [0]*/
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement CHG_RaymanPaf
 */
void CFast_YLT_RaymanModel_Cmp_CHG_RaymanPaf (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  switch(p_stLocalMind0->CFast_lCmpMetaAction) {
  case 1 : goto label1 ;
  case 2 : goto label2 ;
  }
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 120)))) ) {

/* [Proc : EnvoieRequeteSon] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 200 ) ;

/* [Proc : EnvoieRequeteSon] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 202 ) ;
  }
/* [EndTree] ************ [0]*/

/* [Cond : =] ********** [2, 2, 1]*/
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 4 ) {

/* [Proc : EnvoieRequeteSon] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 1317 ) ;

/* [Proc : EnvoieRequeteSon] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 1319 ) ;
  }
/* [EndTree] ************ [0]*/

/* [Func : COL_LitTypeDeCollisionneur] ********** [0, 0, 1]*/
  CFast_CallFunction1_Static( 335 ) ;
  LocalCFast_fn_vSetDsgVarInteger(69, M_GetSetParam_lValue(CFast_g_a_stParam+1)) ;

/* [Func : COL_LitVecteurDeCollisionneur] ********** [1, 1, 1]*/
  CFast_CallFunction1_Static( 1321 ) ;
  LocalCFast_fn_vSetDsgVarVector(70, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;

/* [Vector] *********** [5, 3, 1]*/
  CFast_CallVector1_Static (188) ;

/* [Proc : COL_ChangeVecteurDeCollisionneur] *********** [3, 3, 0]*/
    M_p_stVectorInterpret(p_stPseudoTree+672) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
  CFast_CallProcedure_Static( 669 ) ;

/* [Cond : COL_CollisionneurTouche] ********** [0, 0, 1]*/
  if ( CFast_CallCondition_Static(334) ) {

/* [nerienfaire()] *********** [0, 0, 0]*/
  }
/* [EndTree] ************ [0]*/

/* [Proc : ZON_FixeTailleZDMSphere] *********** [2, 2, 0]*/
  CFast_CallProcedure_Static( 409 ) ;

/* [Keyword : Moi] ********** [0, 0, 1]*/

/* [Vector] *********** [5, 3, 2]*/
  CFast_CallVector2_Static (438) ;

/* [Proc : ZON_FixePositionZDM] *********** [3, 3, 0]*/
    M_p_stVectorInterpret(p_stPseudoTree+897) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
  CFast_CallProcedure_Static( 894 ) ;

/* [Cond : =] ********** [2, 2, 1]*/
  if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 69)))) == 56 ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 1297 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      return ;
    }

/* [Op : .] ********** [2, 2, 0]*/

/* [Cond : ObjetValide] ********** [3, 1, 1]*/
    M_eCondIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Condition][0]) = (tdeCondId)49 ;

/* [Op : .] ********** [0, 2, 0]*/
    M_SetTypeInterpret(&CFast_g_a_stPseudoTree[1][1], E_ti_Operator);
    M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[1][1]) = (tdeOperatorId)12 ;
    CFast_memcpy ( 1, 2, 15) ;
    CFast_memcpy ( 1, 3, 79) ;
    long1 = CFast_CallCondition_NoStatic( ) ;
    if ( long1 ) {

/* [Op : .] ********** [4, 2, 0]*/

/* [Op : ..] ********** [6, 1, 0]*/

/* [Proc : Cam_ChangeTgtPerso] *********** [7, 4, 0]*/
      M_eProcedureIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Procedure][0]) = (tdeProcedureId)469 ;
      M_SetTypeInterpret(&CFast_g_a_stPseudoTree[4][1], E_ti_Constant);
      M_lValueInterpret(&CFast_g_a_stPseudoTree[4][1]) = 1 ;
      M_SetTypeInterpret(&CFast_g_a_stPseudoTree[4][2], E_ti_Constant);
      M_lValueInterpret(&CFast_g_a_stPseudoTree[4][2]) = 1 ;

/* [Op : .] ********** [0, 2, 0]*/
      M_SetTypeInterpret(&CFast_g_a_stPseudoTree[4][3], E_ti_Operator);
      M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[4][3]) = (tdeOperatorId)12 ;
      CFast_memcpy ( 4, 4, 15) ;
      CFast_memcpy ( 4, 5, 79) ;

/* [Op : ..] ********** [0, 1, 0]*/
      CFast_fn_vSetUltraOperatorPersoRef(12);
      CFast_CallProcedure_NoStatic( ) ;

/* [Op : ..] ********** [1, 1, 0]*/

/* [Proc : Cam_ForceBestPos] *********** [2, 1, 0]*/
      CFast_fn_vSetUltraOperatorPersoRef(12);
      CFast_CallProcedure_Static( 910 ) ;

/* [Op : .] ********** [2, 2, 0]*/

/* [Proc : MortDuJoueurAvecRepositionnement] *********** [4, 2, 0]*/
      M_eProcedureIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Procedure][0]) = (tdeProcedureId)92 ;

/* [Op : .] ********** [0, 2, 0]*/
      M_SetTypeInterpret(&CFast_g_a_stPseudoTree[4][1], E_ti_Operator);
      M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[4][1]) = (tdeOperatorId)12 ;
      CFast_memcpy ( 4, 2, 15) ;
      CFast_memcpy ( 4, 3, 79) ;
      CFast_memcpy ( 4, 4, 12) ;
      CFast_CallProcedure_NoStatic( ) ;
    }
    else {

/* [Proc : MortDuJoueur] *********** [0, 0, 0]*/
      CFast_CallProcedure_Static( 233 ) ;
    }
  }
/* [EndTree] ************ [0]*/

/* [Keyword : Moi] ********** [0, 0, 1]*/

/* [Func : COL_LitReelDeCollisionneur] ********** [2, 1, 3]*/
  CFast_CallFunction3_Static( 1323 ) ;
  M_GetSetParam_lValue(&CFast_g_a_stParam[2]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[3])) ;
  M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [1, 1, 2]*/

/* [Proc : ACT_EnlevePointsDeVie] *********** [2, 2, 0]*/
    M_lValueInterpret(p_stPseudoTree+1327) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
  CFast_CallProcedure_Static( 1325 ) ;

/* [Cond : <] ********** [2, 2, 1]*/
  if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 69)))) < 50 ) {

/* [Keyword : Moi] ********** [0, 0, 3]*/

/* [Func : ACT_LitPointsDeVie] ********** [1, 1, 2]*/
    CFast_CallFunction2_Static( 230 ) ;

/* [Cond : <=] ********** [2, 2, 1]*/
      M_lValueInterpret(p_stPseudoTree+1329) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
    if ( CFast_CallCondition_Static(1328) ) {
      LocalCFast_fn_vSetDsgVarInteger(69, 52) ;
    }
    else {

/* [Op : ..] ********** [8, 1, 0]*/

/* [Proc : PAD_LitJoyAnalogiqueModeMario] *********** [9, 8, 0]*/
      CFast_fn_vSetUltraOperatorPersoRef(12);
      CFast_CallProcedure_Static( 818 ) ;
    }
  }
  else {
    LocalCFast_fn_vSetDsgVarBoolean(73, 0) ;
  }
/* [EndTree] ************ [0]*/

/* [Keyword : Moi] ********** [0, 0, 2]*/

/* [Func : ACT_LitPointsDeVie] ********** [1, 1, 1]*/
  CFast_CallFunction1_Static( 230 ) ;
  long1 = M_GetSetParam_lValue(&CFast_g_a_stParam[1]);
  if ( long1 ) {
    LocalCFast_fn_vSetDsgVarBoolean(113, 1) ;

/* [Cond : <] ********** [3, 2, 1]*/
    if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 69)))) < 50 ) {
      LocalCFast_fn_vSetDsgVarInteger(84, 3000) ;

/* [Proc : ACT_ActivationTransparence] *********** [2, 1, 0]*/
      CFast_CallProcedure_Static( 1331 ) ;
    }
    CFast_YLT_RaymanModel_Sbr_57 ( ) ;
/* [MacroRef : 0] ********** [1]*/
  }
  else {

/* [Keyword : Moi] ********** [1, 0, 1]*/

/* [Proc : ACT_ReinitPointsDeVie] *********** [2, 1, 0]*/
    CFast_CallProcedure_Static( 898 ) ;

/* [Keyword : Moi] ********** [1, 0, 1]*/

/* [Keyword : Moi] ********** [2, 0, 6]*/

/* [Func : ACT_LitPointsDeVieMax] ********** [3, 1, 5]*/
    CFast_CallFunction5_Static( 1333 ) ;

/* [Op : *] ********** [4, 2, 4]*/
      M_lValueInterpret(p_stPseudoTree+1336) = M_GetSetParam_lValue(CFast_g_a_stParam+5);
    CFast_CallOperator4_Static(1335) ;

/* [Keyword : Moi] ********** [3, 0, 6]*/

/* [Func : ACT_LitPointsDeVie] ********** [4, 1, 5]*/
    CFast_CallFunction5_Static( 230 ) ;

/* [Func : Math_MaximumReel] ********** [4, 2, 3]*/
      M_lValueInterpret(p_stPseudoTree+1339) = M_GetSetParam_lValue(CFast_g_a_stParam+4);
      M_lValueInterpret(p_stPseudoTree+1340) = M_GetSetParam_lValue(CFast_g_a_stParam+5);
    CFast_CallFunction3_Static( 1338 ) ;
    M_GetSetParam_lValue(&CFast_g_a_stParam[2]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[3])) ;
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [2, 1, 2]*/

/* [Proc : ACT_FixePointsDeVieInit] *********** [3, 2, 0]*/
      M_lValueInterpret(p_stPseudoTree+1343) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
    CFast_CallProcedure_Static( 1341 ) ;

/* [Keyword : Moi] ********** [1, 0, 1]*/

/* [Proc : ACT_FixePointsDeVie] *********** [3, 2, 0]*/
    CFast_CallProcedure_Static( 1344 ) ;
    LocalCFast_fn_vSetDsgVarBoolean(113, 0) ;
    CFast_YLT_RaymanModel_Sbr_58 ( ) ;
/* [MacroRef : 0] ********** [1]*/
    LocalCFast_fn_vSetDsgVarInteger(84, -1) ;
  }
/* [EndTree] ************ [1]*/

/* [Op : .] ********** [3, 2, 0]*/

/* [Func : ACT_LitNombreDeBooleensDansTableau] ********** [6, 3, 1]*/
  M_eFuncIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Function][0]) = (tdeFuncId)249 ;

/* [Op : .] ********** [1, 2, 0]*/
  M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][1], E_ti_Operator);
  M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[3][1]) = (tdeOperatorId)12 ;
  CFast_memcpy ( 3, 2, 15) ;
  CFast_memcpy ( 3, 3, 16) ;
  M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][4], E_ti_Constant);
  M_lValueInterpret(&CFast_g_a_stPseudoTree[3][4]) = 962 ;
  M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][5], E_ti_Constant);
  M_lValueInterpret(&CFast_g_a_stPseudoTree[3][5]) = 963 ;
  CFast_CallFunction1_NoStatic( ) ;
  long1 = M_GetSetParam_lValue(&CFast_g_a_stParam[1]);
  if ( !long1 ) {

/* [Proc : FixeVisuelGMTChrome] *********** [4, 2, 0]*/
    CFast_CallProcedure_Static( 1347 ) ;

/* [Proc : FixeVisuelGMTChrome] *********** [4, 2, 0]*/
    CFast_CallProcedure_Static( 1350 ) ;

/* [Proc : FixeNoImageVisuelGMT] *********** [4, 2, 0]*/
    CFast_CallProcedure_Static( 1353 ) ;

/* [Proc : FixeNoImageVisuelGMT] *********** [4, 2, 0]*/
    CFast_CallProcedure_Static( 1356 ) ;
  }
/* [EndTree] ************ [2]*/

/* [Cond : =] ********** [4, 2, 1]*/
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 100 ) {

/* [Cond : <] ********** [4, 2, 1]*/
    if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 69)))) < 50 ) {

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [4, 2, 0]*/
      CFast_CallProcedure_Static( 1289 ) ;
      CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
      return ;
    }
  }
/* [EndTree] ************ [2]*/

/* [Cond : =] ********** [4, 2, 1]*/
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 21 ) {

/* [Op : ..] ********** [5, 1, 0]*/

/* [Proc : ACT_ChangeCustomBit] *********** [6, 3, 0]*/
    CFast_fn_vSetUltraOperatorPersoVar(61);
    CFast_CallProcedure_Static( 1359 ) ;

/* [Cond : <] ********** [4, 2, 1]*/
    if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 69)))) < 50 ) {

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [4, 2, 0]*/
      CFast_CallProcedure_Static( 1294 ) ;
      CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
      return ;
    }
  }
  else {

/* [Proc : HIER_ControlePlatforme] *********** [3, 1, 0]*/
    CFast_CallProcedure_Static( 1216 ) ;
  }
/* [EndTree] ************ [2]*/

/* [Cond : =] ********** [4, 2, 2]*/
  long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 22 ? 1 : 0;
  if ( !long1 ) {

/* [Cond : =] ********** [4, 2, 3]*/
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 27 ? 1 : 0;
  }
  if ( long1 ) {

/* [Proc : MEC_DesactiveMecaAccrochage] *********** [2, 0, 0]*/
    CFast_CallProcedure_Static( 1362 ) ;

/* [Cond : <] ********** [4, 2, 1]*/
    if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 69)))) < 50 ) {

/* [Cond : =] ********** [4, 2, 1]*/
      if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 22 ) {
        LocalCFast_fn_vSetDsgVarFloat(36, MTH_M_xFloatToReal(5.00000f)) ;

/* [Func : COL_VecteurNormalCollision] ********** [2, 0, 1]*/
        CFast_CallFunction1_Static( 255 ) ;
        LocalCFast_fn_vSetDsgVarVector(39, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
      }
      else {
        LocalCFast_fn_vSetDsgVarBoolean(45, 0) ;
        LocalCFast_fn_vSetDsgVarFloat(36, MTH_M_xFloatToReal(8.00000f)) ;

/* [Func : ACT_ViseePerso] ********** [2, 0, 2]*/
        CFast_CallFunction2_Static( 12 ) ;
        MTH3D_M_vNegVector(&stVector0,&M_GetSetParam_stVectorValue(CFast_g_a_stParam+2)) ;
        LocalCFast_fn_vSetDsgVarVector(39, &stVector0) ;
      }

/* [Op : .Z] ********** [3, 1, 2]*/
      CFast_CallOperator2_Static( 804 ) ;
      M_GetSetParam_xValue(&CFast_g_a_stParam[1]) = MTH_M_xMax(M_GetSetParam_xValue(&CFast_g_a_stParam[2]),MTH_M_xFloatToReal(1.000000f));
      M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Float;

/* [Math_ : Math_MaximumReel] ********** [2, 2, 1]*/
      (LocalCFast_fn_p_stGetDsgVarVector(39))->xZ= M_GetSetParam_xValue(CFast_g_a_stParam+1) ;
      if (MTH3D_M_bIsNullVector(((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 39))))) {
        MTH3D_M_vCopyVector(&M_GetSetParam_stVectorValue(&CFast_g_a_stParam[2]), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 39))));
      } else {
        MTH3D_M_vNormalizeVector(&M_GetSetParam_stVectorValue(&CFast_g_a_stParam[2]), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 39))));
      }
      M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Vector;
      M_GetSetParam_xValue(&CFast_g_a_stParam[4]) = MTH3D_M_xNormVector(((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 70))));
      M_GetSetParam_Type(&CFast_g_a_stParam[4]) = E_vt_Float;
      M_GetSetParam_xValue(&CFast_g_a_stParam[3]) = MTH_M_xMax(M_GetSetParam_xValue(&CFast_g_a_stParam[4]),(*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 36)))));
      M_GetSetParam_Type(&CFast_g_a_stParam[3]) = E_vt_Float;

/* [Math_ : Math_MaximumReel] ********** [3, 2, 3]*/
      MTH3D_M_vMulScalarVector(&stVector0, M_GetSetParam_xValue(CFast_g_a_stParam+3),&M_GetSetParam_stVectorValue(CFast_g_a_stParam+2)) ;
      LocalCFast_fn_vSetDsgVarVector(70, &stVector0) ;
    }
  }
/* [EndTree] ************ [2]*/

/* [Proc : ChangeMonComportementReflexe] *********** [3, 1, 0]*/
  CFast_CallProcedure_Static( 1260 ) ;
  LocalCFast_fn_vSetDsgVarBoolean(58, 1) ;
  LocalCFast_fn_vSetDsgVarInteger(24, 0) ;
  LocalCFast_fn_vSetDsgVar0To255(87, 0) ;

/* [Cond : =] ********** [4, 2, 3]*/
  long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 7 ? 1 : 0;
  if ( !long1 ) {

/* [Cond : =] ********** [4, 2, 4]*/
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 19 ? 1 : 0;
  }
  if ( !long1 ) {

/* [Cond : =] ********** [4, 2, 3]*/
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 8 ? 1 : 0;
  }
  if ( long1 ) {

/* [Cond : ObjetValide] ********** [3, 1, 1]*/
    if ( CFast_CallCondition_Static(660) ) {

/* [Vector] *********** [7, 3, 1]*/
      CFast_CallVector1_Static (1363) ;

/* [Op : ..] ********** [6, 1, 0]*/

/* [Proc : COL_ChangeVecteurDeCollisionneur] *********** [7, 4, 0]*/
      CFast_fn_vSetUltraOperatorPersoVar(60);
        M_p_stVectorInterpret(p_stPseudoTree+672) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
      CFast_CallProcedure_Static( 669 ) ;

/* [Op : ..] ********** [5, 1, 0]*/

/* [Proc : ACT_ChangeCustomBit] *********** [6, 3, 0]*/
      CFast_fn_vSetUltraOperatorPersoVar(60);
      CFast_CallProcedure_Static( 662 ) ;
    }
  }
/* [EndTree] ************ [2]*/

/* [Func : ACT_ViseePerso] ********** [2, 0, 1]*/
  CFast_CallFunction1_Static( 12 ) ;
  LocalCFast_fn_vSetDsgVarVector(39, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 73)))) ) {

/* [Cond : =] ********** [4, 2, 3]*/
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 25 ? 1 : 0;
    if ( !long1 ) {

/* [Cond : =] ********** [4, 2, 5]*/
      long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 22 ? 1 : 0;
      if ( !long1 ) {

/* [Cond : =] ********** [4, 2, 6]*/
        long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 20 ? 1 : 0;
      }
    }
    if ( !long1 ) {

/* [Cond : =] ********** [4, 2, 4]*/
      long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 23 ? 1 : 0;
      if ( !long1 ) {

/* [Cond : =] ********** [4, 2, 5]*/
        long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 24 ? 1 : 0;
      }
    }
    if ( !long1 ) {
      MTH3D_M_vNegVector(&stVector0,LocalCFast_fn_p_stGetDsgVarVector(70)) ;
      LocalCFast_fn_vSetDsgVarVector(39, &stVector0) ;
    }
  }
/* [EndTree] ************ [2]*/

/* [Cond : =] ********** [4, 2, 2]*/
  long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 25 ? 1 : 0;
  if ( !long1 ) {

/* [Cond : =] ********** [4, 2, 3]*/
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 20 ? 1 : 0;
  }
  if ( long1 ) {

/* [Vector] *********** [5, 3, 1]*/
    CFast_CallVector1_Static (176) ;

/* [Proc : ACT_ReorientePersoAvecOffset] *********** [6, 4, 0]*/
      M_p_stVectorInterpret(p_stPseudoTree+1368) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
    CFast_CallProcedure_Static( 1367 ) ;

/* [Meta : Temps_AttenteFigee] ********** [3, 1, 0]*/
    CFast_CallMetaActionInit_Static( 1214 ) ;
    p_stLocalMind0->CFast_lCmpMetaAction = 1;
label1 :
    if ( CFast_CallMetaAction(0) & (C_DefaultMetaActionNotFinished)) {
      return ;
    }
    p_stLocalMind0->CFast_lCmpMetaAction = 0;
  }
  else {

/* [Vector] *********** [5, 3, 1]*/
    CFast_CallVector1_Static (176) ;

/* [Proc : ACT_ReorientePerso] *********** [5, 3, 0]*/
      M_p_stVectorInterpret(p_stPseudoTree+1373) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
    CFast_CallProcedure_Static( 1372 ) ;
  }
/* [EndTree] ************ [2]*/

/* [Cond : =] ********** [4, 2, 2]*/
  long1 = (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 69)))) == 0 ? 1 : 0;
  if ( !long1 ) {

/* [Cond : =] ********** [4, 2, 3]*/
    long1 = (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 69)))) == 3 ? 1 : 0;
  }
  if ( long1 ) {

/* [Cond : <=] ********** [4, 2, 1]*/
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) <= 9 ) {
      (LocalCFast_fn_p_stGetDsgVarVector(70))->xZ= MTH_M_xFloatToReal(0.00000f) ;
      LocalCFast_fn_vSetDsgVarInteger(24, 0) ;

/* [Proc : ChangeAction] *********** [3, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 1376 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [4, 2, 0]*/
      CFast_CallProcedure_Static( 1378 ) ;
      CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
      return ;
    }
    else {

/* [Cond : =] ********** [4, 2, 1]*/
      if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 25 ) {

/* [Proc : ChangeAction] *********** [3, 1, 0]*/
        fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
        CFast_CallProcedure_Static( 1381 ) ;
        if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
          return ;
        }

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [4, 2, 0]*/
        CFast_CallProcedure_Static( 1383 ) ;
        CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
        return ;
      }
      else {

/* [Cond : =] ********** [4, 2, 2]*/
        long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 23 ? 1 : 0;
        if ( !long1 ) {

/* [Cond : =] ********** [4, 2, 3]*/
          long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 24 ? 1 : 0;
        }
        if ( long1 ) {

/* [Proc : ChangeAction] *********** [3, 1, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 1386 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            return ;
          }

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [4, 2, 0]*/
          CFast_CallProcedure_Static( 1388 ) ;
          CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
          return ;
        }
        else {

/* [Proc : ChangeAction] *********** [3, 1, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 719 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            return ;
          }

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [4, 2, 0]*/
          CFast_CallProcedure_Static( 1391 ) ;
          CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
          return ;
        }
      }
    }
  }
/* [EndTree] ************ [2]*/

/* [Cond : =] ********** [4, 2, 1]*/
  if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 69)))) == 1 ) {

/* [Cond : <=] ********** [4, 2, 1]*/
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) <= 9 ) {
      MTH3D_M_vSetVectorElements(&stVector0, MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(0.00000f)) ;
      LocalCFast_fn_vSetDsgVarVector(70, &stVector0) ;

/* [Proc : ChangeAction] *********** [3, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 1394 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }

/* [Func : COL_LitReelDeCollisionneur] ********** [3, 1, 3]*/
      CFast_CallFunction3_Static( 1396 ) ;
      M_Full_GetSetParam_Float(&CFast_g_a_stParam[2], MTH_M_xMul(M_GetSetParam_xValue(&CFast_g_a_stParam[3]),MTH_M_xFloatToReal(1000.000000f)));
      M_GetSetParam_lValue(&CFast_g_a_stParam[1]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
      M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [2, 1, 1]*/
      LocalCFast_fn_vSetDsgVarInteger(24, M_GetSetParam_lValue(CFast_g_a_stParam+1)) ;

/* [Func : Temps_Obtenir] ********** [2, 0, 1]*/
      CFast_CallFunction1_Static( 430 ) ;
      LocalCFast_fn_vSetDsgVarInteger(38, M_GetSetParam_ulValue(CFast_g_a_stParam+1)) ;

/* [Proc : ChangeMonComportement] *********** [3, 1, 0]*/
      CFast_CallProcedure_Static( 1398 ) ;
      CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
      return ;
    }
    else {

/* [Vector] *********** [6, 3, 3]*/
      CFast_CallVector3_Static (665) ;

/* [Op : v+] ********** [4, 2, 2]*/
        M_p_stVectorInterpret(p_stPseudoTree+444) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+3);
      CFast_CallOperator2_Static( 442 ) ;

/* [Vector] *********** [6, 3, 3]*/
      CFast_CallVector3_Static (1400) ;

/* [Func : COL_NormaleCollision] ********** [5, 3, 1]*/
        M_p_stVectorInterpret(p_stPseudoTree+1405) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
        M_p_stVectorInterpret(p_stPseudoTree+1406) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+3);
      CFast_CallFunction1_Static( 1404 ) ;
      LocalCFast_fn_vSetDsgVarVector(39, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;

/* [Vector] *********** [6, 3, 3]*/
      CFast_CallVector3_Static (176) ;

/* [Func : VEC_ProduitScalaire] ********** [4, 2, 2]*/
        M_p_stVectorInterpret(p_stPseudoTree+1410) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+3);
      CFast_CallFunction2_Static( 1408 ) ;

/* [Cond : <] ********** [4, 2, 1]*/
      if ( MTH_M_bLess(M_GetSetParam_xValue(&CFast_g_a_stParam[2]), MTH_M_xFloatToReal(0.707000f)) ) {
        LocalCFast_fn_vSetDsgVarInteger(69, 0) ;

/* [Cond : =] ********** [4, 2, 1]*/
        if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 25 ) {

/* [Proc : ActiveCanal] *********** [3, 1, 0]*/
          CFast_CallProcedure_Static( 808 ) ;

/* [Proc : ActiveCanal] *********** [3, 1, 0]*/
          CFast_CallProcedure_Static( 810 ) ;

/* [Proc : ActiveCanal] *********** [3, 1, 0]*/
          CFast_CallProcedure_Static( 812 ) ;

/* [Proc : ActiveCanal] *********** [3, 1, 0]*/
          CFast_CallProcedure_Static( 814 ) ;

/* [Proc : ChangeAction] *********** [3, 1, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 1381 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            return ;
          }

/* [Proc : ChangeMonComportement] *********** [3, 1, 0]*/
          CFast_CallProcedure_Static( 1411 ) ;
          CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
          return ;
        }
        else {

/* [Proc : ChangeAction] *********** [3, 1, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 719 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            return ;
          }

/* [Proc : ChangeMonComportement] *********** [3, 1, 0]*/
          CFast_CallProcedure_Static( 1413 ) ;
          CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
          return ;
        }
      }
      else {

/* [Vector] *********** [7, 3, 3]*/
        CFast_CallVector3_Static (665) ;

/* [Op : v+] ********** [5, 2, 2]*/
          M_p_stVectorInterpret(p_stPseudoTree+444) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+3);
        CFast_CallOperator2_Static( 442 ) ;

/* [Vector] *********** [7, 3, 3]*/
        CFast_CallVector3_Static (1400) ;

/* [Func : COL_PointCollision] ********** [6, 3, 1]*/
          M_p_stVectorInterpret(p_stPseudoTree+1416) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
          M_p_stVectorInterpret(p_stPseudoTree+1417) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+3);
        CFast_CallFunction1_Static( 1415 ) ;

/* [Proc : ACT_FixePositionPerso] *********** [4, 2, 0]*/
          M_p_stVectorInterpret(p_stPseudoTree+1421) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
        CFast_CallProcedure_Static( 1419 ) ;
        MTH3D_M_vSetVectorElements(&stVector0, MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(0.00000f)) ;
        LocalCFast_fn_vSetDsgVarVector(70, &stVector0) ;

/* [Proc : ChangeAction] *********** [3, 1, 0]*/
        fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
        CFast_CallProcedure_Static( 1394 ) ;
        if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
          return ;
        }

/* [Func : COL_LitReelDeCollisionneur] ********** [3, 1, 3]*/
        CFast_CallFunction3_Static( 1396 ) ;
        M_Full_GetSetParam_Float(&CFast_g_a_stParam[2], MTH_M_xMul(M_GetSetParam_xValue(&CFast_g_a_stParam[3]),MTH_M_xFloatToReal(1000.000000f)));
        M_GetSetParam_lValue(&CFast_g_a_stParam[1]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
        M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [2, 1, 1]*/
        LocalCFast_fn_vSetDsgVarInteger(24, M_GetSetParam_lValue(CFast_g_a_stParam+1)) ;

/* [Func : Temps_Obtenir] ********** [2, 0, 1]*/
        CFast_CallFunction1_Static( 430 ) ;
        LocalCFast_fn_vSetDsgVarInteger(38, M_GetSetParam_ulValue(CFast_g_a_stParam+1)) ;

/* [Proc : ChangeMonComportement] *********** [3, 1, 0]*/
        CFast_CallProcedure_Static( 1398 ) ;
        CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
        return ;
      }
    }
  }
/* [EndTree] ************ [2]*/

/* [Cond : =] ********** [4, 2, 1]*/
  if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 69)))) == 2 ) {

/* [Proc : ChangeAction] *********** [3, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 1422 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      return ;
    }

/* [Cond : <=] ********** [4, 2, 1]*/
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) <= 9 ) {

/* [Op : :=] ********** [4, 2, 0]*/
      CFast_CallOperator0_Static ( 1424 ) ;
      (LocalCFast_fn_p_stGetDsgVarVector(70))->xZ= MTH_M_xFloatToReal(0.00000f) ;
    }
    else {

/* [Cond : =] ********** [4, 2, 1]*/
      if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 25 ) {

/* [Op : :=] ********** [4, 2, 0]*/
        CFast_CallOperator0_Static ( 1427 ) ;
        LocalCFast_fn_vSetDsgVarInteger(84, (LocalCFast_fn_lGetDsgVarInteger(84)*2)) ;
      }
      else {

/* [Op : :=] ********** [4, 2, 0]*/
        CFast_CallOperator0_Static ( 1430 ) ;
      }
    }
    LocalCFast_fn_vSetDsgVarInteger(69, LocalCFast_fn_lGetDsgVar0To255(9)) ;

/* [Proc : ChangeMonComportement] *********** [3, 1, 0]*/
    CFast_CallProcedure_Static( 1433 ) ;
    CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    return ;
  }
/* [EndTree] ************ [2]*/

/* [Cond : =] ********** [4, 2, 1]*/
  if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 69)))) == 5 ) {
    LocalCFast_fn_vSetDsgVarInteger(8, 5) ;

/* [Func : VEC_VecteurRelatif] ********** [3, 1, 1]*/
    CFast_CallFunction1_Static( 1435 ) ;
    LocalCFast_fn_vSetDsgVarVector(70, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
    LocalCFast_fn_vSetDsgVarFloat(26, LocalCFast_fn_p_stGetDsgVarVector(70)->xX) ;
    LocalCFast_fn_vSetDsgVarFloat(27, LocalCFast_fn_p_stGetDsgVarVector(70)->xY) ;
    LocalCFast_fn_vSetDsgVarFloat(28, LocalCFast_fn_p_stGetDsgVarVector(70)->xZ) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [4, 2, 0]*/
    CFast_CallProcedure_Static( 1437 ) ;
    CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    return ;
  }
/* [EndTree] ************ [2]*/
  LocalCFast_fn_vSetDsgVarBoolean(106, 0) ;

/* [Cond : =] ********** [4, 2, 1]*/
  if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 69)))) == 53 ) {

/* [Func : HIER_MonPere] ********** [2, 0, 2]*/
    CFast_CallFunction2_Static( 173 ) ;

/* [Cond : ObjetValide] ********** [3, 1, 1]*/
      M_lValueInterpret(p_stPseudoTree+214) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
    if ( CFast_CallCondition_Static(213) ) {

/* [Proc : ChangeAction] *********** [3, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 719 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }
    }
    else {

/* [Proc : ChangeAction] *********** [3, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 1440 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }

/* [Proc : EnvoieRequeteAmbiance] *********** [3, 1, 0]*/
      CFast_CallProcedure_Static( 1442 ) ;
    }
    LocalCFast_fn_vSetDsgVarFloat(36, MTH_M_xFloatToReal(1500.00000f)) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [4, 2, 0]*/
    CFast_CallProcedure_Static( 1444 ) ;
label2 :
    return ;
  }
/* [EndTree] ************ [2]*/

/* [Cond : =] ********** [4, 2, 1]*/
  if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 69)))) == 54 ) {
    LocalCFast_fn_vSetDsgVarFloat(36, MTH_M_xFloatToReal(1500.00000f)) ;

/* [Proc : ChangeAction] *********** [3, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 719 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      return ;
    }

/* [Proc : ACT_ImposeVitesseZ] *********** [3, 1, 0]*/
    CFast_CallProcedure_Static( 1447 ) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [4, 2, 0]*/
    CFast_CallProcedure_Static( 1444 ) ;
    CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    return ;
  }
/* [EndTree] ************ [2]*/

/* [Keyword : Moi] ********** [2, 0, 2]*/

/* [Func : ACT_LitPointsDeVie] ********** [3, 1, 1]*/
  CFast_CallFunction1_Static( 230 ) ;
  long1 = M_GetSetParam_lValue(&CFast_g_a_stParam[1]);
  if ( long1 ) {
    LocalCFast_fn_vSetDsgVarInteger(69, 52) ;
  }
/* [EndTree] ************ [3]*/

/* [Cond : =] ********** [5, 2, 1]*/
  if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 69)))) == 52 ) {

/* [Proc : ChangeAction] *********** [4, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 1449 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      return ;
    }
    CFast_YLT_RaymanModel_Sbr_59 ( ) ;
/* [MacroRef : 0] ********** [3]*/
  }
/* [EndTree] ************ [3]*/

/* [Cond : =] ********** [5, 2, 2]*/
  long1 = (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 69)))) == 50 ? 1 : 0;
  if ( !long1 ) {

/* [Cond : =] ********** [5, 2, 3]*/
    long1 = (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 69)))) == 57 ? 1 : 0;
  }
  if ( long1 ) {

/* [Cond : =] ********** [5, 2, 1]*/
    if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 69)))) == 50 ) {

/* [Proc : ActiveCanal] *********** [4, 1, 0]*/
      CFast_CallProcedure_Static( 808 ) ;

/* [Proc : ActiveCanal] *********** [4, 1, 0]*/
      CFast_CallProcedure_Static( 810 ) ;

/* [Proc : DesactiveCanal] *********** [4, 1, 0]*/
      CFast_CallProcedure_Static( 1143 ) ;

/* [Proc : DesactiveCanal] *********** [4, 1, 0]*/
      CFast_CallProcedure_Static( 1145 ) ;

/* [Proc : ChangeAction] *********** [4, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 1451 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }
    }
    else {

/* [Proc : ChangeAction] *********** [4, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 1453 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }
    }
  }
/* [EndTree] ************ [3]*/

/* [Cond : =] ********** [5, 2, 1]*/
  if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 69)))) == 51 ) {

/* [Proc : ChangeAction] *********** [4, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 1453 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      return ;
    }
  }
/* [EndTree] ************ [3]*/

/* [Cond : =] ********** [5, 2, 1]*/
  if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 69)))) == 55 ) {

/* [Proc : ChangeAction] *********** [4, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 1455 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      return ;
    }
  }
/* [EndTree] ************ [3]*/

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [5, 2, 0]*/
  CFast_CallProcedure_Static( 1457 ) ;
  CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
  return ;
/* [EndTree] ************ [3]*/
}

/*
 * Model : YLT_RaymanModel Comportement CHG_RayPafAir
 */
void CFast_YLT_RaymanModel_Cmp_CHG_RayPafAir (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Func : VEC_VecteurRelatif] ********** [1, 1, 1]*/
  CFast_CallFunction1_Static( 1435 ) ;
  LocalCFast_fn_vSetDsgVarVector(70, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
  LocalCFast_fn_vSetDsgVarFloat(26, LocalCFast_fn_p_stGetDsgVarVector(70)->xX) ;
  LocalCFast_fn_vSetDsgVarFloat(27, LocalCFast_fn_p_stGetDsgVarVector(70)->xY) ;

/* [Cond : =] ********** [2, 2, 3]*/
  long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 11 ? 1 : 0;
  if ( !long1 ) {

/* [Cond : =] ********** [2, 2, 4]*/
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 12 ? 1 : 0;
  }
  if ( !long1 ) {

/* [Cond : =] ********** [2, 2, 3]*/
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 20 ? 1 : 0;
  }
  if ( long1 ) {
    LocalCFast_fn_vSetDsgVarFloat(28, 6) ;
    if ( CFast_YLT_RaymanModel_Sbr_60 ( ) )
      return ;
/* [MacroRef : 0] ********** [0]*/
  }
  else {

/* [Cond : =] ********** [2, 2, 2]*/
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 23 ? 1 : 0;
    if ( !long1 ) {

/* [Cond : =] ********** [2, 2, 3]*/
      long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 24 ? 1 : 0;
    }
    if ( long1 ) {
      LocalCFast_fn_vSetDsgVar0To255(9, 28) ;
      LocalCFast_fn_vSetDsgVarFloat(28, 0) ;
      LocalCFast_fn_vSetDsgVarFloat(27, 0) ;
      LocalCFast_fn_vSetDsgVarFloat(26, 0) ;
      LocalCFast_fn_vSetDsgVarInteger(8, 4) ;

/* [Proc : ChangeMonComportement] *********** [1, 1, 0]*/
      CFast_CallProcedure_Static( 454 ) ;
      CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
      return ;
    }
    else {

/* [Cond : =] ********** [2, 2, 2]*/
      long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 22 ? 1 : 0;
      if ( !long1 ) {

/* [Cond : =] ********** [2, 2, 3]*/
        long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 27 ? 1 : 0;
      }
      if ( long1 ) {
        LocalCFast_fn_vSetDsgVarFloat(28, LocalCFast_fn_p_stGetDsgVarVector(70)->xZ) ;
        if ( CFast_YLT_RaymanModel_Sbr_60 ( ) )
          return ;
/* [MacroRef : 0] ********** [0]*/
      }
      else {
        if ( CFast_YLT_RaymanModel_Sbr_61 ( ) )
          return ;
/* [MacroRef : 0] ********** [0]*/
      }
    }
  }
/* [EndTree] ************ [0]*/
  CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;
  CFast_fn_vSetDsgVar0To255(M_CFast_ucGetRealIndice(13), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),3) ;
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement CHG_RayPafEau
 */
void CFast_YLT_RaymanModel_Cmp_CHG_RayPafEau (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : ANI_TestFinAnim] ********** [0, 0, 1]*/
  if ( CFast_CallCondition_Static(27) ) {
    LocalCFast_fn_vSetDsgVarInteger(8, 8) ;

/* [Proc : ChangeMonComportement] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 454 ) ;
    CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    return ;
  }
/* [EndTree] ************ [0]*/
  CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;
  CFast_fn_vSetDsgVar0To255(M_CFast_ucGetRealIndice(13), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement CHG_RayPafEcrase
 */
void CFast_YLT_RaymanModel_Cmp_CHG_RayPafEcrase (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  if ( ! ( gcGlobAleat & 0x1 ) )
  {

/* [Cond : TempsDepasse] ********** [2, 2, 1]*/
    if ( CFast_CallCondition_Static(1460) ) {

/* [Cond : COL_CollisionneurTouche] ********** [0, 0, 1]*/
      if ( !( CFast_CallCondition_Static(334) ) ) {

/* [Op : ..] ********** [8, 1, 0]*/

/* [Proc : PAD_LitJoyAnalogiqueModeMario] *********** [9, 8, 0]*/
        CFast_fn_vSetUltraOperatorPersoRef(12);
        CFast_CallProcedure_Static( 818 ) ;
        if ( CFast_YLT_RaymanModel_Sbr_51 ( ) )
          return ;
/* [MacroRef : 0] ********** [0]*/
      }
    }
  }
/* [EndTree] ************ [0]*/

/* [Proc : ACT_ImposeVitesseAbsoluXYZ] *********** [3, 3, 0]*/
  CFast_CallProcedure_Static( 1463 ) ;
  CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement YLT_PafSol
 */
void CFast_YLT_RaymanModel_Cmp_YLT_PafSol (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  LocalCFast_fn_vSetDsgVarInteger(38, 1) ;
  if ( CFast_YLT_RaymanModel_Sbr_32 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  LocalCFast_fn_vSetDsgVar0To255(87, 0) ;

/* [Cond : ACT_TestFinAction] ********** [0, 0, 1]*/
  if ( CFast_CallCondition_Static(2) ) {
    LocalCFast_fn_vSetDsgVarInteger(84, 3000) ;

/* [Proc : MEC_RestaureParametresCarte] *********** [0, 0, 0]*/
    CFast_CallProcedure_Static( 1249 ) ;
    if ( CFast_YLT_RaymanModel_Sbr_51 ( ) )
      return ;
/* [MacroRef : 0] ********** [0]*/
  }
/* [EndTree] ************ [0]*/
  if ( !( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 24)))) ) ) {

/* [Cond : VEC_VecteurNul] ********** [1, 1, 1]*/
    if ( !( CFast_CallCondition_Static(1467) ) ) {

/* [Proc : ACT_ImposeVecteurVitesseAbsolu] *********** [1, 1, 0]*/
      CFast_CallProcedure_Static( 1469 ) ;

/* [Proc : MEC_ActiveInertie] *********** [1, 1, 0]*/
      CFast_CallProcedure_Static( 1471 ) ;
    }
    else {

/* [Cond : >=] ********** [2, 2, 1]*/
      if ( CFast_CallCondition_Static(1473) ) {

/* [Proc : MEC_ActiveInertie] *********** [1, 1, 0]*/
        CFast_CallProcedure_Static( 1471 ) ;

/* [Proc : MEC_FixeInertie] *********** [3, 3, 0]*/
        CFast_CallProcedure_Static( 1476 ) ;
      }
    }
  }
/* [EndTree] ************ [0]*/
  CFast_fn_vSetDsgVar0To255(M_CFast_ucGetRealIndice(13), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),3) ;
  CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;

/* [Func : Temps_LitDT] ********** [0, 0, 2]*/
  CFast_CallFunction2_Static( 9 ) ;
  LocalCFast_fn_vSetDsgVarInteger(24, (LocalCFast_fn_lGetDsgVarInteger(24)+MTH_M_xRealToLong(M_GetSetParam_xValue(CFast_g_a_stParam+2)))) ;
  LocalCFast_fn_vSetDsgVar0To255(9, 28) ;
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement YLT_TonneauFuseeComport
 */
void CFast_YLT_RaymanModel_Cmp_YLT_TonneauFuseeComport (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : BoutonJusteAppuye] ********** [1, 1, 3]*/
  long1 = (long)IPT_fn_bIsJustValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+30)) ? 1 : 0;
if ( long1 ) {
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16))));
  }
  if ( !long1 ) {

/* [Cond : =] ********** [2, 2, 4]*/
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) == 8 ? 1 : 0;
    if ( !long1 ) {

/* [Cond : ObjetValide] ********** [1, 1, 6]*/
      long1 =!CFast_CallCondition_Static(660) ;
    }
  }
  if ( long1 ) {
    if ( CFast_YLT_RaymanModel_Sbr_62 ( ) )
      return ;
/* [MacroRef : 0] ********** [0]*/
  }
/* [EndTree] ************ [0]*/
  long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16))));
if ( long1 ) {
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 10))));
  }
  if ( long1 ) {

/* [Cond : >] ********** [3, 2, 1]*/
    long2 = MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 78)))), MTH_M_xFloatToReal(90.000000f)) ? 1 : 0;
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[1], long2) ;

/* [Op : :=] ********** [2, 2, 0]*/
      M_lValueInterpret(p_stPseudoTree+869) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
    CFast_CallOperator0_Static ( 867 ) ;

/* [Vector] *********** [3, 3, 2]*/
    CFast_CallVector2_Static (176) ;

/* [Func : VEC_VecteurRelatif] ********** [1, 1, 1]*/
      M_p_stVectorInterpret(p_stPseudoTree+181) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
    CFast_CallFunction1_Static( 180 ) ;

/* [Func : Temps_LitDT] ********** [1, 0, 4]*/
    CFast_CallFunction4_Static( 9 ) ;
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 34)))) ) {
      M_GetSetParam_Type(&CFast_g_a_stParam[5]) = E_vt_Float;
      M_GetSetParam_xValue(&CFast_g_a_stParam[5]) = MTH_M_xFloatToReal(-1600.000000f) ;
    } else {
      M_GetSetParam_Type(&CFast_g_a_stParam[5]) = E_vt_Float;
      M_GetSetParam_xValue(&CFast_g_a_stParam[5]) = MTH_M_xFloatToReal(-4444.000000f) ;
    }
    M_Full_GetSetParam_Float(&CFast_g_a_stParam[3], MTH_M_xDiv(M_GetSetParam_xValue(&CFast_g_a_stParam[4]),M_GetSetParam_xValue(&CFast_g_a_stParam[5])));
    M_Full_GetSetParam_Float(&CFast_g_a_stParam[2], MTH_M_xMul(M_GetSetParam_xValue(&CFast_g_a_stParam[3]),MTH_M_xLongToReal((*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 74)))))));

/* [Proc : ACT_TournePersoAutourDeVecteur] *********** [2, 2, 0]*/
      M_p_stVectorInterpret(p_stPseudoTree+1481) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
      M_lValueInterpret(p_stPseudoTree+1482) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
    CFast_CallProcedure_Static( 1480 ) ;

/* [Func : Temps_LitDT] ********** [0, 0, 3]*/
    CFast_CallFunction3_Static( 9 ) ;
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 34)))) ) {
      M_GetSetParam_Type(&CFast_g_a_stParam[4]) = E_vt_Float;
      M_GetSetParam_xValue(&CFast_g_a_stParam[4]) = MTH_M_xFloatToReal(-2353.000000f) ;
    } else {
      M_GetSetParam_Type(&CFast_g_a_stParam[4]) = E_vt_Float;
      M_GetSetParam_xValue(&CFast_g_a_stParam[4]) = MTH_M_xFloatToReal(-4444.000000f) ;
    }
    M_Full_GetSetParam_Float(&CFast_g_a_stParam[2], MTH_M_xDiv(M_GetSetParam_xValue(&CFast_g_a_stParam[3]),M_GetSetParam_xValue(&CFast_g_a_stParam[4])));
    M_Full_GetSetParam_Float(&CFast_g_a_stParam[1], MTH_M_xMul(M_GetSetParam_xValue(&CFast_g_a_stParam[2]),MTH_M_xLongToReal((*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 75)))))));

/* [Proc : ACT_TournePersoAutourDeX] *********** [1, 1, 0]*/
      M_lValueInterpret(p_stPseudoTree+1484) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
    CFast_CallProcedure_Static( 1483 ) ;
  }
/* [EndTree] ************ [0]*/

/* [Vector] *********** [3, 3, 1]*/
  CFast_CallVector1_Static (1485) ;

/* [Proc : ACT_ImposeVecteurVitesse] *********** [1, 1, 0]*/
    M_p_stVectorInterpret(p_stPseudoTree+1490) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
  CFast_CallProcedure_Static( 1489 ) ;

/* [Cond : ACT_EstDejaTraite] ********** [1, 1, 1]*/
  if ( CFast_CallCondition_Static(1200) ) {

/* [Keyword : Personne] ********** [0, 0, 1]*/
    CFast_CallKeyword_Static(232, 1) ;

/* [Op : ..] ********** [2, 1, 0]*/

/* [Proc : HIER_ForcePere] *********** [3, 2, 0]*/
    CFast_fn_vSetUltraOperatorPersoVar(60);
        CFast_CallProcedure_Static( 1202 ) ;

/* [Proc : ACT_ForceTraitementPerso] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 1491 ) ;
  }
/* [EndTree] ************ [0]*/
  CFast_fn_vSetDsgVar0To255(M_CFast_ucGetRealIndice(13), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),3) ;
  CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;
  LocalCFast_fn_vSetDsgVar0To255(9, 19) ;

/* [Op : ..] ********** [8, 1, 0]*/

/* [Proc : PAD_LitJoyAnalogiqueModeMario] *********** [9, 8, 0]*/
  CFast_fn_vSetUltraOperatorPersoRef(12);
  CFast_CallProcedure_Static( 1493 ) ;
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement YLT_Vide
 */
void CFast_YLT_RaymanModel_Cmp_YLT_Vide (void)
{
}

/*
 * Model : YLT_RaymanModel Comportement BNT_RayPafAttendLaMort
 */
void CFast_YLT_RaymanModel_Cmp_BNT_RayPafAttendLaMort (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  CFast_fn_vSetDsgVar0To255(M_CFast_ucGetRealIndice(13), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),3) ;
  CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;

/* [Proc : OMBRE_Affichage] *********** [1, 1, 0]*/
  CFast_CallProcedure_Static( 1283 ) ;
  LocalCFast_fn_vSetDsgVar0To255(9, 28) ;
  if ( !( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 113)))) ) ) {

/* [Keyword : Moi] ********** [0, 0, 1]*/

/* [Proc : ACT_FixePointsDeVie] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 1344 ) ;
  }
/* [EndTree] ************ [0]*/

/* [Cond : ACT_TestFinAction] ********** [0, 0, 1]*/
  if ( CFast_CallCondition_Static(2) ) {

/* [Cond : EstDansAction] ********** [1, 1, 1]*/
    if ( !( CFast_CallCondition_Static(1501) ) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 1449 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }
      CFast_YLT_RaymanModel_Sbr_59 ( ) ;
/* [MacroRef : 0] ********** [0]*/
    }
    else {
      if ( CFast_YLT_RaymanModel_Sbr_63 ( ) )
        return ;
/* [MacroRef : 0] ********** [0]*/
    }
  }
/* [EndTree] ************ [0]*/

/* [Cond : EstDansAction] ********** [1, 1, 1]*/
  if ( CFast_CallCondition_Static(1503) ) {

/* [Proc : ACT_ProposeVitesseAbsoluZ] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 1505 ) ;
  }
/* [EndTree] ************ [0]*/
  if ( ! ( gcGlobAleat & 0x7 ) )
  {

/* [Cond : EstDansAction] ********** [1, 1, 1]*/
    if ( CFast_CallCondition_Static(1507) ) {
      POS_fn_vGetTranslationVector(HIE_fn_hGetSuperObjectMatrix(g_hSuperObjectPerso), &stVector0); ;
      LocalCFast_fn_vSetDsgVarVector(39, &stVector0) ;

/* [Func : COL_LitPointCollision2] ********** [1, 1, 1]*/
      CFast_CallFunction1_Static( 512 ) ;
      LocalCFast_fn_vSetDsgVarVector(40, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
      (LocalCFast_fn_p_stGetDsgVarVector(39))->xZ= LocalCFast_fn_p_stGetDsgVarVector(40)->xZ ;
      M_GetSetParam_xValue(&CFast_g_a_stParam[3]) = RND_fn_xGetRealRandomValue(0,MTH_M_xFloatToReal(-1.000000f),MTH_M_xFloatToReal(1.000000f));
      M_GetSetParam_Type(&CFast_g_a_stParam[3]) = E_vt_Float;

/* [Math_ : Math_ReelAuHasard] ********** [0, 2, 3]*/
      M_GetSetParam_xValue(&CFast_g_a_stParam[4]) = RND_fn_xGetRealRandomValue(0,MTH_M_xFloatToReal(-1.000000f),MTH_M_xFloatToReal(1.000000f));
      M_GetSetParam_Type(&CFast_g_a_stParam[4]) = E_vt_Float;

/* [Math_ : Math_ReelAuHasard] ********** [1, 2, 4]*/
      M_GetSetParam_xValue(&CFast_g_a_stParam[5]) = RND_fn_xGetRealRandomValue(0,MTH_M_xFloatToReal(-0.100000f),MTH_M_xFloatToReal(0.100000f));
      M_GetSetParam_Type(&CFast_g_a_stParam[5]) = E_vt_Float;

/* [Math_ : Math_ReelAuHasard] ********** [2, 2, 5]*/
      MTH3D_M_vSetVectorElements(&stVector0, M_GetSetParam_xValue(CFast_g_a_stParam+3), M_GetSetParam_xValue(CFast_g_a_stParam+4), M_GetSetParam_xValue(CFast_g_a_stParam+5)) ;
      MTH3D_M_vAddVector(LocalCFast_fn_p_stGetDsgVarVector(39),LocalCFast_fn_p_stGetDsgVarVector(39),&stVector0) ;

/* [Vector] *********** [5, 3, 1]*/
      CFast_CallVector1_Static (616) ;

/* [Proc : LanceAGO] *********** [5, 5, 0]*/
        M_p_stVectorInterpret(p_stPseudoTree+1030) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
      CFast_CallProcedure_Static( 1027 ) ;

/* [Vector] *********** [5, 3, 1]*/
      CFast_CallVector1_Static (626) ;

/* [Proc : LanceAGO] *********** [5, 5, 0]*/
        M_p_stVectorInterpret(p_stPseudoTree+1036) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
      CFast_CallProcedure_Static( 1033 ) ;

/* [Vector] *********** [5, 3, 1]*/
      CFast_CallVector1_Static (188) ;

/* [Proc : LanceAGO] *********** [5, 5, 0]*/
        M_p_stVectorInterpret(p_stPseudoTree+1042) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
      CFast_CallProcedure_Static( 1039 ) ;

/* [Vector] *********** [5, 3, 1]*/
      CFast_CallVector1_Static (188) ;

/* [Proc : LanceAGO] *********** [5, 5, 0]*/
        M_p_stVectorInterpret(p_stPseudoTree+1048) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
      CFast_CallProcedure_Static( 1045 ) ;
    }
  }
/* [EndTree] ************ [0]*/
  CFast_YLT_RaymanModel_Sbr_64 ( ) ;
/* [MacroRef : 0] ********** [0]*/
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement YLT_PafGi
 */
void CFast_YLT_RaymanModel_Cmp_YLT_PafGi (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : ACT_TestFinAction] ********** [0, 0, 1]*/
  if ( CFast_CallCondition_Static(2) ) {

/* [Proc : ChangeMonComportementReflexe] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 1509 ) ;
    if ( CFast_YLT_RaymanModel_Sbr_53 ( ) )
      return ;
/* [MacroRef : 0] ********** [0]*/
  }
/* [EndTree] ************ [0]*/

/* [Cond : >] ********** [2, 2, 2]*/
  long1 = MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 79)))), (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 82))))) ? 1 : 0;
  if ( !long1 ) {

/* [Cond : BoutonJusteAppuye] ********** [1, 1, 3]*/
    long1 = (long)IPT_fn_bIsJustValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+40)) ? 1 : 0;
  }
  if ( long1 ) {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
    if ( !( CFast_CallCondition_Static(418) ) ) {

/* [Proc : ChangeMonComportementReflexe] *********** [1, 1, 0]*/
      CFast_CallProcedure_Static( 1509 ) ;
      if ( CFast_YLT_RaymanModel_Sbr_53 ( ) )
        return ;
/* [MacroRef : 0] ********** [0]*/
    }
  }
/* [EndTree] ************ [0]*/
  CFast_fn_vSetDsgVar0To255(M_CFast_ucGetRealIndice(13), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),10) ;
  CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;
  LocalCFast_fn_vSetDsgVar0To255(9, 28) ;

/* [Func : Temps_LitDT] ********** [0, 0, 2]*/
  CFast_CallFunction2_Static( 9 ) ;
  LocalCFast_fn_vSetDsgVarInteger(24, (LocalCFast_fn_lGetDsgVarInteger(24)+MTH_M_xRealToLong(M_GetSetParam_xValue(CFast_g_a_stParam+2)))) ;
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))) ) {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(1.000000f) ;
  } else {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(0.000000f) ;
  }
  M_GetSetParam_lValue(&CFast_g_a_stParam[1]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
  M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [4, 1, 1]*/

/* [Op : ..] ********** [8, 1, 0]*/

/* [Proc : PAD_LitJoyAnalogiqueModeMario] *********** [9, 8, 0]*/
  CFast_fn_vSetUltraOperatorPersoRef(12);
    M_lValueInterpret(p_stPseudoTree+610) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
  CFast_CallProcedure_Static( 605 ) ;
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement YLT_ChuteInfinie
 */
void CFast_YLT_RaymanModel_Cmp_YLT_ChuteInfinie (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;
  CFast_fn_vSetDsgVar0To255(M_CFast_ucGetRealIndice(13), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),7) ;

/* [Cond : EstDansAction] ********** [1, 1, 1]*/
  if ( CFast_CallCondition_Static(1511) ) {

/* [Proc : ACT_ImposeVitesseY] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 1513 ) ;

/* [Cond : ACT_TestFinAction] ********** [0, 0, 1]*/
    if ( CFast_CallCondition_Static(2) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 1440 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }

/* [Proc : EnvoieRequeteAmbiance] *********** [1, 1, 0]*/
      CFast_CallProcedure_Static( 1442 ) ;
    }
  }
  else {

/* [Func : Temps_LitDT] ********** [0, 0, 2]*/
    CFast_CallFunction2_Static( 9 ) ;
    LocalCFast_fn_vSetDsgVarFloat(36, MTH_M_xSub(LocalCFast_fn_xGetDsgVarFloat(36),M_GetSetParam_xValue(CFast_g_a_stParam+2))) ;

/* [Cond : Col_CollisionAvecSol] ********** [0, 0, 2]*/
    long1 = CFast_CallCondition_Static(516) ;
    if ( !long1 ) {

/* [Func : HIER_MonPere] ********** [0, 0, 4]*/
      CFast_CallFunction4_Static( 173 ) ;

/* [Cond : ObjetValide] ********** [1, 1, 3]*/
        M_lValueInterpret(p_stPseudoTree+214) = M_GetSetParam_lValue(CFast_g_a_stParam+4);
      long1 = CFast_CallCondition_Static(213) ;
    }
    if ( long1 ) {

/* [Func : Temps_LitDT] ********** [0, 0, 2]*/
      CFast_CallFunction2_Static( 9 ) ;
      LocalCFast_fn_vSetDsgVarFloat(36, MTH_M_xSub(LocalCFast_fn_xGetDsgVarFloat(36),M_GetSetParam_xValue(CFast_g_a_stParam+2))) ;
    }

/* [Cond : <=] ********** [2, 2, 1]*/
    if ( MTH_M_bLessEqual((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 36)))), MTH_M_xFloatToReal(0.000000f)) ) {
      if ( CFast_YLT_RaymanModel_Sbr_63 ( ) )
        return ;
/* [MacroRef : 0] ********** [0]*/
    }
    else {
      LocalCFast_fn_vSetDsgVarFloat(37, MTH_M_xDiv(MTH_M_xAdd(LocalCFast_fn_xGetDsgVarFloat(36),MTH_M_xFloatToReal(100.00000f)),MTH_M_xAdd(MTH_M_xFloatToReal(1500.00000f),MTH_M_xFloatToReal(100.00000f)))) ;

/* [Vector] *********** [3, 3, 1]*/
      CFast_CallVector1_Static (1515) ;

/* [Proc : ACT_DeformePerso] *********** [1, 1, 0]*/
        M_p_stVectorInterpret(p_stPseudoTree+893) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
      CFast_CallProcedure_Static( 892 ) ;
    }

/* [Op : .Z] ********** [1, 1, 2]*/
    CFast_CallOperator2_Static( 974 ) ;

/* [Cond : <] ********** [2, 2, 1]*/
    if ( MTH_M_bLess(M_GetSetParam_xValue(&CFast_g_a_stParam[2]), MTH_M_xFloatToReal(-15.000000f)) ) {

/* [Proc : ACT_ImposeVitesseZ] *********** [1, 1, 0]*/
      CFast_CallProcedure_Static( 1519 ) ;

/* [Proc : MEC_FixeGravite] *********** [1, 1, 0]*/
      CFast_CallProcedure_Static( 1521 ) ;
    }

/* [Cond : ACT_TestFinAction] ********** [0, 0, 1]*/
    if ( CFast_CallCondition_Static(2) ) {

/* [Cond : EstDansAction] ********** [1, 1, 1]*/
      if ( CFast_CallCondition_Static(1523) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
        fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
        CFast_CallProcedure_Static( 1525 ) ;
        if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
          return ;
        }
        CFast_YLT_RaymanModel_Sbr_59 ( ) ;
/* [MacroRef : 0] ********** [0]*/
      }
    }
  }
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement YLT_SautImpulsion
 */
void CFast_YLT_RaymanModel_Cmp_YLT_SautImpulsion (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : >] ********** [2, 2, 1]*/
  if ( (*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 23)))) > 64 ) {
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 86)))) ) {
      LocalCFast_fn_vSetDsgVarFloat(93, MTH_M_xFloatToReal(8.00000f)) ;
    }
    else {
      LocalCFast_fn_vSetDsgVarFloat(93, MTH_M_xAdd(MTH_M_xFloatToReal(8.00000f),LocalCFast_fn_p_stGetDsgVarVector(22)->xZ)) ;
    }

/* [Op : .] ********** [2, 2, 0]*/

/* [Func : ACT_LitBooleenDansTableau] ********** [4, 2, 1]*/
    M_eFuncIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Function][0]) = (tdeFuncId)248 ;

/* [Op : .] ********** [0, 2, 0]*/
    M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][1], E_ti_Operator);
    M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[3][1]) = (tdeOperatorId)12 ;
    CFast_memcpy ( 3, 2, 15) ;
    CFast_memcpy ( 3, 3, 16) ;
    M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][4], E_ti_Constant);
    M_lValueInterpret(&CFast_g_a_stPseudoTree[3][4]) = 1095 ;
    CFast_CallFunction1_NoStatic( ) ;
    LocalCFast_fn_vSetDsgVarBoolean(106,  ۟(CFast_g_a_stParam+1)) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 1255 ) ;
    CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    return ;
  }
/* [EndTree] ************ [0]*/

/* [Cond : Col_CollisionAvecPlafond] ********** [0, 0, 1]*/
  if ( CFast_CallCondition_Static(837) ) {
    LocalCFast_fn_vSetDsgVarInteger(23, LocalCFast_fn_lGetDsgVarInteger(90)) ;
  }
/* [EndTree] ************ [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_43 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_35 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_47 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  long2 = (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 109)))); /* oups */

/* [Cond : Et] ********** [2, 2, 3]*/
  long1 &= long2;
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[3], long1) ;
  if (M_lValueInterpret(&CFast_g_a_stParam[3])) {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 109)))) ;
  } else {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(1.000000f) ;
  }
  M_Full_GetSetParam_Float(&CFast_g_a_stParam[1], MTH_M_xMul(MTH_M_xFloatToReal(12.000000f),M_GetSetParam_xValue(&CFast_g_a_stParam[2])));

/* [Op : .Z:=] ********** [2, 2, 0]*/
    M_lValueInterpret(p_stPseudoTree+978) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
  CFast_CallOperator0_Static( 976 ) ;
  CFast_YLT_RaymanModel_Sbr_49 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_48 ( ) ;
/* [MacroRef : 0] ********** [0]*/

/* [Op : .Z] ********** [1, 1, 1]*/
  CFast_CallOperator1_Static( 979 ) ;

/* [Proc : ACT_ImposeVitesseZ] *********** [1, 1, 0]*/
    M_lValueInterpret(p_stPseudoTree+982) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
  CFast_CallProcedure_Static( 981 ) ;
  CFast_fn_vSetDsgVar0To255(M_CFast_ucGetRealIndice(13), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),3) ;
  CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;

/* [Func : Temps_LitDT] ********** [0, 0, 2]*/
  CFast_CallFunction2_Static( 9 ) ;
  LocalCFast_fn_vSetDsgVarInteger(24, (LocalCFast_fn_lGetDsgVarInteger(24)+MTH_M_xRealToLong(M_GetSetParam_xValue(CFast_g_a_stParam+2)))) ;

/* [Func : Temps_LitDT] ********** [0, 0, 2]*/
  CFast_CallFunction2_Static( 9 ) ;
  LocalCFast_fn_vSetDsgVarInteger(23, (LocalCFast_fn_lGetDsgVarInteger(23)+MTH_M_xRealToLong(M_GetSetParam_xValue(CFast_g_a_stParam+2)))) ;
  CFast_YLT_RaymanModel_Sbr_50 ( ) ;
/* [MacroRef : 0] ********** [0]*/
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement BNT_DansLeSiegeRusse
 */
void CFast_YLT_RaymanModel_Cmp_BNT_DansLeSiegeRusse (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : BoutonJusteAppuye] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsJustValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+40)) ) {

/* [Cond : >] ********** [2, 2, 1]*/
    if ( MTH_M_bGreater(MTH_M_xLongToReal((*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 24))))), MTH_M_xFloatToReal(333.000000f)) ) {
      LocalCFast_fn_vSetDsgVarFloat(19, 0) ;

/* [Func : GenereObjet] ********** [2, 2, 1]*/
      CFast_CallFunction1_Static( 1527 ) ;
      LocalCFast_fn_vSetDsgVarPersoWithEngine(60, M_GetSetParam_p_stEngineObjValue(CFast_g_a_stParam+1)) ;

/* [Proc : EnvoieRequeteSon] *********** [1, 1, 0]*/
      CFast_CallProcedure_Static( 1530 ) ;
    }
  }
/* [EndTree] ************ [0]*/

/* [Func : HIER_MonPere] ********** [0, 0, 1]*/
  CFast_CallFunction1_Static( 173 ) ;
  LocalCFast_fn_vSetDsgVarPersoWithEngine(42, M_GetSetParam_p_stEngineObjValue(CFast_g_a_stParam+1)) ;

/* [Cond : ObjetValide] ********** [1, 1, 1]*/
  if ( CFast_CallCondition_Static(364) ) {

/* [Func : MOD_ConversionEnModule] ********** [2, 1, 1]*/
    CFast_CallFunction1_Static( 1532 ) ;

/* [Proc : ACT_PlaceSurModuleDePerso] *********** [2, 2, 0]*/
      M_lValueInterpret(p_stPseudoTree+1536) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
    CFast_CallProcedure_Static( 1534 ) ;
  }
/* [EndTree] ************ [0]*/
  CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(122), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;
  CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;

/* [Func : Temps_LitDT] ********** [0, 0, 2]*/
  CFast_CallFunction2_Static( 9 ) ;
  LocalCFast_fn_vSetDsgVarInteger(24, (LocalCFast_fn_lGetDsgVarInteger(24)+MTH_M_xRealToLong(M_GetSetParam_xValue(CFast_g_a_stParam+2)))) ;
  LocalCFast_fn_vSetDsgVar0To255(9, 21) ;
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))) ) {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(1.000000f) ;
  } else {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(0.000000f) ;
  }
  M_GetSetParam_lValue(&CFast_g_a_stParam[1]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
  M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [4, 1, 1]*/

/* [Op : ..] ********** [8, 1, 0]*/

/* [Proc : PAD_LitJoyAnalogiqueModeMario] *********** [9, 8, 0]*/
  CFast_fn_vSetUltraOperatorPersoRef(12);
    M_lValueInterpret(p_stPseudoTree+610) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
  CFast_CallProcedure_Static( 605 ) ;
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement YLT_SautSommet
 */
void CFast_YLT_RaymanModel_Cmp_YLT_SautSommet (void)
{
  MTH3D_tdstVector stVector0;
  struct DNM_stDynamics *p_stDynam;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  switch(p_stLocalMind0->CFast_lCmpMetaAction) {
  case 1 : goto label1 ;
  case 2 : goto label2 ;
  }
  p_stDynam = fn_p_stDynamGetDynamicsSO(g_hSuperObjectPerso);
if (p_stDynam != NULL){
MTH3D_M_vCopyVector(&stVector0, DNM_M_pDynamicsGetPreviousSpeed(p_stDynam));}
else {MTH3D_M_vNullVector(&stVector0);} ;
  LocalCFast_fn_vSetDsgVarFloat(21, (&stVector0)->xZ) ;

/* [Cond : Col_PasDeCollision] ********** [0, 0, 1]*/
  if ( !( CFast_CallCondition_Static(247) ) ) {
    p_stLocalMind0->CFast_lCmpMetaAction = 1;
label1 :
label2 :
label3 :
    if ( CFast_YLT_RaymanModel_Sbr_40 ( ) )
      return ;
    p_stLocalMind0 -> CFast_lCmpMetaAction = 0 ;
/* [MacroRef : 0] ********** [0]*/

/* [Cond : >] ********** [2, 2, 2]*/
    long1 = MTH_M_bGreater(MTH_M_xLongToReal((*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 24))))), MTH_M_xFloatToReal(80.000000f)) ? 1 : 0;
if ( long1 ) {

/* [Cond : Col_CollisionAvecSol] ********** [0, 0, 4]*/
      long1 =!CFast_CallCondition_Static(516) ;
    }
    if ( long1 ) {
      CFast_YLT_RaymanModel_Sbr_42 ( ) ;
/* [MacroRef : 0] ********** [0]*/
    }
    LocalCFast_fn_vSetDsgVar_128To127(25, 0) ;
    p_stLocalMind0->CFast_lCmpMetaAction = 4;
label4 :
    if ( CFast_YLT_RaymanModel_Sbr_41 ( ) )
      return ;
    p_stLocalMind0 -> CFast_lCmpMetaAction = 0 ;
/* [MacroRef : 0] ********** [0]*/

/* [Cond : Col_CollisionAvecSol] ********** [0, 0, 3]*/
    long1 = CFast_CallCondition_Static(516) ;
if ( long1 ) {

/* [Cond : Col_ZDMCollisionAvecSol] ********** [1, 1, 5]*/
      long1 =!CFast_CallCondition_Static(80) ;
    }
    if ( long1 ) {

/* [Cond : >] ********** [2, 2, 3]*/
      long1 = MTH_M_bGreater(MTH_M_xLongToReal((*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 24))))), MTH_M_xFloatToReal(80.000000f)) ? 1 : 0;
    }
    if ( long1 ) {
      LocalCFast_fn_vSetDsgVarBoolean(97, 0) ;
      if ( CFast_YLT_RaymanModel_Sbr_30 ( ) )
        return ;
/* [MacroRef : 0] ********** [0]*/
    }
  }
/* [EndTree] ************ [0]*/

/* [Cond : <] ********** [2, 2, 1]*/
  if ( MTH_M_bLess((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 21)))), MTH_M_xFloatToReal(0.000000f)) ) {
    LocalCFast_fn_vSetDsgVarInteger(24, 0) ;
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 14)))) ) {

/* [Proc : MEC_FixeGravite] *********** [1, 1, 0]*/
      CFast_CallProcedure_Static( 198 ) ;
    }
    LocalCFast_fn_vSetDsgVar0To255(9, 13) ;
    LocalCFast_fn_vSetDsgVarBoolean(97, 0) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 204 ) ;
    CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    return ;
  }
/* [EndTree] ************ [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_43 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_35 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_44 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_45 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  if ( ! ( gcGlobAleat & 0x1 ) )
  {
    if ( !( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 96)))) ) ) {

/* [Cond : <] ********** [2, 2, 1]*/
      if ( MTH_M_bLess((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 21)))), (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 93))))) ) {
        if ( CFast_YLT_RaymanModel_Sbr_46 ( ) )
          return ;
/* [MacroRef : 0] ********** [0]*/
      }
    }
  }
/* [EndTree] ************ [0]*/
  CFast_YLT_RaymanModel_Sbr_47 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_48 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  CFast_YLT_RaymanModel_Sbr_49 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  CFast_fn_vSetDsgVar0To255(M_CFast_ucGetRealIndice(13), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),3) ;
  CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;
  LocalCFast_fn_vSetDsgVar0To255(9, 11) ;

/* [Cond : BoutonAppuye] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+27)) ) {
    LocalCFast_fn_vSetDsgVarInteger(38, 12) ;
    CFast_YLT_RaymanModel_Sbr_39 ( ) ;
/* [MacroRef : 0] ********** [0]*/
  }
/* [EndTree] ************ [0]*/

/* [Func : Temps_LitDT] ********** [0, 0, 2]*/
  CFast_CallFunction2_Static( 9 ) ;
  LocalCFast_fn_vSetDsgVarInteger(24, (LocalCFast_fn_lGetDsgVarInteger(24)+MTH_M_xRealToLong(M_GetSetParam_xValue(CFast_g_a_stParam+2)))) ;
  CFast_YLT_RaymanModel_Sbr_50 ( ) ;
/* [MacroRef : 0] ********** [0]*/
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement YLT_Varappe
 */
void CFast_YLT_RaymanModel_Cmp_YLT_Varappe (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  switch(p_stLocalMind0->CFast_lCmpMetaAction) {
  case 1 : goto label1 ;
  case 2 : goto label2 ;
  case 3 : goto label3 ;
  }

/* [Cond : BoutonJusteAppuye] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsJustValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+30)) ) {
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))) ) {

/* [Func : ACT_ViseePerso] ********** [0, 0, 2]*/
      CFast_CallFunction2_Static( 12 ) ;
      MTH3D_M_vMulScalarVector(&stVector0, MTH_M_xFloatToReal(-2.00000f),&M_GetSetParam_stVectorValue(CFast_g_a_stParam+2)) ;
      LocalCFast_fn_vSetDsgVarVector(94, &stVector0) ;
      LocalCFast_fn_vSetDsgVarFloat(30, MTH_M_xFloatToReal(8.00000f)) ;
      LocalCFast_fn_vSetDsgVarInteger(29, 0) ;
      LocalCFast_fn_vSetDsgVarInteger(23, 0) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 929 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }
      p_stLocalMind0->CFast_lCmpMetaAction = 1;
label1 :
      if ( CFast_YLT_RaymanModel_Sbr_36 ( ) )
        return ;
      p_stLocalMind0 -> CFast_lCmpMetaAction = 0 ;
/* [MacroRef : 0] ********** [0]*/
    }
  }
/* [EndTree] ************ [0]*/
  p_stLocalMind0->CFast_lCmpMetaAction = 2;
label2 :
label3 :
label4 :
  if ( CFast_YLT_RaymanModel_Sbr_40 ( ) )
    return ;
  p_stLocalMind0 -> CFast_lCmpMetaAction = 0 ;
/* [MacroRef : 0] ********** [0]*/

/* [Cond : MEC_MecaniqueBloque] ********** [0, 0, 1]*/
  if ( CFast_CallCondition_Static(1132) ) {

/* [Op : .Z] ********** [1, 1, 2]*/
    CFast_CallOperator2_Static( 979 ) ;

/* [Cond : >] ********** [2, 2, 1]*/
    if ( MTH_M_bGreater(M_GetSetParam_xValue(&CFast_g_a_stParam[2]), MTH_M_xFloatToReal(0.000000f)) ) {
      LocalCFast_fn_vSetDsgVarFloat(30, MTH_M_xFloatToReal(8.00000f)) ;
      LocalCFast_fn_vSetDsgVarInteger(29, 0) ;
      MTH3D_M_vSetVectorElements(&stVector0, MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(0.00000f)) ;
      LocalCFast_fn_vSetDsgVarVector(94, &stVector0) ;
      LocalCFast_fn_vSetDsgVarInteger(23, 0) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 929 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }
      p_stLocalMind0->CFast_lCmpMetaAction = 5;
label5 :
      if ( CFast_YLT_RaymanModel_Sbr_36 ( ) )
        return ;
      p_stLocalMind0 -> CFast_lCmpMetaAction = 0 ;
/* [MacroRef : 0] ********** [0]*/
    }

/* [Cond : Col_CollisionAvecSol] ********** [0, 0, 1]*/
    if ( CFast_CallCondition_Static(516) ) {
      LocalCFast_fn_vSetDsgVarInteger(24, 0) ;

/* [Op : ..] ********** [8, 1, 0]*/

/* [Proc : PAD_LitJoyAnalogiqueModeMario] *********** [9, 8, 0]*/
      CFast_fn_vSetUltraOperatorPersoRef(12);
      CFast_CallProcedure_Static( 818 ) ;
      if ( CFast_YLT_RaymanModel_Sbr_51 ( ) )
        return ;
/* [MacroRef : 0] ********** [0]*/
    }
    else {
      LocalCFast_fn_vSetDsgVarFloat(30, MTH_M_xFloatToReal(8.00000f)) ;
      LocalCFast_fn_vSetDsgVarInteger(29, 0) ;
      MTH3D_M_vSetVectorElements(&stVector0, MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(0.00000f)) ;
      LocalCFast_fn_vSetDsgVarVector(94, &stVector0) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 551 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }
      if ( CFast_YLT_RaymanModel_Sbr_19 ( ) )
        return ;
/* [MacroRef : 0] ********** [0]*/
    }
  }
/* [EndTree] ************ [0]*/

/* [Cond : >] ********** [2, 2, 1]*/
  if ( MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 78)))), (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 82))))) ) {
{
  struct DNM_stDynamics *p_stDynam;

  p_stDynam = fn_p_stDynamGetDynamicsSO(g_hSuperObjectPerso);
   if (p_stDynam != NULL)
    long1 = MTH_M_xRealToLong (MTH3D_M_xNormVector(DNM_M_pDynamicsGetPreviousSpeed(p_stDynam))) ;
  else
    long1 = MTH_C_ZERO ;
}
    if ( long1 ) {

/* [Func : VEC_VecteurRelatif] ********** [1, 1, 1]*/
      CFast_CallFunction1_Static( 587 ) ;
      LocalCFast_fn_vSetDsgVarVector(39, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
      if ( (*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 32)))) ) {

/* [Op : .X] ********** [1, 1, 0]*/

/* [Cond : =] ********** [4, 2, 4]*/
        long2 = (*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 32)))) == 1 ? 1 : 0;

/* [Cond : =] ********** [4, 2, 5]*/
        long3 = (*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 32)))) == 3 ? 1 : 0;

/* [Cond : Ou] ********** [2, 2, 3]*/
        long2 |= long3;
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[3], long2) ;
        if (M_lValueInterpret(&CFast_g_a_stParam[3])) {
          M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
          M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(0.900000f) ;
        } else {
          M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
          M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(1.100000f) ;
        }

/* [Op : *=] ********** [3, 2, 1]*/
        M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Operator][0]) = (tdeOperatorId)7 ;

/* [Op : .X] ********** [0, 1, 0]*/
        M_SetTypeInterpret(&CFast_g_a_stPseudoTree[2][1], E_ti_Operator);
        M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[2][1]) = (tdeOperatorId)13 ;
        M_SetTypeInterpret(&CFast_g_a_stPseudoTree[2][2], E_ti_DsgVarRef);
        M_lValueInterpret(&CFast_g_a_stPseudoTree[2][2]) = 39 ;
        M_SetTypeInterpret(&CFast_g_a_stPseudoTree[2][3], E_ti_Real);
        M_xValueInterpret(&CFast_g_a_stPseudoTree[2][3]) = M_GetSetParam_xValue(&CFast_g_a_stParam[2]) ;
        CFast_CallOperator1_NoStatic( ) ;
      }

/* [Op : .Z] ********** [1, 1, 3]*/
      CFast_CallOperator3_Static( 804 ) ;

/* [Op : .X] ********** [1, 1, 4]*/
      CFast_CallOperator4_Static( 553 ) ;
      if ( M_xValueInterpret(&CFast_g_a_stParam[3]) > M_xValueInterpret(&CFast_g_a_stParam[4]) ) {

/* [Op : .Z] ********** [1, 1, 6]*/
        CFast_CallOperator6_Static( 804 ) ;

/* [Op : .X] ********** [1, 1, 8]*/
        CFast_CallOperator8_Static( 553 ) ;

/* [Op : _] ********** [1, 1, 7]*/
          M_lValueInterpret(p_stPseudoTree+1538) = M_GetSetParam_lValue(CFast_g_a_stParam+8);
        CFast_CallOperator7_Static(1537) ;
        if ( M_xValueInterpret(&CFast_g_a_stParam[6]) > M_xValueInterpret(&CFast_g_a_stParam[7]) ) {
          M_GetSetParam_Type(&CFast_g_a_stParam[5]) = E_vt_Float;
          M_GetSetParam_xValue(&CFast_g_a_stParam[5]) = MTH_M_xLongToReal(1) ;
        } else {
          M_GetSetParam_Type(&CFast_g_a_stParam[5]) = E_vt_Float;
          M_GetSetParam_xValue(&CFast_g_a_stParam[5]) = MTH_M_xLongToReal(2) ;
        }
        M_xValueInterpret(&CFast_g_a_stParam[2]) = M_xValueInterpret(&CFast_g_a_stParam[5]);
      } else {

/* [Op : .X] ********** [1, 1, 7]*/
        CFast_CallOperator7_Static( 553 ) ;

/* [Op : .Z] ********** [1, 1, 9]*/
        CFast_CallOperator9_Static( 804 ) ;

/* [Op : _] ********** [1, 1, 8]*/
          M_lValueInterpret(p_stPseudoTree+1540) = M_GetSetParam_lValue(CFast_g_a_stParam+9);
        CFast_CallOperator8_Static(1539) ;
        if ( M_xValueInterpret(&CFast_g_a_stParam[7]) > M_xValueInterpret(&CFast_g_a_stParam[8]) ) {
          M_GetSetParam_Type(&CFast_g_a_stParam[6]) = E_vt_Float;
          M_GetSetParam_xValue(&CFast_g_a_stParam[6]) = MTH_M_xLongToReal(4) ;
        } else {
          M_GetSetParam_Type(&CFast_g_a_stParam[6]) = E_vt_Float;
          M_GetSetParam_xValue(&CFast_g_a_stParam[6]) = MTH_M_xLongToReal(3) ;
        }
      }
      M_GetSetParam_lValue(&CFast_g_a_stParam[1]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
      M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [1, 1, 1]*/
      LocalCFast_fn_vSetDsgVar_32768To32767(33, M_GetSetParam_lValue(CFast_g_a_stParam+1)) ;
    }
  }
  else {

/* [Cond : <] ********** [3, 2, 1]*/
    if ( MTH_M_bLess((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 78)))), (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 83))))) ) {
      LocalCFast_fn_vSetDsgVar_32768To32767(33, 0) ;
    }
  }
/* [EndTree] ************ [1]*/

/* [Cond : <>] ********** [3, 2, 1]*/
  if ( (*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 33)))) != (*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 32)))) ) {
    LocalCFast_fn_vSetDsgVar_32768To32767(32, LocalCFast_fn_lGetDsgVar_32768To32767(33)) ;

/* [Cond : >] ********** [3, 2, 1]*/
    if ( MTH_M_bGreater(MTH_M_xLongToReal((*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 33))))), MTH_M_xFloatToReal(2.000000f)) ) {

/* [Cond : =] ********** [3, 2, 1]*/
      if ( (*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 33)))) == 3 ) {

/* [Proc : ChangeAction] *********** [2, 1, 0]*/
        fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
        CFast_CallProcedure_Static( 1541 ) ;
        if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
          return ;
        }
      }
      else {

/* [Proc : ChangeAction] *********** [2, 1, 0]*/
        fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
        CFast_CallProcedure_Static( 1543 ) ;
        if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
          return ;
        }
      }
    }
    else {

/* [Cond : =] ********** [3, 2, 1]*/
      if ( (*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 33)))) == 1 ) {

/* [Proc : ChangeAction] *********** [2, 1, 0]*/
        fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
        CFast_CallProcedure_Static( 1545 ) ;
        if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
          return ;
        }
      }
      else {

/* [Cond : =] ********** [3, 2, 1]*/
        if ( (*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 33)))) == 2 ) {

/* [Proc : ChangeAction] *********** [2, 1, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 1547 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            return ;
          }
        }
        else {

/* [Proc : ChangeAction] *********** [2, 1, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 390 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            return ;
          }
        }
      }
    }
  }
/* [EndTree] ************ [1]*/

/* [Cond : EstDansAction] ********** [2, 1, 2]*/
  long2 = CFast_CallCondition_Static(1549) ;
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[2], long2) ;
  if (M_lValueInterpret(&CFast_g_a_stParam[2])) {
    M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[1]) = MTH_M_xFloatToReal(100.000000f) ;
  } else {
    M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[1]) = (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 78)))) ;
  }

/* [Proc : FixeFacteurVitesseAnimation] *********** [2, 1, 0]*/
    M_lValueInterpret(p_stPseudoTree+1552) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
  CFast_CallProcedure_Static( 1551 ) ;

/* [Cond : EstDansAction] ********** [2, 1, 2]*/
  long2 = CFast_CallCondition_Static(1549) ;
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[2], long2) ;
  if (M_lValueInterpret(&CFast_g_a_stParam[2])) {
    M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[1]) = MTH_M_xFloatToReal(2.750000f) ;
  } else {
    M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[1]) = MTH_M_xFloatToReal(1.500000f) ;
  }

/* [Proc : MEC_FixeLimiteVitesseVarappe] *********** [2, 1, 0]*/
    M_lValueInterpret(p_stPseudoTree+1554) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
  CFast_CallProcedure_Static( 1553 ) ;

/* [Cond : >] ********** [3, 2, 1]*/
  if ( MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 78)))), (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 82))))) ) {
    MTH3D_M_vMulScalarVector(&stVector0, MTH_M_xMul(MTH_M_xFloatToReal(6.00000f),MTH_M_xFloatToReal(0.01000f)),LocalCFast_fn_p_stGetDsgVarVector(76)) ;
    LocalCFast_fn_vSetDsgVarVector(31, &stVector0) ;

/* [Proc : ACT_ProposeVecteurVitesseAbsolu] *********** [2, 1, 0]*/
    CFast_CallProcedure_Static( 1555 ) ;
  }
/* [EndTree] ************ [1]*/

/* [Cond : EstDansAction] ********** [2, 1, 1]*/
  if ( !( CFast_CallCondition_Static(1549) ) ) {
    CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;
  }
/* [EndTree] ************ [1]*/
  CFast_fn_vSetDsgVar0To255(M_CFast_ucGetRealIndice(13), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),4) ;
  LocalCFast_fn_vSetDsgVar0To255(9, 22) ;

/* [Func : Temps_LitDT] ********** [1, 0, 2]*/
  CFast_CallFunction2_Static( 9 ) ;
  LocalCFast_fn_vSetDsgVarInteger(24, (LocalCFast_fn_lGetDsgVarInteger(24)+MTH_M_xRealToLong(M_GetSetParam_xValue(CFast_g_a_stParam+2)))) ;
  if ( MTH_M_xLongToReal((*((short *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 33))))) > MTH_M_xFloatToReal(0.500000f) ) {
    M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[1]) = MTH_M_xFloatToReal(0.850000f) ;
  } else {
    M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[1]) = MTH_M_xFloatToReal(0.000000f) ;
  }
  long2 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))); /* oups */

/* [Cond : EstDansComportement] ********** [7, 2, 8]*/
  long3 = CFast_CallCondition_Static(941) ;

/* [Cond : BoutonAppuye] ********** [6, 1, 9]*/
  long4 = (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+29));

/* [Cond : Ou] ********** [5, 2, 7]*/
  long3 |= long4;

/* [Cond : Non] ********** [5, 1, 6]*/
  long3 = !long3;

/* [Cond : Et] ********** [5, 2, 4]*/
  long2 &= long3;
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[4], long2) ;
  if (M_lValueInterpret(&CFast_g_a_stParam[4])) {
    M_GetSetParam_Type(&CFast_g_a_stParam[3]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[3]) = MTH_M_xLongToReal(2) ;
  } else {
    M_GetSetParam_Type(&CFast_g_a_stParam[3]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[3]) = MTH_M_xLongToReal(0) ;
  }
  M_GetSetParam_lValue(&CFast_g_a_stParam[2]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[3])) ;
  M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [5, 1, 2]*/

/* [Op : ..] ********** [9, 1, 0]*/

/* [Proc : PAD_LitJoyAnalogiqueModeMario] *********** [10, 8, 0]*/
  CFast_fn_vSetUltraOperatorPersoRef(12);
    M_lValueInterpret(p_stPseudoTree+1561) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
    M_lValueInterpret(p_stPseudoTree+1562) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
  CFast_CallProcedure_Static( 1557 ) ;
/* [EndTree] ************ [1]*/
}

/*
 * Model : YLT_RaymanModel Comportement BNT_TonneauAttente
 */
void CFast_YLT_RaymanModel_Cmp_BNT_TonneauAttente (void)
{
  MTH3D_tdstVector stVector0;
  MTH3D_tdstVector stVector1;
  MTH3D_tdstVector stVector2;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : UserEvent_IsSet] ********** [1, 1, 1]*/
  if ( CFast_CallCondition_Static(1565) ) {

/* [Op : ..] ********** [3, 1, 0]*/

/* [Proc : ACT_ChangeCustomBit] *********** [4, 3, 0]*/
    CFast_fn_vSetUltraOperatorPersoVar(60);
    CFast_CallProcedure_Static( 1567 ) ;
  }
/* [EndTree] ************ [0]*/

/* [Cond : ACT_TestFinAction] ********** [0, 0, 1]*/
  if ( CFast_CallCondition_Static(2) ) {

/* [Op : ..] ********** [2, 1, 0]*/

/* [Cond : ACT_TestCustomBit] ********** [3, 2, 1]*/
    CFast_fn_vSetUltraOperatorPersoVar(60);
    if ( CFast_CallCondition_Static(1570) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 342 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }

/* [Op : .] ********** [2, 2, 0]*/

/* [Func : ACT_LitBooleenDansTableau] ********** [4, 2, 1]*/
      M_eFuncIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Function][0]) = (tdeFuncId)248 ;

/* [Op : .] ********** [0, 2, 0]*/
      M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][1], E_ti_Operator);
      M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[3][1]) = (tdeOperatorId)12 ;
      CFast_memcpy ( 3, 2, 15) ;
      CFast_memcpy ( 3, 3, 16) ;
      M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][4], E_ti_Constant);
      M_lValueInterpret(&CFast_g_a_stPseudoTree[3][4]) = 1095 ;
      CFast_CallFunction1_NoStatic( ) ;
      LocalCFast_fn_vSetDsgVarBoolean(106,  ۟(CFast_g_a_stParam+1)) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
      CFast_CallProcedure_Static( 353 ) ;
      CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
      return ;
    }
    else {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 1572 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }
    }
  }
/* [EndTree] ************ [0]*/

/* [Cond : UserEvent_IsSet2] ********** [2, 2, 1]*/
  if ( CFast_CallCondition_Static(1574) ) {

/* [Op : ..] ********** [3, 1, 0]*/

/* [Proc : ACT_ChangeCustomBit] *********** [4, 3, 0]*/
    CFast_fn_vSetUltraOperatorPersoVar(60);
    CFast_CallProcedure_Static( 662 ) ;
    POS_fn_vGetTranslationVector(HIE_fn_hGetSuperObjectMatrix(g_hSuperObjectPerso), &stVector0); ;
    MTH3D_M_vSubVector(&stVector1, LocalCFast_fn_p_stGetDsgVarVector(39),&stVector0) ;
    LocalCFast_fn_vSetDsgVarVector(40, &stVector1) ;
    LocalCFast_fn_p_stGetDsgVarVector(40)->xZ = MTH_M_xMul(LocalCFast_fn_p_stGetDsgVarVector(40)->xZ,MTH_M_xFloatToReal(0.20000f)) ;
    MTH3D_M_vSubVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[2]), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 39))), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 40))));
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Vector;

/* [Func : COL_PointCollision] ********** [3, 3, 1]*/
      M_p_stVectorInterpret(p_stPseudoTree+1578) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
    CFast_CallFunction1_Static( 1577 ) ;
    LocalCFast_fn_vSetDsgVarVector(41, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;

/* [Cond : VEC_VecteurNul] ********** [1, 1, 1]*/
    if ( !( CFast_CallCondition_Static(99) ) ) {
      MTH3D_M_vMulScalarVector(&stVector0, MTH_M_xFloatToReal(0.33333f),LocalCFast_fn_p_stGetDsgVarVector(40)) ;
      MTH3D_M_vSubVector(&stVector1, LocalCFast_fn_p_stGetDsgVarVector(41),&stVector0) ;
      LocalCFast_fn_vSetDsgVarVector(39, &stVector1) ;
    }

/* [Proc : ACT_FixePositionPerso] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 1581 ) ;

/* [Cond : EstDansAction] ********** [1, 1, 1]*/
    if ( CFast_CallCondition_Static(1584) ) {
      MTH3D_M_vSetVectorElements(&stVector0, MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(18.00000f)) ;
      LocalCFast_fn_vSetDsgVarVector(39, &stVector0) ;
    }
    else {

/* [Cond : EstDansAction] ********** [1, 1, 1]*/
      if ( CFast_CallCondition_Static(1586) ) {

/* [Func : ACT_ViseePerso] ********** [0, 0, 3]*/
        CFast_CallFunction3_Static( 12 ) ;
        MTH3D_M_vMulScalarVector(&stVector1, MTH_M_xFloatToReal(30.00000f),&M_GetSetParam_stVectorValue(CFast_g_a_stParam+3)) ;
        MTH3D_M_vSetVectorElements(&stVector0, MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(0.00000f), MTH_M_xFloatToReal(12.00000f)) ;
        MTH3D_M_vAddVector(&stVector2, &stVector1,&stVector0) ;
        LocalCFast_fn_vSetDsgVarVector(39, &stVector2) ;
      }
    }

/* [Op : ..] ********** [4, 1, 0]*/

/* [Proc : COL_ChangeVecteurDeCollisionneur] *********** [5, 4, 0]*/
    CFast_fn_vSetUltraOperatorPersoVar(60);
    CFast_CallProcedure_Static( 1588 ) ;
  }
/* [EndTree] ************ [0]*/
  LocalCFast_fn_vSetDsgVarVector(56, LocalCFast_fn_p_stGetDsgVarVector(41)) ;

/* [Cond : BoutonJusteAppuye] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsJustValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+30)) ) {

/* [Op : ..] ********** [2, 1, 0]*/

/* [Cond : ACT_TestCustomBit] ********** [3, 2, 3]*/
    CFast_fn_vSetUltraOperatorPersoVar(60);
    long1 =!CFast_CallCondition_Static(1570) ;
if ( long1 ) {

/* [Cond : <>] ********** [2, 2, 4]*/
      long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) != 8 ? 1 : 0;
if ( long1 ) {
        long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16))));
      }
    }
    if ( long1 ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 1592 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }
      LocalCFast_fn_vSetDsgVar0To255(9, 8) ;
    }
  }
/* [EndTree] ************ [0]*/

/* [Cond : BoutonJusteAppuye] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsJustValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+40)) ) {
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))) ) {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
      if ( CFast_CallCondition_Static(1594) ) {

/* [Op : ..] ********** [2, 1, 0]*/

/* [Cond : ACT_TestCustomBit] ********** [3, 2, 1]*/
        CFast_fn_vSetUltraOperatorPersoVar(60);
        if ( CFast_CallCondition_Static(1570) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 342 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            return ;
          }

/* [Op : .] ********** [2, 2, 0]*/

/* [Func : ACT_LitBooleenDansTableau] ********** [4, 2, 1]*/
          M_eFuncIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Function][0]) = (tdeFuncId)248 ;

/* [Op : .] ********** [0, 2, 0]*/
          M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][1], E_ti_Operator);
          M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[3][1]) = (tdeOperatorId)12 ;
          CFast_memcpy ( 3, 2, 15) ;
          CFast_memcpy ( 3, 3, 16) ;
          M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][4], E_ti_Constant);
          M_lValueInterpret(&CFast_g_a_stPseudoTree[3][4]) = 1095 ;
          CFast_CallFunction1_NoStatic( ) ;
          LocalCFast_fn_vSetDsgVarBoolean(106, fc!(CFast_g_a_stParam+1)) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
          CFast_CallProcedure_Static( 353 ) ;
          CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
          return ;
        }
      }
      else {

/* [Op : ..] ********** [2, 1, 0]*/

/* [Cond : ACT_TestCustomBit] ********** [3, 2, 3]*/
        CFast_fn_vSetUltraOperatorPersoVar(60);
        long1 =!CFast_CallCondition_Static(1570) ;
if ( long1 ) {

/* [Cond : <>] ********** [2, 2, 4]*/
          long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) != 8 ? 1 : 0;
if ( long1 ) {
            long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16))));
          }
        }
        if ( long1 ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 1596 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            return ;
          }
          LocalCFast_fn_vSetDsgVar0To255(9, 8) ;
        }
      }
    }
  }
/* [EndTree] ************ [0]*/
  if ( ! ( gcGlobAleat & 0x3 ) )
  {

/* [Cond : >] ********** [2, 2, 1]*/
    if ( MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 78)))), (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 82))))) ) {

/* [Cond : BoutonRelache] ********** [1, 1, 1]*/
      if ( (long)IPT_fn_bIsInvalidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+27)) ) {
        long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 10))));
if ( long1 ) {
          long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16))));
        }
        if ( long1 ) {

/* [Cond : EstDansAction] ********** [1, 1, 6]*/
          long1 = CFast_CallCondition_Static(1598) ;
          if ( !long1 ) {

/* [Cond : EstDansAction] ********** [1, 1, 7]*/
            long1 = CFast_CallCondition_Static(1600) ;
          }
          long1 = long1 ? 0 : 1 ;
        }
        if ( long1 ) {

/* [Cond : <>] ********** [2, 2, 3]*/
          long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) != 8 ? 1 : 0;
        }
        if ( long1 ) {
          LocalCFast_fn_vSetDsgVarBoolean(34, 1) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 1602 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            return ;
          }

/* [Proc : ChangeMonComportement] *********** [1, 1, 0]*/
          CFast_CallProcedure_Static( 1604 ) ;
          CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
          return ;
        }
      }
    }
  }
/* [EndTree] ************ [0]*/
  CFast_fn_vSetDsgVar0To255(M_CFast_ucGetRealIndice(13), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),3) ;

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
  if ( CFast_CallCondition_Static(1594) ) {
    CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;
  }
/* [EndTree] ************ [0]*/

/* [Cond : <>] ********** [2, 2, 1]*/
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 9)))) != 8 ) {
    LocalCFast_fn_vSetDsgVar0To255(9, 7) ;
  }
/* [EndTree] ************ [0]*/
  long2 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))); /* oups */

/* [Cond : EstDansComportement] ********** [6, 2, 7]*/
  long3 = CFast_CallCondition_Static(941) ;

/* [Cond : BoutonAppuye] ********** [5, 1, 8]*/
  long4 = (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+29));

/* [Cond : Ou] ********** [4, 2, 6]*/
  long3 |= long4;

/* [Cond : Non] ********** [4, 1, 5]*/
  long3 = !long3;

/* [Cond : Et] ********** [4, 2, 3]*/
  long2 &= long3;
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[3], long2) ;
  if (M_lValueInterpret(&CFast_g_a_stParam[3])) {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xLongToReal(1) ;
  } else {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xLongToReal(0) ;
  }
  M_GetSetParam_lValue(&CFast_g_a_stParam[1]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
  M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [4, 1, 1]*/

/* [Cond : EstDansAction] ********** [6, 1, 3]*/
  long2 = CFast_CallCondition_Static(1598) ;

/* [Cond : Non] ********** [5, 1, 2]*/
  long2 = !long2;
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[2], long2) ;

/* [Op : ..] ********** [8, 1, 0]*/

/* [Proc : PAD_LitJoyAnalogiqueModeMario] *********** [9, 8, 0]*/
  CFast_fn_vSetUltraOperatorPersoRef(12);
    M_lValueInterpret(p_stPseudoTree+1611) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
    M_lValueInterpret(p_stPseudoTree+1612) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
  CFast_CallProcedure_Static( 1606 ) ;

/* [Cond : BoutonJusteRelache] ********** [1, 1, 2]*/
  long1 = (long)IPT_fn_bIsJustInvalidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+28)) ? 1 : 0;
if ( long1 ) {

/* [Cond : EstDansComportement] ********** [2, 2, 4]*/
    long1 = CFast_CallCondition_Static(941) ;
if ( long1 ) {

/* [Op : .] ********** [2, 2, 0]*/
      p_stLocalMind1 = M_pstGetMindOfBrain(M_GetMSHandle(M_CFast_hGetPersoRef(12) ,Brain));
      long1 = (*((char *)(M_GetDsgVarAddr(p_stLocalMind1, 35))));
    }
  }
  if ( long1 ) {

/* [Op : ..] ********** [1, 1, 0]*/

/* [Func : ACT_ViseePerso] ********** [2, 1, 1]*/
    CFast_fn_vSetUltraOperatorPersoRef(12);
    CFast_CallFunction1_Static( 12 ) ;

/* [Proc : ACT_ChangeViseePerso] *********** [1, 1, 0]*/
      M_p_stVectorInterpret(p_stPseudoTree+345) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
    CFast_CallProcedure_Static( 344 ) ;
  }
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement BNT_TonneauMarcheAvant
 */
void CFast_YLT_RaymanModel_Cmp_BNT_TonneauMarcheAvant (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : BoutonJusteAppuye] ********** [1, 1, 3]*/
  long1 = (long)IPT_fn_bIsJustValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+40)) ? 1 : 0;
  if ( !long1 ) {

/* [Cond : BoutonAppuye] ********** [1, 1, 4]*/
    long1 = (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+27)) ? 1 : 0;
  }
  if ( !long1 ) {

/* [Cond : <] ********** [2, 2, 4]*/
    long1 = MTH_M_bLess((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 78)))), (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 83))))) ? 1 : 0;
    if ( !long1 ) {
      long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16))));
if ( long1 ) {
        long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 10))));
      }
      long1 = long1 ? 0 : 1 ;
    }
  }
  if ( long1 ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 1572 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      return ;
    }

/* [Proc : ChangeMonComportement] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 1614 ) ;
    CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    return ;
  }
/* [EndTree] ************ [0]*/

/* [Cond : BoutonJusteAppuye] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsJustValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+30)) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 1592 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      return ;
    }

/* [Proc : ChangeMonComportement] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 1614 ) ;
    CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    return ;
  }
/* [EndTree] ************ [0]*/
  long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 34))));
if ( long1 ) {

/* [Cond : ANI_TestFinAnim] ********** [0, 0, 3]*/
    long1 = CFast_CallCondition_Static(27) ;
  }
  if ( long1 ) {
    LocalCFast_fn_vSetDsgVarBoolean(34, 0) ;
  }
/* [EndTree] ************ [0]*/
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 34)))) ) {

/* [Proc : FixeFacteurVitesseAnimation] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 1090 ) ;
  }
  else {
    M_Full_GetSetParam_Float(&CFast_g_a_stParam[2], MTH_M_xMul((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 78)))),MTH_M_xFloatToReal(0.020000f)));
    M_Full_GetSetParam_Float(&CFast_g_a_stParam[1], MTH_M_xMul(M_GetSetParam_xValue(&CFast_g_a_stParam[2]),MTH_M_xFloatToReal(-2.400000f)));

/* [Proc : ACT_ProposeVitesseY] *********** [1, 1, 0]*/
      M_lValueInterpret(p_stPseudoTree+1617) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
    CFast_CallProcedure_Static( 1616 ) ;
    M_Full_GetSetParam_Float(&CFast_g_a_stParam[2], MTH_M_xMul((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 78)))),MTH_M_xFloatToReal(0.020000f)));
    M_Full_GetSetParam_Float(&CFast_g_a_stParam[1], MTH_M_xMul(M_GetSetParam_xValue(&CFast_g_a_stParam[2]),MTH_M_xFloatToReal(100.000000f)));

/* [Proc : FixeFacteurVitesseAnimation] *********** [1, 1, 0]*/
      M_lValueInterpret(p_stPseudoTree+1619) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
    CFast_CallProcedure_Static( 1618 ) ;
  }
/* [EndTree] ************ [0]*/

/* [Cond : ACT_EstDejaTraite] ********** [1, 1, 1]*/
  if ( CFast_CallCondition_Static(1200) ) {

/* [Keyword : Personne] ********** [0, 0, 1]*/
    CFast_CallKeyword_Static(232, 1) ;

/* [Op : ..] ********** [2, 1, 0]*/

/* [Proc : HIER_ForcePere] *********** [3, 2, 0]*/
    CFast_fn_vSetUltraOperatorPersoVar(60);
        CFast_CallProcedure_Static( 1202 ) ;

/* [Proc : ACT_ForceTraitementPerso] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 1491 ) ;
  }
/* [EndTree] ************ [0]*/
  CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;
  CFast_fn_vSetDsgVar0To255(M_CFast_ucGetRealIndice(13), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),3) ;
  LocalCFast_fn_vSetDsgVar0To255(9, 7) ;
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))) ) {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(1.000000f) ;
  } else {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(0.000000f) ;
  }
  M_GetSetParam_lValue(&CFast_g_a_stParam[1]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
  M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [4, 1, 1]*/

/* [Op : ..] ********** [8, 1, 0]*/

/* [Proc : PAD_LitJoyAnalogiqueModeMario] *********** [9, 8, 0]*/
  CFast_fn_vSetUltraOperatorPersoRef(12);
    M_lValueInterpret(p_stPseudoTree+1625) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
  CFast_CallProcedure_Static( 1620 ) ;
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement YLT_GiAttente
 */
void CFast_YLT_RaymanModel_Cmp_YLT_GiAttente (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  switch(p_stLocalMind0->CFast_lCmpMetaAction) {
  case 1 : goto label1 ;
  case 2 : goto label2 ;
  }
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 46)))) ) {

/* [Cond : VEC_VecteurNul] ********** [1, 1, 2]*/
    long1 = CFast_CallCondition_Static(1229) ;
    if ( !long1 ) {

/* [Func : VEC_VecteurAngle] ********** [3, 3, 5]*/
      CFast_CallFunction5_Static( 1628 ) ;
      M_GetSetParam_xValue(&CFast_g_a_stParam[4]) = MTH_M_xAbs(M_GetSetParam_xValue(&CFast_g_a_stParam[5])) ;
      M_GetSetParam_Type(&CFast_g_a_stParam[4]) = E_vt_Float;

/* [Math_ : Math_ValeurAbsolue] ********** [0, 1, 4]*/

/* [Cond : >] ********** [2, 2, 3]*/
      long1 = MTH_M_bGreater(M_GetSetParam_xValue(&CFast_g_a_stParam[4]), MTH_M_xFloatToReal(45.000000f)) ? 1 : 0;
    }
    if ( long1 ) {
      LocalCFast_fn_vSetDsgVarBoolean(46, 0) ;
    }
  }
/* [EndTree] ************ [0]*/

/* [Cond : BoutonJusteAppuye] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsJustValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+40)) ) {
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))) ) {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
      if ( !( CFast_CallCondition_Static(0) ) ) {

/* [Op : :=] ********** [2, 2, 0]*/
        CFast_CallOperator0_Static ( 695 ) ;

/* [Op : :=] ********** [2, 2, 0]*/
        CFast_CallOperator0_Static ( 698 ) ;

/* [Op : :=] ********** [2, 2, 0]*/
        CFast_CallOperator0_Static ( 701 ) ;

/* [Op : .] ********** [2, 2, 0]*/

/* [Func : ACT_LitBooleenDansTableau] ********** [4, 2, 1]*/
        M_eFuncIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Function][0]) = (tdeFuncId)248 ;

/* [Op : .] ********** [0, 2, 0]*/
        M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][1], E_ti_Operator);
        M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[3][1]) = (tdeOperatorId)12 ;
        CFast_memcpy ( 3, 2, 15) ;
        CFast_memcpy ( 3, 3, 16) ;
        M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][4], E_ti_Constant);
        M_lValueInterpret(&CFast_g_a_stPseudoTree[3][4]) = 1143 ;
        CFast_CallFunction1_NoStatic( ) ;
        LocalCFast_fn_vSetDsgVarBoolean(120,  ۟(CFast_g_a_stParam+1)) ;
        LocalCFast_fn_vSetDsgVarBoolean(20, 1) ;
        LocalCFast_fn_vSetDsgVarFloat(19, MTH_M_xFloatToReal(0.00000f)) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
        fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
        CFast_CallProcedure_Static( 704 ) ;
        if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
          return ;
        }
      }
    }
  }
/* [EndTree] ************ [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_35 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/

/* [Cond : BoutonAppuye] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+27)) ) {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
    if ( !( CFast_CallCondition_Static(0) ) ) {
      long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 10))));
if ( long1 ) {
        long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16))));
      }
      if ( long1 ) {
        long1 =!(*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 46))));
      }
      if ( long1 ) {

/* [Cond : >] ********** [2, 2, 1]*/
        if ( MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 78)))), (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 82))))) ) {
          LocalCFast_fn_vSetDsgVar_32768To32767(32, 0) ;
          LocalCFast_fn_vSetDsgVarBoolean(34, 1) ;
          LocalCFast_fn_vSetDsgVarInteger(24, 0) ;

/* [Proc : ChangeMonComportement] *********** [1, 1, 0]*/
          CFast_CallProcedure_Static( 1632 ) ;
label1 :
          return ;
        }
        else {
          LocalCFast_fn_vSetDsgVarBoolean(95, 1) ;
        }
      }
      else {
        LocalCFast_fn_vSetDsgVarBoolean(95, 0) ;
      }
    }
    else {
      LocalCFast_fn_vSetDsgVarBoolean(95, 1) ;
    }
  }
  else {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
    if ( !( CFast_CallCondition_Static(0) ) ) {

/* [Cond : >] ********** [2, 2, 1]*/
      if ( MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 78)))), (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 82))))) ) {
        long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 10))));
if ( long1 ) {
          long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16))));
        }
        if ( long1 ) {
          long1 =!(*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 46))));
        }
        if ( long1 ) {
          LocalCFast_fn_vSetDsgVarInteger(24, 0) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 714 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            return ;
          }

/* [Proc : ChangeMonComportement] *********** [1, 1, 0]*/
          CFast_CallProcedure_Static( 1634 ) ;
label2 :
          return ;
        }
      }
    }
    LocalCFast_fn_vSetDsgVarBoolean(95, 0) ;
  }
/* [EndTree] ************ [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_54 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  CFast_fn_vSetDsgVar0To255(M_CFast_ucGetRealIndice(13), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),10) ;

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
  if ( CFast_CallCondition_Static(0) ) {
    CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;
  }
/* [EndTree] ************ [0]*/
  LocalCFast_fn_vSetDsgVar0To255(9, 23) ;
  if ( ! ( gcGlobAleat & 0x1 ) )
  {
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 95)))) ) {
      LocalCFast_fn_vSetDsgVarInteger(38, 24) ;
      CFast_YLT_RaymanModel_Sbr_39 ( ) ;
/* [MacroRef : 0] ********** [0]*/
    }
  }
/* [EndTree] ************ [0]*/

/* [Func : Temps_LitDT] ********** [0, 0, 2]*/
  CFast_CallFunction2_Static( 9 ) ;
  LocalCFast_fn_vSetDsgVarInteger(24, (LocalCFast_fn_lGetDsgVarInteger(24)+MTH_M_xRealToLong(M_GetSetParam_xValue(CFast_g_a_stParam+2)))) ;
  long2 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))); /* oups */

/* [Cond : EstDansComportement] ********** [6, 2, 7]*/
  long3 = CFast_CallCondition_Static(941) ;

/* [Cond : BoutonAppuye] ********** [5, 1, 8]*/
  long4 = (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+29));

/* [Cond : Ou] ********** [4, 2, 6]*/
  long3 |= long4;

/* [Cond : Non] ********** [4, 1, 5]*/
  long3 = !long3;

/* [Cond : Et] ********** [4, 2, 3]*/
  long2 &= long3;
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[3], long2) ;
  if (M_lValueInterpret(&CFast_g_a_stParam[3])) {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xLongToReal(1) ;
  } else {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xLongToReal(0) ;
  }
  M_GetSetParam_lValue(&CFast_g_a_stParam[1]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
  M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [4, 1, 1]*/

/* [Cond : BoutonRelache] ********** [6, 1, 2]*/
  long2 = (long)IPT_fn_bIsInvalidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+27));
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[2], long2) ;

/* [Op : ..] ********** [8, 1, 0]*/

/* [Proc : PAD_LitJoyAnalogiqueModeMario] *********** [9, 8, 0]*/
  CFast_fn_vSetUltraOperatorPersoRef(12);
    M_lValueInterpret(p_stPseudoTree+1008) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
    M_lValueInterpret(p_stPseudoTree+1009) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
  CFast_CallProcedure_Static( 1003 ) ;
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement YLT_GiMarche
 */
void CFast_YLT_RaymanModel_Cmp_YLT_GiMarche (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : MEC_GiBloque] ********** [0, 0, 1]*/
  if ( CFast_CallCondition_Static(1226) ) {

/* [Cond : >] ********** [2, 2, 1]*/
    if ( MTH_M_bGreater(MTH_M_xLongToReal((*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 24))))), MTH_M_xFloatToReal(200.000000f)) ) {

/* [Cond : VEC_VecteurNul] ********** [1, 1, 1]*/
      if ( CFast_CallCondition_Static(1227) ) {

/* [Cond : VEC_VecteurNul] ********** [1, 1, 1]*/
        if ( CFast_CallCondition_Static(1229) ) {

/* [Func : ACT_ViseePerso] ********** [0, 0, 1]*/
          CFast_CallFunction1_Static( 12 ) ;
          LocalCFast_fn_vSetDsgVarVector(91, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
        }
        else {
          LocalCFast_fn_vSetDsgVarVector(91, LocalCFast_fn_p_stGetDsgVarVector(76)) ;
        }
      }
      else {

/* [Op : .X] ********** [1, 1, 3]*/
        CFast_CallOperator3_Static( 1231 ) ;

/* [Op : .Y] ********** [2, 1, 4]*/
        CFast_CallOperator4_Static( 1233 ) ;

/* [Vector] *********** [3, 3, 2]*/
          M_lValueInterpret(p_stPseudoTree+1637) = M_GetSetParam_lValue(CFast_g_a_stParam+3);
          M_lValueInterpret(p_stPseudoTree+1638) = M_GetSetParam_lValue(CFast_g_a_stParam+4);
        CFast_CallVector2_Static (1636) ;
        if (MTH3D_M_bIsNullVector(&M_GetSetParam_stVectorValue(&CFast_g_a_stParam[2]))) {
          MTH3D_M_vCopyVector(&M_GetSetParam_stVectorValue(&CFast_g_a_stParam[1]), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[2]));
        } else {
          MTH3D_M_vNormalizeVector(&M_GetSetParam_stVectorValue(&CFast_g_a_stParam[1]), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[2]));
        }
        M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Vector;
        LocalCFast_fn_vSetDsgVarVector(91, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
      }
      LocalCFast_fn_vSetDsgVarBoolean(46, 1) ;
      if ( CFast_YLT_RaymanModel_Sbr_53 ( ) )
        return ;
/* [MacroRef : 0] ********** [0]*/
    }
  }
  else {
    LocalCFast_fn_vSetDsgVarBoolean(46, 0) ;
  }
/* [EndTree] ************ [0]*/
  if ( ! ( gcGlobAleat & 0x3 ) )
  {

/* [Cond : <] ********** [2, 2, 1]*/
    if ( MTH_M_bLess((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 78)))), (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 83))))) ) {
      if ( CFast_YLT_RaymanModel_Sbr_53 ( ) )
        return ;
/* [MacroRef : 0] ********** [0]*/
    }
  }
/* [EndTree] ************ [0]*/

/* [Cond : BoutonAppuye] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+27)) ) {

/* [Cond : VEC_VecteurNul] ********** [1, 1, 1]*/
    if ( !( CFast_CallCondition_Static(1229) ) ) {

/* [Cond : BoutonRelache] ********** [1, 1, 1]*/
      if ( (long)IPT_fn_bIsInvalidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+40)) ) {
        if ( !( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 46)))) ) ) {
          LocalCFast_fn_vSetDsgVarBoolean(34, 1) ;
          LocalCFast_fn_vSetDsgVarInteger(24, 0) ;

/* [Proc : ChangeMonComportement] *********** [1, 1, 0]*/
          CFast_CallProcedure_Static( 1632 ) ;
          CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
          return ;
        }
      }
    }
  }
/* [EndTree] ************ [0]*/

/* [Cond : BoutonJusteAppuye] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsJustValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+40)) ) {
    if ( CFast_YLT_RaymanModel_Sbr_53 ( ) )
      return ;
/* [MacroRef : 0] ********** [0]*/
  }
/* [EndTree] ************ [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_54 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  M_Full_GetSetParam_Float(&CFast_g_a_stParam[2], MTH_M_xMul((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 78)))),MTH_M_xFloatToReal(0.020000f)));
  M_GetSetParam_xValue(&CFast_g_a_stParam[1]) = MTH_M_bLess(M_GetSetParam_xValue(&CFast_g_a_stParam[2]), MTH_M_xFloatToReal(0.500000f)) ?  MTH_M_xFloatToReal(0.500000f) : (MTH_M_bGreater(M_GetSetParam_xValue(&CFast_g_a_stParam[2]), MTH_M_xFloatToReal(1.200000f)) ? MTH_M_xFloatToReal(1.200000f) : M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
  M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Float;

/* [Math_ : Math_ReelBorne] ********** [0, 3, 1]*/
  LocalCFast_fn_vSetDsgVarFloat(36, M_GetSetParam_xValue(CFast_g_a_stParam+1)) ;
  M_Full_GetSetParam_Float(&CFast_g_a_stParam[1], MTH_M_xMul(MTH_M_xFloatToReal(-2.400000f),(*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 36))))));

/* [Proc : ACT_ProposeVitesseY] *********** [1, 1, 0]*/
    M_lValueInterpret(p_stPseudoTree+1617) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
  CFast_CallProcedure_Static( 1616 ) ;
  M_Full_GetSetParam_Float(&CFast_g_a_stParam[1], MTH_M_xMul((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 36)))),MTH_M_xLongToReal(100)));

/* [Proc : FixeFacteurVitesseAnimation] *********** [1, 1, 0]*/
    M_lValueInterpret(p_stPseudoTree+1619) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
  CFast_CallProcedure_Static( 1618 ) ;
  CFast_fn_vSetDsgVar0To255(M_CFast_ucGetRealIndice(13), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),10) ;
  CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;
  LocalCFast_fn_vSetDsgVar0To255(9, 23) ;

/* [Func : Temps_LitDT] ********** [0, 0, 2]*/
  CFast_CallFunction2_Static( 9 ) ;
  LocalCFast_fn_vSetDsgVarInteger(24, (LocalCFast_fn_lGetDsgVarInteger(24)+MTH_M_xRealToLong(M_GetSetParam_xValue(CFast_g_a_stParam+2)))) ;
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))) ) {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(1.000000f) ;
  } else {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(0.000000f) ;
  }
  M_GetSetParam_lValue(&CFast_g_a_stParam[1]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
  M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [4, 1, 1]*/

/* [Cond : BoutonRelache] ********** [6, 1, 2]*/
  long2 = (long)IPT_fn_bIsInvalidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+27));
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[2], long2) ;

/* [Op : ..] ********** [8, 1, 0]*/

/* [Proc : PAD_LitJoyAnalogiqueModeMario] *********** [9, 8, 0]*/
  CFast_fn_vSetUltraOperatorPersoRef(12);
    M_lValueInterpret(p_stPseudoTree+1645) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
    M_lValueInterpret(p_stPseudoTree+1646) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
  CFast_CallProcedure_Static( 1640 ) ;
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement BNT_AccrocheAuBord
 */
void CFast_YLT_RaymanModel_Cmp_BNT_AccrocheAuBord (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  if ( p_stLocalMind0 -> CFast_lCmpMetaAction ) 
    goto label1 ;

/* [Cond : ObjetValide] ********** [1, 1, 1]*/
  if ( CFast_CallCondition_Static(174) ) {

/* [Op : ..] ********** [2, 1, 0]*/

/* [Func : VEC_VecteurAbsolu] ********** [3, 2, 1]*/
    CFast_fn_vSetUltraOperatorPersoVar(61);
    CFast_CallFunction1_Static( 1648 ) ;
    LocalCFast_fn_vSetDsgVarVector(39, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;

/* [Op : .Z] ********** [1, 1, 2]*/
    CFast_CallOperator2_Static( 804 ) ;

/* [Cond : <] ********** [2, 2, 1]*/
    if ( MTH_M_bLess(M_GetSetParam_xValue(&CFast_g_a_stParam[2]), MTH_M_xFloatToReal(0.939700f)) ) {
      LocalCFast_fn_vSetDsgVarBoolean(45, 0) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 551 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }

/* [Proc : HIER_LiberePere] *********** [0, 0, 0]*/
      CFast_CallProcedure_Static( 778 ) ;

/* [Proc : ZON_FixeTailleZDMSphere] *********** [2, 2, 0]*/
      CFast_CallProcedure_Static( 409 ) ;
      if ( CFast_YLT_RaymanModel_Sbr_19 ( ) )
        return ;
/* [MacroRef : 0] ********** [0]*/
    }

/* [Op : .] ********** [3, 2, 0]*/

/* [Op : v-] ********** [4, 2, 2]*/
    M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Operator][0]) = (tdeOperatorId)17 ;
    M_SetTypeInterpret(&CFast_g_a_stPseudoTree[2][1], E_ti_Field);
    M_eFieldIdInterpret(&CFast_g_a_stPseudoTree[2][1]) = (tdeFieldId)0 ;

/* [Op : .] ********** [0, 2, 0]*/
    M_SetTypeInterpret(&CFast_g_a_stPseudoTree[2][2], E_ti_Operator);
    M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[2][2]) = (tdeOperatorId)12 ;
    M_SetTypeInterpret(&CFast_g_a_stPseudoTree[2][3], E_ti_DsgVarRef);
    M_lValueInterpret(&CFast_g_a_stPseudoTree[2][3]) = 61 ;
    M_SetTypeInterpret(&CFast_g_a_stPseudoTree[2][4], E_ti_Field);
    M_eFieldIdInterpret(&CFast_g_a_stPseudoTree[2][4]) = (tdeFieldId)0 ;
    CFast_CallOperator2_NoStatic( ) ;

/* [Op : ..] ********** [2, 1, 0]*/

/* [Func : VEC_VecteurRelatif] ********** [3, 2, 1]*/
    CFast_fn_vSetUltraOperatorPersoVar(61);
      M_p_stVectorInterpret(p_stPseudoTree+172) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
    CFast_CallFunction1_Static( 171 ) ;
    LocalCFast_fn_vSetDsgVarVector(41, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
  }
  else {
    POS_fn_vGetTranslationVector(HIE_fn_hGetSuperObjectMatrix(g_hSuperObjectPerso), &stVector0); ;
    LocalCFast_fn_vSetDsgVarVector(41, &stVector0) ;
  }
/* [EndTree] ************ [0]*/
  MTH3D_M_vSubVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[3]), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 71))), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 41))));
  M_GetSetParam_Type(&CFast_g_a_stParam[3]) = E_vt_Vector;
  M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH3D_M_xNormVector(&M_GetSetParam_stVectorValue(&CFast_g_a_stParam[3]));
  M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;

/* [Cond : >] ********** [2, 2, 1]*/
  if ( MTH_M_bGreater(M_GetSetParam_xValue(&CFast_g_a_stParam[2]), MTH_M_xFloatToReal(0.200000f)) ) {
    LocalCFast_fn_vSetDsgVarBoolean(45, 0) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 551 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      return ;
    }

/* [Proc : HIER_LiberePere] *********** [0, 0, 0]*/
    CFast_CallProcedure_Static( 778 ) ;

/* [Proc : ZON_FixeTailleZDMSphere] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 409 ) ;
    if ( CFast_YLT_RaymanModel_Sbr_19 ( ) )
      return ;
/* [MacroRef : 0] ********** [0]*/
  }
/* [EndTree] ************ [0]*/

/* [Proc : MOD_ChangePositionModule] *********** [3, 3, 0]*/
  CFast_CallProcedure_Static( 1650 ) ;

/* [Proc : MOD_ChangePositionModule] *********** [3, 3, 0]*/
  CFast_CallProcedure_Static( 1654 ) ;

/* [Func : COL_LitTypeMateriauCollision2] ********** [1, 1, 2]*/
  CFast_CallFunction2_Static( 273 ) ;

/* [Cond : COL_TesteCmtContreMasque] ********** [2, 2, 1]*/
    M_lValueInterpret(p_stPseudoTree+325) = M_GetSetParam_lValue(CFast_g_a_stParam+2);
  if ( CFast_CallCondition_Static(324) ) {
    LocalCFast_fn_vSetDsgVarBoolean(46, 1) ;

/* [Func : ACT_ViseePerso] ********** [0, 0, 1]*/
    CFast_CallFunction1_Static( 12 ) ;
    LocalCFast_fn_vSetDsgVarVector(76, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;
    LocalCFast_fn_vSetDsgVarInteger(24, 10000) ;
  }
/* [EndTree] ************ [0]*/

/* [Cond : VEC_VecteurNul] ********** [1, 1, 1]*/
  if ( !( CFast_CallCondition_Static(1229) ) ) {
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16))));
if ( long1 ) {
      long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 10))));
    }
    if ( long1 ) {

/* [Func : ACT_ViseePerso] ********** [1, 0, 2]*/
      CFast_CallFunction2_Static( 12 ) ;

/* [Func : VEC_VecteurCos] ********** [2, 2, 1]*/
        M_p_stVectorInterpret(p_stPseudoTree+1660) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
      CFast_CallFunction1_Static( 1658 ) ;
      LocalCFast_fn_vSetDsgVarFloat(36, M_GetSetParam_xValue(CFast_g_a_stParam+1)) ;

/* [Cond : >] ********** [2, 2, 1]*/
      if ( MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 36)))), MTH_M_xFloatToReal(0.500000f)) ) {
        long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 46))));
        if ( !long1 ) {

/* [Cond : >] ********** [2, 2, 3]*/
          long1 = MTH_M_bGreater(MTH_M_xLongToReal((*((int *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 24))))), MTH_M_xFloatToReal(300.000000f)) ? 1 : 0;
        }
        if ( long1 ) {
          LocalCFast_fn_vSetDsgVarInteger(24, 0) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 1661 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            return ;
          }

/* [Op : .Z] ********** [1, 1, 4]*/
          CFast_CallOperator4_Static( 1663 ) ;

/* [Op : .Z] ********** [2, 1, 5]*/
          CFast_CallOperator5_Static( 1665 ) ;
          M_GetSetParam_xValue(&CFast_g_a_stParam[3]) = MTH_M_xMax(M_GetSetParam_xValue(&CFast_g_a_stParam[4]),M_GetSetParam_xValue(&CFast_g_a_stParam[5]));
          M_GetSetParam_Type(&CFast_g_a_stParam[3]) = E_vt_Float;

/* [Math_ : Math_MaximumReel] ********** [0, 2, 3]*/
          M_Full_GetSetParam_Float(&CFast_g_a_stParam[2], MTH_M_xAdd(M_GetSetParam_xValue(&CFast_g_a_stParam[3]),MTH_M_xFloatToReal(0.300000f)));

/* [Op : .Z] ********** [2, 1, 3]*/
          CFast_CallOperator3_Static( 1152 ) ;
          M_Full_GetSetParam_Float(&CFast_g_a_stParam[1], MTH_M_xAdd(M_GetSetParam_xValue(&CFast_g_a_stParam[2]),M_GetSetParam_xValue(&CFast_g_a_stParam[3])));

/* [Proc : MEC_ActiveMecaAccrochage] *********** [1, 1, 0]*/
            M_lValueInterpret(p_stPseudoTree+1668) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
          CFast_CallProcedure_Static( 1667 ) ;

/* [Op : ..] ********** [8, 1, 0]*/

/* [Proc : PAD_LitJoyAnalogiqueModeMario] *********** [9, 8, 0]*/
          CFast_fn_vSetUltraOperatorPersoRef(12);
          CFast_CallProcedure_Static( 818 ) ;

/* [Proc : ZON_FixeTailleZDMSphere] *********** [2, 2, 0]*/
          CFast_CallProcedure_Static( 409 ) ;

/* [Proc : ChangeMonComportement] *********** [1, 1, 0]*/
          CFast_CallProcedure_Static( 1669 ) ;
          CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
          return ;
        }
      }
      else {

/* [Cond : <] ********** [2, 2, 1]*/
        if ( MTH_M_bLess((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 36)))), MTH_M_xFloatToReal(-0.500000f)) ) {
          if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 46)))) ) {
            LocalCFast_fn_vSetDsgVarBoolean(45, 0) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
            fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
            CFast_CallProcedure_Static( 551 ) ;
            if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
              return ;
            }

/* [Proc : HIER_LiberePere] *********** [0, 0, 0]*/
            CFast_CallProcedure_Static( 778 ) ;

/* [Op : ..] ********** [8, 1, 0]*/

/* [Proc : PAD_LitJoyAnalogiqueModeMario] *********** [9, 8, 0]*/
            CFast_fn_vSetUltraOperatorPersoRef(12);
            CFast_CallProcedure_Static( 818 ) ;

/* [Proc : ZON_FixeTailleZDMSphere] *********** [2, 2, 0]*/
            CFast_CallProcedure_Static( 409 ) ;
            if ( CFast_YLT_RaymanModel_Sbr_19 ( ) )
              return ;
/* [MacroRef : 0] ********** [0]*/
          }
        }
      }
    }
  }
/* [EndTree] ************ [0]*/
  if ( !( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 46)))) ) ) {

/* [Cond : VEC_VecteurNul] ********** [1, 1, 1]*/
    if ( CFast_CallCondition_Static(1229) ) {
      LocalCFast_fn_vSetDsgVarBoolean(46, 1) ;
    }
  }
/* [EndTree] ************ [0]*/

/* [Cond : BoutonJusteAppuye] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsJustValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+30)) ) {
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))) ) {

/* [Proc : HIER_LiberePere] *********** [0, 0, 0]*/
      CFast_CallProcedure_Static( 778 ) ;
      LocalCFast_fn_vSetDsgVarFloat(30, MTH_M_xFloatToReal(8.00000f)) ;
      LocalCFast_fn_vSetDsgVarInteger(29, 0) ;
      LocalCFast_fn_vSetDsgVarBoolean(45, 0) ;
      LocalCFast_fn_vSetDsgVarInteger(23, 0) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 929 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }

/* [Op : ..] ********** [8, 1, 0]*/

/* [Proc : PAD_LitJoyAnalogiqueModeMario] *********** [9, 8, 0]*/
      CFast_fn_vSetUltraOperatorPersoRef(12);
      CFast_CallProcedure_Static( 818 ) ;

/* [Proc : ZON_FixeTailleZDMSphere] *********** [2, 2, 0]*/
      CFast_CallProcedure_Static( 409 ) ;
      p_stLocalMind0->CFast_lCmpMetaAction = 1;
label1 :
      if ( CFast_YLT_RaymanModel_Sbr_36 ( ) )
        return ;
      p_stLocalMind0 -> CFast_lCmpMetaAction = 0 ;
/* [MacroRef : 0] ********** [0]*/
    }
  }
/* [EndTree] ************ [0]*/
  CFast_fn_vSetDsgVar0To255(M_CFast_ucGetRealIndice(13), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),3) ;
  LocalCFast_fn_vSetDsgVar0To255(9, 27) ;

/* [Func : Temps_LitDT] ********** [0, 0, 2]*/
  CFast_CallFunction2_Static( 9 ) ;
  LocalCFast_fn_vSetDsgVarInteger(24, (LocalCFast_fn_lGetDsgVarInteger(24)+MTH_M_xRealToLong(M_GetSetParam_xValue(CFast_g_a_stParam+2)))) ;
  long2 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))); /* oups */

/* [Cond : EstDansComportement] ********** [6, 2, 7]*/
  long3 = CFast_CallCondition_Static(941) ;

/* [Cond : BoutonAppuye] ********** [5, 1, 8]*/
  long4 = (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+29));

/* [Cond : Ou] ********** [4, 2, 6]*/
  long3 |= long4;

/* [Cond : Non] ********** [4, 1, 5]*/
  long3 = !long3;

/* [Cond : Et] ********** [4, 2, 3]*/
  long2 &= long3;
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[3], long2) ;
  if (M_lValueInterpret(&CFast_g_a_stParam[3])) {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xLongToReal(1) ;
  } else {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xLongToReal(0) ;
  }
  M_GetSetParam_lValue(&CFast_g_a_stParam[1]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
  M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [4, 1, 1]*/

/* [Op : ..] ********** [8, 1, 0]*/

/* [Proc : PAD_LitJoyAnalogiqueModeMario] *********** [9, 8, 0]*/
  CFast_fn_vSetUltraOperatorPersoRef(12);
    M_lValueInterpret(p_stPseudoTree+1676) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
  CFast_CallProcedure_Static( 1671 ) ;
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement BNT_AccrocheRemonte
 */
void CFast_YLT_RaymanModel_Cmp_BNT_AccrocheRemonte (void)
{
  MTH3D_tdstVector stVector0;
  MTH3D_tdstVector stVector1;
  MTH3D_tdstVector stVector2;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  if ( p_stLocalMind0 -> CFast_lCmpMetaAction ) 
    goto label1 ;

/* [Cond : ACT_TestFinAction] ********** [0, 0, 1]*/
  if ( CFast_CallCondition_Static(2) ) {
    LocalCFast_fn_vSetDsgVarFloat(78, MTH_M_xMul(LocalCFast_fn_xGetDsgVarFloat(78),MTH_M_xFloatToReal(0.25000f))) ;
    LocalCFast_fn_vSetDsgVarFloat(79, MTH_M_xMul(LocalCFast_fn_xGetDsgVarFloat(79),MTH_M_xFloatToReal(0.25000f))) ;
    MTH3D_M_vMulScalarVector(LocalCFast_fn_p_stGetDsgVarVector(76),MTH_M_xFloatToReal(0.25000f),LocalCFast_fn_p_stGetDsgVarVector(76)) ;
    LocalCFast_fn_vSetDsgVar_32768To32767(75, (LocalCFast_fn_lGetDsgVar_32768To32767(75)*MTH_M_xRealToLong(MTH_M_xFloatToReal(0.25000f)))) ;
    LocalCFast_fn_vSetDsgVar_32768To32767(74, (LocalCFast_fn_lGetDsgVar_32768To32767(74)*MTH_M_xRealToLong(MTH_M_xFloatToReal(0.25000f)))) ;
    LocalCFast_fn_vSetDsgVarFloat(77, MTH_M_xMul(LocalCFast_fn_xGetDsgVarFloat(77),MTH_M_xFloatToReal(0.25000f))) ;

/* [Proc : HIER_LiberePere] *********** [0, 0, 0]*/
    CFast_CallProcedure_Static( 778 ) ;

/* [Vector] *********** [4, 3, 4]*/
    CFast_CallVector4_Static (665) ;

/* [Func : VEC_VecteurAbsolu] ********** [2, 1, 3]*/
      M_p_stVectorInterpret(p_stPseudoTree+79) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+4);
    CFast_CallFunction3_Static( 78 ) ;

/* [Op : v+] ********** [2, 2, 2]*/
      M_p_stVectorInterpret(p_stPseudoTree+1681) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+3);
    CFast_CallOperator2_Static( 1679 ) ;

/* [Vector] *********** [4, 3, 3]*/
    CFast_CallVector3_Static (1400) ;

/* [Func : COL_PointCollision] ********** [3, 3, 1]*/
      M_p_stVectorInterpret(p_stPseudoTree+1416) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
      M_p_stVectorInterpret(p_stPseudoTree+1417) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+3);
    CFast_CallFunction1_Static( 1415 ) ;
    LocalCFast_fn_vSetDsgVarVector(39, &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1)) ;

/* [Cond : VEC_VecteurNul] ********** [1, 1, 1]*/
    if ( !( CFast_CallCondition_Static(83) ) ) {

/* [Keyword : Moi] ********** [0, 0, 1]*/

/* [Proc : ACT_FixePositionPerso] *********** [2, 2, 0]*/
      CFast_CallProcedure_Static( 1682 ) ;
    }

/* [Meta : Temps_AttenteFigee] ********** [1, 1, 0]*/
    CFast_CallMetaActionInit_Static( 1214 ) ;
    p_stLocalMind0->CFast_lCmpMetaAction = 1;
label1 :
    if ( CFast_CallMetaAction(0) & (C_DefaultMetaActionNotFinished)) {
      return ;
    }
    p_stLocalMind0->CFast_lCmpMetaAction = 0;

/* [Func : Temps_Obtenir] ********** [0, 0, 1]*/
    CFast_CallFunction1_Static( 430 ) ;
    LocalCFast_fn_vSetDsgVarInteger(35, M_GetSetParam_ulValue(CFast_g_a_stParam+1)) ;

/* [Proc : MEC_DesactiveMecaAccrochage] *********** [0, 0, 0]*/
    CFast_CallProcedure_Static( 1362 ) ;

/* [Proc : ACT_ImposeVitesseZ] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 1685 ) ;
    if ( CFast_YLT_RaymanModel_Sbr_51 ( ) )
      return ;
/* [MacroRef : 0] ********** [0]*/
  }
/* [EndTree] ************ [0]*/

/* [Func : MOD_PositionRelativeModule] ********** [1, 1, 5]*/
  CFast_CallFunction5_Static( 1687 ) ;
  MTH3D_M_vSubVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[4]), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[5]), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 43))));
  M_GetSetParam_Type(&CFast_g_a_stParam[4]) = E_vt_Vector;
  M_GetSetParam_xValue(&CFast_g_a_stParam[3]) = MTH3D_M_xNormVector(&M_GetSetParam_stVectorValue(&CFast_g_a_stParam[4]));
  M_GetSetParam_Type(&CFast_g_a_stParam[3]) = E_vt_Float;

/* [Cond : <=] ********** [2, 2, 2]*/
  long1 = MTH_M_bLessEqual(M_GetSetParam_xValue(&CFast_g_a_stParam[3]), MTH_M_xFloatToReal(0.450000f)) ? 1 : 0;
if ( long1 ) {

/* [Func : MOD_PositionRelativeModule] ********** [1, 1, 6]*/
    CFast_CallFunction6_Static( 1689 ) ;
    MTH3D_M_vSubVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[5]), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[6]), ((MTH3D_tdstVector *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 44))));
    M_GetSetParam_Type(&CFast_g_a_stParam[5]) = E_vt_Vector;
    M_GetSetParam_xValue(&CFast_g_a_stParam[4]) = MTH3D_M_xNormVector(&M_GetSetParam_stVectorValue(&CFast_g_a_stParam[5]));
    M_GetSetParam_Type(&CFast_g_a_stParam[4]) = E_vt_Float;

/* [Cond : <=] ********** [2, 2, 3]*/
    long1 = MTH_M_bLessEqual(M_GetSetParam_xValue(&CFast_g_a_stParam[4]), MTH_M_xFloatToReal(0.450000f)) ? 1 : 0;
  }
  if ( long1 ) {

/* [Proc : MOD_ChangePositionModule] *********** [3, 3, 0]*/
    CFast_CallProcedure_Static( 1650 ) ;

/* [Proc : MOD_ChangePositionModule] *********** [3, 3, 0]*/
    CFast_CallProcedure_Static( 1654 ) ;
  }
/* [EndTree] ************ [0]*/
  if ( 0 ) {

/* [Cond : Col_PasDeCollision] ********** [0, 0, 1]*/
    if ( !( CFast_CallCondition_Static(247) ) ) {
      LocalCFast_fn_vSetDsgVarBoolean(45, 0) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 551 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }

/* [Proc : HIER_LiberePere] *********** [0, 0, 0]*/
      CFast_CallProcedure_Static( 778 ) ;
      if ( CFast_YLT_RaymanModel_Sbr_19 ( ) )
        return ;
/* [MacroRef : 0] ********** [0]*/
    }
    LocalCFast_fn_vSetDsgVarFloat(36, MTH_M_xAdd(MTH_M_xMul(MTH_M_xMul(MTH_M_xMul(MTH_M_xLongToReal(LocalCFast_fn_lGetDsgVarInteger(24)),MTH_M_xFloatToReal(0.00100f)),MTH_M_xFloatToReal(220.00000f)),MTH_M_xFloatToReal(0.96667f)),MTH_M_xFloatToReal(30.96376f))) ;
    M_GetSetParam_xValue(&CFast_g_a_stParam[4]) = MTH_M_xSin( MTH_M_xDegToRad((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 36))))) );
    M_GetSetParam_Type(&CFast_g_a_stParam[4]) = E_vt_Float;

/* [Math_ : Math_Sinus] ********** [0, 1, 4]*/
    M_GetSetParam_xValue(&CFast_g_a_stParam[5]) = MTH_M_xCos( MTH_M_xDegToRad((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 36))))) );
    M_GetSetParam_Type(&CFast_g_a_stParam[5]) = E_vt_Float;

/* [Math_ : Math_Cosinus] ********** [1, 1, 5]*/
    MTH3D_M_vSetVectorElements(&stVector0, MTH_M_xFloatToReal(0.00000f), MTH_M_xMul(M_GetSetParam_xValue(CFast_g_a_stParam+4),MTH_M_xFloatToReal(1.00000f)), MTH_M_xMul(M_GetSetParam_xValue(CFast_g_a_stParam+5),MTH_M_xFloatToReal(-1.00000f))) ;
    MTH3D_M_vMulScalarVector(&stVector1, MTH_M_xFloatToReal(1.16619f),&stVector0) ;
    LocalCFast_fn_vSetDsgVarVector(39, &stVector1) ;

/* [Func : VEC_VecteurAbsolu] ********** [3, 1, 2]*/
    CFast_CallFunction2_Static( 1691 ) ;
    MTH3D_M_vAddVector(&stVector0, LocalCFast_fn_p_stGetDsgVarVector(71),&M_GetSetParam_stVectorValue(CFast_g_a_stParam+2)) ;
    LocalCFast_fn_vSetDsgVarVector(40, &stVector0) ;
    POS_fn_vGetTranslationVector(HIE_fn_hGetSuperObjectMatrix(g_hSuperObjectPerso), &stVector0); ;
    MTH3D_M_vSubVector(&stVector1, LocalCFast_fn_p_stGetDsgVarVector(40),&stVector0) ;

/* [Func : Temps_LitDT] ********** [2, 0, 4]*/
    CFast_CallFunction4_Static( 9 ) ;
    MTH3D_M_vDivScalarVector(&stVector2, &stVector1,MTH_M_xMul(M_GetSetParam_xValue(CFast_g_a_stParam+4),MTH_M_xFloatToReal(0.00100f))) ;
    LocalCFast_fn_vSetDsgVarVector(41, &stVector2) ;

/* [Proc : ACT_ImposeVecteurVitesseAbsolu] *********** [4, 1, 0]*/
    CFast_CallProcedure_Static( 1693 ) ;
  }
/* [EndTree] ************ [3]*/
  CFast_fn_vSetDsgVar0To255(M_CFast_ucGetRealIndice(13), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),3) ;
  CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;
  LocalCFast_fn_vSetDsgVar0To255(9, 27) ;

/* [Func : Temps_LitDT] ********** [3, 0, 2]*/
  CFast_CallFunction2_Static( 9 ) ;
  LocalCFast_fn_vSetDsgVarInteger(24, (LocalCFast_fn_lGetDsgVarInteger(24)+MTH_M_xRealToLong(M_GetSetParam_xValue(CFast_g_a_stParam+2)))) ;
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))) ) {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(1.000000f) ;
  } else {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(0.000000f) ;
  }
  M_GetSetParam_lValue(&CFast_g_a_stParam[1]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
  M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [7, 1, 1]*/

/* [Op : ..] ********** [11, 1, 0]*/

/* [Proc : PAD_LitJoyAnalogiqueModeMario] *********** [12, 8, 0]*/
  CFast_fn_vSetUltraOperatorPersoRef(12);
    M_lValueInterpret(p_stPseudoTree+1700) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
  CFast_CallProcedure_Static( 1695 ) ;
/* [EndTree] ************ [3]*/
}

/*
 * Model : YLT_RaymanModel Comportement BNT_NagePlonge
 */
void CFast_YLT_RaymanModel_Cmp_BNT_NagePlonge (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Cond : VEC_VecteurNul] ********** [1, 1, 1]*/
  if ( CFast_CallCondition_Static(1229) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 774 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      return ;
    }
  }
  else {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
    fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
    CFast_CallProcedure_Static( 776 ) ;
    if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
      return ;
    }
  }
/* [EndTree] ************ [0]*/
  LocalCFast_fn_vSetDsgVarBoolean(52, 0) ;
  LocalCFast_fn_vSetDsgVarBoolean(51, 0) ;

/* [Proc : COL_TraiteCollisionTraversee] *********** [1, 1, 0]*/
  CFast_CallProcedure_Static( 785 ) ;

/* [Func : COL_VecteurNormalCollision2] ********** [1, 1, 2]*/
  CFast_CallFunction2_Static( 514 ) ;
  M_Full_GetSetParam_Float(&CFast_g_a_stParam[4], MTH_M_xMul((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 21)))),MTH_M_xFloatToReal(2.000000f)));
  M_GetSetParam_xValue(&CFast_g_a_stParam[3]) = MTH_M_bLess(M_GetSetParam_xValue(&CFast_g_a_stParam[4]), MTH_M_xFloatToReal(-80.000000f)) ?  MTH_M_xFloatToReal(-80.000000f) : (MTH_M_bGreater(M_GetSetParam_xValue(&CFast_g_a_stParam[4]), MTH_M_xFloatToReal(-5.000000f)) ? MTH_M_xFloatToReal(-5.000000f) : M_GetSetParam_xValue(&CFast_g_a_stParam[4])) ;
  M_GetSetParam_Type(&CFast_g_a_stParam[3]) = E_vt_Float;

/* [Math_ : Math_ReelBorne] ********** [1, 3, 3]*/
  MTH3D_M_vMulScalarVector(&M_GetSetParam_stVertexValue(&CFast_g_a_stParam[1]), M_GetSetParam_xValue(&CFast_g_a_stParam[3]), &M_GetSetParam_stVectorValue(&CFast_g_a_stParam[2]));
  M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Vector;

/* [Proc : ACT_ImposeVecteurVitesseAbsolu] *********** [1, 1, 0]*/
    M_p_stVectorInterpret(p_stPseudoTree+1704) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+1);
  CFast_CallProcedure_Static( 1703 ) ;
  LocalCFast_fn_vSetDsgVarBoolean(106, 0) ;
  LocalCFast_fn_vSetDsgVarInteger(24, 0) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
  CFast_CallProcedure_Static( 787 ) ;
  CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
  return ;
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement BNT_NageSaute
 */
void CFast_YLT_RaymanModel_Cmp_BNT_NageSaute (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;


/* [Op : .Z] ********** [1, 1, 2]*/
  CFast_CallOperator2_Static( 1152 ) ;
  M_Full_GetSetParam_Float(&CFast_g_a_stParam[3], MTH_M_xAdd((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 50)))),MTH_M_xFloatToReal(0.050000f)));

/* [Cond : >] ********** [2, 2, 1]*/
  if ( MTH_M_bGreater(M_GetSetParam_xValue(&CFast_g_a_stParam[2]), M_GetSetParam_xValue(&CFast_g_a_stParam[3])) ) {
    LocalCFast_fn_vSetDsgVarBoolean(52, 0) ;
    LocalCFast_fn_vSetDsgVarBoolean(51, 0) ;
    LocalCFast_fn_vSetDsgVarFloat(98, MTH_M_xFloatToReal(0.00000f)) ;
    LocalCFast_fn_vSetDsgVarBoolean(62, 0) ;
    LocalCFast_fn_vSetDsgVarInteger(8, 1) ;
    LocalCFast_fn_vSetDsgVarFloat(28, MTH_M_xFloatToReal(12.00000f)) ;

/* [Proc : ChangeMonComportementEtMonReflexe] *********** [2, 2, 0]*/
    CFast_CallProcedure_Static( 1437 ) ;
    CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    return ;
  }
  else {

/* [Proc : ACT_ImposeVitesseZ] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 1705 ) ;
  }
/* [EndTree] ************ [0]*/
}

/*
 * Model : YLT_RaymanModel Comportement BNT_WalkRunComport
 */
void CFast_YLT_RaymanModel_Cmp_BNT_WalkRunComport (void)
{
  MTH3D_tdstVector stVector0;


  register  AI_tdstMind * p_stLocalMind0 = p_stGlobalMind ;
  register struct tdstNodeInterpret_   *p_stRefTree = gp_stRefTree;
  register struct tdstNodeInterpret_ * p_stPseudoTree = gp_stPseudoTree ;
  register tdstIntelligence * p_stIntelligence = p_stLocalMind0 -> p_stIntelligence ;
  register char * p_cLocalDsgMemBuffer = p_cGlobalDsgMemBuffer ;
  register tdstDsgVarInfo * p_stLocalDsgVarInfo = p_stGlobalDsgVarInfo ;

  register long long1 , long2 ;
  long long3 , long4 , long5 , long6 , long7 , long8 ;
  register AI_tdstMind * p_stLocalMind1 , * p_stLocalMind2 , * p_stLocalMind4 , * p_stLocalMind8 ;

  switch(p_stLocalMind0->CFast_lCmpMetaAction) {
  case 1 : goto label1 ;
  case 2 : goto label2 ;
  }
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))) ) {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(1.000000f) ;
  } else {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xFloatToReal(0.000000f) ;
  }
  M_GetSetParam_lValue(&CFast_g_a_stParam[1]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
  M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [4, 1, 1]*/

/* [Op : ..] ********** [8, 1, 0]*/

/* [Proc : PAD_LitJoyAnalogiqueModeMario] *********** [9, 8, 0]*/
  CFast_fn_vSetUltraOperatorPersoRef(12);
    M_lValueInterpret(p_stPseudoTree+1712) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
  CFast_CallProcedure_Static( 1707 ) ;

/* [Cond : <] ********** [2, 2, 2]*/
  long1 = MTH_M_bLess((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 78)))), (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 83))))) ? 1 : 0;
  if ( !long1 ) {
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 10))));
if ( long1 ) {
      long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16))));
    }
    long1 = long1 ? 0 : 1 ;
  }
  if ( long1 ) {

/* [Op : ..] ********** [8, 1, 0]*/

/* [Proc : PAD_LitJoyAnalogiqueModeMario] *********** [9, 8, 0]*/
    CFast_fn_vSetUltraOperatorPersoRef(12);
    CFast_CallProcedure_Static( 818 ) ;

/* [Cond : EstDansAction] ********** [2, 1, 1]*/
    long2 = CFast_CallCondition_Static(1715) ;
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[1], long2) ;

/* [Op : :=] ********** [2, 2, 0]*/
      M_lValueInterpret(p_stPseudoTree+1719) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
    CFast_CallOperator0_Static ( 1717 ) ;
    if ( CFast_YLT_RaymanModel_Sbr_51 ( ) )
      return ;
/* [MacroRef : 0] ********** [0]*/
  }
/* [EndTree] ************ [0]*/
  LocalCFast_fn_vSetDsgVarInteger(38, 1) ;
  if ( CFast_YLT_RaymanModel_Sbr_32 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/
  LocalCFast_fn_vSetDsgVar0To255(87, 0) ;
  p_stLocalMind0->CFast_lCmpMetaAction = 1;
label1 :
  if ( CFast_YLT_RaymanModel_Sbr_33 ( ) )
    return ;
  p_stLocalMind0 -> CFast_lCmpMetaAction = 0 ;
/* [MacroRef : 0] ********** [0]*/

/* [Cond : BoutonAppuye] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+27)) ) {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
    if ( CFast_CallCondition_Static(0) ) {
      CFast_YLT_RaymanModel_Sbr_37 ( ) ;
/* [MacroRef : 0] ********** [0]*/

/* [Op : .] ********** [2, 2, 0]*/

/* [Func : ACT_LitBooleenDansTableau] ********** [4, 2, 1]*/
      M_eFuncIdInterpret(&CFast_g_a_stPseudoTree[E_ti_Function][0]) = (tdeFuncId)248 ;

/* [Op : .] ********** [0, 2, 0]*/
      M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][1], E_ti_Operator);
      M_eOperatorIdInterpret(&CFast_g_a_stPseudoTree[3][1]) = (tdeOperatorId)12 ;
      CFast_memcpy ( 3, 2, 15) ;
      CFast_memcpy ( 3, 3, 16) ;
      M_SetTypeInterpret(&CFast_g_a_stPseudoTree[3][4], E_ti_Constant);
      M_lValueInterpret(&CFast_g_a_stPseudoTree[3][4]) = 1143 ;
      CFast_CallFunction1_NoStatic( ) ;
      LocalCFast_fn_vSetDsgVarBoolean(120,  ۟(CFast_g_a_stParam+1)) ;

/* [Proc : ChangeActionAvecEvenements] *********** [2, 2, 0]*/
      fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
      CFast_CallProcedure_Static( 931 ) ;
      if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
        return ;
      }
      LocalCFast_fn_vSetDsgVar_32768To32767(32, LocalCFast_fn_lGetDsgVar_32768To32767(33)) ;
    }
    else {
      LocalCFast_fn_vSetDsgVar_32768To32767(32, 0) ;
    }
    LocalCFast_fn_vSetDsgVarBoolean(34, 0) ;
    LocalCFast_fn_vSetDsgVarInteger(24, 0) ;

/* [Proc : ChangeMonComportement] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 934 ) ;
    CFast_YLT_RaymanModel_ArrayComport[p_stIntelligence->p_stCurrentComport->CFast_lMyIndex]();
    return ;
  }
/* [EndTree] ************ [0]*/

/* [Cond : BoutonJusteAppuye] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsJustValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+40)) ) {
    if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 16)))) ) {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
      if ( !( CFast_CallCondition_Static(0) ) ) {
        LocalCFast_fn_vSetDsgVarAction(117, NULL) ;

/* [Op : :=] ********** [2, 2, 0]*/
        CFast_CallOperator0_Static ( 403 ) ;

/* [Op : :=] ********** [2, 2, 0]*/
        CFast_CallOperator0_Static ( 385 ) ;
        LocalCFast_fn_vSetDsgVarBoolean(120, 0) ;
        LocalCFast_fn_vSetDsgVarBoolean(20, 1) ;
        LocalCFast_fn_vSetDsgVarFloat(19, MTH_M_xFloatToReal(0.00000f)) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
        fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
        CFast_CallProcedure_Static( 1720 ) ;
        if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
          return ;
        }
      }
    }
  }
/* [EndTree] ************ [0]*/
  if ( CFast_YLT_RaymanModel_Sbr_35 ( ) )
    return ;
/* [MacroRef : 0] ********** [0]*/

/* [Cond : BoutonJusteAppuye] ********** [1, 1, 1]*/
  if ( (long)IPT_fn_bIsJustValidated((IPT_tdxHandleToEntryElement) M_lValueInterpret(p_stRefTree+30)) ) {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
    if ( CFast_CallCondition_Static(0) ) {
      if ( CFast_YLT_RaymanModel_Sbr_18 ( ) )
        return ;
/* [MacroRef : 0] ********** [0]*/
      CFast_YLT_RaymanModel_Sbr_1 ( ) ;
/* [MacroRef : 0] ********** [0]*/
      LocalCFast_fn_vSetDsgVarInteger(29, 0) ;
      LocalCFast_fn_vSetDsgVarFloat(30, MTH_M_xFloatToReal(8.00000f)) ;
    }
    else {

/* [Cond : <] ********** [2, 2, 1]*/
      if ( CFast_CallCondition_Static(1722) ) {
        LocalCFast_fn_vSetDsgVarFloat(30, MTH_M_xFloatToReal(8.00000f)) ;
        LocalCFast_fn_vSetDsgVarInteger(29, 0) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
        fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
        CFast_CallProcedure_Static( 929 ) ;
        if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
          return ;
        }
      }
      else {
        LocalCFast_fn_vSetDsgVarFloat(30, MTH_M_xFloatToReal(8.00000f)) ;
        LocalCFast_fn_vSetDsgVarInteger(29, 1) ;

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
        fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
        CFast_CallProcedure_Static( 412 ) ;
        if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
          return ;
        }
      }
    }
    LocalCFast_fn_vSetDsgVarInteger(23, 0) ;
    p_stLocalMind0->CFast_lCmpMetaAction = 2;
label2 :
    if ( CFast_YLT_RaymanModel_Sbr_36 ( ) )
      return ;
    p_stLocalMind0 -> CFast_lCmpMetaAction = 0 ;
/* [MacroRef : 0] ********** [0]*/
  }
/* [EndTree] ************ [0]*/
  if ( ! ( gcGlobAleat & 0x3 ) )
  {

/* [Cond : Col_CollisionAvecMur] ********** [0, 0, 1]*/
    if ( CFast_CallCondition_Static(429) ) {
      CFast_YLT_RaymanModel_Sbr_52 ( ) ;
/* [MacroRef : 0] ********** [0]*/
    }
  }
/* [EndTree] ************ [0]*/
  M_Full_GetSetParam_Float(&CFast_g_a_stParam[4], MTH_M_xSub((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 81)))),(*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 78))))));
  M_Full_GetSetParam_Float(&CFast_g_a_stParam[3], MTH_M_xMul(M_GetSetParam_xValue(&CFast_g_a_stParam[4]),(*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 108))))));
  M_Full_GetSetParam_Float(&CFast_g_a_stParam[4], MTH_M_xSub(MTH_M_xLongToReal(100),(*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 81))))));
  M_Full_GetSetParam_Float(&CFast_g_a_stParam[2], MTH_M_xDiv(M_GetSetParam_xValue(&CFast_g_a_stParam[3]),M_GetSetParam_xValue(&CFast_g_a_stParam[4])));
  M_GetSetParam_xValue(&CFast_g_a_stParam[1]) = MTH_M_xMin(MTH_M_xFloatToReal(0.000000f),M_GetSetParam_xValue(&CFast_g_a_stParam[2]));
  M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Float;

/* [Math_ : Math_MinimumReel] ********** [0, 2, 1]*/
  LocalCFast_fn_vSetDsgVarFloat(36, M_GetSetParam_xValue(CFast_g_a_stParam+1)) ;

/* [Func : HIER_MonPere] ********** [1, 0, 5]*/
  CFast_CallFunction5_Static( 173 ) ;
  long2 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 111)))); /* oups */

/* [Cond : ObjetValide] ********** [2, 1, 4]*/
    M_lValueInterpret(p_stPseudoTree+214) = M_GetSetParam_lValue(CFast_g_a_stParam+5);
  long3 = CFast_CallCondition_Static(213) ;

/* [Cond : Ou] ********** [1, 2, 2]*/
  long2 |= long3;

/* [Cond : <] ********** [3, 2, 3]*/
  long3 = MTH_M_bLess((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 79)))), (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 78))))) ? 1 : 0;

/* [Cond : Ou] ********** [1, 2, 1]*/
  long2 |= long3;
M_Full_GetSetParam_Integer(&CFast_g_a_stParam[1], long2) ;

/* [Op : :=] ********** [2, 2, 0]*/
    M_lValueInterpret(p_stPseudoTree+1727) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
  CFast_CallOperator0_Static ( 1725 ) ;

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
  if ( CFast_CallCondition_Static(0) ) {

/* [Proc : FixeFacteurVitesseAnimation] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 1090 ) ;
  }
  else {

/* [Cond : ACT_TestCustomBitDEtatCourant] ********** [1, 1, 1]*/
    if ( CFast_CallCondition_Static(1083) ) {
      M_Full_GetSetParam_Float(&CFast_g_a_stParam[2], MTH_M_xMul((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 36)))),MTH_M_xFloatToReal(-40.000000f)));
      M_GetSetParam_lValue(&CFast_g_a_stParam[1]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
      M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [0, 1, 1]*/

/* [Proc : FixeFacteurVitesseAnimation] *********** [1, 1, 0]*/
        M_lValueInterpret(p_stPseudoTree+1729) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
      CFast_CallProcedure_Static( 1728 ) ;
    }
    else {

/* [Cond : >] ********** [2, 2, 1]*/
      if ( MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 36)))), MTH_M_xFloatToReal(-2.000000f)) ) {

/* [Cond : EstDansAction] ********** [1, 1, 1]*/
        if ( !( CFast_CallCondition_Static(1715) ) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
          fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
          CFast_CallProcedure_Static( 1730 ) ;
          if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
            return ;
          }
        }
        M_Full_GetSetParam_Float(&CFast_g_a_stParam[2], MTH_M_xMul((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 36)))),MTH_M_xFloatToReal(-110.000000f)));
        M_GetSetParam_lValue(&CFast_g_a_stParam[1]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
        M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [0, 1, 1]*/

/* [Proc : FixeFacteurVitesseAnimation] *********** [1, 1, 0]*/
          M_lValueInterpret(p_stPseudoTree+1729) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
        CFast_CallProcedure_Static( 1728 ) ;
      }
      else {

/* [Cond : >] ********** [2, 2, 1]*/
        if ( MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 36)))), MTH_M_xFloatToReal(-5.000000f)) ) {

/* [Cond : EstDansAction] ********** [1, 1, 1]*/
          if ( !( CFast_CallCondition_Static(1732) ) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
            fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
            CFast_CallProcedure_Static( 1734 ) ;
            if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
              return ;
            }
            LocalCFast_fn_vSetDsgVarBoolean(34, 0) ;
          }
          M_Full_GetSetParam_Float(&CFast_g_a_stParam[3], MTH_M_xMul((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 36)))),MTH_M_xFloatToReal(-30.000000f)));
          M_Full_GetSetParam_Float(&CFast_g_a_stParam[2], MTH_M_xAdd(M_GetSetParam_xValue(&CFast_g_a_stParam[3]),MTH_M_xFloatToReal(0.000000f)));
          M_GetSetParam_lValue(&CFast_g_a_stParam[1]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
          M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [0, 1, 1]*/

/* [Proc : FixeFacteurVitesseAnimation] *********** [1, 1, 0]*/
            M_lValueInterpret(p_stPseudoTree+1729) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
          CFast_CallProcedure_Static( 1728 ) ;
        }
        else {

/* [Cond : >] ********** [2, 2, 1]*/
          if ( MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 36)))), MTH_M_xFloatToReal(-7.000000f)) ) {

/* [Cond : EstDansAction] ********** [1, 1, 1]*/
            if ( !( CFast_CallCondition_Static(1736) ) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
              fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
              CFast_CallProcedure_Static( 1738 ) ;
              if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
                return ;
              }
              LocalCFast_fn_vSetDsgVarBoolean(34, 0) ;
            }
            M_Full_GetSetParam_Float(&CFast_g_a_stParam[2], MTH_M_xMul((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 36)))),MTH_M_xFloatToReal(-20.000000f)));
            M_GetSetParam_lValue(&CFast_g_a_stParam[1]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
            M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [0, 1, 1]*/

/* [Proc : FixeFacteurVitesseAnimation] *********** [1, 1, 0]*/
              M_lValueInterpret(p_stPseudoTree+1729) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
            CFast_CallProcedure_Static( 1728 ) ;
          }
          else {

/* [Cond : EstDansAction] ********** [1, 1, 1]*/
            if ( !( CFast_CallCondition_Static(1740) ) ) {

/* [Proc : ChangeAction] *********** [1, 1, 0]*/
              fn_vSetProcedureActionReturn(C_ACTION_ENGINE_CONTINUE);
              CFast_CallProcedure_Static( 1742 ) ;
              if (fn_ucGetProcedureActionReturn() != (C_ACTION_ENGINE_CONTINUE))
{
                return ;
              }
              LocalCFast_fn_vSetDsgVarBoolean(34, 0) ;
            }
            M_Full_GetSetParam_Float(&CFast_g_a_stParam[2], MTH_M_xMul((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 36)))),MTH_M_xFloatToReal(-10.000000f)));
            M_GetSetParam_lValue(&CFast_g_a_stParam[1]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
            M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [0, 1, 1]*/

/* [Proc : FixeFacteurVitesseAnimation] *********** [1, 1, 0]*/
              M_lValueInterpret(p_stPseudoTree+1729) = M_GetSetParam_lValue(CFast_g_a_stParam+1);
            CFast_CallProcedure_Static( 1728 ) ;
          }
        }
      }
    }
  }
/* [EndTree] ************ [0]*/
  M_GetSetParam_xValue(&CFast_g_a_stParam[5]) = MTH_M_xAbs((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 77))))) ;
  M_GetSetParam_Type(&CFast_g_a_stParam[5]) = E_vt_Float;

/* [Math_ : Math_ValeurAbsolue] ********** [1, 1, 5]*/
  M_Full_GetSetParam_Float(&CFast_g_a_stParam[4], MTH_M_xMul(MTH_M_xFloatToReal(-0.010000f),M_GetSetParam_xValue(&CFast_g_a_stParam[5])));
  M_Full_GetSetParam_Float(&CFast_g_a_stParam[3], MTH_M_xAdd(M_GetSetParam_xValue(&CFast_g_a_stParam[4]),MTH_M_xFloatToReal(1.000000f)));
  M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_bLess(M_GetSetParam_xValue(&CFast_g_a_stParam[3]), MTH_M_xFloatToReal(0.000000f)) ?  MTH_M_xFloatToReal(0.000000f) : (MTH_M_bGreater(M_GetSetParam_xValue(&CFast_g_a_stParam[3]), MTH_M_xFloatToReal(1.000000f)) ? MTH_M_xFloatToReal(1.000000f) : M_GetSetParam_xValue(&CFast_g_a_stParam[3])) ;
  M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;

/* [Math_ : Math_ReelBorne] ********** [0, 3, 2]*/
  LocalCFast_fn_vSetDsgVarFloat(36, MTH_M_xMul(LocalCFast_fn_xGetDsgVarFloat(36),M_GetSetParam_xValue(CFast_g_a_stParam+2))) ;
  if ( (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 110)))) ) {

/* [Func : ACT_ViseePerso] ********** [0, 0, 2]*/
    CFast_CallFunction2_Static( 12 ) ;

/* [Func : COL_VecteurNormalCollision2] ********** [2, 1, 3]*/
    CFast_CallFunction3_Static( 1744 ) ;

/* [Func : VEC_ProduitScalaire] ********** [2, 2, 1]*/
      M_p_stVectorInterpret(p_stPseudoTree+1098) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+2);
      M_p_stVectorInterpret(p_stPseudoTree+1099) = &M_GetSetParam_stVectorValue(CFast_g_a_stParam+3);
    CFast_CallFunction1_Static( 1097 ) ;
    LocalCFast_fn_vSetDsgVarFloat(37, M_GetSetParam_xValue(CFast_g_a_stParam+1)) ;

/* [Cond : >] ********** [2, 2, 1]*/
    if ( MTH_M_bGreater((*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 37)))), MTH_M_xFloatToReal(0.000000f)) ) {
      LocalCFast_fn_vSetDsgVarFloat(36, MTH_M_xMul(LocalCFast_fn_xGetDsgVarFloat(36),MTH_M_xAdd(MTH_M_xMul(LocalCFast_fn_xGetDsgVarFloat(37),LocalCFast_fn_xGetDsgVarFloat(110)),MTH_M_xFloatToReal(1.00000f)))) ;
    }
  }
/* [EndTree] ************ [0]*/

/* [Cond : ANI_TestFinAnim] ********** [0, 0, 2]*/
  long1 = CFast_CallCondition_Static(27) ;
if ( long1 ) {
    long1 = (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 34))));
  }
  if ( long1 ) {
    LocalCFast_fn_vSetDsgVarBoolean(34, 0) ;
  }
/* [EndTree] ************ [0]*/
  if ( !( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 34)))) ) ) {

/* [Proc : ACT_ProposeVitesseY] *********** [1, 1, 0]*/
    CFast_CallProcedure_Static( 1746 ) ;
  }
/* [EndTree] ************ [0]*/
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 96)))) ) {
    M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[1]) = MTH_M_xFloatToReal(0.000000f) ;
  } else {
    M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[1]) = MTH_M_xFloatToReal(0.800000f) ;
  }
  LocalCFast_fn_vSetDsgVarFloat(80, M_GetSetParam_xValue(CFast_g_a_stParam+1)) ;
#ifndef U64
  if ( (*((char *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 96)))) ) {
    M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[1]) = MTH_M_xFloatToReal(0.700000f) ;
  } else {
    M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[1]) = MTH_M_xFloatToReal(0.900000f) ;
  }
  LocalCFast_fn_vSetDsgVarFloat(80, M_GetSetParam_xValue(CFast_g_a_stParam+1)) ;
#endif
/* [EndTree] ************ [0]*/
  CFast_fn_vSetDsgVarBoolean(M_CFast_ucGetRealIndice(14), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),1) ;
  CFast_fn_vSetDsgVar0To255(M_CFast_ucGetRealIndice(13), AI_M_stGetMindOfSuperObj(M_CFast_hGetPersoRef( 12)),3) ;
  if ( (*((MTH_tdxReal *)(M_LocalGetDsgVarAddr(p_stLocalMind0, 36)))) > MTH_M_xFloatToReal(-5.000000f) ) {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xLongToReal(1) ;
  } else {
    M_GetSetParam_Type(&CFast_g_a_stParam[2]) = E_vt_Float;
    M_GetSetParam_xValue(&CFast_g_a_stParam[2]) = MTH_M_xLongToReal(2) ;
  }
  M_GetSetParam_lValue(&CFast_g_a_stParam[1]) = MTH_M_xRealToLong(M_GetSetParam_xValue(&CFast_g_a_stParam[2])) ;
  M_GetSetParam_Type(&CFast_g_a_stParam[1]) = E_vt_Integer;

/* [Math_ : Math_ConversionEnEntier] ********** [0, 1, 1]*/
  LocalCFast_fn_vSetDsgVar0To255(9, M_GetSetParam_lValue(CFast_g_a_stParam+1)) ;

/* [Func : Temps_LitDT] ********** [0, 0, 2]*/
  CFast_CallFunction2_Static( 9 ) ;
  LocalCFast_fn_vSetDsgVarInteger(24, (LocalCFast_fn_lGetDsgVarInteger(24)+MTH_M_xRealToLong(M_GetSetParam_xValue(CFast_g_a_stParam+2)))) ;
/* [EndTree] ************ [0]*/
}

void CFast_Dummy_YLT_RaymanModel(void) {
#ifdef DEBUG_CFAST
  long lSize ;
  FILE *fd = fopen ( "CfastAISize.log", "a") ;

  lSize = (long)CFast_Dummy_YLT_RaymanModel - (long)CFast_YLT_RaymanModel_Main ;
  lSize += sizeof ( CFast_YLT_RaymanModel_ArrayReflex ) ;
  lSize += sizeof ( CFast_YLT_RaymanModel_ArrayComport ) ;
  lSize += 13984;
  fprintf ( fd, "YLT_RaymanModel : 	AI = 91008\tC = %d\tDiff = %+d\n", lSize, 91008-lSize ) ;
  fclose (fd) ;
#endif /* DEBUG_CFAST */
}
