Changeset 7952 for 2016


Ignore:
Timestamp:
2016-07-07 14:01:50 (3 years ago)
Author:
otoskinn
Message:
 
Location:
2016/27/OttoK
Files:
19 added
6 deleted
10 edited

Legend:

Unmodified
Added
Removed
  • 2016/27/OttoK/Survivetown/Survivetown/Survivetown/Survivetown.cs

    r7886 r7952  
    66using Jypeli.Effects; 
    77using Jypeli.Widgets; 
     8using System.Linq; 
    89 
    910public class Survivetown : PhysicsGame 
     
    1718    Image aknkuva = LoadImage("ak47"); 
    1819    Image ammuksenkuva = LoadImage("bullet"); 
     20    Image autonkuva = LoadImage("autonkuva2"); 
     21    Image jouninkuva = LoadImage("jouni"); 
     22    Image antinkuva = LoadImage("anttijussi"); 
     23    IntMeter pingviinilaskuri = new IntMeter(0, 0, 1000000000); 
    1924    PhysicsObject pelaaja; 
    2025    double nopeus = 1000; 
    2126    bool sprint = false; 
     27    bool Autossa = false; 
    2228    PhysicsObject jonne; 
     29 
    2330    AssaultRifle pelaajanase; 
    2431    public override void Begin() 
     
    2936 
    3037        Keyboard.Listen(Key.Left, ButtonState.Down, 
    31         LiikutaPelaajaa, null, new Vector(-nopeus, 0)); 
     38        LiikutaPelaajaa, null, new Vector(-1, 0)); 
    3239        Keyboard.Listen(Key.Right, ButtonState.Down, 
    33         LiikutaPelaajaa, null, new Vector(nopeus, 0)); 
     40        LiikutaPelaajaa, null, new Vector(1, 0)); 
    3441        Keyboard.Listen(Key.Up, ButtonState.Down, 
    35         LiikutaPelaajaa, null, new Vector(0, nopeus)); 
     42        LiikutaPelaajaa, null, new Vector(0,1)); 
    3643        Keyboard.Listen(Key.Down, ButtonState.Down, 
    37         LiikutaPelaajaa, null, new Vector(0, -nopeus)); 
     44        LiikutaPelaajaa, null, new Vector(0, -1)); 
    3845        Keyboard.Listen(Key.LeftShift, ButtonState.Down, () => { sprint = true; }, "juokse"); 
    3946        Keyboard.Listen(Key.LeftShift, ButtonState.Released, () => { sprint = false; }, ""); 
     47         
    4048    } 
    4149    void LuoKentta() 
     
    5159        ruudut.Execute(20, 20); 
    5260 
     61        pingviinilaskuri.Value = 5; 
     62        pingviinilaskuri.LowerLimit += LopetaPeli; 
     63 
    5364        Level.Size = new Vector(4000, 4000); 
    5465        Level.CreateBorders(); 
     
    6172        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 
    6273        Keyboard.Listen(Key.Space, ButtonState.Down, AmmuAseella, "Ammu"); 
     74        Keyboard.Listen(Key.Enter, ButtonState.Pressed, AvaaKirjoitusIkkuna, "Avaa kirjoitusikkunan"); 
     75        Keyboard.Listen(Key.E, ButtonState.Pressed, Kayta, null); 
     76        Keyboard.Listen(Key.R, ButtonState.Pressed, UlosAutosta, "Mene ulos autosta"); 
    6377    } 
    6478    void LuoPelaaja(Vector paikka, double leveys, double korkeus) 
     
    8498    void LiikutaPelaajaa(Vector vektori) 
    8599    { 
     100        if (Autossa) 
     101        { 
     102            pelaaja.Angle = vektori.Angle; 
     103             
     104        } 
    86105        if (sprint) 
    87106        { 
    88             pelaaja.Push(vektori * 2); 
     107            pelaaja.Push(vektori * 2*nopeus); 
    89108            return; 
    90109        } 
    91         pelaaja.Push(vektori); 
     110        pelaaja.Push(vektori*nopeus); 
    92111        if (pelaajanase == null) return; 
    93112        pelaajanase.Angle = pelaaja.Velocity.Angle; 
     
    102121        pingviini.Color = Color.Red; 
    103122        pingviini.Position = paikka; 
     123        pingviini.Mass = 100; 
    104124        pingviini.Tag = "pingu"; 
    105125        pingviini.CanRotate = false; 
    106126        pingviini.Image = pengunkuva; 
    107127        Add(pingviini); 
     128        pingviinilaskuri.Value++; 
    108129    } 
    109130    void LuoJonne() 
     
    115136        jonne.IgnoresExplosions = true; 
    116137        jonne.Image = jonnenkuva; 
    117         jonne.Mass = 100000000; 
     138        jonne.Mass = 500; 
    118139        Add(jonne); 
    119140    } 
     
    177198    { 
    178199        if (pelaajanase == null) return; 
    179             PhysicsObject ammus = pelaajanase.Shoot(); 
     200        PhysicsObject ammus = pelaajanase.Shoot(); 
    180201 
    181202        if (ammus != null) 
     
    191212        { 
    192213            pingu.Destroy(); 
     214            pingviinilaskuri.Value--; 
    193215            ammus.Destroy(); 
    194216        } 
    195     } 
    196     void LuoAuto(Vector paikka, double x , double y) 
    197     { 
    198         PhysicsObject auto = new PhysicsObject(250, 100); 
     217        else if ((string)pingu.Tag == "auto") 
     218        { 
     219            pingu.Destroy(); 
     220            ammus.Destroy(); 
     221        } 
     222         
     223    } 
     224    void LuoAuto(Vector paikka, double x, double y) 
     225    { 
     226        Automobile auto = new Automobile(250, 100); 
    199227        auto.Color = Color.Yellow; 
    200228        auto.Position = paikka; 
    201         auto.Mass = 1000; 
     229        auto.Image = autonkuva; 
     230        auto.Mass = 350; 
    202231        auto.Tag = "auto"; 
    203232        Add(auto); 
    204233    } 
     234    void MeneAutoon(PhysicsObject pelaaja, PhysicsObject auto) 
     235    { 
     236        pelaaja.Image = autonkuva; 
     237        pelaaja.Position = auto.Position; 
     238        pelaaja.Size = auto.Size; 
     239        auto.Destroy(); 
     240        pelaaja.LinearDamping = 0.98; 
     241 
     242        Autossa = true; 
     243    } 
     244    void Kayta() 
     245    { 
     246 
     247        List<GameObject> autot = GetObjectsWithTag("auto"); 
     248        double lahinEtaisyys = autot.Min(a => Vector.Distance(a.Position, pelaaja.Position)); 
     249        GameObject lahinAuto = autot.Find(a => Vector.Distance(a.Position, pelaaja.Position) == lahinEtaisyys); 
     250 
     251 
     252        if (lahinAuto != null && Vector.Distance(pelaaja.Position, lahinAuto.Position) < 100) 
     253        { 
     254            PhysicsObject auto = lahinAuto as PhysicsObject; 
     255            MeneAutoon(pelaaja, auto); 
     256        } 
     257 
     258    } 
     259    void UlosAutosta() 
     260    { 
     261        if (Autossa == true) 
     262        { 
     263            pelaaja.Image = pelaajankuva; 
     264            pelaaja.Size = new Vector(80, 50); 
     265            LuoAuto(pelaaja.Position + new Vector(0, -72), 0, 0); 
     266            pelaaja.LinearDamping = 0.9; 
     267            Autossa = false; 
     268             
     269        } 
     270    } 
     271    void AvaaKirjoitusIkkuna() 
     272    { 
     273        InputWindow kysymysIkkuna = new InputWindow("Kirjoita  koodi"); 
     274        kysymysIkkuna.TextEntered += ProcessInput; 
     275        Add(kysymysIkkuna); 
     276    } 
     277    void ProcessInput(InputWindow ikkuna) 
     278    { 
     279        string vastaus = ikkuna.InputBox.Text; 
     280        if (vastaus == "superspeed") 
     281        { 
     282            nopeus = 2500; 
     283        } 
     284        else if (vastaus == "normalspeed") 
     285        { 
     286            nopeus = 1000; 
     287        } 
     288        else if (vastaus == "createcar") 
     289        { 
     290            LuoAuto(pelaaja.Position, 100, -72); 
     291 
     292        } 
     293        else if (vastaus == "jouni") 
     294        { 
     295            LuoJouni(pelaaja.Position, 0, -500); 
     296        } 
     297        else if (vastaus== "anttijussi") 
     298        { 
     299            LuoAnttijussi(pelaaja.Position, 0,0); 
     300        } 
     301    } 
     302    void LuoJouni(Vector paikka, double x, double y) 
     303    { 
     304        PhysicsObject jouni = new PhysicsObject(95, 133); 
     305        jouni.Image = jouninkuva; 
     306        Add(jouni);    
     307    } 
     308    void LuoAnttijussi(Vector paikka,double x, double y) 
     309    { 
     310        PhysicsObject anttijussi = new PhysicsObject(184, 257); 
     311        anttijussi.Image = antinkuva; 
     312    } 
     313    void LopetaPeli() 
     314    { 
     315        Exit(); 
     316    } 
    205317} 
  • 2016/27/OttoK/Survivetown/Survivetown/Survivetown/Survivetown.csproj.Debug.cachefile

    r7886 r7952  
    1010Content\bullet.xnb 
    1111Content\kenntav3.xnb 
     12Content\autokuva.xnb 
     13Content\autonkuva2.xnb 
     14Content\anttijussi.xnb 
     15Content\jouni.xnb 
  • 2016/27/OttoK/Survivetown/Survivetown/Survivetown/obj/x86/Debug/ContentPipeline-{AF625287-3FBB-4ACD-9F6A-000F734EB560}.xml

    r7886 r7952  
    101101      <Time>2016-07-06T13:47:43.9584207+03:00</Time> 
    102102    </Item> 
     103    <Item> 
     104      <Source>autokuva.png</Source> 
     105      <Name>autokuva</Name> 
     106      <Importer>TextureImporter</Importer> 
     107      <Processor>TextureProcessor</Processor> 
     108      <Options>None</Options> 
     109      <Output>C:\MyTemp\OttoK\Survivetown\Survivetown\Survivetown\bin\x86\Debug\Content\autokuva.xnb</Output> 
     110      <Time>2016-07-07T10:38:29.9993309+03:00</Time> 
     111    </Item> 
     112    <Item> 
     113      <Source>autonkuva2.png</Source> 
     114      <Name>autonkuva2</Name> 
     115      <Importer>TextureImporter</Importer> 
     116      <Processor>TextureProcessor</Processor> 
     117      <Options>None</Options> 
     118      <Output>C:\MyTemp\OttoK\Survivetown\Survivetown\Survivetown\bin\x86\Debug\Content\autonkuva2.xnb</Output> 
     119      <Time>2016-07-07T12:43:48.5755309+03:00</Time> 
     120    </Item> 
     121    <Item> 
     122      <Source>anttijussi.png</Source> 
     123      <Name>anttijussi</Name> 
     124      <Importer>TextureImporter</Importer> 
     125      <Processor>TextureProcessor</Processor> 
     126      <Options>None</Options> 
     127      <Output>C:\MyTemp\OttoK\Survivetown\Survivetown\Survivetown\bin\x86\Debug\Content\anttijussi.xnb</Output> 
     128      <Time>2016-07-07T13:00:23.0095309+03:00</Time> 
     129    </Item> 
     130    <Item> 
     131      <Source>jouni.png</Source> 
     132      <Name>jouni</Name> 
     133      <Importer>TextureImporter</Importer> 
     134      <Processor>TextureProcessor</Processor> 
     135      <Options>None</Options> 
     136      <Output>C:\MyTemp\OttoK\Survivetown\Survivetown\Survivetown\bin\x86\Debug\Content\jouni.xnb</Output> 
     137      <Time>2016-07-07T13:00:29.3765309+03:00</Time> 
     138    </Item> 
    103139    <BuildSuccessful>true</BuildSuccessful> 
    104140    <Settings> 
  • 2016/27/OttoK/Survivetown/Survivetown/Survivetown/obj/x86/Debug/Survivetown.csproj.FileListAbsolute.txt

    r7886 r7952  
    1818C:\MyTemp\OttoK\Survivetown\Survivetown\Survivetown\bin\x86\Debug\Content\bullet.xnb 
    1919C:\MyTemp\OttoK\Survivetown\Survivetown\Survivetown\bin\x86\Debug\Content\kenntav3.xnb 
     20C:\MyTemp\OttoK\Survivetown\Survivetown\Survivetown\bin\x86\Debug\Content\autokuva.xnb 
     21C:\MyTemp\OttoK\Survivetown\Survivetown\Survivetown\bin\x86\Debug\Content\autonkuva2.xnb 
     22C:\MyTemp\OttoK\Survivetown\Survivetown\Survivetown\bin\x86\Debug\Content\anttijussi.xnb 
     23C:\MyTemp\OttoK\Survivetown\Survivetown\Survivetown\bin\x86\Debug\Content\jouni.xnb 
  • 2016/27/OttoK/Survivetown/Survivetown/Survivetown/obj/x86/Debug/cachefile-{AF625287-3FBB-4ACD-9F6A-000F734EB560}-targetpath.txt

    r7886 r7952  
    1010Content\bullet.xnb 
    1111Content\kenntav3.xnb 
     12Content\autokuva.xnb 
     13Content\autonkuva2.xnb 
     14Content\anttijussi.xnb 
     15Content\jouni.xnb 
  • 2016/27/OttoK/Survivetown/Survivetown/SurvivetownContent/SurvivetownContent.contentproj

    r7886 r7952  
    122122    </Compile> 
    123123  </ItemGroup> 
     124  <ItemGroup> 
     125    <Compile Include="autokuva.png"> 
     126      <Name>autokuva</Name> 
     127      <Importer>TextureImporter</Importer> 
     128      <Processor>TextureProcessor</Processor> 
     129    </Compile> 
     130  </ItemGroup> 
     131  <ItemGroup> 
     132    <Compile Include="autonkuva2.png"> 
     133      <Name>autonkuva2</Name> 
     134      <Importer>TextureImporter</Importer> 
     135      <Processor>TextureProcessor</Processor> 
     136    </Compile> 
     137  </ItemGroup> 
     138  <ItemGroup> 
     139    <Compile Include="anttijussi.png"> 
     140      <Name>anttijussi</Name> 
     141      <Importer>TextureImporter</Importer> 
     142      <Processor>TextureProcessor</Processor> 
     143    </Compile> 
     144  </ItemGroup> 
     145  <ItemGroup> 
     146    <Compile Include="jouni.png"> 
     147      <Name>jouni</Name> 
     148      <Importer>TextureImporter</Importer> 
     149      <Processor>TextureProcessor</Processor> 
     150    </Compile> 
     151  </ItemGroup> 
    124152  <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 
    125153  <!--  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.