Project1

标题: 【新人看这里】一起动手改脚本·番外1 [打印本页]

作者: 小镜子    时间: 2012-4-4 13:25
标题: 【新人看这里】一起动手改脚本·番外1
本帖最后由 小镜子 于 2012-4-4 13:26 编辑

心血来潮写个番外=w=(众:咱要的第三蛋呢!!!咱要的第三蛋呢!!!(镜子:番外来了,第三蛋还会远么~❤
这节课估计会有点酱油(众:拖出去TJJTDS!!),有一点要注意的是这节课不与上一节链接哦(这是番外嘛~❤
一起动手改脚本-番外1-充满活力的菜单=-=
正文:





1.目标

默认的菜单不管怎么改都好呆板的说...
所以~我们加一点细节的(咱词穷了=口=

所以~让菜单动起来吧~



2.飘来飘去~


呆板的菜单:


嗯嗯...让我们来试一下~打开菜单的时候,指令窗口从窗口外飘进来吧~


首先把指令窗口弄到窗口外面去(Scene_Menu,第21行~31行


RUBY 代码复制
  1. #--------------------------------------------------------------------------
  2.   # ● 生成指令窗口
  3.   #--------------------------------------------------------------------------
  4.   def create_command_window
  5.     @command_window = Window_MenuCommand.new
  6.     @command_window.set_handler(:item,      method(:command_item))
  7.     @command_window.set_handler(:skill,     method(:command_personal))
  8.     @command_window.set_handler(:equip,     method(:command_personal))
  9.     @command_window.set_handler(:status,    method(:command_personal))
  10.     @command_window.set_handler(:formation, method(:command_formation))
  11.     @command_window.set_handler(:save,      method(:command_save))
  12.     @command_window.set_handler(:game_end,  method(:command_game_end))
  13.     @command_window.set_handler(:cancel,    method(:return_scene))
  14.   end


在30行下面加一句:


RUBY 代码复制
  1. @command_window.x = -10


这样窗口就跑到外面去了=w=


2.2 窗口移动


难题来了=w=,肿么才能让窗口飘进来呢=口=??


这里需要用到两个东西:update , if(就是条件分歧啦


update就像是个并行处理一样...每一帧每一帧都在执行=w=
if就来判定指令窗口的X是否达到要求,达到要求就停下来
如果把if放进update里面,它就会每一帧每一帧的判定,如果还没达到就继续增加X


嗯嗯~大致的思路就出来了~


首先
在128行(还是这个脚本)后面插入这个东西
RUBY 代码复制
  1. def update
  2. super
  3.  
  4. end


就在这里定义在场景Menu里面的update的内容


然后
条件分歧
RUBY 代码复制
  1. def update
  2. super
  3.     if xxx
  4.  
  5.     end
  6. end


判定X是否达到要求(不然窗口的X就+2
PHP 代码复制
  1. def update
  2. super
  3.     if @command_window.x >= 0
  4.  
  5.     else @command_window.x += 2
  6.  
  7.     end
  8. end


测试:



最后:功课就是把其他窗口都飘来飘去吧~❤

作者: 荷包PIG蛋    时间: 2012-4-4 14:00

卖糕的!这是肿么回事啊啊啊啊!!!
作者: end55rpg    时间: 2012-4-4 14:36
刚才我也发了贴,图全都挂了,6R服务器有鸭梨啊。
后来我传到相册就行了
作者: 荷包PIG蛋    时间: 2012-4-6 18:13
发生神马事了= =

完全卡在那里不动,难道就是这么设计的吗??


‘‘──荷包PIG蛋于2012-4-6 19:44补充以下内容
你不会漏了什么吧= =

没啊。。。
’’
作者: 莲华乂乱舞    时间: 2012-4-9 11:22
本帖最后由 莲华乂乱舞 于 2012-4-9 12:02 编辑

一个以上元素更新  貌似会按照写的顺序来处理更新。。。。  不是同时进行每帧的更新


  def update
    super
      if @command_window.x >= 0
      else @command_window.x += 16
      end
      
      if  @gold_window.y <= Graphics.height - @gold_window.height
      else     @gold_window.y -= @gold_window.height/10
      end
  end


command_window.x我设的是160     理论上是同时使用10帧来完成   但是效果是分开处理了   update是每帧处理一次吧?  不会按照里面写的顺序分开处理的吧?



后续PS。。。。搞定了。。。不知道为什么    我换成横向选项栏就同步处理了。。。。
作者: 1450131341    时间: 2014-2-13 13:36
外站有个脚本放进去直接改成横向,我觉得还不错

作者: mshzh    时间: 2014-10-4 20:55
标题: ha
本帖最后由 mshzh 于 2014-10-4 20:56 编辑

{:8_459:}

未命名1.JPG (40.52 KB, 下载次数: 31)

未命名1.JPG





欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1