Changeset 1615 for 2010/23


Ignore:
Timestamp:
2010-08-05 08:57:12 (9 years ago)
Author:
anlakane
Message:

Lisää kerättäviä kuvia yms.

Location:
2010/23/hniemi/Matopeli
Files:
1 added
2 edited
1 moved

Legend:

Unmodified
Added
Removed
  • 2010/23/hniemi/Matopeli/Content/Content.contentproj

    r1614 r1615  
    3535  </ItemGroup> 
    3636  <ItemGroup> 
    37     <Compile Include="speed.png"> 
    38       <Name>speed</Name> 
     37    <Compile Include="nopeus.png"> 
     38      <Name>nopeus</Name> 
     39      <Importer>TextureImporter</Importer> 
     40      <Processor>TextureProcessor</Processor> 
     41    </Compile> 
     42  </ItemGroup> 
     43  <ItemGroup> 
     44    <Compile Include="omena.png"> 
     45      <Name>omena</Name> 
    3946      <Importer>TextureImporter</Importer> 
    4047      <Processor>TextureProcessor</Processor> 
  • 2010/23/hniemi/Matopeli/Peli.cs

    r1614 r1615  
    77public class Peli : Game 
    88{ 
    9     //GameObject[] mato; 
    109    const double ruudunKoko = 20; 
    1110    int madonPituus = 6; 
    1211    const double vaikeusaste = 0.2; 
    13  
    1412    double kerattavienLisaysAikaSek = 1.0; 
    1513 
     
    2422    IntMeter pistelaskuri; 
    2523 
    26     Image nopeusKuva = LoadImage("speed"); 
     24    String[] kerattavienVaihtoehdot = new String[] {"nopeus", "omena"}; 
     25    Image nopeusKuva = LoadImage("nopeus"); 
     26    Image omenaKuva = LoadImage("omena"); 
    2727 
    2828    protected override void Begin() 
     
    5454            LisaaPalaMatoon(); 
    5555        } 
    56         //Luo madon pään viimeiseksi, jotta sen pään värin muuttaminen näkyy 
    57         //Aka. Too lazy for layers 
    5856        mato.Insert(0, new GameObject(ruudunKoko - 1, ruudunKoko - 1)); 
    5957        mato[0].Tag = "matopala"; 
    60         Add(mato[0]); 
     58        Add(mato[0], 1); 
     59 
    6160    } 
    6261 
     
    6564        GameObject pala = new GameObject(ruudunKoko - 1, ruudunKoko - 1); 
    6665        pala.Tag = "matopala"; 
     66        if(mato.Count>0) pala.Position = mato[mato.Count - 1].Position; 
    6767        mato.Add(pala); 
    6868        Add(pala); 
     
    112112        kerattavienLisaysAjastin = new Timer(); 
    113113        kerattavienLisaysAjastin.Interval = kerattavienLisaysAikaSek; 
    114         kerattavienLisaysAjastin.Trigger += LisaaKerattava; 
     114        kerattavienLisaysAjastin.Trigger += LisaaSatunnainenKerattava; 
    115115    } 
    116116 
     
    146146            mato[0].Color = Color.Blue; 
    147147        } 
     148    } 
     149 
     150    void LisaaSatunnainenKerattava(Timer ajastin) 
     151    { 
     152        int arvottavaIndeksi = RandomGen.NextInt(0, kerattavienVaihtoehdot.Length - 1); 
     153        LisaaKerattava(kerattavienVaihtoehdot[arvottavaIndeksi]); 
    148154    } 
    149155 
     
    153159    /// </summary> 
    154160    /// <param name="ajastin"></param> 
    155     void LisaaKerattava(Timer ajastin) 
     161    void LisaaKerattava(String kerattavanNimi) 
    156162    { 
    157163        double kerattavanX = RandomGen.NextInt(-ruutujaVaakasuunnassa/2, ruutujaVaakasuunnassa/2) * ruudunKoko; 
    158164        double kerattavanY = RandomGen.NextInt(-ruutujaPystysuunnassa/2, ruutujaPystysuunnassa/2) * ruudunKoko; 
    159  
     165        MessageDisplay.Add(kerattavat.Count.ToString()); 
    160166        if (kerattavat.Count >= ruutujaVaakasuunnassa * ruutujaPystysuunnassa - madonPituus) return; 
    161167 
     
    166172        } 
    167173 
     174                 
    168175        GameObject kerattava = new GameObject(ruudunKoko, ruudunKoko, Shapes.Rectangle); 
    169176        Add(kerattava); 
    170177        kerattava.X = kerattavanX; 
    171178        kerattava.Y = kerattavanY; 
    172         kerattava.Tag = "kerattava"; 
    173         kerattava.Color = RandomGen.NextColor(); 
     179        kerattava.Tag = "kerattava_" + kerattavanNimi; 
     180        Image kerattavanKuva = Image.FromColor((int)ruudunKoko, (int)ruudunKoko, Color.White); 
     181        switch (kerattavanNimi) 
     182        { 
     183            case "nopeus": 
     184                kerattavanKuva = nopeusKuva; 
     185                break; 
     186            case "omena": 
     187                kerattavanKuva = omenaKuva; 
     188                break; 
     189        } 
     190        kerattava.Image = kerattavanKuva; 
    174191        kerattavat.Add(kerattava); 
    175192    } 
Note: See TracChangeset for help on using the changeset viewer.