| 赞 | 0  | 
 
| VIP | 0 | 
 
| 好人卡 | 0 | 
 
| 积分 | 1 | 
 
| 经验 | 12421 | 
 
| 最后登录 | 2016-8-14 | 
 
| 在线时间 | 322 小时 | 
 
 
 
 
 
Lv1.梦旅人 
	- 梦石
 - 0 
 
        - 星屑
 - 50 
 
        - 在线时间
 - 322 小时
 
        - 注册时间
 - 2011-6-24
 
        - 帖子
 - 274
 
 
 
 | 
	
这代码哪有问题, 为什么NPC能显示名字 而角色却显示不出来- #==============================================================================
 
 - # ■ Sprite_Character
 
 - #------------------------------------------------------------------------------
 
 - #  角色显示用脚本。监视 Game_Character 类的实例、
 
 - # 自动变化脚本状态。
 
 - #==============================================================================
 
  
- class Sprite_Character < RPG::Sprite
 
 -   #--------------------------------------------------------------------------
 
 -   # ● 定义实例变量
 
 -   #--------------------------------------------------------------------------
 
 -   attr_accessor :character                # 角色
 
 -   #--------------------------------------------------------------------------
 
 -   # ● 初始化对像
 
 -   #     viewport  : 查看端口
 
 -   #     character : 角色 (Game_Character)
 
 -   #--------------------------------------------------------------------------
 
 -   def initialize(viewport, character = nil)
 
 -     super(viewport)
 
 -     @character = character
 
 -     # 事件显示名字脚本加强★★★★★★★★★★★★★★★★★★★★★★★★★
 
 -     name = character.name
 
 -     @namesprite = Sprite.new(viewport)
 
 -     @namesprite.bitmap = Bitmap.new(160, 48)
 
 -     @namesprite.bitmap.font.name = "宋体"
 
 -     @namesprite.bitmap.font.size = 16
 
 -     @namesprite.bitmap.font.color.set(255, 250, 0, 255)      # 黄色
 
 -     @evname = name
 
 -     @evname_split = name.split(/,/)[0]
 
 -     if name.split(/,/)[1] != nil
 
 -       case name.split(/,/)[1]
 
 -       when "0"
 
 -         @namesprite.bitmap.font.color.set(60, 255, 80, 255)  # 绿色
 
 -       when "1"
 
 -         @namesprite.bitmap.font.color.set(190, 130, 0, 255)  # 橙色
 
 -       when "2"
 
 -         @namesprite.bitmap.font.color.set(0, 120, 210, 255)  # 蓝色
 
 -       when "3"
 
 -         @namesprite.bitmap.font.color.set(255, 0, 50, 255)   # 红色
 
 -       end
 
 -     end
 
 -     if @evname_split != "" and @evname_split != nil and not $game_temp.in_battle
 
 -       @namesprite.bitmap.draw_text(0, 0, 160, 36, @evname_split, 1)
 
 -     end
 
 -     # 事件显示名字脚本加强★★★★★★★★★★★★★★★★★★★★★★★★★
 
 -     update
 
 -   end
 
 -   #--------------------------------------------------------------------------
 
 -   # ● 更新画面
 
 -   #--------------------------------------------------------------------------
 
 -   def update
 
 -     super
 
 -     # 事件显示名字脚本加强★★★★★★★★★★★★★★★★★★★★★★★★★
 
 -     if @evname != @character.name
 
 -       @namesprite.bitmap.clear
 
 -     end
 
 -     @namesprite.x = self.x - 80    # 显示坐标
 
 -     @namesprite.y = self.y - self.oy - 24 + 130  # 显示坐标
 
 -     # 元件 ID、文件名、色相与现在的情况存在差异的情况下
 
 -     if @tile_id != @character.tile_id or
 
 -        @character_name != @character.character_name or
 
 -        @character_hue != @character.character_hue
 
 -       # 记忆元件 ID 与文件名、色相
 
 -       @tile_id = @character.tile_id
 
 -       @character_name = @character.character_name
 
 -       @character_hue = @character.character_hue
 
 -       # 元件 ID 为有效值的情况下
 
 -       if @tile_id >= 384
 
 -         self.bitmap = RPG::Cache.tile($game_map.tileset_name,
 
 -           @tile_id, @character.character_hue)
 
 -         self.src_rect.set(0, 0, 32, 32)
 
 -         self.ox = 16
 
 -         self.oy = 32
 
 -       # 元件 ID 为无效值的情况下
 
 -       else
 
 -         self.bitmap = RPG::Cache.character(@character.character_name,
 
 -           @character.character_hue)
 
 -         # 素材处理★★★★★★★★★★★★★★★★★★★★★★★★★★★
 
 -         # 需要使用特殊的素材文件名为识别处理的情况时!列如:
 
 -         # 当素材文件名为“场所移动”时,对该素材处理方法
 
 -         if @character_name == "场所移动"  
 
 -           @cw = bitmap.width / 19
 
 -           @ch = bitmap.height
 
 -         # 除此以外,其他素材和角色行走图等素材的处理  
 
 -         else    
 
 -           @cw = bitmap.width / 8
 
 -           @ch = bitmap.height / 8
 
 -         end
 
 -         # ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★   
 
 -         self.ox = @cw / 2
 
 -         self.oy = @ch
 
 -       end
 
 -     end
 
 -     # 设置可视状态
 
 -     self.visible = (not @character.transparent)
 
 -     # 图形是角色的情况下
 
 -     if @tile_id == 0
 
 -       # 设置传送目标的矩形
 
 -       sx = @character.pattern * @cw
 
 -       # 八向素材处理★★★★★★★★★★★★★★★★★★★★★★★★★★★
 
 -       # 需要使用特殊的素材文件名为识别处理的情况时!列如:
 
 -         if @character_name == "场所移动"  
 
 -           sy = 0 * @ch
 
 -         else
 
 -           case @character.direction
 
 -           when 2
 
 -             sy = 0 * @ch   #  下
 
 -           when 4
 
 -             sy = 1 * @ch   #  左
 
 -           when 6
 
 -             sy = 2 * @ch   #  右
 
 -           when 8
 
 -             sy = 3 * @ch   #  上
 
 -           when 1
 
 -             sy = 4 * @ch   #  左下
 
 -           when 3
 
 -             sy = 5 * @ch   #  右下
 
 -           when 7
 
 -             sy = 6 * @ch   #  左上
 
 -           when 9
 
 -             sy = 7 * @ch   #  右上
 
 -           end
 
 -         end
 
 -       # ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
 
 -       self.src_rect.set(sx, sy, @cw, @ch)
 
 -     end
 
 -     # 设置脚本的坐标
 
 -     self.x = @character.screen_x
 
 -     self.y = @character.screen_y
 
 -     self.z = @character.screen_z(@ch)
 
 -     # 设置不透明度、合成方式、茂密
 
 -     self.opacity = @character.opacity
 
 -     self.blend_type = @character.blend_type
 
 -     self.bush_depth = @character.bush_depth
 
 -     # 动画
 
 -     if @character.animation_id != 0
 
 -       animation = $data_animations[@character.animation_id]
 
 -       animation(animation, true)
 
 -       @character.animation_id = 0
 
 -     end
 
 -   end
 
 -   def dispose
 
 -     super
 
 -     unless @namesprite.disposed?
 
 -       @namesprite.bitmap.dispose
 
 -       @namesprite.dispose
 
 -     end
 
 -   end
 
 - end
 
 
  复制代码 我插入过其他的角色名显示脚本  能显示 但是有些冲突  求高手指点 |   
 
 
 
 |