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

Project1

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

[已经过期] RMXP如何显示主角角色名字

[复制链接]

Lv1.梦旅人

梦石
0
星屑
85
在线时间
210 小时
注册时间
2013-7-26
帖子
346
跳转到指定楼层
1
发表于 2014-9-6 17:35:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
这里有显示事件名称的脚本,怎么显示主角的?绿色 宋体
  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.     [url=home.php?mod=space&uid=2631396]@character[/url] = 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
复制代码

Lv4.逐梦者

【欧皇】

梦石
3
星屑
2066
在线时间
1004 小时
注册时间
2013-8-19
帖子
3486

开拓者

2
发表于 2014-9-7 16:47:32 | 只看该作者
伸手党,问前搜
QQ:2223942063
Q群:365819625
贪吃方1.4
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-6 05:42

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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