Changeset 3845


Ignore:
Timestamp:
2012-09-22 15:59:21 (7 years ago)
Author:
anlakane
Message:

Paranneltu

Location:
2011/24/LauriK
Files:
122 added
5 deleted
5 edited

Legend:

Unmodified
Added
Removed
  • 2011/24/LauriK/Call of garden Modern carrotfare 2/Call of garden Modern carrotfare 2/Call of garden Modern carrotfare 2.csproj

    r2059 r3845  
    1717    <XnaCrossPlatformGroupID>8658c32a-4321-46eb-adab-cb0e769a8cb8</XnaCrossPlatformGroupID> 
    1818    <XnaOutputType>Game</XnaOutputType> 
    19     <ApplicationIcon>Game.ico</ApplicationIcon> 
     19    <ApplicationIcon>pelilogo.ico</ApplicationIcon> 
    2020    <Thumbnail>GameThumbnail.png</Thumbnail> 
    2121    <PublishUrl>publish\</PublishUrl> 
     
    6262  </PropertyGroup> 
    6363  <ItemGroup> 
    64     <Reference Include="Jypeli4"> 
     64    <Reference Include="Jypeli, Version=5.0.0.0, Culture=neutral, processorArchitecture=x86"> 
     65      <SpecificVersion>False</SpecificVersion> 
     66      <HintPath>..\..\..\..\Program Files (x86)\Jypeli\lib\x86\Jypeli.dll</HintPath> 
    6567    </Reference> 
    6668    <Reference Include="Microsoft.Xna.Framework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86"> 
     
    116118  </ItemGroup> 
    117119  <ItemGroup> 
    118     <Content Include="Game.ico" /> 
    119120    <Content Include="GameThumbnail.png" /> 
    120121    <Content Include="kentta1.txt"> 
     
    124125      <CopyToOutputDirectory>Always</CopyToOutputDirectory> 
    125126    </Content> 
     127    <Content Include="pelilogo.ico" /> 
    126128  </ItemGroup> 
    127129  <ItemGroup> 
  • 2011/24/LauriK/Call of garden Modern carrotfare 2/Call of garden Modern carrotfare 2/Peli.cs

    r2447 r3845  
    1414    const int RUUDUN_KOKO = 40; 
    1515 
    16     public int kentanNro = 0; 
    17  
    18     public int elamat = 100; 
     16    [Save] public int kentanNro = 0; 
     17 
     18    [Save] public int elamat = 100; 
    1919 
    2020    ScoreList topLista = new ScoreList(10, false, 0); 
    2121 
     22    Label otsikko; 
     23    Label versio; 
     24 
    2225    PlatformCharacter porkkana; 
     26     
    2327    PhysicsObject hautakivi; 
    2428    PhysicsObject kuolluttomaatti; 
    2529    PhysicsObject lipas; 
    26     PhysicsObject uusikranaatti; 
     30//    PhysicsObject uusikranaatti; 
    2731    PhysicsObject raha; 
    2832 
    29     public bool pelaajallaOnLaser = false; 
     33    [Save] public bool pelaajallaOnLaser = false; 
     34    public bool peliladattu = false; 
    3035 
    3136    string cheat1 = "LaserBlast"; 
    3237    string cheat2 = "MoonGravity"; 
    3338    string cheat3 = "ClearAll"; 
    34      
    35     IntMeter panoslaskuri; 
    36     IntMeter pistelaskuri; 
    37     IntMeter kranaattiLaskuri; 
     39 
     40    [Save] public IntMeter panoslaskuri = new IntMeter(0); 
     41    [Save] public IntMeter pistelaskuri = new IntMeter(0); 
     42    [Save] public IntMeter kranaattiLaskuri = new IntMeter(0); 
    3843 
    3944    List<GameObject> rajahdyksenTomaattiUhrit; 
     
    4651    Image[] vihollisenKuvaPeilattu; 
    4752    Image vihollisenKuvaKuolleena = LoadImage("tomaattikuolleena"); 
    48     Image lippaanKuva = LoadImage("Lipas2"); 
    49     Image kranaatinKuva = LoadImage("ydinpommi"); 
     53    Image lippaanKuva = LoadImage("ammo_can"); 
     54    Image kranaatinKuva = LoadImage("kranu"); 
    5055    Image uudenKranaatinKuva = LoadImage("Laatikko"); 
    5156    Image RahanKuva = LoadImage("Raha"); 
     
    5459    //Image alustus3 = LoadImage("alustus3"); 
    5560    Image maalinKuva = LoadImage("Maali"); 
    56     Image alkuvalikko = LoadImage("alkuvalikko"); 
    5761    Image peliPaattyi = LoadImage("pelipaattyi"); 
     62    Image alku = LoadImage("taustakuva"); 
    5863 
    5964    ExplosionSystem rajahdys; 
    6065    int pMaxMaara = 5000000; 
    6166 
     67 
     68 
    6269    public override void Begin() 
    6370    { 
    6471        if (DataStorage.Exists("pisteet.xlm")) 
    6572        { 
    66             topLista = DataStorage.Load<ScoreList>(topLista, "pisteet.xlm"); 
    67         }      
    68           
     73            topLista = DataStorage.TryLoad<ScoreList>(topLista, "pisteet.xml"); 
     74        } 
     75 
    6976        rajahdyksenTomaattiUhrit = new List<GameObject>(); 
    7077        rajahdyksenPorkkanaUhri = new List<GameObject>(); 
    71          
     78 
    7279        pelaajanKuvaPeilattu = Image.Mirror(pelaajanKuva); 
    7380        vihollisenKuvaPeilattu = Image.Mirror(vihollisenKuva); 
    74         
     81 
    7582        SeuraavaKentta(kentanNro); 
    76          
     83 
    7784        Gravity = new Vector(0, -1000); 
    7885 
     
    8794        Camera.Reset(); 
    8895 
     96        kentanNro = 0; 
     97 
    8998        ClearAll(); 
    9099 
    91         Level.Background.Image = alkuvalikko; 
     100        MultiSelectWindow valikko = new MultiSelectWindow("", 
     101        "Start Game", "Highscores", "Controls", "About", "Options", "Exit"); 
     102        valikko.ItemSelected += PainettiinValikonNappia; 
     103        Add(valikko); 
     104        valikko.DefaultCancel = 5; 
     105        valikko.Color = Color.Transparent; 
     106        valikko.SetButtonColor(Color.Gray); 
     107        valikko.SelectionColor = Color.LimeGreen; 
     108 
     109        otsikko = new Label(5000, 5000); 
     110        otsikko.Text = "Call of Garden: Modern Carrotfare"; 
     111        otsikko.TextColor = Color.DarkGreen; 
     112        //otsikko.X = Screen.Center; 
     113        otsikko.Y = valikko.Y + 200; 
     114        otsikko.Font = Font.DefaultLargeBold; 
     115        Add(otsikko); 
     116 
     117        Level.Background.Image = alku; 
    92118        Level.Background.Width = Screen.Width; 
    93119        Level.Background.Height = Screen.Height; 
    94120 
    95         Label versio = new Label(); 
    96         versio.SizeMode = TextSizeMode.Wrapped; 
    97         versio.Width = Screen.Width - 100; 
    98         versio.Height = Screen.Height; 
    99         versio.X = 500; 
    100         versio.Y = -95; 
    101         versio.TextColor = Color.Green; 
    102         versio.Font = Font.DefaultLargeBold; 
     121        versio = new Label(); 
     122        versio.Text = "Beta 3.0"; 
     123        versio.TextColor = Color.OrangeRed; 
     124        versio.X = valikko.X + 500; 
     125        versio.Y = valikko.Y; 
     126        versio.Font = Font.DefaultBold; 
    103127        Add(versio); 
    104         versio.Text = "Beta 2.1"; 
    105128         
    106         MediaPlayer.Play("alkuaani"); 
    107  
    108         ClearControls(); 
    109  
    110         Keyboard.Listen(Key.Escape, ButtonState.Pressed, Exit, "Poistu pelistä"); 
    111         Keyboard.Listen(Key.Enter, ButtonState.Pressed, SeuraavaKentta, "Aloita peli", 1); 
    112  
    113         ControllerOne.Listen(Button.Back, ButtonState.Pressed, Exit, "Poistu pelistä"); 
    114         ControllerOne.Listen(Button.Start, ButtonState.Pressed, SeuraavaKentta, "Aloita peli", 1); 
    115  
    116     } 
    117      
     129        MessageDisplay.BackgroundColor = Color.Transparent; 
     130        MessageDisplay.TextColor = Color.OrangeRed; 
     131 
     132        Keyboard.Listen(Key.Escape, ButtonState.Pressed, Exit, "Exit"); 
     133    } 
     134 
    118135    public void SeuraavaKentta(int kentanNro) 
    119136    { 
    120137        pelaajallaOnLaser = false; 
    121          
     138 
    122139        if (kentanNro == 0) Valikko(); 
    123140        if (kentanNro == 1) luoAlustus1(); 
     
    129146    private void luoAlustus1() 
    130147    { 
    131          
     148 
    132149        Camera.Reset(); 
    133150 
    134151        ClearAll(); 
    135          
     152 
    136153        Level.Background.Image = alustus1; 
    137154        Level.Background.Width = Screen.Width; 
     
    144161        Keyboard.Listen(Key.Enter, ButtonState.Pressed, TeeKentta1, "Aloita kenttä"); 
    145162 
    146         ControllerOne.Listen(Button.Start, ButtonState.Pressed, TeeKentta1,"Aloita kenttä"); 
     163        ControllerOne.Listen(Button.Start, ButtonState.Pressed, TeeKentta1, "Aloita kenttä"); 
    147164 
    148165        MessageDisplay.TextColor = Color.White; 
     
    152169    { 
    153170        Camera.Reset(); 
    154          
     171 
    155172        ClearAll(); 
    156          
     173 
    157174        Level.Background.Image = alustus2; 
    158175        Level.Background.Width = Screen.Width; 
     
    190207    //    MessageDisplay.TextColor = Color.White; 
    191208    //} 
    192                 
     209 
    193210    PhysicsObject lisaaTaso() 
    194211    { 
     
    211228        return taso3; 
    212229    } 
    213      
     230 
    214231    PlatformCharacter lisaaPelaaja() 
    215232    { 
    216233        porkkana = new PlatformCharacter(40, 40); 
    217234        porkkana.Mass = 4.0; 
     235        porkkana.Tag = "porkkana"; 
    218236 
    219237        if (pelaajallaOnLaser == true) 
     
    228246        if (pelaajallaOnLaser == false) 
    229247        { 
    230             porkkana.Weapon = new AssaultRifle(60, 30); 
    231             porkkana.Weapon.Ammo.Value = 10; 
    232             porkkana.Weapon.Y = -3; 
    233             porkkana.Weapon.X = 0; 
    234             porkkana.Weapon.ProjectileCollision = AmmusOsui; 
    235         } 
     248                porkkana.Weapon = new AssaultRifle(60, 30); 
     249                porkkana.Weapon.Ammo.Value = 10; 
     250                porkkana.Weapon.Y = -3; 
     251                porkkana.Weapon.X = 0; 
     252                porkkana.Weapon.ProjectileCollision = AmmusOsui; 
     253        } 
     254 
     255        AddCollisionHandler(porkkana, LipasKranaattiOsuma); 
     256 
     257        porkkana.IgnoresExplosions = true; 
     258 
     259        //porkkana.RightWalkingAnimation = new Animation(pelaajanKuva); 
     260        porkkana.AnimIdle = new Animation(pelaajanKuva); 
     261        porkkana.AnimWalk = new Animation(pelaajanKuva); 
     262        //porkkana.LeftWalkingAnimation = new Animation(pelaajanKuvaPeilattu); 
     263 
     264        rajahdyksenPorkkanaUhri.Add(porkkana); 
     265 
    236266         
    237         AddCollisionHandler(porkkana, LipasKranaattiOsuma); 
    238  
    239         porkkana.IgnoresExplosions = true; 
    240  
    241         porkkana.RightWalkingAnimation = new Animation(pelaajanKuva); 
    242         porkkana.LeftWalkingAnimation = new Animation(pelaajanKuvaPeilattu); 
    243  
    244         rajahdyksenPorkkanaUhri.Add(porkkana); 
    245          
     267 
    246268        return porkkana; 
    247269    } 
     
    256278        tomaatti.IgnoresGravity = false; 
    257279 
    258         FollowerBrain SeuraajanAivot = new FollowerBrain(); 
     280        FollowerBrain SeuraajanAivot = new FollowerBrain("porkkana"); 
    259281        tomaatti.Brain = SeuraajanAivot; 
    260         SeuraajanAivot.Target = porkkana; 
     282        //SeuraajanAivot.Target = porkkana; 
    261283        SeuraajanAivot.Speed = 100; 
    262         SeuraajanAivot.TargetFollowDistance = 500; 
    263         SeuraajanAivot.TargetCloseDistance = 50; 
     284        SeuraajanAivot.DistanceFar = 500; 
     285        SeuraajanAivot.DistanceClose = 50; 
    264286        SeuraajanAivot.StopWhenTargetClose = false; 
    265287        AddCollisionHandler(tomaatti, TomaattiOsui); 
    266288 
    267         tomaatti.RightWalkingAnimation = new Animation(vihollisenKuva); 
    268         tomaatti.LeftWalkingAnimation = new Animation(vihollisenKuvaPeilattu); 
    269         
     289        tomaatti.AnimWalk = new Animation(vihollisenKuva); 
     290        //tomaatti.LeftWalkingAnimation = new Animation(vihollisenKuvaPeilattu); 
     291 
    270292        rajahdyksenTomaattiUhrit.Add(tomaatti); 
    271293 
     
    278300    void Seuraa(FollowerBrain aivot) 
    279301    { 
    280         aivot.Target = porkkana; 
     302        //aivot.Target = porkkana; 
    281303    } 
    282304 
     
    293315        tomaatti2.Weapon.X = 0; 
    294316        tomaatti2.Weapon.ProjectileCollision = AmmusOsui; 
    295          
     317 
    296318        Timer ampumaAjastin = new Timer(); 
    297319        ampumaAjastin.Interval = 2.0; 
    298         ampumaAjastin.Trigger += vihollinenAmpuu; 
     320        ampumaAjastin.Timeout += delegate { vihollinenAmpuu(ampumaAjastin); }; 
    299321        ampumaAjastin.Tag = tomaatti2; 
    300322        ampumaAjastin.Start(); 
    301323 
    302         tomaatti2.RightWalkingAnimation = new Animation(vihollisenKuva); 
    303         tomaatti2.LeftWalkingAnimation = new Animation(vihollisenKuvaPeilattu); 
     324        tomaatti2.AnimWalk = new Animation(vihollisenKuva); 
     325        //tomaatti2.LeftWalkingAnimation = new Animation(vihollisenKuvaPeilattu); 
    304326 
    305327        rajahdyksenTomaattiUhrit.Add(tomaatti2); 
     
    307329        return tomaatti2; 
    308330    } 
    309      
     331 
    310332    void lisaaNappaimet() 
    311333    { 
    312         Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Näytä ohjeet"); 
    313         Keyboard.Listen(Key.Escape, ButtonState.Pressed, SeuraavaKentta, "Poistu valikkoon", 0); 
    314         Keyboard.Listen(Key.A, ButtonState.Pressed, cheatIkkuna, "Avaa cheatikkuna"); 
    315  
    316         Keyboard.Listen(Key.Left, ButtonState.Down, liikuta, "Pelaaja liikkuu vasemmalle", porkkana, -nopeus); 
    317         Keyboard.Listen(Key.Right, ButtonState.Down, liikuta, "Pelaaja liikkuu vasemmalle", porkkana, nopeus); 
    318         Keyboard.Listen(Key.Up, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", porkkana, hyppyNopeus); 
    319  
    320         Keyboard.Listen(Key.Space, ButtonState.Down, AmmuAseella, "Ammu rynnäkkökiväärillä"); 
    321         Keyboard.Listen(Key.W, ButtonState.Down, TahtaaYlos, "Tähtää ylös rynnäkkökiväärillä"); 
    322         Keyboard.Listen(Key.S, ButtonState.Down, TahtaaAlas, "Tähtää alas rynnäkkökiväärillä"); 
    323         Keyboard.Listen(Key.Q, ButtonState.Pressed, HeitaKranaatti, "Heitä kranaatti"); 
    324  
    325         ControllerOne.Listen(Button.Start, ButtonState.Pressed, SeuraavaKentta, "Poistu valikkoon", 0); 
    326         ControllerOne.Listen(Button.Back, ButtonState.Pressed, ShowControlHelp, "Näytä ohjeet"); 
    327         
    328         ControllerOne.ListenAnalog(AnalogControl.LeftStick, 0.01, liikutaTatilla, "Pelaaja liikkuu", porkkana); 
    329         ControllerOne.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", porkkana, hyppyNopeus); 
    330  
    331         ControllerOne.Listen(Button.RightTrigger, ButtonState.Down, AmmuAseella, "Ammu rynnäkkökiväärillä"); 
    332         ControllerOne.ListenAnalog(AnalogControl.RightStick, 0.01, tahtaaTatilla, "Tähtää rynnäkkökiväärillä"); 
    333         ControllerOne.Listen(Button.LeftTrigger, ButtonState.Pressed, HeitaKranaatti, "Heitä kranaatti");    
     334        Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Show buttons"); 
     335        Keyboard.Listen(Key.Escape, ButtonState.Pressed, Lopetuskysely, "Exit"); 
     336        Keyboard.Listen(Key.A, ButtonState.Pressed, cheatIkkuna, "Open cheatwindow"); 
     337 
     338        Keyboard.Listen(Key.Left, ButtonState.Down, liikuta, "Player moves left", porkkana, -nopeus); 
     339        Keyboard.Listen(Key.Right, ButtonState.Down, liikuta, "Player moves right", porkkana, nopeus); 
     340        Keyboard.Listen(Key.Up, ButtonState.Pressed, hyppaa, "Player jumps", porkkana, hyppyNopeus); 
     341 
     342        Keyboard.Listen(Key.Space, ButtonState.Down, AmmuAseella, "Shoot"); 
     343        Keyboard.Listen(Key.W, ButtonState.Down, TahtaaYlos, "Aim up"); 
     344        Keyboard.Listen(Key.S, ButtonState.Down, TahtaaAlas, "Aim down"); 
     345        Keyboard.Listen(Key.Q, ButtonState.Pressed, HeitaKranaatti, "Throw a grenade"); 
     346 
     347        ControllerOne.Listen(Button.Start, ButtonState.Pressed, Lopetuskysely, "Exit"); 
     348        ControllerOne.Listen(Button.Back, ButtonState.Pressed, ShowControlHelp, "Show buttons"); 
     349 
     350        ControllerOne.ListenAnalog(AnalogControl.LeftStick, 0.01, liikutaTatilla, "Player moves", porkkana); 
     351        ControllerOne.Listen(Button.A, ButtonState.Pressed, hyppaa, "Player jumps", porkkana, hyppyNopeus); 
     352 
     353        ControllerOne.Listen(Button.RightTrigger, ButtonState.Down, AmmuAseella, "Shoot"); 
     354        ControllerOne.ListenAnalog(AnalogControl.RightStick, 0.01, tahtaaTatilla, "Aim"); 
     355        ControllerOne.Listen(Button.LeftTrigger, ButtonState.Pressed, HeitaKranaatti, "Throw a grenade"); 
    334356    } 
    335357 
     
    347369    { 
    348370        Vector tatinAsento = tatintila.StateVector; 
    349         hahmo.Walk(tatinAsento.X*nopeus); 
     371        hahmo.Walk(tatinAsento.X * nopeus); 
    350372 
    351373    } 
     
    362384        } 
    363385    } 
    364      
     386 
    365387    void TahtaaYlos() 
    366388    { 
     
    388410        } 
    389411    } 
    390      
     412 
    391413    void tahtaaTatilla(AnalogState toisentatintila) 
    392414    { 
    393             Vector toisentatinAsento = toisentatintila.StateVector; 
    394             porkkana.Weapon.Angle = toisentatinAsento.Angle; 
    395     }     
    396      
     415        Vector toisentatinAsento = toisentatintila.StateVector; 
     416        porkkana.Weapon.Angle = toisentatinAsento.Angle; 
     417    } 
     418 
    397419    void AmmusOsui(PhysicsObject ammus, PhysicsObject kohde) 
    398420    { 
     
    414436        if (kohde == porkkana) 
    415437        { 
    416             ammus2.Destroy();; 
    417              
     438            ammus2.Destroy(); ; 
     439 
    418440            //porkkana.IgnoresCollisionResponse = true; 
    419441 
     
    430452        } 
    431453    } 
    432      
     454 
    433455    void LopetaPeli() 
    434456    { 
    435         HighScoreWindow topIkkuna = new HighScoreWindow("Call of garden: Modern carrotfare", 
     457        HighScoreWindow topIkkuna = new HighScoreWindow( 
    436458            "Parhaat pisteet", 
    437459            "Onneksi olkoon, pääsit listalle pisteillä %p! Syötä nimesi:", 
    438460            topLista, pistelaskuri.Value); 
    439461        topIkkuna.Closed += TallennaPisteet; 
    440         Add(topIkkuna);        
    441     } 
    442      
     462        Add(topIkkuna); 
     463 
     464    } 
     465 
    443466    void LuoHautakivi() 
    444467    { 
     
    461484        MediaPlayer.Play("ketshup"); 
    462485 
    463         pistelaskuri.Value += 100;  
     486        pistelaskuri.Value += 100; 
    464487 
    465488        kuolluttomaatti = new PhysicsObject(50, 50); 
     
    484507    { 
    485508        if (kohde == porkkana) 
    486         {           
     509        { 
    487510            tomaatti.Stop(); 
    488511            tomaatti.Brain.Active = false; 
     
    499522 
    500523            LopetaPeli(); 
    501        
     524 
    502525        } 
    503526 
     
    512535        panosnaytto.Y = Screen.Top - 100; 
    513536        panosnaytto.TextColor = Color.Red; 
    514          
     537 
    515538        panosnaytto.BindTo(porkkana.Weapon.Ammo); 
    516539        Add(panosnaytto); 
     
    521544        panosteksti.TextColor = Color.Red; 
    522545 
    523         Add(panosteksti);   
    524     } 
    525      
     546        Add(panosteksti); 
     547    } 
     548 
    526549    void LuoPisteLaskuri() 
    527550    { 
    528551        pistelaskuri = new IntMeter(0); 
    529          
     552 
    530553        Label pistenaytto = new Label(); 
    531554        pistenaytto.X = Screen.Right - 100; 
     
    546569    PhysicsObject LuoLipas() 
    547570    { 
    548         lipas = new PhysicsObject(20, 20); 
     571        lipas = new PhysicsObject(30, 30); 
    549572        lipas.Mass = 2.0; 
    550573 
     
    561584    void LuoLipas(double x, double y) 
    562585    { 
    563         LuoLipas().Position = new Vector(x,y); 
     586        LuoLipas().Position = new Vector(x, y); 
    564587    } 
    565588 
     
    568591        if (kohde.Tag.ToString() == "Lipas") 
    569592        { 
    570             ((PlatformCharacter)porkkana).Weapon.Ammo.Value +=5; 
     593            ((PlatformCharacter)porkkana).Weapon.Ammo.Value += 5; 
    571594            kohde.Destroy(); 
    572595        } 
     
    576599            kohde.Destroy(); 
    577600        } 
    578          
     601 
    579602    } 
    580603 
    581604    void HeitaKranaatti() 
    582605    { 
    583          
    584606        if (kranaattiLaskuri.Value > 0) 
    585607        { 
     
    588610            kranaatti.Mass = 1.0; 
    589611            kranaatti.ExplosionRadius = 100.0; 
    590              
     612 
    591613            kranaattiLaskuri.Value -= 1; 
    592614 
     
    610632            } 
    611633        } 
    612          
     634 
    613635        foreach (GameObject item in rajahdyksenPorkkanaUhri) 
    614636        { 
     
    616638            { 
    617639                elamat -= 50; 
    618                  
     640 
    619641                if (elamat < 1) 
    620642                { 
     
    628650 
    629651                    LopetaPeli(); 
    630        
    631                 }                 
     652 
     653                } 
    632654            } 
    633         }         
     655        } 
    634656    } 
    635657 
     
    637659    { 
    638660        PlatformCharacter tomaatti2 = ampumaAjastin.Tag as PlatformCharacter; 
    639          
     661 
    640662        Vector ampumaSuunta = (porkkana.Position - tomaatti2.Position).Normalize(); 
    641663        tomaatti2.Weapon.Angle = ampumaSuunta.Angle; 
    642664 
    643665        PhysicsObject vihu = ampumaAjastin.Tag as PhysicsObject; 
    644          
     666 
    645667        PhysicsObject ammus2 = tomaatti2.Weapon.Shoot(); 
    646          
     668 
    647669        if (ammus2 != null) 
    648670        { 
     
    653675    } 
    654676 
    655     void LuoKranaattiLaskuri () 
    656     { 
    657         kranaattiLaskuri= new IntMeter(3); 
     677    void LuoKranaattiLaskuri() 
     678    { 
     679        kranaattiLaskuri = new IntMeter(3); 
    658680        kranaattiLaskuri.MinValue = 0; 
    659681        Label kranaattiNaytto = new Label(); 
     
    662684        kranaattiNaytto.TextColor = Color.Red; 
    663685 
    664                 
     686 
    665687        kranaattiNaytto.BindTo(kranaattiLaskuri); 
    666         Add( kranaattiNaytto); 
     688        Add(kranaattiNaytto); 
    667689 
    668690        Label kranaattiteksti = new Label("Kranaatteja jäljellä: "); 
     
    671693        kranaattiteksti.TextColor = Color.Red; 
    672694 
    673         Add(kranaattiteksti);   
     695        Add(kranaattiteksti); 
    674696    } 
    675697 
    676698    PhysicsObject LuoKranaatti() 
    677699    { 
    678         uusikranaatti = new PhysicsObject(40, 20); 
     700        PhysicsObject uusikranaatti = new PhysicsObject(40, 20); 
    679701        uusikranaatti.Mass = 2.0; 
    680  
    681702        uusikranaatti.Image = uudenKranaatinKuva; 
    682  
    683703        uusikranaatti.IgnoresExplosions = true; 
    684  
    685704        uusikranaatti.Tag = "Kranaatti"; 
    686  
    687705        Add(uusikranaatti); 
    688706        return uusikranaatti; 
     
    706724    void MaaliinOsuma(PhysicsObject maali, PhysicsObject kohde) 
    707725    { 
    708             if (kentanNro == 1 ||  kohde == porkkana || maali.Tag == maali) 
    709             { 
    710                 pistelaskuri.Value += 500; 
    711                 kentanNro = 2; 
    712                 SeuraavaKentta(kentanNro); 
    713                 kentanNro = 2; 
    714             } 
    715  
    716             else if (kentanNro == 2 || kohde == porkkana || maali.Tag == maali) 
    717             { 
    718                 pistelaskuri.Value += 500; 
    719                 kentanNro = 3; 
    720                 maali.Destroy(); 
    721                 SeuraavaKentta(kentanNro); 
    722                 kentanNro = 3; 
    723             }       
     726        if (kentanNro == 1 && kohde == porkkana && maali.Tag == "maali") 
     727        { 
     728            pistelaskuri.Value += 500; 
     729            kentanNro = 2; 
     730            SeuraavaKentta(kentanNro); 
     731            kentanNro = 2; 
     732        } 
     733 
     734        else if (kentanNro == 2 && kohde == porkkana && maali.Tag == "maali") 
     735        { 
     736            pistelaskuri.Value += 500; 
     737            kentanNro = 3; 
     738            maali.Destroy(); 
     739            SeuraavaKentta(kentanNro); 
     740            kentanNro = 3; 
     741        } 
    724742    } 
    725743 
     
    729747 
    730748        MediaPlayer.Stop(); 
    731          
    732         //Label lopetus = new Label(); 
    733         //lopetus.SizeMode = TextSizeMode.Wrapped; 
    734         //lopetus.Width = Screen.Width -100; 
    735         //lopetus.Height = Screen.Height; 
    736         //lopetus.TextColor = Color.Orange; 
    737         //lopetus.Font = Font.DefaultLargeBold; 
    738         //Add(lopetus); 
    739         //lopetus.Text = "                                  Peli päättyi.\n" + 
    740         //"Paina Escape/Start mennäksesi valikkoon tai Enter/A aloittaaksesi alusta."; 
    741  
    742         //ClearControls(); 
    743749 
    744750        ClearAll(); 
    745          
    746         Level.Background.Image = peliPaattyi; 
    747         Level.Background.Width = Screen.Width; 
    748         Level.Background.Height = Screen.Height; 
    749          
    750         Keyboard.Listen(Key.Enter, ButtonState.Pressed, SeuraavaKentta, "Aloita alusta", 1); 
    751          
    752         Keyboard.Listen(Key.Escape, ButtonState.Pressed, SeuraavaKentta, "Poistu valikkoon", 0); 
    753  
    754         ControllerOne.Listen(Button.Start, ButtonState.Down, SeuraavaKentta, "Poistu valikkoon", 0); 
    755  
    756         ControllerOne.Listen(Button.A, ButtonState.Pressed, SeuraavaKentta, "Aloita alusta", 1); 
     751 
     752        kentanNro = 0; 
     753        SeuraavaKentta(kentanNro); 
    757754 
    758755    } 
     
    769766    void RahaanTormays(PhysicsObject raha, PhysicsObject kohde) 
    770767    { 
    771         if(kohde == porkkana) 
     768        if (kohde == porkkana) 
    772769        { 
    773770            pistelaskuri.Value += 100; 
     
    777774 
    778775    void TeeKentta1() 
    779     {        
     776    { 
    780777        MediaPlayer.Stop(); 
    781          
     778 
    782779        TileMap kentta = TileMap.FromFile("kentta1.txt"); 
    783780        kentta['#'] = lisaaTaso; 
     
    797794 
    798795        Gravity = new Vector(0, -1000); 
    799          
     796 
    800797        LuoPanosLaskuri(); 
    801798        LuoPisteLaskuri(); 
     
    811808 
    812809    void TeeKentta2() 
    813     {         
    814          
    815         MediaPlayer.Stop();        
    816          
     810    { 
     811 
     812        MediaPlayer.Stop(); 
     813 
    817814        TileMap kentta = TileMap.FromFile("kentta2.txt"); 
    818815        kentta['#'] = lisaaTaso; 
     
    831828 
    832829        Gravity = new Vector(0, -1000); 
    833          
     830 
    834831        LuoPanosLaskuri(); 
    835832        LuoPisteLaskuri(); 
     
    840837        Camera.ZoomFactor = 2.0; 
    841838        Camera.StayInLevel = true; 
    842          
     839 
    843840        lisaaNappaimet(); 
    844841    } 
    845      
     842 
    846843    //void TeeKentta3() 
    847844    //{ 
     
    880877    void cheatIkkuna() 
    881878    { 
    882         InputWindow cheatIkkuna = new InputWindow("Cheatikkuna", "Anna cheatkoodi"); 
     879        InputWindow cheatIkkuna = new InputWindow(300, 200, "Enter cheat"); 
     880         
    883881        cheatIkkuna.TextEntered += ProcessInput; 
    884882        Add(cheatIkkuna); 
     
    894892            kentanNro = 1; 
    895893            SeuraavaKentta(kentanNro); 
    896             MessageDisplay.Add("Laserase aktivoitu!"); 
     894            MessageDisplay.Add("Lasergun activated!"); 
    897895 
    898896        } 
     
    915913            MessageDisplay.Add("Väärä koodi!"); 
    916914        } 
    917    
    918     } 
    919 }              
     915 
     916    } 
     917 
     918    void PainettiinValikonNappia(int valinta) 
     919    { 
     920        switch (valinta) 
     921        { 
     922            case 0: 
     923 
     924                AloitaPeli(); 
     925 
     926                break; 
     927            case 1: 
     928 
     929                Keyboard.Listen(Key.Enter, ButtonState.Pressed, Valikko, "Return to main menu"); 
     930 
     931                HighScoreWindow topIkkuna = new HighScoreWindow( 
     932                "Highscores", 
     933                topLista); 
     934                topIkkuna.Closed += TallennaPisteet; 
     935 
     936                Add(topIkkuna); 
     937 
     938                break; 
     939 
     940            case 2: 
     941 
     942                lisaaNappaimet(); 
     943                ShowControlHelp(); 
     944                ClearControls(); 
     945                Valikko(); 
     946 
     947                break; 
     948 
     949            case 3: 
     950 
     951                System.Diagnostics.Process.Start("www.carrotpowered.weebly.com"); 
     952                Valikko(); 
     953 
     954                break; 
     955         
     956            case 4: 
     957 
     958                MultiSelectWindow alkuValikko = new MultiSelectWindow("Options", 
     959                "Music", "Delete all files", "Cancel"); 
     960                Add(alkuValikko); 
     961 
     962                alkuValikko.AddItemHandler(0, null); 
     963                alkuValikko.AddItemHandler(1, null); 
     964                alkuValikko.AddItemHandler(2, Valikko); 
     965                alkuValikko.DefaultCancel = 2; 
     966 
     967                break; 
     968             
     969            case 5: 
     970 
     971                Exit(); 
     972 
     973                break; 
     974        } 
     975    } 
     976 
     977    void Lopetuskysely() 
     978    { 
     979        MultiSelectWindow Lopetuskysely = new MultiSelectWindow("Do you want to exit?", 
     980"No", "Yes"); 
     981        Add(Lopetuskysely); 
     982 
     983        Lopetuskysely.AddItemHandler(0, Valikko); 
     984        Lopetuskysely.AddItemHandler(1, Tallennuskysely); 
     985 
     986        Lopetuskysely.Color = Color.Transparent; 
     987        Lopetuskysely.SetButtonColor(Color.Gray); 
     988        Lopetuskysely.SelectionColor = Color.LimeGreen; 
     989 
     990        Lopetuskysely.DefaultCancel = 0; 
     991    } 
     992     
     993    void Tallennuskysely() 
     994    { 
     995        MultiSelectWindow Tallennuskysely = new MultiSelectWindow("Do you want to save?", 
     996"Yes", "No"); 
     997        Add(Tallennuskysely); 
     998 
     999        Tallennuskysely.AddItemHandler(0, TallennaPeli); 
     1000        Tallennuskysely.AddItemHandler(1, Valikko); 
     1001 
     1002        Tallennuskysely.Color = Color.Transparent; 
     1003        Tallennuskysely.SetButtonColor(Color.Gray); 
     1004        Tallennuskysely.SelectionColor = Color.LimeGreen; 
     1005         
     1006        Tallennuskysely.DefaultCancel = -1; 
     1007    } 
     1008 
     1009    void TallennaPeli() 
     1010    { 
     1011        SaveGame("savegame.xml"); 
     1012        Valikko(); 
     1013    } 
     1014 
     1015    void AloitaPeli() 
     1016    { 
     1017        MultiSelectWindow pelimuoto = new MultiSelectWindow("", 
     1018"Start a new game", "Load game", "Cancel"); 
     1019        Add(pelimuoto); 
     1020 
     1021        pelimuoto.AddItemHandler(0, AloitaUusiPeli); 
     1022        pelimuoto.AddItemHandler(1, AloitaTallennettuPeli); 
     1023        pelimuoto.AddItemHandler(2, Exit); 
     1024 
     1025        pelimuoto.Color = Color.Transparent; 
     1026        pelimuoto.SetButtonColor(Color.Gray); 
     1027        pelimuoto.SelectionColor = Color.LimeGreen; 
     1028 
     1029        pelimuoto.DefaultCancel = 2; 
     1030    } 
     1031 
     1032    void AloitaUusiPeli() 
     1033    { 
     1034        kentanNro = 1; 
     1035        SeuraavaKentta(kentanNro); 
     1036    } 
     1037 
     1038    void AloitaTallennettuPeli() 
     1039    { 
     1040        if (DataStorage.Exists("savegame.xml")) 
     1041        { 
     1042            LoadGame("savegame.xml"); 
     1043            peliladattu = true; 
     1044            SeuraavaKentta(kentanNro); 
     1045        } 
     1046        else 
     1047        { 
     1048        MultiSelectWindow LatausEpäonnistui = new MultiSelectWindow("Game loading failed!", 
     1049"Start a new game", "Retry", "Cancel"); 
     1050        Add(LatausEpäonnistui); 
     1051 
     1052        LatausEpäonnistui.AddItemHandler(0, AloitaUusiPeli); 
     1053        LatausEpäonnistui.AddItemHandler(1, AloitaTallennettuPeli); 
     1054        LatausEpäonnistui.AddItemHandler(2, Valikko); 
     1055 
     1056        LatausEpäonnistui.Color = Color.Red; 
     1057        LatausEpäonnistui.SetButtonColor(Color.Gray); 
     1058        LatausEpäonnistui.SelectionColor = Color.LimeGreen; 
     1059 
     1060        LatausEpäonnistui.DefaultCancel = 2; 
     1061        } 
     1062    } 
     1063} 
  • 2011/24/LauriK/Call of garden Modern carrotfare 2/Call of garden Modern carrotfare 2/kentta1.txt

    r2445 r3845  
    44                                   K      
    55                                   K      
    6                                    K        
     6              M                     K        
    77              K                    K        
    88             K        L L   E  T   K       
     
    1010           K                       K    
    1111          K                        K     
    12          K                         K    
     12        LK                         K    
    1313        K                          K    
    14        K                           K   
    15 N     K       E E  E E E E E E  E   M 
     14  N    K                           K   
     15      K       E E  E E E E E E  E    
    1616###################################### 
  • 2011/24/LauriK/Call of garden Modern carrotfare 2/Call of garden Modern carrotfare 2/kentta2.txt

    r2105 r3845  
    99 
    1010 
    11                         K 
    12 N   ##                  TK                                          
     11  N                     K 
     12    ##                  TK                                          
    1313###############K       K########################################### 
    1414KKKKKKKKKKKKKKKKK       KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK 
     15 
    1516E            AL                             E    LALALALALALALALALK 
    1617KKKKKKKKKKKKKKKKKKKKKKKK  KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK 
    1718KKKKKKKKKKKKKKKKKKKKKKKKK        K KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK 
    1819KKKKKKKKKKKKKKKKKKKKKKKKKK    K   K KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK 
     20 
    1921KKKKKKKKKKKKKKKKKKKKKKKKKKK   K      L             E      E       K 
    2022KKKKKKKKKKKKKKKKKKKKKKKKKKKK  LKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK   K 
     
    2224KKKKKKKKKKKKKKKKKKKKKKKKKKKKKK   KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK 
    2325KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK   KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK 
     26 
    2427KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK              EEEEEEEEEEEEEEEEEEEEK 
    2528KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK 
  • 2011/24/LauriK/Call of garden Modern carrotfare 2/Call of garden Modern carrotfare 2Content/Call of garden Modern carrotfare 2Content.contentproj

    r2447 r3845  
    7171  </ItemGroup> 
    7272  <ItemGroup> 
    73     <Compile Include="Lipas2.png"> 
    74       <Name>Lipas2</Name> 
    75       <Importer>TextureImporter</Importer> 
    76       <Processor>TextureProcessor</Processor> 
    77     </Compile> 
    78   </ItemGroup> 
    79   <ItemGroup> 
    8073    <Compile Include="rajahdys.png"> 
    8174      <Name>rajahdys</Name> 
    82       <Importer>TextureImporter</Importer> 
    83       <Processor>TextureProcessor</Processor> 
    84     </Compile> 
    85   </ItemGroup> 
    86   <ItemGroup> 
    87     <Compile Include="ydinpommi.png"> 
    88       <Name>ydinpommi</Name> 
    8975      <Importer>TextureImporter</Importer> 
    9076      <Processor>TextureProcessor</Processor> 
     
    176162  </ItemGroup> 
    177163  <ItemGroup> 
    178     <Compile Include="alkuvalikko.png"> 
    179       <Name>alkuvalikko</Name> 
     164    <Compile Include="pelipaattyi.png"> 
     165      <Name>pelipaattyi</Name> 
    180166      <Importer>TextureImporter</Importer> 
    181167      <Processor>TextureProcessor</Processor> 
     
    183169  </ItemGroup> 
    184170  <ItemGroup> 
    185     <Compile Include="pelipaattyi.png"> 
    186       <Name>pelipaattyi</Name> 
     171    <Compile Include="ammo_can.png"> 
     172      <Name>ammo_can</Name> 
     173      <Importer>TextureImporter</Importer> 
     174      <Processor>TextureProcessor</Processor> 
     175    </Compile> 
     176  </ItemGroup> 
     177  <ItemGroup> 
     178    <Compile Include="kranu.png"> 
     179      <Name>kranu</Name> 
     180      <Importer>TextureImporter</Importer> 
     181      <Processor>TextureProcessor</Processor> 
     182    </Compile> 
     183  </ItemGroup> 
     184  <ItemGroup> 
     185    <Compile Include="taustakuva.jpg"> 
     186      <Name>taustakuva</Name> 
    187187      <Importer>TextureImporter</Importer> 
    188188      <Processor>TextureProcessor</Processor> 
Note: See TracChangeset for help on using the changeset viewer.