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

Project1

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

[已经解决] 如何让它按三次键才执行(题目还真的不好想,请见谅)

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
10 小时
注册时间
2015-1-18
帖子
18
跳转到指定楼层
1
发表于 2015-2-24 19:33:13 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
如下:
if Input.trigger?(:C)
  a = true
end
if a == true
  if Input.trigger?(:C)
     b = true
  end
end
if b == true
  if Input.trigger?(:C)
     msgbox “哎”
  end
end
在这里,按一下C就直接显示“哎”了,能否按三次C在显示“哎”?(原脚本更复杂,这里简化成这个方便理解)

点评

啥叫“在显示”?俺听不懂。求翻译。  发表于 2015-2-27 18:58

Lv3.寻梦者 (版主)

…あたしは天使なんかじゃないわ

梦石
0
星屑
2208
在线时间
4033 小时
注册时间
2010-10-4
帖子
10779

开拓者贵宾

2
发表于 2015-2-24 19:45:24 | 只看该作者
本帖最后由 taroxd 于 2015-2-24 19:53 编辑

用游戏变量就好了

分支:按下按键(就用 trigger?)
  变量 1 += 1
分支结束

分支:如果变量 1 >= 3
...
分支结束

当然这段东西是要每帧执行
这里用事件的形式写出。用脚本也是一样的简单。

点评

是每帧执行的吗?你每帧都输出一下变量的值,看看是不是所期望的。理想情况:每按下一次按键+1  发表于 2015-2-24 20:05
呃,不行啊  发表于 2015-2-24 20:02
回复 支持 反对

使用道具 举报

Lv2.观梦者

bluer
公主殿下

梦石
0
星屑
283
在线时间
533 小时
注册时间
2013-10-19
帖子
2067
3
发表于 2015-2-24 21:09:32 | 只看该作者
连续按三下还是没有时间限制的三下
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
61
在线时间
696 小时
注册时间
2011-1-4
帖子
208
4
发表于 2015-2-24 21:49:43 | 只看该作者
会不会是顺序问题。按你这个顺序就是
  a = true
  b = true
  msgbox "哎"
了啊。

应该是这样子吧
  1. z = 0
  2. if Input.trigger?(:C) && z == 0
  3.   z = 1
  4.   a = true
  5. end
  6. if a == true
  7.   if Input.trigger?(:C) && z == 0
  8.   z = 1
  9.   b = true
  10.   end
  11. end
  12. if b == true
  13.   if Input.trigger?(:C) && z == 0
  14.   z = 1
  15.   msgbox “哎”
  16.   end
  17. end
复制代码
回复 支持 反对

使用道具 举报

Lv3.寻梦者 (版主)

梦石
0
星屑
2315
在线时间
5539 小时
注册时间
2011-1-10
帖子
6619

青铜编剧史诗剧作家剧作品鉴家

5
发表于 2015-2-24 23:08:21 | 只看该作者
本帖最后由 H·H·Y 于 2015-2-24 23:29 编辑

LZ是在按下C的瞬间,三个if同时成立,所以会给人只要按了一下就显示“唉”的感觉。

更正的大体思路是这样的:

a = 0
loop do
    if Input.trigger?(:C)
        if a == 3
            msgbox "唉"
            break
        else
            if b != true
                a += 1
                b = true
            end
        end
    else
        b = false
    end
end


因为我脚本不熟练,不知道有没有错误呢,反正我的思路是这样吧……

点评

(~ ̄△ ̄)~换成脚本我不知道怎么写2333  发表于 2015-2-25 17:47
对,这个很关键。这段东西是每帧执行一次,而不是循环执行;我在沙发也强调了  发表于 2015-2-25 17:06
用事件我会加上“等待1帧”。  发表于 2015-2-25 17:03
你这个用事件也是死机啊……  发表于 2015-2-25 17:01
/ \我不知道怎么用脚本表达那个意思……  发表于 2015-2-25 16:54
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (暗夜天使)

只有笨蛋才会看到

梦石
1
星屑
22069
在线时间
9455 小时
注册时间
2012-6-19
帖子
7123

开拓者短篇九导演组冠军

6
发表于 2015-2-24 23:33:37 | 只看该作者
本帖最后由 喵呜喵5 于 2015-2-24 23:45 编辑
  1. class CleanRoom
  2.   
  3.   def self.input_test

  4.     return unless Input.trigger?(:C)
  5.     # 如果没有按键则跳出
  6.   
  7.     @a ||= 0
  8.     # 生成记录按键次数的惰性实例变量
  9.   
  10.     @a += 1
  11.     # 若按键成功按下,则变量加1
  12.   
  13.     return unless @a % 3 == 0
  14.     # 没有按下三次的情况下,结束此次判断
  15.   
  16.     msgbox "a"
  17.     # 按下三次时,弹窗
  18.   
  19.   end

  20. end


  21. # 用于测试的代码,模拟了一个不停更新玩家输入的界面

  22. loop do
  23.   
  24.   Input.update
  25.   # 按键的更新,在Scene父类的update方法中也会调用
  26.   
  27.   CleanRoom.input_test
  28.   # 检查玩家按键是否满三次的方法,注意修改命名

  29. end
复制代码

点评

本来就不是直接用的代码……  发表于 2015-2-25 17:56
加个 Graphics.update 吧……  发表于 2015-2-25 16:38

评分

参与人数 1梦石 +1 收起 理由
taroxd + 1 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
196 小时
注册时间
2013-5-10
帖子
410
7
发表于 2015-2-25 14:58:41 | 只看该作者
本帖最后由 taroxd 于 2015-2-25 16:40 编辑
看在你一句都没有说对的份上帮你隐藏起来吧 By taroxd

评分

参与人数 1星屑 0 收起 理由
taroxd 0 原理分析错误,实现方法也不对.

查看全部评分

大前年的作品《猪刀历险记》
前年的作品《深蓝之心》
上面都是黑历史!
开学了我终于要长久潜水了!
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
155
在线时间
129 小时
注册时间
2014-2-22
帖子
233
8
发表于 2015-2-28 10:46:48 | 只看该作者
事件的事件页也许可以,刚好四个事件页是吧……………………(这方法还真恶心…………)
很多年了呢,坑还是没填完…………(草
回复 支持 反对

使用道具 举报

Lv3.寻梦者

闇吼者の災悪眷族
不気味存在締造者

梦石
0
星屑
1366
在线时间
2881 小时
注册时间
2014-7-29
帖子
6491
9
发表于 2015-2-28 10:51:33 | 只看该作者
其实我觉得就楼主你自己的意思来说……

把b==true的判断写成if放在最上面
然后用 elsif a == true
再else a = true
不就好了吗……

另外代码的解读顺序不是从上往下么,为什么不利用利用呢,233

点评

只要不是每帧执行,并且有一个能跨越多次调用的变量,这个方案肯定要失败  发表于 2015-2-28 16:15
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
196 小时
注册时间
2013-5-10
帖子
410
10
发表于 2015-3-8 10:07:53 | 只看该作者
双黄连2_副本2 发表于 2015-2-25 14:58
[fold=看在你一句都没有说对的份上帮你隐藏起来吧 By taroxd]
楼主要判断按键有没有抬起来...
按 ...

我语文不好,发图算了。{:2_254:}

点评

显然楼主的不是事件……  发表于 2015-3-15 20:29
大前年的作品《猪刀历险记》
前年的作品《深蓝之心》
上面都是黑历史!
开学了我终于要长久潜水了!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-7-22 07:08

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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