Ejemplo n.º 1
0
        public void DidBeginContact(SKPhysicsContact contact)
        {
            inprogress = false;

            Console.WriteLine("We Collided!");
            gameended = true;
            void gameOver()
            {
                var textures = Enumerable.Range(1, 4).Select(
                    (i) => SKTexture.FromImageNamed(String.Format("Death-{0}", i))).ToArray();

                deathSpin = SKAction.RepeatAction(SKAction.AnimateWithTextures(textures, .1), 4);
                var shrink = SKAction.ScaleTo(0f, 2f);
                var death  = SKAction.Sequence(deathSpin, shrink);

                playerObject.RunAction(death);

                var playDeath = SKAction.PlaySoundFileNamed("playerDeath", false);

                playerDied.RunAction(playDeath);
                gameSong.RunAction(SKAction.CreateStop());
            }

            void animateOver()
            {
                var grow    = SKAction.ScaleTo(2.0f, 1.5);
                var shrink  = SKAction.ScaleTo(.5f, 1.5);
                var animate = SKAction.RepeatActionForever(SKAction.Sequence(grow, shrink));

                endGame.RunAction(animate);
            }

            playerObject.RemoveAllActions();
            obstacle.RemoveAllActions();
            sidewalk1.RemoveAllActions();
            sidewalk2.RemoveAllActions();
            sidewalk3.RemoveAllActions();
            building1.RemoveAllActions();
            building2.RemoveAllActions();
            building3.RemoveAllActions();
            building4.RemoveAllActions();
            building5.RemoveAllActions();
            building6.RemoveAllActions();
            building7.RemoveAllActions();
            building8.RemoveAllActions();
            building9.RemoveAllActions();
            building10.RemoveAllActions();
            building11.RemoveAllActions();
            building12.RemoveAllActions();
            building13.RemoveAllActions();
            building14.RemoveAllActions();
            road1.RemoveAllActions();
            road2.RemoveAllActions();
            road3.RemoveAllActions();
            road4.RemoveAllActions();
            road5.RemoveAllActions();
            road6.RemoveAllActions();
            obstacle1.RemoveAllActions();
            obstacle2.RemoveAllActions();
            enemy.RemoveAllActions();
            obstacle4.RemoveAllActions();

            scores.Add(score);
            scores.Sort((a, b) => - 1 * a.CompareTo(b)); 


 var sl = scores.Count; 
                 if (sl >= 10)
            {
                
                  {
                    
 sl = 10; 

                }
            }
            

 var plist = NSUserDefaults.StandardUserDefaults; 
                       for (int i = 0; i < sl; i++)

            {
                
                   {
                    
 Console.WriteLine(scores[i]); 
 plist.SetInt(scores[i], String.Format("Score-{0}", i)); 


                }
            }

            score = 0;

            //unsubscribe obstacle objects at the end of the round
            timer.Elapsed  -= sendobstacle;
            timer1.Elapsed -= sendobstacle1;
            timer2.Elapsed -= sendobstacle2;
            timer3.Elapsed -= sendobstacle3;
            timer4.Elapsed -= sendobstacle4;

            gameOver();

            AddChild(endGame);

            animateOver();
        }