Changeset 7957


Ignore:
Timestamp:
2016-07-07 14:57:52 (7 years ago)
Author:
emmamono
Message:

Peli valmis ääniä vaille

Location:
2016/27/EmiliaM
Files:
9 added
1 deleted
11 edited

Legend:

Unmodified
Added
Removed
  • 2016/27/EmiliaM/NinjaNight/NinjaNight/NinjaNight/NinjaNight.cs

    r7907 r7957  
    1616    Pelaaja pelaaja2; 
    1717    Vector aloitusPaikka; 
     18 
     19    int KenttaNumero = 3; 
     20    Vector kaarmeenPaikka; 
    1821     
    1922 
     
    2528    Image timu = LoadImage("Timantti"); 
    2629    Image valikko = LoadImage("alkuvalikko"); 
    27  
     30    Image Morko = LoadImage("pommiilkip"); 
     31    Image Kaarme = LoadImage("boss"); 
     32    Image Lopetus = LoadImage("Lopputekstit"); 
    2833     
    2934 
     
    3944        alkuValikko.AddItemHandler(1, Exit); 
    4045        Add(alkuValikko); 
    41  
    42          
    43              
    44             
    45  
    46              
    47  
    48  
    49  
    50     } 
    51  
    52     void LuoKentta() 
    53     { 
    54  
    55         Gravity = new Vector(0, -1000); 
    56  
    57         TileMap kentta = TileMap.FromLevelAsset("kentta1"); 
    58         kentta.SetTileMethod('#', LisaaTaso); 
    59         kentta.SetTileMethod('E', LisaaPelaaja2); 
    60         kentta.SetTileMethod('V', LisaaPelaaja); 
    61         kentta.SetTileMethod('H', LisaaHirvio); 
    62         kentta.SetTileMethod('T', LisaaTimantti); 
    63         kentta.Execute(RUUDUN_KOKO, RUUDUN_KOKO); 
    64         Level.CreateBorders(); 
    65          
    66         Level.Background.CreateGradient(Color.Black, Color.BlueGray); 
    67  
    68         Camera.Follow(pelaaja1, pelaaja2); 
    69        // Camera.ZoomFactor = 2.0; 
    70         //Camera.StayInLevel = true; 
    71  
    72  
    73     } 
     46         
     47 
     48 
     49 
     50 
     51 
     52 
     53 
     54    } 
     55 
     56     
    7457 
    7558    void LisaaTaso(Vector paikka, double leveys, double korkeus) 
     
    8164    } 
    8265 
     66    void LisaaLaava(Vector paikka, double leveys, double korkeus) 
     67    { 
     68        PhysicsObject laava = PhysicsObject.CreateStaticObject(leveys, korkeus); 
     69        laava.Position = paikka; 
     70        laava.Color = Color.BloodRed; 
     71        laava.Tag = ("laava"); 
     72        Add(laava); 
     73 
     74    } 
    8375 
    8476 
     
    8981        pelaaja1.Mass = 4.0; 
    9082        pelaaja1.Image = NinjaBlue; 
     83        pelaaja1.Tag = "pelaaja"; 
    9184        AddCollisionHandler(pelaaja1, "hirvio", TormaaHirvioon); 
    9285        AddCollisionHandler(pelaaja1, "timu", TormaaTimuun); 
     
    10699        elamaPalkki.BarColor = Color.Red; 
    107100 
    108         IsFullScreen = true; 
     101        IsFullScreen = false; 
    109102        Add(elamaPalkki); 
    110103 
     
    128121        pelaaja2.Mass = 4.0; 
    129122        pelaaja2.Image = NinjaRed; 
     123        pelaaja2.Tag = "pelaaja"; 
    130124 
    131125 
     
    215209        "Seuraava kenttä", "Lopeta"); 
    216210        Add(valikko); 
    217  
     211        KenttaNumero++;  
    218212        valikko.AddItemHandler(0, SiirrySeuraavaanKenttaan); 
    219213        valikko.AddItemHandler(1, Exit); 
     
    223217 
    224218    } 
     219 
     220    void TuhoaTimantti(PhysicsObject laatikko, PhysicsObject laava) 
     221    { 
     222        laatikko.Destroy(); 
     223        LuoKaarme(kaarmeenPaikka,100, 100); 
     224 
     225    } 
     226 
     227    void LuoKaarme(Vector paikka,double leveys, double korkeus) 
     228    { 
     229        Kaarme kaarme = new Kaarme(leveys * 2, korkeus * 2); 
     230        kaarme.Mass = 4.0; 
     231        kaarme.Shape = Shape.FromImage(Kaarme); 
     232        kaarme.Image = Kaarme; 
     233        kaarme.Position = paikka; 
     234        AddCollisionHandler(kaarme, "pelaaja", Taistele); 
     235        kaarme.voima.LowerLimit += delegate 
     236        { 
     237 
     238            kaarme.Destroy(); 
     239        }; 
     240 
     241        kaarme.Destroyed += LopetaPeli; 
     242 
     243        Add(kaarme); 
     244        MessageWindow ikkuna = new MessageWindow("Käärme: Luulitko tämän olevan     helppoa!?   NinjaBlue: Se olit       sinä!    Käärme: Niin.     NinjaRed: Hyökkäykseen!"); 
     245        Add(ikkuna); 
     246    } 
     247 
     248    void LopetaPeli() 
     249    { 
     250        MessageWindow ikkuna = new MessageWindow("Voitit pelin!"); 
     251       Add(ikkuna); 
     252        ikkuna.OKButton.Pressed += Loppu; 
     253        
     254 
     255 
     256    } 
     257 
     258    void Loppu() 
     259    { 
     260        ClearAll(); 
     261        GameObject tausta = new GameObject(Screen.Width, Screen.Height); 
     262        tausta.Image = Lopetus; 
     263        Add(tausta, -1); 
     264        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 
     265    } 
     266 
     267    void Taistele(PhysicsObject kaarm, PhysicsObject pelaaja) 
     268    { 
     269        Kaarme kaarme = kaarm as Kaarme; 
     270        kaarme.voima.Value--; 
     271 
     272        PhysicsObject tulipallo = LuoTulipallo(); 
     273        tulipallo.Position = kaarme.Position - Vector.FromLengthAndAngle(kaarme.Width * 0.5, kaarme.Angle); 
     274        tulipallo.Hit( -Vector.FromLengthAndAngle(1000, kaarme.Angle)); 
     275    } 
     276 
    225277    void SiirrySeuraavaanKenttaan() 
    226278    { 
    227279        ClearAll(); 
     280         
     281 
     282        Gravity = new Vector(0, -1000); 
     283 
     284        TileMap kentta = TileMap.FromLevelAsset("kentta"+KenttaNumero); 
     285        kentta.SetTileMethod('n', LisaaKivi); 
     286        kentta.SetTileMethod('#', LisaaTaso); 
     287        kentta.SetTileMethod('D', LisaaLaava); 
     288        kentta.SetTileMethod('E', LisaaPelaaja2); 
     289        kentta.SetTileMethod('V', LisaaPelaaja); 
     290        kentta.SetTileMethod('O', LisaaMorko, 1000.0); 
     291        kentta.SetTileMethod('L', LisaaMorko, -1000.0); 
     292        kentta.SetTileMethod('T', LisaaTimantti); 
     293        kentta.SetTileMethod('H', LisaaHirvio); 
     294        kentta.SetTileMethod('B', LisaaLaatikko); 
     295        kentta.SetTileMethod('K', LaitaKaarme); 
     296        kentta.Execute(RUUDUN_KOKO, RUUDUN_KOKO); 
     297        Level.CreateBorders(); 
     298        LisaaNappaimet(); 
     299 
     300        Level.Background.CreateGradient(Color.Black, Color.BlueGray); 
     301 
     302        Camera.Follow(pelaaja1, pelaaja2); 
     303    } 
     304 
     305    void LaitaKaarme(Vector paikka, double leveys, double korkeus) 
     306    { 
     307        kaarmeenPaikka = paikka; 
     308 
    228309    } 
    229310 
     
    235316        timantti.Image = timu; 
    236317        timantti.Tag = ("timu"); 
     318 
    237319        Add(timantti); 
    238320    } 
    239321 
    240     void Aloita () 
    241     { 
    242         LuoKentta(); 
    243         LisaaNappaimet(); 
    244     } 
    245     
    246    
    247  
    248     
     322    void LisaaLaatikko(Vector paikka, double leveys, double korkeus) 
     323    { 
     324        PhysicsObject laatikko = new PhysicsObject(leveys * 0.5, korkeus * 0.5); 
     325        laatikko.Position = paikka; 
     326        laatikko.Mass = 2.0; 
     327        laatikko.Color = Color.Beige; 
     328        AddCollisionHandler(laatikko, "laava", TuhoaTimantti); 
     329        Add(laatikko); 
     330    } 
     331 
     332        void Aloita () 
     333    { 
     334        SiirrySeuraavaanKenttaan(); 
     335        MessageWindow ikkuna = new MessageWindow("Ektumus planeetan ihmiset ovat muuttuneet hirviöiksi ja sinun on pelastettava heidät. Etsi kaksi ti-manttia ja tuhoa ne tulivuoressa saadaksesi lääkettä."); 
     336        Add(ikkuna); 
     337 
     338 
     339 
     340 
     341    } 
     342 
     343    void LisaaMorko(Vector paikka, double leveys, double korkeus, double suunta) 
     344    { 
     345        PlatformCharacter morko = new PlatformCharacter(leveys, korkeus); 
     346        morko.Position = paikka; 
     347        morko.Mass = 4.0; 
     348        morko.Image = Morko; 
     349        morko.MirrorImage(); 
     350        morko.Tag = "morko"; 
     351        Add(morko); 
     352        Timer PalloAjastin = new Timer(); 
     353        PalloAjastin.Interval = 3; 
     354        PalloAjastin.Timeout += delegate 
     355         { 
     356             AmmuPallo(morko, suunta); 
     357 
     358         }; 
     359        if (suunta < 0) morko.FacingDirection = Direction.Left; 
     360        PalloAjastin.Start(); 
     361 
     362    } 
     363 
     364    void AmmuPallo (PlatformCharacter morko, double suunta) 
     365    { 
     366 
     367        morko.Throw(LuoTulipallo(), Angle.FromDegrees(30), Math.Abs(suunta) ); 
     368        
     369 
     370 
     371    } 
     372 
     373    PhysicsObject LuoTulipallo() 
     374    { 
     375        PhysicsObject fireball = new PhysicsObject(10.0, 10.0); 
     376        fireball.Mass = 2.0; 
     377        fireball.Tag = ("hirvio"); 
     378        fireball.LifetimeLeft = TimeSpan.FromSeconds(4); 
     379        Add(fireball); 
     380        return fireball; 
     381    } 
     382 
     383    void LisaaKivi(Vector paikka, double leveys, double korkeus) 
     384    { 
     385        PhysicsObject kivi = PhysicsObject.CreateStaticObject(leveys, korkeus); 
     386        kivi.Position = paikka; 
     387        kivi.Color = Color.AshGray; 
     388        Add(kivi); 
     389    } 
     390 
     391 
     392 
     393 
    249394 
    250395} 
     
    262407 
    263408} 
     409 
     410public class Kaarme : PhysicsObject 
     411{ 
     412    public IntMeter voima; 
     413     
     414    public Kaarme(double leveys, double korkeus) 
     415        : base(leveys, korkeus) 
     416    { 
     417        voima = new IntMeter(5, 0, 5); 
     418    } 
     419} 
  • 2016/27/EmiliaM/NinjaNight/NinjaNight/NinjaNight/NinjaNight.csproj.Debug.cachefile

    r7907 r7957  
    1212Content\timantti.xnb 
    1313Content\alkuvalikko.xnb 
     14Content\boss.xnb 
     15Content\kentta2.xnb 
     16Content\kentta3.xnb 
     17Content\Lopputekstit.xnb 
  • 2016/27/EmiliaM/NinjaNight/NinjaNight/NinjaNight/obj/x86/Debug/ContentPipeline-{FB1067CC-FEED-45F1-8CB8-8F3DD59AB260}.xml

    r7907 r7957  
    118118      <Output>C:\MyTemp\EmiliaM\NinjaNight\NinjaNight\NinjaNight\bin\x86\Debug\Content\alkuvalikko.xnb</Output> 
    119119      <Time>2016-07-06T14:39:01.238324+03:00</Time> 
     120    </Item> 
     121    <Item> 
     122      <Source>boss.png</Source> 
     123      <Name>boss</Name> 
     124      <Importer>TextureImporter</Importer> 
     125      <Processor>TextureProcessor</Processor> 
     126      <Options>None</Options> 
     127      <Output>C:\MyTemp\EmiliaM\NinjaNight\NinjaNight\NinjaNight\bin\x86\Debug\Content\boss.xnb</Output> 
     128      <Time>2016-07-07T10:30:11.2789082+03:00</Time> 
     129    </Item> 
     130    <Item> 
     131      <Source>kentta2.txt</Source> 
     132      <Name>kentta2</Name> 
     133      <Importer>TextFileImporter</Importer> 
     134      <Processor>TextFileContentProcessor</Processor> 
     135      <Options>None</Options> 
     136      <Output>C:\MyTemp\EmiliaM\NinjaNight\NinjaNight\NinjaNight\bin\x86\Debug\Content\kentta2.xnb</Output> 
     137      <Time>2016-07-07T12:01:49.0537082+03:00</Time> 
     138    </Item> 
     139    <Item> 
     140      <Source>kentta3.txt</Source> 
     141      <Name>kentta3</Name> 
     142      <Importer>TextFileImporter</Importer> 
     143      <Processor>TextFileContentProcessor</Processor> 
     144      <Options>None</Options> 
     145      <Output>C:\MyTemp\EmiliaM\NinjaNight\NinjaNight\NinjaNight\bin\x86\Debug\Content\kentta3.xnb</Output> 
     146      <Time>2016-07-07T14:04:12.8530993+03:00</Time> 
     147    </Item> 
     148    <Item> 
     149      <Source>Lopputekstit.png</Source> 
     150      <Name>Lopputekstit</Name> 
     151      <Importer>TextureImporter</Importer> 
     152      <Processor>TextureProcessor</Processor> 
     153      <Options>None</Options> 
     154      <Output>C:\MyTemp\EmiliaM\NinjaNight\NinjaNight\NinjaNight\bin\x86\Debug\Content\Lopputekstit.xnb</Output> 
     155      <Time>2016-07-07T14:52:05.3191445+03:00</Time> 
    120156    </Item> 
    121157    <BuildSuccessful>true</BuildSuccessful> 
  • 2016/27/EmiliaM/NinjaNight/NinjaNight/NinjaNight/obj/x86/Debug/NinjaNight.csproj.FileListAbsolute.txt

    r7907 r7957  
    2020C:\MyTemp\EmiliaM\NinjaNight\NinjaNight\NinjaNight\bin\x86\Debug\Content\timantti.xnb 
    2121C:\MyTemp\EmiliaM\NinjaNight\NinjaNight\NinjaNight\bin\x86\Debug\Content\alkuvalikko.xnb 
     22C:\MyTemp\EmiliaM\NinjaNight\NinjaNight\NinjaNight\bin\x86\Debug\Content\boss.xnb 
     23C:\MyTemp\EmiliaM\NinjaNight\NinjaNight\NinjaNight\bin\x86\Debug\Content\kentta2.xnb 
     24C:\MyTemp\EmiliaM\NinjaNight\NinjaNight\NinjaNight\bin\x86\Debug\Content\kentta3.xnb 
     25C:\MyTemp\EmiliaM\NinjaNight\NinjaNight\NinjaNight\bin\x86\Debug\Content\Lopputekstit.xnb 
  • 2016/27/EmiliaM/NinjaNight/NinjaNight/NinjaNight/obj/x86/Debug/cachefile-{FB1067CC-FEED-45F1-8CB8-8F3DD59AB260}-targetpath.txt

    r7907 r7957  
    1212Content\timantti.xnb 
    1313Content\alkuvalikko.xnb 
     14Content\boss.xnb 
     15Content\kentta2.xnb 
     16Content\kentta3.xnb 
     17Content\Lopputekstit.xnb 
  • 2016/27/EmiliaM/NinjaNight/NinjaNight/NinjaNightContent/NinjaNightContent.contentproj

    r7910 r7957  
    129129  </ItemGroup> 
    130130  <ItemGroup> 
    131     <Compile Include="kentta1 - Copy.txt"> 
    132       <Name>kentta1 - Copy</Name> 
     131    <Compile Include="boss.png"> 
     132      <Name>boss</Name> 
     133      <Importer>TextureImporter</Importer> 
     134      <Processor>TextureProcessor</Processor> 
     135    </Compile> 
     136  </ItemGroup> 
     137  <ItemGroup> 
     138    <Compile Include="kentta2.txt"> 
     139      <Name>kentta2</Name> 
    133140      <Importer>TextFileImporter</Importer> 
    134141      <Processor>TextFileContentProcessor</Processor> 
     142    </Compile> 
     143  </ItemGroup> 
     144  <ItemGroup> 
     145    <Compile Include="kentta3.txt"> 
     146      <Name>kentta3</Name> 
     147      <Importer>TextFileImporter</Importer> 
     148      <Processor>TextFileContentProcessor</Processor> 
     149    </Compile> 
     150  </ItemGroup> 
     151  <ItemGroup> 
     152    <Compile Include="Lopputekstit.png"> 
     153      <Name>Lopputekstit</Name> 
     154      <Importer>TextureImporter</Importer> 
     155      <Processor>TextureProcessor</Processor> 
    135156    </Compile> 
    136157  </ItemGroup> 
Note: See TracChangeset for help on using the changeset viewer.