コード例 #1
0
ファイル: Inputmanager.cs プロジェクト: 2Light/Insomnia
 public Inputmanager(Contents contents, Camera camera, Player player, Keymanager keymanager, Cursor mouse, Enemymanager enemymanager, Windowmanager windowmanager, Backgroundmanager backgroundmanager, Backgrounddatabase backgrounddatabase, Objectmanager objectmanager, Objectdatabase objectdatabase, Eventmanager eventmanager, Levelmanager levelmanager, Levermanager levermanager, ContentManager contentmanager, Editor editor, DebugView DebugView, DepressionHandler Depression, Mathe mathe, Itemmanager itemmanager, BackgroundMusic bmus)
 {
     this.Contents = contents;
     this.Player = player;
     this.Keymanager = keymanager;
     this.Cursor = mouse;
     this.Enemymanager = enemymanager;
     this.Windowmanager = windowmanager;
     this.Backgroundmanager = backgroundmanager;
     this.Backgrounddatabase = backgrounddatabase;
     this.Objectmanager = objectmanager;
     this.Objectdatabase = objectdatabase;
     this.Eventmanager = eventmanager;
     this.Levelmanager = levelmanager;
     this.Levermanager = levermanager;
     this.Contentmanager = contentmanager;
     this.Editor = editor;
     this.Mathe = mathe;
     this.Keymanager.Windowmanager = windowmanager;
     this.Camera = camera;
     this.Itemmanager = itemmanager;
     this.DebugView = DebugView;
     this.Depression = Depression;
     this.bg = bmus;
 }
コード例 #2
0
ファイル: Cursor.cs プロジェクト: 2Light/Insomnia
 public Cursor(Camera camera, Keymanager keymanager, Contents contents, Settings settings)
 {
     this.Contents = contents;
     this.Settings = settings;
     this.Keymanager = keymanager;
     this.Kamera = camera;
     this.Mathe = new Mathe();
 }
コード例 #3
0
ファイル: Keymanager.cs プロジェクト: 2Light/Insomnia
 public void DrawExtraDebug(DebugFlag extraFlag, SpriteBatch batch, Camera cam, Contents content)
 {
 }
コード例 #4
0
ファイル: Emitter.cs プロジェクト: 2Light/Insomnia
        public void DrawExtraDebug(DebugFlag extraFlag, SpriteBatch batch, Camera cam, Contents content)
        {
            batch.Begin(SpriteSortMode.Deferred, null, null, null, null, null, cam.ViewMatrix);

            batch.Draw(EmitterTexture, Position, null, Color.White, 0, this.Origin, 1.0f, SpriteEffects.None, 1f);
            foreach (Vector2 v in EmitterAngel)
            {
                drawPartCircel(50, v.X, v.Y, Position, batch, content.Pixel);
            }
            drawLine(Position, new Vector2(Position.X + EmitterRange.X, 0 + Position.Y), content.Pixel, 1, batch);
            drawLine(Position, new Vector2(Position.X - EmitterRange.X, 0 + Position.Y), content.Pixel, 1, batch);
            drawLine(Position, new Vector2(Position.X, Position.Y + EmitterRange.Y), content.Pixel, 1, batch);
            drawLine(Position, new Vector2(Position.X, Position.Y - EmitterRange.Y), content.Pixel, 1, batch);

            batch.End();
        }
コード例 #5
0
ファイル: Player.cs プロジェクト: 2Light/Insomnia
 public void DrawExtraDebug(DebugFlag extraFlag,SpriteBatch batch,Camera cam,Contents content)
 {
     batch.Begin(SpriteSortMode.Deferred, null, null, null, null, null, cam.ViewMatrix);
          batch.DrawString(content.Meiryo8, "Test Extra Debug", new Vector2(100, 200) -new Vector2(this.PositionCurrent.X,0), Color.White);
        batch.End();
 }
