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

Project1

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

[已经解决] 如何判断是哪一个角色升级?

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
189 小时
注册时间
2009-12-15
帖子
343
跳转到指定楼层
1
发表于 2011-3-19 20:21:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 terry_zhp 于 2011-3-19 21:52 编辑

最近在做SLG游戏,想做一个类似火焰纹章的升级随机加点,经过搜索后打算在Game_Actor的@level += 1那一行后面增加判断。
具体如下:
首先判断是哪一个角色升级,然后再对应生成随机数进行加点。由于不同角色成长不同,所以判断哪个角色升级很重要,我是打算这样写的
if ?????? == 1
  $game_actors[1].maxhp += rand(5)
  $game_actors[1].maxmp += rand(3)
  $game_actors[1].atk += rand(5)
  $game_actors[1].def += rand(3)
  .......
end
问题是写不出怎样判断是哪一个角色升级,或是有其他更好的方法,望赐教~~
第二部游戏 《求职大作战》http://rpg.blue/thread-165630-1-1.html
第一部游戏 《天宇传奇》http://rpg.blue/thread-140339-1-1.html
柳柳新人/进阶教程,视频全集 http://rpg.blue/thread-164472-1-1.html

Lv2.观梦者

花开堪折直须折

梦石
0
星屑
681
在线时间
943 小时
注册时间
2010-7-17
帖子
4963

贵宾

2
发表于 2011-3-19 21:14:22 | 只看该作者
如果是在脚本里的话(记得好像是game_actor里有升级的情况下?)
用@actor来表示。
大家好,我叫节操,有一天,我被吃了。
http://forever-dream.5d6d.com
永恒の梦制作组论坛

129993099
永恒の梦制作组QQ群
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
189 小时
注册时间
2009-12-15
帖子
343
3
 楼主| 发表于 2011-3-19 21:46:42 | 只看该作者
本帖最后由 terry_zhp 于 2011-3-19 21:52 编辑

回复 冰舞蝶恋 的帖子

我把那一段改成这样:
  1.   def level_up
  2.     @level += 1
  3.     if @actor_id == 1
  4.       $game_actors[1].maxhp += rand(5)
  5.       $game_actors[1].maxmp += rand(3)
  6.       $game_actors[1].atk += rand(5)
  7.       $game_actors[1].def += rand(3)
  8.     end
  9.     for learning in self.class.learnings
  10.       learn_skill(learning.skill_id) if learning.level == @level
  11.     end
  12.   end
复制代码
然后在事件中使全体同伴升级,就成功了,谢谢哈~

点评

对了,要说明仅个人建议,也许LZ有自己的想法需要这样的设定也是很有可能的哦.........  发表于 2011-3-19 22:49
rand(5)是从0-4中随机选取吧,我觉得前面的数字小点,后面再+点,比如rand(3)+2这样,可以保证主属性最少有2点,要是随机加主要属性+0不是很悲剧  发表于 2011-3-19 22:48
第二部游戏 《求职大作战》http://rpg.blue/thread-165630-1-1.html
第一部游戏 《天宇传奇》http://rpg.blue/thread-140339-1-1.html
柳柳新人/进阶教程,视频全集 http://rpg.blue/thread-164472-1-1.html
回复 支持 反对

使用道具 举报

Lv2.观梦者

花开堪折直须折

梦石
0
星屑
681
在线时间
943 小时
注册时间
2010-7-17
帖子
4963

贵宾

4
发表于 2011-3-19 21:50:34 | 只看该作者
直接用
    $game_actors[@actor].maxhp += rand(5)
       $game_actors[@actor].maxmp += rand(3)
       $game_actors[@actor].atk += rand(5)
       $game_actors[@actor].def += rand(3)
吧?

点评

这样不太好,因为不同角色我需要设定不同的成长率,已解决了,见上帖,谢~  发表于 2011-3-19 21:54
大家好,我叫节操,有一天,我被吃了。
http://forever-dream.5d6d.com
永恒の梦制作组论坛

129993099
永恒の梦制作组QQ群
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1352
在线时间
676 小时
注册时间
2009-11-11
帖子
2790
5
发表于 2011-3-19 21:52:41 | 只看该作者
@actor编号好象是从0开始

试试 @actor == 0

点评

- -这种事都有~~~  发表于 2011-3-20 10:29
早呢,呵呵~~崩溃了,刚才明明弄好了,看了部电影回来发现点又加不上去了···········  发表于 2011-3-19 23:47
客气,客气,哎呀,阁下又要出作品~  发表于 2011-3-19 21:55
角色的是从1开始,队伍的是从0开始,同谢~  发表于 2011-3-19 21:54

嘿。嘿。嘿
回复 支持 反对

使用道具 举报

Lv2.观梦者

花开堪折直须折

梦石
0
星屑
681
在线时间
943 小时
注册时间
2010-7-17
帖子
4963

贵宾

6
发表于 2011-3-19 21:53:43 | 只看该作者
啊对了,咱错了,是@actor_id
大家好,我叫节操,有一天,我被吃了。
http://forever-dream.5d6d.com
永恒の梦制作组论坛

129993099
永恒の梦制作组QQ群
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-28 21:55

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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