Changeset 2866 for 2012/23


Ignore:
Timestamp:
2012-06-08 10:50:53 (7 years ago)
Author:
juiitamm
Message:
 
Location:
2012/23/AkuK/FysiikkaPeli1/FysiikkaPeli1
Files:
2 added
6 edited

Legend:

Unmodified
Added
Removed
  • 2012/23/AkuK/FysiikkaPeli1/FysiikkaPeli1/FysiikkaPeli1/FysiikkaPeli1.cs

    r2801 r2866  
    99public class FysiikkaPeli1 : PhysicsGame 
    1010{ 
     11 
     12 
     13 
     14 
     15 
    1116    Image ihmisenkuva = LoadImage("suunnistaja"); 
    1217    Image tahti = LoadImage("fuel box"); 
    1318    PhysicsObject pelaaja; 
    14  
     19    DoubleMeter alaspainLaskuri; 
     20    Timer aikaLaskuri; 
     21    IntMeter pisteLaskuri; 
     22    IntMeter hplaskuri; 
    1523    public override void Begin() 
    1624    { 
     25        MessageDisplay.Add("Kerää kaikki laatikot ja palaa alukseen ennen kuin aika loppuu!"); 
    1726        LuoAikaLaskuri(); 
    18          
     27        LuoLaskuri(); 
     28        MultiSelectWindow valikko = new MultiSelectWindow("Alien Trouble", 
     29"Start Game", "Top Score", "Exit"); 
     30        valikko.ItemSelected += PainettiinValikonNappia; 
     31        Add(valikko); 
     32        valikko.Color = Color.LimeGreen; 
     33 
    1934        // TODO: Kirjoita ohjelmakoodisi tähän 
    20         PhysicsObject puu = new PhysicsObject(100, 100); 
     35        PhysicsObject puu = PhysicsObject.CreateStaticObject(100, 100); 
    2136        puu.Color = Color.Green; 
    2237        puu.Shape = Shape.Circle; 
    2338        Add(puu); 
    24         Level.BackgroundColor = Color.DarkGreen; 
     39 
     40        Level.BackgroundColor = new Color(65, 100, 18); 
    2541        TileMap ruudut = TileMap.FromLevelAsset("forest"); 
    2642        ruudut.SetTileMethod('=', LuoPalikka); 
    2743        ruudut.SetTileMethod('l', LuoPelaaja); 
    2844        ruudut.SetTileMethod('c', LuoTahti); 
    29         
    30  ruudut.Execute(20, 20); 
    31  Keyboard.Listen(Key.Left, ButtonState.Down, 
    32     LiikutaPelaajaa, null, new Vector(-1000, 0)); 
     45        ruudut.SetTileMethod('p', Luopuu); 
     46        ruudut.SetTileMethod('s', LuoSuunnistaja); 
     47        ruudut.SetTileMethod('a', Luoalus); 
     48        ruudut.Execute(20, 20); 
     49        Keyboard.Listen(Key.Left, ButtonState.Down, 
     50           LiikutaPelaajaa, null, new Vector(-2000, 0)); 
    3351        Keyboard.Listen(Key.Right, ButtonState.Down, 
    34           LiikutaPelaajaa, null, new Vector(1000, 0)); 
     52          LiikutaPelaajaa, null, new Vector(2000, 0)); 
    3553        Keyboard.Listen(Key.Up, ButtonState.Down, 
    36           LiikutaPelaajaa, null, new Vector(0, 1000)); 
     54          LiikutaPelaajaa, null, new Vector(0, 2000)); 
    3755        Keyboard.Listen(Key.Down, ButtonState.Down, 
    38           LiikutaPelaajaa, null, new Vector(0, -1000)); 
    39  
    40  
    41         PhysicsObject puu2 = new PhysicsObject(50, 50); 
    42         puu2.Color = Color.ForestGreen; 
    43  
    44         puu2.Shape = Shape.Circle; 
    45         Add(puu2); 
     56          LiikutaPelaajaa, null, new Vector(0, -2000)); 
     57 
     58        Keyboard.Listen(Key.Left, ButtonState.Released, 
     59           PysäytäPelaaja, null); 
     60        Keyboard.Listen(Key.Right, ButtonState.Released, 
     61          PysäytäPelaaja, null); 
     62        Keyboard.Listen(Key.Up, ButtonState.Released, 
     63          PysäytäPelaaja, null); 
     64        Keyboard.Listen(Key.Down, ButtonState.Released, 
     65          PysäytäPelaaja, null); 
     66 
     67 
    4668 
    4769        Camera.Follow(pelaaja); 
     
    5072        PhysicsObject suunnistaja = new PhysicsObject(100, 100); 
    5173        suunnistaja.X = 100; 
    52         Add(suunnistaja); 
    53         suunnistaja.Image = ihmisenkuva; 
    54  
     74 
     75        pelaaja.Image = LoadImage("Alien"); 
     76        pelaaja.Mass = 3; 
    5577    } 
    5678    void LuoPalikka(Vector paikka, double leveys, double korkeus) 
     
    6587    void LuoTahti(Vector paikka, double leveys, double korkeus) 
    6688    { 
    67         PhysicsObject tahti = new PhysicsObject(5, 5); 
     89        PhysicsObject tahti = new PhysicsObject(30, 30); 
    6890        tahti.Position = paikka; 
    6991        tahti.Mass = 0.005; 
    7092        tahti.Shape = Shape.Circle; 
    7193        tahti.Restitution = 1.0; 
    72  
    73         AddCollisionHandler(tahti, Keraa); 
     94        tahti.Tag = "tahti"; 
     95        tahti.Image = LoadImage("fuel box"); 
    7496        Add(tahti, 1); 
    7597    } 
    7698    void Keraa(PhysicsObject tormaaja, PhysicsObject kohde) 
    7799    { 
    78  
    79  
    80     } 
    81     DoubleMeter alaspainLaskuri; 
    82     Timer aikaLaskuri; 
     100        kohde.Destroy(); 
     101        pisteLaskuri.Value++; 
     102        MessageDisplay.Add("Keräsit Öljyä!!"); 
     103    } 
     104 
    83105 
    84106    void LuoAikaLaskuri() 
    85107    { 
    86         alaspainLaskuri = new DoubleMeter(300); 
     108        alaspainLaskuri = new DoubleMeter(120); 
    87109 
    88110        aikaLaskuri = new Timer(); 
     
    90112        aikaLaskuri.Timeout += LaskeAlaspain; 
    91113        aikaLaskuri.Start(); 
     114 
    92115 
    93116        Label aikaNaytto = new Label(); 
     
    96119        aikaNaytto.BindTo(alaspainLaskuri); 
    97120        Add(aikaNaytto); 
     121        aikaNaytto.Left = Screen.Left; 
    98122    } 
    99123 
     
    104128        if (alaspainLaskuri.Value <= 0) 
    105129        { 
    106             MessageDisplay.Add("Aika loppui..."); 
     130            MessageDisplay.Add("HÄVISIT! FAIL!!!"); 
    107131            aikaLaskuri.Stop(); 
    108  
     132            pelaaja.Destroy(); 
    109133            // täydennä mitä tapahtuu, kun aika loppuu 
    110         } 
     134            Timer.SingleShot(2.0, delegate { Exit(); }); 
     135        }  
    111136    } 
    112137 
    113138    void LuoPelaaja(Vector paikka, double leveys, double korkeus) 
    114139    { 
    115         pelaaja = new PhysicsObject(10, 10); 
     140        pelaaja = new PhysicsObject(50, 50); 
    116141        pelaaja.Position = paikka; 
    117142        pelaaja.Mass = 10; 
    118  
    119         AddCollisionHandler(pelaaja, OsuiMaaliin); 
     143        AddCollisionHandler(pelaaja, "lautanen", voittaa); 
     144        AddCollisionHandler(pelaaja, "tahti", Keraa); 
    120145        Add(pelaaja); 
    121     } 
     146        AddCollisionHandler(pelaaja, "nakokentta", satuttaa); 
     147 
     148    } 
     149 
    122150    void OsuiMaaliin(PhysicsObject tormaaja, PhysicsObject kohde) 
    123151    { 
    124152    } 
    125 void LiikutaPelaajaa(Vector vektori) 
    126 { 
    127   pelaaja.Push(vektori); 
     153 
     154    void LiikutaPelaajaa(Vector vektori) 
     155    { 
     156        pelaaja.Push(vektori); 
     157    } 
     158 
     159    void Luopuu(Vector paikka, double leveys, double korkeus) 
     160    { 
     161        PhysicsObject puu2 = new PhysicsObject(50, 50); 
     162        puu2.Color = Color.ForestGreen; 
     163        puu2.Position = paikka; 
     164        puu2.Shape = Shape.Circle; 
     165        Add(puu2); 
     166        PhysicsObject puu = PhysicsObject.CreateStaticObject(100, 100); 
     167        puu.Color = Color.Green; 
     168        puu.Shape = Shape.Circle; 
     169        Add(puu); 
     170        puu.Position = paikka; 
     171    } 
     172 
     173    void PysäytäPelaaja() 
     174    { 
     175        pelaaja.Stop(); 
     176    } 
     177 
     178 
     179    void LuoLaskuri() 
     180    { 
     181        pisteLaskuri = new IntMeter(0); 
     182        hplaskuri = new IntMeter(5); 
     183        Label pisteNaytto = new Label(); 
     184        pisteNaytto.X = Screen.Left + 100; 
     185        pisteNaytto.Y = Screen.Top - 100; 
     186        pisteNaytto.TextColor = Color.Red; 
     187        Label hpnaytto = new Label(); 
     188        hpnaytto.X = Screen.Right - 100; 
     189        hpnaytto.Y = Screen.Top - 100; 
     190        hpnaytto.BindTo(hplaskuri); 
     191        pisteNaytto.BindTo(pisteLaskuri); 
     192 
     193        Add(pisteNaytto); 
     194        Add(hpnaytto); 
     195    } 
     196 
     197 
     198    void LuoSuunnistaja(Vector paikka, double leveys, double korkeus) 
     199    { 
     200        PhysicsObject suunnistaja = PhysicsObject.CreateStaticObject(100, 100); 
     201 
     202        Add(suunnistaja); 
     203 
     204        suunnistaja.Image = ihmisenkuva; 
     205        PhysicsObject nakokentta = new PhysicsObject(400, 400); 
     206        nakokentta.Shape = Shape.Circle; 
     207        nakokentta.IgnoresCollisionResponse = true; 
     208        Add(nakokentta); 
     209        suunnistaja.Position = paikka; 
     210        nakokentta.Position = paikka; 
     211        RandomMoverBrain satunnaisAivot = new RandomMoverBrain(); 
     212        satunnaisAivot.Active = true; 
     213        nakokentta.Brain = satunnaisAivot; 
     214        satunnaisAivot.ChangeMovementSeconds = 10; 
     215        satunnaisAivot.Speed = 500; 
     216        nakokentta.Tag = "nakokentta"; 
     217 
     218 
     219    } 
     220    void satuttaa(PhysicsObject pelaaja, PhysicsObject kohde) 
     221    { 
     222        hplaskuri.Value--; 
     223        if (hplaskuri.Value <= 0) 
     224        { 
     225            pelaaja.Destroy(); 
     226            Timer.SingleShot(2.0, delegate { Exit(); }); 
     227        } 
     228        MessageDisplay.Add("Varo valoa!!"); 
     229        
     230 
     231 
     232 
     233    } 
     234    void PainettiinValikonNappia(int valinta) 
     235    { 
     236        switch (valinta) 
     237        { 
     238            case 0: 
     239                // AloitaPeli(); 
     240                break; 
     241            case 1: 
     242                // ParhaatPisteet(); 
     243                break; 
     244            case 2: 
     245                Exit(); 
     246                break; 
     247 
     248 
     249        } 
     250 
     251    } 
     252    void Luoalus(Vector paikka, double leveys, double korkeus) 
     253    { 
     254 
     255        PhysicsObject lautanen = PhysicsObject.CreateStaticObject(100, 100); 
     256        lautanen.Shape = Shape.Circle; 
     257        lautanen.Position = paikka; 
     258        lautanen.Tag = "lautanen"; 
     259        lautanen.Image = LoadImage("alus"); 
     260        Add(lautanen); 
     261 
     262    } 
     263 
     264 
     265    void voittaa(PhysicsObject pelaaja, PhysicsObject lautanen) 
     266    { 
     267        if (pisteLaskuri.Value == 21) 
     268        { 
     269            MessageDisplay.Add("Voitit pelin Onneksi olkoon!!!!"); 
     270            Timer.SingleShot(2.0, delegate { Exit(); }); 
     271            pelaaja.Destroy(); 
     272        } 
     273 
     274    } 
    128275} 
    129 } 
     276 
     277 
     278 
     279 
     280 
     281 
     282 
  • 2012/23/AkuK/FysiikkaPeli1/FysiikkaPeli1/FysiikkaPeli1Content/Forest.txt

    r2801 r2866  
    1 ================================================================================================================                                                                                 
    2 =l                                                             =                      =  c                      = 
    3 =                                                             =                      =            =            = 
    4 =                                                             =   c                  =            ==============         
    5 =                                                             =                      =            = 
    6 =                                                             =                      =            = 
    7 =                                                             =                      =            = 
    8 =                                                             =                      =            = 
    9 =                                                             =                      =            = 
    10 =                                                             =                      =            = 
    11 =                                                             =                      =            = 
    12 =                                                             =                      =            = 
    13 =                                                             =                      =            = 
    14 =                                                             =                      =            = 
    15 ===================xxx=======================     =====================     =========            = 
    16 =                                                  =                                 =            = 
    17 =                                                  =                                 =            = 
    18 =                                                  =                                 =            = 
    19 =                                                  =                                 =            = 
    20 =                                                  =                                 =            = 
    21 =                                                  =                                 =            = 
    22 =                                                  =                                 =            = 
    23 =                                                  =                                 =            = 
    24 =                                                  =                                 =            = 
    25 =                                                  =                                 =            = 
    26 =                                                  =                                              = 
    27 =                                                  =                                              = 
    28 =                                                  =                                              = 
    29 =                                                  =                                              = 
    30 =                                                                                                 = 
    31 =                                                                                                 = 
    32 =                                                                                                 = 
    33 =                                                  =                                              = 
    34 =                                                  =                                              = 
    35 =                                                  =                                              = 
    36 =                                                  =                          vvvvvvv             = 
    37 =                                                  =                                              = 
    38 =           c                                      =                                              = 
    39 ================================================================================================== 
     1=================================================================================================================================================================================================================================== 
     2=                            s                               =                      =                                                                                                      =       c                              = 
     3=                                                 c          =                      =                                                              c                                       =                                c     = 
     4=                                                            =                      = p                                                                                                    =                                      = 
     5=                                     p                      =   c                  =                                                                                                      =                                      = 
     6=                                                            =                      =                                 c                                                                    =                                      = 
     7=  c                                                         =                      =                                                                                                      =                                      = 
     8=                                                            =                      =            =============================================                                             =                                      = 
     9=                                                            =                      =            =   c                       c               =                                             =                                      = 
     10=                                                            =                      =            =                                           =                                             =                                      = 
     11=                                                            =                      =        p   =                                           =                                             =                                      = 
     12=                           p                                =                      =            =             l                             =                                             =                  c                   = 
     13=                                                            =                      =            =                                 a         =                                             =                                      = 
     14=                                      c                     =  p                   =            =                                           =                                                                                c  = 
     15=                                                            =                      =            =                                           =                                                                                   = 
     16==========================================        ==============            =========            =                                           =                                                                                   = 
     17=                          c                      = c                               =            =                                           =                                                                                   = 
     18=                                                 =                                 =            =                                           =                                                                                   = 
     19=                                                 =                                 =            =                                           =                     s                                                             = 
     20=                                                 =                                 =            =                                           =                                                                                   = 
     21=                                                 =              p                  =            =                                           =                                                                                   = 
     22=                                                 =                                 =            =                                           =                                                                                   = 
     23=                                                 =                                 =            =                                           =                                                                                   = 
     24=                                                 =                                 =            =                                           =                                                                                   = 
     25=    s                                            =                                 =                                         c              =                                                                                   = 
     26=                                                 =                                 =                                                        =                                                                                   = 
     27=                  p                              =                                                                                          =                                                                      s            = 
     28=                                                 =                                                                                          =                                                                                   = 
     29=                                                 =                                                                                          =                                                                                   = 
     30=                                                 =                                                                                          =                                                                                   = 
     31=                                                 =                                             c                                            =                                                                                   = 
     32=                                                                                                                                            =                                               c                                   = 
     33=                                                                                                                                            =                                                                                   = 
     34=                                                                                                                                            =                                                                                   = 
     35=                                                                                                                                            =                                                                                   = 
     36=                                                                                                                                           =                                                                                   = 
     37=                                                                                                                                            =                                                                                    = 
     38=                                                 =                                                                                          =                                                                                    = 
     39=                                                 =                                                                                     c    =                                                                                    = 
     40=          c                                      =                                             c                                            =      c                                                                             = 
     41=                                                                                                                                            =                                                                                    = 
     42=================================================================================================================================================================================================================================== 
  • 2012/23/AkuK/FysiikkaPeli1/FysiikkaPeli1/FysiikkaPeli1Content/FysiikkaPeli1Content.contentproj

    r2801 r2866  
    5656      <Importer>TextFileImporter</Importer> 
    5757      <Processor>TextFileContentProcessor</Processor> 
     58      <CopyToOutputDirectory>Always</CopyToOutputDirectory> 
    5859    </Compile> 
    5960  </ItemGroup> 
     
    7273    </Compile> 
    7374  </ItemGroup> 
     75  <ItemGroup> 
     76    <Compile Include="alus.png"> 
     77      <Name>alus</Name> 
     78      <Importer>TextureImporter</Importer> 
     79      <Processor>TextureProcessor</Processor> 
     80    </Compile> 
     81  </ItemGroup> 
    7482  <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 
    7583  <!--  To modify your build process, add your task inside one of the targets below and uncomment it.  
Note: See TracChangeset for help on using the changeset viewer.