Changeset 3908


Ignore:
Timestamp:
2012-12-08 14:56:30 (7 years ago)
Author:
anlakane
Message:
 
Location:
2012/kerho/ljov/Enter_name
Files:
76 added
3 edited

Legend:

Unmodified
Added
Removed
  • 2012/kerho/ljov/Enter_name/Enter_name/Enter_name/Enter_name.cs

    r3885 r3908  
    1212 
    1313    [Save] int Taso; 
     14    int NykTaso; 
     15    const int MaxTaso = 4; //KASVATA KUN LISÄÄT TASOJA 
    1416 
    1517    public Image pelaajanKuva = LoadImage("norsu"); 
     
    2224    public override void Begin() 
    2325    { 
     26        if (DataStorage.Exists("save.xml")) LoadGame("save.xml"); else Taso = 0; 
     27        Valikko(); 
     28    } 
     29 
     30    public void Valikko() 
     31    { 
     32        Label label = new Label("GRAFFUT ON PLACEHOLDEREITA"); 
     33        label.Position = new Vector(Screen.Right - 200, Screen.Top - 30); 
     34        label.TextColor = Color.Red; 
     35        Add(label); 
     36 
     37        NykTaso = Taso; 
     38 
     39        MultiSelectWindow alku = new MultiSelectWindow("..", "Pelaa", "Kentät", "Lopeta"); 
     40        alku.AddItemHandler(0, Aloita); 
     41        alku.AddItemHandler(1, valitseKentta); 
     42        alku.AddItemHandler(2, Lopeta); 
     43        alku.DefaultCancel = -1; 
     44        Add(alku); 
     45    } 
     46    void valitseKentta() 
     47    { 
     48        MultiSelectWindow kentat = new MultiSelectWindow("Valitse kenttä", "1", "2", "3", "4", "5", "Alkuun"); 
     49        kentat.AddItemHandler(0, delegate { if (Taso >= 0) { NykTaso = 0; Aloita(); } else {valitseKentta();}}); 
     50        kentat.AddItemHandler(1, delegate { if (Taso >= 1) { NykTaso = 1; Aloita(); } else {valitseKentta();}}); 
     51        kentat.AddItemHandler(2, delegate { if (Taso >= 2) { NykTaso = 2; Aloita(); } else { valitseKentta();}}); 
     52        kentat.AddItemHandler(3, delegate { if (Taso >= 3) { NykTaso = 3; Aloita(); } else { valitseKentta();}}); 
     53        kentat.AddItemHandler(4, delegate { if (Taso >= 4) { NykTaso = 4; Aloita(); } else { valitseKentta(); } }); 
     54        kentat.AddItemHandler(5, Valikko); 
     55        kentat.DefaultCancel = 5; 
     56        Add(kentat); 
     57    } 
     58    public void Aloita() 
     59    { 
     60        ClearAll(); 
     61        Label label = new Label("GRAFFUT ON PLACEHOLDEREITA"); 
     62        label.Position = new Vector(Screen.Right - 200, Screen.Top - 30); 
     63        label.TextColor = Color.Red; 
     64        Add(label); 
     65 
    2466        hemmo = new Hemmo(); 
    2567 
    26         if (DataStorage.Exists("save.xml")) LoadGame("save.xml"); else Taso = 0; 
    27  
    2868        Gravity = new Vector(0, -1000); 
    2969 
    3070        Camera.Follow(hemmo); 
    31         Camera.ZoomFactor = 0.9; 
     71        Camera.ZoomFactor = 1.2; 
    3272        Camera.StayInLevel = true; 
    3373 
     
    3575        Mouse.ListenMovement(0.1, hemmo.Tahtaa, ""); 
    3676        Mouse.Listen(MouseButton.Left, ButtonState.Down, Toimi, ""); 
    37             Keyboard.Listen(Key.A, ButtonState.Down, Vasen, ""); 
     77        Keyboard.Listen(Key.A, ButtonState.Down, Vasen, ""); 
    3878        Keyboard.Listen(Key.D, ButtonState.Down, Oikea, ""); 
    3979        Keyboard.Listen(Key.W, ButtonState.Pressed, Hyppy, ""); 
    40             Keyboard.Listen(Key.Escape, ButtonState.Pressed, Pause, ""); 
    41  
    42             Valikko(); 
    43     } 
    44  
    45     public void Valikko() 
    46     { 
    47         MultiSelectWindow alku = new MultiSelectWindow("..", "Pelaa", "Kentät", "Lopeta"); 
    48         alku.AddItemHandler(0, Aloita); 
    49  
    50         alku.AddItemHandler(2, Exit); 
    51         alku.DefaultCancel = -1; 
    52         Add(alku); 
    53     } 
    54  
    55     public void Aloita() 
    56     { 
    57         LataaKentta(Taso); 
     80        Keyboard.Listen(Key.Escape, ButtonState.Pressed, Pause, ""); 
     81         
     82        LataaKentta(NykTaso); 
    5883    } 
    5984 
     
    6388        kentta.SetTileMethod('0', LisaaTuhottava); 
    6489        kentta.SetTileMethod('#', LisaaTaso); 
    65         kentta.SetTileMethod('V', LisaaAnsa); 
    66         kentta.SetTileMethod('*', LisaaLoota); 
     90        kentta.SetTileMethod('_', LisaaAnsa); 
     91        kentta.SetTileMethod('H', LisaaLoota); 
     92        kentta.SetTileMethod('*', LisaaMaali); 
    6793        kentta.SetTileMethod('N', LisaaPelaaja); 
    6894        kentta.Execute(RUUDUN_KOKO, RUUDUN_KOKO); 
     
    96122    void LisaaLoota(Vector paikka, double leveys, double korkeus) 
    97123    { 
    98         Loota loota = new Loota((int)leveys, (int)korkeus,20,20); 
     124        Loota loota = new Loota((int)leveys, (int)korkeus,10,10); 
    99125        loota.IgnoresCollisionResponse = true; 
    100126        loota.Tag = "laatikko"; 
     
    103129        Add(loota, -1); 
    104130    } 
     131    void LisaaMaali(Vector paikka, double leveys, double korkeus) 
     132    { 
     133        PhysicsObject maali = PhysicsObject.CreateStaticObject(leveys, korkeus * 0.1); 
     134        paikka.Y -= korkeus / 2; 
     135        maali.Position = paikka; 
     136        maali.Color = Color.Green; 
     137        maali.Tag = "Today is ours"; 
     138        Add(maali); 
     139    } 
    105140    void LisaaPelaaja(Vector paikka, double leveys, double korkeus) 
    106141    { 
    107142        hemmo.Position = paikka; 
    108         if (hemmo.IsAddedToGame) 
    109         { 
    110         Remove(hemmo); 
    111         Remove(hemmo.Ase); 
    112         RemoveCollisionHandlers(hemmo, null, null, null); 
    113         } 
    114143        Add(hemmo); 
    115144        Add(hemmo.Ase); 
     
    123152        Label Ammocount = new Label(); 
    124153        Ammocount.BindTo(hemmo.Ase.Ammo); 
     154        Ammocount.Position = new Vector(Screen.Left + 150, Screen.Top -30); 
    125155        Add(Ammocount); 
    126156         
     
    147177        Add(pause); 
    148178    } 
    149  
     179    public void Edistys() 
     180    { 
     181        hemmo.Destroy(); 
     182        hemmo.Ase.Destroy(); 
     183        if (NykTaso != MaxTaso) 
     184        { 
     185            if (Taso == NykTaso) Taso++; 
     186            MultiSelectWindow edistys = new MultiSelectWindow("Läpäisit tason!", "Seuraava", "Uudelleen", "Alkuun"); 
     187            edistys.AddItemHandler(1, Aloita); 
     188            edistys.AddItemHandler(0, delegate { NykTaso++; Aloita(); }); 
     189            edistys.AddItemHandler(2, Valikko); 
     190            Add(edistys); 
     191        } 
     192        else 
     193        { 
     194            MultiSelectWindow edistys = new MultiSelectWindow("Voitit pelin!", "Uudelleen", "Alkuun"); 
     195            edistys.AddItemHandler(0, Aloita); 
     196            edistys.AddItemHandler(1, Valikko); 
     197            Add(edistys); 
     198        } 
     199    } 
    150200    public void Kuolema() 
    151201    { 
     202        hemmo.Destroy(); 
     203        hemmo.Ase.Destroy(); 
    152204        MultiSelectWindow kuollut = new MultiSelectWindow("Kuolit!", "Uudelleen", "Alkuun"); 
    153205        kuollut.AddItemHandler(0, Aloita); 
     
    156208    } 
    157209 
     210    void Lopeta() 
     211    { 
     212        SaveGame("save.xml"); 
     213        Exit(); 
     214    } 
     215 
    158216    protected override void Update(Microsoft.Xna.Framework.GameTime gameTime) 
    159217    { 
    160         base.Update(gameTime); //MITÄS ***** 
     218        base.Update(gameTime); 
    161219        if (hemmo != null)hemmo.Ase.Position = hemmo.Position; 
    162220    } 
  • 2012/kerho/ljov/Enter_name/Enter_name/Enter_name/Hemmo.cs

    r3885 r3908  
    99class Hemmo : PlatformCharacter 
    1010{ 
    11     public IntMeter hp = new IntMeter(40); 
     11    public IntMeter hp; 
    1212 
    1313    public AssaultRifle Ase; 
    14     bool kuollut = false; 
    1514 
    1615    const int MaxAmmo = 40; 
     
    2019        : base(50, 50) 
    2120    { 
     21        CollisionIgnoreGroup = 1; 
     22 
    2223        Image = Game.LoadImage("norsu"); 
    2324        Mass = 10; 
    2425 
     26        hp = new IntMeter(40); 
    2527        hp.MaxValue = 40; 
    2628 
    27         this.CollisionIgnoreGroup = 1; 
    28  
     29        Ase = null; 
    2930        Ase = new AssaultRifle(60, 30); 
    3031        Ase.Power.DefaultValue = 50; 
     
    7980            hp.Value -= 1; 
    8081            if (hp <= 0)  
    81                 if  
    82                 (!kuollut) 
    83                 { 
    8482                (this.Game as Enter_name).Kuolema(); 
    85                 kuollut = true; 
    86                 } 
    8783        } 
    8884        else if (kohde.Tag.ToString() == "TuhoaMinut") 
     
    9591        if (kohde.Tag.ToString() == "Consequence for failure") 
    9692        { 
    97             if (!kuollut) 
    9893            (this.Game as Enter_name).Kuolema(); 
    99             kuollut = true; 
     94        } 
     95        if (kohde.Tag.ToString() == "Today is ours") 
     96        { 
     97            (this.Game as Enter_name).Edistys(); 
    10098        } 
    10199        else if (kohde.Tag.ToString() == "laatikko") 
  • 2012/kerho/ljov/Enter_name/Enter_name/Enter_nameContent/Enter_nameContent.contentproj

    r3885 r3908  
    6262  </ItemGroup> 
    6363  <ItemGroup> 
     64    <Compile Include="kenttabu1.txt"> 
     65      <Name>kenttabu1</Name> 
     66      <Importer>TextFileImporter</Importer> 
     67      <Processor>TextFileContentProcessor</Processor> 
     68    </Compile> 
     69  </ItemGroup> 
     70  <ItemGroup> 
     71    <Compile Include="1.txt"> 
     72      <Name>1</Name> 
     73      <Importer>TextFileImporter</Importer> 
     74      <Processor>TextFileContentProcessor</Processor> 
     75    </Compile> 
     76  </ItemGroup> 
     77  <ItemGroup> 
     78    <Compile Include="2.txt"> 
     79      <Name>2</Name> 
     80      <Importer>TextFileImporter</Importer> 
     81      <Processor>TextFileContentProcessor</Processor> 
     82    </Compile> 
     83  </ItemGroup> 
     84  <ItemGroup> 
     85    <Compile Include="4.txt"> 
     86      <Name>4</Name> 
     87      <Importer>TextFileImporter</Importer> 
     88      <Processor>TextFileContentProcessor</Processor> 
     89    </Compile> 
     90  </ItemGroup> 
     91  <ItemGroup> 
    6492    <Compile Include="0.txt"> 
    6593      <Name>0</Name> 
     
    6997  </ItemGroup> 
    7098  <ItemGroup> 
    71     <Compile Include="kenttabu1.txt"> 
    72       <Name>kenttabu1</Name> 
     99    <Compile Include="3.txt"> 
     100      <Name>3</Name> 
    73101      <Importer>TextFileImporter</Importer> 
    74102      <Processor>TextFileContentProcessor</Processor> 
Note: See TracChangeset for help on using the changeset viewer.