home *** CD-ROM | disk | FTP | other *** search
/ Mobiclic 161 / MOBICLIC161.ISO / mac / DATA / VOT161 / VOT161_00 / VOT161_00.swf / scripts / frame_1 / DoAction.as
Text File  |  2014-01-15  |  31KB  |  1,231 lines

  1. function initKeyPause()
  2. {
  3.    gPauseOn = 0;
  4.    gPauseSpaceOn = 0;
  5.    gPauseSpaceEnCours = 0;
  6. }
  7. function initGen()
  8. {
  9.    this._lockroot = true;
  10.    gClipGen = this;
  11.    Stage.showMenu = false;
  12.    gLangue = "FR";
  13.    gMusicOn = 1;
  14.    gSousTitre = 0;
  15.    gST = 0;
  16.    gVolume = 100;
  17.    gWidth = moduleInfo.returnNodeByPath("BackOffice").firstChild.attributes.width;
  18.    gHeight = moduleInfo.returnNodeByPath("BackOffice").firstChild.attributes.height;
  19.    if(gWidth == undefined)
  20.    {
  21.       gWidth = 800;
  22.    }
  23.    else
  24.    {
  25.       gWidth = Number(gWidth);
  26.    }
  27.    if(gHeight == undefined)
  28.    {
  29.       gHeight = 600;
  30.    }
  31.    else
  32.    {
  33.       gHeight = Number(gHeight);
  34.    }
  35.    initKeyPause();
  36. }
  37. function testeDebutCommentSpecial()
  38. {
  39.    switch(gCommentOn.id.split("_")[gCommentOn.id.split("_").length - 1])
  40.    {
  41.       case "bz":
  42.       case "BZ":
  43.          trace("-------  BZ on-----------");
  44.          startMascotte();
  45.          break;
  46.       case "ze":
  47.       case "ZE":
  48.          trace("-------  ZE on-----------");
  49.          DesactiveOEIL();
  50.          if(BT_OEIL.gEtat !== 3)
  51.          {
  52.             BT_OEIL.gotoAndPlay("E3");
  53.          }
  54.          else
  55.          {
  56.             BT_OEIL.OEIL_P.gotoAndPlay("parle");
  57.          }
  58.          afficherRolls();
  59.          break;
  60.       case "bi":
  61.       case "BI":
  62.          trace("-------  BI on-----------");
  63.          BT_AIDE.BT_AIDE.gotoAndPlay("E2");
  64.    }
  65. }
  66. function testeFinCommentSpecial()
  67. {
  68.    switch(gCommentOn.id.split("_")[gCommentOn.id.split("_").length - 1])
  69.    {
  70.       case "bz":
  71.       case "BZ":
  72.          trace("-------  BZ off-----------");
  73.          stopMascotte();
  74.          break;
  75.       case "ze":
  76.       case "ZE":
  77.          trace("-------  ZE off-----------");
  78.          ActiveOEIL();
  79.          BT_OEIL.OEIL_P.gotoAndPlay("rentre");
  80.          BT_OEIL.gClicOn = undefined;
  81.          masquerRolls();
  82.          break;
  83.       case "bi":
  84.       case "BI":
  85.          trace("-------  BI off-----------");
  86.          BT_AIDE.BT_AIDE.gotoAndPlay("E1");
  87.    }
  88.    if(pauseOnMod == undefined)
  89.    {
  90.       _root.afficherMascottes();
  91.    }
  92. }
  93. function stopComment()
  94. {
  95.    if(gCommentOn !== undefined)
  96.    {
  97.       testeFinCommentSpecial();
  98.       delete gCommentOn.onSoundComplete;
  99.       gCommentOn.stop();
  100.       gCommentOn = undefined;
  101.       if(gMusicOn == 1 && gMusic !== undefined && gBlockMusic == undefined)
  102.       {
  103.          soundObjects[gMusic].setVolume(gVolume);
  104.       }
  105.       if(gPauseOn == undefined || gPauseOn == 0)
  106.       {
  107.          removeMovieClip("mcClicZap");
  108.       }
  109.       gBlockST = undefined;
  110.       gereTextes.masqueST();
  111.       if(gClipTarget !== undefined)
  112.       {
  113.          gClipTarget.gotoAndStop(gClipTargetLabel);
  114.          gClipTarget = undefined;
  115.          gClipTargetLabel = undefined;
  116.       }
  117.    }
  118. }
  119. function pauseComment()
  120. {
  121.    trace("pauseComment " + gCommentOn);
  122.    if(gCommentOn !== undefined)
  123.    {
  124.       gCommentOn.stop();
  125.       mcClicZap._visible = false;
  126.    }
  127. }
  128. function continueComment()
  129. {
  130.    trace("continueComment " + gCommentOn);
  131.    if(gCommentOn !== undefined)
  132.    {
  133.       gCommentOn.start(gCommentOn.position / 1000);
  134.       mcClicZap._visible = true;
  135.    }
  136. }
  137. function joueSon(p)
  138. {
  139.    var _loc4_ = p.nomSon;
  140.    gSoundString = _loc4_;
  141.    if(p.gNextLabel != undefined)
  142.    {
  143.       _root.gNextLabel = p.gNextLabel;
  144.    }
  145.    if(p.mc !== undefined)
  146.    {
  147.       gClipRef = p.mc;
  148.    }
  149.    else
  150.    {
  151.       gClipRef = _root;
  152.    }
  153.    if(p.zapBlock !== undefined)
  154.    {
  155.       gClicZap = p.zapBlock;
  156.    }
  157.    else
  158.    {
  159.       gClicZap = "ZAP_BLOCK";
  160.    }
  161.    if(p.actionFin !== undefined)
  162.    {
  163.       gActionFinSon = p.actionFin;
  164.    }
  165.    else
  166.    {
  167.       gActionFinSon = "PLAY";
  168.    }
  169.    stopComment();
  170.    if(p.mcCible !== undefined)
  171.    {
  172.       if(typeof p.mcCible == "movieclip")
  173.       {
  174.          gClipTarget = p.mcCible;
  175.       }
  176.       else
  177.       {
  178.          gClipTarget = gClipRef[p.mcCible];
  179.       }
  180.       if(p.mcLabelOut !== undefined)
  181.       {
  182.          gClipTargetLabel = p.mcLabelOut;
  183.       }
  184.       else
  185.       {
  186.          gClipTargetLabel = gClipTarget._currentframe;
  187.       }
  188.       if(p.mcLabelIn !== undefined)
  189.       {
  190.          gClipTarget.gotoAndPlay(p.mcLabelIn);
  191.       }
  192.       else
  193.       {
  194.          gClipTarget.gotoAndPlay("parle");
  195.       }
  196.    }
  197.    gCommentName = "S_" + gLangue + "_" + gModuleName + "_";
  198.    trace("joueSon " + gCommentName + _loc4_);
  199.    mySound = soundObjects[gCommentName + _loc4_];
  200.    _root.afficherMascottes(p.Mascottes);
  201.    if(mySound !== undefined)
  202.    {
  203.       gCommentOn = mySound;
  204.       gCommentOn.p = p;
  205.       gCommentOn.id = gCommentName + _loc4_;
  206.       testeDebutCommentSpecial();
  207.       if(gMusicOn == 1 && gMusic !== undefined && gBlockMusic == undefined)
  208.       {
  209.          soundObjects[gMusic].setVolume(gVolume * 40 / 100);
  210.       }
  211.       mySound.setVolume(gVolume);
  212.       if(gCommentOnPausePos !== undefined)
  213.       {
  214.          mySound.start(gCommentOnPausePos / 1000);
  215.          gCommentOnPause = undefined;
  216.          gCommentOnPausePos = undefined;
  217.       }
  218.       else
  219.       {
  220.          mySound.start();
  221.       }
  222.    }
  223.    else
  224.    {
  225.       trace("______" + getSoundByID(gCommentName + _loc4_) + gCommentName);
  226.       var _loc5_ = getSoundByID(gCommentName + _loc4_);
  227.       if(_loc5_ !== undefined)
  228.       {
  229.          mySound = new Sound();
  230.          mySound.onLoad = function(success)
  231.          {
  232.             if(success)
  233.             {
  234.                if(gCommentOnPausePos !== undefined)
  235.                {
  236.                   mySound.start(gCommentOnPausePos / 1000);
  237.                   gCommentOnPause = undefined;
  238.                   gCommentOnPausePos = undefined;
  239.                }
  240.                else
  241.                {
  242.                   mySound.start();
  243.                }
  244.             }
  245.          };
  246.          mySound.loadSound(this.gModulePath + _loc5_.attributes.src,true);
  247.          gCommentOn = mySound;
  248.          gCommentOn.p = p;
  249.          gCommentOn.id = gCommentName + _loc4_;
  250.          testeDebutCommentSpecial();
  251.          if(gMusicOn == 1 && gMusic !== undefined && gBlockMusic == undefined)
  252.          {
  253.             soundObjects[gMusic].setVolume(gVolume * 40 / 100);
  254.          }
  255.       }
  256.    }
  257.    if(mySound == undefined)
  258.    {
  259.       return undefined;
  260.    }
  261.    mySound.onSoundComplete = commentFini;
  262.    if(gClicZap !== "NOZAP_NOBLOCK")
  263.    {
  264.       mcClicZap = creerRectangle({nom:"mcClicZap",pere:_root,level:15000,width:gWidth,height:gHeight,x:0,y:0,alpha:0});
  265.       switch(gClicZap.split("_")[0])
  266.       {
  267.          case "ZAP":
  268.             mcClicZap.useHandCursor = false;
  269.             mcClicZap.onPress = function()
  270.             {
  271.                if(gCommentOn.position !== gCommentOn.duration)
  272.                {
  273.                   trace("clic zap son");
  274.                   stopSon();
  275.                }
  276.             };
  277.             break;
  278.          case "NOZAP":
  279.             mcClicZap.useHandCursor = false;
  280.             mcClicZap.onPress = function()
  281.             {
  282.                trace("no clic allowed");
  283.             };
  284.       }
  285.       mcClicZap._visible = true;
  286.    }
  287.    if(gST == 1 && gBlockST == undefined)
  288.    {
  289.       gereTextes.afficheST(gCommentName + _loc4_);
  290.    }
  291. }
  292. function creerClicZap(p)
  293. {
  294.    if(_global.mcClicZap2 != undefined)
  295.    {
  296.       removeMovieClip(_root.mcClicZap2);
  297.    }
  298.    var _loc0_ = null;
  299.    var _loc4_ = _global.mcClicZap2 = creerRectangle({nom:"mcClicZap2",pere:_root,level:15001,width:gWidth,height:gHeight,x:0,y:0,alpha:0});
  300.    _loc4_.p = p;
  301.    _loc4_.useHandCursor = false;
  302.    _loc4_.onPress = function()
  303.    {
  304.       trace("clic zap " + this.p);
  305.       this.p.retour.call(this.p.ecouteur);
  306.       removeMovieClip(this);
  307.       _global.mcClicZap2 = undefined;
  308.    };
  309.    _loc4_._visible = true;
  310. }
  311. function creerRectangle(p)
  312. {
  313.    var _loc15_ = p.x != undefined ? p.x : 0;
  314.    var _loc13_ = p.y != undefined ? p.y : 0;
  315.    if(p.w != undefined)
  316.    {
  317.       var _loc16_ = p.w;
  318.    }
  319.    else if(p.width != undefined)
  320.    {
  321.       _loc16_ = p.width;
  322.    }
  323.    if(p.h != undefined)
  324.    {
  325.       var _loc14_ = p.h;
  326.    }
  327.    else if(p.height != undefined)
  328.    {
  329.       _loc14_ = p.height;
  330.    }
  331.    var _loc11_ = p.pere != undefined ? p.pere : _root;
  332.    var _loc9_ = p.level != undefined ? p.level : 10;
  333.    var _loc12_ = p.couleur != undefined ? p.couleur : 0;
  334.    var _loc10_ = p.nom != undefined ? p.nom : "ClipSansNom";
  335.    var _loc4_ = p.courbure != undefined ? p.courbure : 0;
  336.    var _loc17_ = p.alpha != undefined ? p.alpha : 100;
  337.    var _loc6_ = 0;
  338.    var _loc7_ = 0;
  339.    var _loc8_ = _loc16_;
  340.    var _loc5_ = _loc14_;
  341.    var _loc3_ = _loc11_.createEmptyMovieClip(_loc10_,_loc9_);
  342.    _loc3_.beginFill(_loc12_,_loc17_);
  343.    _loc3_.moveTo(_loc6_,_loc5_ - _loc4_);
  344.    _loc3_.lineTo(_loc6_,_loc7_ + _loc4_);
  345.    _loc3_.curveTo(_loc6_,_loc7_,_loc6_ + _loc4_,_loc7_);
  346.    _loc3_.lineTo(_loc8_ - _loc4_,_loc7_);
  347.    _loc3_.curveTo(_loc8_,_loc7_,_loc8_,_loc7_ + _loc4_);
  348.    _loc3_.lineTo(_loc8_,_loc5_ - _loc4_);
  349.    _loc3_.curveTo(_loc8_,_loc5_,_loc8_ - _loc4_,_loc5_);
  350.    _loc3_.lineTo(_loc6_ + _loc4_,_loc5_);
  351.    _loc3_.curveTo(_loc6_,_loc5_,_loc6_,_loc5_ - _loc4_);
  352.    _loc3_.endFill();
  353.    _loc3_._x = _loc15_;
  354.    _loc3_._y = _loc13_;
  355.    return _loc3_;
  356. }
  357. function stopSon()
  358. {
  359.    gCommentOn.stop();
  360.    commentFini();
  361. }
  362. function commentFini()
  363. {
  364.    testeFinCommentSpecial();
  365.    gCommentOn = undefined;
  366.    if(gClicZap !== "NOZAP_NOBLOCK")
  367.    {
  368.       removeMovieClip("mcClicZap");
  369.    }
  370.    gBlockST = undefined;
  371.    gereTextes.masqueST();
  372.    if(gMusicOn == 1 && gMusic !== undefined && gBlockMusic == undefined)
  373.    {
  374.       soundObjects[gMusic].setVolume(gVolume);
  375.    }
  376.    if(gClipTarget !== undefined)
  377.    {
  378.       gClipTarget.gotoAndStop(gClipTargetLabel);
  379.       gClipTarget = undefined;
  380.       gClipTargetLabel = undefined;
  381.    }
  382.    switch(gActionFinSon)
  383.    {
  384.       case "RIEN":
  385.          break;
  386.       case "PLAY":
  387.          if(_root.gNextLabel == undefined)
  388.          {
  389.             if(gLineaireOn !== undefined)
  390.             {
  391.                if((_loc0_ = gLineaireOn) !== "_")
  392.                {
  393.                   lSonSuivant = gLineaireOn + gimme2digits(Number(gSoundString.split("_")[gSoundString.split("_").length - 1]) + 1);
  394.                   lLabel = lSonSuivant;
  395.                }
  396.                else
  397.                {
  398.                   lSonSuivant = gimme2digits(Number(gSoundString.split("_")[gSoundString.split("_").length - 1]) + 1);
  399.                   lLabel = gLineaireOn + lSonSuivant;
  400.                }
  401.                gClipRef.gotoAndStop(lLabel);
  402.                joueSon({mc:gClipRef,nomSon:lSonSuivant,zapBlock:gClicZap,actionFin:gActionFinSon});
  403.             }
  404.             else
  405.             {
  406.                gClipRef.play();
  407.             }
  408.          }
  409.          else
  410.          {
  411.             gClipRef.gotoAndPlay(_root.gNextLabel);
  412.             _root.gNextLabel = undefined;
  413.             gLineaireOn = undefined;
  414.          }
  415.          break;
  416.       default:
  417.          gClipRef[gActionFinSon]();
  418.    }
  419. }
  420. function joueBruitage(p)
  421. {
  422.    var _loc2_ = soundObjects[gBruitageName + p.nomSon];
  423.    trace("joueBruitage : " + p.nomSon + " : " + _loc2_ + " A " + p.actionFin);
  424.    if(gListeBruitage == undefined)
  425.    {
  426.       gListeBruitage = [];
  427.       gListeA_fin_Bruitage = [];
  428.       gListeLoop_Bruitage = [];
  429.    }
  430.    _loc2_.setVolume(gVolume);
  431.    _loc2_.id = p.nomSon;
  432.    gListeBruitage.push(_loc2_.id);
  433.    if(p.actionFin !== undefined)
  434.    {
  435.       gActionFinBruitage = p.actionFin;
  436.       gListeA_fin_Bruitage.push(gActionFinBruitage);
  437.    }
  438.    else
  439.    {
  440.       gActionFinBruitage = undefined;
  441.       gListeA_fin_Bruitage.push("");
  442.    }
  443.    _loc2_.p = p;
  444.    _loc2_.onSoundComplete = mx.utils.Delegate.create(_loc2_,finBruitage);
  445.    if(p.loopSon == undefined)
  446.    {
  447.       _loc2_.start(p.offset);
  448.       gListeLoop_Bruitage.push("");
  449.    }
  450.    else
  451.    {
  452.       _loc2_.start(p.offset,p.loopSon);
  453.       gListeLoop_Bruitage.push(p.loopSon);
  454.    }
  455.    if(_loc2_ == undefined)
  456.    {
  457.       trace("joueBruitage : " + p.nomSon + " : " + _loc2_);
  458.    }
  459. }
  460. function stopBruitage(p)
  461. {
  462.    var _loc1_ = soundObjects[gBruitageName + p.nomSon];
  463.    finBruitage(p.nomSon);
  464.    _loc1_.stop();
  465. }
  466. function finBruitage(lSon)
  467. {
  468.    if(lSon == undefined)
  469.    {
  470.       lSon = this.id;
  471.    }
  472.    if(gListeBruitage !== undefined)
  473.    {
  474.       var _loc2_ = getPos(gListeBruitage,lSon);
  475.       if(_loc2_ !== -1)
  476.       {
  477.          if(gListeA_fin_Bruitage[_loc2_] !== "")
  478.          {
  479.             if(typeof gListeA_fin_Bruitage[_loc2_] == "string")
  480.             {
  481.                gClipGen[gListeA_fin_Bruitage[_loc2_]]();
  482.             }
  483.             else
  484.             {
  485.                gListeA_fin_Bruitage[_loc2_].call(this.p.MC);
  486.             }
  487.          }
  488.          gListeA_fin_Bruitage.splice(_loc2_,1);
  489.          gListeLoop_Bruitage.splice(_loc2_,1);
  490.          gListeBruitage.splice(_loc2_,1);
  491.          if(gListeBruitage.length == 0)
  492.          {
  493.             gListeBruitage = undefined;
  494.             gListeA_fin_Bruitage = undefined;
  495.             gListeLoop_Bruitage = undefined;
  496.          }
  497.       }
  498.    }
  499. }
  500. function stopBruit(p)
  501. {
  502.    if(gListeBruitage !== undefined)
  503.    {
  504.       if(getPos(gListeBruitage,p.nomSon) !== -1)
  505.       {
  506.          var _loc1_ = soundObjects[gBruitageName + p.nomSon];
  507.          delete _loc1_.onSoundComplete;
  508.          lSon = p.nomSon;
  509.          gListeA_fin_Bruitage.splice(getPos(gListeBruitage,lSon),1);
  510.          gListeLoop_Bruitage.splice(getPos(gListeBruitage,lSon),1);
  511.          gListeBruitage.splice(getPos(gListeBruitage,lSon),1);
  512.          if(gListeBruitage.length == 0)
  513.          {
  514.             gListeBruitage = undefined;
  515.             gListeA_fin_Bruitage = undefined;
  516.             gListeLoop_Bruitage = undefined;
  517.          }
  518.          _loc1_.stop();
  519.       }
  520.    }
  521. }
  522. function stopAllBruitages(lFinBruitage)
  523. {
  524.    if(gListeBruitage !== undefined)
  525.    {
  526.       var _loc3_ = gListeBruitage.length;
  527.       var _loc1_ = _loc3_ - 1;
  528.       while(_loc1_ >= 0)
  529.       {
  530.          if(lFinBruitage == 1)
  531.          {
  532.             stopBruitage({nomSon:gListeBruitage[_loc1_]});
  533.          }
  534.          else
  535.          {
  536.             stopBruit({nomSon:gListeBruitage[_loc1_]});
  537.          }
  538.          _loc1_ = _loc1_ - 1;
  539.       }
  540.    }
  541. }
  542. function getPos(myList, myValue)
  543. {
  544.    lPresent = -1;
  545.    maPosition = 0;
  546.    while(maPosition < myList.length)
  547.    {
  548.       if(myList[maPosition] == myValue)
  549.       {
  550.          lPresent = maPosition;
  551.          break;
  552.       }
  553.       maPosition++;
  554.    }
  555.    return lPresent;
  556. }
  557. function trouvePosMax(myList)
  558. {
  559.    lMax = myList[0];
  560.    lPosMax = 0;
  561.    i = 1;
  562.    while(i < myList.length)
  563.    {
  564.       if(myList[i] > lMax)
  565.       {
  566.          lMax = myList[i];
  567.          lPosMax = i;
  568.       }
  569.       i++;
  570.    }
  571.    return lPosMax;
  572. }
  573. function duplicate(myList)
  574. {
  575.    newList = [];
  576.    i = 0;
  577.    while(i <= myList.length - 1)
  578.    {
  579.       newList.push(myList[i]);
  580.       i++;
  581.    }
  582.    return newList;
  583. }
  584. function randomiseList(myList)
  585. {
  586.    var _loc3_ = duplicate(myList);
  587.    trace("lList = " + _loc3_);
  588.    var _loc4_ = [];
  589.    var _loc5_ = _loc3_.length;
  590.    var _loc2_ = 0;
  591.    while(_loc2_ < _loc5_)
  592.    {
  593.       var _loc1_ = randomValue(0,_loc3_.length - 1);
  594.       _loc4_.push(_loc3_[_loc1_]);
  595.       _loc3_.splice(_loc1_,1);
  596.       _loc2_ = _loc2_ + 1;
  597.    }
  598.    return _loc4_;
  599. }
  600. function returnNodeByPathRandomise(nodeSent)
  601. {
  602.    var _loc4_ = new XML();
  603.    var _loc5_ = nodeSent.childNodes.length;
  604.    var _loc1_ = 0;
  605.    while(_loc1_ < _loc5_)
  606.    {
  607.       var _loc2_ = randomValue(0,nodeSent.childNodes.length - 1);
  608.       _loc4_.appendChild(nodeSent.childNodes[_loc2_]);
  609.       _loc1_ = _loc1_ + 1;
  610.    }
  611.    return _loc4_;
  612. }
  613. function zapIntro(myLabel)
  614. {
  615.    mcClicZapIntro = this.createEmptyMovieClip("mcClicZapIntro",16031);
  616.    mcClicZapIntro.attachMovie("ClipInvisible","ClipInvisible",2);
  617.    mcClicZapIntro._width = gClipGen._width;
  618.    mcClicZapIntro._height = gClipGen._height;
  619.    mcClicZapIntro._x = 0;
  620.    mcClicZapIntro._y = 0;
  621.    mcClicZapIntro.useHandCursor = false;
  622.    mcClicZapIntro.onPress = function()
  623.    {
  624.       trace("clic zappIntro " + this);
  625.       stopComment();
  626.       gotoAndPlay(myLabel);
  627.       removeZapIntro();
  628.    };
  629. }
  630. function removeZapIntro()
  631. {
  632.    trace("mcClicZapIntrO " + mcClicZapIntro._name + " " + this);
  633.    if(mcClicZapIntro._x != undefined)
  634.    {
  635.       trace("suppression");
  636.       removeMovieClip(mcClicZapIntro);
  637.    }
  638. }
  639. function onMcOut(myMc)
  640. {
  641.    gereCursor(1);
  642.    if(myMc.pLabelOut == undefined)
  643.    {
  644.       myMc.gotoAndPlay("E1");
  645.    }
  646.    else
  647.    {
  648.       myMc.gotoAndPlay(myMc.pLabelOut);
  649.    }
  650.    if(myMc.pSon.split("")[0] == "B")
  651.    {
  652.       stopBruitage({nomSon:myMc.pSon});
  653.    }
  654.    else
  655.    {
  656.       stopComment();
  657.    }
  658.    if(myMc.pIB !== undefined)
  659.    {
  660.       gereTextes.masqueIB();
  661.    }
  662. }
  663. function onMcOver(p)
  664. {
  665.    var myMc = p.mc;
  666.    myMc.pIB = p.codeIB;
  667.    if(p.nomSon == undefined)
  668.    {
  669.       if(p.nomSonC == undefined)
  670.       {
  671.          myMc.pSon = "B_" + myMc._name.split("_")[1];
  672.       }
  673.       else
  674.       {
  675.          myMc.pSon = p.nomSonC;
  676.       }
  677.    }
  678.    else
  679.    {
  680.       myMc.pSon = p.nomSon;
  681.    }
  682.    if(p.actionFin == undefined)
  683.    {
  684.       myMc.actionFin = "RIEN";
  685.    }
  686.    else
  687.    {
  688.       myMc.actionFin = p.actionFin;
  689.    }
  690.    myMc.pLabelOut = p.mcLabelOut;
  691.    myMc.onRollOver = function()
  692.    {
  693.       gereCursor(2);
  694.       if(p.mcLabelIn == undefined)
  695.       {
  696.          this.gotoAndPlay("E2");
  697.       }
  698.       else
  699.       {
  700.          this.gotoAndPlay(p.mcLabelIn);
  701.       }
  702.       if(this.pSon.split("")[0] == "B")
  703.       {
  704.          joueBruitage({nomSon:this.pSon});
  705.       }
  706.       else
  707.       {
  708.          joueSon({nomSon:this.pSon,zapBlock:"NOZAP_NOBLOCK",actionFin:this.actionFin});
  709.       }
  710.       if(this.pIB !== undefined)
  711.       {
  712.          gereTextes.afficheIB({mc:this,codeIB:this.pIB});
  713.       }
  714.    };
  715.    myMc.onRollOut = myMc.onDragOut = function()
  716.    {
  717.       onMcOut(myMc);
  718.    };
  719. }
  720. function desactiveClip(pClip)
  721. {
  722.    delete pClip.onRollOver;
  723.    delete pClip.onRollOut;
  724.    delete pClip.onDragOut;
  725.    delete pClip.onPress;
  726.    delete pClip.onRelease;
  727.    delete pClip.onReleaseOutside;
  728. }
  729. function afficheClipPos(myMc, myX, myY)
  730. {
  731.    myMc._x = myX;
  732.    myMc._y = myY;
  733.    myMc._visible = true;
  734. }
  735. function gimme2digits(X)
  736. {
  737.    if(Number(X) < 10)
  738.    {
  739.       lX = "0" + Number(X);
  740.    }
  741.    else
  742.    {
  743.       lX = String(X);
  744.    }
  745.    return lX;
  746. }
  747. function randomValue(min, max)
  748. {
  749.    var _loc1_ = Math.floor(Math.random() * (max - min + 1)) + min;
  750.    return _loc1_;
  751. }
  752. function chercheDepthPlus(myMc, myDepth)
  753. {
  754.    var _loc1_ = myDepth;
  755.    while(_loc1_ < 17000)
  756.    {
  757.       if(myMc.getInstanceAtDepth(_loc1_) == undefined)
  758.       {
  759.          break;
  760.       }
  761.       _loc1_ = _loc1_ + 1;
  762.    }
  763.    return _loc1_;
  764. }
  765. function chercheDepthMoins(myMc, myDepth)
  766. {
  767.    var _loc1_ = myDepth;
  768.    while(_loc1_ > -16383)
  769.    {
  770.       if(myMc.getInstanceAtDepth(_loc1_) == undefined)
  771.       {
  772.          break;
  773.       }
  774.       _loc1_ = _loc1_ - 1;
  775.    }
  776.    return _loc1_;
  777. }
  778. function changeST(myST)
  779. {
  780.    trace("changeST   : " + myST);
  781.    if(myST == "1")
  782.    {
  783.       gST = 1;
  784.       if(gCommentOn !== undefined)
  785.       {
  786.          gereTextes.afficheST(gCommentOn.id);
  787.       }
  788.    }
  789.    else
  790.    {
  791.       sousTitre = 0;
  792.       gST = 0;
  793.       gereTextes.masqueST(this);
  794.    }
  795. }
  796. function changeMusicOn(myChangeMusicOn)
  797. {
  798.    trace("changeMusicOn   : " + myChangeMusicOn);
  799.    switch(String(myChangeMusicOn))
  800.    {
  801.       case "1":
  802.          gMusicOn = 1;
  803.          if(gMusic == undefined)
  804.          {
  805.             gMusic = gBruitageName + "MU";
  806.          }
  807.          trace("changeMusicOn2   : " + gMusic + " - " + gVolume);
  808.          if(gBlockMusic == undefined)
  809.          {
  810.             if(gCommentOn !== undefined)
  811.             {
  812.                soundObjects[gMusic].setVolume(gVolume * 0.4);
  813.             }
  814.             else
  815.             {
  816.                soundObjects[gMusic].setVolume(gVolume);
  817.             }
  818.          }
  819.          else
  820.          {
  821.             soundObjects[gMusic].setVolume(0);
  822.          }
  823.          soundObjects[gMusic].start(0,1000);
  824.          break;
  825.       case "0":
  826.          soundObjects[gMusic].stop();
  827.          gMusicOn = 0;
  828.          break;
  829.       default:
  830.          if(gMusic !== undefined)
  831.          {
  832.             soundObjects[gMusic].stop();
  833.          }
  834.          gMusic = gBruitageName + myChangeMusicOn;
  835.          if(gMusicOn == 1)
  836.          {
  837.             if(gBlockMusic == undefined)
  838.             {
  839.                if(gCommentOn !== undefined)
  840.                {
  841.                   soundObjects[gMusic].setVolume(gVolume * 0.4);
  842.                }
  843.                else
  844.                {
  845.                   soundObjects[gMusic].setVolume(gVolume);
  846.                }
  847.             }
  848.             else
  849.             {
  850.                soundObjects[gMusic].setVolume(0);
  851.             }
  852.             soundObjects[gMusic].start(0,1000);
  853.          }
  854.    }
  855. }
  856. function changeVolume(myChangeVolume)
  857. {
  858.    trace("changeVolume   : " + myChangeVolume);
  859.    gVolume = Number(myChangeVolume);
  860.    if(gCommentOn !== undefined)
  861.    {
  862.       gCommentOn.setVolume(gVolume);
  863.       if(gMusicOn == 1)
  864.       {
  865.          soundObjects[gMusic].setVolume(gVolume * 0.4);
  866.       }
  867.    }
  868.    else if(gMusicOn == 1)
  869.    {
  870.       soundObjects[gMusic].setVolume(gVolume);
  871.    }
  872. }
  873. function DesactiveBZ()
  874. {
  875.    BT_BZ.useHandCursor = false;
  876.    BT_BZ.gBZactif = 0;
  877. }
  878. function ActiveBZ()
  879. {
  880.    BT_BZ.useHandCursor = true;
  881.    BT_BZ.gBZactif = 1;
  882. }
  883. function getRessourceByID(attributeValue, typeRessource)
  884. {
  885.    var _loc2_ = this.moduleInfo.filterNode(this.moduleInfo.returnNodeByPath("Resources.ResourcesZip"),"type",typeRessource);
  886.    mySound = undefined;
  887.    mySound = this.recusiveGetSoundByAttribute(_loc2_,"id",attributeValue);
  888.    if(mySound == undefined)
  889.    {
  890.       trace(attributeValue + " n\'existe pas dans XML");
  891.    }
  892.    return mySound;
  893. }
  894. function getSoundByID(attributeValue)
  895. {
  896.    var _loc2_ = this.moduleInfo.filterNode(this.moduleInfo.returnNodeByPath("Resources.ResourcesZip"),"type","mp3");
  897.    mySound = undefined;
  898.    mySound = this.recusiveGetSoundByAttribute(_loc2_,"id",attributeValue);
  899.    if(mySound == undefined)
  900.    {
  901.       trace(attributeValue + " n\'existe pas dans XML");
  902.    }
  903.    return mySound;
  904. }
  905. function recusiveGetSoundByAttribute(node, attribute, attributeValue)
  906. {
  907.    var _loc2_ = 0;
  908.    while(_loc2_ < node.childNodes.length)
  909.    {
  910.       if(node.childNodes[_loc2_].attributes[attribute] == attributeValue)
  911.       {
  912.          mySound = node.childNodes[_loc2_];
  913.          break;
  914.       }
  915.       if(node.childNodes[_loc2_].hasChildNodes())
  916.       {
  917.          this.recusiveGetSoundByAttribute(node.childNodes[_loc2_],attribute,attributeValue);
  918.       }
  919.       _loc2_ = _loc2_ + 1;
  920.    }
  921.    return mySound;
  922. }
  923. function gereCursor(myCursor)
  924. {
  925.    switch(myCursor)
  926.    {
  927.       case 1:
  928.       case "fleche":
  929.          myCursor = "fleche";
  930.          break;
  931.       case 2:
  932.       case "doigt":
  933.          myCursor = "doigt";
  934.          break;
  935.       case 3:
  936.       case "mainO":
  937.          myCursor = "mainO";
  938.          break;
  939.       case 4:
  940.       case "mainF":
  941.          myCursor = "mainF";
  942.          break;
  943.       case 0:
  944.       case "O":
  945.          myCursor = "O";
  946.    }
  947.    _global.CURSEUR.Action(myCursor);
  948. }
  949. function ConvertCoord(mc_src, mc_dest)
  950. {
  951.    var _loc1_ = {x:0,y:0};
  952.    mc_src.localToGlobal(_loc1_);
  953.    mc_dest.globalToLocal(_loc1_);
  954.    return _loc1_;
  955. }
  956. function OnPadRollOver()
  957. {
  958.    if(gDrag !== undefined)
  959.    {
  960.    }
  961. }
  962. function OnPadRollOut()
  963. {
  964.    if(gDrag !== undefined)
  965.    {
  966.    }
  967. }
  968. function ModulePause()
  969. {
  970.    trace("pause ModulePause");
  971.    if(gListeInterval !== undefined)
  972.    {
  973.       pauseIntervals();
  974.    }
  975.    _global.pauseOnMod = true;
  976.    _moteur_.activePause(this);
  977.    gTimerBeforePause = getTimer();
  978.    if(this["TABLEAU_M" + gManche] !== undefined)
  979.    {
  980.       if(gJeuOn == true)
  981.       {
  982.          this["TABLEAU_M" + gManche]._alpha = 0;
  983.       }
  984.    }
  985.    gChangedM3_text = false;
  986.    if(gManche == 3)
  987.    {
  988.       var _loc3_ = this["TABLEAU_M" + gManche];
  989.       if(gListeJoueurMixed[gJoueur - 1].Type == "REEL")
  990.       {
  991.          if(this["TABLEAU_M" + gManche] !== undefined)
  992.          {
  993.             if(this["TABLEAU_M" + gManche].texte_REPONSE.type == "input")
  994.             {
  995.                _loc3_.texte_REPONSE.type = "dynamic";
  996.                _loc3_.texte_REPONSE.editable = false;
  997.                _loc3_.texte_REPONSE.selectable = false;
  998.                gChangedM3_text = true;
  999.             }
  1000.          }
  1001.       }
  1002.    }
  1003. }
  1004. function ModuleResume()
  1005. {
  1006.    trace("pause ModuleResume");
  1007.    if(gListeInterval !== undefined)
  1008.    {
  1009.       repriseIntervals();
  1010.    }
  1011.    _global.pauseOnMod = undefined;
  1012.    _moteur_.desactivePause(this);
  1013.    if(gTimerPause !== undefined)
  1014.    {
  1015.       gTimerPause += getTimer() - gTimerBeforePause;
  1016.    }
  1017.    if(this["TABLEAU_M" + gManche] !== undefined)
  1018.    {
  1019.       this["TABLEAU_M" + gManche]._alpha = 100;
  1020.    }
  1021.    if(gChangedM3_text == true)
  1022.    {
  1023.       var _loc3_ = this["TABLEAU_M" + gManche];
  1024.       _loc3_.texte_REPONSE.type = "input";
  1025.       _loc3_.texte_REPONSE.editable = true;
  1026.       _loc3_.texte_REPONSE.selectable = true;
  1027.    }
  1028. }
  1029. function _setInterval(p)
  1030. {
  1031.    trace("cree  interval " + p.nomInterval);
  1032.    if(gListeInterval == undefined)
  1033.    {
  1034.       gListeInterval = [];
  1035.       gListeIntervalNom = [];
  1036.       gListeIntervalTime = [];
  1037.    }
  1038.    gListeInterval.push(p);
  1039.    gListeIntervalNom.push(p.nomInterval);
  1040.    gListeIntervalTime.push(getTimer());
  1041.    p.mc[p.nomInterval] = setInterval(p.mc,p.fonction,p.duree,p.reprise);
  1042.    trace("p.mc = " + p.mc);
  1043. }
  1044. function _clearInterval(lNom)
  1045. {
  1046.    trace("virer " + lNom + " dans gListeIntervalNom = " + gListeIntervalNom);
  1047.    var _loc1_ = getPos(gListeIntervalNom,lNom);
  1048.    if(_loc1_ !== -1)
  1049.    {
  1050.       trace("myPos = " + _loc1_);
  1051.       var _loc2_ = gListeInterval[_loc1_].mc;
  1052.       trace("il y est " + _loc2_);
  1053.       clearInterval(_loc2_[lNom]);
  1054.       gListeInterval.splice(_loc1_,1);
  1055.       gListeIntervalNom.splice(_loc1_,1);
  1056.       gListeIntervalTime.splice(_loc1_,1);
  1057.       if(gListeInterval.length == 0)
  1058.       {
  1059.          gListeInterval = undefined;
  1060.          gListeIntervalNom = undefined;
  1061.          gListeIntervalTime = undefined;
  1062.       }
  1063.    }
  1064. }
  1065. function pauseIntervals()
  1066. {
  1067.    trace("pauseIntervals");
  1068.    var _loc3_ = gListeInterval.length;
  1069.    if(_loc3_ > 0)
  1070.    {
  1071.       gListePauseInterval = [];
  1072.       var _loc1_ = 0;
  1073.       while(_loc1_ < _loc3_)
  1074.       {
  1075.          var _loc2_ = gListeInterval[_loc1_].mc;
  1076.          gListePauseInterval.push(getTimer() - gListeIntervalTime[_loc1_]);
  1077.          trace("IntervalNom = " + gListeIntervalNom[_loc1_]);
  1078.          clearInterval(_loc2_[gListeIntervalNom[_loc1_]]);
  1079.          _loc1_ = _loc1_ + 1;
  1080.       }
  1081.    }
  1082.    gDureePause = 0;
  1083.    gTopPause = getTimer();
  1084. }
  1085. function repriseIntervals()
  1086. {
  1087.    trace("repriseIntervals");
  1088.    gDureePause += getTimer() - gTopPause;
  1089.    trace("gDureePause = " + gDureePause);
  1090.    var _loc6_ = gListeInterval.length;
  1091.    if(_loc6_ > 0)
  1092.    {
  1093.       var _loc1_ = 0;
  1094.       while(_loc1_ < _loc6_)
  1095.       {
  1096.          var _loc4_ = gListeInterval[_loc1_];
  1097.          var _loc3_ = _loc4_.duree;
  1098.          var _loc2_ = _loc3_ - gListePauseInterval[_loc1_];
  1099.          trace("myDureeRestant = " + _loc2_);
  1100.          gListeInterval[_loc1_].duree = _loc2_;
  1101.          gListeIntervalTime[_loc1_] = getTimer();
  1102.          var _loc5_ = gListeInterval[_loc1_].mc;
  1103.          _loc5_[gListeIntervalNom[_loc1_]] = setInterval(gListeInterval[_loc1_].mc,gListeInterval[_loc1_].fonction,gListeInterval[_loc1_].duree,1);
  1104.          _loc1_ = _loc1_ + 1;
  1105.       }
  1106.    }
  1107. }
  1108. function initLib(p)
  1109. {
  1110.    trace(" ____ __ initLib _ __ _");
  1111.    var _loc3_ = this;
  1112.    var _loc4_ = _loc3_.createEmptyMovieClip("_" + p.nom + "_",this.getNextHighestDepth());
  1113.    var _loc5_ = gLibsPath + "/" + nom_lib + "/" + nom_lib + ".swf";
  1114.    this.mclR = new MovieClipLoader();
  1115.    this.mclR.loadClip(p.url,_loc4_);
  1116.    this.mclR.onLoadInit = function(myClip)
  1117.    {
  1118.       trace("onLoadInit " + myClip._name);
  1119.       myClip.ChargeMoteur();
  1120.       _root.Init();
  1121.    };
  1122. }
  1123. stop();
  1124. this._lockroot = true;
  1125. this.prodVersion = "prod_gen_XB";
  1126. if(_global.gModulePath == undefined)
  1127. {
  1128.    this.gModulePath = _global.gModulePath = "";
  1129. }
  1130. else
  1131. {
  1132.    this.gModulePath = _global.gModulePath;
  1133. }
  1134. _global._MOD_ = this;
  1135. this.CIBLE = this;
  1136. if(_global.HOTE != undefined)
  1137. {
  1138.    MovieClip.prototype.gHotePath = _global.gPARAMS.HOTE_DIR + "/DATA/HOTE";
  1139. }
  1140. else
  1141. {
  1142.    MovieClip.prototype.gHotePath = "../../HOTE";
  1143. }
  1144. this.prodPath = gHotePath + "/" + this.prodVersion;
  1145. MovieClip.prototype.gLibsPath = gHotePath + "/libs";
  1146. _global.stopComment = stopComment;
  1147. _global.joueSon = joueSon;
  1148. _root.creerClicZap = creerClicZap;
  1149. _global.joueBruitage = joueBruitage;
  1150. _global.stopBruitage = stopBruitage;
  1151. _global.stopBruit = stopBruit;
  1152. _global.gimme2digits = gimme2digits;
  1153. _global.randomValue = randomValue;
  1154. this.randRange = randomValue;
  1155. _global.chercheDepthPlus = chercheDepthPlus;
  1156. _global.chercheDepthMoins = chercheDepthMoins;
  1157. _global.DesactiveBZ = DesactiveBZ;
  1158. _root.DesactiveBZ = DesactiveBZ;
  1159. _global.ActiveBZ = ActiveBZ;
  1160. _root.ActiveBZ = ActiveBZ;
  1161. _global.gereCursor = gereCursor;
  1162. this.initVariables = function()
  1163. {
  1164.    trace("initVariables()");
  1165.    this.gotoAndStop("INIT");
  1166. };
  1167. _global._o_ = new Object();
  1168. MovieClip.prototype._o_ = _o_;
  1169. MovieClip.prototype._xlib1_ = undefined;
  1170. this.Init = function()
  1171. {
  1172.    trace("<<<<<<<<<<<<< Init() >>>>>>>>>>>");
  1173.    if(_xlib1_ == undefined)
  1174.    {
  1175.       initLib({nom:"xlib1",url:gLibsPath + "/xlib1/xlib1.swf"});
  1176.       return undefined;
  1177.    }
  1178.    if(_ed_ == undefined)
  1179.    {
  1180.       initLib({nom:"ed",url:gLibsPath + "/o/ed.swf"});
  1181.       return undefined;
  1182.    }
  1183.    if(_xb_ == undefined)
  1184.    {
  1185.       initLib({nom:"xb",url:gLibsPath + "/o/xb.swf"});
  1186.       return undefined;
  1187.    }
  1188.    if(_mod_ == undefined)
  1189.    {
  1190.       initLib({nom:"mod",url:this.gModulePath + "mod.swf"});
  1191.       return undefined;
  1192.    }
  1193.    if(_moteur_ == undefined)
  1194.    {
  1195.       initLib({nom:"moteur",url:this.prodPath + "/moteur.swf"});
  1196.       return undefined;
  1197.    }
  1198. };
  1199. this.InitOk = function()
  1200. {
  1201.    trace("<<<<<<<<<<<<< InitOk() >>>>>>>>>>>");
  1202.    if(HOTE == undefined)
  1203.    {
  1204.       this.Start();
  1205.    }
  1206.    else
  1207.    {
  1208.       HOTE.InitFin(this);
  1209.    }
  1210. };
  1211. this.Start = function()
  1212. {
  1213.    trace("<<<<<<<<<<<<< Start() >>>>>>>>>>>");
  1214.    gereCursor("fleche");
  1215.    this.gotoAndStop("START");
  1216. };
  1217. if(HOTE == undefined)
  1218. {
  1219.    this.onEnterFrame = function()
  1220.    {
  1221.       var _loc2_ = this.getBytesLoaded();
  1222.       var _loc3_ = this.getBytesTotal();
  1223.       if(_loc2_ >= _loc3_)
  1224.       {
  1225.          this.Init();
  1226.          delete this.onEnterFrame;
  1227.       }
  1228.    };
  1229. }
  1230. stop();
  1231.