Project1

标题: 文章换行光标显示 [打印本页]

作者: sblkhgm    时间: 2014-8-19 22:43
标题: 文章换行光标显示
  1.         # 另起一行文字的情况下
  2.         if  c == "\n"
  3.           # 刷新选择项及光标的高
  4.           if y >= $game_temp.choice_start
  5.             @cursor_width = [@cursor_width, x].max
  6.           end
  7.           # y 加 1
  8.           y += 1
  9.           x = 0
  10.           # 移动到选择项的下一行
  11.           if y >= $game_temp.choice_start
  12.             x = 8
  13.           end
  14.           # 下面的文字
  15.           next
  16.         end
复制代码
为什么 我把  if  c == "\n"换成   if x >= 450 选择项就不见了  我想让他 自动换行 和 有★也可以换行 要怎么做
作者: 白鬼    时间: 2014-8-19 22:54
有★的话
就是if  c == "★"
而你所说的自动换行,应该是计算字符窜的长度@cursor_width,而不是x
x是坐标,也可以说是这一行文章显示的起始位置
至于自动换行的话,建议还是修改字体大小比较来的直接点
把字体调小一点,这样你怎么打字,在事件中的宽度能放下的字符绝对不会超出游戏中文本框的宽度。
因为计算@cursor_width的宽度,要算上窗口的边缘,要算上字体大小,要算上字体间隔距离
总之很麻烦就是了。
作者: 恐惧剑刃    时间: 2014-8-20 02:19
第一行换成
if  c == "\n" or c == "★" or x + self.contents.text_size(c).width >= self.width - 40




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1