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

Project1

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

[已经过期] 为什么楼主的脚本死住不动了?

[复制链接]

Lv4.逐梦者

梦石
0
星屑
9280
在线时间
2504 小时
注册时间
2011-5-20
帖子
15389

开拓者

跳转到指定楼层
1
发表于 2013-10-2 22:08:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 chd114 于 2013-10-2 22:17 编辑

RUBY 代码复制
  1. class Scene_GtMenu
  2. # --------------------------------
  3.   def initialize(menu_index = 0)
  4.     @menu_index = menu_index
  5.   end
  6. # --------------------------------
  7.   def main
  8.     s1 = "动作"
  9.     s2 = "冒险"
  10.     s3 = "休闲"
  11.     s4 = "桌面"
  12.     s5 = "RPG"
  13.     s6 = "SLG"
  14.     s7 = "教育"
  15.     s8 = "养成"
  16.     s9 = "环保"
  17.     s10 = "射击"
  18.     s11 = "音乐"
  19.     s12 = "模拟"
  20.     s13 = "棋牌"
  21.     nx = "下一页"
  22.     ns = "上一页"
  23.     s14 = "体育"
  24.     s15 = "竞技"
  25.     s16 = "网络游戏"
  26.     s17 = "推理"
  27.     s18 = "幻想"
  28.     if $game_variables[1][16]==1
  29.       @command_window = Window_Command.new(160, [ns, s14, s15, s16, s17, s18])
  30.  
  31.       if FileTest.exist?("Makes/Gt014.rxdata")
  32.       else
  33.         @command_window.disable_item(1)
  34.       end
  35.       if FileTest.exist?("Makes/Gt015.rxdata")
  36.       else
  37.         @command_window.disable_item(2)
  38.       end
  39.       if FileTest.exist?("Makes/Gt016.rxdata")
  40.       else
  41.         @command_window.disable_item(3)
  42.       end
  43.       if FileTest.exist?("Makes/Gt017.rxdata")
  44.       else
  45.         @command_window.disable_item(4)
  46.       end
  47.       if FileTest.exist?("Makes/Gt018.rxdata")
  48.       else
  49.         @command_window.disable_item(5)
  50.       end
  51.  
  52.     else
  53.       @command_window = Window_Command.new(160, [s1, s2, s3, s4,
  54.       s5, s6, s7, s8, s9, s10, s11, s12, s13, nx])
  55.  
  56.       if FileTest.exist?("Makes/Gt001.rxdata")
  57.       else
  58.         @command_window.disable_item(0)
  59.       end
  60.       if FileTest.exist?("Makes/Gt002.rxdata")
  61.       else
  62.         @command_window.disable_item(1)
  63.       end
  64.       if FileTest.exist?("Makes/Gt003.rxdata")
  65.       else
  66.         @command_window.disable_item(2)
  67.       end
  68.       if FileTest.exist?("Makes/Gt004.rxdata")
  69.       else
  70.         @command_window.disable_item(3)
  71.       end
  72.       if FileTest.exist?("Makes/Gt005.rxdata")
  73.       else
  74.         @command_window.disable_item(4)
  75.       end
  76.       if FileTest.exist?("Makes/Gt006.rxdata")
  77.       else
  78.         @command_window.disable_item(5)
  79.       end
  80.       if FileTest.exist?("Makes/Gt007.rxdata")
  81.       else
  82.         @command_window.disable_item(6)
  83.       end
  84.       if FileTest.exist?("Makes/Gt008.rxdata")
  85.       else
  86.         @command_window.disable_item(7)
  87.       end
  88.       if FileTest.exist?("Makes/Gt009.rxdata")
  89.       else
  90.         @command_window.disable_item(8)
  91.       end
  92.       if FileTest.exist?("Makes/Gt010.rxdata")
  93.       else
  94.         @command_window.disable_item(9)
  95.       end
  96.       if FileTest.exist?("Makes/Gt011.rxdata")
  97.       else
  98.         @command_window.disable_item(10)
  99.       end
  100.       if FileTest.exist?("Makes/Gt012.rxdata")
  101.       else
  102.         @command_window.disable_item(11)
  103.       end
  104.       if FileTest.exist?("Makes/Gt013.rxdata")
  105.       else
  106.         @command_window.disable_item(12)
  107.       end
  108.  
  109.     end
  110.     @command_window.index = @menu_index
  111.     Graphics.transition
  112.     loop do
  113.       Graphics.update
  114.       Input.update
  115.       update
  116.       if $scene != self
  117.         break
  118.       end
  119.     end
  120.     Graphics.freeze
  121.     @command_window.dispose
  122.   end
  123. # --------------------------------
  124.   def update
  125.     @command_window.update
  126.     if @command_window.active
  127.       update_command
  128.       return
  129.     end
  130.   end
  131. # --------------------------------
  132.   def update_command
  133.     if Input.trigger?(Input::B)
  134.       $game_system.se_play($data_system.cancel_se)
  135.       $scene = Scene_MGMenu.new(0)
  136.       return
  137.     end
  138.     if Input.trigger?(Input::C)
  139.  
  140.       if $game_variables[1][16]==1
  141.         if FileTest.exist?("Makes/Gt014.rxdata") and @command_window.index==1
  142.         else
  143.           $game_system.se_play($data_system.buzzer_se)
  144.         return
  145.         end
  146.         if FileTest.exist?("Makes/Gt015.rxdata") and @command_window.index==2
  147.         else
  148.           $game_system.se_play($data_system.buzzer_se)
  149.         return
  150.         end
  151.         if FileTest.exist?("Makes/Gt016.rxdata") and @command_window.index==3
  152.         else
  153.           $game_system.se_play($data_system.buzzer_se)
  154.         return
  155.         end
  156.         if FileTest.exist?("Makes/Gt017.rxdata") and @command_window.index==4
  157.         else
  158.           $game_system.se_play($data_system.buzzer_se)
  159.         return
  160.         end
  161.         if FileTest.exist?("Makes/Gt018.rxdata") and @command_window.index==5
  162.         else
  163.           $game_system.se_play($data_system.buzzer_se)
  164.         return
  165.         end
  166.       else
  167.         if FileTest.exist?("Makes/Gt001.rxdata") and @command_window.index==0
  168.         else
  169.           $game_system.se_play($data_system.buzzer_se)
  170.         return
  171.         end
  172.         if FileTest.exist?("Makes/Gt002.rxdata") and @command_window.index==1
  173.         else
  174.           $game_system.se_play($data_system.buzzer_se)
  175.         return
  176.         end
  177.         if FileTest.exist?("Makes/Gt003.rxdata") and @command_window.index==2
  178.         else
  179.           $game_system.se_play($data_system.buzzer_se)
  180.         return
  181.         end
  182.         if FileTest.exist?("Makes/Gt004.rxdata") and @command_window.index==3
  183.         else
  184.           $game_system.se_play($data_system.buzzer_se)
  185.         return
  186.         end
  187.         if FileTest.exist?("Makes/Gt005.rxdata") and @command_window.index==4
  188.         else
  189.           $game_system.se_play($data_system.buzzer_se)
  190.         return
  191.         end
  192.         if FileTest.exist?("Makes/Gt006.rxdata") and @command_window.index==5
  193.         else
  194.           $game_system.se_play($data_system.buzzer_se)
  195.         return
  196.         end
  197.         if FileTest.exist?("Makes/Gt007.rxdata") and @command_window.index==6
  198.         else
  199.           $game_system.se_play($data_system.buzzer_se)
  200.         return
  201.         end
  202.         if FileTest.exist?("Makes/Gt008.rxdata") and @command_window.index==7
  203.         else
  204.           $game_system.se_play($data_system.buzzer_se)
  205.         return
  206.         end
  207.         if FileTest.exist?("Makes/Gt009.rxdata") and @command_window.index==8
  208.         else
  209.           $game_system.se_play($data_system.buzzer_se)
  210.         return
  211.         end
  212.         if FileTest.exist?("Makes/Gt010.rxdata") and @command_window.index==9
  213.         else
  214.           $game_system.se_play($data_system.buzzer_se)
  215.         return
  216.         end
  217.         if FileTest.exist?("Makes/Gt011.rxdata") and @command_window.index==10
  218.         else
  219.           $game_system.se_play($data_system.buzzer_se)
  220.         return
  221.         end
  222.         if FileTest.exist?("Makes/Gt012.rxdata") and @command_window.index==11
  223.         else
  224.           $game_system.se_play($data_system.buzzer_se)
  225.         return
  226.         end
  227.         if FileTest.exist?("Makes/Gt013.rxdata") and @command_window.index==12
  228.         else
  229.           $game_system.se_play($data_system.buzzer_se)
  230.         return
  231.         end
  232.       end
  233.  
  234.       case @command_window.index
  235.       when 0
  236.         if $game_variables[1][16]==1
  237.           $game_variables[1][16]=0
  238.           $game_system.se_play($data_system.cancel_se)
  239.           $scene = Scene_GtMenu.new(0)
  240.         else
  241.           $game_variables[6][1]="动作"
  242.           $game_system.se_play($data_system.cancel_se)
  243.           $scene = Scene_MGMenu.new(0)
  244.           return
  245.         end
  246.       when 1
  247.         if $game_variables[1][16]==1
  248.           $game_variables[6][1]="体育"
  249.           $game_system.se_play($data_system.cancel_se)
  250.           $scene = Scene_MGMenu.new(0)
  251.           return
  252.         else
  253.           $game_variables[6][1]="冒险"
  254.           $game_system.se_play($data_system.cancel_se)
  255.           $scene = Scene_MGMenu.new(0)
  256.           return
  257.         end
  258.       when 2
  259.         if $game_variables[1][16]==1
  260.           $game_variables[6][1]="竞技"
  261.           $game_system.se_play($data_system.cancel_se)
  262.           $scene = Scene_MGMenu.new(0)
  263.           return
  264.         else
  265.           $game_variables[6][1]="休闲"
  266.           $game_system.se_play($data_system.cancel_se)
  267.           $scene = Scene_MGMenu.new(0)
  268.           return
  269.         end
  270.       when 3
  271.         if $game_variables[1][16]==1
  272.           $game_variables[6][1]="网络游戏"
  273.           $game_system.se_play($data_system.cancel_se)
  274.           $scene = Scene_MGMenu.new(0)
  275.           return
  276.         else
  277.           $game_variables[6][1]="桌面"
  278.           $game_system.se_play($data_system.cancel_se)
  279.           $scene = Scene_MGMenu.new(0)
  280.           return
  281.         end
  282.       when 4
  283.         if $game_variables[1][16]==1
  284.           $game_variables[6][1]="推理"
  285.           $game_system.se_play($data_system.cancel_se)
  286.           $scene = Scene_MGMenu.new(0)
  287.           return
  288.         else
  289.           $game_variables[6][1]="RPG"
  290.           $game_system.se_play($data_system.cancel_se)
  291.           $scene = Scene_MGMenu.new(0)
  292.           return
  293.         end
  294.       when 5
  295.         if $game_variables[1][16]==1
  296.           $game_variables[6][1]="幻想"
  297.           $game_system.se_play($data_system.cancel_se)
  298.           $scene = Scene_MGMenu.new(0)
  299.           return
  300.         else
  301.           $game_variables[6][1]="SLG"
  302.           $game_system.se_play($data_system.cancel_se)
  303.           $scene = Scene_MGMenu.new(0)
  304.           return
  305.         end
  306.  
  307.       when 6
  308.         $game_variables[6][1]="教育"
  309.         $game_system.se_play($data_system.cancel_se)
  310.         $scene = Scene_MGMenu.new(0)
  311.         return
  312.       when 7
  313.         $game_variables[6][1]="养成"
  314.         $game_system.se_play($data_system.cancel_se)
  315.         $scene = Scene_MGMenu.new(0)
  316.         return
  317.       when 8
  318.         $game_variables[6][1]="环保"
  319.         $game_system.se_play($data_system.cancel_se)
  320.         $scene = Scene_MGMenu.new(0)
  321.         return
  322.       when 9
  323.         $game_variables[6][1]="射击"
  324.         $game_system.se_play($data_system.cancel_se)
  325.         $scene = Scene_MGMenu.new(0)
  326.         return
  327.       when 10
  328.         $game_variables[6][1]="音乐"
  329.         $game_system.se_play($data_system.cancel_se)
  330.         $scene = Scene_MGMenu.new(0)
  331.         return
  332.       when 11
  333.         $game_variables[6][1]="模拟"
  334.         $game_system.se_play($data_system.cancel_se)
  335.         $scene = Scene_MGMenu.new(0)
  336.         return
  337.       when 12
  338.         $game_variables[6][1]="棋牌"
  339.         $game_system.se_play($data_system.cancel_se)
  340.         $scene = Scene_MGMenu.new(0)
  341.         return
  342.  
  343.       when 13
  344.         $game_variables[1][16]=1
  345.         $game_system.se_play($data_system.cancel_se)
  346.         $scene = Scene_GtMenu.new(0)
  347.       end
  348.       return
  349.     end
  350.   end
  351. # --------------------------------
  352.   def update_status
  353.     if Input.trigger?(Input::B)
  354.       $game_system.se_play($data_system.cancel_se)
  355.       $scene = Scene_MGMenu.new(0)
  356.       return
  357.     end
  358.     if Input.trigger?(Input::C)
  359.       case @command_window.index
  360.       when 0
  361.       end
  362.       return
  363.     end
  364.   end
  365. end


