public static Vector2 Draw4(SpriteFontX __inst, SpriteBatch sb, char[] str, Vector2 position, Vector2 maxBound, Vector2 scale, XnaColor color)
        {
            Func <Vector2, Vector2> DrawSp = (newPos) => __inst.Draw(sb, str, newPos, maxBound, scale, color);
            var config               = Resource.Config;
            var alterTextCfg         = config.AlterTextCfg;
            var alterFontCfg         = alterTextCfg.AlterFontCfg;
            var protagonistLineColor = alterFontCfg.ProtagonistLineColor;
            var antagonistLineColor  = alterFontCfg.AntagonistLineColor;

            if (TestColor(color, XnaColor.Black))
            {
                if (alterTextCfg.Enabled && alterTextCfg.UseBlackBorder)
                {
                    position.X--; position.Y--;
                    float X = position.X, Y = position.Y;
                    position = new Vector2(X - borderSize, Y - borderSize);
                    DrawSp(position);
                    position = new Vector2(X + borderSize, Y - borderSize);
                    DrawSp(position);
                    position = new Vector2(X + borderSize, Y + borderSize);
                    DrawSp(position);
                    position = new Vector2(X - borderSize, Y + borderSize);
                    DrawSp(position);
                    position = new Vector2(X, Y + borderSize);
                    DrawSp(position);
                    position = new Vector2(X, Y - borderSize);
                    DrawSp(position);
                    position = new Vector2(X - borderSize, Y);
                    DrawSp(position);
                    position = new Vector2(X + borderSize, Y);
                    return(DrawSp(position));
                }
            }
            return(DrawSp(position));
        }
        public static void newTex(SpriteFontX __instance, ref Texture2D ___CurrentTex2d)
        {
            _newTex(__instance);
            var nullOrNot = __instance == null ? "null" : "notnull";

            nullOrNot.ToString(); // fix __instance == null ???
            charTextures.Add(___CurrentTex2d, __instance);
        }
    public static void SetSpriteFont(int key, SpriteFontX _font)
    {
        switch (key)
        {
        case 0: font = _font; break;

        case 1: dfont = _font; break;

        case 2: scfont = _font; break;

        case 3: scdfont = _font; break;
        }
    }
Esempio n. 4
0
        public override void LoadContent()
        {
            // 棋盘
            this._board = this._content.Load <Texture2D>("img\\board");

            // HUD
            this._gameHUD.Load(this._content, this._graphics);

            // 额外HUD文字
            this._fontX = new SpriteFontX(FNAFont.Font16, this._graphics);

            // 音效
            this._placeChessSound = this._content.Load <SoundEffect>("audio\\place");

            base.LoadContent();
        }
Esempio n. 5
0
 public void Load(ContentManager content, GraphicsDeviceManager graphics)
 {
     this._fontX = new SpriteFontX(FNAFont.Font10, graphics);
 }
 public static Vector2 Draw3(SpriteFontX __inst, SpriteBatch sb, string str, Vector2 position, Vector2 maxBound, Vector2 scale, XnaColor color)
 {
     return(Draw4(__inst, sb, str.ToCharArray(), position, maxBound, scale, color));
 }
 public static Vector2 Draw2(SpriteFontX __inst, SpriteBatch sb, char[] str, Vector2 position, XnaColor color)
 {
     return(Draw4(__inst, sb, str, position, new Vector2(float.MaxValue, float.MaxValue), Vector2.One, color));
 }
 public static Vector2 Draw1(SpriteFontX __inst, SpriteBatch sb, string str, Vector2 position, XnaColor color)
 {
     return(Draw4(__inst, sb, str.ToCharArray(), position, new Vector2(float.MaxValue, float.MaxValue), Vector2.One, color));
 }
