질문과 답변

Extra Form

\V[n] 이거 말구요

매번 저걸로 바꾸는 것 말고 스크립트를 조정하던 뭔가해서

항상 글자색을 흰색말고 다른 색으로 지정하려면 어떻게 해야하나요?


사실 메뉴까지는 바라지도 않아요 되면 더 좋지만...

대화창이라도 ㅠㅠ 어떻게 안될까요?


검색해봤는데도 없어서 글 올립니다.

Comment '9'
  • ?
    말짱꽝이지롱 2012.07.28 21:16
    Window_Message 에 94번째 줄을 보시면 바꾸실수 있습니다.
  • ?
    제이니 2012.07.28 21:17
    음... @choice_window = Window_ChoiceList.new(self) 이 줄인데, 이걸 뭐 어떻게 바꿔야되나요?
    색 숫자 지정하는 곳도 없고...ㅠㅠ
  • ?
    말짱꽝이지롱 2012.07.28 21:36
    보니깐 Window_Base 의 def text_color(n) 이부분에 when 8 이라 만드시구 return Color.new(R, G, B, Opacity)
    RGB에 원하시는 색깔 을넣으시면 될것같습니다. 그리고 Window_Message 의 if color >= 0 and color <= 7 이부분을 찾아서 7을 8로 바꾸시면됩니다.그리고 윈도우 메세지에서 똑같이 \C[8] 이렇게 하시면 됩니다.

    예를들어
    ================================
    Window_Base 부분에

    def text_color(n)
    case n
    when 0
    return Color.new(255, 255, 255, 255)
    when 1
    return Color.new(128, 128, 255, 255)
    when 2
    return Color.new(255, 128, 128, 255)
    when 3
    return Color.new(128, 255, 128, 255)
    when 4
    return Color.new(128, 255, 255, 255)
    when 5
    return Color.new(255, 128, 255, 255)
    when 6
    return Color.new(255, 255, 128, 255)
    when 7
    return Color.new(192, 192, 192, 255)
    when 8
    return Color.new(255, 255, 0, 255) #노란색
    else
    normal_color
    end
    end
    =================================
    Window_Message 부분에

    if color >= 0 and color <= 8
    self.contents.font.color = text_color(color)
    end

    이렇게 계속 추가하시면 여러가지 색을 만들수 있겟죠??
  • ?
    제이니 2012.07.28 21:48
    으.. 기껏 설명해주셨는데 제가 스크립트나 컴퓨터 언어를 전혀 몰라서 잘 모르겠습니다 ㅠㅠ

    Window_Base def text_color(n)
    바로 다음에

    when 0
    return Color.new(255, 255, 255, 255)
    when 1
    return Color.new(128, 128, 255, 255)
    when 2
    return Color.new(255, 128, 128, 255)
    when 3
    return Color.new(128, 255, 128, 255)
    when 4
    return Color.new(128, 255, 255, 255)
    when 5
    return Color.new(255, 128, 255, 255)
    when 6
    return Color.new(255, 255, 128, 255)
    when 7
    return Color.new(192, 192, 192, 255)
    when 8
    return Color.new(255, 255, 0, 255) #노란색
    else
    normal_color
    end
    end

    이걸 넣었고

    94번 줄 @choice_window = Window_ChoiceList.new(self) 다음에
    if color >= 0 and color <= 8
    self.contents.font.color = text_color(color)
    end

    이걸 그대로 넣어봤는데


    Scrpt 'Window_Base' line 592: SyntaxError occurred.
    unexpected keyword_end,expecting $end
    라고 뜨면서 게임이 실행되지 않습니다 ㅠㅠ
  • ?
    말짱꽝이지롱 2012.07.28 22:26

    그걸 그대로 넣으시면 안되고 그부분을 찾아서 빨간부분을 추가하시는 겁니다.

    몇번째 줄이라고 말씀드리기 힘든부분이 질문자님께서 코드를 추가하신것 같아서 정확히 말씀드릴 수 없습니다.

    다만 위에서 말한 94번째 줄이라하면 RPGXP를 프로젝트를 처음 생성했을때 기본 스크립트를 가지고 말한것이었습니다.

  • ?
    제이니 2012.07.28 22:37
    그 부분이라는 게
    def text_color(n)
    여기 다음을 말씀하시는 건가요?

    그럼

    def text_color(1)
    when 1
    return Color.new(255, 255, 0, 255) #노란색
    else
    normal_color
    end

    이렇게 넣으면 될까요?
    그리고


    Window_Message 의 if color >= 0 and color <= 7 이부분을 찾아서 7을 8로 바꾸시면됩니다.그리고 윈도우 메세지에서 똑같이 \C[8] 이렇게 하시면 됩니다.

    라고 하셨는데 Window_Message 에 if color >= 0 and color <= 7 이런 부분이 없는 것 같은데 ㅠㅠ...
  • ?
    말짱꽝이지롱 2012.07.28 22:54

    아니요 def text_color(1) 이란것이 가능할수가 없는것이 def가 함수를 정의하는 것인데 이함수의 이름이 text_color(n) 이란 겁니다. 그런데 n은 함수가 받는 인수를 말하구요. 그런데 이 인수를 상수 1로 바꿀수는 없습니다. 인수자체가 임의의 값이기 때문입니다. 그리고 그 인수 n을 case 문이 받고 when 으로 경우를 설정하는 것 이므로 위에서 말했듯이
    when 7
    return Color.new(192, 192, 192, 255)
    다음에
    when 8 로 만들어 주셔야만 합니다.

    Window_Message 에서 제가 말한 부분이 없다는것은 \c[n] 자체를 사용할수 없다는 것입니다. 그런데 질문자 분께선 이미 이것을 사용하고 있으므로 없다는것은 말이 안됩니다. 한번 다시 찾아보세요 없으시면 Ctrl+Shift+F 를눌러서 if color >= 0 and color <= 7 이걸 검색 해보세요.

  • ?
    말짱꽝이지롱 2012.07.28 22:59

    그런데 지금 질문을 다시 보니 질문자님께서는 아예 통상글씨색을 바꾸는것을 말씀하신것 같네요.
    이 경우에는 쉽습니다. 스크립트왼쪽탭에서 Window_Base를 찾으신후

    #--------------------------------------------------------------------------
    # ● 통상 문자색의 취득
    #--------------------------------------------------------------------------
    def normal_color
    return Color.new(255, 255, 255, 255) #요부분을 바꾸시면 됩니다. 앞에서부터 (R,G,B,투명도) 입니다.
    end

    그런데 이부분을 바꾸실 경우 윈도우에 있는 모든 글씨색이 바뀌므로 대화창 글씨만 바꾸시려면
    다른방법을 사용하셔야합니다.


    다른방법은 Window_Message 에 69번째 줄에 self.contents.font.color = new_color

    원래 빨간부분이 normal_color 라고 되어있을텐데 이부분을 new_color 로 바꾸시고 

    Window_Base 의 아무곳에나 


      def new_color

        return Color.new(255, 0, 0, 255)

      end


    라고 새로운 메소드를 추가하시면 됩니다. 그럼 대화창의 글씨색깔만 바뀐것을 보실수 있을것입니다.

  • ?
    제이니 2012.07.29 00:16
    답변 정말 감사합니다. 제가 원하던 게 이거에요 ㅠㅠ!! 덕분에 잘 해결됬습니다 :)