这是楼主自己做的菜单···本来考虑到N周目设定特意加的文件判定是否拥有的素材···但问题是现在这个菜单的下一页也点不了了···至于上一页···也是点不了···@美丽晨露 @弗雷德 @myownroc 求帮忙把这里的下一页和上一页救活···


@hys111111 @精灵使者
目前的脚本还有个问题是不管加没加文件都不会点亮素材···

点评

不相信就算了,我只能笑笑  发表于 2013-10-3 12:12
手机看着眼睛疼,心更疼啊(流量伤不起)  发表于 2013-10-2 23:59
那M君现在看看阿···  发表于 2013-10-2 22:17
呃…是明后两天…  发表于 2013-10-2 22:17
表示今明两天暂时不会出现…  发表于 2013-10-2 22:16
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png

Lv1.梦旅人

梦石
0
星屑
117
在线时间
552 小时
注册时间
2012-8-18
帖子
1429
2
发表于 2013-10-2 22:54:20 | 只看该作者
因为这个代码实在是太让人难以忍受了,100行左右的代码你写了300多行

点评

我之前用的就是150行的代码···但是菜单退出后要按一下确认键才会消失···你那套行不通  发表于 2013-10-3 12:37
你在逗我= =就种类就有18项···现在是25项···怎么可能只要100行···而且我这个又不是单纯的一成不变什么的···有些地方有些小(xie)玩(e)意···  发表于 2013-10-3 09:41
我要填坑!我要背单词!我要学日语!我要每天锻炼!
好吧呵呵= =
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3582
在线时间
3065 小时
注册时间
2011-11-17
帖子
980
3
发表于 2013-10-2 23:09:32 | 只看该作者
代码重构下吧 这样看起来累 还容易出错 好比 你有些地方return都写错位子了