Esempio n. 9
0
File: Main.cs Progetto: THSJF/sjf
 protected override void Initialize()
 {
     try {
         Main.fpstimer = new System.Threading.Timer(new TimerCallback(this.FpsRecord), (object)null, 0, 1000);
         if (!File.Exists("Content/Music/00.xna"))
         {
             StreamWriter streamWriter = new StreamWriter("Content/Music/00.xna", false);
             streamWriter.WriteLine("Fantasy Danmaku Festival");
             streamWriter.WriteLine("0");
             streamWriter.Close();
             Cry.Encry("Content/Music/00.xna", 2);
         }
         if (!File.Exists("Content/Data/4.xna"))
         {
             PlayData   playData   = new PlayData();
             FileStream fileStream = new FileStream("Content/Data/4.xna", FileMode.Create);
             new BinaryFormatter().Serialize((Stream)fileStream, (object)playData);
             fileStream.Close();
             Cry.Encry("Content/Data/4.xna", 2);
         }
         if (!File.Exists("Content/Data/5.xna"))
         {
             PracticeData practiceData = new PracticeData();
             FileStream   fileStream   = new FileStream("Content/Data/5.xna", FileMode.Create);
             new BinaryFormatter().Serialize((Stream)fileStream, (object)practiceData);
             fileStream.Close();
             Cry.Encry("Content/Data/5.xna", 2);
         }
         if (!File.Exists("Content/Data/8.xna"))
         {
             SpecialData specialData = new SpecialData();
             FileStream  fileStream  = new FileStream("Content/Data/8.xna", FileMode.Create);
             new BinaryFormatter().Serialize((Stream)fileStream, (object)specialData);
             fileStream.Close();
             Cry.Encry("Content/Data/8.xna", 2);
         }
         if (!File.Exists("Content/Music/10.xna"))
         {
             new StreamWriter("Content/Data/10.xna", false).Close();
             Cry.Encry("Content/Data/10.xna", 2);
         }
         Main.rand    = new Random();
         Main.font    = new SpriteFontX(new Font("宋体", 12f, FontStyle.Regular, GraphicsUnit.Pixel), (IGraphicsDeviceService)this.graphics, TextRenderingHint.ClearTypeGridFit);
         Main.dfont   = new SpriteFontX(new Font("微软雅黑", 16f, FontStyle.Bold, GraphicsUnit.Pixel), (IGraphicsDeviceService)this.graphics, TextRenderingHint.AntiAlias);
         Main.scfont  = new SpriteFontX(new Font("宋体", 16f, FontStyle.Bold, GraphicsUnit.Pixel), (IGraphicsDeviceService)this.graphics, TextRenderingHint.AntiAlias);
         Main.scdfont = new SpriteFontX(new Font("宋体", 10f, FontStyle.Bold, GraphicsUnit.Pixel), (IGraphicsDeviceService)this.graphics, TextRenderingHint.SingleBitPerPixelGridFit);
         PadState.InitPad(Main.ini);
         Main.WindowSizeType = int.Parse(Main.ini.ReadValue("Graphics", "WindowSize"));
         Main.Fullorwindow   = int.Parse(Main.ini.ReadValue("Mode", "Full/Window"));
         Main.BackGround     = int.Parse(Main.ini.ReadValue("Graphics", "BackGround")) == 1;
         Main.VSync          = int.Parse(Main.ini.ReadValue("Graphics", "VSync")) == 1;
         this.graphics.SynchronizeWithVerticalRetrace = Main.VSync;
         this.IsFixedTimeStep = false;
         Main.ResizeWindow(this, Main.WindowSizeType);
         if (Main.Fullorwindow == 1)
         {
             this.graphics.ToggleFullScreen();
         }
         Sound.Init();
         Music.Init();
         Main.stage = "ENTRANCE";
         base.Initialize();
     } catch (Exception ex) {
         StreamWriter streamWriter = new StreamWriter("Error.txt");
         DateTime     now          = DateTime.Now;
         streamWriter.Write("[" + now.Hour.ToString("00") + ":" + now.Minute.ToString("00") + ":" + now.Second.ToString("00") + "]\n" + ex.ToString());
         streamWriter.Close();
         Main.Message(ex.ToString());
     }
 }
Esempio n. 10
0
 /// <summary>
 /// 绘制字符数组 (不带Begin End)
 /// </summary>
 /// <param name="sb">SpriteBatch</param>
 /// <param name="sfx">字体X</param>
 /// <param name="str">字符数组</param>
 /// <param name="position">位置</param>
 /// <param name="maxBound">绘制的最大范围限定</param>
 /// <param name="scale">缩放</param>
 /// <param name="color">颜色</param>
 /// <returns>绘制到的范围</returns>
 public static Vector2 DrawStringX(this SpriteBatch sb, SpriteFontX sfx, Char[] str, Vector2 position, Vector2 maxBound, Vector2 scale, Color color)
 {
     return(sfx.Draw(sb, str, position, maxBound, scale, color));
 }
Esempio n. 11
0
 /// <summary>
 /// 绘制字符数组 (不带Begin End)
 /// </summary>
 /// <param name="sb">SpriteBatch</param>
 /// <param name="sfx">字体X</param>
 /// <param name="str">字符串</param>
 /// <param name="position">位置</param>
 /// <param name="maxBound">绘制的最大范围限定</param>
 /// <param name="scale">缩放</param>
 /// <param name="color">颜色</param>
 /// <returns>绘制到的范围</returns>
 public static Vector2 DrawStringX(this SpriteBatch sb, SpriteFontX sfx, String str, Vector2 position, Color color)
 {
     return(sfx.Draw(sb, str, position, color));
 }
 public static void _SpriteFontXInitialize(SpriteFontX __instance, Font font, IGraphicsDeviceService gds, TextRenderingHint trh)
 {
 }
 public static void _newTex(SpriteFontX __instance)
 {
 }
Esempio n. 14
0
        //private Texture2D _pixel;

        public void Load(ContentManager content, GraphicsDeviceManager graphics)
        {
            this._fontX      = new SpriteFontX(FNAFont.Font16, graphics);
            this._fontXTitle = new SpriteFontX(FNAFont.Font20, graphics);
            //this._pixel = content.Load<Texture2D>("img\\pixel");
        }