查看: 1523|回复: 1

[有事请教] 文本行数判定

[复制链接]
梦石
0
星屑
3850
在线时间
1899 小时
注册时间
2010-6-19
回帖
917
发表于 2023-12-14 21:34:57 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
下面这个脚本可以显示信息文本,
功能为,在窗口显示文本,最多可以显示19行,但是当屏幕显示满19行之后,就无法继续显示后面的文本内容了(内容超过了窗口高度),
只能用代码$message_sprite.bitmap.clear把文本内容清空,然后修改索引位置,以达到显示后面的文本内容,要如何修改
索引$message_index=19的时候,前面的文本内容往上移动的效果

[pre lang="ruby"]  viewport = Viewport.new(0,0,640,480)
  viewport.z = 200
  $message_sprite = Sprite.new(viewport)
  $message_sprite.bitmap = Bitmap.new(640,480)
  $message_sprite.x = 6
  $message_sprite.y = 5
  $message_sprite.z = 99999
  $message_sprite.visible = true
  $message_sprite.bitmap.font.size = 15
  $message_sprite.bitmap.font.color.set(255,255,255,255)
  $message_index = 0

class Window_Goods < Window_Base
  def initialize
    super(0, 0, 300, 480)
    self.opacity = 255
    self.visible = true
    $game_party.update_message("养成存档习惯,避免从头再来!","_系统")
  end
end

def update_message(txt,a="_系统")
  bitmap = RPG::Cache.picture(a)
  rect = Rect.new(0,0,bitmap.width,bitmap.height)
  if $message_index < 19
    $message_sprite.bitmap.blt(1,4 + $message_index * 25, bitmap,rect)
    $message_sprite.bitmap.draw_text(5+bitmap.width, 4 + $message_index * 25, 300,bitmap.height, txt)
    $message_index += 1
  else
    $message_sprite.bitmap.clear
    $message_sprite.bitmap.blt(1,4,bitmap,rect)
    $message_sprite.bitmap.draw_text(5+bitmap.width, 4, 300,bitmap.height, txt)
    $message_index = 1
  end
end[/pre]

QQ图片20231214213242.png

聊天窗口.rar (194.45 KB, 下载次数: 3)
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部