Project1
标题:
装备某个武器的时候提升变量
[打印本页]
作者:
游戏我的爱
时间:
2015-6-13 22:38
标题:
装备某个武器的时候提升变量
当装备 武器1 的时候 变量1 提升1
当卸载 武器1 的时候 变量1 变回之前的值(就是没有提升1的时候那个值)
需要怎么弄?
作者:
kuerlulu
时间:
2015-6-13 22:51
本帖最后由 kuerlulu 于 2015-6-14 09:09 编辑
class Game_Actor
alias 游戏你的爱_equip equip
def equip(equip_type, id)
$game_variables[1] += 1 if equip_type == 0 && id == 1 && @weapon_id != 1
$game_variables[1] -= 1 if equip_type == 0 && id != 1 && @weapon_id == 1
游戏你的爱_equip(equip_type, id)
end
end
复制代码
即插即用
# 注释
$game_variables[1] += 1 if equip_type == 0 && id == 1 && @weapon_id != 1
变量
1
自增
1
如果
equip_type==0(装备类型为"武器")
且
待装备武器编号为1
且
当前武器
不
为武器1
$game_variables[1] -= 1 if equip_type == 0 && id != 1 && @weapon_id == 1
变量
1
自减
1
如果
equip_type==0(装备类型为"武器")
且
待装备武器编号
不
为1
且
当前武器为武器1
顺便发现了逻辑上一个问题 已修正
作者:
美丽晨露
时间:
2015-6-13 22:52
https://rpg.blue/thread-292650-1-1.html
大概就是熊叔说明的那样。虽然感觉有点Bug
作者:
chd114
时间:
2015-6-13 23:13
本帖最后由 chd114 于 2015-6-13 16:39 编辑
参考套装属性计算套装部件数的办法呗···
#--------------------------------------------------------------------------
# ● 变更装备
# equip_type : 装备类型
# id : 武器 or 防具 ID (0 为解除装备)
#--------------------------------------------------------------------------
def equip(equip_type, id)
case equip_type
when 0 # 武器
if id == 0 or $game_party.weapon_number(id) > 0
$game_party.gain_weapon(@weapon_id, 1)
@weapon_id = id
$game_party.lose_weapon(id, 1)
end
when 1 # 盾
if id == 0 or $game_party.armor_number(id) > 0
update_auto_state($data_armors[@armor1_id], $data_armors[id])
$game_party.gain_armor(@armor1_id, 1)
@armor1_id = id
$game_party.lose_armor(id, 1)
end
when 2 # 头
if id == 0 or $game_party.armor_number(id) > 0
update_auto_state($data_armors[@armor2_id], $data_armors[id])
$game_party.gain_armor(@armor2_id, 1)
@armor2_id = id
$game_party.lose_armor(id, 1)
end
when 3 # 身体
if id == 0 or $game_party.armor_number(id) > 0
update_auto_state($data_armors[@armor3_id], $data_armors[id])
$game_party.gain_armor(@armor3_id, 1)
@armor3_id = id
$game_party.lose_armor(id, 1)
end
when 4 # 装饰品
if id == 0 or $game_party.armor_number(id) > 0
update_auto_state($data_armors[@armor4_id], $data_armors[id])
$game_party.gain_armor(@armor4_id, 1)
@armor4_id = id
$game_party.lose_armor(id, 1)
end
end
end
复制代码
GameActor修改,以武器为例
when 0 # 武器
if id == 0 or $game_party.weapon_number(id) > 0
$game_party.gain_weapon(@weapon_id, 1)
@weapon_id = id
$game_party.lose_weapon(id, 1)
end
复制代码
在if id==0 or $game_party.weapon_number(id) > 0
下面加其他判断就好···
if id==x#如果要换上去的武器id是x号
如果你的角色一开始就装备(数据库设置了的话···)了这样的装备
#--------------------------------------------------------------------------
# ● 设置
# actor_id : 角色 ID
#--------------------------------------------------------------------------
def setup(actor_id)
复制代码
里面可以改···
@weapon_id = actor.weapon_id
@armor1_id = actor.armor1_id
@armor2_id = actor.armor2_id
@armor3_id = actor.armor3_id
@armor4_id = actor.armor4_id
复制代码
下面加新的判断
if actor.weapon_id==x
貌似还有别的方法···
作者:
芯☆淡茹水
时间:
2015-6-14 09:30
Game_Actor 的初始化里的一句:@weapon_id = actor.weapon_id
后面接着加一句:$game_variables[1] = @weapon_id == 1 ? 1 : 0
作者:
jiushiainilip19
时间:
2015-6-26 23:45
美丽晨露 发表于 2015-6-13 22:52
https://rpg.blue/thread-292650-1-1.html
大概就是熊叔说明的那样。虽然感觉有点Bug ...
看不到了!!!!想看啊
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1