Ignore:
Timestamp:
2010-07-30 11:35:18 (11 years ago)
Author:
heanjule
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • 2010/30/heanjule/Pyromaani/Peli.cs

    r1424 r1435  
    1818    List<Weapon> inventory; 
    1919    int valittuAse; 
     20 
     21    Image pyronKuva = LoadImage("pyro"); 
     22    Image vihollinenKuva = LoadImage("Terroristi"); 
     23     
    2024 
    2125 
     
    4044 
    4145        inventory = new List<Weapon>(); 
    42         valittuAse = 0; 
     46 
    4347 
    4448        TileMap ruudut = TileMap.FromFile("kentta.txt"); 
     
    4650        ruudut['1'] = LuoPyronPaikka; 
    4751        ruudut['*'] = LuoAse; 
     52        ruudut['V'] = LuoVihollinen; 
    4853        ruudut.Insert(ruudunLeveys, ruudunKorkeus); 
    4954 
     
    9095        return ase; 
    9196    } 
     97 
     98    PhysicsObject LuoVihollinen() 
     99    { 
     100        PhysicsObject vihollinen = new PhysicsObject(50, 100); 
     101        Add(vihollinen); 
     102 
     103        Timer ajastin = new Timer(); 
     104        ajastin.Interval = 3.5; 
     105        ajastin.Trigger += VihollinenAmpuu; 
     106        ajastin.Tag = vihollinen; 
     107        ajastin.Start(); 
     108 
     109        return vihollinen; 
     110 
     111    } 
     112    void VihollinenAmpuu(Timer ajastin) 
     113    { 
     114        PhysicsObject vihollinen = ((PhysicsObject)ajastin.Tag); 
     115 
     116        if (vihollinen != null) 
     117        { 
     118            PhysicsObject panos = new PhysicsObject(20, 20); 
     119            panos.Position = vihollinen.Position; 
     120            panos.Velocity = new Vector(200,200); 
     121            panos.Velocity = new Vector(300, 300); 
     122            Add(panos); 
     123        } 
     124    } 
     125     
     126 
     127     
    92128 
    93129    void LisaaTaso(double x, double y) 
     
    107143        AddCollisionHandler(pyro, esineenKerays); 
    108144 
     145 
    109146        AssaultRifle kivaari = new AssaultRifle(20, 5); 
    110147        inventory.Add(kivaari); 
     
    113150        inventory.Add(plasma); 
    114151 
     152        LaserGun laserpyssy = new LaserGun(20, 5); 
     153        inventory.Add(laserpyssy); 
     154 
    115155        pyro.Weapon = kivaari; 
     156        valittuAse = 0; 
    116157        //pyro.Weapon = new PlasmaCannon(20, 5); 
    117158     
     
    169210    void AmmuAseella() 
    170211    { 
    171         PhysicsObject ammus = pyro.Weapon.Shoot(); 
     212        PhysicsObject ammus = inventory[valittuAse].Shoot(); 
    172213 
    173214        if (ammus != null) 
    174         {  
    175             ammus.Size *= 2; 
     215        { 
     216            ammus.Size *= 3; 
    176217        } 
    177218    } 
     
    194235    void VaihdaAse() 
    195236    { 
     237        int edellinenAse = valittuAse; 
    196238        valittuAse++; 
    197239 
     
    199241        { 
    200242            valittuAse = 0; 
    201             pyro.Weapon = inventory[valittuAse]; 
    202         } 
    203         else 
    204         { 
    205             pyro.Weapon = inventory[valittuAse]; 
    206  
    207         } 
    208     } 
     243        } 
     244 
     245        pyro.Remove(inventory[edellinenAse]); 
     246 
     247        Remove(pyro); 
     248        pyro.Weapon = inventory[valittuAse]; 
     249 
     250        Timer pelaajaTakas = new Timer();  
     251        pelaajaTakas.Interval = 0;  
     252        pelaajaTakas.Tag = pyro;  
     253        pelaajaTakas.Start(1);  
     254        pelaajaTakas.Trigger += PelaajaTakasinAseenVaihdonJalkeen; 
     255 
     256    } 
     257 
     258    void PelaajaTakasinAseenVaihdonJalkeen(Timer ajastin)  
     259    {  
     260        PlatformCharacter pelaaja = (PlatformCharacter)ajastin.Tag;  
     261        Add(pyro, 1); 
     262    }  
     263 
    209264             
    210265  
Note: See TracChangeset for help on using the changeset viewer.