Advertisement
Guest User

bug schedule

a guest
Aug 31st, 2011
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.24 KB | None | 0 0
  1.  
  2. function EnemyMcGeeBehavior::onCollision(%srcObject, %dstObject, %srcRef, %dstRef, %time, %normal, %contacts, %points)
  3. {  
  4.     if(%dstObject.class $= "ChipClass")
  5.     {  
  6.         echo("eMcG onColl::ChipClass");
  7.         if($playersCollided != true)
  8.         {
  9.             if($ChipSwiping == true)
  10.             {
  11.                 echo("eMcG $ChipSwiping");
  12.                 %srcObject.ChipSwipeAccount();
  13.                 %dstObject.setCollisionActive(false, false);
  14.                 //%srcObject.setCollisionActive(false, false);
  15.             }
  16.             if($EnemySwiping == true)
  17.             {
  18.                 echo("eMcG $EnemySwiping");
  19.                 %srcObject.EnemySwipeAccount();
  20.                 %dstObject.setCollisionActive(false, false);
  21.                 //%srcObject.setCollisionActive(false, false);     
  22.             }
  23.         }
  24.        
  25.         else if($playersCollided == true)
  26.         {
  27.             echo("... playersCollided == false");
  28.             return;
  29.         }
  30.  
  31.     }
  32. }
  33.  
  34. function EnemyMcGeeBehavior::ChipSwipeAccount(%this)
  35. {
  36.     if(EnemySwiping == true)
  37.     return;
  38.    
  39.     echo("eMcG ChipSwipeAccount function");
  40.     echo("$ChipSwiping should = 1 " @ $ChipSwiping);
  41.     echo("eMcG % time " @ Sim::getCurrentTime());
  42.     %eReaction = getRandom(1, 2);
  43.     echo("eMcG ::%eReaction dictates enemy reaction if 1 def, 2 smacked");
  44.     echo("eMcG %eReaction " @ %eReaction);
  45.     if(%eReaction == 1)
  46.     {
  47.         echo("eMcG %eReaction == 1 so enemy defend.");
  48.         //this means enemy succesfully defends
  49.         %this.schedule(500, eRecover);
  50.         %this.schedule(1000, reREreRE);
  51.         $EnemyChangeState = true;
  52.         $EnemyDefending = true;
  53.         $EnemySmacked = false;
  54.         ///will also have to change eChip mount pos.
  55.         /*%this.enemyChip.mount($Enemy, -3, -3, true);*/
  56.  
  57.     }
  58.     else if(%eReaction == 2)
  59.     {
  60.         echo("eMcG %eReaction == 2 so enemy smacked.");
  61.         //this means enemy is smacked
  62.         %this.schedule(500, eRecover);
  63.         %this.schedule(1000, reREreRE);    
  64.         $EnemyChangeState = true;
  65.         $EnemyDefending = false;
  66.         $EnemySmacked = true;
  67.         //this means enemy loseshis chip
  68.         %this.enemyChip.dismount();
  69.         %this.enemyChip.setConstantForceY($Gravity);
  70.         ///this var simply tells e to getChip uPon scheduled eRecover
  71.         %this.lostChip = true;
  72.     }  
  73. }
  74.  
  75.  
  76. function EnemyMcGeeBehavior::reREreRE(%this)
  77. {
  78.     echo("G G G Gggggg GGG gggg G G g g ");
  79.     echo("G G G Gggggg GGG gggg G G g g ");
  80.     echo("G G G Gggggg GGG gggg G G g g ");
  81.     echo("G G G Gggggg GGG gggg G G g g ");
  82.     echo("G G G Gggggg GGG gggg G G g g ");
  83.     echo("G G G Gggggg GGG gggg G G g g ");
  84.     echo("G G G Gggggg GGG gggg G G g g ");
  85.     echo("G G G Gggggg GGG gggg G G g g ");
  86. }
  87.    
  88.  
  89. function EnemyMcGeeBehavior::eRecover(%this)
  90. {
  91.     $Chip.setCollisionActive(true, true);
  92.     echo("eMcG ::eRecover");
  93.     echo("eMcG ::eRecover");
  94.     echo("eMcG ::eRecover");
  95.     echo("eMcG ::eRecover");
  96.     return;
  97.     if($EnemyMounted == true)
  98.     {
  99.         ///figure out time to drop chip.
  100.         %ePos = $Enemy.position;
  101.         if(%ePos > 10)
  102.         {
  103.             ///so walk right, drop
  104.             $EnemyChangeState = true;
  105.             $EnemyWalking = true;
  106.             $EnemyWalkingRight = true;
  107.             %this.schedule(1000, dropChip);
  108.         }
  109.         else if (%ePos < 10)
  110.         {
  111.             ///so walk left, drop.
  112.             $EnemyChangeState = true;
  113.             $EnemyWalking = true;
  114.             $EnemyWalkingLeft = true;
  115.             %this.schedule(1000, dropChip);        
  116.         }
  117.     }
  118.     else if($EnemyMounted == false)
  119.     {
  120.         $EnemyChangeState = true;
  121.         $EnemyWalking = false;
  122.         $EnemyWalkingLeft = true;
  123.         $EnemyWalkingRight = true;
  124.         $EnemyDefending = false;
  125.         $EnemySmacking = false;
  126.     }      
  127. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement