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

Project1

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

[已经过期] 神剑晴天2脚本了 角色名显示不出来

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
322 小时
注册时间
2011-6-24
帖子
274
跳转到指定楼层
1
发表于 2012-4-17 20:08:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这代码哪有问题, 为什么NPC能显示名字 而角色却显示不出来
  1. #==============================================================================
  2. # ■ Sprite_Character
  3. #------------------------------------------------------------------------------
  4. #  角色显示用脚本。监视 Game_Character 类的实例、
  5. # 自动变化脚本状态。
  6. #==============================================================================

  7. class Sprite_Character < RPG::Sprite
  8.   #--------------------------------------------------------------------------
  9.   # ● 定义实例变量
  10.   #--------------------------------------------------------------------------
  11.   attr_accessor :character                # 角色
  12.   #--------------------------------------------------------------------------
  13.   # ● 初始化对像
  14.   #     viewport  : 查看端口
  15.   #     character : 角色 (Game_Character)
  16.   #--------------------------------------------------------------------------
  17.   def initialize(viewport, character = nil)
  18.     super(viewport)
  19.     @character = character
  20.     # 事件显示名字脚本加强★★★★★★★★★★★★★★★★★★★★★★★★★
  21.     name = character.name
  22.     @namesprite = Sprite.new(viewport)
  23.     @namesprite.bitmap = Bitmap.new(160, 48)
  24.     @namesprite.bitmap.font.name = "宋体"
  25.     @namesprite.bitmap.font.size = 16
  26.     @namesprite.bitmap.font.color.set(255, 250, 0, 255)      # 黄色
  27.     @evname = name
  28.     @evname_split = name.split(/,/)[0]
  29.     if name.split(/,/)[1] != nil
  30.       case name.split(/,/)[1]
  31.       when "0"
  32.         @namesprite.bitmap.font.color.set(60, 255, 80, 255)  # 绿色
  33.       when "1"
  34.         @namesprite.bitmap.font.color.set(190, 130, 0, 255)  # 橙色
  35.       when "2"
  36.         @namesprite.bitmap.font.color.set(0, 120, 210, 255)  # 蓝色
  37.       when "3"
  38.         @namesprite.bitmap.font.color.set(255, 0, 50, 255)   # 红色
  39.       end
  40.     end
  41.     if @evname_split != "" and @evname_split != nil and not $game_temp.in_battle
  42.       @namesprite.bitmap.draw_text(0, 0, 160, 36, @evname_split, 1)
  43.     end
  44.     # 事件显示名字脚本加强★★★★★★★★★★★★★★★★★★★★★★★★★
  45.     update
  46.   end
  47.   #--------------------------------------------------------------------------
  48.   # ● 更新画面
  49.   #--------------------------------------------------------------------------
  50.   def update
  51.     super
  52.     # 事件显示名字脚本加强★★★★★★★★★★★★★★★★★★★★★★★★★
  53.     if @evname != @character.name
  54.       @namesprite.bitmap.clear
  55.     end
  56.     @namesprite.x = self.x - 80    # 显示坐标
  57.     @namesprite.y = self.y - self.oy - 24 + 130  # 显示坐标
  58.     # 元件 ID、文件名、色相与现在的情况存在差异的情况下
  59.     if @tile_id != @character.tile_id or
  60.        @character_name != @character.character_name or
  61.        @character_hue != @character.character_hue
  62.       # 记忆元件 ID 与文件名、色相
  63.       @tile_id = @character.tile_id
  64.       @character_name = @character.character_name
  65.       @character_hue = @character.character_hue
  66.       # 元件 ID 为有效值的情况下
  67.       if @tile_id >= 384
  68.         self.bitmap = RPG::Cache.tile($game_map.tileset_name,
  69.           @tile_id, @character.character_hue)
  70.         self.src_rect.set(0, 0, 32, 32)
  71.         self.ox = 16
  72.         self.oy = 32
  73.       # 元件 ID 为无效值的情况下
  74.       else
  75.         self.bitmap = RPG::Cache.character(@character.character_name,
  76.           @character.character_hue)
  77.         # 素材处理★★★★★★★★★★★★★★★★★★★★★★★★★★★
  78.         # 需要使用特殊的素材文件名为识别处理的情况时!列如:
  79.         # 当素材文件名为“场所移动”时,对该素材处理方法
  80.         if @character_name == "场所移动"  
  81.           @cw = bitmap.width / 19
  82.           @ch = bitmap.height
  83.         # 除此以外,其他素材和角色行走图等素材的处理  
  84.         else   
  85.           @cw = bitmap.width / 8
  86.           @ch = bitmap.height / 8
  87.         end
  88.         # ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★   
  89.         self.ox = @cw / 2
  90.         self.oy = @ch
  91.       end
  92.     end
  93.     # 设置可视状态
  94.     self.visible = (not @character.transparent)
  95.     # 图形是角色的情况下
  96.     if @tile_id == 0
  97.       # 设置传送目标的矩形
  98.       sx = @character.pattern * @cw
  99.       # 八向素材处理★★★★★★★★★★★★★★★★★★★★★★★★★★★
  100.       # 需要使用特殊的素材文件名为识别处理的情况时!列如:
  101.         if @character_name == "场所移动"  
  102.           sy = 0 * @ch
  103.         else
  104.           case @character.direction
  105.           when 2
  106.             sy = 0 * @ch   #  下
  107.           when 4
  108.             sy = 1 * @ch   #  左
  109.           when 6
  110.             sy = 2 * @ch   #  右
  111.           when 8
  112.             sy = 3 * @ch   #  上
  113.           when 1
  114.             sy = 4 * @ch   #  左下
  115.           when 3
  116.             sy = 5 * @ch   #  右下
  117.           when 7
  118.             sy = 6 * @ch   #  左上
  119.           when 9
  120.             sy = 7 * @ch   #  右上
  121.           end
  122.         end
  123.       # ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
  124.       self.src_rect.set(sx, sy, @cw, @ch)
  125.     end
  126.     # 设置脚本的坐标
  127.     self.x = @character.screen_x
  128.     self.y = @character.screen_y
  129.     self.z = @character.screen_z(@ch)
  130.     # 设置不透明度、合成方式、茂密
  131.     self.opacity = @character.opacity
  132.     self.blend_type = @character.blend_type
  133.     self.bush_depth = @character.bush_depth
  134.     # 动画
  135.     if @character.animation_id != 0
  136.       animation = $data_animations[@character.animation_id]
  137.       animation(animation, true)
  138.       @character.animation_id = 0
  139.     end
  140.   end
  141.   def dispose
  142.     super
  143.     unless @namesprite.disposed?
  144.       @namesprite.bitmap.dispose
  145.       @namesprite.dispose
  146.     end
  147.   end
  148. end
复制代码
我插入过其他的角色名显示脚本  能显示 但是有些冲突  求高手指点

Lv1.梦旅人

虱子

梦石
0
星屑
121
在线时间
1782 小时
注册时间
2010-6-19
帖子
3597
2
发表于 2012-4-20 17:21:18 | 只看该作者
  1. class Game_Player
  2.   def name
  3.     return $game_party.actors[0].nil? ? "" : $game_party.actors[0].name
  4.   end
  5. end
复制代码

点评

斗罗大陆漫画 www.jinjidejuren.tv/doupocangqiong/  发表于 2014-5-5 22:50

http://rpg.blue/thread-175056-1-2.html
PVZ型塔防物一个
http://rpg.blue/thread-155199-1-2.html
RMXP技术讨论区手动认可帖,得到答案请认可
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
322 小时
注册时间
2011-6-24
帖子
274
3
 楼主| 发表于 2012-4-20 23:51:33 手机端发表。 | 只看该作者
Wind2010 发表于 2012-4-20 17:21

脚本加在哪,我式了下,好像没反应……
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-27 02:17

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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