Project1

标题: 这个namepop 的名字脚本怎么改颜色呀?用\C[2]之类的无效 [打印本页]

作者: asddsa16085    时间: 2024-1-21 12:47
标题: 这个namepop 的名字脚本怎么改颜色呀?用\C[2]之类的无效
  1. #==============================================================================
  2. # ★ RGSS3_ネームポップ Ver1.1
  3. #==============================================================================
  4. =begin

  5. 作者:tomoaky
  6. webサイト:ひきも記 (http://hikimoki.sakura.ne.jp/)

  7. イベント名かイベント実行内容の先頭に『注釈』コマンドで
  8. <namepop 文字列>
  9. と記述してください。
  10. イベントキャラクターの頭上に文字列が表示されます。

  11. イベント名で指定した場合はイベント全ページに適用されますが、
  12. 優先度は注釈コマンドの方が高くなっています。

  13. 文字を消したい場合は <namepop none> としてください。

  14. 2011.12.16  Ver1.1
  15.   ・フォントの縁取り不透明度を設定項目に追加

  16. 2011.12.15  Ver1.0
  17.   公開

  18. =end

  19. #==============================================================================
  20. # □ 設定項目
  21. #==============================================================================
  22. module TMNPOP
  23.   FONT_SIZE = 14          # フォントサイズ
  24.   FONT_OUT_ALPHA = 255    # フォントの縁取り不透明度
  25. end

  26. #==============================================================================
  27. # ■ Game_Character
  28. #==============================================================================
  29. class Game_Character
  30.   #--------------------------------------------------------------------------
  31.   # ● 公開インスタンス変数
  32.   #--------------------------------------------------------------------------
  33.   attr_accessor :namepop                  # ポップアップテキスト
  34.   #--------------------------------------------------------------------------
  35. end

  36. #==============================================================================
  37. # ■ Game_Event
  38. #==============================================================================
  39. class Game_Event < Game_Character
  40.   #--------------------------------------------------------------------------
  41.   # ● イベントページの設定をセットアップ
  42.   #--------------------------------------------------------------------------
  43.   alias tmnpop_game_event_setup_page_settings setup_page_settings
  44.   def setup_page_settings
  45.     tmnpop_game_event_setup_page_settings
  46.     if @list
  47.       @namepop = $1 if /<namepop\s*(\S+?)>/i =~ @event.name
  48.       @list.each do |list|
  49.         if list.code == 108 || list.code == 408
  50.           @namepop = $1 if /<namepop\s*(\S+?)>/i =~ list.parameters[0]
  51.         else
  52.           break
  53.         end
  54.       end
  55.     end
  56.   end
  57. end

  58. #==============================================================================
  59. # ■ Sprite_Character
  60. #==============================================================================
  61. class Sprite_Character < Sprite_Base
  62.   #--------------------------------------------------------------------------
  63.   # ● 解放
  64.   #--------------------------------------------------------------------------
  65.   alias tmnpop_sprite_character_dispose dispose
  66.   def dispose
  67.     dispose_namepop
  68.     tmnpop_sprite_character_dispose
  69.   end
  70.   #--------------------------------------------------------------------------
  71.   # ● フレーム更新
  72.   #--------------------------------------------------------------------------
  73.   alias tmnpop_sprite_character_update update
  74.   def update
  75.     tmnpop_sprite_character_update
  76.     update_namepop
  77.     if @character.namepop != @namepop
  78.       @namepop = @character.namepop
  79.       start_namepop
  80.     end
  81.   end
  82.   #--------------------------------------------------------------------------
  83.   # ○ namepopの開始
  84.   #--------------------------------------------------------------------------
  85.   def start_namepop
  86.     dispose_namepop
  87.     return if @namepop == "none" || @namepop == nil
  88.     @namepop_sprite = ::Sprite.new(viewport)
  89.     h = TMNPOP::FONT_SIZE + 4
  90.     @namepop_sprite.bitmap = Bitmap.new(h * 10, h)
  91.     @namepop_sprite.bitmap.font.size = TMNPOP::FONT_SIZE
  92.     @namepop_sprite.bitmap.font.out_color.alpha = TMNPOP::FONT_OUT_ALPHA
  93.     @namepop_sprite.bitmap.draw_text(0, 0, h * 10, h, @namepop, 1)
  94.     @namepop_sprite.ox = h * 5
  95.     @namepop_sprite.oy = h
  96.     update_namepop
  97.   end
  98.   #--------------------------------------------------------------------------
  99.   # ○ namepopの更新
  100.   #--------------------------------------------------------------------------
  101.   def update_namepop
  102.     if @namepop_sprite
  103.       @namepop_sprite.x = x
  104.       @namepop_sprite.y = y - height
  105.       @namepop_sprite.z = z + 200
  106.     end
  107.   end
  108.   #--------------------------------------------------------------------------
  109.   # ○ namepopの解放
  110.   #--------------------------------------------------------------------------
  111.   def dispose_namepop
  112.     if @namepop_sprite
  113.       @namepop_sprite.bitmap.dispose
  114.       @namepop_sprite.dispose
  115.       @namepop_sprite = nil
  116.     end
  117.   end
  118. end
复制代码

作者: alexncf125    时间: 2024-1-21 13:20
draw_text那行前插入@namepop_sprite.bitmap.font.color.set(Color.new(255, 0, 0, 255))变成红色
作者: asddsa16085    时间: 2024-1-21 13:28
alexncf125 发表于 2024-1-21 13:20
draw_text那行前插入@namepop_sprite.bitmap.font.color.set(Color.new(255, 0, 0, 255))变成红色

感谢大佬
作者: asddsa16085    时间: 2024-1-21 13:32
alexncf125 发表于 2024-1-21 13:20
draw_text那行前插入@namepop_sprite.bitmap.font.color.set(Color.new(255, 0, 0, 255))变成红色

大佬,这样都变成红色了,怎么做到像是在对话框里面输入\C[n]一样的指令来变色呀?
就是可以每个事件颜色设定成不同那样




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1