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

Project1

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

[已经解决] 模仿别的脚本写了个统计的页面,结果出现问题,求教一下

[复制链接]

Lv3.寻梦者

梦石
0
星屑
1971
在线时间
926 小时
注册时间
2015-10-26
帖子
356

开拓者

跳转到指定楼层
1
发表于 2017-2-27 16:09:38 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
模仿别的脚本写了个统计的页面,可以进入统计界面了,但是退不出来,而且文字都挤在一起了,求教是什么问题,咋改呀?

效果如题,在这里按ESC也退不出去,而且文字都挤在一起了
另外,窗口的内容没法往下滚动,如果项目多了,下面的就显示不出来了
麻烦高手帮忙解决这个问题呀~


RUBY 代码复制
  1. #==============================================================================
  2. # ** Window_Tongji
  3. #==============================================================================
  4. class Window_Tongji < Window_Selectable
  5.   #----------------------------------------------------------------------------
  6.   # * 初始化
  7.   #----------------------------------------------------------------------------
  8.   def initialize
  9.     super(0, 0, Graphics.width, Graphics.height)
  10.     refresh
  11.   end
  12.   #----------------------------------------------------------------------------
  13.   # * 刷新画面
  14.   #----------------------------------------------------------------------------
  15.   def update
  16.     super
  17.     refresh
  18.     end
  19.   #----------------------------------------------------------------------------
  20.   # * 更新内容
  21.   #----------------------------------------------------------------------------
  22.   def refresh
  23.     self.contents.clear
  24.     draw_text(x, y, 640, line_height, "统计", 1)
  25.     draw_text(x, y, 350, line_height*3, "破敌数", 0)
  26.     draw_text(x, y, 550, line_height*3, $game_variables[21], 2)
  27.     draw_text(x, y, 350, line_height*4, "测试1", 0)
  28.     draw_text(x, y, 550, line_height*4, $game_variables[21], 2)
  29.     draw_text(x, y, 350, line_height*5, "测试2", 0)
  30.     draw_text(x, y, 550, line_height*5, $game_variables[21], 2)
  31.     draw_text(x, y, 350, line_height*6, "测试3", 0)
  32.     draw_text(x, y, 550, line_height*6, $game_variables[21], 2)
  33.     draw_text(x, y, 350, line_height*7, "测试4", 0)
  34.     draw_text(x, y, 550, line_height*7, $game_variables[21], 2)
  35.     draw_text(x, y, 350, line_height*8, "测试5", 0)
  36.     draw_text(x, y, 550, line_height*8, $game_variables[21], 2)
  37.    end
  38. end
  39.   #----------------------------------------------------------------------------
  40.   # * 呼叫界面
  41.   #----------------------------------------------------------------------------
  42. class Call_Tongji < Scene_Base
  43.   def start
  44.     super     
  45.     create_tongji_window
  46.   end
  47.   #----------------------------------------------------------------------------
  48.   # * 创建统计窗口
  49.   #----------------------------------------------------------------------------
  50.   def create_tongji_window
  51.     @tongji_window = Window_Tongji.new
  52.     @tongji_window.set_handler(:cancel,method(:return_scene))
  53.   end
  54. end

Lv4.逐梦者

梦石
0
星屑
6260
在线时间
1481 小时
注册时间
2015-7-25
帖子
652

开拓者

2
发表于 2017-2-27 17:05:31 | 只看该作者
本帖最后由 魔法丶小肉包 于 2017-2-27 17:09 编辑

