Project1
标题: 等值交换系统 [打印本页]
作者: 布冷.逆天 时间: 2015-2-22 16:22
标题: 等值交换系统
本帖最后由 布冷.逆天 于 2015-2-22 20:14 编辑
使用方法忘写进去了,现在写
=begin
作者:布冷.逆天
医院系统:一分钱一分货给多少钱就加多少血!
使用方法:事件—脚本—输入
加血=Hospital_System.new
加血.用钱加血
=end
class Hospital_System
def 用钱加血
add_hp = 1000 # 预设最大加血量
add_hp = [add_hp, $game_party.actors[0].maxhp - $game_party.actors[0].hp].min
if $game_party.gold < add_hp or $game_party.actors[0].maxhp == $game_party.actors[0].hp
tip = $game_party.gold < add_hp ? "金钱不够!" : "你已经满血了"
p tip
return
end
$game_party.actors[0].hp += add_hp
$game_party.lose_gold -= add_hp
end
end
=begin
作者:布冷.逆天
医院系统:一分钱一分货给多少钱就加多少血!
使用方法:事件—脚本—输入
加血=Hospital_System.new
加血.用钱加血
=end
class Hospital_System
def 用钱加血
add_hp = 1000 # 预设最大加血量
add_hp = [add_hp, $game_party.actors[0].maxhp - $game_party.actors[0].hp].min
if $game_party.gold < add_hp or $game_party.actors[0].maxhp == $game_party.actors[0].hp
tip = $game_party.gold < add_hp ? "金钱不够!" : "你已经满血了"
p tip
return
end
$game_party.actors[0].hp += add_hp
$game_party.lose_gold -= add_hp
end
end
本系统还有很大的提升空间,正在写中,估计等下就写好一个了!
作者: taroxd 时间: 2015-2-22 17:12
请问……这个和公共事件有啥区别?
作者: 布冷.逆天 时间: 2015-2-22 17:46
我只是开头,还有这适合新手!
=begin
作者:一位不想透露名字的人和布冷.逆天
等值系统:脑洞大开的作品,第一个为前面的一位不想透露名字的人与我一起,他占90%.
别名:万能的钱
版本v0.2
=end
class Equivalent_system
#医院系统:一分钱一分货给多少钱就加多少血!
#使用方法:事件—脚本—输入
#加血=Equivalent_system.new
#加血.Blood_system
def Blood_system
add_hp = 1000 # 预设最大加血量
add_hp = [add_hp, $game_party.actors[0].maxhp - $game_party.actors[0].hp].min
if $game_party.gold < add_hp or $game_party.actors[0].maxhp == $game_party.actors[0].hp
tip = $game_party.gold < add_hp ? "金钱不够!" : "你已经满血了"
p tip
return
end
$game_party.actors[0].hp += add_hp
$game_party.lose_gold -= add_hp
end
end
=begin
钱换经验系统:一分钱一分货!
=end
def Experience_system
add_exp = 1000
if $game_party.gold < add_exp
p "钱不够"
else
$game_party.actors[0].exp += add_exp
$game_party.lose_gold(add_exp)
end
end
=begin
作者:一位不想透露名字的人和布冷.逆天
等值系统:脑洞大开的作品,第一个为前面的一位不想透露名字的人与我一起,他占90%.
别名:万能的钱
版本v0.2
=end
class Equivalent_system
#医院系统:一分钱一分货给多少钱就加多少血!
#使用方法:事件—脚本—输入
#加血=Equivalent_system.new
#加血.Blood_system
def Blood_system
add_hp = 1000 # 预设最大加血量
add_hp = [add_hp, $game_party.actors[0].maxhp - $game_party.actors[0].hp].min
if $game_party.gold < add_hp or $game_party.actors[0].maxhp == $game_party.actors[0].hp
tip = $game_party.gold < add_hp ? "金钱不够!" : "你已经满血了"
p tip
return
end
$game_party.actors[0].hp += add_hp
$game_party.lose_gold -= add_hp
end
end
=begin
钱换经验系统:一分钱一分货!
=end
def Experience_system
add_exp = 1000
if $game_party.gold < add_exp
p "钱不够"
else
$game_party.actors[0].exp += add_exp
$game_party.lose_gold(add_exp)
end
end
我提供的是原版,大家可以扩展,跟我一样扩展!
作者: 布冷.逆天 时间: 2015-2-22 18:06
新的版本又出来了!下回我将改进提示。
=begin
作者:一位不想透露名字的人和布冷.逆天
等值系统:脑洞大开的作品,第一个医院系统为前面的一位不想透露名字的人与我一起做的,他占90%,其余自己做的,当然有人帮忙的了!
别名:万能的钱
版本v0.3
=end
class Equivalent_system
=begin
医院系统:一分钱一分货给多少钱就加多少血!
使用方法:事件—脚本—输入
加血=Equivalent_system.new
加血.Add_hp
=end
def Add_hp
add_hp = 1000 # 预设最大加血量
add_hp = [add_hp, $game_party.actors[0].maxhp - $game_party.actors[0].hp].min
if $game_party.gold < add_hp or $game_party.actors[0].maxhp == $game_party.actors[0].hp
tip = $game_party.gold < add_hp ? "金钱不够!" : "你已经满血了"
p tip
return
end
$game_party.actors[0].hp += add_hp
$game_party.lose_gold -= add_hp
end
end
=begin
钱换经验系统
使用方法:事件—脚本—输入
加经验=Equivalent_system.new
加经验.Add_exe
=end
def Add_exe
add_exp = 1000#设置增加的经验数
if $game_party.gold < add_exp
p "钱不够"
else
$game_party.actors[0].exp += add_exp
$game_party.lose_gold(add_exp)
end
end
=begin
钱换等级系统:100换1级
使用方法:事件—脚本—输入
加等级=Equivalent_system.new
加等级.Add_level
=end
def Add_level
add_level=1#设置增加的等级数
if $game_party.gold < add_level
p "钱不够"
else
$game_party.actors[0].level += add_level
$game_party.lose_gold(100)#设置钱数
end
end
=begin
作者:一位不想透露名字的人和布冷.逆天
等值系统:脑洞大开的作品,第一个医院系统为前面的一位不想透露名字的人与我一起做的,他占90%,其余自己做的,当然有人帮忙的了!
别名:万能的钱
版本v0.3
=end
class Equivalent_system
=begin
医院系统:一分钱一分货给多少钱就加多少血!
使用方法:事件—脚本—输入
加血=Equivalent_system.new
加血.Add_hp
=end
def Add_hp
add_hp = 1000 # 预设最大加血量
add_hp = [add_hp, $game_party.actors[0].maxhp - $game_party.actors[0].hp].min
if $game_party.gold < add_hp or $game_party.actors[0].maxhp == $game_party.actors[0].hp
tip = $game_party.gold < add_hp ? "金钱不够!" : "你已经满血了"
p tip
return
end
$game_party.actors[0].hp += add_hp
$game_party.lose_gold -= add_hp
end
end
=begin
钱换经验系统
使用方法:事件—脚本—输入
加经验=Equivalent_system.new
加经验.Add_exe
=end
def Add_exe
add_exp = 1000#设置增加的经验数
if $game_party.gold < add_exp
p "钱不够"
else
$game_party.actors[0].exp += add_exp
$game_party.lose_gold(add_exp)
end
end
=begin
钱换等级系统:100换1级
使用方法:事件—脚本—输入
加等级=Equivalent_system.new
加等级.Add_level
=end
def Add_level
add_level=1#设置增加的等级数
if $game_party.gold < add_level
p "钱不够"
else
$game_party.actors[0].level += add_level
$game_party.lose_gold(100)#设置钱数
end
end
作者: 布冷.逆天 时间: 2015-2-22 18:18
新版来了,上回的约定当不存在吧!
=begin
作者:一位不想透露名字的人和布冷.逆天
等值系统:脑洞大开的作品,第一个医院系统为前面的一位不想透露名字的人与我一起做的,他占90%,其余自己做的,当然有人帮忙的了!
别名:万能的钱
版本v0.4
=end
class Equivalent_system
=begin
医院系统:一分钱一分货给多少钱就加多少血!
使用方法:事件—脚本—输入
加血=Equivalent_system.new
加血.Add_hp
=end
def Add_hp
add_hp = 1000 # 预设最大加血量
add_hp = [add_hp, $game_party.actors[0].maxhp - $game_party.actors[0].hp].min
if $game_party.gold < add_hp or $game_party.actors[0].maxhp == $game_party.actors[0].hp
tip = $game_party.gold < add_hp ? "金钱不够!" : "你已经满血了"
p tip
return
end
$game_party.actors[0].hp += add_hp
$game_party.lose_gold -= add_hp
end
end
=begin
钱换经验系统
使用方法:事件—脚本—输入
加经验=Equivalent_system.new
加经验.Add_exe
=end
def Add_exe
add_exp = 1000#设置增加的经验数
if $game_party.gold < add_exp
p "钱不够"
else
$game_party.actors[0].exp += add_exp
$game_party.lose_gold(add_exp)
end
end
=begin
钱换等级系统:100换1级
使用方法:事件—脚本—输入
加等级=Equivalent_system.new
加等级.Add_level
=end
def Add_level
add_level=1#设置增加的等级数
if $game_party.gold < add_level
p "钱不够"
else
$game_party.actors[0].level += add_level
$game_party.lose_gold(100)#设置钱数
end
end
=begin
钱换血的最大量
使用方法:你懂得
=end
def Add_maxhp
add_maxhp = 100#预设最大增加的最大量
if $game_party.gold < add_maxhp
p "金钱不够!"
else
$game_party.actors[0].maxhp += add_maxhp
$game_party.lose_gold(add_maxhp )
end
end
=begin
作者:一位不想透露名字的人和布冷.逆天
等值系统:脑洞大开的作品,第一个医院系统为前面的一位不想透露名字的人与我一起做的,他占90%,其余自己做的,当然有人帮忙的了!
别名:万能的钱
版本v0.4
=end
class Equivalent_system
=begin
医院系统:一分钱一分货给多少钱就加多少血!
使用方法:事件—脚本—输入
加血=Equivalent_system.new
加血.Add_hp
=end
def Add_hp
add_hp = 1000 # 预设最大加血量
add_hp = [add_hp, $game_party.actors[0].maxhp - $game_party.actors[0].hp].min
if $game_party.gold < add_hp or $game_party.actors[0].maxhp == $game_party.actors[0].hp
tip = $game_party.gold < add_hp ? "金钱不够!" : "你已经满血了"
p tip
return
end
$game_party.actors[0].hp += add_hp
$game_party.lose_gold -= add_hp
end
end
=begin
钱换经验系统
使用方法:事件—脚本—输入
加经验=Equivalent_system.new
加经验.Add_exe
=end
def Add_exe
add_exp = 1000#设置增加的经验数
if $game_party.gold < add_exp
p "钱不够"
else
$game_party.actors[0].exp += add_exp
$game_party.lose_gold(add_exp)
end
end
=begin
钱换等级系统:100换1级
使用方法:事件—脚本—输入
加等级=Equivalent_system.new
加等级.Add_level
=end
def Add_level
add_level=1#设置增加的等级数
if $game_party.gold < add_level
p "钱不够"
else
$game_party.actors[0].level += add_level
$game_party.lose_gold(100)#设置钱数
end
end
=begin
钱换血的最大量
使用方法:你懂得
=end
def Add_maxhp
add_maxhp = 100#预设最大增加的最大量
if $game_party.gold < add_maxhp
p "金钱不够!"
else
$game_party.actors[0].maxhp += add_maxhp
$game_party.lose_gold(add_maxhp )
end
end
作者: 不死鸟之翼 时间: 2015-2-22 18:24
新版建议直接利用编辑帖子功能进行更新,刷楼不太好吧
另外最好还是利用事件实现
作者: 布冷.逆天 时间: 2015-2-22 18:25
新版,增加成功提示- =begin
- 作者:一位不想透露名字的人和布冷.逆天
- 等值系统:脑洞大开的作品,第一个医院系统为前面的一位不想透露名字的人与我一起做的,他占90%,其余自己做的,当然有人帮忙的了!
- 别名:万能的钱
- 版本v0.5
- =end
- class Equivalent_system
- =begin
- 医院系统:一分钱一分货给多少钱就加多少血!
- 使用方法:事件—脚本—输入
- 加血=Equivalent_system.new
- 加血.Add_hp
- =end
- def Add_hp
- add_hp = 1000 # 预设最大加血量
- add_hp = [add_hp, $game_party.actors[0].maxhp - $game_party.actors[0].hp].min
- if $game_party.gold < add_hp or $game_party.actors[0].maxhp == $game_party.actors[0].hp
- tip = $game_party.gold < add_hp ? "金钱不够!" : "你已经满血了"
- p tip
- return
- end
- $game_party.actors[0].hp += add_hp
- $game_party.lose_gold -= add_hp
- p "交换完成!"
- end
- end
- =begin
- 钱换经验系统
- 使用方法:事件—脚本—输入
- 加经验=Equivalent_system.new
- 加经验.Add_exe
- =end
- def Add_exe
- add_exp = 1000#设置增加的经验数
- if $game_party.gold < add_exp
- p "钱不够"
- else
- $game_party.actors[0].exp += add_exp
- $game_party.lose_gold(add_exp)
- p "交换完成!"
- end
- end
- =begin
- 钱换等级系统:100换1级
- 使用方法:事件—脚本—输入
- 加等级=Equivalent_system.new
- 加等级.Add_level
- =end
- def Add_level
- add_level=1#设置增加的等级数
- if $game_party.gold < add_level
- p "钱不够"
- else
- $game_party.actors[0].level += add_level
- $game_party.lose_gold(100)#设置钱数
- p "交换完成!"
- end
- end
- =begin
- 钱换血的最大量
- 使用方法:你懂得
- =end
- def Add_maxhp
- add_maxhp = 100#预设最大增加的最大量
- if $game_party.gold < add_maxhp
- p "金钱不够!"
- else
- $game_party.actors[0].maxhp += add_maxhp
- $game_party.lose_gold(add_maxhp )
- p "交换完成!"
- end
- end
- =begin
- 钱换魔的最大量
- 使用方法:呵呵!
- =end
- def Add_maxsp
- add_maxsp=100
- if $game_party.gold < add_maxsp
- p "金钱不够!"
- else
- $game_party.actors[0].maxsp += add_maxsp
- $game_party.lose_gold(add_maxsp )
- p "交换完成!"
- end
- end
复制代码
作者: 布冷.逆天 时间: 2015-2-22 18:32
以后就不在这里发布最新版了!转帖:https://rpg.blue/thread-376813-1-1.html
到时大家在这里面看就行了!
不过只有新手需要吧!
作者: taroxd 时间: 2015-2-22 18:35
本帖最后由 taroxd 于 2015-2-22 18:36 编辑
布冷.逆天 发表于 2015-2-22 18:25 
新版,增加成功提示
想要通用化的话,还是这种接口比较好吧- # max_gold: 消耗金钱的最大值
- # gold_paid: 支付的金钱
- EquivalentSystem.call(max_gold) do |gold_paid|
- $game_party.actors.first.hp += gold_paid
- end
复制代码
作者: 布冷.逆天 时间: 2015-2-22 18:44
taroxd 发表于 2015-2-22 18:35 
想要通用化的话,还是这种接口比较好吧
非常感谢,这样RMVA也能用了!
不过是替换原来的,还是新增!
呵呵,我不会用!
作者: taroxd 时间: 2015-2-22 19:05
本帖最后由 taroxd 于 2015-2-22 19:16 编辑
布冷.逆天 发表于 2015-2-22 18:44 
非常感谢,这样RMVA也能用了!
不过是替换原来的,还是新增!
呵呵,我不会用! ...
大概就这样?
module EquivalentSystem
DEFAULT_MAX_GOLD = 1000
def self.call(max_gold = DEFAULT_MAX_GOLD)
gold_paid = [$game_party.gold, max_gold].min
$game_party.lose_gold(gold_paid)
yield gold_paid
end
def self.add_hp
actor = $game_party.actors.first
call(actor.maxhp - actor.hp) { |v| actor.hp += v } if actor
end
# etc...
end
module EquivalentSystem
DEFAULT_MAX_GOLD = 1000
def self.call(max_gold = DEFAULT_MAX_GOLD)
gold_paid = [$game_party.gold, max_gold].min
$game_party.lose_gold(gold_paid)
yield gold_paid
end
def self.add_hp
actor = $game_party.actors.first
call(actor.maxhp - actor.hp) { |v| actor.hp += v } if actor
end
# etc...
end
作者: 布冷.逆天 时间: 2015-2-22 19:27
本帖最后由 布冷.逆天 于 2015-2-22 19:28 编辑
taroxd 发表于 2015-2-22 19:05 
大概就这样?
- module EquivalentSystem
-
- DEFAULT_MAX_GOLD = 1000
-
- def self.call(max_gold = DEFAULT_MAX_GOLD)
- gold_paid = [$game_party.gold, max_gold].min
- $game_party.lose_gold(gold_paid)
- yield gold_paid
- end
-
- def self.add_hp
- actor = $game_party.actors.first#队伍的第一个人
- call(actor.maxhp - actor.hp) { |v| actor.hp += v } if actor
- end
-
- def self.add_int
- actor = $game_party.actors.first
- call(actor.maxsp - actor.int){ |v| actor.int += v } if actor
- end
复制代码 看懂了一点,其他类型看不懂,怎么调用啊!
作者: 952193683 时间: 2015-2-23 15:32
有啥用?{:2_257:}
作者: 952193683 时间: 2015-2-24 01:48
952193683 发表于 2015-2-23 15:32 
有啥用?
买药不就得了?
欢迎光临 Project1 (https://rpg.blue/) |
Powered by Discuz! X3.1 |