コード例 #6
0
ファイル: Game1.cs プロジェクト: 2Light/Insomnia
        protected override void Initialize()
        {
            //primBatch = new PrimitiveBatch(GraphicsDevice);
            World = new World(new Vector2(0, 9.81f));
            Mathe = new Mathe();
            Settings = new Settings(graphics);
            Camera = new Camera(GraphicsDevice.Viewport, Settings.Widescreen);
            Contents = new Contents(Content, GraphicsDevice);
            Debug = new DebugView(Contents,Camera);
            Objectdatabase = new Objectdatabase(Content);
            Backgrounddatabase = new Backgrounddatabase(Content);
            Enemydatabase = new Enemydatabase(Content);
            Animationsmanager = new Animationsmanager();
            Keymanager = new Keymanager(Contents, DebugFlag.Inputstats);
            Player = new Player(Mathe, Contents, World, DebugFlag.PlayerStats);
            Cursor = new Cursor(Camera, Keymanager, Contents, Settings);
            Windowmanager = new Windowmanager(Settings, Cursor, DebugFlag.WindowStats, Contents, GraphicsDevice);
            DepressionHandler = new DyingHope.DepressionHandler();
            Itemmanager = new Itemmanager(Mathe, DepressionHandler, Content, Player);
            Backgroundmanager = new Backgroundmanager(Player, Backgrounddatabase, DebugFlag.BackgrundStats, Contents);
            Levermanager = new Levermanager(Contents.Meiryo8, Player, Cursor, Mathe, Animationsmanager, Contents);
            Objectmanager = new Objectmanager(Objectdatabase, Animationsmanager, Player, (DebugFlag.ObjectInformation | DebugFlag.CollisonShape | DebugFlag.ObjectmanagerStats));
            Enemymanager = new Enemymanager(Objectmanager, Mathe, Content, Enemydatabase, Player);
            Windowmanager.Windowdatabase = new Windowdatabase(Contents, Player, Inputmanager);
            Windowmanager.AddWindow(Windowtype.MainMenue);
            Eventmanager = new Eventmanager(Mathe, Player, Enemymanager, DepressionHandler, Objectmanager, Objectdatabase, Levermanager);
            Levelmanager = new Levelmanager(Player, Objectmanager, Animationsmanager, Backgroundmanager, Enemymanager, Itemmanager, Levermanager, Eventmanager, Contents);
            Editor = new Editor(Windowmanager, Enemymanager, Backgroundmanager, Backgrounddatabase, Objectmanager, Objectdatabase, Eventmanager, Contents, Cursor, Player, Keymanager, Levelmanager, Itemmanager, Levermanager);
            Debugview = new DebugViewXNA(World);
            Console.WriteLine(((DebugFlag.ObjectInformation | DebugFlag.CollisonShape | DebugFlag.ObjectmanagerStats)& DebugFlag.ObjectmanagerStats));
            light = new SoundObjekt(Settings, Contents.Emitter, Contents.Light, new Vector2(3500 - 576, 700), new Vector2(100, 0), 200);
            rain = new SoundObjekt(Settings, Contents.Emitter, Contents.Rain, new Vector2(6000 - 576, 0), new Vector2(1000, 0), 400);
            levelTheme = new List<MSong> { new MSong(Contents.StadtAnfang, 0), new MSong(Contents.StadtLoop, -1), new MSong(Contents.StadtEnde, 0), new MSong(Contents.ParkAnfang, 0), new MSong(Contents.ParkLoop, -1), new MSong(Contents.ParkEnde, 0), new MSong(Contents.SchuleAnfang, 0), new MSong(Contents.SchuleLoop, -1), new MSong(Contents.StadtEnde, 0), new MSong(Contents.MonsterAnfang, 0), new MSong(Contents.MonsterLoop, -1), new MSong(Contents.Ende, 0) };
            menueTheme = new List<MSong> { new MSong(Contents.Menue_Theme, 99) };
            BackgroundMusic = new BackgroundMusic(Settings, menueTheme);
            Inputmanager = new Inputmanager(Contents, Camera, Player, Keymanager, Cursor, Enemymanager, Windowmanager, Backgroundmanager, Backgrounddatabase, Objectmanager, Objectdatabase, Eventmanager, Levelmanager, Levermanager, Content, Editor, Debug, DepressionHandler, Mathe, Itemmanager, BackgroundMusic);

            //Testemitter-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
            //testEmitter = new Emitter(new Vector2(3000, 850), DebugFlag.Pertikle);
            //testEmitter.startParticel = 50;
            //testEmitter.EmitterAngel = new List<Vector2> { new Vector2(180, 180) };
            //testEmitter.EmitterRange = new Vector2(1000, 50);
            //testEmitter.EmitterMaxParticel = 100;
            //testEmitter.EmitterUpdate = 100f;
            //testEmitter.EmitterTexture = Contents.Emitter;
            //testEmitter.ParticelStayOnMax = new Vector2(0, 0);
            //testEmitter.ParticelLifeDrain = new Vector2(1, 1);
            //testEmitter.ParticelLifeTime = new Vector2(5000f, 50000f);
            //testEmitter.ParticelSize = new Vector2(0.1f, 0.5f);
            //testEmitter.ParticelTexture = new List<Texture2D> { Contents.Nebel, Contents.Nebel2 };
            //testEmitter.Origin = new Vector2(Contents.Emitter.Width / 2, Contents.Emitter.Height / 2);
            //testEmitter.PerticelPower = new Vector2(0.50f, 0.8f);
            //testEmitter.particelNeverDie = false;
            //testEmitter.spawnprofile = Spawnprofile.FadeIn;
            //testEmitter.bewegungsprofil = Bewegungsprofile.Linear;
            //testEmitter.Start();

            //rainEmitter = new Emitter(new Vector2(6000, -10), DebugFlag.Pertikle);
            //rainEmitter.startParticel = 0;
            //rainEmitter.particelPerUpdate = new Vector2(1, 100);
            //rainEmitter.EmitterAngel = new List<Vector2> { new Vector2(270, 270) };
            //rainEmitter.EmitterRange = new Vector2(1000, 0);
            //rainEmitter.EmitterMaxParticel = 60000;
            //rainEmitter.EmitterUpdate = 10f;
            //rainEmitter.EmitterTexture = Contents.Emitter;
            //rainEmitter.ParticelStayOnMax = new Vector2(0, 0);
            //rainEmitter.ParticelLifeDrain = new Vector2(1, 1);
            //rainEmitter.ParticelLifeTime = new Vector2(500f, 2000f);
            //rainEmitter.ParticelSize = new Vector2(0.5f, 1.5f);
            //rainEmitter.ParticelTexture = new List<Texture2D> { Contents.Rain1 };
            //rainEmitter.Origin = new Vector2(Contents.Emitter.Width / 2, Contents.Emitter.Height / 2);
            //rainEmitter.PerticelPower = new Vector2(10.50f, 20.8f);
            //rainEmitter.particelNeverDie = false;
            //rainEmitter.spawnprofile = Spawnprofile.Instant;
            //rainEmitter.bewegungsprofil = Bewegungsprofile.Linear;
            //rainEmitter.Start();

            menue = new Emitter(new Vector2(GraphicsDevice.Viewport.Width / 2, (GraphicsDevice.Viewport.Height / 2)+20), DebugFlag.Pertikle);
            menue.startParticel = 0;
            menue.particelPerUpdate = new Vector2(1, 5);
            menue.EmitterAngel = new List<Vector2> { new Vector2(0, 360) };
            menue.EmitterRange = new Vector2(250, 50);
            menue.EmitterMaxParticel = 6000;
            menue.EmitterUpdate = 100f;
            menue.EmitterTexture = Contents.Emitter;
            menue.ParticelStayOnMax = new Vector2(0, 100);
            menue.ParticelLifeDrain = new Vector2(1, 1);
            menue.ParticelLifeTime = new Vector2(1000f, 3000f);
            menue.ParticelSize = new Vector2(0.065f, 0.09f);
            menue.ParticelTexture = new List<Texture2D> { Contents.Partikel1, Contents.Partikel2, Contents.Partikel3 };
            menue.Origin = new Vector2(Contents.Emitter.Width / 2, Contents.Emitter.Height / 2);
            menue.PerticelPower = new Vector2(0.2f, 0.9f);
            menue.particelNeverDie = false;
            menue.spawnprofile = Spawnprofile.FadeIn;
            menue.bewegungsprofil = Bewegungsprofile.LinearRandom;
            menue.Start();

            //Debug-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
            Debug.Add(Player);
            Debug.Add(Objectmanager);
            Debug.Add(Keymanager);
            Debug.Add(Backgroundmanager);
            Debug.Add(Windowmanager);
            Debug.Add(DepressionHandler);
            //Debug.Add(testEmitter);
            //Debug.AppendFlag(DebugFlag.PlayerStats, false);
            //Debug.AppendFlag(DebugFlag.ObjectmanagerStats,false);
            //Debug.AppendFlag(DebugFlag.ObjectInformation, true);
            //Debug.AppendFlag(DebugFlag.CollisonShape, true);
            Debugview.DebugPanelPosition = new Vector2(500, 100);
            Debugview.AppendFlags(DebugViewFlags.DebugPanel);
            Debugview.LoadContent(GraphicsDevice, Content);

            base.Initialize();
        }
