Changeset 4406 for 2013


Ignore:
Timestamp:
2013-07-03 14:45:40 (6 years ago)
Author:
akansaja
Message:

Talletus.

Location:
2013/27/AkseliJ/Levypallo/Levypallo/Levypallo
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • 2013/27/AkseliJ/Levypallo/Levypallo/Levypallo/Kuutio.cs

    r4390 r4406  
    1010    { 
    1111 
    12         public Kuutio(int indexY, int indexX,  Color vari) 
     12      internal int health; 
     13 
     14      public static Color[] healthvarit = { Color.Green, Color.Red, Color.Purple, Color.Yellow, Color.Brown }; 
     15 
     16        public Kuutio(int indexY, int indexX, int health) 
    1317            : base(100, 100) 
    1418        { 
     
    1721 
    1822 
    19             Color = vari; 
     23            this.health = health; 
     24            Color = healthvarit[health - 1]; 
    2025            X = indexX * 100 +50; 
    2126            Y = (indexY + 2) * 100 + 50; 
  • 2013/27/AkseliJ/Levypallo/Levypallo/Levypallo/Levypallo.cs

    r4390 r4406  
    5252            taulu.Text = "LEVYPALLO SCORE: \n" + Score.ToString()+"\n"+"Elämiä jäljellä:\n"+elamat; 
    5353            if (!palloKiinni) 
     54            { 
     55                pallo.CanRotate = true; 
    5456                pallo.Velocity = pallo.Velocity.Normalize() * Pallon_nopeus; 
    55             else pallo.Velocity = levy.Velocity; 
     57            } 
     58            else { pallo.Velocity = levy.Velocity; 
     59            pallo.StopAngular(); 
     60            pallo.Angle = Angle.Zero; 
     61             
     62            } 
    5663            if (pallo.Y <= Level.Bottom + 30) { 
    5764 
     
    6269                elamat--; 
    6370            } 
     71             
    6472            if (elamat <= 0) 
    6573            { 
    66                 Score = 0; 
    67              
    68             } 
    69              
     74                Label l = new Label(600, 400, "Game Over"); 
     75                l.TextScale = new Vector(6, 6); 
     76                l.TextColor = Color.White; 
     77                MessageDisplay.Add(ArvioiTulos()); 
     78                Add(l); 
     79                Pause(); 
     80                 
     81             
     82            } 
     83             
     84        } 
     85 
     86        private string ArvioiTulos() 
     87        { 
     88            if (Score < 1000) 
     89                return "EI VOI OLLA TOTTA! Vain "+Score+" pistettä!?!?! Miten se on mahdollista?"; 
     90 
     91            else if (Score < 2000) 
     92 
     93                return Score + " pisteitä ei ole kovin häävi. Yritä kuitenkin uudelleen!"; 
     94 
     95 
     96 
     97            else if (Score > 4000) { 
     98 
     99                return "Vaikuttavaa! Mistä sait nuo taidot? "+Score+" on aika hyvä tulos :)"; 
     100            } 
     101            else if (Score > 8000) { 
     102 
     103                return "ANTAKAA APLODIT UUDELLE LEVYPALLOMESTARILLE! "+Score+" PISTETTÄ!"; 
     104             
     105            } 
     106 
     107                return "Hmm... Ihan ok - "+Score+" pistettä."; 
    70108        } 
    71109 
     
    75113        } 
    76114 
    77         private void KuutioonIskee(PhysicsObject bollen, PhysicsObject kuutio) { 
    78  
    79             if (kuutio is Kuutio) { 
     115        private void KuutioonIskee(PhysicsObject bollen, PhysicsObject kuutio) 
     116        { 
     117 
     118            if (kuutio is Kuutio) 
     119            { 
    80120 
    81121                Score += 50; 
    82122                Kuutio cube = kuutio as Kuutio; 
    83  
    84                  
    85                 //Explosion KABOOOOOOOOOOM = new Explosion(100); 
    86                //KABOOOOOOOOOOM.X = cube.X; 
    87                 //KABOOOOOOOOOOM.Y = cube.Y; 
    88                 cube.Destroy(); 
    89                 //Add(KABOOOOOOOOOOM); 
    90              
    91             } 
    92              
    93           
     123                cube.health--; 
     124 
     125                 
     126 
     127                Explosion KABOOOOOOOOOOM = new Explosion(100); 
     128                KABOOOOOOOOOOM.X = cube.X; 
     129                KABOOOOOOOOOOM.Y = cube.Y; 
     130                KABOOOOOOOOOOM.UseShockWave = false; 
     131                Add(KABOOOOOOOOOOM); 
     132                if (cube.health <= 0) cube.Destroy(); 
     133 
     134 
     135                if(cube.health > 0) 
     136                cube.Color = Kuutio.healthvarit[cube.health - 1]; 
     137 
     138 
     139            } 
    94140        } 
    95141 
     
    101147            Keyboard.Listen<Key, ButtonState>(Key.Right, ButtonState.Up, NappiYlos, null, Key.Right, ButtonState.Up); 
    102148            Keyboard.Listen<Key, ButtonState>(Key.Left, ButtonState.Up, NappiYlos, null, Key.Left, ButtonState.Up); 
     149            Keyboard.Listen<Key, ButtonState>(Key.K, ButtonState.Pressed, NappiYlos, null, Key.K, ButtonState.Pressed); 
    103150        } 
    104151 
    105152        private void LuoLevy() 
    106153        { 
     154            //Oletusleveys 250 
    107155            levy = PhysicsObject.CreateStaticObject(250, 40); 
    108156            levy.Color = Color.Yellow; 
     
    139187             
    140188            } 
    141             if (tila == ButtonState.Pressed && nappi == Key.Space && palloKiinni) 
    142             { 
    143                 palloKiinni = false; 
    144                 pallo.IgnoresCollisionResponse = false; 
    145                 bool rnd = RandomGen.NextBool(); 
    146                 if (rnd) pallo.Velocity = new Vector(300, 300); 
    147                 else pallo.Velocity = new Vector(-300, 300); 
     189            if (tila == ButtonState.Pressed) 
     190            { 
     191 
     192                if (nappi == Key.Space && palloKiinni) 
     193                { 
     194                    palloKiinni = false; 
     195                    pallo.IgnoresCollisionResponse = false; 
     196                    bool rnd = RandomGen.NextBool(); 
     197                    if (rnd) pallo.Velocity = new Vector(300, 300); 
     198                    else pallo.Velocity = new Vector(-300, 300); 
     199                } 
     200                else if (nappi == Key.K && !palloKiinni) { 
     201 
     202                    palloKiinni = true; 
     203                    pallo.X = levy.X; 
     204                    pallo.Y = Level.Bottom + 70; 
     205                    pallo.IgnoresCollisionResponse = true; 
     206                    elamat--; 
     207                 
     208                } 
     209                 
     210                 
    148211                 
    149212            } 
     
    170233 
    171234 
    172                         kentta[i, j] = new Kuutio(((int)Level.Bottom / 100) + i, (((int)Level.Left / 100) + j), RandomGen.NextColor()); 
     235                        kentta[i, j] = new Kuutio(((int)Level.Bottom / 100) + i, (((int)Level.Left / 100) + j), RandomGen.NextInt(1, 6)); 
    173236                    } 
    174237                    else kentta[i, j] = null; 
     
    186249            pallo.Y = Level.Bottom + 70; 
    187250            pallo.X= 0; 
    188             pallo.Shape = Shape.Circle; 
     251            pallo.Shape = Shape.Octagon; 
    189252            pallo.Restitution = 1.5; 
    190253            pallo.IgnoresGravity = true; 
    191254            pallo.Tag = "pallo"; 
    192255            pallo.IgnoresCollisionResponse = true; 
     256            pallo.IgnoresExplosions = true; 
    193257            palloKiinni = true; 
    194258            Add(pallo); 
     
    220284 
    221285    } 
     286 
     287   
    222288} 
Note: See TracChangeset for help on using the changeset viewer.