public static void Dump() { ProxySpriteMan pMan = ProxySpriteMan.privGetInstance(); Debug.Assert(pMan != null); pMan.baseDump(); }
public static void Remove(GameSprite pNode) { ProxySpriteMan pMan = ProxySpriteMan.privGetInstance(); Debug.Assert(pMan != null); Debug.Assert(pNode != null); pMan.baseRemove(pNode); }
private void PrivStatDump() { ProxySpriteMan pPSMan = ProxySpriteMan.PrivGetInstance(); Debug.Assert(pPSMan != null); Debug.WriteLine(""); Debug.WriteLine("ProxySprite Manager Stats---------------------"); pPSMan.BaseStatDump(); }
public static void Create(int reserveNum = 3, int reserveGrow = 1) { Debug.Assert(reserveNum > 0); Debug.Assert(reserveGrow > 0); //Debug.Assert(pInstance == null); if (pInstance == null) { pInstance = new ProxySpriteMan(reserveNum, reserveGrow); } }
public static void Remove(GameSprite pNode) { //ensure call Create() first ProxySpriteMan pMan = ProxySpriteMan.GetInstance(); Debug.Assert(pMan != null); Debug.Assert(pNode != null); pMan.baseRemove(pNode); }
//----------------------------------------------------------------------------- // Game::UnLoadContent() // unload content (resources loaded above) // unload all content that was loaded before the Engine Loop started //----------------------------------------------------------------------------- public override void UnLoadContent() { GameObjectMan.Destory(); ProxySpriteMan.Destory(); TimerMan.Destory(); SpriteBatchMan.Destory(); GameSpriteMan.Destory(); BoxSpriteMan.Destory(); ImageMan.Destory(); TextureMan.Destory(); }
//--------------------------------------------------------------------------------------------------------- // Constructor //--------------------------------------------------------------------------------------------------------- protected GameObject(GameObject.Name gameName, GameSprite.Name spriteName) { this.name = gameName; this.x = 0.0f; this.y = 0.0f; this.bMarkForDeath = false; this.pProxySprite = ProxySpriteMan.Add(spriteName); this.poCollisionObject = new CollisionObject(this.pProxySprite); Debug.Assert(this.poCollisionObject != null); }
public override void unLoadContent(Scene pScene) { GameObjectMan.Reset(); TimerMan.Reset(); InputMan.Reset(); CollisionPairMan.Reset(); SpriteBatchMan.Reset(); BoxSpriteMan.Reset(); ProxySpriteMan.Reset(); UFOMan.Reset(); ShipMan.Reset(); }
public static ProxySprite Find(ProxySprite.Name name) { ProxySpriteMan pMan = ProxySpriteMan.PrivGetInstance(); Debug.Assert(pMan != null); pMan.poNodeCompare.SetName(name); ProxySprite pNode = (ProxySprite)pMan.BaseFind(pMan.poNodeCompare); return(pNode); }
protected GameObject(GameObject.Name gameName, GameSprite.Name spriteName) { this.name = gameName; this.bMarkForDeath = false; this.x = 0.0f; this.y = 0.0f; this.poProxySprite = ProxySpriteMan.Add(spriteName); //this.pSpriteBatchMan = pSpriteBatchMan; this.poColObj = new ColObject(this.poProxySprite); Debug.Assert(this.poColObj != null); }
public static void Destory() { //ensure call Create() first ProxySpriteMan pMan = ProxySpriteMan.GetInstance(); Debug.Assert(pMan != null); pMan.baseDestory(); pMan.poNodeForCompare = null; ProxySpriteMan.pInstance = null; }
//---------------------------------------------------------------------- // Static Methods //---------------------------------------------------------------------- public static void Create(int reserveNum = 3, int growNum = 1) { // ensure reserveNum and growNum are reasonable Debug.Assert(reserveNum >= 0); Debug.Assert(growNum > 0); Debug.Assert(pInstance == null); if (pInstance == null) { pInstance = new ProxySpriteMan(reserveNum, growNum); } }
public static void Create(int reserveNum = 3, int growth = 1) { Debug.Assert(reserveNum > 0); Debug.Assert(growth > 0); Debug.Assert(pInstance == null); if (pInstance == null) { pInstance = new ProxySpriteMan(reserveNum, growth); } }
public static ProxySprite Find(ProxySprite.Name name) { //ensure call Create() first ProxySpriteMan pMan = ProxySpriteMan.GetInstance(); Debug.Assert(pMan != null); pMan.poNodeForCompare.setName(name); ProxySprite pData = (ProxySprite)pMan.baseFind(pMan.poNodeForCompare); return(pData); }
public static ProxySprite Add(GameSprite.Name name) { ProxySpriteMan pMan = ProxySpriteMan.PrivGetInstance(); Debug.Assert(pMan != null); ProxySprite pNode = (ProxySprite)pMan.BaseAdd(); Debug.Assert(pNode != null); pNode.Set(name); return(pNode); }
public static ProxySprite Add(GameSprite.Name name) { //ensure call Create() first ProxySpriteMan pMan = ProxySpriteMan.GetInstance(); Debug.Assert(pMan != null); ProxySprite pProxySprite = (ProxySprite)pMan.baseAdd(); Debug.Assert(pProxySprite != null); pProxySprite.set(name); return(pProxySprite); }
//protected GameObject(GameObject.Name goName) //{ // this.name = goName; // this.x = 0.0f; // this.y = 0.0f; // this.pProxySprite = null; //} protected GameObject(GameObject.Name goName, GameSprite.Name spriteName) { this.name = goName; this.bMarkForDeath = false; this.x = 0.0f; this.y = 0.0f; this.bPlayerOpt = true; this.poProxySprite = ProxySpriteMan.Add(spriteName); this.poColObj = new ColObject(this.poProxySprite); Debug.Assert(this.poColObj != null); }
public static void Destroy() { ProxySpriteMan pMan = ProxySpriteMan.privGetInstance(); Debug.Assert(pMan != null); // Print stats on destroy pMan.baseDump(); // Invalidate the singleton if (pInstance != null) { pInstance = null; } }
//---------------------------------------------------------------------- // Static Methods //---------------------------------------------------------------------- public static void Create(int reserveNum = 3, int reserveGrow = 1) { // make sure values are ressonable Debug.Assert(reserveNum > 0); Debug.Assert(reserveGrow > 0); // initialize the singleton here Debug.Assert(pInstance == null); // Do the initialization if (pInstance == null) { pInstance = new ProxySpriteMan(reserveNum, reserveGrow); } }
public override void UnLoadContent() { TimerMan.Destroy(); TextureMan.Destroy(); ImageMan.Destroy(); GameSpriteMan.Destroy(); BoxSpriteMan.Destroy(); pSpriteBatchMan.Destroy(); ProxySpriteMan.Destroy(); GlyphMan.Destroy(); //GameObjectMan.Destroy(); ColPairMan.Destroy(); FontMan.Destroy(); ShipMan.Destroy(); }
public static ProxySprite Find(ProxySprite.Name name) { ProxySpriteMan pMan = ProxySpriteMan.privGetInstance(); Debug.Assert(pMan != null); // Compare functions only compares two Nodes // So: Use the Compare Node - as a reference // use in the Compare() function pMan.poNodeCompare.SetName(name); ProxySprite pData = (ProxySprite)pMan.baseFind(pMan.poNodeCompare); return(pData); }
public static void Reset() { //ensure call Create() first ProxySpriteMan pMan = ProxySpriteMan.GetInstance(); Debug.Assert(pMan != null); ProxySprite pProxySprite = (ProxySprite)pMan.pActive; while (pProxySprite != null) { pProxySprite.deepClear(); pProxySprite = (ProxySprite)pProxySprite.pNext; } pMan.baseSetActiveHead(null); }
override public void Unload() { SpriteBatchMan.Destroy(); TextureMan.Destroy(); GlyphMan.Destroy(); FontMan.Destroy(); ImageMan.Destroy(); GameSpriteMan.Destroy(); BoxSpriteMan.Destroy(); ProxySpriteMan.Destroy(); GameObjectMan.Destroy(); TimerMan.Destroy(); ColPairMan.Destroy(); Simulation.Destroy(); InputMan.Destroy(); this.Handle(); }
override public void Unload() { //SpriteBatchMan.Remove(pSB_Texts); //SpriteBatchMan.Remove(pSB_Texts); SpriteBatchMan.Destroy(); TextureMan.Destroy(); GlyphMan.Destroy(); FontMan.Destroy(); ImageMan.Destroy(); GameSpriteMan.Destroy(); BoxSpriteMan.Destroy(); ProxySpriteMan.Destroy(); GameObjectMan.Destroy(); InputMan.Destroy(); this.Handle(); }
public static void Destroy() { // Get the instance ProxySpriteMan pMan = ProxySpriteMan.PrivGetInstance(); Debug.Assert(pMan != null); #if (TRACK_DESTRUCTOR_MAN) Debug.WriteLine("--->GameSpriteMan.Destroy()"); #endif pMan.BaseDestroy(); #if (TRACK_DESTRUCTOR_MAN) Debug.WriteLine(" {0} ({1})", pMan.poNodeCompare, pMan.poNodeCompare.GetHashCode()); Debug.WriteLine(" {0} ({1})", GameSpriteMan.pInstance, GameSpriteMan.pInstance.GetHashCode()); #endif pMan.poNodeCompare = null; ProxySpriteMan.pInstance = null; }
//----------------------------------------------------------------------------- // Game::UnLoadContent() // unload content (resources loaded above) // unload all content that was loaded before the Engine Loop started //----------------------------------------------------------------------------- public override void UnLoadContent() { TextureMan.Destroy(); ImageMan.Destroy(); GameSpriteMan.Destroy(); BoxSpriteMan.Destroy(); ProxySpriteMan.Destroy(); SpriteBatchMan.Destroy(); GONodeMan.Destroy(); TimerMan.Destroy(); ColPairMan.Destroy(); FontMan.Destroy(); Simulation.Destroy(); AnimMan.Destroy(); InputManager.Destroy(); GlyphMan.Destroy(); //ShipMan.Destroy(); //GraveyardMan.Destroy(); }
public static void Destroy() { ProxySpriteMan pPSMan = ProxySpriteMan.PrivGetInstance(); Debug.Assert(pPSMan != null); pPSMan.PrivStatDump(); #if (TRACK_DESTRUCTOR_MAN) Debug.WriteLine("ProxySpriteMan.Destroy()"); #endif pPSMan.BaseDestroy(); #if (TRACK_DESTRUCTOR_MAN) Debug.WriteLine(" {0} ({1})", pPSMan.poNodeCompare, pPSMan.poNodeCompare.GetHashCode()); Debug.WriteLine(" {0} ({1})", ProxySpriteMan.pInstance, ProxySpriteMan.pInstance.GetHashCode()); #endif pPSMan.poNodeCompare = null; ProxySpriteMan.pInstance = null; }
//----------------------------------------------------------------------------- // Game::LoadContent() // Allows you to load all content needed for your engine, // such as objects, graphics, etc. //----------------------------------------------------------------------------- public override void LoadContent() { //--------------------------------------------------------------------------------------------------------- // Setup Managers //--------------------------------------------------------------------------------------------------------- TextureMan.Create(1, 1); ImageMan.Create(5, 2); //GameSpriteMan.Create(4, 2); BoxSpriteMan.Create(3, 1); //TimerMan.Create(3, 1); ProxySpriteMan.Create(10, 1); //GameObjectMan.Create(3, 1); ColPairMan.Create(1, 1); GlyphMan.Create(3, 1); FontMan.Create(1, 1); SoundEngineMan.Create(3, 1); // Player Unique Systems SpriteBatchMan.Create(); GameSpriteMan.Create(); GameObjectMan.Create(); TimerMan.Create(); DelayedObjectMan.Create(); //--------------------------------------------------------------------------------------------------------- // Load the Textures //--------------------------------------------------------------------------------------------------------- TextureMan.Add(Texture.Name.Aliens, "Invaders_0.tga"); TextureMan.Add(Texture.Name.Shield, "Birds_N_shield.tga"); //--------------------------------------------------------------------------------------------------------- // Create Images //--------------------------------------------------------------------------------------------------------- // ----- Aliens ----- ImageMan.Add(Image.Name.SquidOpen, Texture.Name.Aliens, 616, 28, 112, 112); ImageMan.Add(Image.Name.SquidClosed, Texture.Name.Aliens, 616, 182, 112, 112); ImageMan.Add(Image.Name.CrabOpen, Texture.Name.Aliens, 321, 28, 155, 112); ImageMan.Add(Image.Name.CrabClosed, Texture.Name.Aliens, 321, 182, 155, 112); ImageMan.Add(Image.Name.OctopusOpen, Texture.Name.Aliens, 56, 28, 167, 112); ImageMan.Add(Image.Name.OctopusClosed, Texture.Name.Aliens, 56, 182, 167, 112); // ----- UFO ----- ImageMan.Add(Image.Name.UFO, Texture.Name.Aliens, 83, 503, 225, 98); // ----- Missile ----- ImageMan.Add(Image.Name.Missile, Texture.Name.Aliens, 420, 700, 15, 55); // ----- Ship ----- ImageMan.Add(Image.Name.Ship, Texture.Name.Aliens, 56, 336, 182, 112); // ----- Splats ----- ImageMan.Add(Image.Name.AlienSplat, Texture.Name.Aliens, 574, 490, 182, 112); ImageMan.Add(Image.Name.MissleSplat, Texture.Name.Aliens, 405, 490, 112, 112); ImageMan.Add(Image.Name.BombSplat, Texture.Name.Aliens, 699, 798, 84, 112); ImageMan.Add(Image.Name.UFOSplat, Texture.Name.Aliens, 41, 643, 294, 112); ImageMan.Add(Image.Name.ShipSplat, Texture.Name.Aliens, 307, 335, 210, 112); // ----- Bombs ----- ImageMan.Add(Image.Name.BombDragger, Texture.Name.Aliens, 280, 798, 42, 84); ImageMan.Add(Image.Name.BombZigZag, Texture.Name.Aliens, 574, 644, 42, 98); ImageMan.Add(Image.Name.BombRolling, Texture.Name.Aliens, 447, 797, 42, 98); ImageMan.Add(Image.Name.BombStraight, Texture.Name.Aliens, 377, 798, 14, 98); // ----- Shields ----- ImageMan.Add(Image.Name.Brick, Texture.Name.Shield, 20, 210, 10, 5); ImageMan.Add(Image.Name.BrickLeft_Top0, Texture.Name.Shield, 15, 180, 10, 5); ImageMan.Add(Image.Name.BrickLeft_Top1, Texture.Name.Shield, 15, 185, 10, 5); ImageMan.Add(Image.Name.BrickLeft_Bottom, Texture.Name.Shield, 35, 215, 10, 5); ImageMan.Add(Image.Name.BrickRight_Top0, Texture.Name.Shield, 75, 180, 10, 5); ImageMan.Add(Image.Name.BrickRight_Top1, Texture.Name.Shield, 75, 185, 10, 5); ImageMan.Add(Image.Name.BrickRight_Bottom, Texture.Name.Shield, 55, 215, 10, 5); //--------------------------------------------------------------------------------------------------------- // Create Scenes //--------------------------------------------------------------------------------------------------------- pSceneContext = SceneContext.GetInstance(); }
// strategy() override public void LoadContent() { SpriteBatchMan.Create(3, 1); TextureMan.Create(2, 1); GlyphMan.Create(3, 1); FontMan.Create(1, 1); ImageMan.Create(5, 2); GameSpriteMan.Create(4, 2); ProxySpriteMan.Create(10, 1); BoxSpriteMan.Create(3, 1); GameObjectMan.Create(3, 1); GhostGameObjectMan.Create(3, 1); //ImageMan.Create(5, 2); //GameSpriteMan.Create(4, 2); //ImageMan.Create(5, 2); //GameSpriteMan.Create(4, 2); //GameObjectMan.Create(3, 1); //ProxySpriteMan.Create(10, 1); TextureMan.Add(Texture.Name.Aliens, "newaliens.tga"); Texture pTexture = TextureMan.Add(Texture.Name.Consolas20pt, "Consolas20pt.tga"); FontMan.AddXml(Glyph.Name.Consolas20pt, "Consolas20pt.xml", Texture.Name.Consolas20pt); SpriteBatch pSB_Texts = SpriteBatchMan.Add(SpriteBatch.Name.Texts); SpriteBatch pSB_Aliens = SpriteBatchMan.Add(SpriteBatch.Name.Aliens); // Font FontMan.Add(Font.Name.TestMessage, SpriteBatch.Name.Texts, "SCORE<1>", Glyph.Name.Consolas20pt, 100, 730); FontMan.Add(Font.Name.TestMessage, SpriteBatch.Name.Texts, "HI-SCORE", Glyph.Name.Consolas20pt, 300, 730); FontMan.Add(Font.Name.TestMessage, SpriteBatch.Name.Texts, "SCORE<2>", Glyph.Name.Consolas20pt, 500, 730); FontMan.Add(Font.Name.Score1, SpriteBatch.Name.Texts, "0000", Glyph.Name.Consolas20pt, 100, 700); if (scoreHigh == null) { scoreHigh = "0000"; } FontMan.Add(Font.Name.ScoreHigh, SpriteBatch.Name.Texts, scoreHigh, Glyph.Name.Consolas20pt, 300, 700); FontMan.Add(Font.Name.Score2, SpriteBatch.Name.Texts, "0000", Glyph.Name.Consolas20pt, 500, 700); FontMan.Add(Font.Name.TestMessage, SpriteBatch.Name.Texts, "PLAY", Glyph.Name.Consolas20pt, 320, 550); FontMan.Add(Font.Name.TestMessage, SpriteBatch.Name.Texts, "SPACE INVADERS", Glyph.Name.Consolas20pt, 260, 500); FontMan.Add(Font.Name.TestMessage, SpriteBatch.Name.Texts, "PUSH <1> OR <2> PLAYERS BUTTON", Glyph.Name.Consolas20pt, 200, 450); FontMan.Add(Font.Name.TestMessage, SpriteBatch.Name.Texts, "*SCORE ADVANCE TABLE*", Glyph.Name.Consolas20pt, 220, 400); FontMan.Add(Font.Name.TestMessage, SpriteBatch.Name.Texts, " = 200 POINTS", Glyph.Name.Consolas20pt, 270, 350); FontMan.Add(Font.Name.TestMessage, SpriteBatch.Name.Texts, " = 30 POINTS", Glyph.Name.Consolas20pt, 270, 300); FontMan.Add(Font.Name.TestMessage, SpriteBatch.Name.Texts, " = 20 POINTS", Glyph.Name.Consolas20pt, 270, 250); FontMan.Add(Font.Name.TestMessage, SpriteBatch.Name.Texts, " = 10 POINTS", Glyph.Name.Consolas20pt, 270, 200); // Alien ImageMan.Add(Image.Name.SquidA, Texture.Name.Aliens, 547, 15, 250, 135); ImageMan.Add(Image.Name.CrabA, Texture.Name.Aliens, 281, 15, 250, 135); ImageMan.Add(Image.Name.OctopusA, Texture.Name.Aliens, 15, 15, 250, 135); ImageMan.Add(Image.Name.UFO, Texture.Name.Aliens, 80, 500, 230, 100); GameSpriteMan.Add(GameSprite.Name.Squid, Image.Name.SquidA, 100, 600, 35, 30, 255, 255, 255, 1); GameSpriteMan.Add(GameSprite.Name.Crab, Image.Name.CrabA, 100, 550, 35, 30, 255, 255, 255, 1); GameSpriteMan.Add(GameSprite.Name.Octopus, Image.Name.OctopusA, 100, 500, 35, 30, 255, 255, 255, 1); GameSpriteMan.Add(GameSprite.Name.UFO, Image.Name.UFO, 100, 500, 35, 30, 255, 0, 0, 1); GameObject pAlienGroup = new AlienGroup(GameObject.Name.AlienGroup, GameSprite.Name.NullObject, 100, 100); pAlienGroup.ActivateGameSprite(pSB_Aliens); GameObject pAlienColumn = new AlienGroup(GameObject.Name.AlienColumn, GameSprite.Name.NullObject, 100, 100); pAlienGroup.Add(pAlienColumn); pAlienColumn.ActivateGameSprite(pSB_Aliens); GameObject pSquid = new Squid(GameObject.Name.Squid, GameSprite.Name.Squid, 250, 300); pAlienColumn.Add(pSquid); pSquid.ActivateGameSprite(pSB_Aliens); GameObject pCrab = new Crab(GameObject.Name.Crab, GameSprite.Name.Crab, 250, 250); pAlienColumn.Add(pCrab); pCrab.ActivateGameSprite(pSB_Aliens); GameObject pOctopus = new Octopus(GameObject.Name.Octopus, GameSprite.Name.Octopus, 250, 200); pAlienColumn.Add(pOctopus); pOctopus.ActivateGameSprite(pSB_Aliens); UFO pUFO = new UFO(GameObject.Name.UFO, GameSprite.Name.UFO, 250, 350, null); pAlienColumn.Add(pUFO); pUFO.ActivateGameSprite(pSB_Aliens); GameObjectMan.Attach(pAlienGroup); // Input InputSubject pInputSubject; pInputSubject = InputMan.Get1Subject(); pInputSubject.Attach(new StartGameObserver(1)); pInputSubject = InputMan.Get2Subject(); pInputSubject.Attach(new StartGameObserver(2)); }
//------------------------------------------------------------------------------- // Methods //------------------------------------------------------------------------------- public void create(Manager.Name managerName, int reserveNum = 3, int growNum = 1) { switch (managerName) { case Manager.Name.TextureMan: TextureMan.Create(reserveNum, growNum); break; case Manager.Name.ImageMan: ImageMan.Create(reserveNum, growNum); break; case Manager.Name.GameSpriteMan: GameSpriteMan.Create(reserveNum, growNum); break; case Manager.Name.BoxSpriteMan: BoxSpriteMan.Create(reserveNum, growNum); break; case Manager.Name.SpriteBatchMan: SpriteBatchMan.Create(reserveNum, growNum); break; case Manager.Name.TimerMan: TimerMan.Create(reserveNum, growNum); break; case Manager.Name.ProxySpriteMan: ProxySpriteMan.Create(reserveNum, growNum); break; case Manager.Name.GameObjectMan: GameObjectMan.Create(reserveNum, growNum); break; case Manager.Name.CollisionPairMan: CollisionPairMan.Create(reserveNum, growNum); break; case Manager.Name.GlyphMan: GlyphMan.Create(reserveNum, growNum); break; case Manager.Name.FontMan: FontMan.Create(reserveNum, growNum); break; case Manager.Name.ShipMan: ShipMan.Create(); break; case Manager.Name.BombMan: BombMan.Create(); break; case Manager.Name.SoundMan: SoundMan.Create(); break; case Manager.Name.AlienMan: AlienMan.Create(); break; case Manager.Name.UFOMan: UFOMan.Create(); break; case Manager.Name.SceneMan: SceneMan.Create(); break; default: Debug.Assert(false); break; } }