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

Project1

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

[已经解决] 能不能把显示文章位置脚本改成这样?

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
29 小时
注册时间
2010-7-22
帖子
56
跳转到指定楼层
1
发表于 2010-8-31 17:27:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 woyodo 于 2010-8-31 21:16 编辑

原脚本(Window_Message):
  #--------------------------------------------------------------------------
  # ● 设置窗口位置与不透明度
  #--------------------------------------------------------------------------
  def reset_window
    if $game_temp.in_battle
      self.y = 16
    else
      case $game_system.message_position
      when 0  # 上
        self.y = 16
      when 1  # 中
        self.y = 160
      when 2  # 下
        self.y = 304
      end
    end


现在:
  #--------------------------------------------------------------------------
  # ● 设置窗口位置与不透明度
  #--------------------------------------------------------------------------
  def reset_window
    if $game_temp.in_battle
      self.y = 16
    else
      case $game_system.message_position
      when 0  # 上
        super(115, 304, 515, 160)
      when 1  # 中
        self.y = 160
      when 2  # 下
        self.y = 304
      end
    end

我想把“上”作为显示脸图的方案,但是这样改系统提示错误,求解,谢谢!

Michael Jackson
  KING OF POP

Lv1.梦旅人

梦石
0
星屑
79
在线时间
211 小时
注册时间
2010-8-21
帖子
442
2
发表于 2010-8-31 17:28:39 | 只看该作者
我只试过改成:
                      self.x = 115
                      self.y = 304
成功过

点评

不好意思,我加分上限是一分  发表于 2010-8-31 21:16
对了 ,还得提醒下,你改动这个的话,在事件设置文章位置的地方就会移位,所以还是建议自己写个when 3 然后需要的时候再调用  发表于 2010-8-31 17:39
可以使用,感谢解答!  发表于 2010-8-31 17:36
我是脚本盲,我只懂这样改,至于其他,等高手来解吧  发表于 2010-8-31 17:34
就是说CASE下只能用SELF?  发表于 2010-8-31 17:32

评分

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

查看全部评分

回复 支持 反对

使用道具 举报

Lv3.寻梦者

孤独守望

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

开拓者贵宾

3
发表于 2010-8-31 17:37:25 | 只看该作者
= =b super的含义是:召唤父类同名方法调用(伪多态)。WM的父类WS显然不具有这个方法因此出错。通常设置位置只要self.x = ,self.y = 即可
菩提本非树,明镜本非台。回头自望路漫漫。不求姻缘,但求再见。
本来无一物,何处惹尘埃。风打浪吹雨不来。荒庭遍野,扶摇难接。
不知道多久更新一次的博客
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
29 小时
注册时间
2010-7-22
帖子
56
4
 楼主| 发表于 2010-8-31 17:39:49 | 只看该作者
回复 IamI 的帖子

那这句的SUPER又是什么意思呢?它的父类是什么?感谢回答!
  #--------------------------------------------------------------------------
  # ● 初始化状态
  #--------------------------------------------------------------------------
  def initialize
    super(80, 304, 480, 160)
   

点评

可以去认可帖叫版主来加分  发表于 2010-8-31 21:38
回复 支持 反对

使用道具 举报

Lv3.寻梦者

孤独守望

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

开拓者贵宾

5
发表于 2010-8-31 17:45:39 | 只看该作者
回复 woyodo 的帖子
WS = Window_Selectable。
这句super调用Window_Selectable中的initialize方法,这个方法接受四个参数,设定窗口的XYWH。具体可以自行参考源码。
   

点评

感谢解答  发表于 2010-8-31 17:50
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
79
在线时间
211 小时
注册时间
2010-8-21
帖子
442
6
发表于 2010-8-31 18:06:19 | 只看该作者
回复 woyodo 的帖子


对于您的问题我已经找到解决方案了,只要改成这样即可
  1.         self.x = 115
  2.         self.y = 304
  3.         self.width = 515
  4.         self.height = 160
复制代码
还是强烈建议下,加个when 3  然后用  $game_system.message_position = 3  调用就行,上面那些位置是系统默认的
如果你想改动也可以,只是位置还是自己斟酌下

点评

非常感谢,用你的方法已经成功了! 把“上”改掉只是因为事件编辑时不用打脚本,比较方便。  发表于 2010-8-31 21:13

评分

参与人数 1星屑 +200 收起 理由
六祈 + 200 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-5-6 19:33

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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