Project1
标题:
【纯事件】火铳子弹射击系统V2(支持多人)
[打印本页]
作者:
越前リョーマ
时间:
2012-1-1 13:39
标题:
【纯事件】火铳子弹射击系统V2(支持多人)
本帖最后由 越前リョーマ 于 2012-1-27 00:08 编辑
【V2版更新内容】
支持队伍里有多个火枪手。
如果只剩一颗子弹,而两个火枪手都选择射击,那么后发的人当前回合不做任何行动。
忧雪说她最想写的是子弹系统……于是我先做了一个事件版的,应该会有很大区别。
这个事件版的,其实还是有点小问题的。就不改脚本来说,虽然VA提供给角色一个【攻击】技能,但是我们却不能让不同的角色有不同的【攻击】,所以我只能把【攻击】设置为威力小的近身,然后用技能额外做了火铳的攻击和一个技能,都是需要装备抢以及消耗子弹的。
若是前面的版本的RM来做,也许会比这个更麻烦以及效果不好(只能删除技能却不能封印,还要一堆判断……),另外也不确定到底能不能做了。
这个范例也可以拿来当做熟悉VA于之前不同的一些地方吧。
1.PNG
(297.56 KB, 下载次数: 53)
下载附件
保存到相册
2012-1-1 13:34 上传
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 编辑
#===============================================================================
#
# 简版子弹射击系统 For RMVA
#
# 版本:0.1
# 说明:直接在你的射击系统的备注中加入:Spec:Shoot|Numb:AA|Binx:BB
# 其中:AA为要消耗子弹的数量;BB为子弹的物品编号,
# Shoot、Numb和Binx为标志,如果出现冲突可以在下面修改标志符号(很难用到)
# 没有子弹的提示语也可以在下面修改 喵~
#===============================================================================
class Scene_Battle < Scene_Base
def on_skill_ok
#===========================================================================
# 设置技能备注中的标志以及提示语
shoot_s = "Shoot" # 设置作为射击技能的标志
@numb_s = "Numb" # 设置需要子弹数量的标志
@binx_s = "Binx" # 设置作为子弹的物品编号
@nohb_s = "子弹数量已不足,无法射击!" # 设置子弹不足时的提示语
#===========================================================================
@skill = @skill_window.item
if !$data_skills[@skill.id].note.empty?
if $data_skills[@skill.id].note.downcase.include?shoot_s.downcase
notes = $data_skills[@skill.id].note
if !shoot_skill(notes)
@skill = nil
@skill_window.activate
return 0
end
BattleManager.actor.input.set_skill(@skill.id)
BattleManager.actor.last_skill.object = @skill
end
end
BattleManager.actor.input.set_skill(@skill.id)
BattleManager.actor.last_skill.object = @skill
if
[email protected]
_selection?
@skill_window.hide
next_command
elsif @skill.for_opponent?
select_enemy_selection
else
select_actor_selection
end
end
def shoot_skill(note)
note_s = $data_skills[@skill.id].note.to_s
note_s = note_s[0,note_s.length].to_s
note_s1 = note_s
nindex = note_s.downcase.index(@numb_s.downcase)
note_s[0,nindex] = ""
note_s = (note_s.split("|"))[0] if note_s.include?"|"
num = note_s.split(":")[1]
nindex = note_s1.downcase.index(@binx_s.downcase)
note_s1[0,nindex] = ""
note_s1 = (note_s1.split("|"))[1] if note_s1.include?"|"
itnum = note_s1.split(":")[1].to_i
if $game_party.item_number($data_items[itnum]).to_i >= num.to_i
$game_party.lose_item($data_items[itnum],num.to_i)
else
@log_window.add_text @nohb_s if @log_window.last_text != @nohb_s
Sound.play_buzzer
return nil
end
end
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