Ignore:
Timestamp:
2011-08-05 11:03:42 (8 years ago)
Author:
rojohans
Message:

Talletus.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • 2011/31/RobertJ/Miner/Miner/Miner/Peli.cs

    r2565 r2577  
    2424    Image timantikuva = LoadImage("timanti3"); 
    2525 
     26    List<Widget> sydamet = new List<Widget>(); 
     27 
    2628    PhysicsObject Miner; 
    27     Image olionKuva = LoadImage("player 1 version 2"); 
     29    Image olionKuva = LoadImage("player 1 version 3"); 
    2830    Image[] KavelyKuvat = LoadImages("player 1", "player 1 frame2"); 
    2931 
     
    3436    public override void Begin() 
    3537    { 
    36  
     38        tesydämet(); 
    3739        TileMap ruudut = TileMap.FromLevelAsset("kentaa"); 
    3840        ruudut.SetTileMethod('=', LouPuu); 
     
    5052        Add(inventory); 
    5153 
    52         FollowerBrain zombinAivot = (FollowerBrain)zombie.Brain; 
    53         zombinAivot.Target = Miner; 
     54 
    5455        //Camera.ZoomToLevel(); 
    5556        //KavelyKuvatPeilattu = Image.Mirror(KavelyKuvat); 
     
    6465        AsetaOhjaimet(); 
    6566        //Louzombie(); 
     67 
     68        //Cannon tykki = new Cannon(50, 10); 
     69        //tykki.Power.Value += 1000; 
    6670    } 
    6771    void AsetaOhjaimet() 
     
    125129    void Louzombie(Vector paikka, double leveys, double korkeus) 
    126130    { 
    127         zombie = new PhysicsObject(10, 10); 
     131        Vihulainen zombie = new Vihulainen(10, 10); 
    128132        Add(zombie); 
    129133        zombie.Image = olionKuva1; 
    130134        zombie.Position = paikka; 
     135 
    131136        FollowerBrain seuraajanAivot = new FollowerBrain(Miner, 20); 
    132137        seuraajanAivot.Target = Miner; 
    133138        zombie.Brain = seuraajanAivot; 
     139        zombie.Tag = "zombie"; 
    134140    } 
    135141    void LouPuu(Vector paikka, double leveys, double korkeus) 
     
    141147        Add(Puu); 
    142148        Puu.Image = puukuva; 
     149        puut.Add(Puu); 
    143150 
    144151 
     
    156163        Miner.Restitution = 0.0; 
    157164        Miner.CanRotate = false; 
    158     } 
     165        AddCollisionHandler(Miner, tormays); 
     166    } 
     167    void tesydämet() 
     168    { 
     169        HorizontalLayout asettelu = new HorizontalLayout(); 
     170        asettelu.Spacing = 3; 
     171 
     172        Widget sydamet = new Widget(asettelu); 
     173        sydamet.Color = Color.Transparent; 
     174        sydamet.X = Screen.Center.X; 
     175        sydamet.Y = Screen.Top - 30; 
     176        Add(sydamet); 
     177 
     178        for (int i = 0; i < 3; i++) 
     179        { 
     180            Widget sydan = new Widget(30, 30, Shape.Heart); 
     181            sydan.Color = Color.Red; 
     182            sydamet.Add(sydan); 
     183            this.sydamet.Add(sydan); 
     184 
     185        } 
     186 
     187    } 
     188 
    159189    void Loukulta(Vector paikka, double leveys, double korkeus) 
    160190    { 
     
    183213 
    184214    } 
    185     PhysicsObject zombie; 
     215    //PhysicsObject zombie; 
     216    List<PhysicsObject> puut = new List<PhysicsObject>(); 
    186217    List<PhysicsObject> irons = new List<PhysicsObject>(); 
    187218    List<PhysicsObject> kullat = new List<PhysicsObject>(); 
     
    233264        { 
    234265            isoase = new AssaultRifle(20, 5); 
     266            isoase.ProjectileCollision = ammusOsuu; 
    235267            Miner.Add(isoase); 
    236268        } 
    237269    } 
     270 
     271    void ammusOsuu(PhysicsObject ammus, PhysicsObject kohde) 
     272    { 
     273        if (kohde is Vihulainen) 
     274        { 
     275            Vihulainen k = (Vihulainen)kohde; 
     276            k.HP--; 
     277            if (k.HP < 1) k.Destroy(); 
     278        } 
     279    } 
    238280    void tekasiase() 
    239281    { 
     
    244286        if (isoase != null) 
    245287        { 
    246  
    247          
    248288            PhysicsObject ammus = isoase.Shoot(); 
    249289 
     
    257297    { 
    258298 
     299    } 
     300    void tormays(PhysicsObject Miner, PhysicsObject kohde) 
     301    { 
     302        if (kohde.Tag.ToString() == "zombie") 
     303        { 
     304            if (sydamet.Count == 1) 
     305            { 
     306                Miner.Destroy(); 
     307            } 
     308            else 
     309            { 
     310                int viimeinenSydan = sydamet.Count - 1; 
     311                sydamet[viimeinenSydan].Destroy(); 
     312                sydamet.RemoveAt(viimeinenSydan); 
     313                 
     314            } 
     315        } 
     316    } 
     317    void louzombierandompaikka() 
     318    { 
     319        int i = 50; 
     320        bool valmis = false; 
     321 
     322        while (i > 0) 
     323        { 
     324            Vector paikka = Level.GetRandomPosition(); 
     325            foreach (var Puu in puut) 
     326            { 
     327                if (!Puu.IsInside(paikka)) 
     328                { 
     329                    Louzombie(paikka, 50, 50); 
     330                    valmis = true; 
     331                    break; 
     332                } 
     333            } 
     334 
     335            if (valmis) 
     336            { 
     337                break; 
     338            } 
     339 
     340            i--; 
     341        } 
    259342    } 
    260343 
     
    310393        return laskuri; 
    311394    } 
     395 
    312396} 
     397 
     398public class Vihulainen : PhysicsObject 
     399{ 
     400    public int HP = 10; 
     401    public Vihulainen(double width, double height) : base(width, height) { } 
     402} 
Note: See TracChangeset for help on using the changeset viewer.