Changeset 3816 for 2012


Ignore:
Timestamp:
2012-07-27 12:36:34 (7 years ago)
Author:
anlakane
Message:

Talletus.

Location:
2012/30/JesseN/Oma peli/OmaPeli
Files:
3 added
8 edited

Legend:

Unmodified
Added
Removed
  • 2012/30/JesseN/Oma peli/OmaPeli/OmaPeli.sln

    r3724 r3816  
    44Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OmaPeli", "OmaPeli\OmaPeli\OmaPeli.csproj", "{1D158C1A-70E8-4489-B178-22BCDCA68795}" 
    55EndProject 
    6 Project("{96E2B04D-8817-42C6-938A-82C39BA4D311}") = "OmaPeliContent", "OmaPeli\OmaPeliContent\OmaPeliContent.contentproj", "{D393B661-C31E-4FDE-9903-AA6974CB938F}" 
     6Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OmaPeliContent", "OmaPeli\OmaPeliContent\OmaPeliContent.contentproj", "{D393B661-C31E-4FDE-9903-AA6974CB938F}" 
    77EndProject 
    88Global 
  • 2012/30/JesseN/Oma peli/OmaPeli/OmaPeli/OmaPeli/Ohjelma.cs

    r3751 r3816  
    66    static void Main(string[] args) 
    77    { 
    8         using (OmaPeli game = new OmaPeli()) 
     8        using (MetalFist game = new MetalFist()) 
    99        { 
    1010#if !DEBUG 
  • 2012/30/JesseN/Oma peli/OmaPeli/OmaPeli/OmaPeli/OmaPeli.cs

    r3769 r3816  
    77using Jypeli.Widgets; 
    88 
    9 public class OmaPeli : PhysicsGame 
     9public class MetalFist : PhysicsGame 
    1010{ 
    1111    PlatformCharacter hahmo; 
     12    Maavihu frog; 
    1213    Image hahmostand = LoadImage("CharStand32"); 
    1314    Image[] hahmojuoksu = LoadImages("CharRun1", "CharRun2", "CharRun3"); 
     
    1718    Image tahtaa = LoadImage("CharShoot32bit"); 
    1819    Image[] flyer = LoadImages("EnemyFlying1", "EnemyFlying2", "EnemyFlying3", "EnemyFlying4"); 
     20    Image[] frogi = LoadImages("EnemyLand1", "EnemyLand2"); 
     21    Image[] fullmetalli = LoadImages("FullMetal", "FullMetal", "FullMetal"); 
    1922 
    2023    Image vesiblock = LoadImage("Water"); 
     
    3639    Image taustakuva = LoadImage("CloudBackground"); 
    3740    Image hpsalkku = LoadImage("Briefcase"); 
     41    Image enemygun = LoadImage("EnemyGun"); 
     42    IntMeter pistelaskuri; 
    3843    Animation hahmoosuma; 
     44    Animation fullimetalli; 
    3945    ExplosionSystem rajahdys; 
    4046 
    4147    DoubleMeter elamaLaskuri; 
    4248    IntMeter ammuslaskuri; 
     49    EasyHighScore topLista; 
     50 
    4351 
    4452    public override void Begin() 
    4553    { 
     54        ClearAll(); 
     55        topLista =  new EasyHighScore(); 
     56        topLista.HighScoreWindow.Closed += delegate { Begin(); }; 
     57 
    4658        MultiSelectWindow alkuValikko = new MultiSelectWindow("Pelin alkuvalikko", 
    4759"Aloita peli", "Parhaat pisteet", "Lopeta"); 
     
    4961 
    5062        alkuValikko.ItemSelected += PainettiinValikonNappia; 
    51  
    52  
    53  
    54  
    55  
    56  
    57  
    58  
    59  
    60  
    61  
    6263 
    6364        PhoneBackButton.Listen(ConfirmExit, "Lopeta Peli"); 
     
    7374                break; 
    7475            case 1: 
     76                topLista.Show(); 
     77                break; 
     78            case 2: 
    7579                Exit(); 
    7680                break; 
    77  
    78  
    7981        } 
    8082    } 
    8183 
     84    void Alkuvalikkoon() 
     85    { 
     86        Camera.Zoom(1.0); 
     87        ClearAll(); 
     88        Begin(); 
     89        return; 
     90    } 
    8291    void LuoTausta() 
    8392    { 
     
    96105        LuoElamaLaskuri(); 
    97106        Luoammustenmaara(); 
     107        LuoPisteLaskuri(); 
    98108 
    99109        ColorTileMap ruudut = ColorTileMap.FromLevelAsset("Level1"); 
     
    117127        ruudut.SetTileMethod(Color.YellowGreen, LuoBorderwall); 
    118128        ruudut.SetTileMethod(Color.SpringGreen, LuoAmmuslaatikko); 
    119         Camera.Zoom(1.2); 
     129        ruudut.SetTileMethod(Color.Purple, LuoMaaVihu); 
     130        Camera.Reset(); 
     131        Camera.Zoom(1.1); 
     132        Camera.StayInLevel = true; 
    120133 
    121134        ruudut.Execute(45, 45); 
     
    134147        ammobox.CollisionIgnoreGroup = 0; 
    135148        ammobox.Tag = "Ammo"; 
    136         Add(ammobox, -1); 
     149        Add(ammobox); 
    137150    } 
    138151 
     
    144157        hpbox.CollisionIgnoreGroup = 0; 
    145158        hpbox.Tag = "HP"; 
    146         Add(hpbox, -1); 
     159        Add(hpbox); 
    147160    } 
    148161 
     
    249262        hahmo.Weapon.CanHitOwner = false; 
    250263        AddCollisionHandler<PlatformCharacter, PhysicsObject>(hahmo, "Ammo", Ammuksia); 
    251         AddCollisionHandler<PlatformCharacter, PhysicsObject>(hahmo, "HP", Hpta); 
     264        AddCollisionHandler<PlatformCharacter, PhysicsObject>(hahmo, "HP", Hpta);  
     265        AddCollisionHandler<PlatformCharacter, PhysicsObject>(hahmo, "Vesi", Vesi2 ); 
     266        AddCollisionHandler<PlatformCharacter, PhysicsObject>(hahmo, "vihollinen", OsumaPelaajaan); 
     267        fullimetalli = new Animation(fullmetalli); 
     268        fullimetalli.FPS = 9; 
    252269 
    253270        Image[] hahmodmg = LoadImages("CharHit", "CharHit2", "CharHit3"); 
     
    260277    } 
    261278 
     279    void OsumaPelaajaan(PlatformCharacter hahmo, PhysicsObject lentava ) 
     280    { 
     281        elamaLaskuri.Value -= 1; 
     282        hahmo.PlayAnimation(hahmoosuma); 
     283    } 
     284 
     285 
     286    void LuoPisteLaskuri() 
     287    { 
     288        pistelaskuri = new IntMeter(0); 
     289        Label pisteNaytto = new Label(); 
     290        pisteNaytto.X = Screen.Left + 61; 
     291        pisteNaytto.Y = Screen.Top - 45; 
     292        pisteNaytto.TextColor = Color.White; 
     293        pisteNaytto.Color = Color.Black; 
     294        pisteNaytto.BindTo(pistelaskuri); 
     295        pisteNaytto.Size = new Vector(28, 40); 
     296        pisteNaytto.Title = "Points"; 
     297        Add(pisteNaytto); 
     298    } 
     299 
     300 
     301    void Vesi2(PlatformCharacter hahmo, PhysicsObject vesi) 
     302    { 
     303        hahmo.Hit(new Vector(0, 120)); 
     304    } 
     305 
    262306    void Hpta(PlatformCharacter hahmo, PhysicsObject hpbox) 
    263307    { 
     
    286330    } 
    287331 
     332 
     333 
    288334    void LuoRuoho(Vector paikka, double leveys, double korkeus) 
    289335    { 
     
    313359    void LuoVesi(Vector paikka, double leveys, double korkeus) 
    314360    { 
    315         GameObject vesi = new GameObject(leveys, korkeus); 
     361        PhysicsObject vesi = PhysicsObject.CreateStaticObject(leveys, korkeus); 
    316362        vesi.Position = paikka; 
    317363        vesi.Image = vesiblock; 
     364        vesi.IgnoresCollisionResponse = true; 
     365        vesi.Tag = "Vesi"; 
    318366        Add(vesi, -1); 
    319367    } 
     
    325373        takakivi.Image = takakiviblock; 
    326374        Add(takakivi, -1); 
     375    } 
     376 
     377        void LuoMaaVihu(Vector paikka, double leveys, double korkeus) 
     378    { 
     379        Maavihu frog = new Maavihu(50, 50); 
     380        frog.Position = paikka; 
     381        frog.Animation = new Animation(frogi); 
     382        frog.Shape = Shape.Circle; 
     383        frog.Animation.Start(); 
     384        LaserGun frogun = new LaserGun(30, 20); 
     385        frog.CanRotate = false; 
     386        frogun.Ammo.Value = 10000; 
     387        frogun.Image = enemygun; 
     388        frogun.Color = Color.Transparent; 
     389        frogun.Y = -10; 
     390        frog.Add(frogun); 
     391        frog.Tag = "vihollinen"; 
     392 
     393 
     394 
     395        frogun.Destroyed += delegate { vihollinen2tuhottu(frog); }; 
     396        /*RandomMoverBrain satunnaisAivot = new RandomMoverBrain(200); 
     397        satunnaisAivot.ChangeMovementSeconds = 3; 
     398        frog.Brain = satunnaisAivot; */ 
     399        PlatformWandererBrain tasoAivot = new PlatformWandererBrain(); 
     400        tasoAivot.Speed = 100; 
     401        frog.Brain = tasoAivot; 
     402        Timer ajastin2 = new Timer(); 
     403        ajastin2.Interval = 1.7; 
     404        ajastin2.Timeout += delegate { VihollinenAmpuu(frog, frogun, ajastin2); }; 
     405        ajastin2.Start(); 
     406        Add(frog); 
    327407    } 
    328408 
     
    366446        int pMaara = 50; 
    367447        rajahdys.AddEffect(paikka.Position, pMaara); 
    368     } 
    369  
     448        pistelaskuri.Value += 10; 
     449    } 
     450 
     451    void vihollinen2tuhottu(Maavihu paikka) 
     452    { 
     453        int pMaara = 50; 
     454        rajahdys.AddEffect(paikka.Position, pMaara); 
     455        pistelaskuri.Value += 20; 
     456    } 
    370457    void AmmusViholliseen(PhysicsObject ammus, Vihuclass lentava) 
    371458    { 
    372459        lentava.Hitpoints.Value -= 1; 
    373         //pisteet.value += 1; 
     460 
     461    } 
     462 
     463    void AmmusViholliseen2(PhysicsObject ammus, Maavihu frog) 
     464    { 
     465        frog.Hitpoints2.Value -= 1; 
    374466 
    375467    } 
     
    381473        //hahmo.PlayAnimation(...); 
    382474    } 
     475 
    383476 
    384477 
     
    411504    } 
    412505 
     506    void Vihollinen2Ampuu(PlatformCharacter frog, LaserGun frogun, Timer ajastin2) 
     507    { 
     508        if (frog.IsDestroyed == true) 
     509        { 
     510            ajastin2.Stop(); 
     511            return; 
     512        } 
     513 
     514        Vector suunta = (hahmo.Position - frog.Position); 
     515        if (suunta.Magnitude < 600) 
     516        { 
     517            frogun.Angle = suunta.Angle; 
     518            PhysicsObject ammus2 = frogun.Shoot(); 
     519 
     520            if (ammus2 != null) 
     521            { 
     522                ammus2.Shape = Shape.Circle; 
     523                ammus2.Size = new Vector(10, 10); 
     524                ammus2.Image = panos2; 
     525                AddCollisionHandler(ammus2, CollisionHandler.DestroyObject); 
     526                AddCollisionHandler(ammus2, hahmo, AmmusPelaajaan); 
     527 
     528 
     529 
     530            } 
     531        } 
     532    } 
    413533 
    414534 
     
    421541        Keyboard.Listen(Key.Right, ButtonState.Down, LiikutaHahmoa, "Pelaaja liiku oikealle", 400.0); 
    422542        Keyboard.Listen(Key.Space, ButtonState.Pressed, hyppy, "Pelaaja hyppää", 650.0); 
    423         Keyboard.Listen(Key.A, ButtonState.Pressed, AmmuAseella, "Ammu", hahmo); 
     543        Keyboard.Listen(Key.S, ButtonState.Pressed, AmmuAseella, "Ammu", hahmo); 
     544        Keyboard.Listen(Key.T, ButtonState.Pressed, Alkuvalikkoon, "Palaa valikkoon"); 
     545        Keyboard.Listen(Key.Down, ButtonState.Pressed, fullmetal, "Full metal - muoto"); 
     546    } 
     547 
     548    void fullmetal() 
     549    { 
     550        hahmo.PlayAnimation(fullimetalli); 
     551        hahmo.Hit(new Vector(0, -1000)); 
     552 
    424553    } 
    425554 
     
    449578            AddCollisionHandler(ammus, CollisionHandler.DestroyObject); 
    450579            AddCollisionHandler<PhysicsObject, Vihuclass>(ammus, "vihollinen", AmmusViholliseen); 
     580            AddCollisionHandler<PhysicsObject, Maavihu>(ammus, "vihollinen2", AmmusViholliseen2); 
    451581 
    452582        } 
     
    473603        int pMaara = 50; 
    474604        rajahdys.AddEffect(hahmo.Position, pMaara); 
     605        hahmo.Destroy(); 
     606        topLista.EnterAndShow(pistelaskuri.Value); 
    475607    } 
    476608 
     
    478610    void Luoammustenmaara() 
    479611    { 
     612 
    480613        Label ammustenmaara = new Label(); 
    481614        ammustenmaara.X = Screen.Left + 100; 
     
    487620        Add(ammustenmaara); 
    488621    } 
     622 
     623     
    489624} 
  • 2012/30/JesseN/Oma peli/OmaPeli/OmaPeli/OmaPeli/OmaPeli.csproj

    r3769 r3816  
    111111  </ItemGroup> 
    112112  <ItemGroup> 
     113    <Compile Include="Maavihu.cs" /> 
    113114    <Compile Include="Ohjelma.cs" /> 
    114115    <Compile Include="OmaPeli.cs" /> 
     
    122123  <ItemGroup> 
    123124    <ProjectReference Include="..\OmaPeliContent\OmaPeliContent.contentproj"> 
    124       <Name>OmaPeliContent</Name> 
     125      <Name>OmaPeliContent %28Content%29</Name> 
    125126      <XnaReferenceType>Content</XnaReferenceType> 
     127      <Project>{D393B661-C31E-4FDE-9903-AA6974CB938F}</Project> 
    126128    </ProjectReference> 
    127129  </ItemGroup> 
  • 2012/30/JesseN/Oma peli/OmaPeli/OmaPeli/OmaPeliContent/OmaPeliContent.contentproj

    r3769 r3816  
    7373  </ItemGroup> 
    7474  <ItemGroup> 
    75     <Folder Include="NewFolder1\" /> 
    76     <Folder Include="NewFolder2\" /> 
     75    <Compile Include="EnemyLand2.png"> 
     76      <Name>EnemyLand2</Name> 
     77      <Importer>TextureImporter</Importer> 
     78      <Processor>TextureProcessor</Processor> 
     79    </Compile> 
    7780  </ItemGroup> 
    7881  <ItemGroup> 
     
    310313    <Compile Include="Briefcase.png"> 
    311314      <Name>Briefcase</Name> 
     315      <Importer>TextureImporter</Importer> 
     316      <Processor>TextureProcessor</Processor> 
     317    </Compile> 
     318  </ItemGroup> 
     319  <ItemGroup> 
     320    <Compile Include="EnemyLand1.png"> 
     321      <Name>EnemyLand1</Name> 
     322      <Importer>TextureImporter</Importer> 
     323      <Processor>TextureProcessor</Processor> 
     324    </Compile> 
     325  </ItemGroup> 
     326  <ItemGroup> 
     327    <Compile Include="EnemyGun.png"> 
     328      <Name>EnemyGun</Name> 
     329      <Importer>TextureImporter</Importer> 
     330      <Processor>TextureProcessor</Processor> 
     331    </Compile> 
     332  </ItemGroup> 
     333  <ItemGroup> 
     334    <Compile Include="FullMetal.png"> 
     335      <Name>FullMetal</Name> 
    312336      <Importer>TextureImporter</Importer> 
    313337      <Processor>TextureProcessor</Processor> 
Note: See TracChangeset for help on using the changeset viewer.