Project1

标题: 关于物理防御的数值。 [打印本页]

作者: 海马濑人    时间: 2008-2-6 05:21
标题: 关于物理防御的数值。
RM上默认每个角色只有在装备防具后才有防御力。问一下怎么才能让主角有自己的防御力,也就是像RMVX数据库里可以设置防御一样。防御力是本身的能力,在没有武器和防具的情况下也有防御值,并且可以随着等级上升而上升,就像火焰纹章的人物防御一样。 [LINE]1,#dddddd[/LINE]版务信息:本贴由楼主自主结贴~
作者: 心情de对白    时间: 2008-2-6 05:32
http://rpg.blue/web/htm/news150.htm
作者: 海马濑人    时间: 2008-2-6 05:37
可是当装备上武器时不装任何防具,防御力仍然为0.我的意思就是大概像大多SLG一样,防御力是本身的能力。
作者: 沉影不器    时间: 2008-2-6 05:39
提示: 作者被禁止或删除 内容自动屏蔽
作者: 心情de对白    时间: 2008-2-6 05:41
你不会初始属性为0吧!{/fd}看看数据库
#===================================================================
  # 自定义开始
  #====================================================================
  # 空手时1号角色攻击力与力量值的百分比关系(60%)
  ARM_ATK[1] = 0.6
  # 空手时2号角色攻击力与力量值的百分比关系(70%),以下类推,不一一举例。
  ARM_ATK[1] = 0.7
  
  # 空手时1号角色防御力与灵巧值的百分比关系(60%)
  ARM_PDEF[1] = 0.6
  
  # 空手时1号角色魔法防御力与速度值的百分比关系(60%)
  ARM_MDEF[1] = 0.6


作者: 沉影不器    时间: 2008-2-6 05:43
提示: 作者被禁止或删除 内容自动屏蔽
作者: 海马濑人    时间: 2008-2-6 05:51
那个脚本在装备上东西时就会失效,意思就是当主角装上武器时,便不在空手,这时物理防御就会变成防具的数值,这个脚本只能做一个空手道人物,武器不能装备。意思是像火焰纹章那种人物防御一样。

作者: 沉影不器    时间: 2008-2-6 05:58
提示: 作者被禁止或删除 内容自动屏蔽
作者: 海马濑人    时间: 2008-2-6 06:02
LS麻烦具体从头到尾说一下,本人什么都不会,麻烦耐心讲解。尤其是脚本方面{/wx}
作者: 沉影不器    时间: 2008-2-6 06:06
提示: 作者被禁止或删除 内容自动屏蔽
作者: 沉影不器    时间: 2008-2-6 06:09
提示: 作者被禁止或删除 内容自动屏蔽
作者: 海马濑人    时间: 2008-2-6 06:13
在查看人物状态时脚本出错地说。怎么回事?
作者: 沉影不器    时间: 2008-2-6 06:15
提示: 作者被禁止或删除 内容自动屏蔽
作者: 沉影不器    时间: 2008-2-6 06:28
提示: 作者被禁止或删除 内容自动屏蔽
作者: 沉影不器    时间: 2008-2-6 17:14
提示: 作者被禁止或删除 内容自动屏蔽
作者: 天圣的马甲    时间: 2008-2-6 17:33
LS写脚本的能力已经比我厉害了。{/hx}
我是懒人啊……(自pia)
我的方法是直接让物理防御和灵巧或者其他系数挂钩。把Game_Actor里面“获取物理防御”那里改成了
  #--------------------------------------------------------------------------
  # ● 获取基本物理防御
  #--------------------------------------------------------------------------
  def base_pdef
    weapon = $data_weapons[@weapon_id]
    armor1 = $data_armors[@armor1_id]
    armor2 = $data_armors[@armor2_id]
    armor3 = $data_armors[@armor3_id]
    armor4 = $data_armors[@armor4_id]
    pdef1 = weapon != nil ? weapon.pdef : 0
    pdef2 = armor1 != nil ? armor1.pdef : 0
    pdef3 = armor2 != nil ? armor2.pdef : 0
    pdef4 = armor3 != nil ? armor3.pdef : 0
    pdef5 = armor4 != nil ? armor4.pdef + base_dex * 0.2 : base_dex*0.2
    return pdef1 + pdef2 + pdef3 + pdef4 + pdef5
    #物理防御=所有防具强壮+灵巧*0.1
  end

表示在加上所有防具的基础上再加灵巧的10%。这样就可以随着升级而提升数值了。
魔法防御同理修改之:
  #--------------------------------------------------------------------------
  # ● 获取基本魔法防御
  #--------------------------------------------------------------------------
  def base_mdef
    weapon = $data_weapons[@weapon_id]
    armor1 = $data_armors[@armor1_id]
    armor2 = $data_armors[@armor2_id]
    armor3 = $data_armors[@armor3_id]
    armor4 = $data_armors[@armor4_id]
    mdef1 = weapon != nil ? weapon.mdef : 0
    mdef2 = armor1 != nil ? armor1.mdef : 0
    mdef3 = armor2 != nil ? armor2.mdef : 0
    mdef4 = armor3 != nil ? armor3.mdef : 0
    mdef5 = armor4 != nil ? armor4.mdef + base_int * 0.2: base_int * 0.2
    return mdef1 + mdef2 + mdef3 + mdef4 + mdef5
    #魔法防御=所有防具内御+魔力*0.2
  end

作者: 海马濑人    时间: 2008-2-6 18:53
不管怎么样,一个字:谢谢。




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