VX 스크립트

아무도 한글로 이름 입력하는 스크립트를 안올려주셔서요.ㅠㅠ 아방스 님께서 올려주신 영문 rpg 만들기 vx에 있는 스크립트를 아주 약간만 손봤습니다. - 제가 루비언어를 모르는 관계로...ㅠㅠ 그냥 추측하면서 고쳐봤는데, 잘 되었는지 모르겠네요.ㅠ

누군가가 제대로 된 한글 이름 입력 스크립트 만들어주셨으면 합니다.^^;



#==============================================================================
# ■ Window_NameInput
#------------------------------------------------------------------------------
# 이름 입력 화면에서, 문자를 선택하는 윈도우입니다.
# 영문으로 수정하였습니다.
#==============================================================================

class Window_NameInput < Window_Base
  #--------------------------------------------------------------------------
  # ● 문자표
  #--------------------------------------------------------------------------
  ENG = [   "가","나","다","라","마",
    "갸","냐","댜","랴","먀",
    "거","너","더","러","머",
    "겨","녀","뎌","려","며",
    "고","노","도","로","모",
    "교","뇨","됴","료","묘",
    "구","누","누","루","무",
    "규","뉴","듀","류","뮤",
    "그","느","드","르","므",
    "기","니","니","리","미",
    "바","사","아","자","차",
    "뱌","샤","야","쟈","챠",
    "버","서","어","저","처",
    "벼","셔","여","져","쳐",
    "보","소","오","조","초",
    "뵤","쇼","요","죠","쵸",
    "부","수","우","주","추",
    "뷰","슈","유","쥬",'OK']
  TABLE = [ENG]
  #--------------------------------------------------------------------------
  # ● 오브젝트 초기화
  #     mode : 초기 입력 모드 (0 = 히라가나, 1 = 카타카나)
  #--------------------------------------------------------------------------
  def initialize(mode = 0)
    super(88, 148, 368, 248)
    @mode = mode
    @index = 0
    refresh
    update_cursor
  end
  #--------------------------------------------------------------------------
  # ● 문자의 취득
  #--------------------------------------------------------------------------
  def character
    if @index < 88
      return TABLE[@mode][@index]
    else
      return ""
    end
  end
  #--------------------------------------------------------------------------
  # ● 커서 위치 모드 변환 판정 (히라가나/카타카나)
  #--------------------------------------------------------------------------
  def is_mode_change
    return (@index == 88)
  end
  #--------------------------------------------------------------------------
  # ● 커서 위치 결정 판정
  #--------------------------------------------------------------------------
  def is_decision
    return (@index == 89)
  end
  #--------------------------------------------------------------------------
  # ● 항목을 묘화 하는 구형의 취득
  #     index : 항목 번호
  #--------------------------------------------------------------------------
  def item_rect(index)
    rect = Rect.new(0, 0, 0, 0)
    rect.x = index % 10 * 32 + index % 10 / 5 * 16
    rect.y = index / 10 * WLH
    rect.width = 32
    rect.height = WLH
    return rect
  end
  #--------------------------------------------------------------------------
  # ● 리프레쉬
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    for i in 0..89
      rect = item_rect(i)
      rect.x += 2
      rect.width -= 4
      self.contents.draw_text(rect, TABLE[@mode][i], 1)
    end
  end
  #--------------------------------------------------------------------------
  # ● 커서의 갱신
  #--------------------------------------------------------------------------
  def update_cursor
    self.cursor_rect = item_rect(@index)
  end
  #--------------------------------------------------------------------------
  # ● 커서를 아래에 이동
  #     wrap : rack-around 허가
  #--------------------------------------------------------------------------
  def cursor_down(wrap)
    if @index < 80
      @index += 10
    elsif wrap
      @index -= 80
    end
  end
  #--------------------------------------------------------------------------
  # ● 커서를 위에 이동
  #     wrap : rack-around 허가
  #--------------------------------------------------------------------------
  def cursor_up(wrap)
    if @index >= 10
      @index -= 10
    elsif wrap
      @index += 80
    end
  end
  #--------------------------------------------------------------------------
  # ● 커서를 오른쪽으로 이동
  #     wrap : rack-around 허가
  #--------------------------------------------------------------------------
  def cursor_right(wrap)
    if @index % 10 < 9
      @index += 1
    elsif wrap
      @index -= 9
    end
  end
  #--------------------------------------------------------------------------
  # ● 커서를 왼쪽으로 이동
  #     wrap : rack-around 허가
  #--------------------------------------------------------------------------
  def cursor_left(wrap)
    if @index % 10 > 0
      @index -= 1
    elsif wrap
      @index += 9
    end
  end
  #--------------------------------------------------------------------------
  # ● 커서를 결정에 이동
  #--------------------------------------------------------------------------
  def cursor_to_decision
    @index = 89
  end
  #--------------------------------------------------------------------------
  # ● 다음의 페이지로 이동
  #--------------------------------------------------------------------------
  def cursor_pagedown
    @mode = (@mode + 1) % TABLE.size
    refresh
  end
  #--------------------------------------------------------------------------
  # ● 전의 페이지로 이동
  #--------------------------------------------------------------------------
  def cursor_pageup
    @mode = (@mode + TABLE.size - 1) % TABLE.size
    refresh
  end
  #--------------------------------------------------------------------------
  # ● 프레임 갱신
  #--------------------------------------------------------------------------
  def update
    super
    last_mode = @mode
    last_index = @index
    if Input.repeat?(Input::DOWN)
      cursor_down(Input.trigger?(Input::DOWN))
    end
    if Input.repeat?(Input::UP)
      cursor_up(Input.trigger?(Input::UP))
    end
    if Input.repeat?(Input::RIGHT)
      cursor_right(Input.trigger?(Input::RIGHT))
    end
    if Input.repeat?(Input::LEFT)
      cursor_left(Input.trigger?(Input::LEFT))
    end
    if Input.trigger?(Input::A)
      cursor_to_decision
    end
    if Input.trigger?(Input::R)
      cursor_pagedown
    end
    if Input.trigger?(Input::L)
      cursor_pageup
    end
    if Input.trigger?(Input::C) and is_mode_change
      cursor_pagedown
    end
    if @index != last_index or @mode != last_mode
      Sound.play_cursor
    end
    update_cursor
  end
