Changeset 7700


Ignore:
Timestamp:
2016-07-04 14:03:15 (3 years ago)
Author:
taliimat
Message:
 
Location:
2016/27/TaneliL
Files:
10 edited

Legend:

Unmodified
Added
Removed
  • 2016/27/TaneliL/viikko27peli/viikko27peli/viikko27peli/obj/x86/Debug/ContentPipeline-{F99EDDCF-4A4A-460D-B3A5-3336E699DEC5}.xml

    r7671 r7700  
    99      <Options>None</Options> 
    1010      <Output>C:\MyTemp\TaneliL\viikko27peli\viikko27peli\viikko27peli\bin\x86\Debug\Content\Kentta1.xnb</Output> 
    11       <Time>2016-07-04T11:24:27.0838138+03:00</Time> 
     11      <Time>2016-07-04T13:12:08.467615+03:00</Time> 
    1212    </Item> 
    1313    <BuildSuccessful>true</BuildSuccessful> 
  • 2016/27/TaneliL/viikko27peli/viikko27peli/viikko27peli/viikko27peli.cs

    r7696 r7700  
    1010{ 
    1111 
    12     PhysicsObject pelaaja; 
    13     PhysicsObject paksuPalikka; 
    14     PhysicsObject ohutPalikka; 
    15     PhysicsObject piikit; 
    16     PhysicsObject kerailyEsine; 
    17  
     12    PlatformCharacter pelaaja; 
    1813    public override void Begin() 
    1914    { 
     
    2722    void nappaimet() 
    2823    { 
    29         Keyboard.Listen(Key.W, ButtonState.Pressed, liikutaPelaajaa, null, new Vector (0, 200)); 
    30     
     24        Keyboard.Listen(Key.W, ButtonState.Pressed, pelaajaHyppaa, null, 700.0); 
     25        Keyboard.Listen(Key.A, ButtonState.Down, liikutaPelaajaa, null, -200.0); 
     26        Keyboard.Listen(Key.D, ButtonState.Down, liikutaPelaajaa, null, 200.0); 
     27        Keyboard.Listen(Key.E, ButtonState.Pressed, kiipea, null); 
     28 
    3129        PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); 
    3230        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 
     
    4139        kentta.SetTileMethod(Color.DarkGray, luoOhutPalikka); 
    4240        kentta.SetTileMethod(Color.Black, luoPaksuPalikka); 
     41        kentta.SetTileMethod(Color.Blue, luoTikkaat); 
     42        kentta.SetTileMethod(Color.White, luoMaali); 
    4343        kentta.Execute(60, 60); 
    4444 
     
    5050    void luoPelaaja(Vector paikka, double leveys, double korkeus) 
    5151    { 
    52         pelaaja = new PhysicsObject(40, 70); 
     52        pelaaja = new PlatformCharacter(40, 70); 
    5353        pelaaja.Position = paikka; 
    5454        pelaaja.Color = Color.YellowGreen; 
     55        pelaaja.CanRotate = false; 
    5556        Add(pelaaja); 
    5657    } 
     
    5859    void luoPaksuPalikka(Vector paikka, double leveys, double korkeus) 
    5960    { 
    60         paksuPalikka = PhysicsObject.CreateStaticObject(60, 60); 
     61        PhysicsObject paksuPalikka = PhysicsObject.CreateStaticObject(60, 60); 
    6162        paksuPalikka.Position = paikka; 
    6263        paksuPalikka.Color = Color.Black; 
     
    6667    void luoOhutPalikka(Vector paikka, double leveys, double korkeus) 
    6768    { 
    68         ohutPalikka = PhysicsObject.CreateStaticObject(60, 10); 
     69        PhysicsObject ohutPalikka = PhysicsObject.CreateStaticObject(60, 10); 
    6970        ohutPalikka.Position = paikka; 
    7071        ohutPalikka.Color = Color.DarkGray; 
     
    7475    void luoPiikki(Vector paikka, double leveys, double korkeus) 
    7576    { 
    76         piikit = PhysicsObject.CreateStaticObject(60, 60); 
     77        PhysicsObject piikit = PhysicsObject.CreateStaticObject(60, 60); 
    7778        piikit.Position = paikka; 
    7879        piikit.Color = Color.Red; 
     
    8182    void luoKerailyEsine(Vector paikka, double leveys, double korkeus) 
    8283    { 
    83         kerailyEsine = PhysicsObject.CreateStaticObject(60, 60); 
     84        PhysicsObject kerailyEsine = PhysicsObject.CreateStaticObject(60, 60); 
    8485        kerailyEsine.Position = paikka; 
    8586        kerailyEsine.Color = Color.Gold; 
     
    8788    } 
    8889 
    89     void liikutaPelaajaa(Vector suunta) 
     90    void luoMaali(Vector paikka, double leveys, double korkeus) 
    9091    { 
    91         pelaaja.Hit(suunta); 
     92        PhysicsObject maali = PhysicsObject.CreateStaticObject(60, 60); 
     93        maali.Position = paikka; 
     94        maali.Color = Color.White; 
     95        Add(maali); 
     96 
     97    } 
     98 
     99    void luoTikkaat(Vector paikka, double leveys, double korkeus) 
     100    { 
     101        PhysicsObject tikkaat = PhysicsObject.CreateStaticObject(60, 4 * 60); 
     102        tikkaat.IgnoresCollisionResponse = true; 
     103        tikkaat.Position = paikka; 
     104        tikkaat.Bottom = paikka.Y - korkeus / 2; 
     105        tikkaat.Tag = "tikas"; 
     106        tikkaat.Color = Color.Blue; 
     107        Add(tikkaat, -1); 
     108    } 
     109 
     110    void liikutaPelaajaa(double suunta) 
     111    { 
     112        pelaaja.Walk(suunta); 
     113    } 
     114    void pelaajaHyppaa(double nopeus) 
     115    { 
     116        pelaaja.Jump(nopeus); 
     117    } 
     118 
     119    void kiipea() 
     120    { 
     121        List<GameObject> tikkaat = GetObjectsWithTag("tikas"); 
     122        bool voiKiiveta = false; 
     123 
     124        foreach (var tikas in tikkaat) 
     125        { 
     126            if (Vector.Distance(pelaaja.Position, new Vector(tikas.X, tikas.Bottom + 30)) < 30) 
     127            { 
     128                voiKiiveta = true; 
     129                break; 
     130            } 
     131        } 
     132 
     133        if (!voiKiiveta) 
     134            return; 
     135 
     136        GameObject kiipeilija = new GameObject(pelaaja.Width, pelaaja.Height); 
     137        kiipeilija.Color = pelaaja.Color; 
     138        kiipeilija.Position = pelaaja.Position; 
     139        Add(kiipeilija, 1); 
     140 
     141        Camera.Follow(kiipeilija); 
     142 
     143        pelaaja.IsVisible = false; 
     144 
     145        kiipeilija.MoveTo(pelaaja.Position + new Vector(0, 4*60), 300, delegate 
     146        { 
     147            pelaaja.Position = kiipeilija.Position; 
     148            pelaaja.IsVisible = true; 
     149            kiipeilija.Destroy(); 
     150            Camera.Follow(pelaaja); 
     151        }); 
    92152    } 
    93153} 
Note: See TracChangeset for help on using the changeset viewer.