Changeset 3995 for 2013/23


Ignore:
Timestamp:
2013-06-06 15:06:52 (6 years ago)
Author:
sijoseha
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • 2013/23/LeoS/Tasohyppelypeli2.cs

    r3992 r3995  
    3131 
    3232    public Boolean tpmittari = true; 
     33    List<PlatformCharacter> kytat = new List<PlatformCharacter>(); 
    3334    PlatformCharacter homo; 
    3435    Image olionkuva = LoadImage("hahmo"); 
    35  
    36     Image olionkuva2 = LoadImage("poliisi"); 
     36    Image hahmonkuva = LoadImage("iron"); 
    3737    Image olionkuva3 = LoadImage("Copcar"); 
    3838    IntMeter elamat; 
     
    4343    { 
    4444        LuoKentta(); 
    45         Gravity = new Vector(0, -1000); 
     45        Gravity = new Vector(0, -2000); 
    4646        elamat = new IntMeter(10, 0, 10); 
    4747        elamat.LowerLimit += delegate { homo.Destroy(); }; 
     
    7676        AddCollisionHandler(homo, "ammus", Hittipointsi); 
    7777        AddCollisionHandler(homo, "potion", OtaPotion); 
     78        AddCollisionHandler<PlatformCharacter, Kytta>(homo, Hyokkaa); 
    7879        Mouse.IsCursorVisible = true; 
    7980        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "A.C.A.B");    //näppäinkomennot 
    80         Keyboard.Listen(Key.Left, ButtonState.Down, Kavele, null, (-1000.0));                                               //näppäinkomennot 
    81         Keyboard.Listen(Key.Right, ButtonState.Down, Kavele, null, (1000.0));                                                //näppäinkomennot                                                //näppäinkomennot 
    82         Keyboard.Listen(Key.A, ButtonState.Down, Ammu, null, homo); 
     81        Keyboard.Listen(Key.Left, ButtonState.Down, Kavele, null, (-100.0));                                               //näppäinkomennot 
     82        Keyboard.Listen(Key.Right, ButtonState.Down, Kavele, null, (100.0));                                                //näppäinkomennot                                                //näppäinkomennot 
     83        //Keyboard.Listen(Key.A, ButtonState.Down, hyokkaa, null, homo); 
    8384        Keyboard.Listen(Key.Z, ButtonState.Released, JuoPotion, null); 
    8485        Keyboard.Listen(Key.E, ButtonState.Down, Pusauta, null); 
    8586        Keyboard.Listen(Key.Q, ButtonState.Down, Jatka, null); 
    8687        Mouse.Listen(MouseButton.Left, ButtonState.Pressed, gayteleport, null); 
    87         Camera.ZoomToLevel(); 
    88  
    89     } 
    90  
    91  
     88        Camera.Follow(homo); 
     89 
     90    } 
     91 
     92    void Hyokkaa(PlatformCharacter p, Kytta k) 
     93    { 
     94        k.Destroy(); 
     95    } 
     96     
     97     
    9298    void gayteleport() 
    9399    { 
    94100        if (tpmittari == true) 
    95101        { 
    96             homo.Position = Mouse.PositionOnWorld; 
     102            Vector telePoint = Mouse.PositionOnWorld; 
     103            for (int i = 0; i < kytat.Count; i++) 
     104            { 
     105                if (Vector.Distance(kytat[i].Position, telePoint) <= 300) 
     106                    return; 
     107            } 
     108 
     109            homo.Position = telePoint; 
    97110            tpmittari = false; 
    98111            tpajastin.Reset(); 
     
    240253        Kytta kytta = new Kytta(93, 150, 2); 
    241254        kytta.Position = paikka; 
    242         kytta.Image = olionkuva2; 
     255        kytta.Image = hahmonkuva; 
    243256        kytta.Tag = "kytta"; 
    244257 
     
    257270        Timer ajastin = new Timer(); 
    258271        ajastin.Interval = 1.0; 
    259         ajastin.Timeout += delegate { TarkistaAmpuuko(kyttaAse); }; 
     272        ajastin.Timeout += delegate { TarkistaAmpuuko(kytta); }; 
    260273        ajastin.Start(); 
    261  
    262         kytta.Destroyed += ajastin.Stop; 
    263     } 
    264  
    265  
    266     void TarkistaAmpuuko(AssaultRifle ase) 
    267     { 
    268         if (Vector.Distance(ase.Position, homo.Position) <= 100) 
     274        kytta.Destroyed += delegate { ajastin.Stop(); kytat.Remove(kytta); }; 
     275        kytat.Add(kytta); 
     276    } 
     277 
     278 
     279    void TarkistaAmpuuko(Kytta kytta) 
     280    { 
     281        if (Vector.Distance(kytta.Position, homo.Position) <= 1000) 
    269282        { 
    270283            // ase.Angle = new Vector(ase.Position.X - Snoopdogg.Position.X, ase.Position.Y - Snoopdogg.Position.Y).Angle; 
    271             PhysicsObject ammus = ase.Shoot(); 
     284            PhysicsObject ammus = kytta.Weapon.Shoot(); 
     285            ammus.Size *= 3; 
    272286            ammus.LifetimeLeft = TimeSpan.FromSeconds(1); 
    273287            ammus.Tag = "ammus"; 
     
    283297        Add(copcar); 
    284298    } 
    285  
    286  
    287  
    288  
    289  
    290  
    291  
    292  
    293299} 
    294300 
Note: See TracChangeset for help on using the changeset viewer.