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

Project1

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

[已经解决] 怎么样隐藏计时器

[复制链接]

Lv1.梦旅人

梦石
0
星屑
155
在线时间
332 小时
注册时间
2013-7-6
帖子
356
跳转到指定楼层
1
发表于 2013-8-23 20:12:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
如何隐藏计时器,在游戏中不可见,但是仍然在计时,或者调用游戏时间也行,求。。。
偶是熬夜学编程的傻子

Lv1.梦旅人

梦石
0
星屑
49
在线时间
69 小时
注册时间
2013-8-2
帖子
261
2
发表于 2013-8-24 14:21:50 | 只看该作者
先问一下楼主的目的是什么,好帮你解决,调用游戏时间的话这个个人认为肯定要用到脚本。。。。。。
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2749
在线时间
2630 小时
注册时间
2013-1-16
帖子
5657

贵宾

3
发表于 2013-8-24 15:40:04 | 只看该作者
在脚本Scene_Menu中在 #生成计时器 的部分的最后面加上 @xxxx.visible=false  xxxx是计时器的名字
(Created by @喵kano)


施工现场:hotege.github.io
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
155
在线时间
332 小时
注册时间
2013-7-6
帖子
356
4
 楼主| 发表于 2013-8-24 21:30:46 | 只看该作者
本帖最后由 wolves 于 2013-8-24 21:34 编辑
异值傀儡 发表于 2013-8-24 14:21
先问一下楼主的目的是什么,好帮你解决,调用游戏时间的话这个个人认为肯定要用到脚本。。。。。。 ...


http://rpg.blue/forum.php?mod=vi ... p;extra=#pid2285009
这个游戏,计时器问题。
脚本Scene_Menu中没有 #生成计时器。。。
偶是熬夜学编程的傻子
回复 支持 反对

使用道具 举报

Lv1.梦旅人

矿工

梦石
0
星屑
134
在线时间
898 小时
注册时间
2012-10-5
帖子
1535
5
发表于 2013-8-24 21:42:36 | 只看该作者
wolves 发表于 2013-8-24 21:30
http://rpg.blue/forum.php?mod=viewthread&tid=329222&page=1&extra=#pid2285009
这个游戏,计时器 ...

应该在Window_PlayTime下全文替换以下内容,出错追问我就行了。
  1. #==============================================================================
  2. # ■ Window_PlayTime
  3. #------------------------------------------------------------------------------
  4. #  菜单画面显示游戏时间的窗口。
  5. #==============================================================================

  6. class Window_PlayTime < Window_Base
  7.   #--------------------------------------------------------------------------
  8.   # ● 初始化对像
  9.   #--------------------------------------------------------------------------
  10.   def initialize
  11.     super(0, 0, 160, 96)
  12.     self.contents = Bitmap.new(width - 32, height - 32)
  13.     refresh
  14.   end
  15.   #--------------------------------------------------------------------------
  16.   # ● 刷新
  17.   #--------------------------------------------------------------------------
  18.   def refresh
  19.     self.contents.clear
  20.     self.contents.font.color = system_color
  21.     self.contents.draw_text(4, 0, 120, 32, "游戏时间")
  22.     @text = Sprite.new
  23.     @text.bitmap = Bitmap.new(200,100)
  24.     @text.bitmap.draw_text(0,0,200,100,"(不能查看)")
  25.     @text.x = 108
  26.     @text.y = 16
  27.     @total_sec = Graphics.frame_count / Graphics.frame_rate
  28.     hour = @total_sec / 60 / 60
  29.     min = @total_sec / 60 % 60
  30.     sec = @total_sec % 60
  31.     text = sprintf("%02d:%02d:%02d", hour, min, sec)
  32.    
  33.     if $game_switches[40] == on
  34.       text.visible = false
  35.       @text.visible = true
  36.     else
  37.       text.vesible = true
  38.       @text.visible = false
  39.     end
  40.     self.contents.font.color = normal_color
  41.     self.contents.draw_text(4, 32, 120, 32, text, 2)
  42.   end
  43.   #--------------------------------------------------------------------------
  44.   # ● 刷新画面
  45.   #--------------------------------------------------------------------------
  46.   def update
  47.     super
  48.     if Graphics.frame_count / Graphics.frame_rate != @total_sec
  49.       refresh
  50.     end
  51.   end
  52. end
复制代码
用四十号开关作为调用游戏时间显不显示。
呃,发糖贴好冷清呀!
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
155
在线时间
332 小时
注册时间
2013-7-6
帖子
356
6
 楼主| 发表于 2013-8-24 21:55:59 | 只看该作者
876加几 发表于 2013-8-24 21:42
应该在Window_PlayTime下全文替换以下内容,出错追问我就行了。用四十号开关作为调用游戏时间显不显示。 ...

