public void OnPaint(IScreen scr, ControlContext cc, int x, int y) { if (visible) { Update(); scr.BlendSrcAlpha(); // 背景が描画されてはいけないので…。 scr.Blt(texture, x, y); } }
public virtual void OnPaint(IScreen scr, ControlContext cc, int x, int y) { if (!visible) { return; } ITexture tex = loader.GetTexture(loaderOffset); if (tex != null) { if (color != null) { scr.SetColor(color.Value); scr.Blt(tex, x, y); scr.ResetColor(); } else { scr.Blt(tex, x, y); } } }
public void DrawImage(GameImage image, int width, int height, int x, int y) { if (x + width < 0) { return; } if (x - width > Settings.SCREEN_WIDTH) { return; } if (y + height < 0) { return; } if (y - height > Settings.SCREEN_HEIGHT) { return; } if (currentDrawMode != DrawMode.Alpha) { screen.BlendSrcAlpha(); currentDrawMode = DrawMode.Alpha; } screen.SetColor(255, 255, 255, 255); screen.Blt(textures[(int)image], x, y); }
public virtual void OnPaint(IScreen scr , ControlContext cc , int x , int y) { if (!visible) return ; ITexture tex = loader.GetTexture(loaderOffset); if ( tex != null ) { if ( color != null ) { scr.SetColor(color.Value); scr.Blt(tex , x , y); scr.ResetColor(); } else { scr.Blt(tex , x , y); } } }
public virtual void OnPaint(IScreen scr , ControlContext cc , int x , int y) { if (!visible) return ; if (width == 0 || height == 0) { ITexture t0 = loader.GetTexture(0); // ボタンサイズを取得しておき、これをマウスの判定矩形として利用する if (t0 != null) { width = (int)t0.Width; height = (int)t0.Height; } } int mx, my; if (cc.MouseInput != null) cc.MouseInput.GetPos(out mx, out my); else mx = my = 0; bool isHover = (x <= mx) && (mx < x + width) && (y <= my) && (my < y + height); bool isDown = (cc.MouseInput != null) ? cc.MouseInput.IsPress(MouseInput.Button.Left) : false; // 前フレームで、 // isHover状態でかつisDown // 今回のフレームで // isHover状態かつ、!isDown // ならば、ボタンが押されたとしてボタンイベント発生。 isOnDown = false; if (enable) { if (lastIsHover && lastIsDown && isHover && !isDown) { if ( OnClick != null ) { OnClick(scr , cc); } isOnDown = true; } if (lastIsHover && !lastIsDown && isHover && isDown) { if (OnDown != null) OnDown(scr, cc); } } lastIsDown = isDown; lastIsHover = isHover; int pattern; if (!enable) pattern = 3; else if (!isHover) pattern = 0; else if (isDown) pattern = 1; else pattern = 2; ITexture tex = loader.GetTexture(pattern + loaderOffset); if ( tex != null ) { if ( color != null ) { scr.SetColor(color.Value); scr.Blt(tex , x , y); scr.ResetColor(); } else { scr.Blt(tex , x , y); } } }
public virtual void OnPaint(IScreen scr, ControlContext cc, int x, int y) { if (!visible) { return; } if (width == 0 || height == 0) { ITexture t0 = loader.GetTexture(0); // ボタンサイズを取得しておき、これをマウスの判定矩形として利用する if (t0 != null) { width = (int)t0.Width; height = (int)t0.Height; } } int mx, my; cc.MouseInput.GetPos(out mx, out my); bool isHover = (x <= mx) && (mx < x + width) && (y <= my) && (my < y + height); bool isDown = cc.MouseInput.IsPress(MouseInput.Button.Left); // 前フレームで、 // isHover状態でかつisDown // 今回のフレームで // isHover状態かつ、!isDown // ならば、ボタンが押されたとしてボタンイベント発生。 isOnDown = false; if (enable) { if (lastIsHover && lastIsDown && isHover && !isDown) { if (OnClick != null) { OnClick(scr, cc); } isOnDown = true; } if (lastIsHover && !lastIsDown && isHover && isDown) { if (OnDown != null) { OnDown(scr, cc); } } } lastIsDown = isDown; lastIsHover = isHover; int pattern; if (!enable) { pattern = 3; } else if (!isHover) { pattern = 0; } else if (isDown) { pattern = 1; } else { pattern = 2; } ITexture tex = loader.GetTexture(pattern + loaderOffset); if (tex != null) { if (color != null) { scr.SetColor(color.Value); scr.Blt(tex, x, y); scr.ResetColor(); } else { scr.Blt(tex, x, y); } } }
public void OnPaint(IScreen scr , ControlContext cc , int x , int y) { if ( visible ) { Update(); scr.BlendSrcAlpha(); // 背景が描画されてはいけないので…。 scr.Blt(texture , x , y); } }
public void DrawImage(Image image, int x, int y) { screen.Blt(textures[(int)image], x, y); }