设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2045|回复: 5
打印 上一主题 下一主题

[已经解决] 关于战斗结束后获得经验问题,共同升级

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
433 小时
注册时间
2010-5-13
帖子
116
跳转到指定楼层
1
发表于 2010-11-28 18:35:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 005020671 于 2010-11-28 19:26 编辑

想战斗结束后让所有队员都获得相同的经验,包括未参加的待机人员,这样的话新队员加入时能和主角经验、等级一样,就能使全队共同升级。
云之殇前辈说过在xp中实现的方法,
“战斗系统中战斗场景scene_battle2中的获得经验值部分改写为下面这个样子”
  1.     # 获得 EXP
  2.     for i in 1...150
  3.       actor = $game_actors[i]
  4.       if actor.cant_get_exp? == false     
  5.         last_level = actor.level
  6.         actor.exp += exp
  7.         if actor.level > last_level
  8.           @status_window.level_up(i)
  9.         end
  10.       end
  11.     end
复制代码
“就是讲数据库前150个编号的角色同时获得经验值,然后在事件获得经验上的处理也是一样把所有的人物经验全部都获得一遍,就是全部都得到一样的经验值,级数当然一样了,然后把def cant_get_exp?这个修改下,无论角色生死都可以获得经验,就可以了”
可是这个怎么样在vx中实现呢?????

Lv1.梦旅人

梦石
0
星屑
50
在线时间
466 小时
注册时间
2006-2-25
帖子
1863
2
发表于 2010-11-28 18:52:16 | 只看该作者
本帖最后由 诡异の猫 于 2010-11-28 18:56 编辑

VX里面的GAME_ACTOR类没cant_get_exp?这个方法啊
其实你的目的是什么?
就是要让新加入的队员等级和经验跟老队员一样?

如果是的话很容易实现,只是每个人的经验树都不一样
就算你获得的exp一样但肯定有人先升级有人慢升级的
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
433 小时
注册时间
2010-5-13
帖子
116
3
 楼主| 发表于 2010-11-28 18:57:05 | 只看该作者
本帖最后由 005020671 于 2010-11-28 19:07 编辑
诡异の猫 发表于 2010-11-28 18:52
VX里面的GAME_ACTOR类没cant_get_exp?这个方法啊
其实你的目的是什么?
就是要让新加入的队员等级和经验跟 ...


我知道VX里面的GAME_ACTOR类没cant_get_exp?这个方法,我在把那段代码加入vx战斗结束部分时把它给去掉了,可是也不行。。。。。。显示exe没有定义??
对啊,目的就是让新加入的队员等级和经验跟主角一样,经验树所有角色都设置成一样的就可以了啊,也就是整个游戏里我方所有人用一个等级,类是吞食天地那样。。。
前辈你能解决吗???先谢过啦。。。。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
466 小时
注册时间
2006-2-25
帖子
1863
4
发表于 2010-11-28 19:09:03 | 只看该作者
本帖最后由 诡异の猫 于 2010-11-28 19:17 编辑
  1. class Game_Party < Game_Unit
  2.   #--------------------------------------------------------------------------
  3.   # ● 队员加入
  4.   #     actor_id : 角色ID
  5.   #--------------------------------------------------------------------------
  6.   def add_actor(actor_id)
  7.     if @actors.size < MAX_MEMBERS and not @actors.include?(actor_id)
  8.       @actors.push(actor_id)
  9.       i = @actors.size - 1
  10.       members[i].change_level(members[0].level, false)
  11.       members[i].change_exp(members[0].exp, false)
  12.       members[i].recover_all
  13.       $game_player.refresh
  14.     end
  15.   end
  16. end
复制代码
插在main之前就行

不过用这种方法
如果1号角色在队伍中但是你还再次让1号角色加入队伍,并且你勾选了初始化  的话
1号角色数据会被还原
解决方法是不要勾选初始化- -

点评

不用谢  发表于 2010-11-28 19:24
可以拉。。谢谢前辈,没想到这么快就解决了,昨晚弄了半天都不行,谢啦。。。结贴了。。。  发表于 2010-11-28 19:22
太感谢谢啦,我试试啊。。。原来这样也可以啊。。。  发表于 2010-11-28 19:13
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
189 小时
注册时间
2009-12-15
帖子
343
5
发表于 2010-11-29 12:40:46 | 只看该作者
为什么不用事件解决?
第二部游戏 《求职大作战》http://rpg.blue/thread-165630-1-1.html
第一部游戏 《天宇传奇》http://rpg.blue/thread-140339-1-1.html
柳柳新人/进阶教程,视频全集 http://rpg.blue/thread-164472-1-1.html
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
433 小时
注册时间
2010-5-13
帖子
116
6
 楼主| 发表于 2010-11-29 13:28:10 | 只看该作者
如果人物较多的话,用事件岂不是没加入一个队员就要用一次事件,有点麻烦。
回复 支持 反对

使用道具 举报

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

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2025-1-14 04:02

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表