不行,我禁用了菜单栏,调用的是计时器,要四十分钟后打开一个开关。想把计时器隐藏起来或者用游戏时间脚本来操作这个开关,不是要隐藏游戏时间。
偶是熬夜学编程的傻子
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
155
在线时间
332 小时
注册时间
2013-7-6
帖子
356
7
 楼主| 发表于 2013-8-24 21:56:29 | 只看该作者
876加几 发表于 2013-8-24 21:42
应该在Window_PlayTime下全文替换以下内容,出错追问我就行了。用四十号开关作为调用游戏时间显不显示。 ...

不行,我禁用了菜单栏,调用的是计时器,要四十分钟后打开一个开关。想把计时器隐藏起来或者用游戏时间脚本来操作这个开关,不是要隐藏游戏时间。
偶是熬夜学编程的傻子
回复 支持 反对

使用道具 举报

Lv1.梦旅人

矿工

梦石
0
星屑
134
在线时间
898 小时
注册时间
2012-10-5
帖子
1535
8
发表于 2013-8-24 22:01:55 | 只看该作者
wolves 发表于 2013-8-24 21:56
不行,我禁用了菜单栏,调用的是计时器,要四十分钟后打开一个开关。想把计时器隐藏起来或者用游戏时间脚 ...

喂,楼上的,你怎么连续追问一样的内容?
可以呀,设置个公共事件,开关为[0020.调出计时器],还是并行处理事件。
调出一个计时器(40分钟)后就打开此开关,然后条件分歧:计时器0分0秒时打开此开关,注意用上面同样的方法更改Sprite_Timer类。

点评

被抢答了,看起来你的技术应该比我高,那么交给你了。。。。。。  发表于 2013-8-25 02:38
呃,发糖贴好冷清呀!
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
155
在线时间
332 小时
注册时间
2013-7-6
帖子
356
9
 楼主| 发表于 2013-8-25 08:17:45 | 只看该作者
876加几 发表于 2013-8-24 22:01
喂,楼上的,你怎么连续追问一样的内容?
可以呀,设置个公共事件,开关为[0020.调出计时器],还是并行处 ...

脚本我复制过来了,不是说40号开关吗?我操作40号开关不管是开是关那个计时器都依然显示啊,怎么隐藏啊。。。20号开关我游戏中用了。
偶是熬夜学编程的傻子
回复 支持 反对

使用道具 举报

Lv1.梦旅人

矿工

梦石
0
星屑
134
在线时间
898 小时
注册时间
2012-10-5
帖子
1535
10
发表于 2013-8-25 09:57:15 | 只看该作者
wolves 发表于 2013-8-25 08:17
脚本我复制过来了,不是说40号开关吗?我操作40号开关不管是开是关那个计时器都依然显示啊,怎么隐藏啊。 ...

开关编号可以变换,全文替换Sprite_Timer。
  1. #==============================================================================
  2. # ■ Sprite_Timer
  3. #------------------------------------------------------------------------------
  4. #  显示计时器用的活动块。监视 $game_system 、活动块状态
  5. # 自动变化。
  6. #==============================================================================

  7. class Sprite_Timer < Sprite
  8.   #--------------------------------------------------------------------------
  9.   # ● 初始化对像
  10.   #--------------------------------------------------------------------------
  11.   def initialize
  12.     super
  13.     self.bitmap = Bitmap.new(88, 48)
  14.     self.bitmap.font.name = "Arial"
  15.     self.bitmap.font.size = 32
  16.     self.x = 640 - self.bitmap.width
  17.     self.y = 0
  18.     self.z = 500
  19.     update
  20.   end
  21.   #--------------------------------------------------------------------------
  22.   # ● 释放
  23.   #--------------------------------------------------------------------------
  24.   def dispose
  25.     if self.bitmap != nil
  26.       self.bitmap.dispose
  27.     end
  28.     super
  29.   end
  30.   #--------------------------------------------------------------------------
  31.   # ● 刷新画面
  32.   #--------------------------------------------------------------------------
  33.   def update
  34.     super
  35.     # 设置计时器执行中为可见
  36.     self.visible = $game_system.timer_working
  37.     # 如果有必要再次描绘计时器
  38.     if $game_system.timer / Graphics.frame_rate != @total_sec
  39.       # 清除窗口内容
  40.       self.bitmap.clear
  41.       # 计算总计秒数
  42.       @total_sec = $game_system.timer / Graphics.frame_rate
  43.       # 生成计时器显示用字符串
  44.       min = @total_sec / 60
  45.       sec = @total_sec % 60
  46.       text = sprintf("%02d:%02d", min, sec)
  47.       if $game_switches[40] == true
  48.         text.visible = false
  49.       else
  50.         text.visble = true
  51.       end
  52.       # 描绘计时器
  53.       self.bitmap.font.color.set(255, 255, 255)
  54.       self.bitmap.draw_text(self.bitmap.rect, text, 1)
  55.     end
  56.   end
  57. end
复制代码
可以试试上面的20号开关改成41号开关。

评分

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

查看全部评分

呃,发糖贴好冷清呀!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-17 17:36

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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