end

Comment '14'
  • ?
    꿈꾸는소년 2008.03.18 14:03

    오우..난 스크립트는 잘 못다뤄서 -_-;;

  • ?
    작은악마 2008.03.18 18:14
    ㄷㄷ;;;
  • ?
    넌닝구가좋아 2008.03.21 17:30
    잘대여!!
    근데 나타난 글씨밖에 못쓰나여?
  • ?
    레시온 2008.03.21 18:25
    아뇨^^ 스크립트에서 원하는 글씨를  "가","나","다","라","마",
        "갸","냐","댜","랴","먀",
        "거","너","더","러","머",
        "겨","녀","뎌","려","며",
        "고","노","도","로","모",
        "교","뇨","됴","료","묘",
        "구","누","누","루","무",
        "규","뉴","듀","류","뮤",
        "그","느","드","르","므",
        "기","니","니","리","미",
        "바","사","아","자","차",
        "뱌","샤","야","쟈","챠",
        "버","서","어","저","처",
        "벼","셔","여","져","쳐",
        "보","소","오","조","초",
        "뵤","쇼","요","죠","쵸",
        "부","수","우","주","추",
        "뷰","슈","유","쥬",

    라고 되어 있는 부분 중에서 고치고 싶은 글자를 수정하면 가능합니다.

    다만 글자수는 저게 한계인듯 싶네요.ㅠㅠ
  • ?
    독도2005 2008.03.23 13:59
    감사합니다~
  • ?
    이근역 2008.03.31 16:27

    저라면 테이블을 이용하여 이용 가능합니다.
    Table = [Eng,Kor001, ... Kor'nnn']식으로 하고
    Kor001 = ['가', ... '갷','다음','완료']
    같은 소리입니다.
    참고 : nnn은 "힣"자가 있는 테이블 번호입니다.

  • ?
    레시온 2008.04.03 13:49

    저....그래서 스크립트 새로 작성한 거 위에 따로 올렸는데^^;;;

  • ?
    흑기사 2008.05.06 00:46
    이거 기본 스크립에도 있던데...
     
    일본어인가 중국어로 그본스크립에있어요.
  • ?
    백년술사 2008.12.30 12:06
    레시온님 원래 스크립트 보내주세요.
  • profile
    카와이 2009.01.13 14:00
    글자수의제한 ㅋㅋㅋ
  • ?
    먹돼렐라 2010.07.16 23:20

    마침 필요했는데,.. 감사합니다

  • ?
    포인트팡팡 2010.07.16 23:20
    축하합니다. 먹돼렐라님은 35포인트에 당첨되셨습니다
  • ?
    vx맨 2011.04.07 22:31

    감사해요

  • ?
    포인트 팡팡 2011.04.07 22:31
    축하합니다. vx맨님은 30포인트에 당첨되셨습니다.

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 3 습작 2012.12.24 5398
57 미니맵 미니맵 스크립트(아랫거랑 다른거) 75 file 츠키아 2008.08.08 6145
56 맵/타일 새로운 월드맵 만들기 (로맨싱사가풍) 37 file 078656577er 2009.10.09 6151
55 메뉴 스테이터스 창을 멋있게 쿨하게~!전신을 보여주자. 24 file 할렘 2009.02.06 6236
54 메시지 메시지 표시 시스템 [NMS3] 31 아방스 2009.01.24 6248
53 메뉴 파이날 판타지 IX 메뉴. 12 file 할렘 2009.02.06 6286
52 상점 상점을 색다르게 바꿔주는 스크립트 34 file 할렘 2009.02.02 6301
51 온라인 온라인입니다 4 file 알피지GM 2010.03.07 6358
50 메뉴 김태히님이 개조한 모그메뉴 스텟화면 43 file RPGbooster 2008.10.08 6360
49 온라인 net VX[ RPGVX 온라인 스크립트 ] 19 file 제로스S2 2009.08.03 6390
48 HUD KH HUD (HP MP 게이지바 스크립트) 41 아방스 2010.12.17 6422
47 전투 RPG Tankentai SBS 3.4d + ATB 1.2c Kaduki 18 시트르산 2010.09.10 6449
46 메시지 캐릭터 대화상자 - Character's Textbox ver 1.0 6 아방스 2010.12.17 6455
45 맵/타일 추가 맵칩 사용 - 공개 34 file 허걱 2009.08.19 6491
44 이동 및 탈것 동료가 따라다니게 하는 스크립트 59 file 아방스 2008.01.23 6512
43 미니맵 KGC 미니맵 스크립트 (한글번역) 45 file 레오 2009.02.01 6555
42 메뉴 매우 간단명료한 메뉴. 32 file 비극ㆍ 2010.04.23 6619
41 상점 스킬 샾 스크립트 2.0 48 아방스 2008.03.05 6628
40 스텟포인트 배분하기 88 file RPGbooster 2008.10.08 6637
39 이름입력 한글로 이름 입력하는 스크립트입니다. 55 file 헤르코스 2009.03.18 6662
38 온라인 넷VX - 온라인 스크립트 29 아방스 2009.01.06 6749
Board Pagination Prev 1 ... 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 Next
/ 32