Changeset 1173 for 2010/27/attakorh


Ignore:
Timestamp:
2010-07-08 11:29:36 (9 years ago)
Author:
attakorh
Message:
 
Location:
2010/27/attakorh/Pallerot
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • 2010/27/attakorh/Pallerot/Peli.cs

    r1148 r1173  
    1010    const double hyppyVoima = 4000; 
    1111 
    12     IntMeter pisteLaskuri; 
    13     Label pisteNaytto; 
    1412 
    1513    PlatformCharacter pelaaja1; 
     
    2826        Level.Height = 1000; 
    2927 
    30         pisteLaskuri = new IntMeter(0); 
    3128 
    3229        // Zoomataan lähemmäksi 
    3330        Camera.ZoomFactor = 2.0; 
    34  
    3531        Camera.StayInLevel = true; 
    3632 
    3733        seuraavaKentta(); 
    3834        MessageDisplay.Add("Hypi tornin päälle!"); 
     35        MessageDisplay.Add("Avaa ohjeet painamalla F1."); 
     36 
     37        
    3938    } 
    4039 
     
    4645        MessageDisplay.Add("Kenttä " + kenttaNro); 
    4746 
    48         // Asetetaan painovoima 
    49         Gravity = new Vector(0, -1000); 
    5047 
    51         // luodaan pistelaskunäyttö 
    52         pisteNaytto = new Label(); 
    53         pisteNaytto.X = Screen.RightSafe - 250; 
    54         pisteNaytto.Y = Screen.TopSafe - 50; 
    55         pisteNaytto.BindTo(pisteLaskuri); 
    56         Add(pisteNaytto); 
    5748 
    5849        luoKentta(); 
    5950        lisaaNappaimet(); 
    60         Camera.Follow(pelaaja1); 
    6151    } 
    6252 
    6353    void luoKentta() 
    6454    { 
     55        // Asetetaan painovoima 
     56        Gravity = new Vector(0, -500); 
     57 
    6558        Level.CreateBorders(); 
    6659 
    6760        TileMap ruudut = TileMap.FromFile("kentta1.txt"); 
    6861        ruudut['='] = LuoPalikka; 
    69         ruudut['*'] = LuoTahti; 
    7062        ruudut['1'] = lisaaPelaaja; 
    7163        ruudut['s'] = Sivu; 
    72         ruudut['p'] = Piikki; 
     64        ruudut['p'] = LuoPiikki; 
    7365 
    7466        ruudut.Insert(ruudunLeveys, ruudunKorkeus); 
     67        Camera.Follow(pelaaja1); 
     68 
    7569    } 
    7670 
     
    8276    } 
    8377 
    84     PhysicsObject LuoTahti() 
    85     { 
    86         PhysicsObject tahti = PhysicsObject.CreateStaticObject(25.0, 25.0); 
    87         return tahti; 
    88     } 
    89  
    90     void lisaaTaso(double x, double y) 
    91     { 
    92         PhysicsObject taso = PhysicsObject.CreateStaticObject(100, 30); 
    93         taso.Color = Color.Green; 
    94         taso.X = x; 
    95         taso.Y = y; 
    96         Add(taso); 
    97     } 
    98  
    9978    PhysicsObject lisaaPelaaja() 
    10079    { 
     
    10483        pelaaja1.X = 0; 
    10584        pelaaja1.Y = Level.Bottom + 120; 
    106  
    107         AddCollisionHandler(pelaaja1, PelaajaOsuu); 
     85        AddCollisionHandler(pelaaja1, KasittelePelaajanTormays); 
    10886        return (PhysicsObject)pelaaja1; 
     87         
    10988    } 
    11089 
     
    148127    void hyppaa(PlatformCharacter hahmo, double voima) 
    149128    { 
    150         hahmo.Jump(voima); 
    151     } 
    152  
    153     void PelaajaOsuu(PhysicsObject collidingObject, PhysicsObject otherObject) 
    154     { 
    155         if (otherObject.Tag.ToString() == "maali") 
    156         { 
    157             PlaySound("maali"); 
    158             int edellisenKentanPisteet = pisteLaskuri.Value; 
    159             seuraavaKentta(); 
    160             MessageDisplay.Add("Pääsit läpi kentän " + kenttaNro + ". Pisteitä: " + edellisenKentanPisteet); 
    161         } 
     129        hahmo.Jump(hyppyVoima); 
    162130    } 
    163131 
     
    170138    } 
    171139 
    172     PhysicsObject Piikki() 
     140    PhysicsObject LuoPiikki() 
    173141    { 
     142        PhysicsObject piikki = new PhysicsObject(50.0, 50.0); 
     143        piikki.Image = LoadImage("piikki"); 
     144        piikki.Tag = "piikki"; 
     145        return (PhysicsObject)piikki; 
     146    } 
    174147 
     148    void KasittelePelaajanTormays(PhysicsObject lisaaPelaaja, PhysicsObject kohde) 
     149    { 
     150        if (kohde.Tag.ToString() == "maali") 
     151        { 
     152            PlaySound("maali"); 
     153            seuraavaKentta(); 
     154            MessageDisplay.Add("Jees! Pääsit läpi kentän " + kenttaNro ); 
     155        } 
     156 
     157        if (kohde.Tag.ToString() == "piikki") 
     158        { 
     159            ClearAll(); 
     160            luoKentta(); 
     161            lisaaNappaimet(); 
     162            MessageDisplay.Add("Kenttä " + kenttaNro); 
     163            MessageDisplay.Add("Kuolit! Aloita alusta!"); 
     164            MessageDisplay.Add("Avaa ohjeet painamalla F1."); 
     165        } 
    175166    } 
    176167 
  • 2010/27/attakorh/Pallerot/kentta1.txt

    r1148 r1173  
    1414s                                 s 
    1515s                                 s 
    16 s                                 s 
    17 s               pppppppppppppppppps 
    18 s============   ==================s 
    19 s             1                   s 
     16s                         p   p   s 
     17s                       = = = =  =s 
     18s                    =            s 
     19spppppppppppp  1   ppppppppppppppps 
    2020s=================================s 
Note: See TracChangeset for help on using the changeset viewer.