帮楼主改了一下脚本,看一下吧w 默认不翻页,1号开关打开时按上下键翻页,注意此时2号变量的值为文本行数,若不设置则什么都不会显示。
2号变量配合1号开关一起使用,不翻页的情况是考虑到文本未满一页,如超过一页则打开1号开关即可,有多少行文本就2号变量设置多少
RUBY 代码复制
  1. #==============================================================================
  2.     # ** Window_Tongji
  3.     #==============================================================================
  4.     class Window_Tongji < Window_Selectable
  5.       #----------------------------------------------------------------------------
  6.       # * 初始化
  7.       #----------------------------------------------------------------------------
  8.       def initialize
  9.         super(0, 0, Graphics.width, Graphics.height)
  10.         refresh
  11.         activate
  12.       end
  13.       def contents_height
  14.         $game_switches[1]?$game_variables[2] * 24 : super
  15.       end
  16.       #----------------------------------------------------------------------------
  17.       # * 刷新画面
  18.       #----------------------------------------------------------------------------
  19.       def update
  20.         super
  21.         refresh
  22.         if Input.trigger?(:UP)
  23.           if self.oy <= 0
  24.             self.oy = 0
  25.           else
  26.             self.oy -= 24
  27.           end
  28.         end
  29.         if Input.trigger?(:DOWN)
  30.           if $game_switches[1]
  31.            if self.oy >= contents_height - (416-125)
  32.              self.oy = contents_height - (416-125)
  33.            else
  34.              self.oy += 24
  35.            end
  36.           end
  37.         end
  38.       end
  39.       #----------------------------------------------------------------------------
  40.       # * 更新内容
  41.       #----------------------------------------------------------------------------
  42.       def refresh
  43.         self.contents.clear
  44.         draw_text(x, y, 640, line_height, "统计", 1)
  45.         draw_text(x, y, 350, line_height*3, "破敌数", 0)
  46.         draw_text(x, y+line_height*0, 550, line_height*3, $game_variables[21], 2)
  47.         draw_text(x, y+line_height*1, 350, line_height*4, "测试1", 0)
  48.         draw_text(x, y+line_height*1, 550, line_height*4, $game_variables[21], 2)
  49.         draw_text(x, y+line_height*2, 350, line_height*5, "测试2", 0)
  50.         draw_text(x, y+line_height*2, 550, line_height*5, $game_variables[21], 2)
  51.         draw_text(x, y+line_height*3, 350, line_height*6, "测试3", 0)
  52.         draw_text(x, y+line_height*3, 550, line_height*6, $game_variables[21], 2)
  53.         draw_text(x, y+line_height*4, 350, line_height*7, "测试4", 0)
  54.         draw_text(x, y+line_height*4, 550, line_height*7, $game_variables[21], 2)
  55.         draw_text(x, y+line_height*5, 350, line_height*8, "测试5", 0)
  56.         draw_text(x, y+line_height*5, 550, line_height*8, $game_variables[21], 2)
  57.        end
  58.     end
  59.       #----------------------------------------------------------------------------
  60.       # * 呼叫界面
  61.       #----------------------------------------------------------------------------
  62.     class Call_Tongji < Scene_Base
  63.       def start
  64.         super     
  65.         create_tongji_window
  66.       end
  67.       #----------------------------------------------------------------------------
  68.       # * 创建统计窗口
  69.       #----------------------------------------------------------------------------
  70.       def create_tongji_window
  71.         @tongji_window = Window_Tongji.new
  72.         @tongji_window.set_handler(:cancel,method(:return_scene))
  73.       end
  74.     end

点评

原来如此……知道了谢谢啦  发表于 2017-2-27 22:08
你的不能退出的原因是因为你没有使用activate,翻页其实这里设置的就是滚动...按上下键滚动(注意1号开关一定要打开才能滚动)  发表于 2017-2-27 20:22
额,试了下,并不能翻页或者滚动啊  发表于 2017-2-27 19:01
你的class Call_Tongji跟我的一模一样,为啥你的可以按ESC退出我的就不行?- -#,另外滚动效果比较好一点,翻页的这个感觉不是太好,不过也能用,谢了  发表于 2017-2-27 17:51

评分

参与人数 2星屑 +5 梦石 +1 收起 理由
RaidenInfinity + 1 认可答案
踢腿水上飘 + 5 认可答案

查看全部评分

笨肉包的首款像素OC游戏《花城梦之心》尝试制作中~
目前的坑 【不可思议的迷宫】幽灵契约外传:歌莉娅
持续更新中~ 当前进度 v0.28
大版本更新时才会更新网盘文件,预计下次大版本更新:v0.30
完成度:
主线 15% 支线 0% 数据库 6% 系统 86% 美术 6%
两边同时填坑~
( 这里是笨肉包~专修魔法!目标是大魔法师!
( 坑太大啦,一个人填不完啦hhh 一定会填完的嗯...
( 每天都和bug们比试魔力~吾之魔法将扫平一切!
( 弱点是美术,魔法修行之余再补补课吧~
( 哼哼哼~这便是魔法的力量!
大家都离开啦,笨肉包也不知道还能坚持多久呀...
这是属于笨肉包一个人的旅行(再见了...蚊子湯,七重酱,笨肉包永远想你们!TwT
回复 支持 1 反对 0

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-17 03:29

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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