질문과 답변

Extra Form
1.jpg


2.jpg



적 이름에 문장옵션이 가능한가 싶어 넣어봤더니 적용되지 않고 문장옵션 부호가 그대로 출력되네요.

혹시 몬스터 이름에 문장옵션이 적용 가능하도록 수정이 가능할까요? 


아, 참고로  저 몬스터 커서 스크립트는 http://www.atelier-rgss.com/RGSS/Battle/ACE_BAT13.html  를 사용했습니다.

Comment '4'
  • profile
    9qxb6 2015.04.20 23:23
    아래의 스크립트를 한 번 써보세요.
    http://rmrk.net/index.php/topic,44810.0.html
  • ?
    에뎀이 2015.04.21 09:14
    아... 안타깝지만 안 먹히네요 ㅠ ㅠ 여전히 부호 그대로 출력이 됩니다.
  • profile
    습작 2015.04.21 10:47

    class Sprite_Battle_Cursor < Sprite
      #--------------------------------------------------------------------------
      def refresh_cursor_name
        @cursor_name_enemy = $game_temp.battle_cursor[3]
        @cursor_name.bitmap.clear
        draw_text_ex(@cursor_name.bitmap,0,0,@cursor_name_enemy.to_s)
      end
      #--------------------------------------------------------------------------
      def draw_text_ex(bitmap, x, y, text)
        reset_font_settings(bitmap)
        text = convert_escape_characters(text)
        pos = {:x => x, :y => y, :new_x => x, :height => calc_line_height(bitmap, text)}
        process_character(bitmap, text.slice!(0, 1), text, pos) until text.empty?
      end
      #--------------------------------------------------------------------------
      def reset_font_settings(bitmap)
        change_color(bitmap, normal_color)
        bitmap.font.size = Font.default_size
        bitmap.font.bold = Font.default_bold
        bitmap.font.italic = Font.default_italic
      end
      #--------------------------------------------------------------------------
      def convert_escape_characters(text)
        result = text.to_s.clone
        result.gsub!(/\\/)            { "\e" }
        result.gsub!(/\e\e/)          { "\\" }
        result.gsub!(/\eV\[(\d+)\]/i) { $game_variables[$1.to_i] }
        result.gsub!(/\eV\[(\d+)\]/i) { $game_variables[$1.to_i] }
        result.gsub!(/\eN\[(\d+)\]/i) { actor_name($1.to_i) }
        result.gsub!(/\eP\[(\d+)\]/i) { party_member_name($1.to_i) }
        result.gsub!(/\eG/i)          { Vocab::currency_unit }
        result
      end
      #--------------------------------------------------------------------------
      def process_character(bitmap, c, text, pos)
        case c
        when "\n"
          process_new_line(bitmap, text, pos)
        when "\f"
          process_new_page(text, pos)
        when "\e"
          process_escape_character(bitmap, obtain_escape_code(text), text, pos)
        else
          process_normal_character(bitmap, c, pos)
        end
      end
      #--------------------------------------------------------------------------
      def process_new_line(bitmap, text, pos)
        pos[:x] = pos[:new_x]
        pos[:y] += pos[:height]
        pos[:height] = calc_line_height(bitmap, text)
      end
      #--------------------------------------------------------------------------
      def process_new_page(text, pos)
      end
      #--------------------------------------------------------------------------
      def obtain_escape_code(text)
        text.slice!(/^[\$\.\|\^!><\{\}\\]|^[A-Z]+/i)
      end
      #--------------------------------------------------------------------------
      def obtain_escape_param(text)
        text.slice!(/^\[\d+\]/)[/\d+/].to_i rescue 0
      end
      #--------------------------------------------------------------------------
      def process_escape_character(bitmap, code, text, pos)
        case code.upcase
        when 'C'
          change_color(bitmap, text_color(obtain_escape_param(text)))
        when 'I'
          process_draw_icon(bitmap, obtain_escape_param(text), pos)
        when '{'
          make_font_bigger(bitmap)
        when '}'
          make_font_smaller(bitmap)
        end
      end
      #--------------------------------------------------------------------------
      def process_normal_character(bitmap, c, pos)
        text_width = bitmap.text_size(c).width
        bitmap.draw_text(pos[:x], pos[:y], text_width * 2, pos[:height], c)
        pos[:x] += text_width
      end
      #--------------------------------------------------------------------------
      def change_color(bitmap, color, enabled = true)
        bitmap.font.color.set(color)
        bitmap.font.color.alpha = translucent_alpha unless enabled
      end
      #--------------------------------------------------------------------------
      def text_color(n)
        windowskin = Cache.system("Window")
        windowskin.get_pixel(64 + (n % 8) * 8, 96 + (n / 8) * 8)
      end
      #--------------------------------------------------------------------------
      def normal_color;      text_color(0);   end;
      def system_color;      text_color(16);  end;
      def crisis_color;      text_color(17);  end;
      def knockout_color;    text_color(18);  end;
      def gauge_back_color;  text_color(19);  end;
      def hp_gauge_color1;   text_color(20);  end;
      def hp_gauge_color2;   text_color(21);  end;
      def mp_gauge_color1;   text_color(22);  end;
      def mp_gauge_color2;   text_color(23);  end;
      def mp_cost_color;     text_color(23);  end;
      def power_up_color;    text_color(24);  end;
      def power_down_color;  text_color(25);  end;
      def tp_gauge_color1;   text_color(28);  end;
      def tp_gauge_color2;   text_color(29);  end;
      def tp_cost_color;     text_color(29);  end;
      #--------------------------------------------------------------------------
      def pending_color
        windowskin.get_pixel(80, 80)
      end
      #--------------------------------------------------------------------------
      def translucent_alpha
        return 160
      end
      #--------------------------------------------------------------------------
      def process_draw_icon(bitmap, icon_index, pos)
        draw_icon(bitmap, icon_index, pos[:x], pos[:y])
        pos[:x] += 24
      end
      #--------------------------------------------------------------------------
      def draw_icon(bitmap, icon_index, x, y, enabled = true)
        icon_bitmap = Cache.system("Iconset")
        rect = Rect.new(icon_index % 16 * 24, icon_index / 16 * 24, 24, 24)
        bitmap.blt(x, y, icon_bitmap, rect, enabled ? 255 : translucent_alpha)
      end
      #--------------------------------------------------------------------------
      def make_font_bigger(bitmap)
        bitmap.font.size += 8 if bitmap.font.size <= 64
      end
      #--------------------------------------------------------------------------
      def make_font_smaller(bitmap)
        bitmap.font.size -= 8 if bitmap.font.size >= 16
      end
      #--------------------------------------------------------------------------
      def calc_line_height(bitmap, text, restore_font_size = true)
        result = [line_height, bitmap.font.size].max
        last_font_size = bitmap.font.size
        text.slice(/^.*$/).scan(/\e[\{\}]/).each do |esc|
          make_font_bigger(bitmap)  if esc == "\e{"
          make_font_smaller(bitmap) if esc == "\e}"
          result = [result, bitmap.font.size].max
        end
        bitmap.font.size = last_font_size if restore_font_size
        result
      end
      #--------------------------------------------------------------------------
      def line_height
        return 24
      end
      #--------------------------------------------------------------------------
    end


    이걸 추가하시면 될겁니다.

    몬스터 이름 표시 부분에서 draw_text_ex 메서드가 작동하도록 수정했습니다.

    다만, 전과 달리 몬스터 이름이 가운데 정렬은 되지 않을겁니다.

  • ?
    에뎀이 2015.04.21 11:10
    오, 마이 선샤인!!
    정말 감사드립니다. 덕분에 고민하던 문제가 해결되었어요. ^ ^

