Project1

标题: RM电子时钟- -貌似没有什么用啊- - [打印本页]

作者: 七夕小雨    时间: 2007-5-9 08:03
标题: RM电子时钟- -貌似没有什么用啊- -
恩……其实就是一个电子表~~有兴趣的朋友可以试一下- -b,不过到现在我也没有想出这个东西到底有什么用~~{/gg}

觉得有意思的朋友就拿去用好了~{/hx}

脚本内容:

  1. #==============================================================================
  2. #RM电子表= =||ORZ的东西
  3. #脚本作者:七夕小雨
  4. #本脚本来源于66RPG转贴请保留该信息
  5. #==============================================================================
  6. $SHOW = 1 #显示/隐藏
  7. #----------------------七夕小雨华丽的分割线----------------------------------
  8. class Window_Time < Window_Base
  9.   #--------------------------------------------------------------------------
  10.   # ● 初始化窗口
  11.   #--------------------------------------------------------------------------
  12.   def initialize
  13.     super(0, 384, 280, 96)
  14.     self.contents = Bitmap.new(width - 32, height - 32)
  15.     self.opacity = 120
  16.     refresh
  17.   end
  18.   #--------------------------------------------------------------------------
  19.   # ● 刷新
  20.   #--------------------------------------------------------------------------
  21.   def refresh
  22.     if $game_switches[$SHOW]
  23.      self.visible=true
  24.     else
  25.      self.visible=false
  26.     end
  27.     self.contents.clear
  28.     t = Time.now #获取当前时间
  29.     $Year = t.year
  30.     $Month = t.month
  31.     $Day = t.day
  32.     $Wday = t.wday
  33.     $Hour = t.hour
  34.     $Min = t.min
  35.     $Sec = t.sec   
  36.     self.contents.font.color = normal_color
  37.     case $Wday
  38.     when 1
  39.       self.contents.draw_text(160, 20, 96, 32, "星期一", 1)
  40.     when 2
  41.       self.contents.draw_text(160, 20, 96, 32, "星期二", 1)
  42.     when 3
  43.       self.contents.draw_text(160, 20, 96, 32, "星期三", 1)
  44.     when 4
  45.       self.contents.draw_text(160, 20, 96, 32, "星期四", 1)
  46.     when 5
  47.       self.contents.draw_text(160, 20, 96, 32, "星期五", 1)
  48.     when 6
  49.       self.contents.draw_text(160, 20, 96, 32, "星期六", 1)
  50.     when 7
  51.       self.contents.draw_text(160, 20, 96, 32, "星期日", 1)
  52.     end
  53.     self.contents.draw_text(-4, 0, 64, 32, $Year.to_s, 1)
  54.     self.contents.draw_text(32, 0, 64, 32, "年", 1)
  55.     self.contents.draw_text(72, 0, 32, 32, $Month.to_s, 1)
  56.     self.contents.draw_text(76, 0, 64, 32, "月", 1)
  57.     self.contents.draw_text(108, 0, 32, 32, $Day.to_s, 1)
  58.     self.contents.draw_text(110, 0, 64, 32, "日", 1)
  59.     self.contents.draw_text(0, 32, 32, 32, $Hour.to_s, 1)
  60.     self.contents.draw_text(12, 32, 64, 32, "时", 1)
  61.     self.contents.draw_text(54, 32, 32, 32, $Min.to_s, 1)
  62.     self.contents.draw_text(64, 32, 64, 32, "分", 1)
  63.     self.contents.draw_text(102, 32, 32, 32, $Sec.to_s, 1)
  64.     self.contents.draw_text(110, 32, 64, 32, "秒", 1)
  65.   end
  66. end
  67. #----------------------七夕小雨华丽的分割线----------------------------------
  68. class Scene_Map
  69. # 声明别名,以免冲突,主要用于功能追加
  70. alias mohock_main main
  71. def main
  72.   # 生成窗口
  73.   @time_bar=Window_Time.new
  74.   # 调用别名
  75.   mohock_main
  76.   # 释放倒计时窗口
  77.   @time_bar.dispose
  78. end

  79. # 声明别名,以免冲突,主要用于功能追加
  80. alias mohock_update update
  81. def update
  82.    @time_bar.refresh
  83.    # 调用别名
  84.    mohock_update
  85. end
  86. end
  87. #==============================================================================
  88. #RM电子表= =||ORZ的东西
  89. #脚本作者:七夕小雨
  90. #本脚本来源于66RPG转贴请保留该信息
  91. #==============================================================================