点评

···我直接把Scene_Menu的拿来改的···懒得排版了···  发表于 2013-10-3 09:40
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3846
在线时间
1966 小时
注册时间
2013-1-3
帖子
9536
4
发表于 2013-10-3 07:13:10 | 只看该作者
确实结构顺序有错,还有熊叔最近没上6R
《宿愿·寻剑篇》正式版已经发布!快去看看!点击进入论坛发布贴
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
9280
在线时间
2504 小时
注册时间
2011-5-20
帖子
15389

开拓者

5
 楼主| 发表于 2013-10-3 09:39:13 | 只看该作者
紫英晓狼1130 发表于 2013-10-3 07:13
确实结构顺序有错,还有熊叔最近没上6R

结构顺序我是按照Scene_Menu来弄得···有什么问题吗?
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复 支持 反对

使用道具 举报

Lv1.梦旅人

薄凉看客

梦石
0
星屑
50
在线时间
1269 小时
注册时间
2010-6-20
帖子
1316
6
发表于 2013-10-3 10:05:26 | 只看该作者
为什么我看到用同一个实例变量(@command_window)生成了2个命令窗体(command)
脚本虽然有刷新状态(update_status)但却看不到生成状态窗口(也可能眼瞎)

点评

我会告诉你我是偷懒直接拿Scene_Menu改的吗···  发表于 2013-10-3 10:33
回复 支持 反对

使用道具 举报

Lv2.观梦者 (暗夜天使)

万兽

梦石
0
星屑
597
在线时间
2271 小时
注册时间
2006-11-4
帖子
4868

贵宾

7
发表于 2013-10-3 14:26:34 | 只看该作者
循环就可以解决的事干嘛非得写成这么多……真心看得难受,另外348行的return是不是写错地方了?

点评

······我直接用Scene_Menu改的······主要是想达到翻页的效果···而且加了成就系统···里面设定选择某个项目X次后会···  发表于 2013-10-3 15:48
表示根本看不懂ing~  发表于 2013-10-3 14:28
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-10 23:20

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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