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

Project1

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

[已经解决] 关于 Scene Debug(XP)

[复制链接]

Lv3.寻梦者

梦石
0
星屑
2932
在线时间
435 小时
注册时间
2014-11-21
帖子
145
跳转到指定楼层
1
发表于 2015-7-31 13:28:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
是关于RPG MAKER XP的
我想在游戏中加入一个解谜元素,玩家可以通过一个机器操纵一部分开关和变量通过实验来走出迷宫。
因为迷宫比较大,用的开关和变量很多,感觉可以用 Scene Debug 来改会方便,
但是不知道怎么做。
有没有大神能做个示范比如说只能修改100-150变量,200-250开关的Scene Debug?

评分

参与人数 1星屑 +35 收起 理由
RyanBern + 35 手动认可奖励

查看全部评分

Lv4.逐梦者

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

开拓者

2
发表于 2015-7-31 18:09:01 | 只看该作者
你是说同时操作若干个变量和若干个开关?
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2932
在线时间
435 小时
注册时间
2014-11-21
帖子
145
3
 楼主| 发表于 2015-7-31 18:31:50 | 只看该作者
chd114 发表于 2015-7-31 18:09
你是说同时操作若干个变量和若干个开关?

就是可以随意操作类似内测一样,但是如果乱操做就会GG
目前想法就是有些变量名是给的,有些不给,要通过操纵给你的来推导出没给你的是干什么用的
实在不行只能自己做一个scene一个一个代入了
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
56
在线时间
18 小时
注册时间
2015-7-31
帖子
63
4
发表于 2015-7-31 18:41:49 | 只看该作者
大体思路,
输入变量索引
如果在可修改内
输入值
修改
可以用事件加脚本
回复 支持 反对

使用道具 举报

Lv4.逐梦者

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

开拓者

5
发表于 2015-7-31 19:09:53 | 只看该作者
hy2000 发表于 2015-7-31 01:31
就是可以随意操作类似内测一样,但是如果乱操做就会GG
目前想法就是有些变量名是给的,有些不给,要通过 ...

你在工程里按F12,进入游戏按F9···我记得可以操作开关变量
如果要玩家也能这么做就把scene_map的

  1.     # 调试模式为 ON 并且按下 F9 键的情况下
  2.     if $DEBUG and Input.press?(Input::F9)
  3.       # 设置调用调试标志
  4.       $game_temp.debug_calling = true
  5.     end
复制代码
去掉那个
  1. $DEBUG and
复制代码
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2932
在线时间
435 小时
注册时间
2014-11-21
帖子
145
6
 楼主| 发表于 2015-7-31 19:14:46 | 只看该作者
chd114 发表于 2015-7-31 19:09
你在工程里按F12,进入游戏按F9···我记得可以操作开关变量
如果要玩家也能这么做就把scene_map的去掉 ...

……我知道这个是用来开DEBUG的
我的问题是怎么限制它能控制的开关和变量
回复 支持 反对

使用道具 举报

Lv4.逐梦者

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

开拓者

7
发表于 2015-7-31 19:16:26 | 只看该作者
hy2000 发表于 2015-7-31 02:14
……我知道这个是用来开DEBUG的
我的问题是怎么限制它能控制的开关和变量 ...

首先你要知道scene_debug里面显示了什么···
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2932
在线时间
435 小时
注册时间
2014-11-21
帖子
145
8
 楼主| 发表于 2015-7-31 19:21:49 | 只看该作者
chd114 发表于 2015-7-31 19:16
首先你要知道scene_debug里面显示了什么···

难道不是显示两个窗口,左边是10个1组,右面下面是说明,上面是具体内容吗?
因为RM既然本身有这种脚本我想是不是能改一改
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
142
在线时间
264 小时
注册时间
2006-11-22
帖子
1057
9
发表于 2015-8-1 21:11:17 | 只看该作者
101-150,201-250,行吗{:2_276:}
RUBY 代码复制
  1. #==============================================================================
  2. # ■ Window_DebugLeft
  3. #------------------------------------------------------------------------------
  4. #  偵錯畫面、指定開關及變數區塊的視窗。
  5. #==============================================================================
  6.  
  7. class Window_DebugLeft < Window_Selectable
  8.   #--------------------------------------------------------------------------
  9.   # ● 初始化物件
  10.   #--------------------------------------------------------------------------
  11.   def initialize
  12.     super(0, 0, 192, 480)
  13.     self.index = 0
  14.     refresh
  15.   end
  16.   #--------------------------------------------------------------------------
  17.   # ● 更新
  18.   #--------------------------------------------------------------------------
  19.   def refresh
  20.     if self.contents != nil
  21.       self.contents.dispose
  22.       self.contents = nil
  23.     end
  24.     @switch_min=10
  25.     @variable_min = 20
  26.     @switch_max = 15
  27.     @variable_max = 25
  28.     @item_max = @switch_max + @variable_max-@switch_min-@variable_min
  29.     self.contents = Bitmap.new(width - 32, @item_max * 32)
  30.     for i in @switch_min...@switch_max
  31.       text = sprintf("S [%04d-%04d]", i*10+1, i*10+10)
  32.       self.contents.draw_text(4, (i-@switch_min) * 32, 152, 32, text)
  33.     end
  34.     for i in @variable_min...@variable_max
  35.       text = sprintf("V [%04d-%04d]", i*10+1, i*10+10)
  36.       self.contents.draw_text(4, (@switch_max-@switch_min + i - @variable_min) * 32, 152, 32, text)
  37.     end
  38.   end
  39.   #--------------------------------------------------------------------------
  40.   # ● 獲取模式
  41.   #--------------------------------------------------------------------------
  42.   def mode
  43.     if self.index+@switch_min < @switch_max
  44.       return 0
  45.     else
  46.       return 1
  47.     end
  48.   end
  49.   #--------------------------------------------------------------------------
  50.   # ● 獲取開頭顯示的 ID
  51.   #--------------------------------------------------------------------------
  52.   def top_id
  53.     if self.index < @switch_max
  54.       return (self.index+@switch_min) * 10 + 1
  55.     else
  56.       return (self.index+@variable_min - @switch_max) * 10 + 1
  57.     end
  58.   end
  59. end

评分

参与人数 1梦石 +1 收起 理由
RyanBern + 1 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2932
在线时间
435 小时
注册时间
2014-11-21
帖子
145
10
 楼主| 发表于 2015-8-1 21:23:56 | 只看该作者
3535 发表于 2015-8-1 21:11
101-150,201-250,行吗
#==================================================================== ...

解决了问题!十分感谢!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-12 04:24

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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