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

Project1

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

[已经解决] 如何显示角色状态的名称?

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
15 小时
注册时间
2016-6-16
帖子
13
跳转到指定楼层
1
发表于 2016-9-16 16:34:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 hys111111 于 2016-9-16 19:11 编辑

   $game_party.actors[0].states  用这个显示角色的状态字符怎么显示出来的是状态序号,请问怎样才能显示名称?

Lv4.逐梦者

梦石
0
星屑
12157
在线时间
4435 小时
注册时间
2014-4-11
帖子
5955

开拓者

2
发表于 2016-9-16 16:50:58 | 只看该作者
$data_states[输入状态ID].name
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
380
在线时间
602 小时
注册时间
2014-5-8
帖子
699
3
发表于 2016-9-16 17:29:35 | 只看该作者
$data_states[$game_party.actors[0].states].name

点评

不行,提示两对中括号有错误,怎么解决?  发表于 2016-9-16 18:11

评分

参与人数 1星屑 -1 收起 理由
RyanBern -1 请检查你的代码

查看全部评分

回复 支持 0 反对 1

使用道具 举报

Lv3.寻梦者

双子人

梦石
0
星屑
3185
在线时间
3618 小时
注册时间
2009-4-4
帖子
4154

开拓者

4
发表于 2016-9-16 19:18:25 | 只看该作者
因为角色的状态是有多个的,所以:
  1. state_name = []
  2. for id in $game_party.actors[0].states
  3.   state_name.push($data_states[id].name)
  4. end
复制代码

state_name就是角色的状态名称

如果只想要第一个状态,那就这样:
  1. ($game_party.actors[0].states.size > 0 ? $data_states[$game_party.actors[0].states[0]].name : "")
复制代码
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
125
在线时间
171 小时
注册时间
2014-4-14
帖子
151
5
发表于 2016-9-17 10:13:26 | 只看该作者
本帖最后由 2357691704 于 2016-9-17 10:14 编辑

.name来显示角色的状态很多时候都不管用,建议修改game_actor。
$game_party.actors[同伴id].states_name 就可以显示了,同伴id是从0开始的。
RUBY 代码复制
  1. #==============================================================================
  2. # ■ Game_Actor
  3. #------------------------------------------------------------------------------
  4. #  处理角色的类。本类在 Game_Actors 类 ($game_actors)
  5. # 的内部使用、Game_Party 类请参考 ($game_party) 。
  6. #==============================================================================
  7.  
  8. class Game_Actor < Game_Battler
  9.   #--------------------------------------------------------------------------
  10.   # ● 定义实例变量
  11.   #--------------------------------------------------------------------------
  12.   attr_reader   :name                     # 名称
  13.   attr_reader   :character_name           # 角色 文件名
  14.   attr_reader   :character_hue            # 角色 色相
  15.   attr_reader   :class_id                 # 职业 ID
  16.   attr_reader   :weapon_id                # 武器 ID
  17.   attr_reader   :armor1_id                # 盾 ID
  18.   attr_reader   :armor2_id                # 头防具 ID
  19.   attr_reader   :armor3_id                # 身体体防具 ID
  20.   attr_reader   :armor4_id                # 装饰品 ID
  21.   attr_reader   :level                    # 等级
  22.   attr_reader   :exp                      # EXP
  23.   attr_reader   :skills                   # 特技
  24.   #--------------------------------------------------------------------------
  25.   # ● 初始化对像
  26.   #     actor_id : 角色 ID
  27.   #--------------------------------------------------------------------------
  28.   def initialize(actor_id)
  29.     super()
  30.     setup(actor_id)
  31.   end
  32.   #--------------------------------------------------------------------------
  33.   # ● 设置
  34.   #     actor_id : 角色 ID
  35.   #--------------------------------------------------------------------------
  36.   def setup(actor_id)
  37.     actor = $data_actors[actor_id]
  38.     @actor_id = actor_id
  39.     @name = actor.name
  40.     @character_name = actor.character_name
  41.     @character_hue = actor.character_hue
  42.     @battler_name = actor.battler_name
  43.     @battler_hue = actor.battler_hue
  44.     @class_id = actor.class_id
  45.     @weapon_id = actor.weapon_id
  46.     @armor1_id = actor.armor1_id
  47.     @armor2_id = actor.armor2_id
  48.     @armor3_id = actor.armor3_id
  49.     @armor4_id = actor.armor4_id
  50.     @level = actor.initial_level
  51.     @exp_list = Array.new(101)
  52.     make_exp_list
  53.     @exp = @exp_list[@level]
  54.     @skills = []
  55.     @hp = maxhp
  56.     @sp = maxsp
  57.     @states = []
  58.     #************************************************
  59.     @states_name = ""
  60.     #************************************************
  61.     @states_turn = {}
  62.     @maxhp_plus = 0
  63.     @maxsp_plus = 0
  64.     @str_plus = 0
  65.     @dex_plus = 0
  66.     @agi_plus = 0
  67.     @int_plus = 0
  68.     # 学会特技
  69.     for i in 1..@level
  70.       for j in $data_classes[@class_id].learnings
  71.         if j.level == i
  72.           learn_skill(j.skill_id)
  73.         end
  74.       end
  75.     end
  76.     # 刷新自动状态
  77.     update_auto_state(nil, $data_armors[@armor1_id])
  78.     update_auto_state(nil, $data_armors[@armor2_id])
  79.     update_auto_state(nil, $data_armors[@armor3_id])
  80.     update_auto_state(nil, $data_armors[@armor4_id])
  81.   end
  82.   #-------------------------------------------------------------------------
  83.   # ● 设置状态名称*********************************************************
  84.   #-------------------------------------------------------------------------
  85.   def states_name
  86.     for i in @states
  87.      case i
  88.      when 1
  89.       name = "死亡"
  90.       when 2
  91.       name = "眩晕"
  92.       when 3
  93.       name = "中毒"
  94.       when 4
  95.       name = "幻惑"
  96.       when 5
  97.       name = ""
  98.       when 6
  99.       name = ""
  100.       when 7
  101.       name = ""
  102.       when 8
  103.       name = ""
  104.       when 9
  105.       name = ""
  106.       when 10
  107.       name = ""
  108.       when 11
  109.       name = ""
  110.       when 12
  111.       name = ""
  112.       when 13
  113.       name = ""
  114.       when 14
  115.       name = ""
  116.       when 15
  117.       name = ""
  118.       when 16
  119.       name = ""
  120.       when 17
  121.       name = ""
  122.       when 18
  123.       name = ""
  124.       when 19
  125.       name = ""
  126.       when 20
  127.       name = ""
  128.     end
  129.     end
  130.     return name
  131.   end
  132.   #--------------------------------------------------------------------------
  133.  
  134.  
  135.   #--------------------------------------------------------------------------
  136.   # ● 获取角色 ID
  137.   #--------------------------------------------------------------------------
  138.   def id
  139.     return @actor_id
  140.   end

点评

请参考2L和4L的回复。  发表于 2016-9-17 23:44

评分

参与人数 1星屑 +200 收起 理由
RyanBern + 200 建议参考2L,4L,虽然楼主认可你了。.

查看全部评分

Vanyogin
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-27 00:49

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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