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

Project1

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

[已经解决] 请问怎么在不用时关掉这个脚本……

[复制链接]

Lv2.观梦者

秀才

梦石
0
星屑
592
在线时间
156 小时
注册时间
2008-7-23
帖子
290

贵宾

跳转到指定楼层
1
发表于 2012-8-16 10:20:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这是一个显示虚拟游戏时间的脚本,怎么在不用时关掉它:
  1. class Scene_Map
  2. def main
  3.   @MSG_Movie_Window = Window_MSGMovie.new
  4.   @black = Sprite.new
  5.   @black.bitmap = Bitmap.new(640,480)
  6.   @black.bitmap.fill_rect(0,0,640,50,Color.new(25,25,25,255))
  7.   @black.bitmap.fill_rect(0,400,640,80,Color.new(25,25,25,255))
  8.   @black.opacity = 0
  9.   @black.z = 1
  10.   @spriteset = Spriteset_Map.new
  11.   @message_window = Window_Message.new
  12.   @time_date_window = Window_Time_Date.new
  13.    Graphics.transition
  14.    loop do
  15.      Graphics.update
  16.      Input.update
  17.      update
  18.      if $scene != self
  19.        break
  20.      end # end if $scene != self
  21.    end # end loop do
  22.    Graphics.freeze
  23.    @spriteset.dispose
  24.    @message_window.dispose
  25.    @time_date_window.dispose
  26.    if $scene.is_a?(Scene_Title)
  27.      Graphics.transition
  28.      Graphics.freeze
  29.    end # end if $scene.is_a?(Scene_Title)
  30. end # end def main
  31. end # end class Scene_Map
  32. class Window_Time_Date < Window_Base
  33. def initialize
  34. super(390, 0, 250, 55)
  35. self.contents = Bitmap.new(width - 33, height - 33)
  36. refresh
  37. end # end def initialize
  38. def refresh
  39.     self.contents.clear
  40.     self.contents.font.color = system_color
  41.     self.contents.font.size = 19
  42.   @total_sec = Graphics.frame_count
  43.    if @total_sec % 9 ==0
  44.      $game_variables[1] += 1
  45.    end # end if @total_sec % 40 ==0
  46.    
  47.    if $game_variables[1] >= 60 + 0
  48.      $game_variables[1] = 0
  49.      $game_variables[2] += 1
  50.    end # end if $game_variables[1] >= 60 + 0
  51.    
  52.    if $game_variables[2] >= 23 + 1
  53.      $game_variables[2] = 0
  54.      $game_variables[3] += 1
  55.    end # end if $game_variables[2] >= 23 + 1
  56.    
  57.    if $game_variables[3] >= 30 + 1
  58.      $game_variables[3] = 1
  59.      $game_variables[4] += 1
  60.    end # end if $game_variables[3] >= 30 + 1
  61.    
  62.    if $game_variables[4] >= 12 + 1
  63.      $game_variables[4] = 1
  64.      $game_variables[5] += 1
  65.    end # end if $game_variables[4] >= 12 + 1
  66.    
  67.    text_min = ["00", "01", "02", "03", "04", "05", "06","07","08","09","10","11",
  68.    "12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","27",
  69.    "28","29","30","31","32","33","34","35","36","37","38","39","40","41","42","43",
  70.    "44","45","46","47","48","49","50","51","52","53","54","55","56","57","58","59",
  71.    "60"][$game_variables[1]]
  72.    text_hour = ["00:", "01:", "02:", "03:", "04:", "05:", "06:",
  73.                 "07:", "08:", "09:", "10:", "11:", "12:","13:","14:","15:","16:",
  74.                 "17:","18:","19:","20:","21:","22:","23:","24:"][$game_variables[2]]
  75.    text_day = ["", "01日", "02日", "03日", "04日", "05日", "06日",
  76.                "07日", "08日", "09日", "10日", "11日", "12日",
  77.                "13日", "14日", "15日", "16日", "17日", "18日",
  78.                "19日", "20日", "21日", "22日", "23日", "24日",
  79.                "25日", "26日", "27日", "28日", "29日",
  80.                "30日"][$game_variables[3]]
  81.    text_month = ["", " 01月", " 02月", " 03月", " 04月", " 05月", " 06月",
  82.                   " 07月", " 08月", " 09月", " 10月", " 11月", " 12月"][$game_variables[4]]
  83.    text_year = ["1560年", "1561年", "1562年","1563年","1564年","1565年","1566年",
  84.    "1567年","1568年","1569年","1570年","1571年","1572年"][$game_variables[5]]
  85. self.contents.clear
  86. self.contents.draw_text(5, -5, 128, 32,text_year)
  87. self.contents.draw_text(60, -5, 128, 32, text_month)
  88. self.contents.draw_text(111, -5, 128, 32, text_day)
  89. self.contents.draw_text(155, -5, 128, 32, text_hour)
  90. self.contents.draw_text(184, -5, 128, 32, text_min)
  91.   def update
  92.     super
  93.       refresh
  94.   end
  95. end
  96. end
