Ignore:
Timestamp:
2017-08-01 11:50:18 (23 months ago)
Author:
nupeohje
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • 2017/31/TaavettiV/Trumpsimulator/Trumpsimulator/Trumpsimulator/Trumpsimulator.cs

    r9283 r9299  
    99class Pelihahmo : PlatformCharacter 
    1010{ 
    11     private IntMeter elamaLaskuri = new IntMeter(5, 0, 5); 
     11    private IntMeter elamaLaskuri = new IntMeter(10, 0, 10); 
    1212    public IntMeter ElamaLaskuri { get { return elamaLaskuri; } } 
    1313 
     
    4242public class Trumpsimulator : PhysicsGame 
    4343{ 
    44     const double nopeus = 2000; 
    45     const double hyppyNopeus = 7500; 
     44    const double nopeus = 500; 
     45    const double hyppyNopeus = 750; 
    4646    const int RUUDUN_KOKO = 40; 
    47     const double flynopeus= 50000; 
     47    const double flynopeus = 500; 
    4848 
    4949    Image meksikolainen = LoadImage("meksikolainen"); 
    5050    Pelihahmo pelaaja1; 
    5151 
    52     int kenttaNumero = 2; 
     52    int kenttaNumero = 1; 
    5353 
    5454    Image pelaajanKuva = LoadImage("trumphahmo"); 
     
    6868        Camera.StayInLevel = true; 
    6969    } 
     70 
    7071    void lisaaMaali(Vector paikka, double leveys, double korkeus) 
    7172    { 
     
    7576        maali.Position = paikka; 
    7677        Add(maali); 
    77     }    void AmmusOsui(PhysicsObject ammus, PhysicsObject kohde) 
     78    } 
     79 
     80    void AmmusOsui(PhysicsObject ammus, PhysicsObject kohde) 
    7881    { 
    7982        ammus.Destroy(); 
    80         if (kohde.Tag.Equals("m")) 
     83        if (kohde.Tag.Equals("A")) 
    8184        { 
    8285            //ShowMessageWindow("Osu"); 
    83              
     86 
    8487            (kohde as Asevihu).ElamaLaskuri.Value--; 
    8588        } 
     
    110113        kentta.SetTileMethod('K', lisaaMaali); 
    111114        kentta.SetTileMethod('A', Lisaaasevihu); 
     115        kentta.SetTileMethod('T', Lisaaasevihu); 
     116        kentta.SetTileMethod('H', Lisaahiekka); 
     117        kentta.SetTileMethod('R', LisaaRuoho); 
     118        kentta.SetTileMethod('Z', LisaaTalo); 
     119        kentta.SetTileMethod('M', LisaaMuuri); 
     120        kentta.SetTileMethod('G', LisaaTacoVihu); 
    112121        kentta.Execute(RUUDUN_KOKO, RUUDUN_KOKO); 
     122 
     123 
    113124        Level.CreateBorders(); 
    114125        Level.Background.CreateGradient(Color.White, Color.SeaGreen); 
     
    124135 
    125136    } 
    126         void LisaaTaso(Vector paikka, double leveys, double korkeus) 
    127     { 
    128         PhysicsObject taso = PhysicsObject.CreateStaticObject(leveys, korkeus); 
    129         taso.Position = paikka; 
    130         taso.Color = Color.Green; 
    131         Add(taso); 
    132     } 
     137    void LisaaTaso(Vector paikka, double leveys, double korkeus) 
     138    { 
     139        PhysicsObject taso = PhysicsObject.CreateStaticObject(leveys, korkeus); 
     140        taso.Position = paikka; 
     141        taso.Color = Color.Green; 
     142        Add(taso); 
     143    } 
     144 
     145    void LisaaMuuri(Vector paikka, double leveys, double korkeus) 
     146    { 
     147        PhysicsObject taso = PhysicsObject.CreateStaticObject(leveys, korkeus); 
     148        taso.Position = paikka; 
     149        taso.Color = Color.Green; 
     150        Add(taso); 
     151 
     152        taso.Image = LoadImage("muuri"); 
     153    } 
     154 
     155    void Lisaahiekka(Vector paikka, double leveys, double korkeus) 
     156    { 
     157        PhysicsObject taso = PhysicsObject.CreateStaticObject(leveys, korkeus); 
     158        taso.Position = paikka; 
     159 
     160        Add(taso); 
     161        taso.Color = Color.Green; 
     162        taso.Image = LoadImage("hiekka"); 
     163    } 
     164 
     165    void LisaaTalo(Vector paikka, double leveys, double korkeus) 
     166    { 
     167        PhysicsObject taso = PhysicsObject.CreateStaticObject(leveys, korkeus); 
     168        taso.Position = paikka; 
     169        taso.Color = Color.Green; 
     170        Add(taso); 
     171 
     172        taso.Image = LoadImage("talo"); 
     173 
     174    } 
     175 
     176 
     177    void LisaaRuoho(Vector paikka, double leveys, double korkeus) 
     178    { 
     179        PhysicsObject taso = PhysicsObject.CreateStaticObject(leveys, korkeus); 
     180        taso.Position = paikka; 
     181 
     182        Add(taso); 
     183        taso.Color = Color.Green; 
     184        taso.Image = LoadImage("ruoho"); 
     185    } 
     186     
     187 
    133188 
    134189    void Lisaadollar(Vector paikka, double leveys, double korkeus) 
     
    151206        AddCollisionHandler(pelaaja1, "dollar", Tormaadollar); 
    152207        Add(pelaaja1); 
     208 
     209        pelaaja1.Weapon = new AssaultRifle(30, 10); 
     210        pelaaja1.Weapon.ProjectileCollision = AmmusOsui; 
     211        pelaaja1.Weapon.InfiniteAmmo = true; 
     212        pelaaja1.Weapon.Power.DefaultValue = 400; 
     213        pelaaja1.Weapon.AmmoIgnoresGravity = true; 
     214        pelaaja1.Weapon.AmmoIgnoresExplosions = true; 
     215        pelaaja1.Weapon.CanHitOwner = false; 
     216        pelaaja1.Weapon.Image = LoadImage("alkuase"); 
     217        pelaaja1.Weapon.Y = 5; 
    153218    } 
    154219 
     
    157222        Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Näytä ohjeet"); 
    158223        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 
     224        Mouse.Listen(MouseButton.Left, ButtonState.Pressed, AmmuAseella, "Lopeta peli", pelaaja1); 
    159225 
    160226        Keyboard.Listen(Key.A, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, -nopeus); 
    161227        Keyboard.Listen(Key.D, ButtonState.Down, Liikuta, "Liikkuu oikealle", pelaaja1, nopeus); 
    162228        Keyboard.Listen(Key.W, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja1, hyppyNopeus); 
    163         Keyboard.Listen(Key.Space , ButtonState.Down, fly, "pelaaja lentää", pelaaja1, flynopeus); 
     229        Keyboard.Listen(Key.Space, ButtonState.Down, fly, "pelaaja lentää", pelaaja1, flynopeus); 
    164230        ControllerOne.Listen(Button.Back, ButtonState.Pressed, Exit, "Poistu pelistä"); 
    165231 
     
    191257    void Lisaaasevihu(Vector paikka, double leveys, double korkeus) 
    192258    { 
    193         PlatformCharacter asevihu = new PlatformCharacter(leveys * 0.9, korkeus * 0.9); 
     259        Asevihu asevihu = new Asevihu(leveys * 0.9, korkeus * 0.9); 
    194260        asevihu.Position = paikka; 
    195261        asevihu.Image = meksikolainen; 
     
    213279        aikaLaskuri.Start(); 
    214280    } 
     281 
     282    void LisaaTacoVihu(Vector paikka, double leveys, double korkeus) 
     283    { 
     284        Asevihu tacovihu = new Asevihu(leveys * 0.9, korkeus * 0.9); 
     285        tacovihu.Position = paikka; 
     286        tacovihu.Image = LoadImage("mexivotacoduude"); 
     287        Add(tacovihu); 
     288        tacovihu.Tag = "A"; 
     289 
     290        PlatformWandererBrain tasoAivot = new PlatformWandererBrain(); 
     291        tasoAivot.Speed = 100; 
     292 
     293        tasoAivot.FallsOffPlatforms = true; 
     294        tasoAivot.TriesToJump = true; 
     295 
     296        tacovihu.Brain = tasoAivot; 
     297 
     298        //tacovihu.Weapon = new AssaultRifle(30, 10); 
     299        //tacovihu.Weapon.ProjectileCollision = VihuAmmusOsui; 
     300 
     301        Timer aikaLaskuri = new Timer(); 
     302        aikaLaskuri.Interval = 0.2; 
     303        aikaLaskuri.Timeout += delegate 
     304        { 
     305            Grenade kranu = new Grenade(4.0); 
     306            kranu.Image = LoadImage("tacobom"); 
     307            tacovihu.Throw(kranu, Angle.FromDegrees(30), 10000); 
     308 
     309        }; 
     310        aikaLaskuri.Start(); 
     311    } 
     312 
    215313    void Tormaadollar(PhysicsObject hahmo, PhysicsObject dollar) 
    216314    { 
Note: See TracChangeset for help on using the changeset viewer.