复制代码

恩……这是范例工程:
http://rpg.blue/upload_program/files/rm时钟.rar
作者: 七夕小雨    时间: 2007-5-9 08:03
标题: RM电子时钟- -貌似没有什么用啊- -
恩……其实就是一个电子表~~有兴趣的朋友可以试一下- -b,不过到现在我也没有想出这个东西到底有什么用~~{/gg}

觉得有意思的朋友就拿去用好了~{/hx}

脚本内容:

  1. #==============================================================================
  2. #RM电子表= =||ORZ的东西
  3. #脚本作者:七夕小雨
  4. #本脚本来源于66RPG转贴请保留该信息
  5. #==============================================================================
  6. $SHOW = 1 #显示/隐藏
  7. #----------------------七夕小雨华丽的分割线----------------------------------
  8. class Window_Time < Window_Base
  9.   #--------------------------------------------------------------------------
  10.   # ● 初始化窗口
  11.   #--------------------------------------------------------------------------
  12.   def initialize
  13.     super(0, 384, 280, 96)
  14.     self.contents = Bitmap.new(width - 32, height - 32)
  15.     self.opacity = 120
  16.     refresh
  17.   end
  18.   #--------------------------------------------------------------------------
  19.   # ● 刷新
  20.   #--------------------------------------------------------------------------
  21.   def refresh
  22.     if $game_switches[$SHOW]
  23.      self.visible=true
  24.     else
  25.      self.visible=false
  26.     end
  27.     self.contents.clear
  28.     t = Time.now #获取当前时间
  29.     $Year = t.year
  30.     $Month = t.month
  31.     $Day = t.day
  32.     $Wday = t.wday
  33.     $Hour = t.hour
  34.     $Min = t.min
  35.     $Sec = t.sec   
  36.     self.contents.font.color = normal_color
  37.     case $Wday
  38.     when 1
  39.       self.contents.draw_text(160, 20, 96, 32, "星期一", 1)
  40.     when 2
  41.       self.contents.draw_text(160, 20, 96, 32, "星期二", 1)
  42.     when 3
  43.       self.contents.draw_text(160, 20, 96, 32, "星期三", 1)
  44.     when 4
  45.       self.contents.draw_text(160, 20, 96, 32, "星期四", 1)
  46.     when 5
  47.       self.contents.draw_text(160, 20, 96, 32, "星期五", 1)
  48.     when 6
  49.       self.contents.draw_text(160, 20, 96, 32, "星期六", 1)
  50.     when 7
  51.       self.contents.draw_text(160, 20, 96, 32, "星期日", 1)
  52.     end
  53.     self.contents.draw_text(-4, 0, 64, 32, $Year.to_s, 1)
  54.     self.contents.draw_text(32, 0, 64, 32, "年", 1)
  55.     self.contents.draw_text(72, 0, 32, 32, $Month.to_s, 1)
  56.     self.contents.draw_text(76, 0, 64, 32, "月", 1)
  57.     self.contents.draw_text(108, 0, 32, 32, $Day.to_s, 1)
  58.     self.contents.draw_text(110, 0, 64, 32, "日", 1)
  59.     self.contents.draw_text(0, 32, 32, 32, $Hour.to_s, 1)
  60.     self.contents.draw_text(12, 32, 64, 32, "时", 1)
  61.     self.contents.draw_text(54, 32, 32, 32, $Min.to_s, 1)
  62.     self.contents.draw_text(64, 32, 64, 32, "分", 1)
  63.     self.contents.draw_text(102, 32, 32, 32, $Sec.to_s, 1)
  64.     self.contents.draw_text(110, 32, 64, 32, "秒", 1)
  65.   end
  66. end
  67. #----------------------七夕小雨华丽的分割线----------------------------------
  68. class Scene_Map
  69. # 声明别名,以免冲突,主要用于功能追加
  70. alias mohock_main main
  71. def main
  72.   # 生成窗口
  73.   @time_bar=Window_Time.new
  74.   # 调用别名
  75.   mohock_main
  76.   # 释放倒计时窗口
  77.   @time_bar.dispose
  78. end

  79. # 声明别名,以免冲突,主要用于功能追加
  80. alias mohock_update update
  81. def update
  82.    @time_bar.refresh
  83.    # 调用别名
  84.    mohock_update
  85. end
  86. end
  87. #==============================================================================
  88. #RM电子表= =||ORZ的东西
  89. #脚本作者:七夕小雨
  90. #本脚本来源于66RPG转贴请保留该信息
  91. #==============================================================================
