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

Project1

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

[已经解决] 计时器怎么正计时

[复制链接]

Lv1.梦旅人

梦石
0
星屑
75
在线时间
27 小时
注册时间
2014-7-19
帖子
110
跳转到指定楼层
1
发表于 2014-8-30 11:40:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
不会弄。

Lv1.梦旅人

梦石
0
星屑
75
在线时间
27 小时
注册时间
2014-7-19
帖子
110
2
 楼主| 发表于 2014-8-30 12:19:18 | 只看该作者
自顶。。

点评

不要频繁自顶  发表于 2014-8-30 12:45
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
75
在线时间
27 小时
注册时间
2014-7-19
帖子
110
3
 楼主| 发表于 2014-8-30 12:20:01 | 只看该作者
就是每秒加一而不是减一
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
380
在线时间
602 小时
注册时间
2014-5-8
帖子
699
4
发表于 2014-8-30 12:56:32 | 只看该作者
本帖最后由 布罗利 于 2014-8-30 13:07 编辑

找到Game_System这个脚本
翻到最下面
把if @timer_working and @timer > 0 改成if @timer_working
把@timer -= 1改成@timer += 1
然后开始计时的时候得是0秒
或者直接替换掉这个脚本
RUBY 代码复制
  1. #==============================================================================
  2. # ■ Game_System
  3. #------------------------------------------------------------------------------
  4. #  处理系统附属数据的类。也可执行诸如 BGM 管理之类的功能。本类的实例请参考
  5. # $game_system 。
  6. #==============================================================================
  7.  
  8. class Game_System
  9.   #--------------------------------------------------------------------------
  10.   # ● 定义实例变量
  11.   #--------------------------------------------------------------------------
  12.   attr_reader   :map_interpreter          # 地图事件用解释程序
  13.   attr_reader   :battle_interpreter       # 战斗事件用解释程序
  14.   attr_accessor :timer                    # 计时器
  15.   attr_accessor :timer_working            # 计时器执行中的标志
  16.   attr_accessor :save_disabled            # 禁止存档
  17.   attr_accessor :menu_disabled            # 禁止菜单
  18.   attr_accessor :encounter_disabled       # 禁止遇敌
  19.   attr_accessor :message_position         # 文章选项 显示位置
  20.   attr_accessor :message_frame            # 文章选项 窗口外关
  21.   attr_accessor :save_count               # 存档次数
  22.   attr_accessor :magic_number             # 魔法编号
  23.   #--------------------------------------------------------------------------
  24.   # ● 初始化对像
  25.   #--------------------------------------------------------------------------
  26.   def initialize
  27.     @map_interpreter = Interpreter.new(0, true)
  28.     @battle_interpreter = Interpreter.new(0, false)
  29.     @timer = 0
  30.     @timer_working = false
  31.     @save_disabled = false
  32.     @menu_disabled = false
  33.     @encounter_disabled = false
  34.     @message_position = 2
  35.     @message_frame = 0
  36.     @save_count = 0
  37.     @magic_number = 0
  38.   end
  39.   #--------------------------------------------------------------------------
  40.   # ● 演奏 BGM
  41.   #     bgm : 演奏的 BGM
  42.   #--------------------------------------------------------------------------
  43.   def bgm_play(bgm)
  44.     @playing_bgm = bgm
  45.     if bgm != nil and bgm.name != ""
  46.       Audio.bgm_play("Audio/BGM/" + bgm.name, bgm.volume, bgm.pitch)
  47.     else
  48.       Audio.bgm_stop
  49.     end
  50.     Graphics.frame_reset
  51.   end
  52.   #--------------------------------------------------------------------------
  53.   # ● 停止 BGM
  54.   #--------------------------------------------------------------------------
  55.   def bgm_stop
  56.     Audio.bgm_stop
  57.   end
  58.   #--------------------------------------------------------------------------
  59.   # ● BGM 的淡出
  60.   #     time : 淡出时间 (秒)
  61.   #--------------------------------------------------------------------------
  62.   def bgm_fade(time)
  63.     @playing_bgm = nil
  64.     Audio.bgm_fade(time * 1000)
  65.   end
  66.   #--------------------------------------------------------------------------
  67.   # ● 记忆 BGM
  68.   #--------------------------------------------------------------------------
  69.   def bgm_memorize
  70.     @memorized_bgm = @playing_bgm
  71.   end
  72.   #--------------------------------------------------------------------------
  73.   # ● 还原 BGM
  74.   #--------------------------------------------------------------------------
  75.   def bgm_restore
  76.     bgm_play(@memorized_bgm)
  77.   end
  78.   #--------------------------------------------------------------------------
  79.   # ● 演奏 BGS
  80.   #     bgs : 演奏的 BGS
  81.   #--------------------------------------------------------------------------
  82.   def bgs_play(bgs)
  83.     @playing_bgs = bgs
  84.     if bgs != nil and bgs.name != ""
  85.       Audio.bgs_play("Audio/BGS/" + bgs.name, bgs.volume, bgs.pitch)
  86.     else
  87.       Audio.bgs_stop
  88.     end
  89.     Graphics.frame_reset
  90.   end
  91.   #--------------------------------------------------------------------------
  92.   # ● BGS 的淡出
  93.   #     time : 淡出时间 (秒)
  94.   #--------------------------------------------------------------------------
  95.   def bgs_fade(time)
  96.     @playing_bgs = nil
  97.     Audio.bgs_fade(time * 1000)
  98.   end
  99.   #--------------------------------------------------------------------------
  100.   # ● 记忆 BGS
  101.   #--------------------------------------------------------------------------
  102.   def bgs_memorize
  103.     @memorized_bgs = @playing_bgs
  104.   end
  105.   #--------------------------------------------------------------------------
  106.   # ● 还原 BGS
  107.   #--------------------------------------------------------------------------
  108.   def bgs_restore
  109.     bgs_play(@memorized_bgs)
  110.   end
  111.   #--------------------------------------------------------------------------
  112.   # ● ME 的演奏
  113.   #     me : 演奏的 ME
  114.   #--------------------------------------------------------------------------
  115.   def me_play(me)
  116.     if me != nil and me.name != ""
  117.       Audio.me_play("Audio/ME/" + me.name, me.volume, me.pitch)
  118.     else
  119.       Audio.me_stop
  120.     end
  121.     Graphics.frame_reset
  122.   end
  123.   #--------------------------------------------------------------------------
  124.   # ● SE 的演奏
  125.   #     se : 演奏的 SE
  126.   #--------------------------------------------------------------------------
  127.   def se_play(se)
  128.     if se != nil and se.name != ""
  129.       Audio.se_play("Audio/SE/" + se.name, se.volume, se.pitch)
  130.     end
  131.   end
  132.   #--------------------------------------------------------------------------
  133.   # ● 停止 SE
  134.   #--------------------------------------------------------------------------
  135.   def se_stop
  136.     Audio.se_stop
  137.   end
  138.   #--------------------------------------------------------------------------
  139.   # ● 获取演奏中 BGM
  140.   #--------------------------------------------------------------------------
  141.   def playing_bgm
  142.     return @playing_bgm
  143.   end
  144.   #--------------------------------------------------------------------------
  145.   # ● 获取演奏中 BGS
  146.   #--------------------------------------------------------------------------
  147.   def playing_bgs
  148.     return @playing_bgs
  149.   end
  150.   #--------------------------------------------------------------------------
  151.   # ● 获取窗口外观的文件名
  152.   #--------------------------------------------------------------------------
  153.   def windowskin_name
  154.     if @windowskin_name == nil
  155.       return $data_system.windowskin_name
  156.     else
  157.       return @windowskin_name
  158.     end
  159.   end
  160.   #--------------------------------------------------------------------------
  161.   # ● 设置窗口外观的文件名
  162.   #     windowskin_name : 新的窗口外观文件名
  163.   #--------------------------------------------------------------------------
  164.   def windowskin_name=(windowskin_name)
  165.     @windowskin_name = windowskin_name
  166.   end
  167.   #--------------------------------------------------------------------------
  168.   # ● 获取战斗 BGM
  169.   #--------------------------------------------------------------------------
  170.   def battle_bgm
  171.     if @battle_bgm == nil
  172.       return $data_system.battle_bgm
  173.     else
  174.       return @battle_bgm
  175.     end
  176.   end
  177.   #--------------------------------------------------------------------------
  178.   # ● 设置战斗 BGM
  179.   #     battle_bgm : 新的战斗 BGM
  180.   #--------------------------------------------------------------------------
  181.   def battle_bgm=(battle_bgm)
  182.     @battle_bgm = battle_bgm
  183.   end
  184.   #--------------------------------------------------------------------------
  185.   # ● 获取战斗结束的 BGM
  186.   #--------------------------------------------------------------------------
  187.   def battle_end_me
  188.     if @battle_end_me == nil
  189.       return $data_system.battle_end_me
  190.     else
  191.       return @battle_end_me
  192.     end
  193.   end
  194.   #--------------------------------------------------------------------------
  195.   # ● 设置战斗结束的 BGM
  196.   #     battle_end_me : 新的战斗结束 BGM
  197.   #--------------------------------------------------------------------------
  198.   def battle_end_me=(battle_end_me)
  199.     @battle_end_me = battle_end_me
  200.   end
  201.   #--------------------------------------------------------------------------
  202.   # ● 刷新画面
  203.   #--------------------------------------------------------------------------
  204.   def update
  205.     # 计时器加 1
  206.     if @timer_working #and @timer = 0
  207.       @timer += 1
  208.   end
  209. end
  210. end


