질문과 답변

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 13178
RMVXA 통행설정을x로 했는데도 불구하고 움직여 집니다 4 file reknown 2015.05.03 193
RMVXA 게임 내 일어 -> 한국어 5 file 닉닉맨 2015.05.02 435
RMVXA 댄서 NPC, 전체 동작으로 춤 추게 할 순 없을까요? 1 file 멜랑콜리 2015.04.30 206
RMVXA 문으로 만드는 방법 4 file Munchkin 2015.04.29 169
RMVXA 타일관련 질문 2 어쩌라고요 2015.04.28 143
RMVXA 원경을 타일로 만들기 6 IZEN 2015.04.26 416
RMVX 스크립트로 문장 크기 변경 2 KAHP 2015.04.26 171
RMVXA 타일셋 영역타입, 필드타입, VX 호환 타입 1 file 흰도화지 2015.04.26 225
RMVXA 의미불명의 오류 2 file 아무개 2015.04.25 334
RMVXA 병렬처리와 결정버튼 액션을 같이 쓸 수 있을까요? 5 멜랑콜리 2015.04.25 203
RMVXA RPG VX Ace 유료 맵칩이 있나요? 2 흰도화지 2015.04.25 286
RMVX 메뉴화면에 이미지를 넣고 싶어요! jungjjung 2015.04.23 220
RMVX 화면을 어둡게하고싶은디 안돼요 4 아쳐 2015.04.22 255
RMVXA 캐릭터칩 일괄적용 1 aftershave 2015.04.21 160
기타 xp타일셋을 ace로 바꾸는 법 무명시절 2015.04.21 183
툴선택 모바일 쯔꾸르 게임 제작 문의 6 겸댕겨레 2015.04.21 1299
RMVX RGSS2에서의 아이템의 이름제작 및 아이템의 갯수 확인 4 FNS키리토 2015.04.20 333
RMVXA [스크립트] 셀프 변수나 다른 이벤트의 셀프 스위치를 체크할 수 있을까요? 2 file 멜랑콜리 2015.04.20 293
RMVX 흐음..제가 액토이동경로 이벤트에대해 아쳐 2015.04.19 201
RMVXA 몬스터 이름에 문장옵션 넣을 수 없을까요? 4 file 에뎀이 2015.04.19 290
Board Pagination Prev 1 ... 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 ... 517 Next
/ 517