コード例 #7
0
ファイル: Objectmanager.cs プロジェクト: 2Light/Insomnia
 public void DrawExtraDebug(DebugFlag extraFlag,SpriteBatch batch, Camera cam, Contents content)
 {
     batch.Begin(SpriteSortMode.Deferred, null, null, null, null, null, cam.ViewMatrix);
     foreach (Object Object in ObjectsSpielebene)
     {
         if ((extraFlag & DebugFlag.CollisonShape) == DebugFlag.CollisonShape)
         {
             batch.Draw(content.Block, new Rectangle((int)614, (int)Player.PositionCurrent.Y+47, 61, 153), Color.Blue*0.5f );
             if (Object.Objektvariante.Kollision != null)
             {
                 foreach (Objectcollision Kollision in Object.Objektvariante.Kollision)
                 {
                     batch.Draw(content.Block, new Rectangle((int)(Object.PositionCurrent.X + (Kollision.Zone.X * Object.Skalierung) - Player.PositionCurrent.X), (int)(Object.PositionCurrent.Y + (Kollision.Zone.Y * Object.Skalierung)), (int)((float)Kollision.Zone.Width * Object.Skalierung), (int)((float)Kollision.Zone.Height * Object.Skalierung)), Color.Yellow);
                     batch.DrawString(content.Meiryo8, Kollision.Zone.ToString(), new Vector2(Object.PositionCurrent.X + Kollision.Zone.X - Player.PositionCurrent.X, Object.PositionCurrent.Y + Kollision.Zone.Y + 40), Color.Red);
                 }
             }
         }
         if ((extraFlag & DebugFlag.ObjectInformation) == DebugFlag.ObjectInformation)
         {
             batch.DrawString(content.Meiryo8, "Typ: " + Object.Typ.ToString() + " Variante: " + Object.Variante.ToString(), new Vector2(Object.PositionCurrent.X - Player.PositionCurrent.X, Object.PositionCurrent.Y), Color.Red);
             batch.DrawString(content.Meiryo8, "Skalierung: " + Object.Skalierung.ToString(), new Vector2(Object.PositionCurrent.X - Player.PositionCurrent.X, Object.PositionCurrent.Y + 10), Color.Red);
             batch.DrawString(content.Meiryo8, Object.PositionCurrent.ToString(), new Vector2(Object.PositionCurrent.X - Player.PositionCurrent.X, Object.PositionCurrent.Y + 20), Color.Red);
             batch.DrawString(content.Meiryo8, Object.Objektvariante.Texturausschnitt.ToString(), new Vector2(Object.PositionCurrent.X - Player.PositionCurrent.X, Object.PositionCurrent.Y + 30), Color.Red);
             batch.DrawString(content.Meiryo8, "Layer: " + Object.Layer.ToString(), new Vector2(Object.PositionCurrent.X - Player.PositionCurrent.X, Object.PositionCurrent.Y + 40), Color.Red);
         }
     }
     batch.End();
 }