home *** CD-ROM | disk | FTP | other *** search
/ FCE Gold Plus / GOLD.iso / pc / fscommand / linux / main.swf / scripts / __Packages / com / comp / Navigator.as < prev    next >
Encoding:
Text File  |  2007-09-06  |  47.7 KB  |  1,256 lines

  1. class com.comp.Navigator extends MovieClip
  2. {
  3.    var c_arrData;
  4.    var c_objRef;
  5.    var c_iCPairID;
  6.    var c_objTestRef;
  7.    var objRef;
  8.    var c_preSelecetd;
  9.    var c_strSelecetd;
  10.    var c_blnPartChange = true;
  11.    var c_paireBoolean = true;
  12.    var c_NavType = false;
  13.    var c_CurrentBtn = null;
  14.    function Navigator(_objRef, _arrData, _skillType, inav1Y, inav2X, inav2Y, _objTestRef, _iFirstQuestion)
  15.    {
  16.       var _loc1_ = this;
  17.       super();
  18.       _loc1_.c_objRef = _objRef;
  19.       _loc1_.c_objTestRef = _objTestRef;
  20.       _loc1_.c_arrData = _arrData;
  21.       _loc1_.c_objRef.navStrip.txt_SkillType.autoSize = true;
  22.       _loc1_.c_objRef.navStrip.txt_SkillType.text = _skillType.toUpperCase();
  23.       _loc1_.c_inav1X = _loc1_.c_objRef.navStrip.txt_SkillType._width + 10;
  24.       _loc1_.c_inav1Y = inav1Y;
  25.       _loc1_.c_inav2X = inav2X;
  26.       _loc1_.c_inav2Y = inav2Y;
  27.       _loc1_.c_iFirstQuestion = _iFirstQuestion;
  28.       _loc1_.c_blnDataL = false;
  29.       var blnFetchGroup = true;
  30.       var iCount = 0;
  31.       var _loc3_ = 0;
  32.       while(_loc3_ < _loc1_.c_arrData.length)
  33.       {
  34.          var c_arrTemp = _loc1_.c_arrData[_loc3_].id.split(",");
  35.          var _loc2_ = 0;
  36.          while(_loc2_ < c_arrTemp.length)
  37.          {
  38.             iCount++;
  39.             if(_loc1_.c_iFirstQuestion == iCount && blnFetchGroup)
  40.             {
  41.                _loc1_.c_strSelecetd = "_" + _loc3_ + "_" + _loc2_;
  42.                if(_loc1_.c_iFirstQuestion > 1)
  43.                {
  44.                   _loc1_.c_preSelecetd = "_" + _loc3_ + "_" + (_loc2_ - 1);
  45.                }
  46.                else
  47.                {
  48.                   _loc1_.c_preSelecetd = "_" + _loc3_ + "_" + _loc2_;
  49.                }
  50.                blnFetchGroup = false;
  51.             }
  52.             _loc2_ = _loc2_ + 1;
  53.          }
  54.          _loc3_ = _loc3_ + 1;
  55.       }
  56.       _loc1_.c_lavelsNav1 = 200;
  57.       _loc1_.c_lavelsNav2 = 300;
  58.       _loc1_.c_lavelsNav3 = 500;
  59.       _loc1_.c_lavelsxXtra = 400;
  60.       _loc1_.c_iSubNavDist = 25;
  61.       _loc1_.c_iMainNavDist = 19;
  62.       _loc1_.groupDist = 16;
  63.       _loc1_.c_iSeleID = _iFirstQuestion;
  64.       _loc1_.strPartType = 0;
  65.       _loc1_.arrangeNav1();
  66.       _loc1_.arrangeNav2();
  67.       _loc1_.setupStage();
  68.    }
  69.    function arrangeNav1()
  70.    {
  71.       var _loc1_ = this;
  72.       var c_navBtnNo = 0;
  73.       var c_readGroupNo = 0;
  74.       var iCorrectDistance = 0;
  75.       var iCorrectDistanceNav3 = 0;
  76.       var iCorrectBorderPlacement = 0;
  77.       var blnFetchGroup = true;
  78.       var iCount = 0;
  79.       var iButtonCount = 0;
  80.       var iGroupNo = -1;
  81.       var _loc3_ = 0;
  82.       while(_loc3_ < _loc1_.c_arrData.length)
  83.       {
  84.          iGroupNo += 1;
  85.          var c_arrTemp = _loc1_.c_arrData[_loc3_].id.split(",");
  86.          if(760 < _loc1_.c_inav1X + _loc1_.c_iMainNavDist * (iButtonCount + c_arrTemp.length) + (iGroupNo - 1) * _loc1_.groupDist + iCorrectDistance * 6)
  87.          {
  88.             _loc1_.c_inav1Y += 40;
  89.             iButtonCount = 0;
  90.             iGroupNo = 0;
  91.             iCorrectDistance = 0;
  92.             iCorrectBorderPlacement = 0;
  93.          }
  94.          var c_btnNo = 0;
  95.          while(c_btnNo < c_arrTemp.length)
  96.          {
  97.             if(_loc1_.c_arrData[_loc3_].type == 3 && _loc1_.c_paireBoolean == true)
  98.             {
  99.                _loc1_.c_NavType = true;
  100.                _loc1_.c_paireBoolean = false;
  101.                var pairLen = Number(c_arrTemp.length / 2);
  102.                var _iBtnNum = c_arrTemp[c_btnNo];
  103.                var i = 0;
  104.                while(i < pairLen)
  105.                {
  106.                   _loc1_.c_objRef["pairNav_" + _loc3_ + "_" + i].removeMovieClip();
  107.                   var _loc2_ = _loc1_.c_objRef.attachMovie("pairNav_3","pairNav_" + _loc3_ + "_" + i,_loc1_.c_lavelsNav3++);
  108.                   _loc2_._y = _loc1_.c_inav1Y;
  109.                   _loc2_._x = _loc1_.c_inav1X + _loc1_.c_iMainNavDist * iButtonCount + iGroupNo * _loc1_.groupDist + iCorrectDistanceNav3 * 6;
  110.                   iCorrectDistanceNav3 += 5;
  111.                   _loc2_.strPartType = c_readGroupNo;
  112.                   iButtonCount += 1;
  113.                   _loc2_.mc_PairL.gotoAndStop("normal");
  114.                   _loc2_.mc_PairR.gotoAndStop("normal");
  115.                   _loc2_.mc_PairL.id.text = _iBtnNum++;
  116.                   _loc2_.mc_PairR.id.text = _iBtnNum++;
  117.                   _loc2_.mc_PairR.gotoAndStop("NOTATTEMPTED");
  118.                   _loc2_.mc_PairL.mcHitArea.onRollOut = _loc2_.mc_PairR.mcHitArea.onRollOut = function()
  119.                   {
  120.                      var _loc1_ = this;
  121.                      if(_loc1_._parent._currentframe == 2)
  122.                      {
  123.                         _loc1_._parent.gotoAndStop("normal");
  124.                      }
  125.                      else if(_loc1_._parent._currentframe == 6)
  126.                      {
  127.                         _loc1_._parent.gotoAndStop("groupSelected");
  128.                      }
  129.                   };
  130.                   _loc2_.mc_PairL.mcHitArea.onRollOver = _loc2_.mc_PairR.mcHitArea.onRollOver = function()
  131.                   {
  132.                      var _loc1_ = this;
  133.                      if(_loc1_._parent._currentframe != 4 and _loc1_._parent._currentframe != 3)
  134.                      {
  135.                         _loc1_._parent.gotoAndStop("overState");
  136.                      }
  137.                      else if(_loc1_._parent._currentframe == 3 and _loc1_._parent._currentframe != 4)
  138.                      {
  139.                         _loc1_._parent.gotoAndStop("grouphover");
  140.                      }
  141.                   };
  142.                   _loc2_.mc_PairL.mcHitArea.objRef = _loc1_;
  143.                   _loc2_.mc_PairR.mcHitArea.objRef = _loc1_;
  144.                   _loc2_.mc_PairL.mcHitArea.onRelease = _loc2_.mc_PairL.mcHitArea.onReleaseOutside = _loc2_.mc_PairR.mcHitArea.onRelease = _loc2_.mc_PairR.mcHitArea.onReleaseOutside = function()
  145.                   {
  146.                      var _loc1_ = this;
  147.                      var _loc2_ = _loc1_._parent._parent._name;
  148.                      _loc1_.objRef.c_preSelecetd = _loc1_.objRef.c_strSelecetd;
  149.                      var iFirstIndex = _loc2_.indexOf("_");
  150.                      var iGroupNo = _loc2_.split("_")[1];
  151.                      _loc1_.objRef.c_iCPairID = _loc2_.split("_")[2];
  152.                      _loc1_.objRef.c_objTestRef.c_iPairID = _loc2_.split("_")[2];
  153.                      var _loc3_ = _loc1_._parent.id.text;
  154.                      _loc1_.objRef.c_strSelecetd = String("_" + iGroupNo + "_" + (_loc3_ - 1));
  155.                      _loc1_.objRef.c_iSeleID = _loc1_._parent.id.text;
  156.                      _loc1_.objRef.strPartType = _loc1_.strPartType;
  157.                      _loc1_.objRef.navClicked();
  158.                   };
  159.                   i++;
  160.                }
  161.             }
  162.             else
  163.             {
  164.                _loc1_.c_objRef["navBtn1_" + _loc3_ + "_" + c_btnNo].removeMovieClip();
  165.                _loc1_.c_objRef.attachMovie("navBtn1_" + _loc1_.c_arrData[_loc3_].type,"navBtn1_" + _loc3_ + "_" + c_btnNo,_loc1_.c_lavelsNav1++);
  166.                var mc_Nav = _loc1_.c_objRef["navBtn1_" + _loc3_ + "_" + c_btnNo];
  167.                mc_Nav._y = _loc1_.c_inav1Y;
  168.                mc_Nav._x = _loc1_.c_inav1X + _loc1_.c_iMainNavDist * iButtonCount + iGroupNo * _loc1_.groupDist + iCorrectDistance * 6;
  169.                mc_Nav.strPartType = c_readGroupNo;
  170.                iButtonCount += 1;
  171.             }
  172.             if(_loc1_.c_arrData[_loc3_].type == 2 and c_btnNo == c_arrTemp.length - 1)
  173.             {
  174.                iCorrectDistance++;
  175.             }
  176.             mc_Nav.gotoAndStop("normal");
  177.             mc_Nav.id.text = c_arrTemp[c_btnNo];
  178.             mc_Nav.nav1Atmpt.gotoAndStop("NOTATTEMPTED");
  179.             mc_Nav.mcHitArea.onRollOver = function()
  180.             {
  181.                var _loc1_ = this;
  182.                if(_loc1_._parent._currentframe != 4 and _loc1_._parent._currentframe != 3)
  183.                {
  184.                   _loc1_._parent.gotoAndStop("overState");
  185.                }
  186.                else if(_loc1_._parent._currentframe == 3 and _loc1_._parent._currentframe != 4)
  187.                {
  188.                   _loc1_._parent.gotoAndStop("grouphover");
  189.                }
  190.             };
  191.             mc_Nav.mcHitArea.onRollOut = function()
  192.             {
  193.                var _loc1_ = this;
  194.                if(_loc1_._parent._currentframe == 2)
  195.                {
  196.                   _loc1_._parent.gotoAndStop("normal");
  197.                }
  198.                else if(_loc1_._parent._currentframe == 6)
  199.                {
  200.                   _loc1_._parent.gotoAndStop("groupSelected");
  201.                }
  202.             };
  203.             mc_Nav.mcHitArea.onPress = function()
  204.             {
  205.             };
  206.             mc_Nav.mcHitArea.objRef = _loc1_;
  207.             mc_Nav.mcHitArea.onRelease = mc_Nav.mcHitArea.onReleaseOutside = function()
  208.             {
  209.                var _loc1_ = this;
  210.                _loc1_.objRef.c_preSelecetd = _loc1_.objRef.c_strSelecetd;
  211.                _loc1_.objRef.c_strSelecetd = _loc1_._parent._name.substr(7,_loc1_._name.length);
  212.                _loc1_.objRef.c_iSeleID = _loc1_._parent.id.text;
  213.                _loc1_.objRef.strPartType = _loc1_._parent.strPartType;
  214.                _loc1_.objRef.navClicked();
  215.             };
  216.             delete mc_Nav;
  217.             _loc1_.c_objRef.attachMovie("navBtn2_1","navBtn2_" + _loc3_ + "_" + c_btnNo,_loc1_.c_lavelsNav2++);
  218.             var mc_Nav = _loc1_.c_objRef["navBtn2_" + _loc3_ + "_" + c_btnNo];
  219.             mc_Nav._y = _loc1_.c_inav2Y;
  220.             mc_Nav._x = _loc1_.c_inav2X + c_navBtnNo * _loc1_.c_iSubNavDist;
  221.             mc_Nav.id.text = c_arrTemp[c_btnNo];
  222.             mc_Nav.nav2Atmpt.gotoAndStop("NOTATTEMPTED");
  223.             mc_Nav.gotoAndStop("blank");
  224.             mc_Nav.onRollOver = function()
  225.             {
  226.                if(this._currentframe != 3)
  227.                {
  228.                   ┬º┬ºpush(this.gotoAndStop("overState"));
  229.                }
  230.             };
  231.             mc_Nav.onRollOut = mc_Nav.onDragOut = mc_Nav.onReleaseOutside = function()
  232.             {
  233.                if(this._currentframe == 2)
  234.                {
  235.                   ┬º┬ºpush(this.gotoAndStop("normal"));
  236.                }
  237.             };
  238.             mc_Nav.objRef = _loc1_;
  239.             mc_Nav.onRelease = mc_Nav.onReleaseOutside = function()
  240.             {
  241.                var _loc1_ = this;
  242.                _loc1_.objRef.c_preSelecetd = _loc1_.objRef.c_strSelecetd;
  243.                _loc1_.objRef.c_strSelecetd = _loc1_._name.substr(7,_loc1_._name.length);
  244.                _loc1_.objRef.c_iSeleID = _loc1_.id.text;
  245.                _loc1_.objRef.strPartType = _loc1_.strPartType;
  246.                _loc1_.objRef.navClicked();
  247.             };
  248.             mc_Nav.enabled = false;
  249.             delete mc_Nav;
  250.             c_navBtnNo++;
  251.             c_btnNo++;
  252.          }
  253.          if(_loc1_.c_arrData[_loc3_].type == 2 and c_arrTemp.length > 0)
  254.          {
  255.             _loc1_.c_objRef.attachMovie("navBtn1_2_border","navBtn1_2_border1_" + _loc3_,_loc1_.c_lavelsxXtra++);
  256.             var mc_Nav = _loc1_.c_objRef["navBtn1_2_border1_" + _loc3_];
  257.             mc_Nav._y = _loc1_.c_inav1Y;
  258.             mc_Nav._x = _loc1_.c_inav1X + _loc1_.c_iMainNavDist * (iButtonCount - c_arrTemp.length) + iGroupNo * _loc1_.groupDist + iCorrectBorderPlacement * 6;
  259.             delete mc_Nav;
  260.             _loc1_.c_objRef.attachMovie("navBtn1_2_border","navBtn1_2_border2_" + _loc3_,_loc1_.c_lavelsxXtra++);
  261.             var mc_Nav = _loc1_.c_objRef["navBtn1_2_border2_" + _loc3_];
  262.             mc_Nav._y = _loc1_.c_inav1Y;
  263.             mc_Nav._x = _loc1_.c_inav1X + _loc1_.c_iMainNavDist * iButtonCount + iGroupNo * _loc1_.groupDist + 6 + iCorrectBorderPlacement * 6;
  264.             mc_Nav._xscale = -100;
  265.             iCorrectBorderPlacement++;
  266.             delete mc_Nav;
  267.          }
  268.          _loc1_.c_objRef.attachMovie("partType","partType" + _loc3_,_loc1_.c_lavelsxXtra++);
  269.          var mc_Nav = _loc1_.c_objRef["partType" + _loc3_];
  270.          if(_loc1_.c_arrData[_loc3_].type == 3)
  271.          {
  272.             mc_Nav._x = _loc1_.c_objRef["pairNav_" + _loc3_ + "_0"]._x - 2;
  273.             mc_Nav._y = _loc1_.c_objRef["pairNav_" + _loc3_ + "_0"]._y - 13;
  274.          }
  275.          else
  276.          {
  277.             mc_Nav._x = _loc1_.c_objRef["navBtn1_" + _loc3_ + "_0"]._x - 2;
  278.             mc_Nav._y = _loc1_.c_objRef["navBtn1_" + _loc3_ + "_0"]._y - 13;
  279.          }
  280.          mc_Nav.partType.text = "Part " + (Number(c_readGroupNo) + 1) + ":";
  281.          c_readGroupNo++;
  282.          delete c_arrTemp;
  283.          delete c_btnNo;
  284.          _loc3_ = _loc3_ + 1;
  285.       }
  286.       false;
  287.       delete c_navBtnNo;
  288.    }
  289.    function setTopNavPosition(iTopNavY)
  290.    {
  291.       var _loc2_ = 0;
  292.       while(_loc2_ < this.c_arrData.length)
  293.       {
  294.          var c_arrTemp = this.c_arrData[_loc2_].id.split(",");
  295.          var _loc1_ = 0;
  296.          while(_loc1_ < c_arrTemp.length)
  297.          {
  298.             var _loc3_ = this.c_objRef["navBtn2_" + _loc2_ + "_" + _loc1_];
  299.             _loc3_._y = iTopNavY;
  300.             _loc1_ = _loc1_ + 1;
  301.          }
  302.          _loc2_ = _loc2_ + 1;
  303.       }
  304.       this.c_objRef.lArrow._y = iTopNavY;
  305.       this.c_objRef.rArrow._y = iTopNavY;
  306.    }
  307.    function getPairID(iQuesNum)
  308.    {
  309.       var _loc2_ = iQuesNum;
  310.       var _loc1_ = undefined;
  311.       if(_loc2_ == 0 || _loc2_ == 1)
  312.       {
  313.          _loc1_ = 0;
  314.       }
  315.       else
  316.       {
  317.          var _loc3_ = _loc2_ % 2;
  318.          _loc1_ = Math.round(_loc2_ / 2) - _loc3_;
  319.       }
  320.       return _loc1_;
  321.    }
  322.    function setPairID(iPairID)
  323.    {
  324.       this.c_iCPairID = iPairID;
  325.       this.c_objTestRef.c_iPairID = iPairID;
  326.    }
  327.    function arrangeNav2()
  328.    {
  329.       var _loc1_ = this;
  330.       var c_igroup = Number(_loc1_.c_strSelecetd.split("_")[1]);
  331.       var c_ifile = Number(_loc1_.c_strSelecetd.split("_")[2]);
  332.       var c_arrTemp = _loc1_.c_arrData[c_igroup].id.split(",");
  333.       var _loc2_ = 0;
  334.       while(_loc2_ < c_arrTemp.length)
  335.       {
  336.          var c_groupNo = Number(c_igroup);
  337.          _loc2_ = _loc2_ + 1;
  338.       }
  339.       _loc1_.c_objRef.attachMovie("lArrow","lArrow",_loc1_.c_lavelsxXtra++);
  340.       var _loc3_ = _loc1_.c_objRef.lArrow;
  341.       _loc3_._x = _loc1_.c_inav2X;
  342.       _loc3_._y = _loc1_.c_inav2Y;
  343.       if(c_ifile > 0 or c_igroup > 0)
  344.       {
  345.          _loc3_.gotoAndStop("normal");
  346.          _loc3_.enabled = true;
  347.       }
  348.       else
  349.       {
  350.          _loc3_.gotoAndStop("blank");
  351.          _loc3_.enabled = false;
  352.       }
  353.       _loc3_.onRollOver = function()
  354.       {
  355.          this.gotoAndStop("overState");
  356.       };
  357.       _loc3_.onRollOut = function()
  358.       {
  359.          this.gotoAndStop("normal");
  360.       };
  361.       _loc3_.onDragOver = _loc3_.onRollOver;
  362.       _loc3_.onDragOut = _loc3_.onRollOut;
  363.       _loc3_.objRef = _loc1_;
  364.       _loc3_.onRelease = function()
  365.       {
  366.          this.objRef.previousBtn();
  367.       };
  368.       _loc3_.onReleaseOutside = function()
  369.       {
  370.          this.gotoAndStop("normal");
  371.       };
  372.       false;
  373.       _loc1_.c_objRef.attachMovie("rArrow","rArrow",_loc1_.c_lavelsxXtra++);
  374.       _loc3_ = _loc1_.c_objRef.rArrow;
  375.       _loc3_._x = _loc1_.c_inav2X + c_arrTemp.length * _loc1_.c_iSubNavDist;
  376.       _loc3_._y = _loc1_.c_inav2Y;
  377.       if(c_igroup == _loc1_.c_arrData.length - 1 && c_ifile == c_arrTemp.length - 1)
  378.       {
  379.          _loc3_.gotoAndStop("blank");
  380.          _loc3_.enabled = false;
  381.       }
  382.       else
  383.       {
  384.          _loc3_.gotoAndStop("normal");
  385.          _loc3_.enabled = true;
  386.       }
  387.       _loc3_.onRollOver = function()
  388.       {
  389.          this.gotoAndStop("overState");
  390.       };
  391.       _loc3_.onRollOut = function()
  392.       {
  393.          this.gotoAndStop("normal");
  394.       };
  395.       _loc3_.onDragOver = _loc3_.onRollOver;
  396.       _loc3_.onDragOut = _loc3_.onRollOut;
  397.       _loc3_.objRef = _loc1_;
  398.       _loc3_.onRelease = function()
  399.       {
  400.          this.objRef.nextBtn();
  401.       };
  402.       _loc3_.onReleaseOutside = function()
  403.       {
  404.          this.gotoAndStop("normal");
  405.       };
  406.       false;
  407.       delete c_igroup;
  408.       delete c_ifile;
  409.    }
  410.    function navClicked()
  411.    {
  412.       this.navClickedfunction();
  413.       this.showResult();
  414.    }
  415.    function changeArrowStatus()
  416.    {
  417.       var _loc2_ = this;
  418.       var _loc1_ = _loc2_.c_objRef.lArrow;
  419.       if(_loc2_.c_strSelecetd == "_0_0")
  420.       {
  421.          _loc1_.enabled = false;
  422.          _loc1_.gotoAndStop("blank");
  423.       }
  424.       else
  425.       {
  426.          _loc1_.enabled = true;
  427.          _loc1_.gotoAndStop("normal");
  428.       }
  429.       false;
  430.       var _loc3_ = _loc2_.c_arrData[_loc2_.c_arrData.length - 1].id.split(",");
  431.       _loc1_ = _loc2_.c_objRef.rArrow;
  432.       if(_loc2_.c_strSelecetd == "_" + (_loc2_.c_arrData.length - 1) + "_" + (_loc3_.length - 1))
  433.       {
  434.          _loc1_.enabled = false;
  435.          _loc1_.gotoAndStop("blank");
  436.       }
  437.       else
  438.       {
  439.          _loc1_.enabled = true;
  440.          _loc1_.gotoAndStop("normal");
  441.       }
  442.       false;
  443.    }
  444.    function showPairBoxSelection()
  445.    {
  446.       var _loc2_ = this;
  447.       var _iCurrentGroupID = Number(_loc2_.c_strSelecetd.split("_")[1]);
  448.       var _loc3_ = Number(_loc2_.c_strSelecetd.split("_")[2]);
  449.       var _loc1_ = _loc2_.c_objRef["pairNav_" + _iCurrentGroupID + "_" + _loc2_.c_iCPairID];
  450.       _loc1_.mc_PairL.gotoAndStop("groupSelected");
  451.       _loc1_.mc_PairR.gotoAndStop("groupSelected");
  452.       if(_loc2_.c_CurrentBtn == null)
  453.       {
  454.          if(_loc3_ % 2 == 0)
  455.          {
  456.             _loc1_.mc_PairL.gotoAndStop("btnClicked");
  457.             _loc1_.mc_PairL.mcHitArea.enabled = false;
  458.          }
  459.          else
  460.          {
  461.             _loc1_.mc_PairR.gotoAndStop("btnClicked");
  462.             _loc1_.mc_PairR.mcHitArea.enabled = false;
  463.          }
  464.       }
  465.       else
  466.       {
  467.          _loc2_.c_CurrentBtn._parent.gotoAndStop("btnClicked");
  468.          _loc2_.c_CurrentBtn = null;
  469.       }
  470.    }
  471.    function enablePreviousBtn()
  472.    {
  473.       var _loc1_ = this;
  474.       var _loc3_ = _loc1_.c_objRef["navBtn1" + _loc1_.c_preSelecetd];
  475.       var _loc2_ = _loc1_.c_objRef["navBtn2" + _loc1_.c_preSelecetd];
  476.       var iGroupID = Number(_loc1_.c_preSelecetd.split("_")[1]);
  477.       if(_loc1_.c_arrData[iGroupID].type == 3)
  478.       {
  479.          _loc1_.deselectAllPairs(iGroupID);
  480.       }
  481.       _loc2_.gotoAndStop("normal");
  482.       _loc3_.gotoAndStop("groupSelected");
  483.       _loc3_.mcHitArea.enabled = true;
  484.       _loc2_.enabled = true;
  485.       false;
  486.       false;
  487.    }
  488.    function deselectAllPairs(_iCurrentGroupID)
  489.    {
  490.       var c_arrTemp = this.c_arrData[_iCurrentGroupID].id.split(",");
  491.       var _loc3_ = 0;
  492.       while(_loc3_ < c_arrTemp.length)
  493.       {
  494.          var pairLen = Number(c_arrTemp.length / 2);
  495.          var _iBtnNum = c_arrTemp[_loc3_];
  496.          var _loc2_ = 0;
  497.          while(_loc2_ < pairLen)
  498.          {
  499.             var _loc1_ = this.c_objRef["pairNav_" + _iCurrentGroupID + "_" + _loc2_];
  500.             _loc1_.mc_PairL.gotoAndStop("normal");
  501.             _loc1_.mc_PairL.mcHitArea.enabled = true;
  502.             _loc1_.mc_PairR.gotoAndStop("normal");
  503.             _loc1_.mc_PairR.mcHitArea.enabled = true;
  504.             _loc2_ = _loc2_ + 1;
  505.          }
  506.          _loc3_ = _loc3_ + 1;
  507.       }
  508.    }
  509.    function disableCurrentBtn()
  510.    {
  511.       var _loc1_ = this;
  512.       var iGroupID = Number(_loc1_.c_strSelecetd.split("_")[1]);
  513.       if(_loc1_.c_arrData[iGroupID].type == 3)
  514.       {
  515.          _loc1_.showPairBoxSelection();
  516.       }
  517.       else
  518.       {
  519.          var _loc3_ = _loc1_.c_objRef["navBtn1" + _loc1_.c_strSelecetd];
  520.          _loc3_.gotoAndStop("btnClicked");
  521.          _loc3_.mcHitArea.enabled = false;
  522.          false;
  523.       }
  524.       var _loc2_ = _loc1_.c_objRef["navBtn2" + _loc1_.c_strSelecetd];
  525.       _loc2_.gotoAndStop("btnClicked");
  526.       _loc2_.enabled = false;
  527.       false;
  528.    }
  529.    function setPreviousGroup(_arr, strPrevNavType)
  530.    {
  531.       var group = this.c_preSelecetd.split("_")[1];
  532.       var _loc1_ = 0;
  533.       while(_loc1_ < _arr.length)
  534.       {
  535.          var _loc2_ = this.c_objRef["navBtn2_" + group + "_" + _loc1_];
  536.          _loc2_.gotoAndStop("BLANK");
  537.          _loc2_.enabled = false;
  538.          _loc1_ = _loc1_ + 1;
  539.       }
  540.       if(strPrevNavType == 3)
  541.       {
  542.          this.deselectAllPairs(group);
  543.       }
  544.       else
  545.       {
  546.          _loc1_ = 0;
  547.          while(_loc1_ < _arr.length)
  548.          {
  549.             var _loc3_ = this.c_objRef["navBtn1_" + group + "_" + _loc1_];
  550.             _loc3_.gotoAndStop("NORMAL");
  551.             _loc3_.enabled = true;
  552.             _loc1_ = _loc1_ + 1;
  553.          }
  554.       }
  555.    }
  556.    function setCurrentGroup(_arr)
  557.    {
  558.       var group = this.c_strSelecetd.split("_")[1];
  559.       var _loc1_ = 0;
  560.       while(_loc1_ < _arr.length)
  561.       {
  562.          var _loc3_ = this.c_objRef["navBtn1_" + group + "_" + _loc1_];
  563.          var _loc2_ = this.c_objRef["navBtn2_" + group + "_" + _loc1_];
  564.          _loc3_.gotoAndStop("GROUPSELECTED");
  565.          _loc2_.gotoAndStop("normal");
  566.          _loc3_.enabled = true;
  567.          _loc2_.enabled = true;
  568.          _loc1_ = _loc1_ + 1;
  569.       }
  570.    }
  571.    function navClickedfunction()
  572.    {
  573.       var _loc1_ = this;
  574.       _loc1_.enablePreviousBtn();
  575.       _loc1_.changeArrowStatus();
  576.       var c_icurrentGroup = Number(_loc1_.c_strSelecetd.substr(1,_loc1_.c_strSelecetd.indexOf("_",1) - 1));
  577.       var c_iPreGroup = Number(_loc1_.c_preSelecetd.substr(1,_loc1_.c_preSelecetd.indexOf("_",1) - 1));
  578.       var c_iCurrentBtn = Number(_loc1_.c_strSelecetd.split("_")[2]);
  579.       if(c_iPreGroup != c_icurrentGroup)
  580.       {
  581.          var tmpPrev = _loc1_.c_arrData[c_iPreGroup].id.split(",");
  582.          var tmpCurr = _loc1_.c_arrData[c_icurrentGroup].id.split(",");
  583.          var c_navBtnNo = 0;
  584.          var preGrupBtns = 0;
  585.          var c_groupNo = 0;
  586.          while(c_groupNo < c_icurrentGroup)
  587.          {
  588.             preGrupBtns += _loc1_.c_arrData[c_groupNo].id.split(",").length;
  589.             c_groupNo++;
  590.          }
  591.          var c_groupNo = 0;
  592.          while(c_groupNo < _loc1_.c_arrData.length)
  593.          {
  594.             var c_arrTemp = _loc1_.c_arrData[c_groupNo].id.split(",");
  595.             var _loc2_ = 0;
  596.             while(_loc2_ < c_arrTemp.length)
  597.             {
  598.                var _loc3_ = _loc1_.c_objRef["navBtn2_" + c_groupNo + "_" + _loc2_];
  599.                _loc3_._x = _loc1_.c_inav2X + c_navBtnNo * _loc1_.c_iSubNavDist - preGrupBtns * _loc1_.c_iSubNavDist;
  600.                false;
  601.                c_navBtnNo++;
  602.                _loc2_ = _loc2_ + 1;
  603.             }
  604.             false;
  605.             delete c_arrTemp;
  606.             c_groupNo++;
  607.          }
  608.          delete c_navBtnNo;
  609.          delete c_groupNo;
  610.          _loc1_.c_objRef.rArrow._x += (tmpCurr.length - tmpPrev.length) * _loc1_.c_iSubNavDist;
  611.          _loc1_.c_objTestRef.c_objSoundController.onPartChange();
  612.          _loc1_.c_blnPartChange = true;
  613.          var iPrevNavType = _loc1_.c_arrData[c_iPreGroup].type;
  614.          var iCurrNavType = _loc1_.c_arrData[c_icurrentGroup].type;
  615.          _loc1_.setPreviousGroup(tmpPrev,iPrevNavType);
  616.          _loc1_.setCurrentGroup(tmpCurr,iCurrNavType);
  617.          delete iPrevNavType;
  618.          delete iCurrNavType;
  619.       }
  620.       else
  621.       {
  622.          _loc1_.c_blnPartChange = false;
  623.       }
  624.       var iPairID = _loc1_.getPairID(c_iCurrentBtn);
  625.       _loc1_.setPairID(iPairID);
  626.       _loc1_.disableCurrentBtn();
  627.    }
  628.    function previousBtn()
  629.    {
  630.       var _loc1_ = this;
  631.       var fileNo = Number(_loc1_.c_strSelecetd.substr(_loc1_.c_strSelecetd.indexOf("_",1) + 1,_loc1_.c_strSelecetd.length));
  632.       var group = Number(_loc1_.c_strSelecetd.substr(1,_loc1_.c_strSelecetd.indexOf("_",1) - 1));
  633.       if(fileNo > 0)
  634.       {
  635.          var mc_nav1_Cur = _loc1_.c_objRef["navBtn1_" + group + "_" + (fileNo - 1)];
  636.          var mc_nav2_Cur = _loc1_.c_objRef["navBtn2_" + group + "_" + (fileNo - 1)];
  637.          var mc_nav1_Pre = _loc1_.c_objRef["navBtn1" + _loc1_.c_strSelecetd];
  638.          var mc_nav2_Pre = _loc1_.c_objRef["navBtn2" + _loc1_.c_strSelecetd];
  639.          mc_nav1_Pre.gotoAndStop("groupSelected");
  640.          mc_nav1_Pre.mcHitArea.enabled = true;
  641.          mc_nav1_Cur.gotoAndStop("btnClicked");
  642.          mc_nav1_Cur.mcHitArea.enabled = false;
  643.          mc_nav2_Pre.gotoAndStop("normal");
  644.          mc_nav2_Pre.enabled = true;
  645.          mc_nav2_Cur.gotoAndStop("btnClicked");
  646.          mc_nav2_Cur.enabled = false;
  647.          delete mc_nav2_Cur;
  648.          delete mc_nav1_Cur;
  649.          delete mc_nav1_Pre;
  650.          delete mc_nav1_Pre;
  651.       }
  652.       if(fileNo == 0 and group != 0)
  653.       {
  654.          var tmpPrev = _loc1_.c_arrData[group].id.split(",");
  655.          var tmpCurr = _loc1_.c_arrData[group - 1].id.split(",");
  656.          _loc1_.c_objRef.rArrow._x += (tmpCurr.length - tmpPrev.length) * _loc1_.c_iSubNavDist;
  657.          var c_navBtnNo = 0;
  658.          var preGrupBtns = 0;
  659.          var _loc2_ = 0;
  660.          while(_loc2_ < group - 1)
  661.          {
  662.             preGrupBtns += _loc1_.c_arrData[_loc2_].id.split(",").length;
  663.             _loc2_ = _loc2_ + 1;
  664.          }
  665.          _loc2_ = 0;
  666.          while(_loc2_ < _loc1_.c_arrData.length)
  667.          {
  668.             var c_arrTemp = _loc1_.c_arrData[_loc2_].id.split(",");
  669.             var _loc3_ = 0;
  670.             while(_loc3_ < c_arrTemp.length)
  671.             {
  672.                var mc_nav1 = _loc1_.c_objRef["navBtn1_" + _loc2_ + "_" + _loc3_];
  673.                var mc_nav2 = _loc1_.c_objRef["navBtn2_" + _loc2_ + "_" + _loc3_];
  674.                mc_nav2._x = _loc1_.c_inav2X + c_navBtnNo * _loc1_.c_iSubNavDist - preGrupBtns * _loc1_.c_iSubNavDist;
  675.                mc_nav2.gotoAndStop("blank");
  676.                mc_nav2.enabled = false;
  677.                mc_nav1.gotoAndStop("normal");
  678.                delete mc_nav1;
  679.                delete mc_nav2;
  680.                c_navBtnNo++;
  681.                _loc3_ = _loc3_ + 1;
  682.             }
  683.             false;
  684.             delete c_arrTemp;
  685.             _loc2_ = _loc2_ + 1;
  686.          }
  687.          delete c_navBtnNo;
  688.          false;
  689.          _loc3_ = 0;
  690.          while(_loc3_ < tmpCurr.length)
  691.          {
  692.             var mc_nav1 = _loc1_.c_objRef["navBtn1_" + (group - 1) + "_" + _loc3_];
  693.             var mc_nav2 = _loc1_.c_objRef["navBtn2_" + (group - 1) + "_" + _loc3_];
  694.             mc_nav2.gotoAndStop("normal");
  695.             mc_nav2.enabled = true;
  696.             mc_nav1.gotoAndStop("groupSelected");
  697.             delete mc_nav1;
  698.             delete mc_nav2;
  699.             _loc3_ = _loc3_ + 1;
  700.          }
  701.          _loc1_.c_preSelecetd = _loc1_.c_strSelecetd;
  702.          _loc1_.c_strSelecetd = String("_" + (group - 1) + "_" + (_loc3_ - 1));
  703.          if(_loc1_.c_preSelecetd != _loc1_.c_strSelecetd)
  704.          {
  705.             _loc1_.c_objTestRef.c_objSoundController.onPartChange();
  706.             _loc1_.c_blnPartChange = true;
  707.          }
  708.          var mc_nav1_Cur = _loc1_.c_objRef["navBtn1" + _loc1_.c_strSelecetd];
  709.          var mc_nav2_Cur = _loc1_.c_objRef["navBtn2" + _loc1_.c_strSelecetd];
  710.          var mc_nav1_Pre = _loc1_.c_objRef["navBtn1" + _loc1_.c_preSelecetd];
  711.          var mc_nav2_Pre = _loc1_.c_objRef["navBtn2" + _loc1_.c_preSelecetd];
  712.          _loc1_.c_iSeleID = mc_nav2_Cur.id.text;
  713.          _loc1_.strPartType = mc_nav1_Cur.strPartType;
  714.          mc_nav1_Pre.gotoAndStop("normal");
  715.          mc_nav1_Pre.mcHitArea.enabled = true;
  716.          mc_nav2_Cur.gotoAndStop("btnClicked");
  717.          mc_nav2_Cur.enabled = false;
  718.          mc_nav1_Cur.gotoAndStop("btnClicked");
  719.          mc_nav1_Cur.mcHitArea.enabled = false;
  720.          if(_loc1_.c_arrData[group - 1].type == 3)
  721.          {
  722.             var iPairID = _loc1_.getPairID(tmpCurr.length - 1);
  723.             _loc1_.setPairID(iPairID);
  724.             _loc1_.deselectAllPairs(group - 1);
  725.             _loc1_.showPairBoxSelection();
  726.          }
  727.          delete mc_nav2_Cur;
  728.          delete mc_nav1_Cur;
  729.          delete mc_nav1_Pre;
  730.          delete mc_nav1_Pre;
  731.       }
  732.       else
  733.       {
  734.          _loc1_.c_preSelecetd = _loc1_.c_strSelecetd;
  735.          _loc1_.c_strSelecetd = "_" + group + "_" + (fileNo - 1);
  736.          _loc1_.c_iSeleID = _loc1_.c_objRef["navBtn2" + _loc1_.c_strSelecetd].id.text;
  737.          _loc1_.strPartType = _loc1_.c_objRef["navBtn1" + _loc1_.c_strSelecetd].strPartType;
  738.          var iPairID = _loc1_.getPairID(fileNo - 1);
  739.          _loc1_.setPairID(iPairID);
  740.          _loc1_.deselectAllPairs(group);
  741.          _loc1_.showPairBoxSelection();
  742.       }
  743.       var mc_l = _loc1_.c_objRef.lArrow;
  744.       var mc_r = _loc1_.c_objRef.rArrow;
  745.       if(_loc1_.c_strSelecetd == "_0_0")
  746.       {
  747.          mc_l.enabled = false;
  748.          mc_l.gotoAndStop("blank");
  749.          mc_r.enabled = true;
  750.          mc_r.gotoAndStop("normal");
  751.       }
  752.       else
  753.       {
  754.          mc_l.enabled = true;
  755.          mc_l.gotoAndStop("overState");
  756.          mc_r.enabled = true;
  757.          mc_r.gotoAndStop("normal");
  758.       }
  759.       delete mc_l;
  760.       delete mc_r;
  761.       _loc1_.showResult();
  762.    }
  763.    function nextBtn()
  764.    {
  765.       var _loc1_ = this;
  766.       var fileNo = Number(_loc1_.c_strSelecetd.substr(_loc1_.c_strSelecetd.indexOf("_",1) + 1,_loc1_.c_strSelecetd.length));
  767.       var group = Number(_loc1_.c_strSelecetd.substr(1,_loc1_.c_strSelecetd.indexOf("_",1) - 1));
  768.       var tmpArray = _loc1_.c_arrData[group].id.split(",");
  769.       if(fileNo < tmpArray.length - 1)
  770.       {
  771.          var mc_nav1_Cur = _loc1_.c_objRef["navBtn1_" + group + "_" + (fileNo + 1)];
  772.          var mc_nav2_Cur = _loc1_.c_objRef["navBtn2_" + group + "_" + (fileNo + 1)];
  773.          var mc_nav1_Pre = _loc1_.c_objRef["navBtn1" + _loc1_.c_strSelecetd];
  774.          var mc_nav2_Pre = _loc1_.c_objRef["navBtn2" + _loc1_.c_strSelecetd];
  775.          mc_nav1_Pre.gotoAndStop("groupSelected");
  776.          mc_nav1_Pre.mcHitArea.enabled = true;
  777.          mc_nav1_Cur.gotoAndStop("btnClicked");
  778.          mc_nav1_Cur.mcHitArea.enabled = false;
  779.          mc_nav2_Pre.gotoAndStop("normal");
  780.          mc_nav2_Pre.enabled = true;
  781.          mc_nav2_Cur.gotoAndStop("btnClicked");
  782.          mc_nav2_Cur.enabled = false;
  783.          delete mc_nav2_Cur;
  784.          delete mc_nav1_Cur;
  785.          delete mc_nav1_Pre;
  786.          delete mc_nav1_Pre;
  787.       }
  788.       if(fileNo == tmpArray.length - 1)
  789.       {
  790.          if(_loc1_.c_arrData[group].type == 3)
  791.          {
  792.             _loc1_.deselectAllPairs(group);
  793.          }
  794.          var tmpPrev = _loc1_.c_arrData[group].id.split(",");
  795.          var tmpCurr = _loc1_.c_arrData[group + 1].id.split(",");
  796.          _loc1_.c_objRef.rArrow._x += (tmpCurr.length - tmpPrev.length) * _loc1_.c_iSubNavDist;
  797.          var c_navBtnNo = 0;
  798.          var preGrupBtns = 0;
  799.          var _loc2_ = 0;
  800.          while(_loc2_ < group + 1)
  801.          {
  802.             preGrupBtns += _loc1_.c_arrData[_loc2_].id.split(",").length;
  803.             _loc2_ = _loc2_ + 1;
  804.          }
  805.          _loc2_ = 0;
  806.          while(_loc2_ < _loc1_.c_arrData.length)
  807.          {
  808.             var c_arrTemp = _loc1_.c_arrData[_loc2_].id.split(",");
  809.             var _loc3_ = 0;
  810.             while(_loc3_ < c_arrTemp.length)
  811.             {
  812.                var mc_nav1 = _loc1_.c_objRef["navBtn1_" + _loc2_ + "_" + _loc3_];
  813.                var mc_nav2 = _loc1_.c_objRef["navBtn2_" + _loc2_ + "_" + _loc3_];
  814.                mc_nav2._x = _loc1_.c_inav2X + c_navBtnNo * _loc1_.c_iSubNavDist - preGrupBtns * _loc1_.c_iSubNavDist;
  815.                mc_nav2.gotoAndStop("blank");
  816.                mc_nav2.enabled = false;
  817.                mc_nav1.gotoAndStop("normal");
  818.                delete mc_nav2;
  819.                delete mc_nav1;
  820.                c_navBtnNo++;
  821.                _loc3_ = _loc3_ + 1;
  822.             }
  823.             false;
  824.             delete c_arrTemp;
  825.             _loc2_ = _loc2_ + 1;
  826.          }
  827.          delete c_navBtnNo;
  828.          false;
  829.          _loc3_ = 0;
  830.          while(_loc3_ < tmpCurr.length)
  831.          {
  832.             var mc_nav1 = _loc1_.c_objRef["navBtn1_" + (group + 1) + "_" + _loc3_];
  833.             var mc_nav2 = _loc1_.c_objRef["navBtn2_" + (group + 1) + "_" + _loc3_];
  834.             mc_nav2.gotoAndStop("normal");
  835.             mc_nav2.enabled = true;
  836.             mc_nav1.gotoAndStop("groupSelected");
  837.             delete mc_nav2;
  838.             delete mc_nav1;
  839.             _loc3_ = _loc3_ + 1;
  840.          }
  841.          _loc1_.c_preSelecetd = _loc1_.c_strSelecetd;
  842.          _loc1_.c_strSelecetd = "_" + (group + 1) + "_0";
  843.          if(_loc1_.c_preSelecetd != _loc1_.c_strSelecetd)
  844.          {
  845.             _loc1_.c_objTestRef.c_objSoundController.onPartChange();
  846.             _loc1_.c_blnPartChange = true;
  847.          }
  848.          var mc_nav1_Pre = _loc1_.c_objRef["navBtn1" + _loc1_.c_preSelecetd];
  849.          var mc_nav2_Pre = _loc1_.c_objRef["navBtn2" + _loc1_.c_preSelecetd];
  850.          var mc_nav1_Cur = _loc1_.c_objRef["navBtn1" + _loc1_.c_strSelecetd];
  851.          var mc_nav2_Cur = _loc1_.c_objRef["navBtn2" + _loc1_.c_strSelecetd];
  852.          _loc1_.c_iSeleID = mc_nav2_Cur.id.text;
  853.          _loc1_.strPartType = mc_nav1_Cur.strPartType;
  854.          mc_nav1_Pre.gotoAndStop("normal");
  855.          mc_nav1_Pre.mcHitArea.enabled = true;
  856.          mc_nav2_Cur.gotoAndStop("btnClicked");
  857.          mc_nav2_Cur.enabled = false;
  858.          mc_nav1_Cur.gotoAndStop("btnClicked");
  859.          mc_nav1_Cur.mcHitArea.enabled = false;
  860.          if(_loc1_.c_arrData[group + 1].type == 3)
  861.          {
  862.             var iPairID = _loc1_.getPairID(0);
  863.             _loc1_.setPairID(iPairID);
  864.             _loc1_.deselectAllPairs(group + 1);
  865.             _loc1_.showPairBoxSelection();
  866.          }
  867.          delete mc_nav2_Cur;
  868.          delete mc_nav1_Cur;
  869.          delete mc_nav1_Pre;
  870.          delete mc_nav1_Pre;
  871.       }
  872.       else
  873.       {
  874.          _loc1_.c_preSelecetd = _loc1_.c_strSelecetd;
  875.          _loc1_.c_strSelecetd = "_" + group + "_" + (fileNo + 1);
  876.          _loc1_.c_iSeleID = _loc1_.c_objRef["navBtn2" + _loc1_.c_strSelecetd].id.text;
  877.          _loc1_.strPartType = _loc1_.c_objRef["navBtn1" + _loc1_.c_strSelecetd].strPartType;
  878.          var iPairID = _loc1_.getPairID(fileNo + 1);
  879.          _loc1_.setPairID(iPairID);
  880.          _loc1_.deselectAllPairs(group);
  881.          _loc1_.showPairBoxSelection();
  882.       }
  883.       var mc_r = _loc1_.c_objRef.rArrow;
  884.       var mc_l = _loc1_.c_objRef.lArrow;
  885.       if(_loc1_.c_strSelecetd == "_" + (_loc1_.c_arrData.length - 1) + "_" + (tmpArray.length - 1))
  886.       {
  887.          mc_r.enabled = false;
  888.          mc_r.gotoAndStop("blank");
  889.          mc_l.gotoAndStop("normal");
  890.          mc_l.enabled = true;
  891.       }
  892.       else
  893.       {
  894.          mc_l.gotoAndStop("normal");
  895.          mc_l.enabled = true;
  896.          mc_r.enabled = true;
  897.       }
  898.       delete mc_l;
  899.       delete mc_r;
  900.       _loc1_.showResult();
  901.    }
  902.    function setupStage()
  903.    {
  904.       var _loc1_ = this;
  905.       var group = Number(_loc1_.c_strSelecetd.substr(1,_loc1_.c_strSelecetd.indexOf("_",1) - 1));
  906.       var tmpArray = _loc1_.c_arrData[group].id.split(",");
  907.       if(_loc1_.c_arrData[group].type == 3)
  908.       {
  909.          _loc1_.setupStageForNav3();
  910.       }
  911.       else
  912.       {
  913.          var _loc2_ = 0;
  914.          while(_loc2_ < tmpArray.length)
  915.          {
  916.             var mc_btn1 = _loc1_.c_objRef["navBtn1_" + group + "_" + _loc2_];
  917.             mc_btn1.gotoAndStop("groupSelected");
  918.             delete mc_btn1;
  919.             _loc2_ = _loc2_ + 1;
  920.          }
  921.       }
  922.       _loc2_ = 0;
  923.       while(_loc2_ < tmpArray.length)
  924.       {
  925.          var mc_btn2 = _loc1_.c_objRef["navBtn2_" + group + "_" + _loc2_];
  926.          mc_btn2.gotoAndStop("normal");
  927.          mc_btn2.enabled = true;
  928.          delete mc_btn2;
  929.          _loc2_ = _loc2_ + 1;
  930.       }
  931.       false;
  932.       delete group;
  933.       delete tmpArray;
  934.       var c_navBtnNo = 0;
  935.       var preGrupBtns = 0;
  936.       var c_groupNo = 0;
  937.       while(c_groupNo < group)
  938.       {
  939.          preGrupBtns += _loc1_.c_arrData[c_groupNo].id.split(",").length;
  940.          c_groupNo++;
  941.       }
  942.       var c_groupNo = 0;
  943.       while(c_groupNo < _loc1_.c_arrData.length)
  944.       {
  945.          var c_arrTemp = _loc1_.c_arrData[c_groupNo].id.split(",");
  946.          _loc2_ = 0;
  947.          while(_loc2_ < c_arrTemp.length)
  948.          {
  949.             var _loc3_ = _loc1_.c_objRef["navBtn2_" + c_groupNo + "_" + _loc2_];
  950.             _loc3_._x = _loc1_.c_inav2X + c_navBtnNo * _loc1_.c_iSubNavDist - preGrupBtns * _loc1_.c_iSubNavDist;
  951.             false;
  952.             c_navBtnNo++;
  953.             _loc2_ = _loc2_ + 1;
  954.          }
  955.          false;
  956.          delete c_arrTemp;
  957.          c_groupNo++;
  958.       }
  959.       var mc_btn1 = _loc1_.c_objRef["navBtn1" + _loc1_.c_strSelecetd];
  960.       var mc_btn2 = _loc1_.c_objRef["navBtn2" + _loc1_.c_strSelecetd];
  961.       mc_btn1.gotoAndStop("btnClicked");
  962.       mc_btn2.gotoAndStop("btnClicked");
  963.       mc_btn1.enabled = false;
  964.       mc_btn2.enabled = false;
  965.       delete mc_btn2;
  966.       delete mc_btn1;
  967.    }
  968.    function setupStageForNav3()
  969.    {
  970.       var _loc1_ = this;
  971.       var _loc3_ = Number(_loc1_.c_strSelecetd.split("_")[1]);
  972.       var _loc2_ = Number(_loc1_.c_strSelecetd.split("_")[2]);
  973.       var iPairID = _loc1_.getPairID(_loc2_);
  974.       _loc1_.setPairID(iPairID);
  975.       _loc1_.deselectAllPairs(_loc3_);
  976.       _loc1_.showPairBoxSelection();
  977.    }
  978.    function showResult()
  979.    {
  980.       var _loc1_ = this;
  981.       var iPrePart = Number(_loc1_.c_preSelecetd.split("_")[1]);
  982.       var _loc3_ = Number(_loc1_.c_strSelecetd.split("_")[1]);
  983.       var iQueNo = Number(_loc1_.c_strSelecetd.split("_")[2]);
  984.       var skill = _loc1_.getSkillName();
  985.       var _loc2_ = _loc1_.c_objTestRef.c_objScreenData.DOC.section[_loc3_].attributes.templateType;
  986.       var iTopNavY = _loc1_.c_objTestRef.c_objScreenData.DOC.section[_loc3_].attributes.navYPos;
  987.       _loc1_.setTopNavPosition(iTopNavY);
  988.       if(iPrePart != _loc3_)
  989.       {
  990.          _loc1_.c_objTestRef.onPartChange(iPrePart,_loc3_);
  991.       }
  992.       _loc1_.c_objTestRef.showScreen(_loc2_,_loc1_.c_strSelecetd,_loc1_.c_iSeleID,skill);
  993.       if(_loc2_ == "MCQType_7" || _loc2_ == "PairedMCQScrolling" || _loc2_ == "PairedMCQExtract")
  994.       {
  995.          _loc1_.c_objTestRef.showQuesSelection(_loc2_,iQueNo + 1);
  996.          if(_loc1_.c_objTestRef.c_strMode == "Continue")
  997.          {
  998.             if(!_loc1_.c_objTestRef.c_blnContinueL)
  999.             {
  1000.                _loc1_.c_objTestRef.c_blnContinueL = true;
  1001.             }
  1002.          }
  1003.       }
  1004.       _loc1_.generateHeader();
  1005.    }
  1006.    function markUnAttempted()
  1007.    {
  1008.       var _loc1_ = this;
  1009.       if(_loc1_.c_objTestRef.c_strMode != "Review")
  1010.       {
  1011.          _loc1_.c_objRef["navBtn2" + _loc1_.c_strSelecetd].nav2Atmpt.gotoAndStop("NOTATTEMPTED");
  1012.          var _loc2_ = Number(_loc1_.c_strSelecetd.split("_")[1]);
  1013.          if(_loc1_.c_arrData[_loc2_].type == 3)
  1014.          {
  1015.             var _loc3_ = Number(_loc1_.c_strSelecetd.split("_")[2]);
  1016.             var mcNavPair = _loc1_.c_objRef["pairNav_" + _loc2_ + "_" + _loc1_.c_iCPairID];
  1017.             var strClipName = _loc3_ % 2 != 0 ? "mc_PairR" : "mc_PairL";
  1018.             mcNavPair[strClipName].nav1Atmpt.gotoAndStop("NOTATTEMPTED");
  1019.          }
  1020.          else
  1021.          {
  1022.             _loc1_.c_objRef["navBtn1" + _loc1_.c_strSelecetd].nav1Atmpt.gotoAndStop("NOTATTEMPTED");
  1023.          }
  1024.       }
  1025.       _loc1_.generateHeader();
  1026.    }
  1027.    function generateHeader()
  1028.    {
  1029.       var _loc1_ = this;
  1030.       var _loc2_ = _loc1_.c_strSelecetd.split("_")[1];
  1031.       var skill = _loc1_.c_arrData[_loc2_].skill;
  1032.       var _loc3_ = undefined;
  1033.       switch(skill)
  1034.       {
  1035.          case "reading":
  1036.             _loc3_ = "Reading";
  1037.             break;
  1038.          case "listening":
  1039.             _loc3_ = "Listening";
  1040.             break;
  1041.          case "writing":
  1042.             _loc3_ = "Writing";
  1043.             break;
  1044.          case "use of english":
  1045.             _loc3_ = "Use of English";
  1046.       }
  1047.       if(_loc1_.c_arrData[_loc2_].skill == "writing")
  1048.       {
  1049.          var _exactPartNo = Number(_loc2_) + 1;
  1050.       }
  1051.       else if(_loc1_.c_arrData[_loc2_].skill == "reading" || _loc1_.c_arrData[_loc2_].skill == "listening" || _loc1_.c_arrData[_loc2_].skill == "use of english")
  1052.       {
  1053.          var _exactPartNo = Number(_loc2_) + 1;
  1054.       }
  1055.       if(_loc1_.c_arrData[_loc2_].skill == "writing")
  1056.       {
  1057.          if(_exactPartNo == 1)
  1058.          {
  1059.             var srtHeaderText = "<b>" + _loc3_ + " Part " + Number(_exactPartNo) + " (Question " + Number(_loc1_.c_iSeleID) + ") " + "</b>";
  1060.          }
  1061.          else
  1062.          {
  1063.             var srtHeaderText = "<b>" + _loc3_ + " Part " + Number(_exactPartNo) + " (Questions " + Number(_loc1_.c_iSeleID) + "-" + (Number(_loc1_.c_objTestRef.c_objScreenData.DOC.section[_loc1_.c_objTestRef.c_iPartNo].question.text.length) - 1 + Number(_loc1_.c_iSeleID)) + ") " + "</b>";
  1064.          }
  1065.       }
  1066.       else
  1067.       {
  1068.          var srtHeaderText = "<b>" + _loc3_ + " Part " + Number(_exactPartNo) + "</b>";
  1069.       }
  1070.       _loc1_.c_objTestRef.updateHeader(srtHeaderText);
  1071.    }
  1072.    function markAttempted()
  1073.    {
  1074.       var _loc1_ = this;
  1075.       if(_loc1_.c_objTestRef.c_strMode != "Review")
  1076.       {
  1077.          _loc1_.c_objRef["navBtn2" + _loc1_.c_strSelecetd].nav2Atmpt.gotoAndStop("ATTEMPTED");
  1078.          var _loc2_ = Number(_loc1_.c_strSelecetd.split("_")[1]);
  1079.          if(_loc1_.c_arrData[_loc2_].type == 3)
  1080.          {
  1081.             var mcNavPair = _loc1_.c_objRef["pairNav_" + _loc2_ + "_" + _loc1_.c_iCPairID];
  1082.             var _loc3_ = Number(_loc1_.c_strSelecetd.split("_")[2]);
  1083.             var strClipName = _loc3_ % 2 != 0 ? "mc_PairR" : "mc_PairL";
  1084.             mcNavPair[strClipName].nav1Atmpt.gotoAndStop("ATTEMPTED");
  1085.          }
  1086.          else
  1087.          {
  1088.             _loc1_.c_objRef["navBtn1" + _loc1_.c_strSelecetd].nav1Atmpt.gotoAndStop("ATTEMPTED");
  1089.          }
  1090.       }
  1091.       _loc1_.generateHeader();
  1092.    }
  1093.    function destroyNav()
  1094.    {
  1095.       var _loc2_ = this;
  1096.       var _loc1_ = 0;
  1097.       while(_loc1_ < _loc2_.c_arrData.length)
  1098.       {
  1099.          var c_arrTemp = _loc2_.c_arrData[_loc1_].id.split(",");
  1100.          if(_loc2_.c_arrData[_loc1_].type == 3)
  1101.          {
  1102.             var iPairCount = c_arrTemp.length / 2;
  1103.             var _loc3_ = 0;
  1104.             while(_loc3_ < c_arrTemp.length)
  1105.             {
  1106.                _loc2_.c_objRef["navBtn2_" + _loc1_ + "_" + _loc3_].unloadMovie();
  1107.                _loc2_.c_objRef["pairNav_" + _loc1_ + "_" + _loc3_].unloadMovie();
  1108.                if(_loc3_ < iPairCount)
  1109.                {
  1110.                   _loc2_.c_objRef["pairNav_" + _loc1_ + "_" + _loc3_].unloadMovie();
  1111.                }
  1112.                _loc3_ = _loc3_ + 1;
  1113.             }
  1114.             _loc2_.c_objRef["partType" + _loc1_].unloadMovie();
  1115.          }
  1116.          else
  1117.          {
  1118.             _loc3_ = 0;
  1119.             while(_loc3_ < c_arrTemp.length)
  1120.             {
  1121.                _loc2_.c_objRef["navBtn1_" + _loc1_ + "_" + _loc3_].unloadMovie();
  1122.                _loc2_.c_objRef["navBtn2_" + _loc1_ + "_" + _loc3_].unloadMovie();
  1123.                _loc3_ = _loc3_ + 1;
  1124.             }
  1125.             _loc2_.c_objRef["partType" + _loc1_].unloadMovie();
  1126.             if(_loc2_.c_arrData[_loc1_].type == 2)
  1127.             {
  1128.                _loc2_.c_objRef["navBtn1_2_border1_" + _loc1_].unloadMovie();
  1129.                _loc2_.c_objRef["navBtn1_2_border2_" + _loc1_].unloadMovie();
  1130.             }
  1131.          }
  1132.          _loc1_ = _loc1_ + 1;
  1133.       }
  1134.       _loc2_.c_objRef.rArrow.unloadMovie();
  1135.       _loc2_.c_objRef.lArrow.unloadMovie();
  1136.       delete _loc2_.c_objRef;
  1137.    }
  1138.    function reviewNav(arrAnswers, strMode, arrAttemp)
  1139.    {
  1140.       var _loc2_ = this;
  1141.       var len = arrAttemp.length;
  1142.       var strPartTwo = arrAttemp[len - 1];
  1143.       var strPartOne = arrAttemp[len - 2];
  1144.       _loc2_.c_arrAttempted = arrAttemp;
  1145.       var i = 0;
  1146.       var _loc3_ = 0;
  1147.       var _loc1_ = 0;
  1148.       if(strMode == "Continue")
  1149.       {
  1150.          _loc3_ = 0;
  1151.          while(_loc3_ < _loc2_.c_arrData.length)
  1152.          {
  1153.             var arrTmp = _loc2_.c_arrData[_loc3_].id.split(",");
  1154.             var iNavType = _loc2_.c_arrData[_loc3_].type;
  1155.             _loc1_ = 0;
  1156.             while(_loc1_ < arrTmp.length)
  1157.             {
  1158.                var iPairNo = _loc2_.getPairID(_loc1_);
  1159.                if(arrAttemp[i] != null || arrAttemp[i] != undefined)
  1160.                {
  1161.                   if(iNavType == 3)
  1162.                   {
  1163.                      var mcNavPair = _loc2_.c_objRef["pairNav_" + _loc3_ + "_" + iPairNo];
  1164.                      var strClipName = _loc1_ % 2 != 0 ? "mc_PairR" : "mc_PairL";
  1165.                      mcNavPair[strClipName].nav1Atmpt.gotoAndStop("ATTEMPTED");
  1166.                   }
  1167.                   else
  1168.                   {
  1169.                      _loc2_.c_objRef["navBtn1_" + _loc3_ + "_" + _loc1_].nav1Atmpt.gotoAndStop("ATTEMPTED");
  1170.                   }
  1171.                   _loc2_.c_objRef["navBtn2_" + _loc3_ + "_" + _loc1_].nav2Atmpt.gotoAndStop("ATTEMPTED");
  1172.                }
  1173.                i++;
  1174.                _loc1_ = _loc1_ + 1;
  1175.             }
  1176.             delete arrTmp;
  1177.             _loc3_ = _loc3_ + 1;
  1178.          }
  1179.       }
  1180.       else if(strMode == "Review")
  1181.       {
  1182.          var strPartNo = _loc2_.c_strSelecetd.split("_")[1];
  1183.          var strPartNoInt = Number(strPartNo + 1);
  1184.          var tt = _loc2_.c_strSelecetd.split("_")[2];
  1185.          var skill = _loc2_.c_arrData[strPartNo].skill;
  1186.          _loc3_ = 0;
  1187.          while(_loc3_ < _loc2_.c_arrData.length)
  1188.          {
  1189.             var arrTmp = _loc2_.c_arrData[_loc3_].id.split(",");
  1190.             var iNavType = _loc2_.c_arrData[_loc3_].type;
  1191.             _loc1_ = 0;
  1192.             while(_loc1_ < arrTmp.length)
  1193.             {
  1194.                if(arrAnswers[i] == "1" || arrAnswers[i] == "2")
  1195.                {
  1196.                   _loc2_.c_objRef["navBtn2_" + _loc3_ + "_" + _loc1_].nav2Atmpt.gotoAndStop("CORRECT");
  1197.                   if(iNavType == 3)
  1198.                   {
  1199.                      var iPairNo = _loc2_.getPairID(_loc1_);
  1200.                      var mcNavPair = _loc2_.c_objRef["pairNav_" + _loc3_ + "_" + iPairNo];
  1201.                      var strPairName = _loc1_ % 2 != 0 ? "mc_PairR" : "mc_PairL";
  1202.                      mcNavPair[strPairName].nav1Atmpt.gotoAndStop("CORRECT");
  1203.                   }
  1204.                   else
  1205.                   {
  1206.                      _loc2_.c_objRef["navBtn1_" + _loc3_ + "_" + _loc1_].nav1Atmpt.gotoAndStop("CORRECT");
  1207.                      _loc2_.c_objRef["navBtn1_" + _loc3_ + "_" + _loc1_].attempted = true;
  1208.                   }
  1209.                }
  1210.                else if(arrAnswers[i] == "0")
  1211.                {
  1212.                   _loc2_.c_objRef["navBtn2_" + _loc3_ + "_" + _loc1_].nav2Atmpt.gotoAndStop("INCORRECT");
  1213.                   if(iNavType == 3)
  1214.                   {
  1215.                      var iPairNo = _loc2_.getPairID(_loc1_);
  1216.                      var mcNavPair = _loc2_.c_objRef["pairNav_" + _loc3_ + "_" + iPairNo];
  1217.                      var strPairName = _loc1_ % 2 != 0 ? "mc_PairR" : "mc_PairL";
  1218.                      mcNavPair[strPairName].nav1Atmpt.gotoAndStop("INCORRECT");
  1219.                   }
  1220.                   else
  1221.                   {
  1222.                      _loc2_.c_objRef["navBtn1_" + _loc3_ + "_" + _loc1_].nav1Atmpt.gotoAndStop("INCORRECT");
  1223.                      _loc2_.c_objRef["navBtn1_" + _loc3_ + "_" + _loc1_].attempted = true;
  1224.                   }
  1225.                }
  1226.                else if(_loc2_.c_objTestRef.c_strSkill.toLowerCase() == "writing" && (arrAttemp[_loc3_] != null || arrAttemp[_loc3_] != undefined))
  1227.                {
  1228.                   _loc2_.c_objRef["navBtn1_" + _loc3_ + "_" + _loc1_].nav1Atmpt.gotoAndStop("ATTEMPTED");
  1229.                   _loc2_.c_objRef["navBtn2_" + _loc3_ + "_" + _loc1_].nav2Atmpt.gotoAndStop("ATTEMPTED");
  1230.                   _loc2_.c_objRef["navBtn1_" + _loc3_ + "_" + _loc1_].attempted = true;
  1231.                }
  1232.                else
  1233.                {
  1234.                   _loc2_.c_objRef["navBtn1_" + _loc3_ + "_" + _loc1_].nav1Atmpt.gotoAndStop("RNOT");
  1235.                   _loc2_.c_objRef["navBtn2_" + _loc3_ + "_" + _loc1_].nav2Atmpt.gotoAndStop("RNOT");
  1236.                   _loc2_.c_objRef["navBtn1_" + _loc3_ + "_" + _loc1_].attempted = false;
  1237.                }
  1238.                _loc2_.c_objRef["navBtn1_" + _loc3_ + "_" + _loc1_].strAnsGiven = arrAttemp[i];
  1239.                i++;
  1240.                _loc1_ = _loc1_ + 1;
  1241.             }
  1242.             delete arrTmp;
  1243.             _loc3_ = _loc3_ + 1;
  1244.          }
  1245.          _loc2_.generateHeader();
  1246.       }
  1247.       delete strMode;
  1248.       delete arrAnswers;
  1249.    }
  1250.    function getSkillName()
  1251.    {
  1252.       var _loc1_ = this.c_strSelecetd.split("_")[1];
  1253.       return this.c_arrData[_loc1_].skill;
  1254.    }
  1255. }
  1256.