Changeset 2900


Ignore:
Timestamp:
2012-06-10 19:49:33 (11 years ago)
Author:
anjuroys
Message:

Kartanvalinta ja komboa peräkkäisistä voitoista,Nyt ilmoittaa kun voitat,pistemaksimin säätö(Pistemäärä josta voittaa)combo = Bonuspisteet

File:
1 edited

Legend:

Unmodified
Added
Removed
  • 2012/23/AnttiR/From above/FysiikkaPeli2/FysiikkaPeli2/FromAbove.cs

    r2885 r2900  
    1818    public bool Recoil = false; 
    1919    public double liikkumisnopeus; 
     20    public DoubleMeter Pisteputki; 
    2021    public Explosion Viimeisinrajahdus = null; 
    2122    public double Ampumisnopeus; 
     23    public double Combo = 1; 
    2224    public String Asekuva; 
    2325    public string Ase; 
     
    3335        Ammusmittari = new DoubleMeter(250, 0, 250); 
    3436        Pistemittari = new DoubleMeter(0, 0, 3000); 
     37        Pisteputki = new DoubleMeter(0, 0, 10); 
    3538        Ampumisnopeus = 512; 
    3639        Ase = "Heavy"; 
     
    4447public class FromAbove : PhysicsGame 
    4548{ 
     49    //Mitä pitää vielä tehdä:(Muistutus itselleni!: 
     50    //Aseet:M16,Hammer Kranaattikonekivaari 
     51    //Pelimuodot:Hold the territory 
     52    //Pelimuodot:Wheel of fortune(Saa tappo 5 satunnaisgeneroidulla aseella) 
     53    //Kartan vaihtaminen (Ei onnistunut) 
     54    //Muut:Pistemaksimista pitäisi tulla viesti 
     55    //Paremmat grafiikat 
     56    //Aseiden tasapainotusta 
     57    //Maksimipanokset (Palaavat joka 1min Maksimiksi) 
     58    //Pistecombo 3 tuhoamisesta tuhoutumatta 
    4659    Pelaaja pallo; 
    4760    Pelaaja pallo2; 
     61    
    4862    PhysicsObject alareuna; 
    4963    GameObject Sinikuva; 
     
    5165    GameObject Text; 
    5266    GameObject Text2; 
    53  
     67    PhysicsObject m; 
     68    PhysicsObject n; 
     69    PhysicsObject n2; 
     70    PhysicsObject m2;  
    5471    BarGauge elppiPalkki = new BarGauge(50, 150); 
    5572    BarGauge elppiPalkki2 = new BarGauge(50, 150); 
     
    7996    Image MGH = LoadImage("Dragunov"); 
    8097    Image Spas = LoadImage("Spas12"); 
     98     bool Kenttalad; 
     99       
    81100    public override void Begin() 
    82     { 
    83  
     101     { 
     102         Kenttalad = false; 
     103        
    84104 
    85105 
     
    87107        //Kirjoita ohjelmakoodisi tähän 
    88108 
    89          
    90  
    91         pallo = Luopallo(Color.Blue, Level.Left + 20, Level.Top - 20); 
    92         pallo2 = Luopallo(Color.Red, Level.Right - 20, Level.Top - 20); 
     109 
     110        pallo = Luopallo(Color.Blue, Level.Left + 20, Level.Top - 50); 
     111        pallo2 = Luopallo(Color.Red, Level.Right - 20, Level.Top - 50); 
    93112        pallo.Image = sPallo; 
    94113        pallo2.Image = pPallo; 
     
    98117 
    99118 
    100         Luokentta(); 
    101         Luopelikentta(); 
     119        Luokentta();        
    102120        Liikkeet(); 
    103121        Luoajastin(); 
     
    105123 
    106124    } 
     125 
    107126    Pelaaja Luopallo(Color vari, double x, double y) 
    108127    { 
    109128        Pelaaja pallo = new Pelaaja(25, 25); 
    110129        pallo.elamaMittari.LowerLimit += delegate { Pelaajakuoli(pallo); }; 
     130        pallo.Pistemittari.UpperLimit += delegate { Maxpointsreached(pallo); }; 
    111131        pallo.Shape = Shape.Circle; 
    112132        pallo.Restitution = 0.0; 
     
    420440 
    421441            }); 
    422  
    423             //2 haulia lisää 
    424  
    425442        } 
    426443        AddCollisionHandler(ammus, "pallo", delegate(PhysicsObject tormaaja, PhysicsObject kohde) 
     
    428445            Pelaaja kohdepelaaja = (Pelaaja)kohde; 
    429446            kohdepelaaja.elamaMittari.Value -= vahinko; 
    430             pallo.Pistemittari.Value += vahinko; 
    431  
     447            pallo.Pistemittari.Value += vahinko * pallo.Combo; 
    432448        }); 
    433449    } 
     
    545561        LuoRseina(40, 50, 350, 205); 
    546562    } 
     563    void Luopelikentta2() 
     564    {        //Middle; Pelikartta esteet: 
     565        //Normaalit seinät 
     566        Luoseina(1000, 50, 0, 400); 
     567        Luoseina(50, 50, 475, 150); 
     568        Luoseina(70, 50, 380, 150); 
     569        Luoseina(40, 150, 365, 100); 
     570        Luoseina(300, 40, 195, 45); 
     571        Luoseina(40, 150, 135, 50); 
     572        Luoseina(40, 100, 135,215); 
     573        Luoseina(100, 40, 105, 245); 
     574        Luoseina(100, 40, -35, 245); 
     575        Luoseina(40, 100, -65, 215); 
     576        Luoseina(100, 40, -35, 45); 
     577        Luoseina(40, 100, -65, 75); 
     578        Luoseina(100, 40, -105, 105); 
     579        Luoseina(150, 40, -275, 105); 
     580        Luoseina(40, 140, -350, 155); 
     581        Luoseina(40, 140, -350, 345); 
     582        Luoseina(40, 130, -350, -10); 
     583        Luoseina(40, 30, -350, -130); 
     584        Luoseina(100, 100, -240, -30); 
     585        Luoseina(80, 80, -110, -90); 
     586        Luoseina(80, 80, 30, -60); 
     587        Luoseina(180, 90, 300, -75); 
     588        Luoseina(100, 110, 250, 160); 
     589        Luoseina(90, 80, -435, 160); 
     590    } 
    547591    //Valikot!!!! 
    548592    void Kutsuvalikko() 
    549593    { 
    550         MultiSelectWindow alkuv = new MultiSelectWindow("Welcome", "Start game/Continue", "Set game", "Player 1 settings", "Player 2 settings", "Quit"); 
     594        MultiSelectWindow alkuv = new MultiSelectWindow("Welcome", "Start game/Continue", "Game settings", "Player 1 weapon", "Player 2 weapon","Under work", "Quit"); 
    551595        alkuv.ItemSelected += PainettiinValikonNappia; 
    552596        alkuv.Color = Color.MediumBlue; 
     
    562606            case 1: 
    563607                Gasetukset(); 
    564                 //Erikoisasetukset,"Modit" 
     608                //Kartta 
    565609                break; 
    566610            case 2: 
     
    573617                break; 
    574618            case 4: 
     619                if (m != null) 
     620                    m.Destroy(); 
     621                if (n != null) 
     622                    n.Destroy(); 
     623                Kutsuvalikko(); 
     624                break; 
     625            case 5: 
    575626                Exit(); 
    576627                break; 
     
    663714    void Gasetukset() 
    664715    { 
    665         MultiSelectWindow a1 = new MultiSelectWindow("Special settings", 
    666               "Double moving speed", "Slow shots", "Back"); 
    667         a1.Color = Color.Yellow; 
     716        MultiSelectWindow a1 = new MultiSelectWindow("Maps (Doesnt reset)", 
     717              "Streets", "In the middle", "Back"); 
     718        a1.Color = Color.Azure; 
    668719        a1.ItemSelected += PVN3; 
    669720        Add(a1); 
     
    671722    void PVN3(int Valinta) 
    672723    { 
     724        if (Kenttalad == true) return; 
     725        //Estaa Kenttien synnyn paallekkain 
     726             
    673727        switch (Valinta) 
    674728        { 
    675729            case 0: 
    676                 //2x vauhti 
    677                 pallo.liikkumisnopeus = pallo.liikkumisnopeus * 2; 
    678                 pallo2.liikkumisnopeus = pallo2.liikkumisnopeus * 2; 
    679                 Kutsuvalikko(); 
    680                 break; 
    681             case 1: 
    682                 //Hitaat panokset 
    683                 pallo.Ampumisnopeus = pallo.Ampumisnopeus / 2; 
    684                 pallo2.Ampumisnopeus = pallo2.Ampumisnopeus / 2; 
    685                 Kutsuvalikko(); 
    686                 break; 
     730                //Kentta1 
     731                Luopelikentta(); 
     732                Kenttalad = true; 
     733                Gasetukset2(); 
     734                break; 
     735            case 1: 
     736                //Kentta2 
     737                 Luopelikentta2(); 
     738                 Kenttalad = true; 
     739                 Gasetukset2(); 
     740                 break; 
    687741            case 2: 
    688742                Kutsuvalikko(); 
    689743                //Palaa takaisin 
     744                break; 
     745        } 
     746 
     747 
     748    } 
     749    void Gasetukset2() 
     750    { 
     751        MultiSelectWindow a1 = new MultiSelectWindow("Gamemodes (Not out yet!)","Hold the territory", "DM", "Back"); 
     752        a1.Color = Color.Azure; 
     753        a1.ItemSelected += PVN32; 
     754        Add(a1); 
     755    } 
     756    void PVN32(int Valinta) 
     757    { 
     758        switch (Valinta) 
     759        { 
     760            case 0: 
     761                Gasetukset3(); 
     762                break; 
     763            case 1: 
     764                Gasetukset3(); 
     765                break; 
     766            case 2: 
     767                Kutsuvalikko(); 
     768                break; 
     769        } 
     770 
     771 
     772    } 
     773    void Gasetukset3() 
     774    { 
     775        MultiSelectWindow a1 = new MultiSelectWindow("Points limit","1000", "3000","5000","10000","15000", "Back"); 
     776        a1.Color = Color.Azure; 
     777        a1.ItemSelected += PVN33; 
     778        Add(a1); 
     779    } 
     780    void PVN33(int Valinta) 
     781    { 
     782        switch (Valinta) 
     783        { 
     784            case 0: 
     785                pallo.Pistemittari.MaxValue = 1000; 
     786                pallo2.Pistemittari.MaxValue = 1000; 
     787                Kutsuvalikko(); 
     788                break; 
     789            case 1: 
     790                pallo.Pistemittari.MaxValue = 3000; 
     791                pallo2.Pistemittari.MaxValue = 3000; 
     792                Kutsuvalikko(); 
     793                break; 
     794            case 2: 
     795                pallo.Pistemittari.MaxValue = 5000; 
     796                pallo2.Pistemittari.MaxValue = 5000; 
     797                Kutsuvalikko(); 
     798                break; 
     799            case 3: 
     800                pallo.Pistemittari.MaxValue = 10000; 
     801                pallo2.Pistemittari.MaxValue = 10000; 
     802                Kutsuvalikko(); 
     803                break; 
     804            case 4: 
     805                pallo.Pistemittari.MaxValue = 15000; 
     806                pallo2.Pistemittari.MaxValue = 15000; 
     807                Kutsuvalikko(); 
     808                break; 
     809            case 5: 
     810                Kutsuvalikko(); 
    690811                break; 
    691812        } 
     
    866987            case 0: 
    867988                pallo.Ase = "Dragunov"; 
    868                 pallo.Ampumisnopeus = 1224; 
     989                pallo.Ampumisnopeus = 1024; 
    869990                pallo.Ammusmittari.MaxValue = 11; 
    870991                pallo.Ammusmittari.Value = 11; 
     
    876997            case 1: 
    877998                pallo.Ase = "Barret"; 
    878                 pallo.Ampumisnopeus = 1224; 
     999                pallo.Ampumisnopeus = 1024; 
    8791000                pallo.Ammusmittari.MaxValue =1; 
    8801001                pallo.Ammusmittari.Value =1; 
     
    9031024            case 0: 
    9041025                pallo2.Ase = "Dragunov"; 
    905                 pallo2.Ampumisnopeus = 1224; 
     1026                pallo2.Ampumisnopeus = 1024; 
    9061027                pallo2.Ammusmittari.MaxValue = 11; 
    9071028                pallo2.Ammusmittari.Value = 11; 
     
    9131034            case 1: 
    9141035                pallo2.Ase = "Barret"; 
    915                 pallo2.Ampumisnopeus = 1224; 
     1036                pallo2.Ampumisnopeus = 1024; 
    9161037                pallo2.Ammusmittari.MaxValue = 1; 
    9171038                pallo2.Ammusmittari.Value = 1; 
     
    10001121    } 
    10011122    //Respaus 
    1002     void Pelaajakuoli(PhysicsObject p) 
    1003     { 
     1123    void Pelaajakuoli(Pelaaja p) 
     1124    { 
     1125        p.Pisteputki.Value = 0; 
     1126        p.Combo = 1; 
    10041127        if (p == pallo) 
    10051128        { 
     1129            pallo2.Combo = pallo2.Combo + 0.2; 
    10061130            Remove(pallo); 
    10071131            Timer.SingleShot(3.0, delegate 
    10081132            { 
    10091133                Add(pallo); 
    1010                 pallo.Position = new Vector(Level.Left + 20, Level.Top - 20); 
     1134                pallo.Position = new Vector(Level.Left + 20, Level.Top - 50); 
    10111135                pallo.turbomittari.Value = 100.0; 
    10121136                pallo.elamaMittari.Value = 1000.0; 
     
    10171141        if (p == pallo2) 
    10181142        { 
     1143            pallo.Combo = pallo2.Combo + 0.2; 
    10191144            Remove(pallo2); 
    10201145            Timer.SingleShot(3.0, delegate 
    10211146            { 
    10221147                Add(pallo2); 
    1023                 pallo2.Position = new Vector(Level.Right - 20, Level.Top - 20); 
     1148                pallo2.Position = new Vector(Level.Right - 20, Level.Top - 50); 
    10241149                pallo2.turbomittari.Value = 100.0; 
    10251150                pallo2.elamaMittari.Value = 1000.0; 
     
    10391164        Kransu.Position = Pallo.Position; 
    10401165        Kransu.IgnoresCollisionResponse = true; 
    1041         Kransu.Hit(Pallo.viimeisinSuunta*1.5); 
    1042         Timer.SingleShot(1.0, delegate 
     1166        Kransu.Hit(Pallo.viimeisinSuunta*1.4); 
     1167        Kransu.IgnoresExplosions = true; 
     1168        Timer.SingleShot(1.2, delegate 
    10431169        { 
    10441170            ExplosionSystem es = new ExplosionSystem(Boom, 80);            
     
    10571183        }); 
    10581184    } 
    1059  
    10601185    void Rajahdusosui(Pelaaja ampuja, IPhysicsObject kohde, Vector v, Explosion es) 
    10611186    { 
     
    10701195        ampuja.Pistemittari.Value += damage; 
    10711196    } 
    1072  
    10731197    void Tayta(Pelaaja p) 
    10741198    { 
     
    10931217         
    10941218    } 
    1095     void Kuvavaihtu() 
    1096     { 
     1219    void Maxpointsreached(Pelaaja pallow)     
     1220    { 
     1221        if (pallow == pallo2) 
     1222        { 
     1223            Label voitto = new Label("Punainen pallo  voittaa pelin"); 
     1224            voitto.Color = Color.White; 
     1225            voitto.MaximumLifetime = new TimeSpan(0, 0, 0, 0, 5000); 
     1226            voitto.Position = new Vector(0,100); 
     1227            voitto.Size = new Vector(300, 50); 
     1228            Add(voitto); 
     1229            Timer.SingleShot(5.0, delegate 
     1230            { 
     1231                pallo.Pistemittari.Value = 0; 
     1232                pallo2.Pistemittari.Value = 0; 
     1233                pallo.Combo = 1; 
     1234                pallo2.Combo = 1; 
     1235                Kutsuvalikko(); 
     1236            });  
     1237        } 
     1238        if (pallow == pallo) 
     1239        { 
     1240            Label voitto2 = new Label("Sininen pallo voitti pelin"); 
     1241            voitto2.Color = Color.White; 
     1242            voitto2.MaximumLifetime = new TimeSpan (0,0,0,0,5000); 
     1243            voitto2.Position = new Vector(0, 100); 
     1244            voitto2.Size = new Vector(300, 50); 
     1245            Add(voitto2); 
     1246            Timer.SingleShot(5.0, delegate 
     1247            { 
     1248                pallo.Pistemittari.Value = 0; 
     1249                pallo2.Pistemittari.Value = 0; 
     1250                pallo.Combo = 1; 
     1251                pallo2.Combo = 1; 
     1252                Kutsuvalikko(); 
     1253            }); 
     1254 
     1255        } 
    10971256    } 
    10981257} 
Note: See TracChangeset for help on using the changeset viewer.