Changeset 5290 for 2014/27


Ignore:
Timestamp:
2014-07-02 14:51:18 (5 years ago)
Author:
emkronqv
Message:
 
Location:
2014/27/EmilK
Files:
13 added
19 edited

Legend:

Unmodified
Added
Removed
  • 2014/27/EmilK/toimintajuttu/toimintajuttu/toimintajuttu/obj/x86/Debug/ContentPipeline-{1279BD45-05B8-49CE-8E6D-26708C229F93}.xml

    r5277 r5290  
    2727      <Options>None</Options> 
    2828      <Output>C:\MyTemp\EmilK\toimintajuttu\toimintajuttu\toimintajuttu\bin\x86\Debug\Content\kentta1.xnb</Output> 
    29       <Time>2014-07-02T10:21:17.1528502+03:00</Time> 
     29      <Time>2014-07-02T14:34:42.0418502+03:00</Time> 
    3030    </Item> 
    3131    <Item> 
     
    3636      <Options>None</Options> 
    3737      <Output>C:\MyTemp\EmilK\toimintajuttu\toimintajuttu\toimintajuttu\bin\x86\Debug\Content\god of war.xnb</Output> 
    38       <Time>2014-07-01T10:26:29.2251175+03:00</Time> 
     38      <Time>2014-07-02T12:45:21.3958502+03:00</Time> 
    3939    </Item> 
    4040    <Item> 
     
    102102      <Time>2014-07-01T14:40:09.6396269+03:00</Time> 
    103103    </Item> 
     104    <Item> 
     105      <Source>vihu.png</Source> 
     106      <Name>vihu</Name> 
     107      <Importer>TextureImporter</Importer> 
     108      <Processor>TextureProcessor</Processor> 
     109      <Options>None</Options> 
     110      <Output>C:\MyTemp\EmilK\toimintajuttu\toimintajuttu\toimintajuttu\bin\x86\Debug\Content\vihu.xnb</Output> 
     111      <Time>2014-07-02T13:16:25.7118502+03:00</Time> 
     112    </Item> 
     113    <Item> 
     114      <Source>hyppy.png</Source> 
     115      <Name>hyppy</Name> 
     116      <Importer>TextureImporter</Importer> 
     117      <Processor>TextureProcessor</Processor> 
     118      <Options>None</Options> 
     119      <Output>C:\MyTemp\EmilK\toimintajuttu\toimintajuttu\toimintajuttu\bin\x86\Debug\Content\hyppy.xnb</Output> 
     120      <Time>2014-07-02T12:45:27.0428502+03:00</Time> 
     121    </Item> 
     122    <Item> 
     123      <Source>bossi.png</Source> 
     124      <Name>bossi</Name> 
     125      <Importer>TextureImporter</Importer> 
     126      <Processor>TextureProcessor</Processor> 
     127      <Options>None</Options> 
     128      <Output>C:\MyTemp\EmilK\toimintajuttu\toimintajuttu\toimintajuttu\bin\x86\Debug\Content\bossi.xnb</Output> 
     129      <Time>2014-07-02T14:35:45.4168502+03:00</Time> 
     130    </Item> 
    104131    <BuildSuccessful>true</BuildSuccessful> 
    105132    <Settings> 
  • 2014/27/EmilK/toimintajuttu/toimintajuttu/toimintajuttu/obj/x86/Debug/cachefile-{1279BD45-05B8-49CE-8E6D-26708C229F93}-targetpath.txt

    r5277 r5290  
    1111Content\ase.xnb 
    1212Content\taustaagodofwariin.xnb 
     13Content\vihu.xnb 
     14Content\hyppy.xnb 
     15Content\bossi.xnb 
  • 2014/27/EmilK/toimintajuttu/toimintajuttu/toimintajuttu/obj/x86/Debug/toimintajuttu.csproj.FileListAbsolute.txt

    r5277 r5290  
    1919C:\MyTemp\EmilK\toimintajuttu\toimintajuttu\toimintajuttu\bin\x86\Debug\Content\ase.xnb 
    2020C:\MyTemp\EmilK\toimintajuttu\toimintajuttu\toimintajuttu\bin\x86\Debug\Content\taustaagodofwariin.xnb 
     21C:\MyTemp\EmilK\toimintajuttu\toimintajuttu\toimintajuttu\bin\x86\Debug\Content\vihu.xnb 
     22C:\MyTemp\EmilK\toimintajuttu\toimintajuttu\toimintajuttu\bin\x86\Debug\Content\hyppy.xnb 
     23C:\MyTemp\EmilK\toimintajuttu\toimintajuttu\toimintajuttu\bin\x86\Debug\Content\bossi.xnb 
  • 2014/27/EmilK/toimintajuttu/toimintajuttu/toimintajuttu/toimintajuttu.cs

    r5269 r5290  
    1010{ 
    1111    const double nopeus = 400; 
    12     const double hyppyNopeus = 900; 
     12    const double hyppyNopeus = 1800; 
    1313    const int RUUDUN_KOKO = 120; 
    1414 
     
    1818    Image pelaajanKuva = LoadImage("god of war"); 
    1919    Image tahtiKuva = LoadImage("tahti"); 
    20  
     20    Image vihollisenkuva = LoadImage("vihu"); 
     21    Image bossinkuva = LoadImage("bossi"); 
    2122 
    2223    Image aseenkuva = LoadImage("ase"); 
     24    private Image[] ukkeliHyppaa = LoadImages("hyppy"); 
    2325    private Image[] ukkelinKavely = LoadImages("juoksuu 1","juoksuu 2"); 
    2426    private Image[] ukkeliHyokkaa = LoadImages("hyökkäys 4"); 
    2527    private Image[] ukkeliPaikallaan = LoadImages("god of war"); 
    2628    SoundEffect maaliAani = LoadSoundEffect("maali"); 
    27      
     29    DoubleMeter elamaLaskuri; 
    2830 
    2931    public override void Begin() 
    3032    { 
    31         Gravity = new Vector(0, -500); 
     33        AloitaPeli(); 
     34      } 
     35 
     36    void AloitaPeli() 
     37    { 
     38        ClearAll(); 
     39        Gravity = new Vector(0, -1300); 
    3240 
    3341        MediaPlayer.Play("musiikki"); 
     
    3644        LuoKentta(); 
    3745        LisaaNappaimet(); 
     46        LuoElamaLaskuri(); 
    3847 
    3948        Camera.Follow(pelaaja1); 
     
    4958        kentta.SetTileMethod('N', LisaaPelaaja); 
    5059        kentta.SetTileMethod('H', LisaaVihollinen); 
     60        kentta.SetTileMethod('P', LisaaAnsa); 
     61        kentta.SetTileMethod('B', LisaaBossi); 
    5162        kentta.Execute(RUUDUN_KOKO, RUUDUN_KOKO); 
    5263        Level.CreateBorders(); 
     
    6071        PhysicsObject taso = PhysicsObject.CreateStaticObject(leveys, korkeus); 
    6172        taso.Position = paikka; 
    62         taso.Color = Color.Green; 
     73        taso.Color = Color.Red; 
    6374        Add(taso); 
    6475    } 
    6576 
     77    void LisaaAnsa(Vector paikka, double leveys, double korkeus) 
     78    { 
     79        PhysicsObject taso = PhysicsObject.CreateStaticObject(leveys, korkeus); 
     80        taso.Position = paikka; 
     81        taso.Color = Color.Black; 
     82        taso.Tag = "Ansa"; 
     83 
     84        Add(taso); 
     85    } 
     86 
     87    void LisaaBossi(Vector paikka, double leveys, double korkeus) 
     88    { 
     89        PlatformCharacter bossi = new PlatformCharacter(leveys *3, korkeus * 5); 
     90        bossi.Position = paikka; 
     91        bossi.Y += korkeus / 5; 
     92        bossi.Image = bossinkuva; 
     93        Add(bossi); 
     94 
     95        bossi.Weapon = new AssaultRifle(30, 10); 
     96        bossi.Weapon.ProjectileCollision += AmmusOsui; 
     97 
     98        PlatformWandererBrain tasoAivot = new PlatformWandererBrain(); 
     99        tasoAivot.Speed = 100; 
     100        bossi.Brain = tasoAivot; 
     101 
     102        AddCollisionHandler(bossi, "Ase", delegate(PhysicsObject ase, PhysicsObject vihu) { bossi.Destroy(); }); 
     103 
     104        Timer ajastin = new Timer(); 
     105        ajastin.Interval = 0.05; 
     106        ajastin.Timeout += delegate 
     107        { 
     108            if (bossi.IsDestroyed) 
     109                ajastin.Stop(); 
     110 
     111            if (Vector.Distance(pelaaja1.Position, bossi.Position) < 600) 
     112            { 
     113                tasoAivot.Active = false; 
     114                bossi.Weapon.AbsoluteAngle = (pelaaja1.Position - bossi.Position).Angle; 
     115                PhysicsObject ammus = bossi.Weapon.Shoot(); 
     116 
     117                if (ammus != null) 
     118                { 
     119                    ammus.LifetimeLeft = TimeSpan.FromSeconds(5.0); 
     120                } 
     121            } 
     122            else 
     123            { 
     124                tasoAivot.Active = true; 
     125            } 
     126        }; 
     127 
     128        ajastin.Start(); 
     129    } 
     130 
    66131    void LisaaVihollinen(Vector paikka, double leveys, double korkeus) 
    67132    { 
    68         PhysicsObject vihollinen = new PhysicsObject(leveys, korkeus); 
     133        PlatformCharacter vihollinen = new PlatformCharacter(leveys, korkeus*2); 
    69134        vihollinen.Position = paikka; 
     135        vihollinen.Y += korkeus / 2; 
     136        vihollinen.Image = vihollisenkuva; 
    70137        Add(vihollinen); 
    71     } 
     138 
     139        vihollinen.Weapon = new AssaultRifle(30, 10); 
     140        vihollinen.Weapon.ProjectileCollision += AmmusOsui; 
     141 
     142        PlatformWandererBrain tasoAivot = new PlatformWandererBrain(); 
     143        tasoAivot.Speed = 100; 
     144        vihollinen.Brain = tasoAivot; 
     145 
     146        AddCollisionHandler(vihollinen, "Ase", delegate(PhysicsObject ase, PhysicsObject vihu) { vihollinen.Destroy(); }); 
     147 
     148        Timer ajastin = new Timer(); 
     149        ajastin.Interval = 0.05; 
     150        ajastin.Timeout += delegate 
     151        { 
     152            if (vihollinen.IsDestroyed) 
     153                ajastin.Stop(); 
     154 
     155            if (Vector.Distance(pelaaja1.Position, vihollinen.Position) < 600) 
     156            { 
     157                tasoAivot.Active = false; 
     158                vihollinen.Weapon.AbsoluteAngle = (pelaaja1.Position - vihollinen.Position).Angle; 
     159                PhysicsObject ammus = vihollinen.Weapon.Shoot(); 
     160 
     161                if (ammus != null) 
     162                { 
     163                    ammus.LifetimeLeft = TimeSpan.FromSeconds(5.0); 
     164                } 
     165            } 
     166            else 
     167            { 
     168                tasoAivot.Active = true; 
     169            } 
     170        }; 
     171 
     172        ajastin.Start(); 
     173    } 
     174 
     175    void AmmusOsui(PhysicsObject ammus, PhysicsObject kohde) 
     176    { 
     177        ammus.Destroy(); 
     178        if (kohde == pelaaja1) 
     179        { 
     180            elamaLaskuri.Value--; 
     181        } 
     182    } 
     183 
    72184    void LisaaTahti(Vector paikka, double leveys, double korkeus) 
    73185    { 
     
    87199        pelaaja1.Mass = 4.0; 
    88200        pelaaja1.Image = pelaajanKuva; 
    89         AddCollisionHandler(pelaaja1, "tahti", TormaaTahteen); 
     201        AddCollisionHandler(pelaaja1, "Ansa", TormaaAnsaan); 
    90202        pelaaja1.AnimWalk = new Animation(ukkelinKavely); 
    91203        pelaaja1.AnimWalk.FPS = 7; 
    92204        pelaaja1.AnimIdle = new Animation(ukkeliPaikallaan); 
    93  
     205        pelaaja1.AnimJump = new Animation(ukkeliHyppaa); 
     206        pelaaja1.CollisionIgnoreGroup = 1; 
    94207        Add(pelaaja1); 
    95208    } 
     
    146259    { 
    147260        hahmo.Jump(nopeus); 
     261        pelaaja1.Animation.Start(); 
     262 
     263 
    148264    } 
    149265 
     
    154270        Ase.LifetimeLeft = TimeSpan.FromSeconds(0.5); 
    155271        Ase.Image = aseenkuva; 
     272        Ase.CollisionIgnoreGroup = 1; 
    156273        Add(Ase); 
    157274        Animation anim = new Animation(ukkeliHyokkaa); 
    158275        anim.FPS = 2; 
     276        Ase.Tag = "Ase"; 
     277        Ase.Angle = pelaaja1.FacingDirection.Angle; 
    159278        hahmo.PlayAnimation(anim); 
    160     } 
    161  
    162     void TormaaTahteen(PhysicsObject hahmo, PhysicsObject tahti) 
    163     { 
    164         maaliAani.Play(); 
    165         MessageDisplay.Add("Keräsit tähden!"); 
    166         tahti.Destroy(); 
    167     } 
     279 
     280        Timer ajastin = new Timer(); 
     281        ajastin.Interval = 0.01; 
     282        ajastin.Timeout += delegate 
     283        { 
     284            Ase.Position = pelaaja1.Position + pelaaja1.FacingDirection.GetVector() * 120 + new Vector(0, 30); 
     285        }; 
     286        ajastin.Start(); 
     287    } 
     288 
     289    void TormaaAnsaan(PhysicsObject hahmo, PhysicsObject tahti) 
     290    { 
     291        AloitaPeli();  
     292         
     293         
     294    } 
     295 
     296    void LuoElamaLaskuri() 
     297    { 
     298        elamaLaskuri = new DoubleMeter(10); 
     299        elamaLaskuri.MaxValue = 10; 
     300        elamaLaskuri.LowerLimit += ElamaLoppui; 
     301 
     302        ProgressBar elamaPalkki = new ProgressBar(150, 20); 
     303        elamaPalkki.X = Screen.Left + 150; 
     304        elamaPalkki.Y = Screen.Top - 20; 
     305        elamaPalkki.BindTo(elamaLaskuri); 
     306        Add(elamaPalkki); 
     307    } 
     308 
     309    void ElamaLoppui() 
     310    { 
     311        MessageDisplay.Add("Elämät loppuivat, voi voi."); 
     312        AloitaPeli(); 
     313    } 
     314 
    168315} 
  • 2014/27/EmilK/toimintajuttu/toimintajuttu/toimintajuttu/toimintajuttu.csproj.Debug.cachefile

    r5240 r5290  
    11Content\maali.xnb 
    22Content\norsu.xnb 
    3 Content\tahti.xnb 
    43Content\kentta1.xnb 
    54Content\god of war.xnb 
     
    1110Content\ase.xnb 
    1211Content\taustaagodofwariin.xnb 
     12Content\vihu.xnb 
     13Content\hyppy.xnb 
     14Content\bossi.xnb 
    1315Content\musiikki.wma 
  • 2014/27/EmilK/toimintajuttu/toimintajuttu/toimintajuttuContent/kentta1.txt

    r5269 r5290  
    66 
    77 
    8  
    9          
     8                                                           # 
     9             H           H              #   H    H     H       #         N        B       
    1010                ##  ##  ##  ## ## ## ## ##  ################################################## 
    1111     ### 
     
    1414### 
    1515#### 
    16 ##### 
     16#####      H 
    1717################## 
    1818                       ### 
    1919                              ###          ### 
    20                                      ###        ### 
     20                                     ###        ###       H          H 
    2121                                                    ########################### 
    2222                                                    #######################       ### 
    2323                                                                                        # 
    24                                                                                       # 
     24PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP                   # 
    2525                                                                                    # 
    26                                                                                                                                                                   # 
     26                                                                                  # 
    2727                                                                                # 
    2828                                                                              # 
     
    3131                            #            ###                      ##   # 
    3232            #      H        #           #####       ####   ##  # 
    33     N    ############################################### 
     33         ############################################### 
    3434############ 
     35PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP 
  • 2014/27/EmilK/toimintajuttu/toimintajuttu/toimintajuttuContent/toimintajuttuContent.contentproj

    r5277 r5290  
    6363  </ItemGroup> 
    6464  <ItemGroup> 
    65     <Compile Include="god of war.png"> 
    66       <Name>god of war</Name> 
    67       <Importer>TextureImporter</Importer> 
    68       <Processor>TextureProcessor</Processor> 
    69     </Compile> 
    70   </ItemGroup> 
    71   <ItemGroup> 
    7265    <Compile Include="Emilin hahmon suunittelu.png"> 
    7366      <Name>Emilin hahmon suunittelu</Name> 
     
    119112  </ItemGroup> 
    120113  <ItemGroup> 
     114    <Compile Include="god of war.png"> 
     115      <Name>god of war</Name> 
     116      <Importer>TextureImporter</Importer> 
     117      <Processor>TextureProcessor</Processor> 
     118    </Compile> 
     119  </ItemGroup> 
     120  <ItemGroup> 
     121    <Compile Include="hyppy.png"> 
     122      <Name>hyppy</Name> 
     123      <Importer>TextureImporter</Importer> 
     124      <Processor>TextureProcessor</Processor> 
     125    </Compile> 
     126  </ItemGroup> 
     127  <ItemGroup> 
    121128    <Compile Include="vihu.png"> 
    122129      <Name>vihu</Name> 
     130      <Importer>TextureImporter</Importer> 
     131      <Processor>TextureProcessor</Processor> 
     132    </Compile> 
     133  </ItemGroup> 
     134  <ItemGroup> 
     135    <Compile Include="bossi.png"> 
     136      <Name>bossi</Name> 
    123137      <Importer>TextureImporter</Importer> 
    124138      <Processor>TextureProcessor</Processor> 
Note: See TracChangeset for help on using the changeset viewer.