查看: 2951|回复: 8

[已经解决] 能否修改指令窗口?

[复制链接]
梦石
0
星屑
50
在线时间
14 小时
注册时间
2017-7-11
回帖
12
发表于 2017-7-13 19:17:27 | 显示全部楼层 |阅读模式

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

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

×
QUESTION.png

就如图所示,虽然一直试着寻找类似教学,但不知道是不是我路痴还是啥的,没找到类似的东西。希望各位有经验的大大赐教,我是脚本白痴,复杂的真心不明白。
梦石
0
星屑
6375
在线时间
1473 小时
注册时间
2015-7-25
回帖
609

极短25参与开拓者

发表于 2017-7-13 23:24:51 | 显示全部楼层
首先是个性光标,
那么既然是标题画面,那就先找到Scene_Title
然后在start里创建一个新的方法,方法名随意,这里就c_gb好了
[pre lang="ruby"]def c_gb
    @gb = Sprite.new
    @gb.bitmap = Cache.system("光标")
end[/pre]

然后,需要dispose,在terminate里执行吧
[pre lang="ruby"]def terminate
    super
    d_gb
end[/pre]
创建d_gb方法
[pre lang="ruby"]def d_gb
    @gb.dispose
end[/pre]

然后需要设定x,y,z坐标吧?
那么,在c_gb方法里设定吧
[pre lang="ruby"]def c_gb
    @gb = Sprite.new
    @gb.bitmap = Cache.system("光标")
    @gb.z = 1000
    @gb.x = 300
    @gb.y = 300+@command_window.index * 30
end[/pre]
设定z=1000,x=300,@command_window.index来获取光标的索引再乘以30(差不多一行的高度吧)再+300,总之这个坐标可以自己调整

设定完之后打开游戏一看,光标出现了,不过好像不动嘛,那么怎么办呢,那就update一下吧
[pre lang="ruby"]def update
    super
    @gb.update
    @gb.y = 300+@command_window.index * 30
end[/pre]
@gb.update使光标更新,然后因为y坐标随时要变动所以要不断更新所以在update方法里也写一下y坐标,跟c_gb里的一样
那么,个性光标就完成啦,哦对了,别忘了把名为光标的素材放在Graphics里的System文件夹里...

接下来是去掉白边...
那就干脆透明一下好了
那么找到Window_TitleCommand
然后self.opacity = 0一下吧

最后,合起来的话。。。差不多就是这样啦
[pre lang="ruby"]class Scene_Title < Scene_Base
  def start
    super
    SceneManager.clear
    Graphics.freeze
    create_background
    create_foreground
    create_command_window
    c_gb
    play_title_music
  end
  def terminate
    super
    d_gb
  end
  def c_gb
    @gb = Sprite.new
    @gb.bitmap = Cache.system("光标")
    @gb.z = 1000
    @gb.x = 300
    @gb.y = 300+@command_window.index * 30
  end
  def update
    super
    @gb.update
    @gb.y = 300+@command_window.index * 30
  end
  def d_gb
    @gb.dispose
  end
end
class Window_TitleCommand < Window_Command
  def initialize
    super(0, 0)
    update_placement
    select_symbol(:continue) if continue_enabled
    self.openness = 0
    self.opacity = 0
    open
  end
end[/pre]

点评

已经完成了大大!我希望给你看看这个完成度,真心谢谢你,感恩~  发表于 2017-7-14 08:53
其实楼主的要求我觉得用事件标题、然后用变量取余来确立坐标比较好  发表于 2017-7-14 00:16
6666!!不遗余力的小肉包  发表于 2017-7-14 00:16

评分

参与人数 1星屑 +250 梦石 +1 收起 理由
RaidenInfinity + 250 + 1 认可答案

查看全部评分

笨肉包的游戏讨论群932812135 (实时更新) 喜欢的话欢迎加入~
目前的坑
??? #像素风OC游戏 准备中 短篇-约5小时
花城梦之心 #像素风OC游戏 系统开发+素材绘制中
【不可思议的迷宫】幽灵契约外传:歌莉娅 v0.4 游戏文件已更新
同时更新中~ (沉迷摸鱼中~更新速度较慢请见谅w)
这是属于笨肉包一个人的旅行~(这只肉包又在摸鱼!
旅途的最终目标~ ???(保密~
回复 1 0

使用道具 举报

梦石
0
星屑
50
在线时间
14 小时
注册时间
2017-7-11
回帖
12
 楼主| 发表于 2017-7-14 07:08:59 | 显示全部楼层
魔法丶小肉包 发表于 2017-7-13 23:24
首先是个性光标,
那么既然是标题画面,那就先找到Scene_Title
然后在start里创建一个新的方法,方法名随意 ...

请问这些代码都是写入scene_title的项目里吗?尤其是def c_gb和def_update的部分,我在scene title里好像没看到类似的。
回复

使用道具 举报

梦石
0
星屑
50
在线时间
14 小时
注册时间
2017-7-11
回帖
12
 楼主| 发表于 2017-7-14 08:07:46 | 显示全部楼层
魔法丶小肉包 发表于 2017-7-13 23:24
首先是个性光标,
那么既然是标题画面,那就先找到Scene_Title
然后在start里创建一个新的方法,方法名随意 ...

对不起,因为才刚接触,对于这些脚本编号该写入那一项目有些还不熟。
回复

使用道具 举报

梦石
0
星屑
50
在线时间
14 小时
注册时间
2017-7-11
回帖
12
 楼主| 发表于 2017-7-14 08:23:40 | 显示全部楼层

我差不多知道是怎么一回事了,但是就是这里出了问题,请问该如何解决呢?
Untitled.jpg
回复

使用道具 举报

梦石
0
星屑
50
在线时间
14 小时
注册时间
2017-7-11
回帖
12
 楼主| 发表于 2017-7-14 08:53:11 | 显示全部楼层
终于弄好了!!!真的是太感谢大大的智慧与帮助,让我突然哭了,这完成度一直是我无法越过的坎,这下子有动力继续了,再一次谢谢大大的鼎力帮助!{:4_113:}{:4_113:}{:4_113:}{:4_113:}{:4_113:}{:4_113:}{:4_113:}{:4_113:}{:4_113:}{:4_113:}{:4_113:}

顺便也贴上来给大大看看这个完成度~
Untitled.jpg

评分

参与人数 1星屑 +45 收起 理由
魔法丶小肉包 + 45 加油~

查看全部评分

回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部