Ignore:
Timestamp:
2014-07-24 11:12:48 (6 years ago)
Author:
oomahutt
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • 2014/30/OonaH/GoldenMaknae2/GoldenMaknae2/GoldenMaknae2/GoldenMaknae2.cs

    r5590 r5618  
    99public class GoldenMaknae2 : PhysicsGame 
    1010{ 
     11 
     12    #region Olioiden nimeaminen 
    1113    PhysicsObject Kookie; 
    12     PhysicsObject Reuna; 
     14    PhysicsObject reuna; 
    1315    PhysicsObject tavarat; 
    14  
     16    #endregion 
    1517    IntMeter pisteLaskuri; 
    16  
     18    #region kuvien lataaminen 
    1719    Image KookieKuva = LoadImage("Kookie"); 
    1820    Image LetterKuva = LoadImage("Letter"); 
    1921    Image RapmonKuva = LoadImage("Rapmon"); 
    20  
    21  
     22    #endregion 
     23    #region nopeudet 
    2224    Vector nopeusOikealle = new Vector(300, 0); 
    2325    Vector nopeusVasemmalle = new Vector(-300, 0); 
    24  
     26    #endregion 
    2527 
    2628    public override void Begin() 
     
    2931        LuoKentta(); 
    3032        LuoPisteLaskuri(); 
    31         LuoKookie(); 
    3233        AsetaOhjaimet(); 
    3334    } 
     
    4243    } 
    4344 
     45    #region Kentan luomista 
    4446    void LuoKentta() 
    4547    { 
    4648        SetWindowSize(600,800); 
    4749        Level.Size = new Vector(600, 800); 
    48         Reuna = PhysicsObject.CreateStaticObject(580, 20, Shape.Rectangle); 
    49         Reuna.Position = new Vector(0, Level.Bottom); 
    50         Reuna.IsVisible = true; 
    51         Add(Reuna); 
     50 
     51        TileMap alaReuna = TileMap.FromLevelAsset("Kentta"); 
     52        alaReuna.SetTileMethod('#', LuoReunaa); 
     53        alaReuna.SetTileMethod('-', LuoKookie); 
     54        alaReuna.Execute(20.0,20.0); 
     55        Camera.ZoomToLevel(); 
     56 
     57 
     58        IsMouseVisible = true; 
    5259 
    5360        PhysicsObject oikeaReuna = Level.CreateRightBorder(); 
     
    5663        PhysicsObject vasenReuna = Level.CreateLeftBorder(); 
    5764        vasenReuna.Restitution = 1.0; 
    58  
    59         AddCollisionHandler(Reuna, "Hyung", Osuma); 
    60         AddCollisionHandler(Reuna, "Letter", KirjeenOsuma); 
    61         Level.CreateBorders(); 
    62  
    63          
    64  
    65     } 
    66  
     65    } 
     66 
     67    void LuoReunaa(Vector paikka, double leveys, double korkeus) 
     68    { 
     69        reuna = PhysicsObject.CreateStaticObject(leveys, korkeus); 
     70        reuna.Position = paikka; 
     71        reuna.Color = Color.Salmon; 
     72        reuna.Tag = "reuna"; 
     73        reuna.CollisionIgnoreGroup = 1; 
     74        Add(reuna); 
     75    } 
     76 
     77    void LuoKookie(Vector paikka, double leveys, double korkeus) 
     78    { 
     79        //Kookie = new PlatFormCharacter(10,10); 
     80        //Kookie.Position = paikka; 
     81        //AddCollisionHandler(Kookie, "Letter", PisteidenSaanti); 
     82        //Add(Kookie); 
     83 
     84 
     85        Kookie = PhysicsObject.CreateStaticObject(50.0, 50.0); 
     86        //Kookie.X = 0.0; 
     87        //Kookie.Y = Level.Bottom + 30; 
     88        Kookie.Position = paikka; 
     89        Kookie.Image = KookieKuva; 
     90        Kookie.Restitution = 1.0; 
     91        AddCollisionHandler(tavarat, "reuna", Osuma); 
     92 
     93        Add(Kookie); 
     94    } 
     95 
     96    #endregion 
     97 
     98    #region Luo Hahmoja 
    6799    void LuoHahmot() 
    68100    { 
     
    79111    } 
    80112 
    81     void AsetaOhjaimet() 
    82     { 
    83         Keyboard.Listen(Key.Right, ButtonState.Down, AsetaNopeus, "Oikealle.", Kookie, nopeusOikealle); 
    84         Keyboard.Listen(Key.Right, ButtonState.Released, AsetaNopeus, null, Kookie, Vector.Zero); 
    85  
    86         Keyboard.Listen(Key.Left, ButtonState.Down, AsetaNopeus, "Vasemmalle.", Kookie, nopeusVasemmalle); 
    87         Keyboard.Listen(Key.Left, ButtonState.Released, AsetaNopeus, null, Kookie, Vector.Zero); 
    88  
    89         Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 
    90     } 
    91  
    92     void AsetaNopeus(PhysicsObject hahmo, Vector nopeus) 
    93     { 
    94         if ((nopeus.X > 0) && (hahmo.Right > Level.Right)) 
    95         { 
    96             hahmo.Velocity = Vector.Zero; 
    97             return; 
    98         } 
    99  
    100         if ((nopeus.X < 0) && (hahmo.Left < Level.Left)) 
    101         { 
    102             hahmo.Velocity = Vector.Zero; 
    103             return; 
    104         } 
    105  
    106         hahmo.Velocity = nopeus; 
    107     } 
    108  
    109     void LuoKookie() 
    110     { 
    111         Kookie = PhysicsObject.CreateStaticObject(50.0, 50.0); 
    112         Kookie.X = 0.0; 
    113         Kookie.Y = Level.Bottom + 30; 
    114         Kookie.Image = KookieKuva; 
    115         Kookie.Restitution = 1.0; 
    116  
    117         Add(Kookie); 
    118  
    119         AddCollisionHandler(Kookie, "Hyung", Kuolema); 
    120         AddCollisionHandler(Kookie, "Letter", PisteidenSaanti); 
    121     } 
    122  
    123     void Osuma(PhysicsObject Reuna, PhysicsObject osuneetEsineet) 
    124     { 
    125         osuneetEsineet.Destroy(); 
    126  
    127     } 
    128  
    129     void KirjeenOsuma(PhysicsObject Reuna, PhysicsObject osuneetEsineet) 
    130     { 
    131         osuneetEsineet.Destroy(); 
    132         pisteLaskuri.Value -= 10; 
    133     } 
    134  
    135113    void LuoHahmoja(int maara, Image Kuva, string tag) 
    136114    { 
     
    138116        while (i < maara) 
    139117        { 
    140             double x = RandomGen.NextDouble(Level.Left + 10, Level.Right -10); 
     118            double x = RandomGen.NextDouble(Level.Left + 10, Level.Right - 10); 
    141119            tavarat = LuoTavarat(x, Level.Top - 20, 20.0, RapmonKuva); 
    142120            tavarat.Tag = tag; 
    143121            tavarat.Image = Kuva; 
    144122            tavarat.Velocity = new Vector(0, -200); 
     123            tavarat.CollisionIgnoreGroup = 1; 
    145124            Add(tavarat); 
    146125            i++; 
     
    155134    } 
    156135 
     136    #endregion 
     137 
     138    void AsetaOhjaimet() 
     139    { 
     140        Keyboard.Listen(Key.Right, ButtonState.Down, AsetaNopeus, "Oikealle.", Kookie, nopeusOikealle); 
     141        Keyboard.Listen(Key.Right, ButtonState.Released, AsetaNopeus, null, Kookie, Vector.Zero); 
     142 
     143        Keyboard.Listen(Key.Left, ButtonState.Down, AsetaNopeus, "Vasemmalle.", Kookie, nopeusVasemmalle); 
     144        Keyboard.Listen(Key.Left, ButtonState.Released, AsetaNopeus, null, Kookie, Vector.Zero); 
     145 
     146        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 
     147    } 
     148 
     149    void AsetaNopeus(PhysicsObject hahmo, Vector nopeus) 
     150    { 
     151        if ((nopeus.X > 0) && (hahmo.Right > Level.Right)) 
     152        { 
     153            hahmo.Velocity = Vector.Zero; 
     154            return; 
     155        } 
     156 
     157        if ((nopeus.X < 0) && (hahmo.Left < Level.Left)) 
     158        { 
     159            hahmo.Velocity = Vector.Zero; 
     160            return; 
     161        } 
     162 
     163        hahmo.Velocity = nopeus; 
     164    } 
     165 
     166 
     167    #region osumia 
     168 
     169    void Osuma(PhysicsObject Reuna, PhysicsObject osuneetEsineet) 
     170    { 
     171        osuneetEsineet.Destroy(); 
     172 
     173    } 
     174 
     175    void KirjeenOsuma(PhysicsObject Reuna, PhysicsObject osuneetEsineet) 
     176    { 
     177        osuneetEsineet.Destroy(); 
     178        pisteLaskuri.Value -= 10; 
     179    } 
     180 
    157181    void Kuolema(PhysicsObject Kookie, PhysicsObject kohde) 
    158182    { 
     
    166190        pisteLaskuri.Value = pisteLaskuri.Value + 10; 
    167191    } 
     192    #endregion 
     193 
     194     
    168195 
    169196    void LuoPisteLaskuri() 
Note: See TracChangeset for help on using the changeset viewer.