Changeset 8043 for 2016/27/PatrikK


Ignore:
Timestamp:
2016-07-08 11:41:11 (3 years ago)
Author:
koannak
Message:
 
Location:
2016/27/PatrikK
Files:
9 added
11 edited

Legend:

Unmodified
Added
Removed
  • 2016/27/PatrikK/Seikkailu/Seikkailu/Seikkailu/Seikkailu.cs

    r7899 r8043  
    99public class Seikkailu : PhysicsGame 
    1010{ 
    11     const double nopeus = 400; 
    12     const double hyppyNopeus = 750; 
     11    const double nopeus = 500; 
     12    const double hyppyNopeus = 1000; 
    1313    const int RUUDUN_KOKO = 40; 
    1414 
     
    2121    SoundEffect maaliAani = LoadSoundEffect("maali"); 
    2222 
     23    LaserGun pelaajan1Ase; 
     24 
    2325    public override void Begin() 
    2426    { 
    25         Gravity = new Vector(0, -1000); 
     27        Gravity = new Vector(0, -200); 
    2628 
    2729        LuoKentta(); 
     
    2931 
    3032        Camera.Follow(pelaaja1); 
    31         Camera.ZoomFactor = 1.2; 
     33        Camera.ZoomFactor = 1.0; 
    3234        Camera.StayInLevel = true; 
    3335    } 
     
    4042        kentta.SetTileMethod('*', LisaaTahti); 
    4143        kentta.SetTileMethod('N', LisaaPelaaja); 
    42         kentta.SetTileMethod('v', LisaaVihu); 
     44        kentta.SetTileMethod('V', LisaaVihu); 
     45        kentta.SetTileMethod('S', LisaaVihuSpawner); 
    4346        kentta.Execute(RUUDUN_KOKO, RUUDUN_KOKO); 
    4447        Level.CreateBorders(); 
    4548        Level.Background.CreateGradient(Color.White, Color.SkyBlue); 
    4649 
     50    } 
     51    void LisaaVihuSpawner(Vector paikka, double leveys, double korkeus) 
     52    { 
     53        Timer vihuAjastin = new Timer(); 
     54        vihuAjastin.Interval = 1; 
     55        vihuAjastin.Timeout += delegate { LisaaVihu(paikka, leveys, korkeus); }; 
     56        vihuAjastin.Start(); 
    4757    } 
    4858 
     
    5767    { 
    5868       
    59         PhysicsObject Vihu = new PhysicsObject(leveys, korkeus); 
    60         //FollowerBrain seuraajanAivot = new FollowerBrain(pelaaja1); 
     69        PlatformCharacter Vihu = new PlatformCharacter(leveys, korkeus); 
    6170        Vihu.Image = olionKuva; 
    6271        Vihu.Shape = Shape.Rectangle; 
     
    6473        Vihu.Tag = "Vihu"; 
    6574        Add(Vihu); 
     75 
     76        PlatformWandererBrain tasoAivot = new PlatformWandererBrain(); 
     77        tasoAivot.Speed = 100; 
     78 
     79        Vihu.Brain = tasoAivot; 
     80        tasoAivot.FallsOffPlatforms = true; 
     81        tasoAivot.JumpSpeed = 1000; 
     82        tasoAivot.TriesToJump = true; 
    6683        
    6784    } 
     
    8198        pelaaja1.IgnoresExplosions = true; 
    8299        pelaaja1.Position = paikka; 
    83         pelaaja1.Mass = 4.0; 
     100        pelaaja1.Mass = 10.001; 
    84101        pelaaja1.Image = pelaajanKuva; 
    85102        AddCollisionHandler(pelaaja1, "Vihu", TormaaViholliseen); 
    86103        AddCollisionHandler(pelaaja1, "tahti", TormaaTahteen); 
    87104        Add(pelaaja1); 
    88          
     105 
     106        //pelaaja1 on PlatformCharacter-tyyppinen 
     107        pelaaja1.Weapon = new LaserGun(30, 10); 
     108 
     109        //Ammusten määrä aluksi: 
     110        pelaaja1.Weapon.Ammo.Value = int.MaxValue; 
     111 
     112        //Mitä tapahtuu kun ammus osuu johonkin? 
     113        pelaaja1.Weapon.ProjectileCollision = AmmusOsui; 
     114 
     115 
     116    } 
     117 
     118    void AmmusOsui(PhysicsObject ammus, PhysicsObject kohde) 
     119    { 
     120        ammus.Destroy(); 
     121        if (kohde.Tag.Equals("Vihu")) kohde.Destroy(); 
     122    } 
     123 
     124    void AmmuAseella(PlatformCharacter pelaaja) 
     125    { 
     126        PhysicsObject ammus = pelaaja.Weapon.Shoot(); 
     127 
     128        if (ammus != null) 
     129        { 
     130            //ammus.Size *= 3; 
     131            //ammus.Image = ... 
     132            //ammus.MaximumLifetime = TimeSpan.FromSeconds(2.0); 
     133        } 
    89134    } 
    90135 
     
    94139        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 
    95140 
    96         Keyboard.Listen(Key.Left, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, -nopeus); 
    97         Keyboard.Listen(Key.Right, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, nopeus); 
     141        Keyboard.Listen(Key.Left, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, -nopeus*10); 
     142        Keyboard.Listen(Key.Right, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, nopeus*10); 
    98143        Keyboard.Listen(Key.Up, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja1, hyppyNopeus); 
    99144 
     
    103148        ControllerOne.Listen(Button.DPadRight, ButtonState.Down, Liikuta, "Pelaaja liikkuu oikealle", pelaaja1, nopeus); 
    104149        ControllerOne.Listen(Button.A, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja1, hyppyNopeus); 
     150        Keyboard.Listen(Key.Space, ButtonState.Down, AmmuAseella, "Ammu", pelaaja1); 
    105151 
    106152        PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); 
     
    128174        Add(rajahdys); 
    129175        vihu.Destroy(); } 
     176     
    130177         
    131178 
  • 2016/27/PatrikK/Seikkailu/Seikkailu/Seikkailu/Seikkailu.csproj.Debug.cachefile

    r7899 r8043  
    44Content\pinksheep.xnb 
    55Content\creeper.xnb 
     6Content\kentta2.xnb 
  • 2016/27/PatrikK/Seikkailu/Seikkailu/Seikkailu/obj/x86/Debug/ContentPipeline-{FB1067CC-FEED-45F1-8CB8-8F3DD59AB260}.xml

    r7899 r8043  
    2727      <Options>None</Options> 
    2828      <Output>C:\MyTemp\PatrikK\Seikkailu\Seikkailu\Seikkailu\bin\x86\Debug\Content\kentta1.xnb</Output> 
    29       <Time>2016-07-06T14:49:58.5337149+03:00</Time> 
     29      <Time>2016-07-06T14:55:05.7277733+03:00</Time> 
    3030    </Item> 
    3131    <Item> 
     
    4646      <Output>C:\MyTemp\PatrikK\Seikkailu\Seikkailu\Seikkailu\bin\x86\Debug\Content\creeper.xnb</Output> 
    4747      <Time>2016-07-06T13:56:34.7163353+03:00</Time> 
     48    </Item> 
     49    <Item> 
     50      <Source>kentta2.txt</Source> 
     51      <Name>kentta2</Name> 
     52      <Importer>TextFileImporter</Importer> 
     53      <Processor>TextFileContentProcessor</Processor> 
     54      <Options>None</Options> 
     55      <Output>C:\MyTemp\PatrikK\Seikkailu\Seikkailu\Seikkailu\bin\x86\Debug\Content\kentta2.xnb</Output> 
     56      <Time>2016-07-08T11:18:53.5070916+03:00</Time> 
    4857    </Item> 
    4958    <BuildSuccessful>true</BuildSuccessful> 
  • 2016/27/PatrikK/Seikkailu/Seikkailu/Seikkailu/obj/x86/Debug/Seikkailu.csproj.FileListAbsolute.txt

    r7899 r8043  
    1111C:\MyTemp\PatrikK\Seikkailu\Seikkailu\Seikkailu\bin\x86\Debug\Content\pinksheep.xnb 
    1212C:\MyTemp\PatrikK\Seikkailu\Seikkailu\Seikkailu\bin\x86\Debug\Content\creeper.xnb 
     13C:\MyTemp\PatrikK\Seikkailu\Seikkailu\Seikkailu\obj\x86\Debug\Seikkailu.csprojResolveAssemblyReference.cache 
     14C:\MyTemp\PatrikK\Seikkailu\Seikkailu\Seikkailu\bin\x86\Debug\Content\kentta2.xnb 
  • 2016/27/PatrikK/Seikkailu/Seikkailu/Seikkailu/obj/x86/Debug/cachefile-{FB1067CC-FEED-45F1-8CB8-8F3DD59AB260}-targetpath.txt

    r7899 r8043  
    44Content\pinksheep.xnb 
    55Content\creeper.xnb 
     6Content\kentta2.xnb 
  • 2016/27/PatrikK/Seikkailu/Seikkailu/SeikkailuContent/SeikkailuContent.contentproj

    r7899 r8043  
    7676    </Compile> 
    7777  </ItemGroup> 
     78  <ItemGroup> 
     79    <Compile Include="kentta2.txt"> 
     80      <Name>kentta2</Name> 
     81      <Importer>TextFileImporter</Importer> 
     82      <Processor>TextFileContentProcessor</Processor> 
     83    </Compile> 
     84  </ItemGroup> 
    7885  <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 
    7986  <!--  To modify your build process, add your task inside one of the targets below and uncomment it.  
Note: See TracChangeset for help on using the changeset viewer.