List of Articles
종류 분류 제목 글쓴이 날짜 조회 수
공지 묻고 답하기 가이드 습작 2014.06.14 12456
스크립트 추천 RMVXA ace에서 타이틀 화면에 이미지 모음 앨범 메뉴를 만드는 스크립트가 있을까요? 1 홍홍이1 2020.11.08 238
스크립트 추천 RMVXA 질문합니다. 아이템 위로 지나갈때 주워지는 이벤트에서 4 효잉 2021.01.04 172
스크립트 추천 RMVXA npc가 마주볼때 이벤트 발생 시키기 3 겜만들고싶다앙 2021.01.07 216
스크립트 추천 RMVXA 보호막 같은 것을 구현시키는 스크립트 있나요? 2 겜만들고싶다앙 2021.04.18 105
스크립트 추천 RMVXA 스테이터스 애니메이션을 따로 추가할수 있나요? 겜만들고싶다앙 2021.04.22 70
스크립트 추천 RMVXA 이벤트가 움직이는 다른 이벤트를 향해 움직이는 것은 어떻게 하나요? 2 환경사랑 2021.08.23 70
스크립트 추천 RMVXA 한글/이름 입력창이 떴을 때 타이머가 멈추지 않고 흘러가게 하고 싶습니다. 다죽어가게생겻어다죽어가게 2021.12.02 186
스크립트 추천 RMVXA 윈도우 자체를 흔드는 스크립트나 별도의 방법은 없을까요? 2 설님 2021.12.20 228
스크립트 추천 RMVXA 미니게임을 하는동안 위에 점수판을 띄워주고싶은데 방법이 없을까요? 홍홍이1 2024.02.07 15
스크립트 추천 RMVXA 변수를 화면에 띄우고 싶습니다. 1 홍홍이1 2024.02.09 33
스크립트 추천 RMVXA 달리는 스프라이트와 대각선 이동 5 다크크리에이터 2023.07.08 75
스크립트 추천 RMVXA 벽 뒤에 있으면 벽 앞에 무엇이 있는지 보이지 않는 스크립트나 이벤트 2 다크크리에이터 2023.11.17 56
스크립트 작성 RMVXA 해상도 제한을 푸는 스크립트를 도저히 찾을 수가 없습니다. 1 zx히어로zx 2022.03.20 239
스크립트 작성 RMVXA 특정 상태에서 치명피해량이 증가하는 상태를 구현하고 싶습니다. 2 AAAA. 2023.09.22 37
스크립트 작성 RMVXA XAS를 사용하기 시작한 후 커맨드 혹은 @move_speed 이런걸로 이동속도 변경 불가 오류 질문 슈필러 2019.06.30 72
스크립트 작성 RMVXA 이동경로 스크립트 질문 환경사랑 2021.10.15 70
스크립트 작성 RMVXA 캐릭터 sprites 프레임 수정 file 게이킹덤 2020.03.25 116
스크립트 작성 RMVXA 스킬의 일괄 삭제와 특정 변수 값을 가진 스킬을 배우게 하고 싶습니다 김탲누 2020.05.11 48
스크립트 작성 RMVXA 메뉴의 Continue와 Exit의 스크립트 질문 4 해비 2021.11.28 173
스크립트 작성 RMVXA 파일이름 변경 배경 2020.07.10 58
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Next
/ 19