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

Project1

 找回密码
 注册会员
搜索

【求助帖】窗口选项什么的渣问题一个

查看数: 2617 | 评论数: 7 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2010-12-28 23:04

正文摘要:

本帖最后由 px.凤翔九天 于 2010-12-30 20:47 编辑 貌似比较渣的问题,但是我还是没能搞定。 就是在我改动了scene_item window_item window_help等脚本时,发现了以下问题: 也就是一个窗口的小小的排版问题 正常 ...

回复

七夕小雨 发表于 2010-12-29 12:55:04
先说第一个问题吧~
在Window_Item 裡面第52行左右
      @data.push(item)
改成
      $game_party.item_number(item).times{@data.push(item)}
然後77行
      self.contents.draw_text(rect, sprintf(":%2d", number), 2)
前面加上 # 号


至于为什么不好使,我估计是你@datasize变量没有好对地方

首先window类起头申明垮类可操作~
然后在@datax = @data
@data = []
下面写上
@datasize = @datax.size
承认这里昨天晚上大意写错了- -

然后scene_Item里面

main部分~
@window = window_Item.new
@window.refresh(0,0)
#这里这么干时为了让他执行一遍最新的refresh从而获得@datasize的值
if @window.datasize >10
@window.refresh(0,10)
else
@window.refresh(0,@window.datasize)
end

其余的地方还真没有发现再有什么问题,就是少个LEFT,这个我相信你会的
禾西 发表于 2010-12-29 10:11:16
难道要使用一次物品就重新排布所有页

是的。

点评

额,比较麻烦啊....又是对我的猪逻辑的考验....  发表于 2010-12-29 21:01
结缘猫 发表于 2010-12-29 00:51:21
怎么看小羽的头像让人感觉你都是腐女。。。。。。。
也许是我比较YY吧= =。。。。
七夕小雨 发表于 2010-12-29 00:07:16
宿舍息灯了……明天吧……如果我记得的话--By Highfan!3.0

点评

你要是忙的话,估计我还得用我自己的各种渣方法探索了....  发表于 2010-12-29 00:29
貌似有神奇的不好使了.....原因不详,貌似是那个s p的参数设置有问题,话说您还是写个帮我写个范例工程吧....理解能力低下啊  发表于 2010-12-29 00:27
最好直接搞个工程过来,纯写脚本还是有一些理解难度....  发表于 2010-12-29 00:18
好的。  发表于 2010-12-29 00:12
七夕小雨 发表于 2010-12-28 23:32:24
本帖最后由 七夕小雨 于 2010-12-28 23:42 编辑

分类了嘛?貌似没有看到分类嘛~

好吧~我没有明白第一个问题是什么意思~54吧~

翻页是这样的~

Scene_item
update部分加入

if Input.repeat?(Input::RIGHT)
end
这里先不用写什么~
然后在window_item中
def refresh加两个参数
def refresh(s,p)

再看到 @item_max = @data.size
上面一行插入

@datax = @data
@data = []
if @datax.size>10
  for i in 0...(p-s)
    @data=@datax[s+i]
  end
else
  @data = @datax
end

然后再看
if Input.repeat?(Input::RIGHT)
end
中间填上
@page +1
@window.refresh(@page*10,@page*10+10)

期间还需要一些判定,比如什么时候RIGHT不能按

还有初始化场景需要@page = 0物品的初始化设置等等

我想你都没有问题了吧


七夕小雨于2010-12-28 23:38补充以下内容:
最好再窗口类起先申明一个可操作的对象变量~带入的是@datasize = @data.size为的判定页数

那样
scene_Item的updat中先计算一下总页数
@max = @window.datasize
@bit = @max/10
if Input.repeat?(Input::RIGHT)
@page +1

  if @page != @bit
          @window.refresh(@page*10,@page*10+10)

  else
     @window.refresh(@page*10,@max)

  end
end



七夕小雨于2010-12-28 23:40补充以下内容:
声明总变量是 在window_Item<window_Selectable下面加上
attr_accessor :datasize
def initialize下面加上
@datasize = 0

点评

恩恩,对,就是这个意思。显示两次而不是显示数目的数字。  发表于 2010-12-28 23:57
其实第一lz的一是应该是不要显示数量。比如说有两个恢复剂,可是不要显示【恢复剂x2】,要显示两次【恢复剂】。  发表于 2010-12-28 23:43

评分

参与人数 1星屑 +400 收起 理由
fux2 + 400 认可答案

查看全部评分

enghao_lim 发表于 2010-12-28 23:31:26
如果只是要窗口,我可以帮你,可是这样scene_item很多功能会冲突到乱……那个你得自己来……怎样?

点评

楼下把答案补完了……  发表于 2010-12-28 23:43
拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

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

GMT+8, 2024-11-13 12:37

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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