Ignore:
Timestamp:
2017-08-01 14:47:45 (2 years ago)
Author:
npo17_89
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • 2017/31/LeoM/_/_/_/_.cs

    r9303 r9312  
    99public class _ : PhysicsGame 
    1010{ 
     11    AssaultRifle pelaajan1Ase; 
     12 
     13 
    1114    const double nopeus = 200; 
    1215    const double hyppyNopeus = 750; 
     
    1417 
    1518    PlatformCharacter pelaaja1; 
    16  
     19    Image palikankuva = LoadImage("palikka"); 
     20    Image ammuksenkuva = LoadImage("ammus"); 
    1721    Image pelaajanKuva = LoadImage("kissa"); 
    1822    Image tahtiKuva = LoadImage("tahti"); 
    1923    Image pizzaKuva = LoadImage("pizza"); 
     24    Image vihukuva = LoadImage("auto"); 
    2025    SoundEffect maaliAani = LoadSoundEffect("maali"); 
     26    private PlatformCharacter vihu; 
    2127 
    2228    public override void Begin() 
    2329    { 
    24      
     30 
     31    
    2532 
    2633        AloitaPeli(); 
     
    3542 
    3643        Camera.Follow(pelaaja1); 
    37         Camera.ZoomFactor = 0.2; 
     44        Camera.ZoomFactor = 3.5; 
    3845        Camera.StayInLevel = true; 
    3946    } 
     
    4552        kentta.SetTileMethod('n', LisaaPelaaja); 
    4653        kentta.SetTileMethod('p', LisaaPizza); 
     54        kentta.SetTileMethod('v', LisaaVihu); 
    4755        kentta.Execute(RUUDUN_KOKO, RUUDUN_KOKO); 
    4856        Level.CreateBorders(); 
     
    5462        PhysicsObject taso = PhysicsObject.CreateStaticObject(leveys, korkeus); 
    5563        taso.Position = paikka; 
    56         taso.Image = tahtiKuva; 
     64        taso.Image = palikankuva; 
    5765        Add(taso); 
    5866    } 
     
    7785    } 
    7886 
     87 
     88 
     89 
    7990    void LisaaPelaaja(Vector paikka, double leveys, double korkeus) 
    8091    { 
     
    8596        AddCollisionHandler(pelaaja1, "tahti", TormaaTahteen); 
    8697        AddCollisionHandler(pelaaja1, "pizza", TormaaPizzaan); 
     98         
    8799        Add(pelaaja1); 
    88     } 
    89  
    90     void LisaaNappaimet() 
     100        pelaajan1Ase = new AssaultRifle(30, 10); 
     101        pelaaja1.Weapon = pelaajan1Ase; 
     102        pelaajan1Ase.Ammo.Value = 100; 
     103        pelaaja1.Weapon.ProjectileCollision = AmmusOsui; 
     104        pelaajan1Ase.IsVisible = false; 
     105    } 
     106    void LisaaVihu(Vector paikka, double leveys, double korkeus) 
     107    { 
     108        vihu = new PlatformCharacter(leveys, korkeus); 
     109        vihu.Position = paikka; 
     110        vihu.Mass = 4.0; 
     111        vihu.Image = vihukuva; 
     112        AddCollisionHandler(vihu, pelaaja1); 
     113        vihu.Tag = "vihu"; 
     114        vihu.IgnoresCollisionResponse = false; 
     115        PlatformWandererBrain tasoAivot = new PlatformWandererBrain(); 
     116        tasoAivot.Speed = 100; 
     117        tasoAivot.JumpSpeed = 700; 
     118        tasoAivot.TriesToJump = true; 
     119        vihu.Brain = tasoAivot; 
     120        Add(vihu); 
     121    
     122    } 
     123 
     124    private void AddCollisionHandler(PlatformCharacter vihu, PlatformCharacter pelaaja1) 
     125    { 
     126         
     127    } 
     128 
     129    void AmmusOsui(PhysicsObject ammus, PhysicsObject kohde) 
     130    { 
     131        ammus.Destroy(); 
     132        if (kohde.Tag == "vihu") 
     133        { 
     134            kohde.Destroy(); 
     135            Explosion rajahdys = new Explosion(50); 
     136            rajahdys.Position = kohde.Position; 
     137            Add(rajahdys); 
     138        } 
     139    } 
     140 
     141    void AmmuAseella(PlatformCharacter pelaaja) 
     142    { 
     143        PhysicsObject ammus = pelaaja.Weapon.Shoot(); 
     144 
     145        if (ammus != null) 
     146        { 
     147            //ammus.Size *= 3; 
     148            ammus.Image = ammuksenkuva; 
     149            ammus.MaximumLifetime = TimeSpan.FromSeconds(2.0); 
     150        } 
     151    } 
     152 
     153        void LisaaNappaimet() 
    91154    { 
    92155        Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Näytä ohjeet"); 
     
    104167 
    105168        PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); 
     169 
     170        Keyboard.Listen(Key.Space, ButtonState.Down, AmmuAseella, "Ammu", pelaaja1); 
    106171    } 
    107172 
     
    127192 
    128193        MessageDisplay.Add("söit pizzan!"); 
    129  
    130         AloitaAlusta(); 
    131  
    132     } 
     194      
     195        Timer.SingleShot(2, AloitaAlusta); 
     196 
     197    } 
     198    
     199     
     200 
    133201 
    134202    void AloitaAlusta() 
Note: See TracChangeset for help on using the changeset viewer.