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

Project1

 找回密码
 注册会员
搜索
12
返回列表 发新帖
楼主: woyodo
打印 上一主题 下一主题

[已经解决] 【脚本问题】请问如何在队伍全灭后弹出文本,而不是立.....

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
29 小时
注册时间
2010-7-22
帖子
56
11
 楼主| 发表于 2014-6-3 14:16:22 | 只看该作者
天地有正气 发表于 2014-6-2 19:29
对话框不一定美观,可以使用图片来做到(用对话框有些麻烦………………)。
@sprite (防止出错)
用:( ...

非常感谢!可以使用!
但是我想要实现图片出现之后按确认键才退出游戏,什么时候退出由玩家决定的效果。刚才做了初步尝试,仍不能等待按键输入,代码如下:
  1.   def judge
  2.     # 全灭判定是真、并且同伴人数为 0 的情况下
  3.     if $game_party.all_dead? or $game_party.actors.size == 0
  4.       # 允许失败的情况下
  5.       if $game_temp.battle_can_lose
  6.         [url=home.php?mod=space&uid=114926]@sprite[/url] = Sprite.new
  7. @sprite.opacity = 0
  8. @sprite.bitmap = RPG::Cache.windowskin("Battle.png")
  9. for i in 0.. 255/15
  10. @sprite.opacity += 15
  11. Graphics.update
  12. @sprite.bitmap.draw_text(100, 100, 500, 100, "YOU DIE!")

  13. end
  14. # 按下 C 键的情况下
  15.     if Input.trigger?(Input::C)
  16. for i in 0.. 255/15
  17. @sprite.opacity -= 15
  18. Graphics.update
  19. end
  20. @sprite.bitmap.dispose
  21. @sprite.dispose
  22. end
  23.         # 还原为战斗开始前的 BGM
  24.         $game_system.bgm_play($game_temp.map_bgm)
  25.         # 战斗结束
  26.         battle_end(2)
  27.         # 返回 true
  28.         return true
  29.       end
  30.       # 设置游戏结束标志
  31.       $game_temp.gameover = true
  32.       # 返回 true
  33.       return true
  34.     end
复制代码
主要问题在:
  1. # 按下 C 键的情况下
  2.     if Input.trigger?(Input::C)
  3. for i in 0.. 255/15
  4. @sprite.opacity -= 15
  5. Graphics.update
  6. end
  7. @sprite.bitmap.dispose
  8. @sprite.dispose
  9. end
复制代码
根本不等我输入按键就直接退出了,这是什么原因呢?

Michael Jackson
  KING OF POP
回复 支持 反对

使用道具 举报

Lv3.寻梦者

○赛

梦石
0
星屑
1249
在线时间
1276 小时
注册时间
2013-1-22
帖子
2246

贵宾

12
发表于 2014-6-4 09:58:55 | 只看该作者
woyodo 发表于 2014-6-3 14:16
非常感谢!可以使用!
但是我想要实现图片出现之后按确认键才退出游戏,什么时候退出由玩家决定的效果。 ...


建议您将这个脚本手动输一遍,我没有用脚本编辑器所以没有缩进.
问题出在您没有设置循环,可以这样.
  1. loop do
  2. Graphics.update # 刷新图像
  3. Input.update # 刷新输入信息
  4. if Input.trigger?(Input::C)
  5. break # 跳出循环
  6. end
  7. end
复制代码

评分

参与人数 1星屑 +100 梦石 +1 收起 理由
hys111111 + 100 + 1 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
29 小时
注册时间
2010-7-22
帖子
56
13
 楼主| 发表于 2014-6-4 14:43:40 | 只看该作者
天地有正气 发表于 2014-6-4 09:58
建议您将这个脚本手动输一遍,我没有用脚本编辑器所以没有缩进.
问题出在您没有设置循环,可以这样. ...

是不是想要设置Input的检测,必需要用Input.update刷新才可?
Input是不是内部定义的类,脚本里看不到?那么怎么查找Input的相关代码呢?

点评

非常感谢!已经解决!  发表于 2014-6-6 22:31
Input是一个模块。可按F1搜索Input  发表于 2014-6-4 17:48

Michael Jackson
  KING OF POP
回复 支持 反对

使用道具 举报

Lv2.观梦者

无节操

梦石
0
星屑
607
在线时间
795 小时
注册时间
2009-2-6
帖子
3939

开拓者贵宾

14
发表于 2014-6-4 14:59:37 | 只看该作者
woyodo 发表于 2014-6-4 14:43
是不是想要设置Input的检测,必需要用Input.update刷新才可?
Input是不是内部定义的类,脚本里看不到? ...

你没有循环的话,就不会等待。判断发现没输入就立刻跳过了。
Input可以在F1查看
不用刷新,不如说,一般都在刷新中调用Input进行输入按键判断。
没有相关环境(Scene之类自带刷新的)就只好用loop创造刷新条件了

点评

原来如此!非常感谢!  发表于 2014-6-6 22:33

评分

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

查看全部评分

Brandnew day, Brandnew Life
                              实在  中
暂为素材区版主,版其  琢磨
应援一下~
RPG制作大师授权素材推广计划
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-25 03:47

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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