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

Project1

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

[已经解决] 如何设置一个饥饿参数?

[复制链接]

Lv2.观梦者

梦石
0
星屑
381
在线时间
238 小时
注册时间
2013-8-20
帖子
496
跳转到指定楼层
1
发表于 2013-11-1 12:43:12 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式

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

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

x
假如设置是这样?
初始饥饿值为100,游戏进行每30秒减少1
到0时就会弹出对话框,然后结束游戏
然而可以用特殊的物品增加饥饿度
并且能在状态栏查看饥饿值
请教怎么设置
不定期回来6R玩。
下方广告帖,欢迎点击

Lv1.梦旅人

超级囧神 无尽的灌水

梦石
0
星屑
144
在线时间
784 小时
注册时间
2010-6-27
帖子
2065
来自 6楼
发表于 2013-11-5 23:34:46 | 只看该作者
本帖最后由 a554187203 于 2013-11-5 23:49 编辑

楼主,已经完成,首先你需要两个变量,一个是游戏时间,一个是饥饿度
在公共事件中,设置为并行,开关随便设置
然后,变量操作游戏时间【变量】=游戏时间【在操作数里的其他里】
然后,条件分歧,游戏时间等于30时
饥饿度-1
Graphics.frame_count = 0 ——这句话,是让游戏时间清零的
由于存档里会显示游戏时间,而清零之后,存档那里就永远只有30一下
楼主在脚本页,全局搜索  def draw_playtime(x, y, width, align)
并将它变成
  1.    def draw_playtime(x, y, width, align)
  2. #~     hour = @total_sec / 60 / 60
  3. #~     min = @total_sec / 60 % 60
  4. #~     sec = @total_sec % 60
  5. #~     time_string = sprintf("%02d:%02d:%02d", hour, min, sec)
  6. #~     self.contents.font.color = normal_color
  7. #~     self.contents.draw_text(x, y, width, WLH, time_string, 2)
  8.    end
复制代码
这样,就可以把存档里的游戏时间的描绘给pai了!
然后,想要设置任何想要的饥饿度情况,再设立一个条件分歧就好

评分

参与人数 1星屑 +100 收起 理由
铃仙·优昙华院·因幡 + 100 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
381
在线时间
238 小时
注册时间
2013-8-20
帖子
496
17
 楼主| 发表于 2013-11-7 18:14:12 | 只看该作者
Password 发表于 2013-11-7 17:51
用这段脚本替换默认的 Window_Gold

这是效果图:

噢,多谢修改和提示
不定期回来6R玩。
下方广告帖,欢迎点击
回复 支持 反对

使用道具 举报

Lv1.梦旅人

超级囧神 无尽的灌水

梦石
0
星屑
144
在线时间
784 小时
注册时间
2010-6-27
帖子
2065
16
发表于 2013-11-7 18:13:22 | 只看该作者
铃仙·优昙华院·因幡 发表于 2013-11-7 18:10
30其实就是0.5秒. 不过也可以改大点.

怕执行次数过多可以附加一个开关控制.  ...

{:2_287:}我觉得如果加上一个开关,就过于复杂了
{:2_270:}不知楼主是否能够看懂

点评

这个就不再讨论范围之内了 = =.  发表于 2013-11-7 18:14
回复 支持 反对

使用道具 举报

Lv2.观梦者

狂気の月兔

梦石
0
星屑
276
在线时间
1245 小时
注册时间
2009-4-7
帖子
879

贵宾

15
发表于 2013-11-7 18:10:48 | 只看该作者
a554187203 发表于 2013-11-7 17:54
有过取余的想法,但是由于游戏过程
在游戏时间等于30的倍数的时候
会被执行几次哦

30其实就是0.5秒. 不过也可以改大点.

怕执行次数过多可以附加一个开关控制.
回复 支持 反对

使用道具 举报

Lv1.梦旅人

超级囧神 无尽的灌水

梦石
0
星屑
144
在线时间
784 小时
注册时间
2010-6-27
帖子
2065
14
发表于 2013-11-7 17:54:54 | 只看该作者
铃仙·优昙华院·因幡 发表于 2013-11-7 11:34
其实可以不用清零 frame_count.

