gmod吧 关注:89,962贴子:1,901,632
  • 18回复贴,共1

[最最没用的acf教程]如何给acf的炮加上装填声

只看楼主收藏回复


还未完工的easy8镇楼
其实这个教程是给某块土豆搞得
所以发在贴吧就是为了蹭经验(bushi


IP属地:广东1楼2020-01-18 00:20回复
    首先 你需要新建一个e2
    然后瞎jb取个名字

    这里我们只需要两个输入量
    因为acf的火炮在打完炮弹需要装填时,输出的ready会为0,也就是说此时火炮并未准备好再次射击
    我们可以利用这个量来激活下面的timer语句,所以我们可以简单得把ready假设为R
    你需要一个实体来播放声音,那么需要输入一个实体,所以假设实体为E,完整的要写为E:entity
    表明E代表一个实体


    IP属地:广东2楼2020-01-18 00:27
    回复
      接下来我们需要interval语句....这个东西实际我讲不明白...但是就是每几毫秒一次,重新运行整个程序
      这里的单位为毫秒,数值在不要太小,数值太小运算次数太多会占用服务器资源,但也不要太大,太大就迟钝了
      在这里大概意思可能就是 每90毫秒重新运行一次程序

      接下来让我们写个简单的if语句
      changed()是用于检测一个值是否有变化的指令
      &在这里可能是 并且 的意思(我不大确定..)
      所以这里条件的意思是 如果R值发生变化且R值为0,执行语句

      下面我们要设置一个timer
      指令为timer()
      "A"相当于是timer的代号,后面的数值是timer的时间,单位为毫秒,过了这个时间相应的clk()指令会输出一个非0的数值
      1秒=1000毫秒,这里的timer时间为1秒


      IP属地:广东3楼2020-01-18 00:39
      回复
        next,上面的语句完成后,我们就可以设置装填声了
        再写一个if语句,条件中的clk("A")就相当于是当timer A被激活后到了时间
        简单说,就像你星期一时你床边的闹钟响了,把你吵死叫你去上班或上学

        在timer被激活后,下面就会执行语句
        E:soundplay的意思是让实体E播放这个声音
        括号内共2个数值和1个字符串,括号内第一个数值是这个声音的编号,你调多少都行,114514也行
        第二个数值是这个声音的播放时长,这个就要因地制宜了,这个受你播放声音原本时长的影响(如果你想让这东西正常播放的话)

        字符串就是声音的路径,这个窗口在sound browser里,编辑窗口的右上方,点开就有了..
        在这里你可以选择或寻找你要复制的声音路径

        把字符串复制到括号最后的地方,要加双引号
        那么这时候,你就需要动用你幼儿园老师教你瞎jb估数的技巧了,但是你也可以用手机的计时器粗略计算这个声音的大概时长,这就是你要设置的播放时长
        或者你可以直接跳出窗口去翻文件.....


        IP属地:广东4楼2020-01-18 00:56
        收起回复
          至此,你就基本完成了一个可以播放声音的e2

          E连接炮,R连接炮的ready


          HE ROUND READY,FIRE!!!


          IP属地:广东5楼2020-01-18 01:00
          回复
            但实际上,正常的声音流程应该是:
            火炮射击声——弹壳退出——装弹——装填手大喊大叫
            所以我们得再设置一个退弹壳的声音,那么就加多一个timer,装填声就往后稍稍
            如图

            如果装弹声太快了,实际的装填没跟上呢?
            那就加 大 力 度
            像这样,多种装弹声按顺序播放,播到这破玩意装填完为止


            IP属地:广东6楼2020-01-18 01:06
            回复
              那么你可能说了,timer这破东西要来干嘛?打完直接播放声音不好吗??
              其实你仔细观察一下,如果打完马上播音,炮声很有可能会盖过装填声,效果自然没那么好了
              算完结了吧


              IP属地:广东7楼2020-01-18 01:09
              回复
                熟悉的卡裆事件


                IP属地:广东8楼2020-01-18 01:11
                收起回复
                  非常耗


                  IP属地:福建来自Android客户端9楼2020-01-18 02:05
                  回复
                    ** 居然会写E2了


                    IP属地:山东10楼2020-01-18 09:59
                    收起回复
                      厉害学习了


                      IP属地:天津来自Android客户端11楼2020-01-18 12:12
                      回复
                        值得拥有的东西


                        IP属地:天津来自Android客户端12楼2020-01-18 12:12
                        回复
                          鉴于某块土豆的错误,在此说明一下
                          一个播音语句内不能塞进两个声音路径,否则无效,必须分开写


                          IP属地:广东13楼2020-01-19 00:17
                          回复
                            低技术力,我的装填是自适应的,换什么炮都准:(


                            IP属地:山西14楼2020-05-25 15:33
                            回复