Project1
标题:
简单的属性检定系统
[打印本页]
作者:
cftx
时间:
2007-8-6 00:21
标题:
简单的属性检定系统
就是DND里面常用到的,判断队伍里面的成员(取所有存活队员里该属性最高的人)某项属性是否达到要求,比如有人力量超过120就可以推动某块石头,速度超过60就可以躲开某个陷阱等等
可以直接在条件分歧里使用
不要提示的话,直接把#tips----------------之间那两段删除就可以
在main后插入此脚本后,在条件分歧里选择脚本,输入pd(a,b)即可
其中a为检定的属性,0~3分别代表力量、敏捷、速度、智力,b为要求的值,因为是用的脚本也可以写成表达式,可以用随机数之类。然后就可以分别写达到要求和不满要求的事件了。(PS:这张图里面那个独立开关打开的操作写错地方了{/gg})
def pd(a,z)
case a
when 0
abi=$data_system.words.str
when 1
abi=$data_system.words.dex
when 2
abi=$data_system.words.agi
when 3
abi=$data_system.words.int
end
for i in $game_party.actors
case a
when 0
x=i.str
when 1
x=i.dex
when 2
x=i.agi
when 3
x=i.int
end
if (x>=z and i.hp>0)
#tips----------------
carol3_66RPG = Window_Base.new((640-300)/2,128,300,100)
carol3_66RPG.contents = Bitmap.new(carol3_66RPG.width - 32, carol3_66RPG.height - 32)
carol3_66RPG.contents.draw_text(0,0,240,32,i.name+abi+"检定通过!")
carol3_66RPG.contents.draw_text(0,32,240,32,"["+x.to_s+" 对 " +z.to_s+"]")
#——声效,可以自己改
Audio.se_play("Audio/SE/"+"055-Right01",80,100)
for i in 0..30
Graphics.update
end
for i in 0..10
carol3_66RPG.opacity -= 30
carol3_66RPG.contents_opacity -= 30
Graphics.update
end
carol3_66RPG.dispose
#tips----------------
return true
break
end
end
#tips----------------
carol3_66RPG = Window_Base.new((640-300)/2,128,300,100)
carol3_66RPG.contents = Bitmap.new(carol3_66RPG.width - 32, carol3_66RPG.height - 32)
carol3_66RPG.contents.draw_text(0,0,240,32,"没有队员的能力达到要求!")
#——声效,可以自己改
Audio.se_play("Audio/SE/"+"057-Wrong01",80,100)
carol3_66RPG.opacity = 160
for i in 0..30
Graphics.update
end
for i in 0..10
carol3_66RPG.opacity -= 30
carol3_66RPG.contents_opacity -= 30
Graphics.update
end
carol3_66RPG.dispose
#tips----------------
return false
end
复制代码
作者:
cftx
时间:
2007-8-6 00:21
标题:
简单的属性检定系统
就是DND里面常用到的,判断队伍里面的成员(取所有存活队员里该属性最高的人)某项属性是否达到要求,比如有人力量超过120就可以推动某块石头,速度超过60就可以躲开某个陷阱等等
可以直接在条件分歧里使用
不要提示的话,直接把#tips----------------之间那两段删除就可以
在main后插入此脚本后,在条件分歧里选择脚本,输入pd(a,b)即可
其中a为检定的属性,0~3分别代表力量、敏捷、速度、智力,b为要求的值,因为是用的脚本也可以写成表达式,可以用随机数之类。然后就可以分别写达到要求和不满要求的事件了。(PS:这张图里面那个独立开关打开的操作写错地方了{/gg})
def pd(a,z)
case a
when 0
abi=$data_system.words.str
when 1
abi=$data_system.words.dex
when 2
abi=$data_system.words.agi
when 3
abi=$data_system.words.int
end
for i in $game_party.actors
case a
when 0
x=i.str
when 1
x=i.dex
when 2
x=i.agi
when 3
x=i.int
end
if (x>=z and i.hp>0)
#tips----------------
carol3_66RPG = Window_Base.new((640-300)/2,128,300,100)
carol3_66RPG.contents = Bitmap.new(carol3_66RPG.width - 32, carol3_66RPG.height - 32)
carol3_66RPG.contents.draw_text(0,0,240,32,i.name+abi+"检定通过!")
carol3_66RPG.contents.draw_text(0,32,240,32,"["+x.to_s+" 对 " +z.to_s+"]")
#——声效,可以自己改
Audio.se_play("Audio/SE/"+"055-Right01",80,100)
for i in 0..30
Graphics.update
end
for i in 0..10
carol3_66RPG.opacity -= 30
carol3_66RPG.contents_opacity -= 30
Graphics.update
end
carol3_66RPG.dispose
#tips----------------
return true
break
end
end
#tips----------------
carol3_66RPG = Window_Base.new((640-300)/2,128,300,100)
carol3_66RPG.contents = Bitmap.new(carol3_66RPG.width - 32, carol3_66RPG.height - 32)
carol3_66RPG.contents.draw_text(0,0,240,32,"没有队员的能力达到要求!")
#——声效,可以自己改
Audio.se_play("Audio/SE/"+"057-Wrong01",80,100)
carol3_66RPG.opacity = 160
for i in 0..30
Graphics.update
end
for i in 0..10
carol3_66RPG.opacity -= 30
carol3_66RPG.contents_opacity -= 30
Graphics.update
end
carol3_66RPG.dispose
#tips----------------
return false
end
复制代码
作者:
K’
时间:
2007-8-6 04:13
呵呵 挺有用的一个小功能 鼓励下。
PS 窗口貌似是用66那个得失物品提示改的{/hx}
作者:
cftx
时间:
2007-8-6 05:34
就是这样,怕麻烦直接复制过来了,呵呵,carol3_66RPG都没改{/hx}
作者:
gpra8764
时间:
2007-8-8 00:48
提示:
作者被禁止或删除 内容自动屏蔽
作者:
风雪优游
时间:
2007-8-8 23:21
感觉是个不错的功能~~
作者:
K’
时间:
2007-8-10 17:05
发布完毕 VIP += 1
http://rpg.blue/web/htm/news815.htm
如果您对此有何异议请短信告诉我。{/wx}
作者:
cloverhope
时间:
2007-8-11 03:12
提示:
作者被禁止或删除 内容自动屏蔽
作者:
雪雾明日晴
时间:
2007-8-11 03:13
很有想法...有拓展价值。
作者:
cftx
时间:
2007-8-11 17:05
以下引用
cloverhope于2007-8-10 19:12:26
的发言:
等等
在main后插入此脚本?????????
[本贴由作者于 2007-8-10 19:15:16 最后编辑]
main的上面建个新的...................
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1