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

Project1

 找回密码
 注册会员
搜索
楼主: rpg549007821
打印 上一主题 下一主题

[已经解决] 如何设置部分人物不可升级

[复制链接]

Lv4.逐梦者

梦石
8
星屑
2832
在线时间
474 小时
注册时间
2010-9-11
帖子
519
11
发表于 2010-11-8 23:05:01 | 只看该作者
把你不让他升级的任务放初始等级99,他怎么升?
Paku
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
206 小时
注册时间
2010-8-15
帖子
98
12
发表于 2010-11-8 23:25:49 | 只看该作者
lz想要的效果,應該是從lv1到某個lv因劇情需要停下來,

完成劇情後,那角色還是會升等的那種

可以設定多個一樣的角色之後用變數…當a的level是n時,b的level也是n

代入之後,那個b是固定等級,劇情完成再回到a…是這樣嗎
世界不會因為多了一個朋友而變大,
更不會少了一個朋友而變少。
欲求別人改變是愚昧,讓自己精益求精才是真諦。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
66 小时
注册时间
2009-2-13
帖子
382
13
发表于 2010-11-9 13:00:24 | 只看该作者
本帖最后由 38571240 于 2010-11-9 13:09 编辑

如果LZ定义部分人物从加入队伍或开始游戏起就不可升级,请结合6L+9L的做法,将等级上限的部分判断去掉,如:
  1. if class_id == 10
  2.          break
  3. else
  4.          level_up
  5. end
复制代码
这样无论人物设置多少初始等级,只要是给他10号职业(可以自行设定if class_id == 职业ID)都不会升级了,当然,你可以复制职业,这样想解除升级限制时,就悄悄地转成复制的职业,这样显示出的职业属性技能都不会变,而可以继续升级。
确切地说10号职业只是得不到经验了,如果有此人出入队伍的情况,直接用事件分配和主角对应的等级就可以了。

本来不用加以说明,不过如果LZ用到这种情况,还是说明一下的好,问题解决的话请给6L的同学分确认。
回复 支持 1 反对 0

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
951
在线时间
1685 小时
注册时间
2009-7-25
帖子
534

开拓者

14
发表于 2010-11-9 13:16:12 | 只看该作者
本帖最后由 烁灵 于 2010-11-9 13:16 编辑

可不可以在def change_exp(exp, show)里直接if name =="拉尔夫"就return?
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
115 小时
注册时间
2010-5-3
帖子
346
15
发表于 2010-11-10 11:07:15 | 只看该作者
回复 rpg549007821 的帖子

貌似楼主早上6点发帖,真是厉害啊,言归正传,楼主想要的是让部分人物能力升级不涨是吧,这样的话只要把那部分人物的能力在数据库里面调整一下了。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
180
在线时间
829 小时
注册时间
2010-6-26
帖子
671
16
发表于 2010-11-12 09:36:01 | 只看该作者
又找到一个脚本,让附加某状态的主角得不到经验值
  1. #===============================================================================
  2. # No Actor EXP Snippet
  3. # By Jet10985 (Jet)
  4. # Help by: OriginalWij
  5. #===============================================================================
  6. # This snippet allows you to define actors throughout the game that will not
  7. # gain exp AT ALL. Note: They can still level up trough the event command.
  8. # This script has: 1 customization option.
  9. #===============================================================================
  10. # Overwritten Methods:
  11. # None
  12. #-------------------------------------------------------------------------------
  13. # Aliased methods:
  14. # Game_Actor: change_exp
  15. # Game_System: initialize
  16. #===============================================================================
  17. =begin

  18. Adding Actors:
  19. To add Actors to the list of actors that don't gain exp use:

  20. no_exp_gain(actor)

  21. where actor is the id of the actor you don't want gaining exp.

  22. Removing Actors:
  23. To allow an actor to gain exp again, use:

  24. yes_exp_gain(actor)

  25. where actor is the id of the actor you want to gain exp again.
  26. =end

  27. module NoActorEXP
  28.   
  29.   # These are actors that will not gain exp by default. They
  30.   # can be removed from here by using the yes_exp_gain(actor)
  31.   NO_ACTOR_EXP = [6, 7, 8]
  32.   
  33.   NO_EXP_STATE = 17 # A state that will prevent exp gain until cured.
  34.                      
  35. end

  36. #===============================================================================
  37. # DON'T EDIT FURTHER UNLESS YOU KNOW WHAT TO DO.
  38. #===============================================================================
  39. class Game_Actor
  40.   
  41.   include NoActorEXP
  42.   
  43.   alias jet1999_change_exp change_exp unless $@
  44.   def change_exp(exp, show)
  45.     if NO_ACTOR_EXP != nil
  46.       jet1999_change_exp(exp, show) unless $game_system.no_exp_actors.include?(@actor_id) || @states.include?(NO_EXP_STATE)
  47.     end
  48.   end
  49. end

  50. class Game_System
  51.   
  52.   include NoActorEXP
  53.   
  54.   attr_accessor :no_exp_actors
  55.   
  56.   alias jet1092_initialize initialize unless $@
  57.   def initialize
  58.     jet1092_initialize
  59.     @no_exp_actors = NO_ACTOR_EXP.clone
  60.   end
  61. end

  62. class Game_Interpreter
  63.   
  64.   include NoActorEXP
  65.   
  66.   def no_exp_gain(actor)
  67.     $game_system.no_exp_actors.push(actor) unless $game_system.no_exp_actors.include?(actor)
  68.   end
  69.   
  70.   def yes_exp_gain(actor)
  71.     $game_system.no_exp_actors.delete(actor) if $game_system.no_exp_actors.include?(actor)
  72.   end
  73. end

  74. unless $engine_scripts.nil?
  75.   JetEngine.active("No Actor EXP", 1.1)
  76. end
复制代码

评分

参与人数 1星屑 +700 收起 理由
夕阳武士 + 700 认可答案

查看全部评分

新手们!不要被看扁了!我们也会用论坛搜索,我们也会自己找脚本,我们也会自己点击关闭按钮旁边的小问号!
回复 支持 反对

使用道具 举报

Lv1.梦旅人

巫女会长

梦石
0
星屑
60
在线时间
1028 小时
注册时间
2009-10-24
帖子
3470

贵宾

17
发表于 2010-11-12 10:31:37 | 只看该作者
lz你还是把情况说清楚一点吧,你看大家都靠猜测在找解决的办法,到底是起始就不能升级还是到某个特定等级后无法继续升级,差别可是很大的
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
72 小时
注册时间
2010-9-10
帖子
44
18
发表于 2010-11-12 11:31:31 | 只看该作者
夕阳武士 发表于 2010-11-8 22:14
我觉得还是我的方法最好~都没有怪物可以加你的经验上哪里升级呢?

- -人家只要部分人物不升级- -你这样不是全队伍都不能升级了么- -

点评

请问你是怎么知道的?  发表于 2010-11-12 12:30
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
49
在线时间
469 小时
注册时间
2010-8-23
帖子
493
19
 楼主| 发表于 2010-11-12 22:11:33 | 只看该作者
16楼的方法好,我立刻结贴。

点评

同志,结贴请修改主楼标签为“已经解决”,谢谢  发表于 2010-11-12 22:21
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
49
在线时间
469 小时
注册时间
2010-8-23
帖子
493
20
 楼主| 发表于 2010-11-12 22:11:42 | 只看该作者
16楼的方法好,我立刻结贴。

评分

参与人数 1星屑 -20 收起 理由
夕阳武士 -20 连贴= =

查看全部评分

回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-21 21:19

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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