Project1

标题: 【纯事件】火铳子弹射击系统V2(支持多人) [打印本页]

作者: 越前リョーマ    时间: 2012-1-1 13:39
标题: 【纯事件】火铳子弹射击系统V2(支持多人)
本帖最后由 越前リョーマ 于 2012-1-27 00:08 编辑

【V2版更新内容】
支持队伍里有多个火枪手。
如果只剩一颗子弹,而两个火枪手都选择射击,那么后发的人当前回合不做任何行动。




忧雪说她最想写的是子弹系统……于是我先做了一个事件版的,应该会有很大区别。

这个事件版的,其实还是有点小问题的。就不改脚本来说,虽然VA提供给角色一个【攻击】技能,但是我们却不能让不同的角色有不同的【攻击】,所以我只能把【攻击】设置为威力小的近身,然后用技能额外做了火铳的攻击和一个技能,都是需要装备抢以及消耗子弹的。
若是前面的版本的RM来做,也许会比这个更麻烦以及效果不好(只能删除技能却不能封印,还要一堆判断……),另外也不确定到底能不能做了。

这个范例也可以拿来当做熟悉VA于之前不同的一些地方吧。




http://115.com/file/be32z03p

顺便吐槽,VA自带3M的DLL导致范例文件剧增,上传不了附件,只能115出手了。
作者: 忧雪の伤    时间: 2012-1-1 13:44
本帖最后由 忧雪の伤 于 2012-1-1 13:55 编辑

好吧,我会写出脚本版的……(挤出来的话。
作者: 光的圆周率    时间: 2012-1-2 16:23
本帖最后由 光的圆周率 于 2012-1-2 16:27 编辑
  1. #===============================================================================
  2. #
  3. #  简版子弹射击系统 For RMVA
  4. #   
  5. #   版本:0.1
  6. #   说明:直接在你的射击系统的备注中加入:Spec:Shoot|Numb:AA|Binx:BB
  7. #         其中:AA为要消耗子弹的数量;BB为子弹的物品编号,
  8. #         Shoot、Numb和Binx为标志,如果出现冲突可以在下面修改标志符号(很难用到)
  9. #         没有子弹的提示语也可以在下面修改 喵~
  10. #===============================================================================
  11. class Scene_Battle < Scene_Base
  12.   def on_skill_ok
  13.     #===========================================================================
  14.     # 设置技能备注中的标志以及提示语
  15.     shoot_s  = "Shoot"                       # 设置作为射击技能的标志
  16.     @numb_s  = "Numb"                        # 设置需要子弹数量的标志
  17.     @binx_s  = "Binx"                        # 设置作为子弹的物品编号
  18.     @nohb_s  = "子弹数量已不足,无法射击!"    # 设置子弹不足时的提示语
  19.     #===========================================================================
  20.     @skill = @skill_window.item
  21.     if !$data_skills[@skill.id].note.empty?
  22.       if $data_skills[@skill.id].note.downcase.include?shoot_s.downcase
  23.         notes = $data_skills[@skill.id].note
  24.        if !shoot_skill(notes)
  25.          @skill = nil
  26.          @skill_window.activate
  27.          return 0
  28.        end
  29.       BattleManager.actor.input.set_skill(@skill.id)
  30.       BattleManager.actor.last_skill.object = @skill
  31.      end
  32.    end
  33.     BattleManager.actor.input.set_skill(@skill.id)
  34.     BattleManager.actor.last_skill.object = @skill
  35.     if [email protected]_selection?
  36.        @skill_window.hide
  37.        next_command
  38.     elsif @skill.for_opponent?
  39.        select_enemy_selection
  40.     else
  41.        select_actor_selection
  42.     end
  43.   end
  44.   
  45.   def shoot_skill(note)
  46.     note_s  = $data_skills[@skill.id].note.to_s
  47.     note_s  = note_s[0,note_s.length].to_s
  48.     note_s1 = note_s
  49.     nindex = note_s.downcase.index(@numb_s.downcase)
  50.     note_s[0,nindex] = ""
  51.     note_s = (note_s.split("|"))[0] if note_s.include?"|"
  52.     num = note_s.split(":")[1]
  53.     nindex = note_s1.downcase.index(@binx_s.downcase)
  54.     note_s1[0,nindex] = ""
  55.     note_s1 = (note_s1.split("|"))[1] if note_s1.include?"|"
  56.     itnum = note_s1.split(":")[1].to_i
  57.     if $game_party.item_number($data_items[itnum]).to_i >= num.to_i
  58.        $game_party.lose_item($data_items[itnum],num.to_i)
  59.      else
  60.       @log_window.add_text @nohb_s if @log_window.last_text != @nohb_s
  61.       Sound.play_buzzer
  62.       return nil
  63.     end
  64.   end
  65. end
复制代码
没事儿试着写了个,应该能用吧....
@忧雪の伤
@越前リョーマ
比如要让某个技能每次使用时都要消耗物品编号为17的物品2个单位,在技能的备注里就可以这么写:
Spec:Shoot|Numb:2|Binx:17


作者: gyzjj71    时间: 2012-1-24 04:44
我是基佬但我回帖
作者: 阿尔西斯的马甲    时间: 2012-1-24 10:28
我是基佬,但我还是可耻的回帖了
我猜是通过使用技能后公共事件处理,如果木有子弹就封印射击技能
作者: guaneva    时间: 2012-1-24 10:38
看到评论不得不回....................话说子弹系统对涉及现代的游戏很必要啊。
作者: 越前リョーマ    时间: 2012-1-27 00:08
更新支持多人 - -b
作者: xmheart    时间: 2012-1-28 02:44
这个脚本是相当于发动技能消耗某特定道具的作用吧?不一定是子弹什么的
作者: chenyc1993    时间: 2012-2-2 01:30
有机会试着做做现代剧情的游戏,话说评论使得压力很大啊~
作者: xmheart    时间: 2012-2-2 20:14
脚本那里"子弹数量已不足,无法射击!"这句话在游戏出现能不能设置消失时间的,它跟技能的描述叠在一起,看不到技能的描述。。。。。
作者: 562305484    时间: 2012-3-5 11:34
收下了谢谢


‘‘──562305484于2012-3-7 12:13补充以下内容

好东西必须是回帖的,准备做个技能消耗道具的技能,这个脚本能实现么?
’’
作者: 红十字    时间: 2012-4-28 22:03
支持一下先,顶一个
作者: qq595006041    时间: 2012-5-6 18:23
{:2_254:}不回帖是基佬?我可不是~还是支持下楼主好了
作者: chd114    时间: 2012-5-18 21:14
LZ这脚本感觉乖乖的




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