复制代码

恩……这是范例工程:
http://rpg.blue/upload_program/files/rm时钟.rar
作者: 暴风の龙    时间: 2007-5-9 08:27
其实都不错……先收下了。
不过我还是比较喜欢用事件做
作者: 七夕小雨    时间: 2007-5-10 02:52
事件…………{/fd}

那条件分歧岂不会很多么?

而且用事件怎么判定当前的系统时间呢?{/fd}
作者: 西门吹雪    时间: 2007-5-10 03:18
{/fd}打不开工程~~(我的原因)不过看脚本还是很不错的!~
作者: 七夕小雨    时间: 2007-5-10 03:26
{/fd}{/fd}RP?

不过还是谢谢西门对我的支持啊~{/hx}
作者: 精灵使者    时间: 2007-5-10 04:45
不错……最好在里面把这些东西赋予个变量,好让我们……
反沉迷系统……
现实中的白天黑夜……
这些东西都可以实现!
作者: 七夕小雨    时间: 2007-5-10 05:27
{/se}{/se}
恩~~~真的是不错的主意呢{/se}{/se}
作者: hrwcaine    时间: 2007-5-10 05:54
关注Ing:能实现类似AVG里的时间段系统嘛……?
比如:上午——正午——下午——傍晚——深夜
这样的。自动时间流逝。
作者: 七夕小雨    时间: 2007-5-10 06:52
其实时间控制也很容易的~~


只要将游戏中消失的那个变量〉游戏的变量就OK了~~

其实只要公共事件中
$game_variables[X] = $Hour就可以了~~

这么说来这个脚本还是有一定价值的了~{/hx}
作者: 精灵使者    时间: 2007-5-10 16:20
这个可以改成完美日夜系统的核心部分……这样也就到设定时间打开开关
可以设成例如只有晚上玩才有的npc(或者只有星期四才开放的商店等……)
邪恶啊邪恶……{/cy}
作者: 精灵使者    时间: 2007-5-10 16:30
以下引用七夕小雨于2007-5-9 22:52:50的发言:

其实时间控制也很容易的~~


只要将游戏中消失的那个变量〉游戏的变量就OK了~~

其实只要公共事件中
$game_variables[X] = $Hour就可以了~~

这么说来这个脚本还是有一定价值的了~

这个东西我建议你写到脚本里面去,包括日期,星期。你可以默认1-6,在说明里面让玩家自己定义。
作者: 西刚    时间: 2007-5-10 16:32
提示: 作者被禁止或删除 内容自动屏蔽
作者: hrwcaine    时间: 2007-5-11 06:35
望楼上的。不,这样的话,做游戏就算在考虑AVG类型了……
作者: hrwcaine    时间: 2007-5-11 07:05
以下引用精灵使者于2007-5-10 8:20:09的发言:

这个可以改成完美日夜系统的核心部分……这样也就到设定时间打开开关
可以设成例如只有晚上玩才有的npc(或者只有星期四才开放的商店等……)
邪恶啊邪恶……


没错。就是这种打算。
我目前想达到的AVG系统的效果就是如此。
某时间段内,建筑开放;某时间段内,建筑关闭。如此,等等。


作者: Benavii    时间: 2007-5-11 07:43
以下引用hrwcaine于2007-5-10 23:05:55的发言:


以下引用精灵使者于2007-5-10 8:20:09的发言:

这个可以改成完美日夜系统的核心部分……这样也就到设定时间打开开关
可以设成例如只有晚上玩才有的npc(或者只有星期四才开放的商店等……)
邪恶啊邪恶……



