Changeset 5304 for 2014/27/OttoR


Ignore:
Timestamp:
2014-07-02 15:04:12 (5 years ago)
Author:
otrolig
Message:
 
Location:
2014/27/OttoR/GrazyGunFighters
Files:
4 added
1 deleted
12 edited

Legend:

Unmodified
Added
Removed
  • 2014/27/OttoR/GrazyGunFighters/GrazyGunFighters/GrazyGunFighters/GrazyGunFighters.cs

    r5283 r5304  
    1010public class GrazyGunFighters : PhysicsGame 
    1111{ 
    12      
     12 
    1313    private Animation soltunkävely; 
    1414    private Animation soltunkävely2; 
    1515    private Animation seiso1; 
    1616    private Animation seiso2; 
    17   
     17 
     18    DoubleMeter elamaLaskuri; 
     19    DoubleMeter elamaLaskuri2; 
     20 
     21    IntMeter pisteLaskuri; 
     22    IntMeter pisteLaskuri2; 
     23 
    1824    const double nopeus = 147; 
    1925    const double hyppyNopeus = 720; 
     
    2733    AssaultRifle pelaajan2Ase; 
    2834 
     35     
    2936 
    3037    Image pelikuva = LoadImage("Solttu2"); 
    31     Image pelaajankuva = LoadImage("Solttu" ); 
    32     Image tahtiKuva = LoadImage("tahti"); 
     38    Image pelaajankuva = LoadImage("Solttu"); 
    3339    Image taustaKuva = LoadImage("taustakuva"); 
    3440    Image tasokuva = LoadImage("vesi"); 
    3541    Image atasokuva = LoadImage("lankku"); 
    36  
    37     
    38  
    39  
     42    Image btasokuva = LoadImage("metalli"); 
     43    Image putkipommi = LoadImage("putkipommi"); 
     44 
     45    Vector alkupaikka1; 
     46    Vector alkupaikka2; 
    4047 
    4148    public override void Begin() 
    4249    { 
     50        LuoAlkuvalikko(); 
     51    } 
     52 
     53    void aloitapeli1() 
     54    { 
    4355        MediaPlayer.Play("taustamusa"); 
    4456 
    45          
     57 
     58        LuoElamaLaskuri(); 
     59        LuoElamaLaskuri2(); 
    4660 
    4761        soltunkävely = LoadAnimation("Solttu1 animaatio"); 
     
    5468        LisaaNappaimet(); 
    5569 
    56          
     70        LuoPistelaskuri(); 
     71        LuoPistelaskuri2(); 
     72 
    5773        Camera.ZoomFactor = -30.0; 
    5874        Camera.StayInLevel = true; 
    5975    } 
    60     
     76 
     77    void LuoPistelaskuri() 
     78    { 
     79        pisteLaskuri = new IntMeter(0); 
     80 
     81        Label pisteNaytto = new Label(); 
     82        pisteNaytto.X = Screen.Left + 750; 
     83        pisteNaytto.Y = Screen.Top - 100; 
     84        pisteNaytto.TextColor = Color.White; 
     85        pisteNaytto.Color = Color.Blue; 
     86 
     87        pisteNaytto.BindTo(pisteLaskuri); 
     88        Add(pisteNaytto); 
     89    } 
     90 
     91    void LuoPistelaskuri2() 
     92    { 
     93        pisteLaskuri2 = new IntMeter(0); 
     94 
     95        Label pisteNaytto = new Label(); 
     96        pisteNaytto.X = Screen.Right - 750; 
     97        pisteNaytto.Y = Screen.Top - 100; 
     98        pisteNaytto.TextColor = Color.White; 
     99        pisteNaytto.Color = Color.Red; 
     100 
     101        pisteNaytto.BindTo(pisteLaskuri2); 
     102        Add(pisteNaytto); 
     103    } 
     104 
     105    void LuoElamaLaskuri() 
     106    { 
     107        elamaLaskuri = new DoubleMeter(100); 
     108        elamaLaskuri.MaxValue = 100; 
     109        elamaLaskuri.LowerLimit += ElamaLoppui; 
     110 
     111        ProgressBar elamaPalkki = new ProgressBar(500, 20); 
     112        elamaPalkki.X = Screen.Right - 350; 
     113        elamaPalkki.Y = Screen.Top - 1050; 
     114        elamaPalkki.BindTo(elamaLaskuri); 
     115 
     116        //Taustaväri: 
     117        elamaPalkki.Color = Color.Red; 
     118 
     119        //Palkin väri: 
     120        elamaPalkki.BarColor = Color.Green; 
     121 
     122        //Reunan väri: 
     123        elamaPalkki.BorderColor = Color.Black; 
     124 
     125 
     126        Add(elamaPalkki); 
     127    } 
     128 
     129    void ElamaLoppui2() 
     130    { 
     131        pisteLaskuri2.Value++; 
     132        pelaaja2.Position = alkupaikka2; 
     133        elamaLaskuri2.Value = 100; 
     134    } 
     135 
     136    void ElamaLoppui() 
     137    { 
     138        pisteLaskuri.Value++; 
     139         
     140        pelaaja1.Position = alkupaikka1; 
     141        elamaLaskuri.Value = 100; 
     142    } 
     143 
     144    void LuoElamaLaskuri2() 
     145    { 
     146        elamaLaskuri2 = new DoubleMeter(100); 
     147        elamaLaskuri2.MaxValue = 100; 
     148        elamaLaskuri2.LowerLimit += ElamaLoppui2; 
     149 
     150        ProgressBar elamaPalkki2 = new ProgressBar(500, 20); 
     151        elamaPalkki2.X = Screen.Left + 350; 
     152        elamaPalkki2.Y = Screen.Top - 1050; 
     153        elamaPalkki2.BindTo(elamaLaskuri2); 
     154 
     155        //Taustaväri: 
     156        elamaPalkki2.Color = Color.Red; 
     157 
     158        //Palkin väri: 
     159        elamaPalkki2.BarColor = Color.Green; 
     160 
     161        //Reunan väri: 
     162        elamaPalkki2.BorderColor = Color.Black; 
     163 
     164 
     165        Add(elamaPalkki2); 
     166    } 
    61167 
    62168    void HeitaKranaatti(PlatformCharacter pelaaja) 
    63169    { 
    64         Grenade kranu = new Grenade(8.0); 
     170        Grenade kranu = new Grenade(10.0); 
    65171        pelaaja.Throw(kranu, Angle.FromDegrees(40), 10500); 
    66172        kranu.Explosion.MaxRadius = 96; 
    67173        kranu.Explosion.AddShockwaveHandler("vihollinen", KranaattiOsui); 
    68         kranu.CollisionIgnoreGroup = 2; 
     174        kranu.CollisionIgnoreGroup = 1; 
     175        kranu.Image = putkipommi; 
     176    } 
     177 
     178    void Teevahinkoa(IPhysicsObject kohde, double määrä) 
     179    { 
     180        if (kohde == pelaaja1) 
     181        { 
     182            elamaLaskuri.Value -= määrä; 
     183        } 
     184        else 
     185        { 
     186            elamaLaskuri2.Value -= määrä; 
     187        } 
    69188    } 
    70189 
    71190    void KranaattiOsui(IPhysicsObject rajahdyksenKohde, Vector v) 
    72191    { 
    73         rajahdyksenKohde.Destroy(); 
    74     } 
    75  
    76      
     192        Teevahinkoa(rajahdyksenKohde, 30); 
     193    } 
     194 
     195    void RäjähdysOsui(IPhysicsObject rajahdyksenKohde, Vector v) 
     196    { 
     197        Teevahinkoa(rajahdyksenKohde, 15); 
     198    } 
     199 
     200 
    77201    void LuoKentta() 
    78202    { 
     
    87211        Level.CreateBorders(); 
    88212        Level.Background.CreateGradient(Color.White, Color.SkyBlue); 
    89         Level.Background.Image = taustaKuva; 
    90     } 
    91  
    92  
    93   
     213 
     214    } 
     215 
     216 
     217 
    94218 
    95219 
    96220    void LisaaTaso(Vector paikka, double leveys, double korkeus) 
    97221    { 
    98         PhysicsObject taso = PhysicsObject.CreateStaticObject(leveys,korkeus); 
     222        PhysicsObject taso = PhysicsObject.CreateStaticObject(leveys, korkeus); 
    99223        taso.Position = paikka; 
    100224        taso.Size = new Vector(40, 40); 
     
    112236        taso3.Color = Color.Blue; 
    113237        taso3.CollisionIgnoreGroup = 1; 
    114         taso3.CollisionIgnoreGroup = 2; 
    115         Add(taso3,1); 
    116     
     238        taso3.Tag = "myrkky"; 
     239 
     240        Add(taso3, 1); 
     241 
    117242    } 
    118243 
     
    122247        tahti.IgnoresCollisionResponse = true; 
    123248        tahti.Position = paikka; 
    124         tahti.Image = tahtiKuva; 
    125         tahti.Tag = "tahti"; 
     249 
    126250        Add(tahti); 
    127251    } 
     
    132256        taso.Size = new Vector(40, 23); 
    133257        taso.Color = Color.Gray; 
     258        taso.Image = btasokuva; 
    134259        Add(taso); 
    135260    } 
     
    146271        pelaaja1.CollisionIgnoreGroup = 1; 
    147272 
     273        alkupaikka1 = paikka; 
     274 
    148275        pelaajan1Ase = new AssaultRifle(30, 10); 
    149276        pelaajan1Ase.Y = 10; 
    150277        pelaajan1Ase.IsVisible = false; 
    151278 
    152         //Ammusten määrä aluksi: 
    153279        pelaajan1Ase.InfiniteAmmo = true; 
    154  
    155         //Mitä tapahtuu kun ammus osuu johonkin? 
    156280        pelaajan1Ase.ProjectileCollision = AmmusOsui; 
     281        pelaajan1Ase.FireRate = 1; 
    157282 
    158283        pelaaja1.Add(pelaajan1Ase); 
    159284 
    160          
     285 
    161286        Add(pelaaja1); 
    162287 
    163      
     288        AddCollisionHandler(pelaaja1, "myrkky", PelaajaOsuiMyrkkyyn); 
    164289 
    165290    } 
     
    176301        pelaaja2.Tag = "vihollinen"; 
    177302        pelaaja2.CollisionIgnoreGroup = 1; 
    178          
     303 
     304        alkupaikka2 = paikka; 
     305 
    179306        pelaajan2Ase = new AssaultRifle(30, 10); 
    180307        pelaajan2Ase.Y = 10; 
     
    182309        //Ammusten määrä aluksi: 
    183310        pelaajan2Ase.InfiniteAmmo = true; 
    184  
     311        pelaajan2Ase.FireRate = 1; 
    185312        //Mitä tapahtuu kun ammus osuu johonkin? 
    186313        pelaajan2Ase.ProjectileCollision = AmmusOsui; 
     
    190317 
    191318        Add(pelaaja2); 
    192  
    193  
     319        AddCollisionHandler(pelaaja2, "myrkky", PelaajaOsuiMyrkkyyn); 
     320 
     321    } 
     322 
     323 
     324    void PelaajaOsuiMyrkkyyn(PhysicsObject pelaaja, PhysicsObject myrkky) 
     325    { 
     326        if (myrkky.Tag.Equals("myrkky")) 
     327        { 
     328 
     329        } 
    194330    } 
    195331 
     
    197333    { 
    198334        ammus.Destroy(); 
     335        Explosion räjähdys = new Explosion(50); 
     336        räjähdys.Position = ammus.Position; 
     337        räjähdys.AddShockwaveHandler("vihollinen", RäjähdysOsui); 
     338        Add(räjähdys); 
    199339    } 
    200340 
     
    223363        Keyboard.Listen(Key.W, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja2, hyppyNopeus); 
    224364 
    225         Keyboard.Listen(Key.Delete, ButtonState.Down, AmmuAseella, "Ammu",pelaaja1, pelaajan1Ase); 
    226  
    227         Keyboard.Listen(Key.D1, ButtonState.Down, AmmuAseella, "Ammu",pelaaja2, pelaajan2Ase); 
     365        Keyboard.Listen(Key.Delete, ButtonState.Down, AmmuAseella, "Ammu", pelaaja1, pelaajan1Ase); 
     366 
     367        Keyboard.Listen(Key.D1, ButtonState.Down, AmmuAseella, "Ammu", pelaaja2, pelaajan2Ase); 
    228368 
    229369 
     
    243383        if (ammus != null) 
    244384        { 
    245             ammus.Size *= 2; 
    246             ammus.Image = LoadImage ("ammus"); 
     385            ammus.X += pelaaja.FacingDirection.GetVector().X * 30; 
     386            ammus.CollisionIgnoreGroup = 0; 
     387            ammus.Size *= 1.5; 
     388            ammus.Image = LoadImage("ammus"); 
    247389            ammus.MaximumLifetime = TimeSpan.FromSeconds(2.0); 
    248390 
     
    254396    { 
    255397        hahmo.Walk(nopeus); 
    256          
    257          
    258          
    259          
     398 
     399 
     400 
     401 
     402 
     403    } 
     404    void LuoAlkuvalikko() 
     405    { 
     406 
     407        MultiSelectWindow alkuValikko = new MultiSelectWindow("GrazyGunFighters", 
     408        "Deathmatch", "Exit"); 
     409        alkuValikko.AddItemHandler(0, aloitapeli1); 
     410        alkuValikko.AddItemHandler(1, Exit); 
     411 
     412 
     413        Add(alkuValikko); 
    260414 
    261415    } 
     
    268422    void TormaaTahteen(PhysicsObject hahmo, PhysicsObject tahti) 
    269423    { 
    270          
     424 
    271425        MessageDisplay.Add("Keräsit tähden!"); 
    272426        tahti.Destroy(); 
    273427    } 
    274428 
    275     
     429 
    276430 
    277431} 
  • 2014/27/OttoR/GrazyGunFighters/GrazyGunFighters/GrazyGunFighters/GrazyGunFighters.csproj.Debug.cachefile

    r5283 r5304  
    2222Content\seiso2\Solttu2_0.xnb 
    2323Content\ammus.xnb 
     24Content\metalli.xnb 
     25Content\putkipommi.xnb 
    2426Content\taustamusa.wma 
  • 2014/27/OttoR/GrazyGunFighters/GrazyGunFighters/GrazyGunFighters/obj/x86/Debug/ContentPipeline-{DD67BAE4-E735-4BE9-A36E-568B0F9EC985}.xml

    r5283 r5304  
    4545      <Options>None</Options> 
    4646      <Output>C:\MyTemp\OttoR\GrazyGunFighters\GrazyGunFighters\GrazyGunFighters\bin\x86\Debug\Content\kentta1.xnb</Output> 
    47       <Time>2014-07-02T10:38:00.7737505+03:00</Time> 
     47      <Time>2014-07-02T14:45:32.9371863+03:00</Time> 
    4848    </Item> 
    4949    <Item> 
     
    209209      <Output>C:\MyTemp\OttoR\GrazyGunFighters\GrazyGunFighters\GrazyGunFighters\bin\x86\Debug\Content\ammus.xnb</Output> 
    210210      <Time>2014-07-02T10:35:31.1592149+03:00</Time> 
     211    </Item> 
     212    <Item> 
     213      <Source>metalli.png</Source> 
     214      <Name>metalli</Name> 
     215      <Importer>TextureImporter</Importer> 
     216      <Processor>TextureProcessor</Processor> 
     217      <Options>None</Options> 
     218      <Output>C:\MyTemp\OttoR\GrazyGunFighters\GrazyGunFighters\GrazyGunFighters\bin\x86\Debug\Content\metalli.xnb</Output> 
     219      <Time>2014-07-02T13:00:46.3797435+03:00</Time> 
     220    </Item> 
     221    <Item> 
     222      <Source>putkipommi.png</Source> 
     223      <Name>putkipommi</Name> 
     224      <Importer>TextureImporter</Importer> 
     225      <Processor>TextureProcessor</Processor> 
     226      <Options>None</Options> 
     227      <Output>C:\MyTemp\OttoR\GrazyGunFighters\GrazyGunFighters\GrazyGunFighters\bin\x86\Debug\Content\putkipommi.xnb</Output> 
     228      <Time>2014-07-02T13:43:13.2897418+03:00</Time> 
    211229    </Item> 
    212230    <BuildSuccessful>true</BuildSuccessful> 
  • 2014/27/OttoR/GrazyGunFighters/GrazyGunFighters/GrazyGunFighters/obj/x86/Debug/GrazyGunFighters.csproj.FileListAbsolute.txt

    r5283 r5304  
    3131C:\MyTemp\OttoR\GrazyGunFighters\GrazyGunFighters\GrazyGunFighters\bin\x86\Debug\Content\seiso2\Solttu2_0.xnb 
    3232C:\MyTemp\OttoR\GrazyGunFighters\GrazyGunFighters\GrazyGunFighters\bin\x86\Debug\Content\ammus.xnb 
     33C:\MyTemp\OttoR\GrazyGunFighters\GrazyGunFighters\GrazyGunFighters\bin\x86\Debug\Content\metalli.xnb 
     34C:\MyTemp\OttoR\GrazyGunFighters\GrazyGunFighters\GrazyGunFighters\bin\x86\Debug\Content\putkipommi.xnb 
  • 2014/27/OttoR/GrazyGunFighters/GrazyGunFighters/GrazyGunFighters/obj/x86/Debug/cachefile-{DD67BAE4-E735-4BE9-A36E-568B0F9EC985}-targetpath.txt

    r5283 r5304  
    2323Content\seiso2\Solttu2_0.xnb 
    2424Content\ammus.xnb 
     25Content\metalli.xnb 
     26Content\putkipommi.xnb 
  • 2014/27/OttoR/GrazyGunFighters/GrazyGunFighters/GrazyGunFightersContent/GrazyGunFightersContent.contentproj

    r5283 r5304  
    146146    </Compile> 
    147147  </ItemGroup> 
     148  <ItemGroup> 
     149    <Compile Include="metalli.png"> 
     150      <Name>metalli</Name> 
     151      <Importer>TextureImporter</Importer> 
     152      <Processor>TextureProcessor</Processor> 
     153    </Compile> 
     154  </ItemGroup> 
     155  <ItemGroup> 
     156    <Compile Include="putkipommi.png"> 
     157      <Name>putkipommi</Name> 
     158      <Importer>TextureImporter</Importer> 
     159      <Processor>TextureProcessor</Processor> 
     160    </Compile> 
     161  </ItemGroup> 
    148162  <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 
    149163  <!--  To modify your build process, add your task inside one of the targets below and uncomment it.  
  • 2014/27/OttoR/GrazyGunFighters/GrazyGunFighters/GrazyGunFightersContent/kentta1.txt

    r5283 r5304  
    1         ##                       ##  
    2         ##                      ## 
    3         ##  - ####             --## 
    4         ##                       ## 
    5         ##-                  #-  ## 
    6         ##       ####-   --###   ## 
    7         ##  ###                 -## 
    8         ##                      
    9         ###-    ####--      ---#  ## 
    10         ###                       # 
    11         ###  -###        --##   ####     
    12         ### B                     ##          
    13          ############--  --#######    ####   
    14                   ###EEEEEE################ 
     1        ##                        ##  
     2        ##                      R ## 
     3        ##  - ###--             --## 
     4        ##                        ## 
     5        ##-                  #--  ## 
     6        ##       ###--  --####    ## 
     7        ##  ###                 --# 
     8        ##                        # 
     9        ###-    ###      ---#  ## 
     10        ###                       ## 
     11        ##   -####--      -##   ####  
     12        ## B                      ##         
     13    ###########--          -###   ##  
     14    ###########EEEEEEEEEEEEE######## 
Note: See TracChangeset for help on using the changeset viewer.