查看: 1980|回复: 1

[已经过期] 请教制作学识等级方法

[复制链接]
梦石
0
星屑
1193
在线时间
5 小时
注册时间
2015-10-5
回帖
1
发表于 2015-10-6 23:22:22 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
本帖最后由 sarf01@163.com 于 2015-10-6 23:22 编辑

谢谢大神,请帮忙多多制作脚本。我想给孩子学习制作一个游戏。希望增加学识系统,知识经验增加才能升级学识等级,人物等级要小于学识等级。技能升级,需要学识等级,不知道有没有这样的参照范例(脚本学习中)。(新人)
QQ截图20151006231922.png
梦石
0
星屑
1232
在线时间
1017 小时
注册时间
2011-4-30
回帖
1464
发表于 2015-10-8 08:57:38 | 显示全部楼层
本帖最后由 汪汪 于 2015-10-8 08:59 编辑

额,这样好像只能讲原理吧........
点击展开/收起

Game_Actor中
  #--------------------------------------------------------------------------
  # ● 更改 EXP
  #     exp : 新的 EXP
  #--------------------------------------------------------------------------
  def exp=(exp)
    @exp = [[exp, 9999999].min, 0].max
    # 升级
    while @exp >= @exp_list[@level+1] and @exp_list[@level+1] > 0
      @level += 1
      # 学会特技
      for j in $data_classes[@class_id].learnings
        if j.level == @level
          learn_skill(j.skill_id)
        end
      end
    end
    # 降级
    while @exp < @exp_list[@level]
      @level -= 1
    end
    # 修正当前的 HP 与 SP 超过最大值
    @hp = [@hp, self.maxhp].min
    @sp = [@sp, self.maxsp].min
  end
  #--------------------------------------------------------------------------
  # ● 更改等级
  #     level : 新的等级
  #--------------------------------------------------------------------------
  def level=(level)
    # 检查上下限
    level = [[level, $data_actors[@actor_id].final_level].min, 1].max
    # 更改 EXP
    self.exp = @exp_list[level]
  end


是关于等级的,

  #--------------------------------------------------------------------------
  # ● 更改 EXP
  #     exp : 新的 EXP
  #--------------------------------------------------------------------------
  def exp=(exp)
    @exp = [[exp, 9999999].min, 0].max
    # 升级
    while @exp >= @exp_list[@level+1] and @exp_list[@level+1] > 0      #这里添加一个等级是否大于学识的判断就可以.
      @level += 1
      # 学会特技
      for j in $data_classes[@class_id].learnings
        if j.level == @level
          learn_skill(j.skill_id)
        end
      end
    end
    # 降级
    while @exp < @exp_list[@level]
      @level -= 1
    end
    # 修正当前的 HP 与 SP 超过最大值
    @hp = [@hp, self.maxhp].min
    @sp = [@sp, self.maxsp].min
  end
  #--------------------------------------------------------------------------
  # ● 更改等级
  #     level : 新的等级
  #--------------------------------------------------------------------------
  def level=(level)
        
#这里添加一个等级是否大于学识的判断就可以.
    # 检查上下限
    level = [[level, $data_actors[@actor_id].final_level].min, 1].max
    # 更改 EXP
    self.exp = @exp_list[level]
  end



回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部