Ignore:
Timestamp:
2012-06-05 22:03:41 (7 years ago)
Author:
ramipasa
Message:

Aseet, taustat

File:
1 edited

Legend:

Unmodified
Added
Removed
  • 2012/23/RamiP/YAG2DSSBase/YAG2DSS/YAG2DSS/YAG2DSS.cs

    r2803 r2809  
    2121    Timer Madonreikaajastin; 
    2222    Timer Minioniajastin; 
     23    Timer Minioninliikuttaja; 
     24    Timer Automaattiammus; 
    2325 
    2426    List<int> PelaajanKesto = new List<int>(); 
     
    5557        Level.BackgroundColor = Color.Black; 
    5658 
     59        Camera.ZoomToLevel(); 
     60 
    5761        LuoPelaaja(300); 
    5862        LuoPelaaja(-300); 
     
    8589        Minioniajastin.Timeout += new Action(Minioniajastin_Timeout); 
    8690        Minioniajastin.Start(); 
     91 
     92        Minioninliikuttaja = new Timer(); 
     93        Minioninliikuttaja.Interval = 0.1; 
     94        Minioninliikuttaja.Timeout += new Action(Minioninliikuttaja_Timeout); 
     95        Minioninliikuttaja.Start(); 
     96 
     97        Automaattiammus = new Timer(); 
     98        Automaattiammus.Interval = 0.2; 
     99        Automaattiammus.Timeout += new Action(Automaattiammus_Timeout); 
     100        Automaattiammus.Start(); 
     101    } 
     102 
     103    void LuoPelaajanAmmus(int pelaajaID) 
     104    { 
     105        Projectile PelaajanAmmus = new Projectile(4.0, 4.0, Color.Green); 
     106        PelaajanAmmus.Shape = Shape.Triangle; 
     107        PelaajanAmmus.Position = Pelaaja[pelaajaID].Position; 
     108        Vector jotain = Vector.FromLengthAndAngle(25.0, Pelaaja[pelaajaID].Angle); 
     109        PelaajanAmmus.Position = PelaajanAmmus.Position + jotain; 
     110        AddCollisionHandler(PelaajanAmmus, PelaajanAmmuksenTuhoaja); 
     111        if (pelaajaID == 0) 
     112        { 
     113            PelaajanAmmus.Tag = 1; 
     114        } 
     115        else 
     116        { 
     117            PelaajanAmmus.Tag = 2; 
     118        } 
     119        //PelaajanAmmus.Mass = 0; 
     120        Add(PelaajanAmmus); 
     121        Vector Pelaajanammus = jotain * 80; 
     122        PelaajanAmmus.Hit(Pelaajanammus); 
     123    } 
     124 
     125    void PelaajanAmmuksenTuhoaja(PhysicsObject PelaajanAmmus, PhysicsObject kohde) 
     126    { 
     127        PelaajanAmmus.Destroy(); 
     128 
     129        try 
     130        { 
     131            int tagi = (int)kohde.Tag; 
     132            if (tagi == 5) 
     133            { 
     134                kohde.Destroy(); 
     135            } 
     136            else if (tagi == 1337) 
     137            { 
     138                kohde.MaxVelocity = kohde.MaxVelocity - 1.0; 
     139                if (kohde.MaxVelocity < 1) 
     140                { 
     141                    kohde.Destroy(); 
     142                } 
     143            } 
     144        } 
     145        catch 
     146        { 
     147        } 
     148    } 
     149 
     150    void Minioninliikuttaja_Timeout() 
     151    { 
     152        for (int minionID = 0; minionID < Minioni.Count; minionID++) 
     153        { 
     154            double etäisyys1; 
     155            double etäisyys2; 
     156 
     157            double x1 = Math.Abs(Pelaaja[0].X - Minioni[minionID].X); 
     158            double y1 = Math.Abs(Pelaaja[0].Y - Minioni[minionID].Y); 
     159            etäisyys1 = Math.Sqrt(x1 + y1); 
     160 
     161            double x2 = Math.Abs(Pelaaja[1].X - Minioni[minionID].X); 
     162            double y2 = Math.Abs(Pelaaja[1].Y - Minioni[minionID].Y); 
     163            etäisyys2 = Math.Sqrt(x2 + y2); 
     164 
     165            if (etäisyys1 > etäisyys2) 
     166            { 
     167                MinioninLiike(Minioni[minionID], 0); 
     168            } 
     169            else 
     170            { 
     171                MinioninLiike(Minioni[minionID], 1); 
     172            } 
     173        } 
    87174    } 
    88175 
     
    90177    { 
    91178        Timer.SingleShot(2, AjaLuoMinioni); 
     179    } 
     180 
     181    void Automaattiammus_Timeout() 
     182    { 
     183        if (Keyboard.GetKeyState(Key.RightShift) == ButtonState.Down) 
     184        { 
     185            Timer.SingleShot(1, AjaLuoPelaajan1Ammus); 
     186        } 
     187 
     188        if (Keyboard.GetKeyState(Key.LeftShift) == ButtonState.Down) 
     189        { 
     190            Timer.SingleShot(1, AjaLuoPelaajan2Ammus); 
     191        } 
     192    } 
     193 
     194    void AjaLuoPelaajan1Ammus() 
     195    { 
     196        LuoPelaajanAmmus(0); 
     197    } 
     198 
     199    void AjaLuoPelaajan2Ammus() 
     200    { 
     201        LuoPelaajanAmmus(1); 
    92202    } 
    93203 
     
    140250        madonreika.Y = y; 
    141251        madonreika.CollisionIgnoreGroup = 5; 
     252        madonreika.MaxVelocity = 15.0; 
     253        madonreika.Tag = 1337; 
    142254        Madonreika.Add(madonreika); 
    143255        Add(madonreika); 
     
    156268        minioni.Angle = (Pelaaja[1].Position - minioni.Position).Angle; 
    157269        minioni.Hit(Vector.FromLengthAndAngle(100, minioni.Angle)); 
     270        minioni.AngularDamping = 0.1; 
     271        minioni.Tag = 5; 
    158272        Minioni.Add(minioni); 
    159273        Add(Minioni[Minioni.Count - 1]); 
    160         MinioninLiike(Minioni[Minioni.Count - 1]); 
    161     } 
    162  
    163     void MinioninLiike(PhysicsObject minioni) 
    164     { 
    165         minioni.Angle = (Pelaaja[1].Position - minioni.Position).Angle; 
     274        MinioninLiike(Minioni[Minioni.Count - 1], 0); 
     275    } 
     276 
     277    void MinioninLiike(PhysicsObject minioni, int pelaaja) 
     278    { 
     279        minioni.Angle = (Pelaaja[pelaaja].Position - minioni.Position).Angle; 
    166280        Vector q = Vector.FromLengthAndAngle(5.0, minioni.Angle); 
    167281        minioni.Hit(q); 
     
    176290        Keyboard.Listen(Key.Left, ButtonState.Down, kaannaVasemmalle, null, Pelaaja[0]); 
    177291        Keyboard.Listen(Key.Right, ButtonState.Down, kaannaOikealle, null, Pelaaja[0]); 
     292        Keyboard.Listen(Key.RightShift, ButtonState.Pressed, LuoPelaajanAmmus, null, 0); 
    178293         
    179294        Keyboard.Listen(Key.W, ButtonState.Down, AlkuKiihdytys, null, Pelaaja[1]); 
     
    182297        Keyboard.Listen(Key.A, ButtonState.Down, kaannaVasemmalle, null, Pelaaja[1]); 
    183298        Keyboard.Listen(Key.D, ButtonState.Down, kaannaOikealle, null, Pelaaja[1]); 
     299        Keyboard.Listen(Key.LeftShift, ButtonState.Pressed, LuoPelaajanAmmus, null, 1); 
    184300    } 
    185301 
    186302    void AlkuKiihdytys(PhysicsObject pelaaja) 
    187303    { 
    188         if (pelaaja.Velocity.Magnitude < 70) 
     304        if (pelaaja.Velocity.Magnitude < 7+0) 
    189305        { 
    190306            Vector o = Vector.FromLengthAndAngle(50.0, pelaaja.Angle); 
     
    232348        base.Update(gameTime); 
    233349 
    234         for (int minioniId = 0; minioniId < Minioni.Count; minioniId++) 
    235         { 
    236             MinioninLiike(Minioni[minioniId]); 
    237         } 
     350        //for (int minioniId = 0; minioniId < Minioni.Count; minioniId++) 
     351        //{ 
     352        //    MinioninLiike(Minioni[minioniId]); 
     353        //} 
    238354 
    239355        //ALTKHandler.MessageDisplay.AddItem("Trololollolollololoo, lololololooo..."); 
     
    304420        this.Components.Add(altkHandler); 
    305421 
    306         for (int a = 1; a < 5; a++) 
    307         { 
    308             ALTKHandler.StaticAnimHandler.AddStaticAnim(a, new Microsoft.Xna.Framework.Vector2(0, 0)); 
    309         } 
     422        ALTKHandler.StaticAnimHandler.AddStaticAnim("STARS_1", new Microsoft.Xna.Framework.Vector2(0, 0)); 
     423        ALTKHandler.StaticAnimHandler.AddStaticAnim("STARS_2", new Microsoft.Xna.Framework.Vector2(0, 0)); 
     424 
     425        ALTKHandler.StaticAnimHandler.AddStaticAnim("GALAXY", new Microsoft.Xna.Framework.Vector2(0, 0)); 
     426        ALTKHandler.StaticAnimHandler.AddStaticAnim("GALAXY_BLUE", new Microsoft.Xna.Framework.Vector2(0, 0)); 
     427        ALTKHandler.StaticAnimHandler.AddStaticAnim("GALAXY_RED", new Microsoft.Xna.Framework.Vector2(0, 0)); 
     428        ALTKHandler.StaticAnimHandler.AddStaticAnim("GALAXY_WHITE", new Microsoft.Xna.Framework.Vector2(0, 0)); 
     429 
     430        ALTKHandler.StaticAnimHandler.AddStaticAnim("STARSMOKE", new Microsoft.Xna.Framework.Vector2(200, -250)); 
     431        ALTKHandler.StaticAnimHandler.AddStaticAnim("STARSMOKE_BLUE", new Microsoft.Xna.Framework.Vector2(400, 250)); 
     432        ALTKHandler.StaticAnimHandler.AddStaticAnim("STARSMOKE_RED", new Microsoft.Xna.Framework.Vector2(-200, -200)); 
     433        ALTKHandler.StaticAnimHandler.AddStaticAnim("STARSMOKE_WHITE", new Microsoft.Xna.Framework.Vector2(-250, 300)); 
    310434    } 
    311435 
Note: See TracChangeset for help on using the changeset viewer.