Changeset 3773


Ignore:
Timestamp:
2012-07-26 15:00:47 (11 years ago)
Author:
malirola
Message:

Talletus.

Location:
2012/30/MatildaL/SquareGuard/SquareGuard
Files:
2 added
3 edited

Legend:

Unmodified
Added
Removed
  • 2012/30/MatildaL/SquareGuard/SquareGuard/SquareGuard/SquareGuard.cs

    r3749 r3773  
    1717    Image tahtiKuva = LoadImage("tahti"); 
    1818 
     19    int kenttaNro = 1; 
     20    IntMeter laskuri; 
     21 
     22    List<Label> valikonKohdat; 
     23 
     24 
    1925    public override void Begin() 
    2026    { 
    21         Alkuvalikko(); 
    22         Gravity = new Vector(0, -1000); 
    23         LuoKentta(); 
    24         LisaaNappaimet(); 
    25  
    26         Camera.ZoomFactor = 0.1; 
    27         Camera.StayInLevel = true; 
    28     } 
    29  
    30     void LuoKentta() 
    31     { 
    32         TileMap kentta = TileMap.FromLevelAsset("kentta1"); 
     27        Valikko(); 
     28        //Camera.ZoomFactor = 0.1; 
     29        //Camera.StayInLevel = true; 
     30        //SeuraavaKentta(); 
     31    } 
     32 
     33    void LuoKentta(string kenttatiedosto) 
     34    { 
     35        TileMap kentta = TileMap.FromLevelAsset(kenttatiedosto); 
    3336        kentta.SetTileMethod('#', LisaaTaso); 
    3437        kentta.SetTileMethod('*', LisaaTahti); 
    3538        kentta.SetTileMethod('N', LisaaNelio); 
    3639        kentta.SetTileMethod('P', LisaaPallo); 
    37         //kentta.SetTileMethod('L', LisaaLiikkuva); 
    38         //kentta.SetTileMethod('2', LisaaLiikkuva); 
    3940        kentta.SetTileMethod('e', LisaaEste); 
    4041        kentta.Execute(); 
     
    8182        pallo.Color = Color.Ultramarine; 
    8283        pallo.Restitution = 1.0; 
    83         //pallo.Velocity = new Vector(); 
    84  
    85         //Vector nopeusYlos = new Vector(0, 200); 
    86         //Vector nopeusAlas = new Vector(0, -500); 
     84        pallo.KineticFriction = 0.0; 
    8785 
    8886        pallo.Velocity = new Vector(0, 300); 
     87 
     88        pallo.Position = paikka; 
    8989 
    9090        AddCollisionHandler(pallo, "tahti", PalloTormaaTahteen); 
     
    9292        Add(pallo, 1); 
    9393 
    94         //pallo.IgnoresGravity = true; 
    95           pallo.IgnoresPhysicsLogics = true; 
    96         //pallo.IgnoresCollisionResponse = true; 
     94        pallo.IgnoresPhysicsLogics = true; 
    9795 
    9896        Vector voima = Vector.FromLengthAndAngle(RandomGen.NextDouble(0.0, 1000.0), RandomGen.NextAngle()); 
    99         Vector impulssi = new Vector(500.0, 0.0); 
     97        Vector impulssi = new Vector(600.0, 0.0); 
    10098        pallo.Hit(impulssi); 
    10199         
    102100        pallo.CollisionIgnoreGroup = 1; 
    103101    } 
    104  
    105     //void LisaaLiikkuva(Vector paikka, double leveys, double korkeus) 
    106     //{ 
    107         //PhysicsObject liikkuva = new PhysicsObject(50, 10); 
    108         //liikkuva.Color = Color.Black; 
    109         //liikkuva.CanRotate = false; 
    110  
    111         //List<Vector> polku = new List<Vector>(); 
    112         //polku.Add(new Vector(40, 120)); 
    113         //polku.Add(new Vector(-100, 60)); 
    114  
    115         //PathFollowerBrain polkuAivot = new PathFollowerBrain(); 
    116         //polkuAivot.Path = polku; 
    117         //polkuAivot.Loop = true; 
    118         //polkuAivot.Speed = 100; 
    119         //polkuAivot.Active = true; 
    120  
    121         //liikkuva.Position = paikka; 
    122         //liikkuva.Brain = polkuAivot; 
    123         //Add(liikkuva); 
    124  
    125     //} 
    126  
    127     //void LisaaLiikkuva2(Vector paikka, double leveys, double korkeus) 
    128     //{ 
    129         //PhysicsObject liikkuva2 = new PhysicsObject(50, 10); 
    130         //liikkuva2.Color = Color.Black; 
    131         //liikkuva2.CanRotate = false; 
    132  
    133         //List<Vector> polku = new List<Vector>(); 
    134         //polku.Add(new Vector(-200, -100)); 
    135         //polku.Add(new Vector(-100, -200)); 
    136  
    137         //PathFollowerBrain polkuAivot = new PathFollowerBrain(); 
    138         //polkuAivot.Path = polku; 
    139         //polkuAivot.Loop = true; 
    140         //polkuAivot.Speed = 100; 
    141         //polkuAivot.Active = true; 
    142  
    143         //liikkuva2.Position = paikka; 
    144         //liikkuva2.Brain = polkuAivot; 
    145         //Add(liikkuva2); 
    146     //} 
    147102 
    148103    void LisaaEste(Vector paikka, double leveys, double korkeus) 
     
    155110    } 
    156111 
    157  
    158  
    159  
    160112    void LisaaNappaimet() 
    161113    { 
     114        Gravity = new Vector(0, -1000); 
     115 
    162116        Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Näytä ohjeet"); 
    163117        Keyboard.Listen(Key.Escape, ButtonState.Pressed, Exit, "Poistu pelistä"); 
     
    169123 
    170124        ControllerOne.Listen(Button.Back, ButtonState.Pressed, Exit, "Poistu pelistä"); 
    171  
    172125        ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, Liikuta, "Pelaaja liikkuu vasemmalle", nelio, -nopeus); 
    173126        ControllerOne.Listen(Button.DPadRight, ButtonState.Down, Liikuta, "Pelaaja liikkuu oikealle", nelio, nopeus); 
     
    190143    { 
    191144        tahti.Destroy(); 
     145        laskuri.Value += 1; 
     146        if (laskuri.Value == 8) KaikkiTahdet(); 
    192147    } 
    193148 
     
    199154    void PalloTormaaTahteen(PhysicsObject pallo, PhysicsObject tahti) 
    200155    { 
     156        SeuraavaKentta(); 
     157    } 
     158 
     159    void AloitaAlusta() 
     160    { 
    201161        ClearAll(); 
    202     } 
    203  
    204     void Alkuvalikko() 
    205     { 
    206         MultiSelectWindow alkuValikko = new MultiSelectWindow("Pelin alkuvalikko", 
    207         "Aloita peli", "Lopeta"); 
    208         alkuValikko.Color = Color.PaintDotNetMagenta; 
    209         Add(alkuValikko); 
    210     } 
    211  
    212     void PainettiinValikonNappia(int valinta) 
    213     { 
    214         switch (valinta) 
     162        SeuraavaKentta(); 
     163    } 
     164 
     165    void SeuraavaKentta() 
     166    { 
     167        ClearAll(); 
     168 
     169        if (kenttaNro == 1) LuoKentta("kentta1"); 
     170        else if (kenttaNro == 2) LuoKentta("kentta2"); 
     171        else if (kenttaNro == 3) LuoKentta("kentta3"); 
     172        else if (kenttaNro > 3) MessageDisplay.Add("Voitto!"); 
     173        MessageDisplay.MessageTime = new TimeSpan(0, 0, 10); 
     174        
     175        LisaaNappaimet(); 
     176        LuoLaskuri(); 
     177    } 
     178 
     179    void KaikkiTahdet() 
     180    { 
     181        //Kasvatetaan kenttänumeroa yhdellä ja siirrytään seuraavaan kenttään: 
     182        kenttaNro++; 
     183        SeuraavaKentta(); 
     184    } 
     185 
     186    IntMeter LuoLaskuri() 
     187    { 
     188        laskuri = new IntMeter(0); 
     189        return laskuri; 
     190    } 
     191 
     192    void Valikko() 
     193    { 
     194        ClearAll(); // Tyhjennetään kenttä kaikista peliolioista 
     195 
     196        valikonKohdat = new List<Label>(); // Alustetaan lista, johon valikon kohdat tulevat 
     197 
     198        Label kohta1 = new Label("Aloita uusi peli");  // Luodaan uusi Label-olio, joka toimii uuden pelin aloituskohtana 
     199        kohta1.Position = new Vector(0, 40);  // Asetetaan valikon ensimmäinen kohta hieman kentän keskikohdan yläpuolelle 
     200        valikonKohdat.Add(kohta1);  // Lisätään luotu valikon kohta listaan jossa kohtia säilytetään 
     201 
     202        Label kohta2 = new Label("Parhaat pisteet"); 
     203        kohta2.Position = new Vector(0, 0); 
     204        valikonKohdat.Add(kohta2); 
     205 
     206        Label kohta3 = new Label("Lopeta peli"); 
     207        kohta3.Position = new Vector(0, -40); 
     208        valikonKohdat.Add(kohta3); 
     209 
     210        // Lisätään kaikki luodut kohdat peliin foreach-silmukalla 
     211        foreach (Label valikonKohta in valikonKohdat) 
    215212        { 
    216             case 0: 
    217                 // AloitaPeli(); 
    218                 break; 
    219             case 2: 
    220                 Exit(); 
    221                 break; 
     213            Add(valikonKohta); 
    222214        } 
    223     } 
    224  
    225      
     215 
     216         
     217 
     218 
     219 
     220    } 
     221 
    226222 
    227223 
  • 2012/30/MatildaL/SquareGuard/SquareGuard/SquareGuardContent/SquareGuardContent.contentproj

    r3725 r3773  
    6666    </Compile> 
    6767  </ItemGroup> 
     68  <ItemGroup> 
     69    <Compile Include="kentta2.txt"> 
     70      <Name>kentta2</Name> 
     71      <Importer>TextFileImporter</Importer> 
     72      <Processor>TextFileContentProcessor</Processor> 
     73    </Compile> 
     74  </ItemGroup> 
     75  <ItemGroup> 
     76    <Compile Include="kentta3.txt"> 
     77      <Name>kentta3</Name> 
     78      <Importer>TextFileImporter</Importer> 
     79      <Processor>TextFileContentProcessor</Processor> 
     80    </Compile> 
     81  </ItemGroup> 
    6882  <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 
    6983  <!--  To modify your build process, add your task inside one of the targets below and uncomment it.  
  • 2012/30/MatildaL/SquareGuard/SquareGuard/SquareGuardContent/kentta1.txt

    r3749 r3773  
    44                                  ## 
    55     ##          ## 
    6            *             *              e    ## 
    7            ##       e            ## 
     6            *                 *           e    ## 
     7           ##       e          v   ## 
    88  ##                                  ## 
    9                       ##     ## 
    10    ##        P     *             L        ## 
     9                      ##      
     10   ##             *         ##            ## 
    1111              ## 
    1212  e                 e           ##    * 
    1313    *                  ##                       ## 
    1414   ##                          *       
    15          2       ##            ##        e 
     15                ##            ##        e 
    1616                        N 
Note: See TracChangeset for help on using the changeset viewer.