Ignore:
Timestamp:
2015-07-21 10:23:23 (4 years ago)
Author:
jupipana
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • 2015/30/OonaH/Aurinkomyrsky/Aurinkomyrsky/Aurinkomyrsky/Aurinkomyrsky.cs

    r6815 r6829  
    1010{ 
    1111    const double nopeus = 200; 
    12     const double hyppyNopeus = 750; 
    1312    const int RUUDUN_KOKO = 40; 
    1413 
    1514    PlatformCharacter pelaaja1; 
    1615 
    17     Image pelaajanKuva = LoadImage("norsu"); 
     16    Image pelaajanKuva = LoadImage("alus"); 
    1817    Image tahtiKuva = LoadImage("tahti"); 
     18    Image avaruus = LoadImage("avaruus"); 
     19 
     20    Vector nopeusYlos = new Vector(0, 300); 
     21    Vector nopeusVasen = new Vector(-300, 0); 
     22    Vector nopeusOikea = new Vector(300, 0); 
     23    Vector nopeusAlas = new Vector(-300, 0); 
    1924 
    2025    SoundEffect maaliAani = LoadSoundEffect("maali"); 
     
    2227    public override void Begin() 
    2328    { 
    24         Gravity = new Vector(0, -1000); 
    25  
    2629        LuoKentta(); 
    2730        LisaaNappaimet(); 
     
    3740        kentta.SetTileMethod('#', LisaaTaso); 
    3841        kentta.SetTileMethod('*', LisaaTahti); 
    39         kentta.SetTileMethod('N', LisaaPelaaja); 
     42        kentta.SetTileMethod('A', LisaaPelaaja); 
    4043        kentta.Execute(RUUDUN_KOKO, RUUDUN_KOKO); 
    4144        Level.CreateBorders(); 
    42         Level.Background.CreateGradient(Color.White, Color.SkyBlue); 
     45        Level.Background.Image = avaruus; 
    4346    } 
    4447 
     
    4750        PhysicsObject taso = PhysicsObject.CreateStaticObject(leveys, korkeus); 
    4851        taso.Position = paikka; 
    49         taso.Color = Color.Green; 
     52        taso.Color = Color.Brown; 
    5053        Add(taso); 
    5154    } 
     
    6770        pelaaja1.Mass = 4.0; 
    6871        pelaaja1.Image = pelaajanKuva; 
     72        pelaaja1.Push(new Vector(100,0)); 
     73        pelaaja1.LinearDamping = 0.95; 
    6974        AddCollisionHandler(pelaaja1, "tahti", TormaaTahteen); 
    7075        Add(pelaaja1); 
     
    7681        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 
    7782 
    78         Keyboard.Listen(Key.Left, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, -nopeus); 
    79         Keyboard.Listen(Key.Right, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, nopeus); 
    80         Keyboard.Listen(Key.Up, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja1, hyppyNopeus); 
    81  
    82         ControllerOne.Listen(Button.Back, ButtonState.Pressed, Exit, "Poistu pelistä"); 
    83  
    84         ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, Liikuta, "Pelaaja liikkuu vasemmalle", pelaaja1, -nopeus); 
    85         ControllerOne.Listen(Button.DPadRight, ButtonState.Down, Liikuta, "Pelaaja liikkuu oikealle", pelaaja1, nopeus); 
    86         ControllerOne.Listen(Button.A, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja1, hyppyNopeus); 
    87  
    88         PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); 
     83        Keyboard.Listen(Key.Left, ButtonState.Down, AsetaNopeus, "Liikkuu vasemmalle", pelaaja1, nopeusVasen); 
     84        Keyboard.Listen(Key.Right, ButtonState.Down, AsetaNopeus, "Liikkuu vasemmalle", pelaaja1, nopeusOikea); 
     85        Keyboard.Listen(Key.Up, ButtonState.Down, AsetaNopeus, "Liikkuu ylös", pelaaja1, nopeusYlos); 
     86        Keyboard.Listen(Key.Down, ButtonState.Down, AsetaNopeus, "Liikkuu alas", pelaaja1, nopeusAlas); 
    8987    } 
    9088 
    9189    void Liikuta(PlatformCharacter hahmo, double nopeus) 
    9290    { 
    93         hahmo.Walk(nopeus); 
     91        //hahmo.Walk(nopeus); 
    9492    } 
    9593 
    96     void Hyppaa(PlatformCharacter hahmo, double nopeus) 
     94    void AsetaNopeus(PhysicsObject alus, Vector nopeus) 
    9795    { 
    98         hahmo.Jump(nopeus); 
     96        if ((nopeus.Y > 0) && (alus.Top > Level.Top)) 
     97        { 
     98            alus.Velocity = Vector.Zero; 
     99            return; 
     100        } 
     101 
     102        if ((nopeus.Y < 0) && (alus.Bottom < Level.Bottom)) 
     103        { 
     104            alus.Velocity = Vector.Zero; 
     105            return; 
     106        } 
     107        alus.Velocity = nopeus; 
    99108    } 
    100109 
Note: See TracChangeset for help on using the changeset viewer.