List of Articles
종류 분류 제목 글쓴이 날짜 조회 수
공지 묻고 답하기 가이드 습작 2014.06.14 12442
RMVX 몬스터 리스폰 시키는방법 1 춰억헐릿 2012.04.03 2783
RMVX 몬스터 리젠 문제입니다 2 박보영 2010.10.02 933
RMXP 몬스터 리젠 방법이요 2 이룩 2013.10.01 1095
RMVX 몬스터 리젠 시키는 방법 5 file RASA 2011.12.27 1395
기타 몬스터 배치 1 초보자입돠 2011.12.31 3019
RMVX 몬스터 사진 2 많이제작 2013.01.21 575
RMVX 몬스터 스킬 질문입니다. 김늅늅 2012.11.04 770
RMVXA 몬스터 스텟 수치 변경 7 아이어리이 2013.09.11 1096
RMVX 몬스터 시야 제한 1 붉은 원숭이 2014.07.05 1463
RMXP 몬스터 시체 5 까멸 2011.12.09 2183
RMXP 몬스터 시체에 관하여 2 file BGM 2011.11.17 1982
RMVXA 몬스터 아이템 드랍확률 4 철이 2016.08.21 800
RMVXA 몬스터 이름에 문장옵션 넣을 수 없을까요? 4 file 에뎀이 2015.04.19 290
RMVX 몬스터 잡는 것에대한 변수 설정 2 박보영 2010.09.24 753
RMXP 몬스터 잡아서 동료로만들기 란란루 스튜디오 2012.04.02 2868
RMVX 몬스터 장애물 피하기.. 2 행복해 2013.09.22 977
RMVX 몬스터 재생성 1 상급정수 2014.10.02 458
기타 몬스터 전투하고 이기면 그대로임.. 1 레마니음 2013.06.15 636
RMVX 몬스터 죽였는데 계속 살아있어요. 4 프항_훗! 2015.02.23 195
RMVX 몬스터 출현에 대해 라스트루마 2011.10.07 1006
Board Pagination Prev 1 ... 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 ... 516 Next
/ 516