Changeset 4989 for 2014/24/PietuR


Ignore:
Timestamp:
2014-06-12 15:01:45 (5 years ago)
Author:
pimaeeru
Message:
 
Location:
2014/24/PietuR/Ukkelipeli
Files:
15 edited

Legend:

Unmodified
Added
Removed
  • 2014/24/PietuR/Ukkelipeli/Ukkelipeli/Ukkelipeli/Ukkelipeli.cs

    r4962 r4989  
    99public class Ukkelipeli : PhysicsGame 
    1010{ 
     11 
     12 
    1113    bool voikoHypata = true; 
    1214    PhysicsObject Pallo = new PhysicsObject(30, 30); 
     
    1921 
    2022    FollowerBrain seuraajanAivot; 
     23    RandomMoverBrain satunnaisAivot; 
    2124 
    2225    AxleJoint liitos; 
     
    2831        Image Miekankuva = LoadImage("Miekka"); 
    2932        Image Tahtaimenkuva = LoadImage("Tahtain"); 
    30         Image Tikarinkuva = LoadImage("Tikari"); 
     33        Image Luodinkuva = LoadImage("Luoti"); 
     34        Image Paa1 = LoadImage("Paa1"); 
     35        Image Paa2 = LoadImage("Paa2"); 
     36        Image Keho1 = LoadImage("Keho1"); 
     37        Image Keho2 = LoadImage("Keho2"); 
    3138 
    3239        TileMap ruudut = TileMap.FromLevelAsset("Kentta"); 
     
    3643        ruudut.Execute(); 
    3744 
     45        Camera.ZoomToLevel(); 
     46 
    3847        PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); 
    3948        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 
     
    4453        Level.Background.CreateGradient(RandomGen.NextColor(), RandomGen.NextColor()); 
    4554 
    46         /*PhysicsStructure Tyyppi = new PhysicsStructure(); 
    47         Tyyppi.Position = new Vector(0, -290); 
    48  
    49         PhysicsObject Ukkeli = new PhysicsObject(45, 80); 
    50         Ukkeli.Mass = 15; 
    51         Ukkeli.Position = new Vector(0, 0); 
    52         Ukkeli.Image = Ukkelinkuva; 
    53         Ukkeli.CanRotate = false; 
    54         Ukkeli.Shape = Shape.FromImage(Ukkelinkuva); 
    55         Ukkeli.CollisionIgnoreGroup = 1; 
    56         Tyyppi.Add(Ukkeli); 
    57  
    58  
    59         PhysicsObject Miekka = new PhysicsObject(139.5, 15); 
    60         Miekka.Mass = 0.01; 
    61         Miekka.Shape = Shape.FromImage(Miekankuva); 
    62         Miekka.Image = Miekankuva; 
    63         Miekka.Position = new Vector(70, -20); 
    64         Miekka.IgnoresCollisionResponse = true; 
    65         Miekka.CollisionIgnoreGroup = 1; 
    66         Tyyppi.Add(Miekka); 
    67  
    68         Pallo.Mass = 0.1; 
    69         Pallo.Image = Tahtaimenkuva; 
    70         Pallo.Shape = Shape.FromImage(Tahtaimenkuva); 
    71         Pallo.Position = new Vector(140, -15); 
    72         Pallo.CollisionIgnoreGroup = 1; 
    73         Add(Pallo); 
    74         Pallo.IsVisible = true; 
    75         Pallo.CanRotate = true; 
    76         Pallo.IgnoresCollisionResponse = true; 
    77         Pallo.IgnoresGravity = true; 
    78         Mouse.IsCursorVisible = false; 
    79         Mouse.ListenMovement(0.1, KuunteleLiiketta, null); 
    80  
    81  
    82         FollowerBrain seuraajanAivot = new FollowerBrain(Pallo); 
    83         Miekka.Brain = seuraajanAivot; 
    84         seuraajanAivot.Speed = 10000; 
    85  
    86         //LiitaYhteen(Miekka, Ukkeli, new Vector(-69.75, 0)); 
    87         //LiitaYhteen(Miekka, Pallo, new Vector(69.75, 0)); 
    88  
    89  
    90         TileMap ruudut = TileMap.FromLevelAsset("kentta"); 
    91         */ 
    92  
    93  
    94         //Surfaces s = Level.CreateBorders(1.0, true, RandomGen.NextColor()); 
    95         //ruudut.Tag = "lattia"; 
    9655        AddCollisionHandler(Ukkeli, "lattia", delegate(PhysicsObject tormaaja, PhysicsObject kohde) { voikoHypata = true; }); 
    97         //AddCollisionHandler(Pallo, "lattia", lattianlapi); 
     56 
    9857 
    9958 
     
    12887        Timer ajastin = new Timer(); 
    12988        ajastin.Interval = 0.5; 
    130         ajastin.Timeout += delegate { LuoAse(Tikarinkuva, 91, 15); }; 
     89        ajastin.Timeout += delegate { LuoAse(Tikarinkuva, 91, 15, 500); }; 
    13190        ajastin.Start(); 
    13291 
     92 
     93        Timer ajastin2 = new Timer(); 
     94        ajastin2.Interval = 5; 
     95        ajastin2.Timeout += delegate { LuoAse(Luodinkuva, 30, 20, 1500); }; 
     96        ajastin2.Start(); 
    13397    } 
    13498 
     
    137101            if (ase.Tag.ToString() == "Ase") 
    138102            { 
     103 
     104                Image Paa1 = LoadImage("Paa1"); 
     105                Image Paa2 = LoadImage("Paa2"); 
     106                Image Keho1 = LoadImage("Keho1"); 
     107                Image Keho2 = LoadImage("Keho2"); 
     108                Image Veri = LoadImage("Veri"); 
     109 
    139110                tormaaja.Destroy(); 
    140111                seuraajanAivot.Active = false; 
     112                Vector uusivektori0 = new Vector(tormaaja.AbsolutePosition.X - 10, tormaaja.AbsolutePosition.Y); 
     113                Lisaaosa(uusivektori0, Keho1, 35, 48); 
     114                Vector uusivektori = new Vector(tormaaja.AbsolutePosition.X + 35, tormaaja.AbsolutePosition.Y); 
     115                Lisaaosa(uusivektori, Keho2, 38, 52); 
     116                Vector uusivektori2 = new Vector(tormaaja.AbsolutePosition.X, tormaaja.AbsolutePosition.Y + 52); 
     117                Lisaaosa(uusivektori2, Paa1, 50, 50); 
     118                Vector uusivektori3 = new Vector(tormaaja.AbsolutePosition.X + 38, tormaaja.AbsolutePosition.Y + 52); 
     119                Lisaaosa(uusivektori3, Paa2, 50, 50); 
     120 
     121                int pMax = 200; 
     122                ExplosionSystem rajahdys = new ExplosionSystem(LoadImage("Veri"), pMax); 
     123                rajahdys.MaxScale = 2; 
     124                Add(rajahdys); 
     125                int pMaara = 100; 
     126                rajahdys.AddEffect(tormaaja.AbsolutePosition.X, tormaaja.AbsolutePosition.Y, pMaara); 
     127 
     128                Explosion rajahdys2 = new Explosion(50); 
     129                rajahdys2.Position = tormaaja.Position; 
     130                rajahdys2.Image = null; 
     131                rajahdys2.Sound = null; 
     132                rajahdys2.Speed = 500.0; 
     133                rajahdys2.Force = 2000; 
     134                Add(rajahdys2); 
    141135            } 
    142136        } 
     137        void Lisaaosa(Vector paikka, Image kuva, double korkeus, double leveys) 
     138        { 
     139            PhysicsObject Osa = new PhysicsObject(korkeus, leveys); 
     140            Osa.Mass = 4; 
     141            Osa.Position = paikka; 
     142            Osa.Shape = Shape.FromImage(kuva); 
     143            Osa.Image = kuva; 
     144            Add(Osa); 
     145 
     146 
     147        } 
     148 
     149 
    143150    void LiikutaKohdetta(Vector vektori, PhysicsObject Kohde) 
    144151    { 
     
    185192        Image Tahtaimenkuva = LoadImage("Tahtain"); 
    186193        Image Tikarinkuva = LoadImage("Tikari"); 
    187  
    188         //PhysicsStructure Tyyppi = new PhysicsStructure(); 
    189         //Tyyppi.Position = paikka; 
    190  
    191         //PhysicsObject Ukkeli = new PhysicsObject(45, 80); 
    192194        Ukkeli.Mass = 15; 
    193195        Ukkeli.KineticFriction = 0.0; 
     
    195197        Ukkeli.Image = Ukkelinkuva; 
    196198        Ukkeli.CanRotate = false; 
    197         //Ukkeli.Shape = Shape.FromImage(Ukkelinkuva); 
    198199        Ukkeli.Shape = Shape.Rectangle; 
    199200        Ukkeli.CollisionIgnoreGroup = 1; 
    200201        Add(Ukkeli); 
    201         //Tyyppi.Add(Ukkeli); 
    202  
    203          
    204  
    205202 
    206203        Miekka = new PhysicsObject(139.5, 15); 
     
    214211        LiitaYhteen(Ukkeli, Miekka, Vector.Zero); 
    215212 
     213        AddCollisionHandler(Miekka, Torjunta); 
     214 
     215 
    216216        AddCollisionHandler(Ukkeli, Osuma); 
    217  
    218  
    219  
    220         //Tyyppi.Add(Miekka); 
    221217 
    222218        Pallo.Mass = 0.1; 
     
    234230        Mouse.ListenMovement(0.1, KuunteleLiiketta, null); 
    235231 
    236  
    237232        seuraajanAivot = new FollowerBrain(Pallo); 
    238233        Miekka.Brain = seuraajanAivot; 
     
    241236        seuraajanAivot.DistanceClose = 100; 
    242237        seuraajanAivot.Active = true; 
    243         //seuraajanAivot.TurnWhileMoving = true; 
    244238         
    245239    } 
    246240 
    247     protected override void Update(Time time) 
    248     { 
    249         if (!Miekka.IsInsideRect(Pallo.Position)) 
    250         { 
    251             //Angle kulma = (Pallo.AbsolutePosition - Miekka.AbsolutePosition).Angle; 
    252             //Miekka.Angle = kulma; 
    253         } 
    254  
    255         base.Update(time); 
    256     } 
    257     void LuoAse(Image kuva, double korkeus, double leveys) 
     241    void LuoAse(Image kuva, double korkeus, double leveys, double nopeus) 
    258242    { 
    259243        PhysicsObject Ase = new PhysicsObject(korkeus, leveys); 
     
    263247        Ase.CollisionIgnoreGroup = 3; 
    264248        Ase.Tag = "Ase"; 
    265         Ase.Position = new Vector(RandomGen.NextDouble(Level.Left - 200, Level.Right + 200), RandomGen.NextDouble(Level.Bottom - 200, Level.Top + 200)); 
     249        Ase.MaximumLifetime = TimeSpan.FromSeconds(20); 
     250 
     251        Vector vektori1 = new Vector(RandomGen.NextDouble(Level.Right, Level.Right + 300), RandomGen.NextDouble(Level.Bottom, Level.Top)); 
     252        Vector vektori2 = new Vector(RandomGen.NextDouble(Level.Left - 300, Level.Left), RandomGen.NextDouble(Level.Bottom, Level.Top)); 
     253        Vector vektori3 = new Vector(RandomGen.NextDouble(Level.Left - 300, Level.Right + 300), RandomGen.NextDouble(Level.Top, Level.Top + 300)); 
     254 
     255        int vektorinumero; 
     256        vektorinumero = RandomGen.NextInt(1,4); 
     257 
     258        if (vektorinumero == 1) 
     259        { 
     260            Ase.Position = vektori1; 
     261        } 
     262        else 
     263        { 
     264            if (vektorinumero == 2) 
     265            { 
     266                Ase.Position = vektori2; 
     267            } 
     268            else 
     269            { 
     270                Ase.Position = vektori3; 
     271            } 
     272        } 
     273         
     274        //Ase.Position = new Vector(RandomGen.NextDouble(Level.Left - 200, Level.Right + 200), RandomGen.NextDouble(Level.Bottom, Level.Top + 200)); 
    266275        Add(Ase); 
    267         Ase.Hit(new Vector(RandomGen.NextDouble(Level.Left - 200, Level.Right + 200), RandomGen.NextDouble(Level.Bottom - 200, Level.Top + 200))); 
    268  
    269         RandomMoverBrain satunnaisAivot = new RandomMoverBrain(200); 
     276        //Ase.Hit(new Vector(RandomGen.NextDouble(Level.Left - 200, Level.Right + 200), RandomGen.NextDouble(Level.Bottom - 200, Level.Top + 200))); 
     277 
     278        /*satunnaisAivot = new RandomMoverBrain(200); 
    270279        satunnaisAivot.ChangeMovementSeconds = 100000000; 
    271280        Ase.Brain = satunnaisAivot; 
    272         satunnaisAivot.TurnWhileMoving = true; 
    273  
     281        satunnaisAivot.TurnWhileMoving = true;*/ 
     282 
     283        Ase.Hit((Ukkeli.AbsolutePosition - Ase.AbsolutePosition).Normalize() * nopeus); 
     284        Ase.Angle = Ase.Velocity.Angle; 
     285    } 
     286 
     287    void Torjunta(PhysicsObject miekka, PhysicsObject kohde) 
     288    { 
     289        if (kohde.Tag.ToString() == "Ase") 
     290        { 
     291            kohde.Hit((kohde.AbsolutePosition - Ukkeli.AbsolutePosition).Normalize() * 1000); 
     292        } 
    274293    } 
    275294} 
  • 2014/24/PietuR/Ukkelipeli/Ukkelipeli/Ukkelipeli/Ukkelipeli.csproj.Debug.cachefile

    r4962 r4989  
    55Content\Kentta.xnb 
    66Content\Tikari.xnb 
     7Content\Keho1.xnb 
     8Content\Keho2.xnb 
     9Content\Paa1.xnb 
     10Content\Paa2.xnb 
     11Content\Veri.xnb 
     12Content\Luoti.xnb 
    713Content\Kentta.txt 
  • 2014/24/PietuR/Ukkelipeli/Ukkelipeli/Ukkelipeli/obj/x86/Debug/ContentPipeline-{766035AA-3007-4DAD-9EA9-92D669CE3E8D}.xml

    r4962 r4989  
    5656      <Time>2014-06-11T12:50:21.7604224+03:00</Time> 
    5757    </Item> 
     58    <Item> 
     59      <Source>Keho1.png</Source> 
     60      <Name>Keho1</Name> 
     61      <Importer>TextureImporter</Importer> 
     62      <Processor>TextureProcessor</Processor> 
     63      <Options>None</Options> 
     64      <Output>C:\MyTemp\PietuR\Ukkelipeli\Ukkelipeli\Ukkelipeli\bin\x86\Debug\Content\Keho1.xnb</Output> 
     65      <Time>2014-06-12T10:54:03.6914963+03:00</Time> 
     66    </Item> 
     67    <Item> 
     68      <Source>Keho2.png</Source> 
     69      <Name>Keho2</Name> 
     70      <Importer>TextureImporter</Importer> 
     71      <Processor>TextureProcessor</Processor> 
     72      <Options>None</Options> 
     73      <Output>C:\MyTemp\PietuR\Ukkelipeli\Ukkelipeli\Ukkelipeli\bin\x86\Debug\Content\Keho2.xnb</Output> 
     74      <Time>2014-06-12T10:54:37.7403429+03:00</Time> 
     75    </Item> 
     76    <Item> 
     77      <Source>Paa1.png</Source> 
     78      <Name>Paa1</Name> 
     79      <Importer>TextureImporter</Importer> 
     80      <Processor>TextureProcessor</Processor> 
     81      <Options>None</Options> 
     82      <Output>C:\MyTemp\PietuR\Ukkelipeli\Ukkelipeli\Ukkelipeli\bin\x86\Debug\Content\Paa1.xnb</Output> 
     83      <Time>2014-06-12T12:12:34.4698236+03:00</Time> 
     84    </Item> 
     85    <Item> 
     86      <Source>Paa2.png</Source> 
     87      <Name>Paa2</Name> 
     88      <Importer>TextureImporter</Importer> 
     89      <Processor>TextureProcessor</Processor> 
     90      <Options>None</Options> 
     91      <Output>C:\MyTemp\PietuR\Ukkelipeli\Ukkelipeli\Ukkelipeli\bin\x86\Debug\Content\Paa2.xnb</Output> 
     92      <Time>2014-06-12T12:13:14.1598236+03:00</Time> 
     93    </Item> 
     94    <Item> 
     95      <Source>Veri.png</Source> 
     96      <Name>Veri</Name> 
     97      <Importer>TextureImporter</Importer> 
     98      <Processor>TextureProcessor</Processor> 
     99      <Options>None</Options> 
     100      <Output>C:\MyTemp\PietuR\Ukkelipeli\Ukkelipeli\Ukkelipeli\bin\x86\Debug\Content\Veri.xnb</Output> 
     101      <Time>2014-06-12T12:25:07.2282236+03:00</Time> 
     102    </Item> 
     103    <Item> 
     104      <Source>Luoti.png</Source> 
     105      <Name>Luoti</Name> 
     106      <Importer>TextureImporter</Importer> 
     107      <Processor>TextureProcessor</Processor> 
     108      <Options>None</Options> 
     109      <Output>C:\MyTemp\PietuR\Ukkelipeli\Ukkelipeli\Ukkelipeli\bin\x86\Debug\Content\Luoti.xnb</Output> 
     110      <Time>2014-06-12T14:16:08.0503753+03:00</Time> 
     111    </Item> 
    58112    <BuildSuccessful>true</BuildSuccessful> 
    59113    <Settings> 
  • 2014/24/PietuR/Ukkelipeli/Ukkelipeli/Ukkelipeli/obj/x86/Debug/Ukkelipeli.csproj.FileListAbsolute.txt

    r4962 r4989  
    1414C:\MyTemp\PietuR\Ukkelipeli\Ukkelipeli\Ukkelipeli\bin\x86\Debug\Content\Kentta.txt 
    1515C:\MyTemp\PietuR\Ukkelipeli\Ukkelipeli\Ukkelipeli\bin\x86\Debug\Content\Tikari.xnb 
     16C:\MyTemp\PietuR\Ukkelipeli\Ukkelipeli\Ukkelipeli\bin\x86\Debug\Content\Keho1.xnb 
     17C:\MyTemp\PietuR\Ukkelipeli\Ukkelipeli\Ukkelipeli\bin\x86\Debug\Content\Keho2.xnb 
     18C:\MyTemp\PietuR\Ukkelipeli\Ukkelipeli\Ukkelipeli\bin\x86\Debug\Content\Paa1.xnb 
     19C:\MyTemp\PietuR\Ukkelipeli\Ukkelipeli\Ukkelipeli\bin\x86\Debug\Content\Paa2.xnb 
     20C:\MyTemp\PietuR\Ukkelipeli\Ukkelipeli\Ukkelipeli\bin\x86\Debug\Content\Veri.xnb 
     21C:\MyTemp\PietuR\Ukkelipeli\Ukkelipeli\Ukkelipeli\bin\x86\Debug\Content\Luoti.xnb 
  • 2014/24/PietuR/Ukkelipeli/Ukkelipeli/Ukkelipeli/obj/x86/Debug/cachefile-{766035AA-3007-4DAD-9EA9-92D669CE3E8D}-targetpath.txt

    r4962 r4989  
    55Content\Kentta.xnb 
    66Content\Tikari.xnb 
     7Content\Keho1.xnb 
     8Content\Keho2.xnb 
     9Content\Paa1.xnb 
     10Content\Paa2.xnb 
     11Content\Veri.xnb 
     12Content\Luoti.xnb 
    713Content\Kentta.txt 
  • 2014/24/PietuR/Ukkelipeli/Ukkelipeli/UkkelipeliContent/UkkelipeliContent.contentproj

    r4962 r4989  
    8888    </Compile> 
    8989  </ItemGroup> 
     90  <ItemGroup> 
     91    <Compile Include="Keho1.png"> 
     92      <Name>Keho1</Name> 
     93      <Importer>TextureImporter</Importer> 
     94      <Processor>TextureProcessor</Processor> 
     95    </Compile> 
     96    <Compile Include="Keho2.png"> 
     97      <Name>Keho2</Name> 
     98      <Importer>TextureImporter</Importer> 
     99      <Processor>TextureProcessor</Processor> 
     100    </Compile> 
     101    <Compile Include="Paa1.png"> 
     102      <Name>Paa1</Name> 
     103      <Importer>TextureImporter</Importer> 
     104      <Processor>TextureProcessor</Processor> 
     105    </Compile> 
     106    <Compile Include="Paa2.png"> 
     107      <Name>Paa2</Name> 
     108      <Importer>TextureImporter</Importer> 
     109      <Processor>TextureProcessor</Processor> 
     110    </Compile> 
     111  </ItemGroup> 
     112  <ItemGroup> 
     113    <Compile Include="Veri.png"> 
     114      <Name>Veri</Name> 
     115      <Importer>TextureImporter</Importer> 
     116      <Processor>TextureProcessor</Processor> 
     117    </Compile> 
     118  </ItemGroup> 
     119  <ItemGroup> 
     120    <Compile Include="Luoti.png"> 
     121      <Name>Luoti</Name> 
     122      <Importer>TextureImporter</Importer> 
     123      <Processor>TextureProcessor</Processor> 
     124    </Compile> 
     125  </ItemGroup> 
    90126  <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 
    91127  <!--  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.