复制代码

Lv1.梦旅人

◇无限的妄想者◇

梦石
0
星屑
55
在线时间
1441 小时
注册时间
2012-7-14
帖子
2339
2
发表于 2012-8-16 11:39:12 | 只看该作者
本帖最后由 幻想中的鸡蛋 于 2012-8-16 13:22 编辑

在14行 loop do 里加上
  1. if $game_switches[20]
  2. @time_date_window.visible = false
  3. @time_date_window.active = false
  4. else
  5. @time_date_window.visible = true
  6. @time_date_window.active = true
  7. end
复制代码
然后事件中使开关20为ON试一下。

点评

有个问题能帮我修改下吗,在进入游戏后要过1秒才能关掉,这样效果没了……能不能进去开关一开立即关掉……  发表于 2012-8-16 15:33
谢谢了!  发表于 2012-8-16 15:29
不行啊,插进去没用的  发表于 2012-8-16 12:45

评分

参与人数 2星屑 +600 梦石 +2 收起 理由
hcm + 2 认可答案
z121310 + 600 认可答案

查看全部评分


————————————————————————————————————
新坑Dreamoon酝酿中,预计短篇⑨完工发布。
————————————————————————————————————
如何调戏橙光文字的 高级UI 系列教程:  鉴赏页制作篇背包系统制作篇
回复

使用道具 举报

Lv2.观梦者

秀才

梦石
0
星屑
592
在线时间
156 小时
注册时间
2008-7-23
帖子
290

贵宾

3
 楼主| 发表于 2012-8-16 12:22:35 | 只看该作者
本帖最后由 z121310 于 2012-8-16 12:45 编辑
幻想中的鸡蛋 发表于 2012-8-16 11:39
在def update里加上然后事件中使用脚本$Close_Date_Window=true试一下。


不好意思,完全没用……

点评

有用,谢谢。有个问题能帮我修改下吗,在进入游戏后要过1秒才能关掉,这样效果没了……能不能进去开关一开立即关掉……  发表于 2012-8-16 15:42
$game_switches[20]前面加上!,然后开关为ON打开……试一下  发表于 2012-8-16 15:38
抱歉之前犯了一个很2的错误,于是又编辑修改了一下  发表于 2012-8-16 13:22
回复

使用道具 举报

Lv2.观梦者

秀才

梦石
0
星屑
592
在线时间
156 小时
注册时间
2008-7-23
帖子
290

贵宾

4
 楼主| 发表于 2012-8-16 15:44:12 | 只看该作者
@幻想中的鸡蛋我的意思是说:在进入游戏后打开开关,但是有一小段时间,是时间框停在界面的(约1S),我想不用时立即关掉,没有时间。
回复

使用道具 举报

Lv1.梦旅人

◇无限的妄想者◇

梦石
0
星屑
55
在线时间
1441 小时
注册时间
2012-7-14
帖子
2339
5
发表于 2012-8-16 15:55:40 | 只看该作者
z121310 发表于 2012-8-16 15:44
@幻想中的鸡蛋我的意思是说:在进入游戏后打开开关,但是有一小段时间,是时间框停在界面的(约1S),我想 ...

你是想渐变效果还是什么意思?实际使用中等待一秒的话,前面加上等待20帧不就可以了?

点评

进入游戏界面,打开开关,确实会关掉,但是在关掉之前时间还是会显示一小段时间然后被关掉……我想进入游戏后,能加快关掉的速度……  发表于 2012-8-16 16:05

————————————————————————————————————
新坑Dreamoon酝酿中,预计短篇⑨完工发布。
————————————————————————————————————
如何调戏橙光文字的 高级UI 系列教程:  鉴赏页制作篇背包系统制作篇
回复

使用道具 举报

Lv1.梦旅人

◇无限的妄想者◇

梦石
0
星屑
55
在线时间
1441 小时
注册时间
2012-7-14
帖子
2339
6
发表于 2012-8-16 16:24:39 | 只看该作者
本帖最后由 幻想中的鸡蛋 于 2012-8-16 16:26 编辑

游戏开始不显示的方法:
  @time_date_window = Window_Time_Date.new一行下面加上
@time_date_window.visible = false
@time_date_window.active = false
然后
if $game_switches[20]一行改为if !$game_switches[20]
此时打开开关才是显示时间。

————————————————————————————————————
新坑Dreamoon酝酿中,预计短篇⑨完工发布。
————————————————————————————————————
如何调戏橙光文字的 高级UI 系列教程:  鉴赏页制作篇背包系统制作篇
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-27 09:36

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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