Project1

标题: 裸体初始的回避和命中怎么设置? [打印本页]

作者: 逆天RPG    时间: 2009-9-8 15:21
标题: 裸体初始的回避和命中怎么设置?
本帖最后由 逆天RPG 于 2009-9-8 17:21 编辑

裸体初始的回避和命中怎么设置?

新问,怎么在战斗中更改这些量,比如使用某特技,回避率上升……
作者: plqws    时间: 2009-9-8 15:30
数据库的主角那里设置!那里就是什么都没穿时的!
作者: new1984    时间: 2009-9-8 16:38
LS的... 数据库里 是没有回避和命中设置的...
作者: plqws    时间: 2009-9-8 17:10
那没办法,我还以为精神和敏捷…
作者: wsmyzc    时间: 2009-9-8 21:26
按F1察看

普通攻击
设 A 为主角
命中率 (%) = A所装备的武器命中率
空手攻击则预设为95

已经有预设的了...要改预设估计是要改脚本了

改变回避率需要写脚本来新建一个状态
作者: 逆天RPG    时间: 2009-9-9 14:17
找到这个不知道怎么修改
等版主大人……



#--------------------------------------------------------------------------
  # ● 获取命中率
  #--------------------------------------------------------------------------
  def hit
    if two_swords_style
      n1 = weapons[0] == nil ? 95 : weapons[0].hit
      n2 = weapons[1] == nil ? 95 : weapons[1].hit
      n = [n1, n2].min
    else
      n = weapons[0] == nil ? 95 : weapons[0].hit
    end
    return n
  end
  #--------------------------------------------------------------------------
  # ● 获取回避率
  #--------------------------------------------------------------------------
  def eva
    n = 5
    for item in armors.compact do n += item.eva end
    return n
  end
作者: 妲己    时间: 2009-9-9 14:30
就在你找到的这个脚本里改数字.上面两个95是当你的人物拥有二刀流时的命中.下面的95是非二刀时的命中.根据你设想的命中率改动这两个数字即可.回避率中的5也是同样的原理.
作者: 逆天RPG    时间: 2009-9-9 15:35
其实我更关心这个……

(怎么在战斗中更改这些量,比如使用某特技,回避率上升/命中率上升……
或是平时怎么更改……
作者: 怪蜀黍    时间: 2009-9-10 11:24
把n=5的5改成新值掉就是裸回避;把上面脚本的3个95改成3个相等的新值掉就是裸命中。
作者: 逆天RPG    时间: 2009-9-10 12:54
我不知道LS的和7楼说的有什么不一样……

其实我更关心这个……

(怎么在战斗中更改这些量,比如使用某特技,回避率上升/命中率上升……
或是平时事件中怎么更改……)
作者: njx937    时间: 2009-9-10 13:26
本帖最后由 njx937 于 2009-9-10 13:29 编辑

这个嘛,
Game_Battler
计算最後命中率
计算最後闪躲率
这两段,反正是改数字嘛,想添加功能用 技能的备注栏就好了
读备注的脚本
不器大写的
  1. #==============================================================================
  2. # 读取rmvx备注栏指定字段 by 沉影不器
  3. # -----------------------------------------------------------------------------
  4. # 使用方法:
  5. #           在vx数据库比如1号物品的备注栏里书写: 耐久度 = 10
  6. #           读取时使用: p $data_items[1].read_note('耐久度')
  7. # 几点注意:
  8. #           ① 忽略空格
  9. #           ② 返回值为文本格式
  10. #==============================================================================
  11. module RPG
  12.   #=============================================================================
  13.   # ■ BaseItem
  14.   #=============================================================================
  15.   class BaseItem
  16.     #-------------------------------------------------------------------------
  17.     # ○ 读取rmvx备注栏指定字段
  18.     #     section : 字段名
  19.     #     ignore_caps : 忽略大小写(仅字段名)
  20.     #-------------------------------------------------------------------------
  21.     def read_note(section, ignore_caps = false)
  22.       result = ''
  23.       # 忽略大小写时,全部转大写
  24.       section.upcase! if ignore_caps
  25.       # 转symbol方便比较
  26.       s = section.to_sym
  27.       self.note.each_line{|line|
  28.         temp = line.split(/=/)
  29.         # 去掉干扰字符
  30.         temp.each {|i| i.strip!}
  31.         temp[0].upcase! if ignore_caps
  32.         if temp[0].to_sym == s
  33.           unless temp[1] == nil
  34.             result = temp[1]
  35.           end
  36.           # 如果希望同名字段值覆盖前面的字段,去掉下一行
  37.           break
  38.         end
  39.       }
  40.       return result
  41.     end
  42.   end
  43.   #=============================================================================
  44.   # ■ Enemy
  45.   #=============================================================================
  46.   class Enemy
  47.     #-------------------------------------------------------------------------
  48.     # ○ 读取rmvx备注栏指定字段
  49.     #     section : 字段名
  50.     #     ignore_caps : 忽略大小写(仅字段名)
  51.     #-------------------------------------------------------------------------
  52.     def read_note(section, ignore_caps = false)
  53.       result = ''
  54.       # 忽略大小写时,全部转大写
  55.       section.upcase! if ignore_caps
  56.       # 转symbol方便比较
  57.       s = section.to_sym
  58.       self.note.each_line{|line|
  59.         temp = line.split(/=/)
  60.         # 去掉干扰字符
  61.         temp.each {|i| i.strip!}
  62.         temp[0].upcase! if ignore_caps
  63.         if temp[0].to_sym == s
  64.           unless temp[1] == nil
  65.             result = temp[1]
  66.           end
  67.           # 如果希望同名字段值覆盖前面的字段,去掉下一行
  68.           break
  69.         end
  70.       }
  71.       return result
  72.     end
  73.   end
  74.   #=============================================================================
  75.   # ■ State
  76.   #=============================================================================
  77.   class State
  78.     #-------------------------------------------------------------------------
  79.     # ○ 读取rmvx备注栏指定字段
  80.     #     section : 字段名
  81.     #     ignore_caps : 忽略大小写(仅字段名)
  82.     #-------------------------------------------------------------------------
  83.     def read_note(section, ignore_caps = false)
  84.       result = ''
  85.       # 忽略大小写时,全部转大写
  86.       section.upcase! if ignore_caps
  87.       # 转symbol方便比较
  88.       s = section.to_sym
  89.       self.note.each_line{|line|
  90.         temp = line.split(/=/)
  91.         # 去掉干扰字符
  92.         temp.each {|i| i.strip!}
  93.         temp[0].upcase! if ignore_caps
  94.         if temp[0].to_sym == s
  95.           unless temp[1] == nil
  96.             result = temp[1]
  97.           end
  98.           # 如果希望同名字段值覆盖前面的字段,去掉下一行
  99.           break
  100.         end
  101.       }
  102.       return result
  103.     end
  104.   end

  105. end  
复制代码
有备注栏,功能可以更强大~(像广告了。。)

如果要不同职业 有不同回避 命中 完全可以自己建一个全局数组用来存放
自己多写一个def 来读取并且加入回避 命中的计算 就好了
作者: 精灵使者    时间: 2009-9-10 13:38
其实,可以使用“使角色装备空手”的办法,设计一个基本为空的东西(可惜是XP的)
然后在里面仔细设计即可。




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