点评

下次发脚本的时候把改过的地方发上来就好,没有必要全都发上来。像这个你只需要发关于update的即可。  发表于 2014-9-10 17:13
谢谢  发表于 2014-8-31 11:14

评分

参与人数 1星屑 +200 收起 理由
RyanBern + 200 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

Lv4.逐梦者 (版主)

梦石
0
星屑
9532
在线时间
5073 小时
注册时间
2013-6-21
帖子
3580

开拓者贵宾剧作品鉴家

5
发表于 2014-8-30 13:42:54 | 只看该作者
在这里,如果默认打开一号开关,计时器做的是正计时操作,关闭1号开关是倒计时。如果要更改的话,改那个COUNTDOWN_DISABLED
  1. class Game_System
  2.   # 打开1号开关是正计时
  3.   COUNTDOWN_DISABLED = 1
  4.   #--------------------------------------------------------------------------
  5.   # ● 刷新画面
  6.   #--------------------------------------------------------------------------
  7.   def update
  8.     # 计时器减 1
  9.     if @timer_working
  10.       if !$game_switches[COUNTDOWN_DISABLED] && @timer > 0
  11.         @timer -= 1
  12.         return
  13.       end
  14.       if $game_switches[COUNTDOWN_DISABLED]
  15.         @timer += 1
  16.         return
  17.       end
  18.     end
  19.   end
  20. end
复制代码

点评

=_=呃……没考虑这个  发表于 2014-8-30 18:30
计时器有实时显示的啊,那个也用事件弄?  发表于 2014-8-30 18:16
=_=用变量记下时间,然后去减啊。  发表于 2014-8-30 18:14
M君快教我怎么用事件做~  发表于 2014-8-30 17:40
没有事件的吗=_=  发表于 2014-8-30 14:12
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-14 16:57

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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