只要  $game_variables[变量ID] = Graphics.frame_count % 30

{:2_287:}有过取余的想法,但是由于游戏过程
在游戏时间等于30的倍数的时候
会被执行几次哦
回复 支持 反对

使用道具 举报

Lv4.逐梦者

送快递的水表员

梦石
10
星屑
4852
在线时间
3303 小时
注册时间
2012-6-27
帖子
7160

开拓者贵宾

13
发表于 2013-11-7 17:51:48 | 只看该作者
  1. ==============================================================================
  2. # ■ Window_Gold
  3. #------------------------------------------------------------------------------
  4. #  显示金钱的窗口。
  5. #==============================================================================

  6. class Window_Gold < Window_Base
  7.   #--------------------------------------------------------------------------
  8.   # ● 初始化对像
  9.   #     x      : 窗口 X 座标
  10.   #     y      : 窗口 Y 座标
  11.   #--------------------------------------------------------------------------
  12.   def initialize(x, y)
  13.     super(x, y - 32, 160, WLH + 64)
  14.     refresh
  15.   end
  16.   #--------------------------------------------------------------------------
  17.   # ● 刷新
  18.   #--------------------------------------------------------------------------
  19.   def refresh
  20.     self.contents.clear
  21.     self.contents.draw_text(96, 32, 160, WLH, $game_variables[1])
  22.     #                                                         ↖变量ID,这里默认是1号变量,可自行修改,此行可删除。
  23.     self.contents.font.color = Color.new(255,56,16) # 改变“饥饿度:”的文字颜色,这里改为了橘红色,如不需要改颜色可删除此行,如改其他颜色请自行修改R、G、B值。
  24.     self.contents.draw_text(0, 32, 160, WLH, "饥饿度:") # 对于饥饿度的名称设定
  25.     draw_currency_value($game_party.gold, 4, 0, 120)
  26.   end
  27. end
复制代码
用这段脚本替换默认的 Window_Gold

这是效果图:


另外,这是顺带的范例:
Project1.rar (237.64 KB, 下载次数: 29)

评分

参与人数 1星屑 +100 收起 理由
铃仙·优昙华院·因幡 + 100 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

Lv2.观梦者

狂気の月兔

梦石
0
星屑
276
在线时间
1245 小时
注册时间
2009-4-7
帖子
879

贵宾

12
发表于 2013-11-7 11:34:04 | 只看该作者
a554187203 发表于 2013-11-5 23:34
楼主,已经完成,首先你需要两个变量,一个是游戏时间,一个是饥饿度
在公共事件中,设置为并行,开关随便 ...

其实可以不用清零 frame_count.

只要  $game_variables[变量ID] = Graphics.frame_count % 30

然后条件分歧 变量ID == 0 即可.

评分

参与人数 1星屑 +50 收起 理由
Password + 50 我很赞同

查看全部评分

回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
381
在线时间
238 小时
注册时间
2013-8-20
帖子
496
11
 楼主| 发表于 2013-11-7 08:24:18 | 只看该作者
Password 发表于 2013-11-6 19:21
状态栏显示变量应该不难做,说明一下想要显示在哪里吧,能给张大体的图吗? ...

显示在主菜单中的金钱窗口上
不定期回来6R玩。
下方广告帖,欢迎点击
回复 支持 反对

使用道具 举报

Lv4.逐梦者

送快递的水表员

梦石
10
星屑
4852
在线时间
3303 小时
注册时间
2012-6-27
帖子
7160

开拓者贵宾

10
发表于 2013-11-6 19:21:55 | 只看该作者
白魔导师宝儿 发表于 2013-11-6 18:30

我自己研究研究

状态栏显示变量应该不难做,说明一下想要显示在哪里吧,能给张大体的图吗?
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
381
在线时间
238 小时
注册时间
2013-8-20
帖子
496
9
 楼主| 发表于 2013-11-6 18:30:15 | 只看该作者
a554187203 发表于 2013-11-6 17:53
劝你还是设置一个物品用来显示,或者30秒减少一次生命值
状态栏显示变量,抱歉,无能 ...


我自己研究研究
不定期回来6R玩。
下方广告帖,欢迎点击
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-15 09:46

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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