Changeset 7616 for 2016/26


Ignore:
Timestamp:
2016-07-01 11:31:45 (3 years ago)
Author:
jonnurmi
Message:
 
Location:
2016/26/JonniN/TankHero
Files:
14 edited

Legend:

Unmodified
Added
Removed
  • 2016/26/JonniN/TankHero/TankHero/TankHero/TankHero.cs

    r7606 r7616  
    1111     
    1212    Cannon torni; 
    13     Cannon botintorni; 
    1413    Image leopard2a4 = LoadImage("leopard2a4"); 
    1514    Image torninKuva = LoadImage("leopard2a4valmistorni"); 
     
    2221    PhysicsObject botti; 
    2322    Vector spawn = new Vector(-1400, -1300); 
     23 
    2424    public override void Begin() 
    2525    { 
     26        MultiSelectWindow alkuValikko = new MultiSelectWindow("Main Menu", "Start game", "Quit the game"); 
     27        alkuValikko.AddItemHandler(0, AloitaPeli); 
     28        alkuValikko.AddItemHandler(1, Exit); 
     29        Add(alkuValikko); 
     30    } 
     31 
     32     
     33    void AloitaPeli() 
     34    { 
    2635        Mouse.IsCursorVisible = true; 
    27          
     36 
    2837        Vector kursoriruudulla = Mouse.PositionOnScreen; 
    2938        Vector paikkakentällä = Mouse.PositionOnWorld; 
    30         LuoValikko(); 
    3139        LuoKentta(); 
    3240        LuoPelaaja(); 
    33         LuoBotti(); 
    3441        LuoOhjaimet(); 
    3542        MediaPlayer.Play("684240_Zound---Metallic"); 
    36          
     43 
    3744 
    3845        PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); 
    3946        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 
    4047    } 
    41      
    42     void LuoValikko() 
    43     { 
    44         MultiSelectWindow alkuValikko = new MultiSelectWindow("Main Menu", "Start game", "Quit the game"); 
    45         alkuValikko.AddItemHandler(0, Begin); 
    46         alkuValikko.AddItemHandler(1, Quit); 
    47         Add(alkuValikko); 
    48     } 
    49     void Quit() 
    50     { 
    51          
    52     } 
     48 
    5349    void LuoPelaaja() 
    5450    { 
     
    7571 
    7672    } 
    77     void LuoBotti() 
    78     { 
    79         PhysicsObject botti = new PhysicsObject(150, 200); 
     73 
     74     
     75    void LuoBotti(Vector paikka, double leveys, double korkeus) 
     76    { 
     77        PhysicsObject botti = new PhysicsObject(leveys*1.7, korkeus*1.7); 
    8078        botti.Image = bottiRunko; 
     79        botti.Position = paikka; 
    8180        botti.LinearDamping = 0.90; 
    8281        botti.AngularDamping = 0.99; 
    8382        Add(botti); 
    8483 
    85         botintorni = new Cannon(100, 180); 
     84        Cannon botintorni = new Cannon(220, 70); 
    8685        botintorni.Image = bottiTorni; 
    87         botintorni.Position = new Vector(-10, 40); 
     86        botintorni.Position += new Vector(-8, 12); 
     87        botintorni.Ammo.Value = 100; 
     88        botintorni.ProjectileCollision = AmmusOsuu; 
    8889        botti.Add(botintorni); 
     90 
     91        /* 
     92        RandomMoverBrain torninAivot = new RandomMoverBrain(); 
     93        torninAivot.Speed = 100; 
     94        botintorni.Brain = torninAivot; 
     95        torninAivot.Active = true; 
     96        */ 
     97 
     98        Timer ajaastin = new Timer(); 
     99        ajaastin.Interval = 3; 
     100        ajaastin.Timeout += delegate { VihollinenAmpuu(botintorni); }; 
     101        ajaastin.Start(); 
    89102 
    90103        FollowerBrain botinaivot = new FollowerBrain("pelaaja1"); 
    91104        botinaivot.Speed = 200; 
    92         botinaivot.DistanceFar = 500; 
    93105        botti.Brain = botinaivot; 
    94         botinaivot.Active = true; 
    95  
    96         botinaivot.TargetClose += mitaTapahtuuKunOllaanLahella; 
    97  
    98  
    99  
    100     } 
    101     void mitaTapahtuuKunOllaanLahella() 
    102     { 
    103          
    104     } 
     106        botinaivot.DistanceClose = 300; 
     107        botinaivot.DistanceFar = 800; 
     108        botinaivot.StopWhenTargetClose = true; 
     109        botinaivot.TurnWhileMoving = true; 
     110 
     111        Timer ajastin = new Timer(); 
     112        ajastin.Interval = 0.02; 
     113        ajastin.Timeout += delegate { botintorni.AbsoluteAngle = (pelaaja.Position - botintorni.AbsolutePosition).Angle; }; 
     114        ajastin.Start(); 
     115 
     116 
     117 
     118    } 
     119 
     120    void VihollinenAmpuu(Cannon botintorni) 
     121    { 
     122        //botintorni.AbsoluteAngle = (botintorni.Position - pelaaja.Position).Angle; 
     123 
     124        PhysicsObject ammus = botintorni.Shoot(); 
     125 
     126        if (ammus != null) 
     127        { 
     128            ammus.Size *= 1; 
     129            //tykki.FireRate = 10; 
     130            Explosion rajahdys = new Explosion(60); 
     131            rajahdys.Position = botintorni.AbsolutePosition + botintorni.AbsoluteAngle.GetVector().Normalize() * 115; 
     132            rajahdys.Speed = 500; 
     133            rajahdys.UseShockWave = false; 
     134            Add(rajahdys); 
     135        } 
     136    } 
     137     
     138 
    105139    void LuoKentta() 
    106140    { 
     
    109143        ruudut.SetTileMethod(Color.FromHexCode("FFD800"), LuoHiekka); 
    110144        ruudut.SetTileMethod(Color.FromHexCode("4CFF00"), LuoPuu); 
     145        ruudut.SetTileMethod(Color.FromHexCode("FFFF0000"), LuoBotti); 
    111146        ruudut.Execute(100, 100); 
    112147         
     
    180215    } 
    181216} 
     217class Pelaaja : PhysicsObject 
     218{ 
     219    private IntMeter elamalaskuri = new IntMeter(5, 0, 5); 
     220    public IntMeter ElamaLaskuri { get { return elamalaskuri; } } 
     221    public Pelaaja(double leveys, double korkeus) 
     222        : base(leveys, korkeus) 
     223    { 
     224        elamalaskuri.LowerLimit += delegate { this.Destroy(); }; 
     225    } 
     226} 
  • 2016/26/JonniN/TankHero/TankHero/TankHero/obj/x86/Debug/ContentPipeline-{B903E94D-9570-46DD-8789-F8147DB1F21B}.xml

    r7599 r7616  
    3737      <Options>None</Options> 
    3838      <Output>C:\MyTemp\JonniN\TankHero\TankHero\TankHero\bin\x86\Debug\Content\kartta.xnb</Output> 
    39       <Time>2016-06-30T12:31:04.9423918+03:00</Time> 
     39      <Time>2016-07-01T10:20:41.4796844+03:00</Time> 
    4040    </Item> 
    4141    <Item> 
     
    6464      <Options>None</Options> 
    6565      <Output>C:\MyTemp\JonniN\TankHero\TankHero\TankHero\bin\x86\Debug\Content\t90torni.xnb</Output> 
    66       <Time>2016-06-30T14:10:00.9054918+03:00</Time> 
     66      <Time>2016-07-01T10:23:37.9786844+03:00</Time> 
    6767    </Item> 
    6868    <Item> 
     
    7373      <Options>None</Options> 
    7474      <Output>C:\MyTemp\JonniN\TankHero\TankHero\TankHero\bin\x86\Debug\Content\t90runko.xnb</Output> 
    75       <Time>2016-06-30T14:10:26.6927918+03:00</Time> 
     75      <Time>2016-07-01T09:29:34.1798844+03:00</Time> 
    7676    </Item> 
    7777    <BuildSuccessful>true</BuildSuccessful> 
  • 2016/26/JonniN/TankHero/TankHero/TankHeroContent/TankHeroContent.contentproj

    r7599 r7616  
    8888  </ItemGroup> 
    8989  <ItemGroup> 
    90     <Compile Include="t90torni.png"> 
    91       <Name>t90torni</Name> 
     90    <Compile Include="t90runko.png"> 
     91      <Name>t90runko</Name> 
    9292      <Importer>TextureImporter</Importer> 
    9393      <Processor>TextureProcessor</Processor> 
     
    9595  </ItemGroup> 
    9696  <ItemGroup> 
    97     <Compile Include="t90runko.png"> 
    98       <Name>t90runko</Name> 
     97    <Compile Include="t90torni.png"> 
     98      <Name>t90torni</Name> 
    9999      <Importer>TextureImporter</Importer> 
    100100      <Processor>TextureProcessor</Processor> 
Note: See TracChangeset for help on using the changeset viewer.