public TextHandler(FontDrawer drawer_, Point virtualDims_) { drawer = drawer_; texts = new List <string>(); poses = new List <float>(); scrollSpeed = 30; virtualDims = virtualDims_; wasIgnored = false; currentHeight = 0; isActive = true; }
/// <summary> /// Resize the stack in a non-destructive way /// </summary> /// <param name="newSize">The new size of the stack</param> public void resize(int newSize) { if (newSize > size_) { int nextSize = (newSize > size_ * 2) ? newSize : size_ * 2; FontDrawer[] tempStack = new FontDrawer[nextSize]; for (int i = 0; i <= top_; i++) { tempStack[i] = stack_[i]; } stack_ = tempStack; tempStack = null; size_ = nextSize; initializeStack(); } }
protected override void Initialize() { base.Initialize(); currentState = GameState.Menu; currentSubState = GameSubState.Main; CreateInputProfile(); CreateScenes(); transitionTimer = new MonoGame.FZT.Assets.Timer(2f); villagerTick = new MonoGame.FZT.Assets.Timer(10f); gameTick = new MonoGame.FZT.Assets.Timer(GameData.GameTick); PhysicsManager.CreateWorld(); PhysicsManager.SetUnitRatio(64); PhysicsManager.SetupDebugview(GraphicsDevice, Content); cursor = new CursorManager(); rng = new Random(); fdrawer = new FontDrawer(); List <TextureDrawer> font = new List <TextureDrawer>(); string junk = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ\".,;:?!'\"][-+/\\^&é0123456789"; Texture2D tex = Content.Load <Texture2D>("Placeholder/font2"); for (int i = 0; i < junk.Length; i++) { font.Add(new TextureDrawer(tex, new TextureFrame(new Rectangle(8 * i, 0, 8, 10), new Point(0, 0)), null, junk[i].ToString(), null, null)); } fdrawer.fonts.Add(new DrawerCollection(font, "font")); tooltipText = ""; changeTooltipText = true; tooltipPos = new Vector2(33, 2); currentUI = mainUI; currentBG = mainMenuBG; cloudSpeed = 3; cloudTimer = 0; }
protected override void LoadContent() { spriteBatch = new SpriteBatch(GraphicsDevice); Button button = new Button("goToGame", new Rectangle(119, 196, 162, 48), new TextureDrawer(Content.Load <Texture2D>("button"))); UIs = new UISystem[] { new UISystem(new List <Button>(1) { button }, "Menu"), new UISystem(SetupGameButtons(), "Game") }; currentUI = UIs[0]; //LOAD ALL XML ElementCollection.ReadDocument(XDocument.Load("Content/Entities.xml")); ElementCollection.ReadDocument(XDocument.Load("Content/TurretSheet.xml")); XElement e = ElementCollection.GetSpritesheetRef("turrets"); SpriteSheetCollection.LoadSheet(ElementCollection.GetSpritesheetRef("turrets"), Content); FontDrawer drawer = new FontDrawer(); TextureDrawer[] letters = GetLettersFromSource(); drawer.fonts.Add(new DrawerCollection(letters, "aaa")); handler = new TextHandler(drawer, virtualDims); SoundManager.AddEffect(Content.Load <SoundEffect>("classic_hurt"), "shoot"); SoundManager.AddSong(Content.Load <Song>("ld41tracktest2"), "song"); ChangeToQueue(0); //LOAD MAP AND ENTS gameMap = new Map( new Vector2[] { new Vector2(150, 0), new Vector2(153, 142), new Vector2(222, 142), new Vector2(222, 190), new Vector2(108, 190), new Vector2(108, 104), new Vector2(-30, 104) }, new TextureDrawer(Content.Load <Texture2D>("envtest3")), new FRectangle[] { new FRectangle(0, 0, 141, 81), new FRectangle(119, 82, 26, 58), new FRectangle(135, 144, 78, 23), new FRectangle(162, 0, 79, 123), new FRectangle(230, 123, 9, 67), new FRectangle(102, 191, 138, 49), new FRectangle(0, 104, 100, 138) }); availableTurrets = new List <Entity>(); availableTurrets.Add(Assembler.GetEnt(ElementCollection.GetEntRef("machinegun 1"), new Vector2(24, 16), Content, ebuilder, false)); availableTurrets.Add(Assembler.GetEnt(ElementCollection.GetEntRef("sniper 1"), new Vector2(24, 16), Content, ebuilder, false)); availableTurrets.Add(Assembler.GetEnt(ElementCollection.GetEntRef("artillery 1"), new Vector2(24, 16), Content, ebuilder, false)); availableTurrets.Add(Assembler.GetEnt(ElementCollection.GetEntRef("ring"), new Vector2(24, 16), Content, ebuilder, false)); //availableTurrets.Add(Assembler.GetEnt(ElementCollection.GetEntRef("machinegun 2"), new Vector2(24, 16), Content, ebuilder, false)); //availableTurrets.Add(Assembler.GetEnt(ElementCollection.GetEntRef("sniper 2"), new Vector2(24, 16), Content, ebuilder, false)); //availableTurrets.Add(Assembler.GetEnt(ElementCollection.GetEntRef("artillery 2"), new Vector2(24, 16), Content, ebuilder, false)); //availableTurrets.Add(Assembler.GetEnt(ElementCollection.GetEntRef("machinegun 3"), new Vector2(24, 16), Content, ebuilder, false)); //availableTurrets.Add(Assembler.GetEnt(ElementCollection.GetEntRef("sniper 3"), new Vector2(24, 16), Content, ebuilder, false)); //availableTurrets.Add(Assembler.GetEnt(ElementCollection.GetEntRef("artillery 3"), new Vector2(24, 16), Content, ebuilder, false)); status = new TextureDrawer(Content.Load <Texture2D>("statusbar")); cursor = new TextureDrawer(Content.Load <Texture2D>("cursor"), new TextureFrame(new Rectangle(0, 0, 8, 8), new Point(4, 4))); transitiontex = new TextureDrawer(Content.Load <Texture2D>("loading")); menutex = new TextureDrawer(Content.Load <Texture2D>("start")); dedtex = new TextureDrawer(Content.Load <Texture2D>("gameover")); textframe = new TextureDrawer(Content.Load <Texture2D>("ui2")); loader = new TextureDrawer(Content.Load <Texture2D>("loadanim"), new TextureFrame[] { new TextureFrame(new Rectangle(0, 0, 162, 48), Point.Zero), new TextureFrame(new Rectangle(0, 48, 162, 48), Point.Zero), new TextureFrame(new Rectangle(0, 96, 162, 48), Point.Zero), new TextureFrame(new Rectangle(0, 144, 162, 48), Point.Zero) }); }
protected void initializeStack() { for (int i = top_ + 1; i < size_; i++) { stack_[i] = new FontDrawer(spriteBatch_); } }
protected override void Initialize() { dist = new Timer(0.2f); easeOut = new Timer(5f); easeIn = new Timer(3f); gameState = GameState.Menu; currentUInb = 0; score = 0; IsMouseVisible = true; blackness = 0.5f; fading = true; goingToMenu = false; //VALUES //UTILITY ebuilder = new EntBuilder42(); scenes = new SceneCollection(); scenes.scenes.Add(new Scene( new RenderTarget2D(GraphicsDevice, vdims.X, vdims.Y), new Rectangle(0, 0, vdims.X, vdims.Y), new Rectangle(0, 0, wdims.X, wdims.Y), "main" )); scenes.scenes.Add(new Scene( new RenderTarget2D(GraphicsDevice, vdims.X, vdims.Y), new Rectangle(0, 0, vdims.X, vdims.Y), new Rectangle(0, 0, vdims.X, vdims.Y), "UI" )); scenes.scenes.Add(new Scene( new RenderTarget2D(GraphicsDevice, vdims.X, vdims.Y), new Rectangle(0, 0, vdims.X, vdims.Y), new Rectangle(0, 0, vdims.X, vdims.Y), "game" )); scenes.scenes.Add(new Scene( new RenderTarget2D(GraphicsDevice, vdims.X, vdims.Y), new Rectangle(0, 0, vdims.X, vdims.Y), new Rectangle(0, 0, vdims.X, vdims.Y), "inven" )); cursorManager = new CursorManager(); KeyManager[] keyManagers = new KeyManager[] { }; ipp = InputProfile.GetLetterProfile(); fdrawer = new FontDrawer(); List <TextureDrawer> chars = new List <TextureDrawer>(); string white = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789?!:;.-_@"; for (int i = 0; i < white.Length; i++) { chars.Add(new TextureDrawer(Content.Load <Texture2D>("Placeholder/font_white"), new TextureFrame(new Rectangle(i * 6, 0, 5, 11), Point.Zero), null, white[i].ToString())); } white = "abcdefghijklmnopqrstuvwxyz"; for (int i = 0; i < white.Length; i++) { chars.Add(new TextureDrawer(Content.Load <Texture2D>("Placeholder/font_white"), new TextureFrame(new Rectangle(i * 6, 13, 5, 11), Point.Zero), null, white[i].ToString())); } //real font List <TextureDrawer> char2s = new List <TextureDrawer>(); white = "01234"; for (int i = 0; i < white.Length; i++) { char2s.Add(new TextureDrawer(Content.Load <Texture2D>("UI/score"), new TextureFrame(new Rectangle(i * 16, 16, 16, 16), Point.Zero), null, white[i].ToString())); } white = "56789"; for (int i = 0; i < white.Length; i++) { char2s.Add(new TextureDrawer(Content.Load <Texture2D>("UI/score"), new TextureFrame(new Rectangle(i * 16, 32, 16, 16), Point.Zero), null, white[i].ToString())); } fdrawer.fonts = new List <DrawerCollection> { new DrawerCollection(chars, "whitefont"), new DrawerCollection(char2s, "realfont") }; ipp.AddArrowInput(); base.Initialize(); }