source: 2013/30/MiskaK/MW2(My Warfare 2)/MW2(My Warfare 2)/MW2(My Warfare 2)/SurvivalGame.cs @ 4507

Revision 4507, 2.8 KB checked in by anlakane, 6 years ago (diff)

Talletus.

Line 
1using System;
2using System.Collections.Generic;
3using System.Linq;
4using System.Text;
5using Jypeli;
6
7/// <summary>
8/// Pelimuoto, jossa on tarkoitus taistella jatkuvaa vihollisten
9/// vyöryä vastaan.
10/// </summary>
11public class SurvivalGame
12{
13    /// <summary>
14    /// Kaikki tällä hetkellä pelikentällä olevat viholliset.
15    /// </summary>
16    public List<Vihollinen> VihollisetKentalla { get; protected set; }
17
18    /// <summary>
19    /// Mitä eri vihollistyyppejä on olemassa. Viholliset spawnataan tästä listasta.
20    /// </summary>
21    public List<Vihollinen> VihollisTyypit { get; set; }
22
23    /// <summary>
24    /// Aika tämän pelikerran alusta.
25    /// </summary>
26    public Timer AikaPelinAlusta { get; protected set; }
27
28    /// <summary>
29    /// Miten usein vihollisia spawnataan.
30    /// </summary>
31    private Timer VihollistenSpawnausAjastin { get; set; }
32
33    /// <summary>
34    /// Montako kertaa pelaaja(t) voivat vielä respata, ennen kuin peli päättyy.
35    /// </summary>
36    public IntMeter RespauksiaJaljellaYhteensa { get; set; }
37
38    /// <summary>
39    /// Montako kertaa pelaaja(t) ovat respanneet tämän pelin aikana.
40    /// </summary>
41    public IntMeter MonestikoRespattuYhteensa { get; protected set; }
42
43    /// <summary>
44    /// Montako vihollista on tapettu tämän pelikerran aikana.
45    /// </summary>
46    public IntMeter VihollisiaTapettu { get; protected set; }
47
48    /// <summary>
49    /// Initialisoidaan uusi SurvivalGame ja aloitetaan peli.
50    /// </summary>
51    public SurvivalGame()
52    {
53        this.VihollisetKentalla = new List<Vihollinen>();
54        this.VihollisTyypit = new List<Vihollinen>();
55        this.VihollisiaTapettu = new IntMeter(0);
56
57        this.AikaPelinAlusta = new Timer();
58        this.AikaPelinAlusta.Start();
59
60        this.VihollistenSpawnausAjastin = new Timer();
61        this.VihollistenSpawnausAjastin.Interval = Vakiot.SPAWNAUS_VAUHTI;
62        this.VihollistenSpawnausAjastin.Timeout += SpawnaaVihollisia;
63        this.VihollistenSpawnausAjastin.Start();
64
65        this.RespauksiaJaljellaYhteensa = new IntMeter(Vakiot.RESPAUSTEN_OLETUSMAARA, 0, Int32.MaxValue);
66        this.MonestikoRespattuYhteensa = new IntMeter(0);
67    }
68
69    /// <summary>
70    /// Lisää vihollisen pelin spawnauslistaan niin, että se voi spawnata.
71    /// </summary>
72    /// <param name="lisattavaVihollinen"></param>
73    public void LisaaVihollinenPeliin(Vihollinen lisattavaVihollinen)
74    {
75        this.VihollisTyypit.Add(lisattavaVihollinen);
76    }
77
78    /// <summary>
79    /// Spawnataan vihollisia määritellyille alueille.
80    /// </summary>
81    private void SpawnaaVihollisia()
82    {
83        if (VihollisTyypit.Count == 0) return; // ei spawnata, jos ei ole spawnattavaa
84
85        //Vihollinen spawnattavaVihollinen = new
86    }
87}
Note: See TracBrowser for help on using the repository browser.