Changeset 7954


Ignore:
Timestamp:
2016-07-07 14:54:56 (3 years ago)
Author:
oslahtin
Message:
 
Location:
2016/27/OskariL/Ikaros Project 1
Files:
13 edited

Legend:

Unmodified
Added
Removed
  • 2016/27/OskariL/Ikaros Project 1/Ikaros Project 1/Ikaros Project 1Content/Ikaros Project 1Content.contentproj

    r7891 r7954  
    6666    </Compile> 
    6767  </ItemGroup> 
     68  <ItemGroup> 
     69    <Compile Include="pommi.png"> 
     70      <Name>pommi</Name> 
     71      <Importer>TextureImporter</Importer> 
     72      <Processor>TextureProcessor</Processor> 
     73    </Compile> 
     74  </ItemGroup> 
    6875  <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 
    6976  <!--  To modify your build process, add your task inside one of the targets below and uncomment it.  
  • 2016/27/OskariL/Ikaros Project 1/Ikaros Project 1/Ikaros_Project_1/Ikaros_Project_1.cs

    r7935 r7954  
    1414    Image siipi = LoadImage("siipi"); 
    1515    Image vihu1 = LoadImage("vihu1"); 
     16    Image pommi = LoadImage("pommi"); 
    1617    PhysicsObject pelaaja; 
    1718    PhysicsObject ammus; 
     
    1920    PhysicsObject pahis2; 
    2021    Label PahiksenElama; 
     22    Label pikkuPahiksenElama; 
    2123    MessageWindow GameOver; 
    2224    MessageWindow GameOver2; 
    23     MessageWindow YouWon; 
     25    //MessageWindow YouWon; 
    2426 
    2527    Color pahisVari; 
     
    3537 
    3638    ExplosionSystem rajahdys2 = new ExplosionSystem(LoadImage("rajahdys_kuva"), 200); 
     39    Explosion rajahdys; 
    3740 
    3841    DoubleMeter alaspainLaskuri; 
     
    4043 
    4144    IntMeter PelaajanElamat; 
     45    IntMeter pikkuPahiksenElamat; 
    4246    IntMeter PahiksenElamat; 
    4347    int KenttaNro = 0; 
    4448    int i = 0; 
    4549    int ShieldTimes = 0; 
     50    IntMeter pommienMaara; 
    4651    public override void Begin() 
    4752    { 
     
    5459       LuoAikaLaskuri(); 
    5560       LuoKentta(); 
     61       LuoPommilaskuri(); 
    5662       AsetaNappaimet(); 
    5763    } 
    5864    void Alkuvalikko() 
    5965    { 
    60         MultiSelectWindow valikko = new MultiSelectWindow("Welcome, watch warmly when incident is resolved", 
    61 "Start game", "Exit"); 
     66        MultiSelectWindow valikko = new MultiSelectWindow("Voitit pelin", 
     67"Uudestaan", "Poistu"); 
    6268        valikko.ItemSelected += PainettiinValikonNappia; 
    6369        Add(valikko); 
     
    9298        Add(valo); 
    9399        Camera.Zoom(1); 
    94         if (AlkuvalikkoKayty == false) 
    95         { 
    96             LuoPelaaja(); 
    97             LuoPahis1(); 
    98         } 
    99         else if (KenttaNro == 2) 
    100         { 
    101             LuoPelaaja(); 
    102             LuoPahis2(); 
    103         } 
     100        LuoPelaaja(); 
     101        LuoPahis1(); 
     102        LuoPahis2(Level.Right - 600.0, Level.Top - 250); 
    104103    } 
    105104    void LuoPelaaja() 
     
    112111        pelaaja.Mass = 5.0; 
    113112        pelaaja.CollisionIgnoreGroup = 3; 
     113        pelaaja.IgnoresExplosions = true; 
    114114        Add(pelaaja); 
    115115 
     
    140140        Add(pahis1); 
    141141 
    142         PahiksenElamat = new IntMeter(300); 
     142        PahiksenElamat = new IntMeter(550); 
    143143 
    144144        PahiksenElama = new Label(); 
     
    152152 
    153153    } 
    154     void LuoPahis2() 
    155     { 
    156         pahis2 = new PhysicsObject(128.0, 128.0); 
    157         pahis2.X = -300.0; 
    158         pahis2.Y = Level.Top - 100.0; 
     154    void LuoPahis2(double x, double y) 
     155    { 
     156        pahis2 = new PhysicsObject(48.0, 48.0); 
     157        pahis2.X = x; 
     158        pahis2.Y = y; 
    159159        pahis2.Shape = Shape.Rectangle; 
    160160        pahis2.Color = Color.Azure; 
    161161        pahis2.Mass = 400.0; 
    162162        pahis2.Tag = "pahis"; 
    163         pahis1.CollisionIgnoreGroup = 2; 
     163        pahis2.Image = pommi; 
     164        pahis2.CollisionIgnoreGroup = 2; 
    164165        pahis2.IgnoresExplosions = true; 
    165166        pahis2.IgnoresCollisionResponse = false; 
    166167        Add(pahis2); 
    167168 
    168         RandomMoverBrain satunnaisAivot = new RandomMoverBrain(100); 
    169         satunnaisAivot.ChangeMovementSeconds = 1; 
    170         pahis2.Brain = satunnaisAivot; 
     169        pikkuPahiksenElamat = new IntMeter(30); 
     170         
     171        pikkuPahiksenElama = new Label(); 
     172        pikkuPahiksenElama.Title = "Pienet pahikset:"; 
     173        pikkuPahiksenElama.X = pelaaja.X + 600; 
     174        pikkuPahiksenElama.Y = pelaaja.Y + 90; 
     175        pikkuPahiksenElama.TextColor = Color.Black; 
     176        pikkuPahiksenElama.Color = Color.Transparent; 
     177        pikkuPahiksenElama.BindTo(pikkuPahiksenElamat); 
     178        Add(pikkuPahiksenElama); 
     179 
    171180    } 
    172181 
     
    217226    void Pommi() 
    218227    { 
    219             ammus.Destroy(); 
     228        if (pommienMaara.Value == 0) 
     229        { 
     230            return; 
     231        } 
     232        else 
     233        { 
     234            rajahdys = new Explosion(500); 
     235            rajahdys.Position = pelaaja.Position; 
     236            Add(rajahdys); 
     237            pommienMaara.Value -= 1; 
     238        } 
     239    } 
     240    void LuoPommilaskuri() 
     241    { 
     242        pommienMaara = new IntMeter(3); 
     243 
     244        Label pisteNaytto = new Label(); 
     245        pisteNaytto.Title = "Pommit:"; 
     246        pisteNaytto.X = pelaaja.X + 600; 
     247        pisteNaytto.Y = pelaaja.Y + 120; 
     248        pisteNaytto.TextColor = Color.Black; 
     249 
     250        pisteNaytto.BindTo(pommienMaara); 
     251        Add(pisteNaytto); 
    220252    } 
    221253    void PahisAmpuu() 
    222254    { 
    223         LuoAmmus(pahis1.X, pahis1.Y - 100, Shape.Triangle, Color.DarkCyan, 2); 
     255        LuoAmmus(pahis1.X, pahis1.Y - 100, Shape.Triangle, pahisVari, 2, false); 
    224256        ammus.Hit(RandomGen.NextVector(-100.0, 100.0)); 
    225257    } 
    226258    void AmmuPalloa1() 
    227259    { 
    228         LuoAmmus(pelaaja.X, pelaaja.Y + 24, Shape.Circle, Color.LightCyan, 3); 
     260        LuoAmmus(pelaaja.X, pelaaja.Y + 24, Shape.Circle, pahisVari, 3, false); 
    229261        ammus.Hit(new Vector(RandomGen.SelectOne(0, 200, -200, 90, -150, 42), RandomGen.SelectOne(0, 800, -600, 200, -200, 120, -1200))); 
    230262 
    231263    } 
    232     void LuoAmmus(double x, double y, Shape shape, Color vari, int cig) 
     264    void LuoAmmus(double x, double y, Shape shape, Color vari, int cig, bool ignores) 
    233265    { 
    234266        if (i < 10) 
     
    241273            ammus.CanRotate = true; 
    242274            ammus.IgnoresCollisionResponse = false; 
    243             ammus.IgnoresExplosions = true; 
     275            ammus.IgnoresExplosions = ignores; 
    244276            ammus.CollisionIgnoreGroup = cig; 
    245277            ammus.IgnoresCollisionWith(ammus); 
     
    250282            AddCollisionHandler(ammus, pahis1, PahistaAmmutaan); 
    251283            AddCollisionHandler(ammus, pelaaja, PelaajaaAmmutaan); 
     284            AddCollisionHandler(ammus, pahis2, PikkuPahistaAmmutaan); 
    252285        } 
    253286        else if (i > 10) 
     
    265298            { 
    266299                pelaaja.Destroy(); 
     300                alaspainLaskuri.Stop(); 
    267301                GameOver2 = new MessageWindow("Hävisit pelin!"); 
    268302                Add(GameOver2); 
    269                 Exit(); 
     303                Timer.SingleShot(5, Begin); 
    270304            } 
     305 
    271306        } 
    272307    } 
     
    280315        { 
    281316            pahis.Destroy(); 
    282             YouWon = new MessageWindow("Voitit pelin"); 
    283             Add(YouWon); 
     317            //YouWon = new MessageWindow("Voitit pelin"); 
     318            //Add(YouWon); 
    284319            Alkuvalikko(); 
    285320            ammus.Destroy(); 
    286321        } 
     322    } 
     323    void PikkuPahistaAmmutaan(PhysicsObject ammus, PhysicsObject pahis) 
     324    { 
     325        if (pikkuPahiksenElamat > 0) 
     326        { 
     327            pikkuPahiksenElamat.Value -= 1; 
     328            if (pikkuPahiksenElamat == 0) 
     329            { 
     330                rajahdys = new Explosion(320); 
     331                rajahdys.Position = pahis.Position; 
     332                Add(rajahdys); 
     333                rajahdys.AddShockwaveHandler(pahis1, PaineaaltoOsuu); 
     334                pahis.Destroy(); 
     335            } 
     336        } 
     337    } 
     338    void PaineaaltoOsuu(IPhysicsObject pahis1, Vector shokki) 
     339    { 
     340        PahiksenElamat.Value -= 100; 
    287341    } 
    288342    void LuoAikaLaskuri() 
     
    315369        if (alaspainLaskuri.Value >= 0) 
    316370        { 
    317             LuoAmmus(pelaaja.X, pelaaja.Y + 150, Shape.Star, Color.Azure, 2); 
    318             ammus.Hit(RandomGen.NextVector(-100.0, 100.0)); 
    319             if (alaspainLaskuri.Value <= 60 && ShieldTimes == 0) 
     371            LuoAmmus(RandomGen.NextDouble(Level.Right - 450, Level.Right + 450), Level.Bottom - 100, RandomGen.SelectOne(Shape.Diamond, Shape.Ellipse, Shape.Hexagon), Color.Cyan, 2, true); 
     372            ammus.Hit(new Vector(0.0, RandomGen.NextDouble(5.0, 50.0))); 
     373            LuoAmmus(RandomGen.NextDouble(Level.Right - 450, Level.Right + 450), Level.Bottom - 100, RandomGen.SelectOne(Shape.Diamond, Shape.Ellipse, Shape.Hexagon), Color.Cyan, 2, true); 
     374            ammus.Hit(new Vector(0.0, RandomGen.NextDouble(5.0, 50.0))); 
     375            LuoAmmus(RandomGen.NextDouble(Level.Left - 450, Level.Left - 150), Level.Bottom - 100, RandomGen.SelectOne(Shape.Diamond, Shape.Ellipse, Shape.Hexagon), Color.Cyan, 2, true); 
     376            ammus.Hit(new Vector(0.0, RandomGen.NextDouble(5.0, 50.0))); 
     377 
     378            LuoAmmus(pelaaja.X, pelaaja.Y + 150, Shape.Star, Color.Azure, 2, false); 
     379            ammus.Hit(RandomGen.NextVector(-100.0, 100.0)); 
     380            if (alaspainLaskuri.Value <= 60 && 3 <= ShieldTimes) 
    320381            { 
    321                 LuoAmmus(pahis1.X, pahis1.Y + 50.0, Shape.Circle, Color.Aquamarine, 2); 
    322                 LuoAmmus(pahis1.X, pahis1.Y - 50.0, Shape.Circle, Color.Aquamarine, 2); 
    323                 LuoAmmus(pahis1.X + 20.0, pahis1.Y - 40.0, Shape.Circle, Color.Aquamarine, 2); 
    324                 LuoAmmus(pahis1.X - 20.0, pahis1.Y - 40.0, Shape.Circle, Color.Aquamarine, 2); 
    325                 LuoAmmus(pahis1.X + 40.0, pahis1.Y - 20.0, Shape.Circle, Color.Aquamarine, 2); 
    326                 LuoAmmus(pahis1.X - 40.0, pahis1.Y - 20.0, Shape.Circle, Color.Aquamarine, 2); 
    327                 LuoAmmus(pahis1.X + 50.0, pahis1.Y, Shape.Circle, Color.Aquamarine, 2); 
    328                 LuoAmmus(pahis1.X - 50.0, pahis1.Y, Shape.Circle, Color.Aquamarine, 2); 
    329                 LuoAmmus(pahis1.X + 40.0, pahis1.Y + 20.0, Shape.Circle, Color.Aquamarine, 2); 
    330                 LuoAmmus(pahis1.X - 40.0, pahis1.Y + 20.0, Shape.Circle, Color.Aquamarine, 2); 
    331                 LuoAmmus(pahis1.X + 20.0, pahis1.Y + 40.0, Shape.Circle, Color.Aquamarine, 2); 
    332                 LuoAmmus(pahis1.X - 20.0, pahis1.Y + 40.0, Shape.Circle, Color.Aquamarine, 2); 
     382                LuoAmmus(pahis1.X, pahis1.Y + 50.0, Shape.Circle, Color.Aquamarine, 2, false); 
     383                LuoAmmus(pahis1.X, pahis1.Y - 50.0, Shape.Circle, Color.Aquamarine, 2, false); 
     384                LuoAmmus(pahis1.X + 20.0, pahis1.Y - 40.0, Shape.Circle, Color.Aquamarine, 2, false); 
     385                LuoAmmus(pahis1.X - 20.0, pahis1.Y - 40.0, Shape.Circle, Color.Aquamarine, 2, false); 
     386                LuoAmmus(pahis1.X + 40.0, pahis1.Y - 20.0, Shape.Circle, Color.Aquamarine, 2, false); 
     387                LuoAmmus(pahis1.X - 40.0, pahis1.Y - 20.0, Shape.Circle, Color.Aquamarine, 2, false); 
     388                LuoAmmus(pahis1.X + 50.0, pahis1.Y, Shape.Circle, Color.Aquamarine, 2, false); 
     389                LuoAmmus(pahis1.X - 50.0, pahis1.Y, Shape.Circle, Color.Aquamarine, 2, false); 
     390                LuoAmmus(pahis1.X + 40.0, pahis1.Y + 20.0, Shape.Circle, Color.Aquamarine, 2, false); 
     391                LuoAmmus(pahis1.X - 40.0, pahis1.Y + 20.0, Shape.Circle, Color.Aquamarine, 2, false); 
     392                LuoAmmus(pahis1.X + 20.0, pahis1.Y + 40.0, Shape.Circle, Color.Aquamarine, 2, false); 
     393                LuoAmmus(pahis1.X - 20.0, pahis1.Y + 40.0, Shape.Circle, Color.Aquamarine, 2, false); 
    333394                ammus.Hit(new Vector(0.0, 5.0)); 
    334395                ShieldTimes++; 
    335396            } 
    336397        } 
    337         if (alaspainLaskuri.Value >= 40) 
    338         { 
    339             LuoAmmus(pahis1.X, pahis1.Y - 50, Shape.Circle, Color.BrightGreen, 2); 
     398        if (40 >= alaspainLaskuri.Value) 
     399        { 
     400            LuoAmmus(pelaaja.X - 150, pelaaja.Y -150, Shape.Circle, Color.RosePink, 2, false); 
     401            ammus.Hit(RandomGen.NextVector(-100.0, 100.0)); 
     402            LuoAmmus(pelaaja.X - 150, pelaaja.Y + 150, Shape.Triangle, Color.OrangeRed, 2, false); 
     403            ammus.Hit(RandomGen.NextVector(-100.0, 100.0)); 
     404            LuoAmmus(pelaaja.X + 150, pelaaja.Y - 150, Shape.Hexagon, Color.Olive, 2, false); 
     405            ammus.Hit(RandomGen.NextVector(-100.0, 100.0)); 
     406            LuoAmmus(pelaaja.X + 150, pelaaja.Y + 150, Shape.Star, Color.Azure, 2, false); 
     407            ammus.Hit(RandomGen.NextVector(-100.0, 100.0)); 
     408 
     409 
     410            LuoAmmus(pahis1.X, pahis1.Y - 50, Shape.Circle, Color.BrightGreen, 2, false); 
    340411            ammus.Hit(new Vector(0.0, -130.0)); 
    341             LuoAmmus(pahis1.X, pahis1.Y - 50.0, Shape.Circle, Color.Aquamarine, 2); 
     412            LuoAmmus(pahis1.X, pahis1.Y - 50.0, Shape.Circle, Color.Aquamarine, 2, false); 
    342413            ammus.Hit(new Vector(50.0, -130.0)); 
    343             LuoAmmus(pahis1.X, pahis1.Y - 50.0, Shape.Circle, Color.Aquamarine, 2); 
     414            LuoAmmus(pahis1.X, pahis1.Y - 50.0, Shape.Circle, Color.Aquamarine, 2, false); 
    344415            ammus.Hit(new Vector(-50.0, -130.0)); 
    345             LuoAmmus(pahis1.X, pahis1.Y - 50.0, Shape.Circle, Color.BrightGreen, 2); 
     416            LuoAmmus(pahis1.X, pahis1.Y - 50.0, Shape.Circle, Color.BrightGreen, 2, false); 
    346417            ammus.Hit(new Vector(100.0, -130.0)); 
    347             LuoAmmus(pahis1.X, pahis1.Y - 50.0, Shape.Circle, Color.BrightGreen, 2); 
     418            LuoAmmus(pahis1.X, pahis1.Y - 50.0, Shape.Circle, Color.BrightGreen, 2, false); 
    348419            ammus.Hit(new Vector(-100.0, -130.0)); 
    349420 
    350421        } 
    351         if (alaspainLaskuri.Value <= 20) 
    352         { 
    353             LuoAmmus(pelaaja.X - 150, pelaaja.Y, Shape.Circle, Color.RosePink, 2); 
    354             ammus.Hit(RandomGen.NextVector(-100.0, 100.0)); 
    355             LuoAmmus(pelaaja.X + 150, pelaaja.Y, Shape.Triangle, Color.OrangeRed, 2); 
    356             ammus.Hit(RandomGen.NextVector(-100.0, 100.0)); 
    357             LuoAmmus(pelaaja.X, pelaaja.Y - 150, Shape.Hexagon, Color.Olive, 2); 
     422        if (alaspainLaskuri.Value >= 20) 
     423        { 
     424            LuoAmmus(pelaaja.X - 150, pelaaja.Y, Shape.Circle, Color.RosePink, 2, false); 
     425            ammus.Hit(RandomGen.NextVector(-100.0, 100.0)); 
     426            LuoAmmus(pelaaja.X + 150, pelaaja.Y, Shape.Triangle, Color.OrangeRed, 2, false); 
     427            ammus.Hit(RandomGen.NextVector(-100.0, 100.0)); 
     428            LuoAmmus(pelaaja.X, pelaaja.Y - 150, Shape.Hexagon, Color.Olive, 2, false); 
    358429            ammus.Hit(RandomGen.NextVector(-100.0, 100.0)); 
    359430 
  • 2016/27/OskariL/Ikaros Project 1/Ikaros Project 1/Ikaros_Project_1/Ikaros_Project_1.csproj.Debug.cachefile

    r7891 r7954  
    22Content\siipi.xnb 
    33Content\vihu1.xnb 
     4Content\pommi.xnb 
  • 2016/27/OskariL/Ikaros Project 1/Ikaros Project 1/Ikaros_Project_1/obj/x86/Debug/ContentPipeline-{7420C726-1CE8-4AAD-880B-4E5D6E4E44DB}.xml

    r7891 r7954  
    2727      <Options>None</Options> 
    2828      <Output>C:\MyTemp\OskariL\Ikaros Project 1\Ikaros Project 1\Ikaros_Project_1\bin\x86\Debug\Content\vihu1.xnb</Output> 
    29       <Time>2016-07-06T14:37:01.1811846+03:00</Time> 
     29      <Time>2016-07-07T14:00:30.6532657+03:00</Time> 
     30    </Item> 
     31    <Item> 
     32      <Source>pommi.png</Source> 
     33      <Name>pommi</Name> 
     34      <Importer>TextureImporter</Importer> 
     35      <Processor>TextureProcessor</Processor> 
     36      <Options>None</Options> 
     37      <Output>C:\MyTemp\OskariL\Ikaros Project 1\Ikaros Project 1\Ikaros_Project_1\bin\x86\Debug\Content\pommi.xnb</Output> 
     38      <Time>2016-07-07T13:32:26.9298657+03:00</Time> 
    3039    </Item> 
    3140    <BuildSuccessful>true</BuildSuccessful> 
  • 2016/27/OskariL/Ikaros Project 1/Ikaros Project 1/Ikaros_Project_1/obj/x86/Debug/Ikaros_Project_1.csproj.FileListAbsolute.txt

    r7891 r7954  
    1010C:\MyTemp\OskariL\Ikaros Project 1\Ikaros Project 1\Ikaros_Project_1\bin\x86\Debug\Content\siipi.xnb 
    1111C:\MyTemp\OskariL\Ikaros Project 1\Ikaros Project 1\Ikaros_Project_1\bin\x86\Debug\Content\vihu1.xnb 
     12C:\MyTemp\OskariL\Ikaros Project 1\Ikaros Project 1\Ikaros_Project_1\bin\x86\Debug\Content\pommi.xnb 
  • 2016/27/OskariL/Ikaros Project 1/Ikaros Project 1/Ikaros_Project_1/obj/x86/Debug/cachefile-{7420C726-1CE8-4AAD-880B-4E5D6E4E44DB}-targetpath.txt

    r7891 r7954  
    22Content\siipi.xnb 
    33Content\vihu1.xnb 
     4Content\pommi.xnb 
Note: See TracChangeset for help on using the changeset viewer.