没错。就是这种打算。
我目前想达到的AVG系统的效果就是如此。
某时间段内,建筑开放;某时间段内,建筑关闭。如此,等等。

其实有一点要注意,AVG内的时间流逝并不是跟现实时间挂钩的,而是跟剧情中时间挂钩的。
所以完全可以用一个变量,当完成了某某事之后天该黑了,于是变量>某值,天黑……
作者: hrwcaine    时间: 2007-5-11 08:18
嗯。6R上有个完美日夜系统其实我准备膜拜一下……
我需要五个『泾渭分明』的时间段。
莫不是要做成:去了某某地点之后上午没了,于是变量>某值,正午……??

叹一下。AVG也许还是该用NS……
可是(抓)NS我就更没思路了……翻白眼Ing……

最后抓住楼上的。其实还想剧本完善后发短信骚扰你咧!!
详情请看 http://rpg.blue/viewthread.php?tid=52954


作者: 精灵使者    时间: 2007-5-11 15:15
以下引用Benavii于2007-5-10 23:43:57的发言:

其实有一点要注意,AVG内的时间流逝并不是跟现实时间挂钩的,而是跟剧情中时间挂钩的。
所以完全可以用一个变量,当完成了某某事之后天该黑了,于是变量>某值,天黑……

其实这种事情的计时核心完全可以搞一个楼主的计时器的核心(也就是,以现实来计时!配合变量和游戏时间来设定剧情!这样的话,可以直接调用现实时间的值参与剧情,别人肯定会……抓狂的{/cy}

作者: Benavii    时间: 2007-5-11 23:28
以下引用hrwcaine于2007-5-11 0:18:14的发言:

嗯。6R上有个完美日夜系统其实我准备膜拜一下……
我需要五个『泾渭分明』的时间段。
莫不是要做成:去了某某地点之后上午没了,于是变量>某值,正午……??

叹一下。AVG也许还是该用NS……
可是(抓)NS我就更没思路了……翻白眼Ing……

最后抓住楼上的。其实还想剧本完善后发短信骚扰你咧!!
详情请看 http://rpg.blue/viewthread.php?tid=52954

看了一下那个岛那个……感觉就是养成游戏的计时系统啊{/fd}(众:我们说的是什么!- -+)
如果用RMXP来的话……比方说规则是,一天有五个时间段,每个时间段可以行动三次。
RMXP的剧情都是通过事件来体现的,所以在每个事件完成后,给“该时间段行动次数变量”(怎么就这么绕口囧)减去1
当“该时间段行动次数变量”为0时,该变量回复到3,“时间段变量”增加1(进入下个时间段)
当“时间段变量”大于5时,“时间段变量”回归1,“日期变量”前进1(增加一天)

至于天色变换(其实就是改画面色调)人物报时(比如“哇靠!都已经中午了啊!”,其实就是显示文字)等标志时间变换的效果,附加在变量切换的前后就是了。

罗罗嗦嗦说了挺多,不过写成一个公共事件并命名曰“计时系统”应该不会很长,每个事件后面插一次这个公共事件,应该就可以达到基本的计时效果了。
作者: 精灵使者    时间: 2007-5-11 23:39
其实,你刚才说的就是任务链(也就是任务变量)的系统。有时候真的需要这种计时器的说……感觉楼主采用的是现实生活的定时器……另外说一下,你说的那些任务做完马上就可以到下个场景了,但是如果采用了楼主的定义的话,他定第二天说不定真的得等到明天耶(除非你改掉系统时间的话)
作者: Benavii    时间: 2007-5-12 00:11
以下引用精灵使者于2007-5-11 15:39:46的发言:

其实,你刚才说的就是任务链(也就是任务变量)的系统。有时候真的需要这种计时器的说……感觉楼主采用的是现实生活的定时器……另外说一下,你说的那些任务做完马上就可以到下个场景了,但是如果采用了楼主的定义的话,他定第二天说不定真的得等到明天耶(除非你改掉系统时间的话)

就是说这个跟现实中时间挂钩还是跟剧情中时间挂钩的问题啊,需要哪种用哪种呗。
站上的昼夜系统似乎也是根据现实时间来的,比如外面天黑了,游戏里天也会黑下来~

早些时候有个游戏叫做《白与黑》,有个挺有意思的系统(可惜在中国地区好像不起作用)就是如果开启了某一特效并且连上网络时,游戏会自动把游戏中天气和玩家所处地区天气同步,如果玩的时候外面在下雨,游戏里也会跟着下雨{/cy}
作者: superyang8    时间: 2007-5-12 00:14
可不可以用来搞个电子宠物呢{/tp}
作者: 精灵使者    时间: 2007-5-12 00:48
以下引用Benavii于2007-5-11 16:11:00的发言:


以下引用精灵使者于2007-5-11 15:39:46的发言:

其实,你刚才说的就是任务链(也就是任务变量)的系统。有时候真的需要这种计时器的说……感觉楼主采用的是现实生活的定时器……另外说一下,你说的那些任务做完马上就可以到下个场景了,但是如果采用了楼主的定义的话,他定第二天说不定真的得等到明天耶(除非你改掉系统时间的话)


就是说这个跟现实中时间挂钩还是跟剧情中时间挂钩的问题啊,需要哪种用哪种呗。
站上的昼夜系统似乎也是根据现实时间来的,比如外面天黑了,游戏里天也会黑下来~

早些时候有个游戏叫做《白与黑》,有个挺有意思的系统(可惜在中国地区好像不起作用)就是如果开启了某一特效并且连上网络时,游戏会自动把游戏中天气和玩家所处地区天气同步,如果玩的时候外面在下雨,游戏里也会跟着下雨

那个昼夜系统使用的是变量和等待帧。储存进度以后,再读取的时候时间是不变的。这个时间不然,如果今天存了档明天读的话,时间就改变了。
作者: 七夕小雨    时间: 2007-5-12 02:50
- -||||

对于AVG来说~用这样的系统方式其实会让玩家抓狂的- -
但是该系统配合一定算法,我想可以做出虚拟村庄那样的东西出来{/gg}

就小贝的话来说~~时间与真实世界的时间无关~我也一样赞成~写好之后我其实有了封杀的闪念{/gg}但还是把这个尴尬而且没有用的脚本留了下来- -|||

感谢大家对我建议和意见~~我想~我还是可以再完善一下这个东西的~{/hx}
作者: 精灵使者    时间: 2007-5-12 03:16
以下引用七夕小雨于2007-5-11 18:50:48的发言:

- -||||

对于AVG来说~用这样的系统方式其实会让玩家抓狂的- -
但是该系统配合一定算法,我想可以做出虚拟村庄那样的东西出来

就小贝的话来说~~时间与真实世界的时间无关~我也一样赞成~写好之后我其实有了封杀的闪念但还是把这个尴尬而且没有用的脚本留了下来- -|||

感谢大家对我建议和意见~~我想~我还是可以再完善一下这个东西的~

这个方法还能够记录你的游戏总时间以后做个反沉迷系统……当你玩3个小时以后拒绝再让你游戏的说……到第二天才会重新计时
作者: 七夕小雨    时间: 2007-5-12 03:31
以下引用精灵使者于2007-5-11 19:16:12的发言:

这个方法还能够记录你的游戏总时间以后做个反沉迷系统……当你玩3个小时以后拒绝再让你游戏的说……到第二天才会重新计时


的确可以做到…………但是我觉得完全没有使用这个尴尬的东西作的必要…………美兽大人的那个思路是最好的- -|||

恩…………其实做一个装饰还不错{/gg}


作者: 精灵使者    时间: 2007-5-12 04:13
美兽大人的那个是等待帧算法……还不是你这个计时器算法的内核。建议使用你这个计时器的同时调用美兽的api……
你这个计时器还有个优点。等待帧算法受机器影响太大,机器好的时间短,坏的时间长。如果用这个定时时钟的话,就可以避免机器好坏的影响。
作者: 七夕小雨    时间: 2007-5-12 06:06
{/hx}{/hx}

原来这样啊~~~

其实一个简单的算法就可以做出来的~~回去试试~~谢谢精灵使者
{/hx}{/hx}




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1