设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2418|回复: 11
打印 上一主题 下一主题

关于对话中选择项的问题

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
60
在线时间
9 小时
注册时间
2006-9-7
帖子
303
跳转到指定楼层
1
发表于 2009-2-7 01:54:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
  
   为了要显示更多行数, 我使用了  http://rpg.blue/web/htm/news827.htm  续行符创建超长文章脚本, 之后选择项就会出现对不上号, 说不太清楚, 用图来表达一下.


   下面两张图,是不同行数时, 选择项的光柜显示在不同的位置?  这个要怎么解决?

   

   

   

   {/mg}
版务信息:本贴由楼主自主结贴~
十年磨一剑,蓦然回首,年华如水,青春如歌。

Lv1.梦旅人

梦石
0
星屑
50
在线时间
93 小时
注册时间
2008-5-16
帖子
745
2
发表于 2009-2-7 02:30:11 | 只看该作者
根据项目数判断光标初始坐标!
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
60
在线时间
9 小时
注册时间
2006-9-7
帖子
303
3
 楼主| 发表于 2009-2-7 03:01:04 | 只看该作者

   这段脚本需要怎么修改?

  1. def update_cursor_rect
  2.    if @index >= 0
  3.      n = $game_temp.choice_start + @index
  4.      self.cursor_rect.set(8, n * 32, @cursor_width, 32)
  5.    else
  6.      self.cursor_rect.empty
  7.    end
  8. end
复制代码
十年磨一剑,蓦然回首,年华如水,青春如歌。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
1 小时
注册时间
2008-7-28
帖子
432
4
发表于 2009-2-7 03:12:29 | 只看该作者
    好吧。。。问题出在n*32  这里的光标的Y坐标。。。。其他。。。LZ应该能想到方法解决了吧= =
回复 支持 反对

使用道具 举报

Lv4.逐梦者

「Pemercyia」


Urhurrenna

梦石
0
星屑
9340
在线时间
2745 小时
注册时间
2008-9-5
帖子
3540

开拓者短篇八RM组冠军短篇九导演组亚军白银编剧

5
发表于 2009-2-7 03:39:05 | 只看该作者
以下引用hgfor于2009-2-6 19:01:04的发言:


  这段脚本需要怎么修改?

def update_cursor_rect
   if @index >= 0
     n = $game_temp.choice_start + @index
     self.cursor_rect.set(8, n * 32, @cursor_width, 32)
   else
     self.cursor_rect.empty
   end
end

     self.cursor_rect.set(8, n * 32, @cursor_width, 32)
这块,D一个是X坐标,D2个的“*”后面的树是Y坐标的变化量,后两个是那个框框的宽和高。。
LZ要改的大概是D2个“*”后面的数字吧。。。改小点看看。。。。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
60
在线时间
9 小时
注册时间
2006-9-7
帖子
303
6
 楼主| 发表于 2009-2-7 03:47:31 | 只看该作者
我修改的就是 “*”后面的数字, 如果我把数字减少点, 还是不能显示在正常的位置.


  def update_cursor_rect
    if @index >= 0
      n = $game_temp.choice_start + @index
      self.cursor_rect.set(0, n * 22 - 55, @cursor_width, 22)
    else
      self.cursor_rect.empty
    end
  end
十年磨一剑,蓦然回首,年华如水,青春如歌。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
60
在线时间
9 小时
注册时间
2006-9-7
帖子
303
7
 楼主| 发表于 2009-2-7 18:22:13 | 只看该作者
感觉好像是因为修改了自动换行符引起的, 我的对话框中每行显示30个字之后用P来换行, 我不记得RM默认的是多少个字一行了.

n = $game_temp.choice_start + @index  这条语句可能是按照默认一行多少字来算的.

高手指点一下.
十年磨一剑,蓦然回首,年华如水,青春如歌。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
60
在线时间
9 小时
注册时间
2006-9-7
帖子
303
8
 楼主| 发表于 2009-2-8 00:37:18 | 只看该作者
高手指点一下.
回复 支持 反对

使用道具 举报

Lv3.寻梦者

孤独守望

梦石
0
星屑
3121
在线时间
1534 小时
注册时间
2006-10-16
帖子
4321

开拓者贵宾

9
发表于 2009-2-8 00:56:24 | 只看该作者
问题在此。
            $game_temp.choice_start = line_count(事件处理器3.40,脚本94)
这里单纯用默认行数来计算选择项的位置。
现在应该吧字符数加起来除以30加个1
要看你怎么算换行了,换行法则是怎么样的?
菩提本非树,明镜本非台。回头自望路漫漫。不求姻缘,但求再见。
本来无一物,何处惹尘埃。风打浪吹雨不来。荒庭遍野,扶摇难接。
不知道多久更新一次的博客
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
60
在线时间
9 小时
注册时间
2006-9-7
帖子
303
10
 楼主| 发表于 2009-2-8 03:13:17 | 只看该作者

  每30个字就用P来换行,  计算选择项位置是默认的脚本,要怎么修改?

  1. if c == "\p"
  2.           if centerflag == true
  3.             x = 520 - x
  4.             x = x / 2
  5.             self.contents.draw_text(x, 32 * y, 520-x, lineheight, a)
  6.           end
  7.           if rightflag == true
  8.             x = 520 - x
  9.             self.contents.draw_text(x, 32 * y, 520-x, lineheight, a)
  10.           end
  11.           if bannerflag == true
  12.             x = 520 - x
  13.             x = x / 2
  14.             self.contents.draw_text(x, 44, 520-x, lineheight, a)
  15.           end
  16.           a = ""
  17.           centerflag = false
  18.           rightflag = false
  19.           bannerflag = false
  20.           if y >= $game_temp.choice_start
  21.             @cursor_width = [@cursor_width, x].max
  22.           end
  23.           y += 1
  24.           x = 0
  25.          # if y >= $game_temp.choice_start
  26.          #   x = 0
  27.          # end
  28.           next
  29.        end
  30.         if centerflag == false && rightflag == false && bannerflag == false
  31.         # 控制字体间隔
  32.         self.contents.draw_text(1 + x, 20 * y, 40, lineheight, c)
  33.         x += self.contents.text_size(c).width
  34.       else
  35.         a += c
  36.         x += self.contents.text_size(c).width
  37.         end
  38.       end
复制代码
十年磨一剑,蓦然回首,年华如水,青春如歌。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-5-11 15:06

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表