XP 스크립트

스테이터스 화면에서 C 를 누르면 자기가 적은 케릭터소개가 나옵니다 ^^

맨 밑에 스샷 있어용 ~ 자기가 수정하고 싶은곳을 수정하면 됩니다

스토리 게임 만들때 좋겟죠 ㅎㅎ/

 

▼▼▼▼ 스크립트 ▼▼▼▼

#==============================================================================
# ■ 캐릭터 소개 Ver.1.3.0 by Claimh
#------------------------------------------------------------------------------
#  스테이터스 화면시에 어떠한 버튼을 누르는 것으로
#  각 캐릭터의 상세 설명 화면을 표시할 수 있습니다.
#  버튼은HELP 의Input (을)를 보고, 확인해 주세요
#  표준에서는, 캐릭터의 연령, 출신지, 신장, 체중
#  그 외의 문장 설명을 대응하고 있습니다
#  이외에 추가하고 싶은 경우는, 개조해 주세요
# 출처 : 십자군의 RPG 세상
#==============================================================================

module Chara_Review
#----------------------------------------------------------------------------
#   커스터마이즈 START
#----------------------------------------------------------------------------
  # 캐릭터 소개로 전환하는 버튼( 디폴트:C)
  CHENGE_KEY = Input::C
  #--------------------------------------------------------------------------
  # 연령(액터ID 의 순서에 넣어 가 주세요)
  #--------------------------------------------------------------------------
  CHARA_AGE = {
   # 액터ID => "나이"
     1 => "??",
     2 => "??",
     3 => "??",
     4 => "??",
     5 => "??",
     6 => "??",
     7 => "??",
     8 => "??"
  }
  #--------------------------------------------------------------------------
  # ● 출신지
  #--------------------------------------------------------------------------
  CHARA_FROM = {
   # 액터ID => "출신지"
     1 => "??",
     2 => "??",
     3 => "??",
     4 => "??",
     5 => "??",
     6 => "??",
     7 => "??",
     8 => "??"
  }
  #--------------------------------------------------------------------------
  # ● 신장
  #--------------------------------------------------------------------------
  CHARA_H = {
   # 액터ID => " 신장"
     1 => "??",
     2 => "??",
     3 => "??",
     4 => "??",
     5 => "??",
     6 => "??",
     7 => "??",
     8 => "??"
  }
  #--------------------------------------------------------------------------
  # ● 체중
  #--------------------------------------------------------------------------
  CHARA_W = {
   # 액터ID => " 체중"
     1 => "??",
     2 => "??",
     3 => "??",
     4 => "??",
     5 => "??",
     6 => "??",
     7 => "??",
     8 => "??"
  }
  #--------------------------------------------------------------------------
  # ● 그 외 문장(n 을 넣으면 개행합니다)
  #--------------------------------------------------------------------------
  CHARA_INFO = {
    # 액터ID 1
    1 => "이곳에 내용 적으세요",
    # 액터ID 2
    2 => "이곳에 내용 적으세요",
    # 액터ID 3
    3 => "이곳에 내용 적으세요",
    # 액터ID 4
    4 => "이곳에 내용 적으세요",
    # 액터ID 5
    5 => "이곳에 내용 적으세요",
    # 액터ID 6
    6 => "이곳에 내용 적으세요",
    # 액터ID 7
    7 => "이곳에 내용 적으세요",
    # 액터ID 8
    8 => "이곳에 내용 적으세요"
  }

#----------------------------------------------------------------------------
#   커스터마이즈END
#----------------------------------------------------------------------------
end


#==============================================================================
# ■ Window_Charactor
#------------------------------------------------------------------------------
# ■ 캐릭터 소개 화면
#==============================================================================
class Window_Charactor < Window_Base
  #--------------------------------------------------------------------------
  # ● 오브젝트 초기화
  #     actor : 액터
  #--------------------------------------------------------------------------
  def initialize(actor)
    super(0, 0, 640, 480)
    self.contents = Bitmap.new(width - 32, height - 32)
    refresh(actor)
  end
  #--------------------------------------------------------------------------
  # ● 리프레쉬
  #--------------------------------------------------------------------------
  def refresh(actor)
    self.contents.clear
    return if actor.nil?
    draw_battler_graphics(actor, 100, 200)
    self.contents.font.color = system_color
    self.contents.draw_text(250, 10, 80, 32, "이름 : ")
    self.contents.draw_text(250, 50, 80, 32, "나이 : ")
    self.contents.draw_text(250, 90, 80, 32, "출신지 : ")
    self.contents.draw_text(250, 130, 80, 32, "신장 : ")
    self.contents.draw_text(250, 170, 80, 32, "체중 : ")
    self.contents.font.color = normal_color
    draw_actor_name(actor, 350, 10)
    self.contents.draw_text(350, 50, 80, 32, Chara_Review::CHARA_AGE[actor.id])
    self.contents.draw_text(350, 90, 180, 32, Chara_Review::CHARA_FROM[actor.id])
    self.contents.draw_text(350, 130 , 200, 32, Chara_Review::CHARA_H[actor.id])
    self.contents.draw_text(350, 170, 250, 32, Chara_Review::CHARA_W[actor.id])
    draw_enter_text(50, 250, 600, 32, Chara_Review::CHARA_INFO[actor.id])
  end
end

class Window_Base < Window
  #--------------------------------------------------------------------------
  # ● 버틀러 그래픽의 묘화
  #--------------------------------------------------------------------------
  def draw_battler_graphics(actor, x, y)
    battler = RPG::Cache.battler(actor.battler_name, actor.battler_hue)
    w = battler.width
    h = battler.height
    self.contents.blt(x-w/2, y-h, battler, Rect.new(0, 0, w,h))
  end
  #--------------------------------------------------------------------------
  # ● 개행을 인식해 표시
  #--------------------------------------------------------------------------
  def draw_enter_text(x, y, width, height, text)
    info_box = text.split(/n/)
    for i in 0...info_box.size
      self.contents.draw_text( x, y+i*32, width, 32, info_box[i])
      break if (y+i*32) > (self.height-32)
    end
  end
end


#==============================================================================
# ■ Scene_Charactor
#------------------------------------------------------------------------------
# 캐릭터 소개 화면의 처리를 실시하는 클래스입니다.
#==============================================================================

class Scene_Charactor
  #--------------------------------------------------------------------------
  # ● 오브젝트 초기화
  #     actor_index : 액터 인덱스
  #--------------------------------------------------------------------------
  def initialize(actor_index = 0, equip_index = 0)
    @actor_index = actor_index
  end
  #--------------------------------------------------------------------------
  # ● 메인 처리
  #--------------------------------------------------------------------------
  def main
    # 액터를 취득
    @actor = $game_party.actors[@actor_index]
    # 스테이터스 윈도우를 작성
    @status_window = Window_Charactor.new(@actor)
    # 트란지션 실행
    Graphics.transition
    # 메인 루프
    loop do
      # 게임 화면을 갱신
      Graphics.update
      # 입력 정보를 갱신
      Input.update
      # 프레임 갱신
      update
      # 화면이 바뀌면 루프를 중단
      if $scene != self
        break
      end
    end
    # 트란지션 준비
    Graphics.freeze
    # 윈도우를 해방
    @status_window.dispose
  end
  #--------------------------------------------------------------------------
  # ● 프레임 갱신
  #--------------------------------------------------------------------------
  def update
    # B 버튼이 밀렸을 경우
    if Input.trigger?(Input::B)
      # 캔슬 SE (을)를 연주
      $game_system.se_play($data_system.cancel_se)
      # 메뉴 화면으로 전환해
      $scene = Scene_Menu.new(3)
      return
    end
    # R 버튼이 밀렸을 경우
    if Input.trigger?(Input::R)
      # 커서 SE (을)를 연주
      $game_system.se_play($data_system.cursor_se)
      # 다음의 액터에게
      @actor_index += 1
      @actor_index %= $game_party.actors.size
      # 다른 캐릭터 소개 화면으로 전환해
      @status_window.refresh($game_party.actors[@actor_index])
      return
    end
    # L 버튼이 밀렸을 경우
    if Input.trigger?(Input::L)
      # 커서 SE (을)를 연주
      $game_system.se_play($data_system.cursor_se)
      # 전의 액터에게
      @actor_index += $game_party.actors.size - 1
      @actor_index %= $game_party.actors.size
      # 다른 캐릭터 소개 화면으로 전환해
      @status_window.refresh($game_party.actors[@actor_index])
      return
    end
  end
end


#==============================================================================
# ■ Scene_Status
#------------------------------------------------------------------------------
# 결정 버튼으로 캐릭터 소개 화면에
#==============================================================================

class Scene_Status
  #--------------------------------------------------------------------------
  # ● 프레임 갱신
  #--------------------------------------------------------------------------
  alias update_chara update
  def update
    # C 버튼이 밀렸을 경우
    if Input.trigger?(Chara_Review::CHENGE_KEY)
      # # 결정 SE (을)를 연주
      $game_system.se_play($data_system.decision_se)
      # 캐릭터 소개 화면으로 전환해
      $scene = Scene_Charactor.new(@actor_index)
      return
    end
    update_chara
  end
end

Comment '22'
  • ?
    21stcentury 2008.10.06 15:26
    XP전용이네...
  • ?
    Man... 2008.10.29 18:42
    VX도 되나요?
    (예상 대답: 아니요)
  • profile
    NewSet 2008.11.05 15:40
    아니요
  • ?
    큐트이브 2008.12.06 21:19
    왜 사용이 불가능 하나요?
    비슷한것 같은데
  • ?
    독도2005 2008.11.06 21:40
    정답 : 아니오
    이 스크립트는 RPGXP용 스크립트 입니다.
    RPGVX에서는 사용이 불가능 합니다.
  • ?
    큐트이브 2008.12.06 21:20
    ... HP,SP도 보이나요?
  • ?
    레핀 2009.01.14 13:58
    이거 유용하네요 ^^  감사합니다~
  • ?
    키라링 2009.01.18 22:29
    ㅎㅎ
  • ?
    RJ 2009.04.26 16:29
    저는 vx쓰지만 좋은 정보 인듯
  • ?
    파란제비 2009.10.24 15:33
    오올... 좋아보이는걸여 ㅋㅋㅋ
  • ?
    펩시-굿 2009.10.24 17:59
    오오 글은 많지만 알기 쉬워서 금방 알아봄ㅎ
  • ?
    만득이 2010.01.21 21:27

    잘쓰겟습니다..

  • ?
    白月のはる 2010.03.19 20:33

    나한테는 아직 쓸때가없어보이는군 ㅠㅠ;

  • ?
    亞진리亞 2010.05.30 12:54

    설명창 들어가는방법이 ;;;;

  • ?
    놀고싶어라 2010.06.16 21:32

    감사..

  • ?
    놀고싶어라 2010.06.16 21:40

    근데 안되네... xp인데..

  • ?
    콩밥 2010.07.12 19:15

    뭔가좀 밋밋한느낌이;;

  • ?
    쵸쵸 2010.08.12 13:10

    왜 에러가 나는걸까요///

  • ?
    ★coco★ 2010.08.29 21:22

    ㄷㄷ;;좋은거가튼데

  • ?
    핵타루 2010.09.17 17:34

    우아 좋아보인다;;

  • ?
    David:) 2011.07.30 21:55

    좋네요 ㅎㅎ :)

  • profile
    책벌레공상가 2013.05.17 12:18
    C로 눌러서 전환할 거 없이 아예 처음부터 스테이터스 화면에서 캐릭터 소개를 나오게 하고 싶다면
    [Windows_Status]를 다음과 같이 바꾸고

    #==============================================================================
    # ■ 캐릭터 소개 Ver.1.3.0 by Claimh
    #------------------------------------------------------------------------------
    # 스테이터스 화면시에 어떠한 버튼을 누르는 것으로
    # 각 캐릭터의 상세 설명 화면을 표시할 수 있습니다.
    # 버튼은HELP 의Input (을)를 보고, 확인해 주세요
    # 표준에서는, 캐릭터의 연령, 출신지, 신장, 체중
    # 그 외의 문장 설명을 대응하고 있습니다
    # 이외에 추가하고 싶은 경우는, 개조해 주세요
    # 출처 : 십자군의 RPG 세상
    #==============================================================================

    module Chara_Review
    #----------------------------------------------------------------------------
    # 커스터마이즈 START
    #----------------------------------------------------------------------------
    #--------------------------------------------------------------------------
    # 연령(액터ID 의 순서에 넣어 가 주세요)
    #--------------------------------------------------------------------------
    CHARA_AGE = {
    # 액터ID => "나이"
    1 => "??",
    2 => "??",
    3 => "??",
    4 => "??",
    5 => "??",
    6 => "??",
    7 => "??",
    8 => "??"
    }
    #--------------------------------------------------------------------------
    # ● 출신지
    #--------------------------------------------------------------------------
    CHARA_FROM = {
    # 액터ID => "출신지"
    1 => "??",
    2 => "??",
    3 => "??",
    4 => "??",
    5 => "??",
    6 => "??",
    7 => "??",
    8 => "??"
    }
    #--------------------------------------------------------------------------
    # ● 신장
    #--------------------------------------------------------------------------
    CHARA_H = {
    # 액터ID => " 신장"
    1 => "??",
    2 => "??",
    3 => "??",
    4 => "??",
    5 => "??",
    6 => "??",
    7 => "??",
    8 => "??"
    }
    #--------------------------------------------------------------------------
    # ● 체중
    #--------------------------------------------------------------------------
    CHARA_W = {
    # 액터ID => " 체중"
    1 => "??",
    2 => "??",
    3 => "??",
    4 => "??",
    5 => "??",
    6 => "??",
    7 => "??",
    8 => "??"
    }
    #--------------------------------------------------------------------------
    # ● 그 외 문장(n 을 넣으면 개행합니다)
    #--------------------------------------------------------------------------
    CHARA_INFO = {
    # 액터ID 1
    1 => "이곳에 내용 적으세요",
    # 액터ID 2
    2 => "이곳에 내용 적으세요",
    # 액터ID 3
    3 => "이곳에 내용 적으세요",
    # 액터ID 4
    4 => "이곳에 내용 적으세요",
    # 액터ID 5
    5 => "이곳에 내용 적으세요",
    # 액터ID 6
    6 => "이곳에 내용 적으세요",
    # 액터ID 7
    7 => "이곳에 내용 적으세요",
    # 액터ID 8
    8 => "이곳에 내용 적으세요"
    }

    #----------------------------------------------------------------------------
    # 커스터마이즈END
    #----------------------------------------------------------------------------
    end

    #==============================================================================
    # ■ Window_Charactor
    #------------------------------------------------------------------------------
    # ■ 캐릭터 소개 화면
    #==============================================================================
    class Window_Charactor < Window_Base
    #--------------------------------------------------------------------------
    # ● 오브젝트 초기화
    # actor : 액터
    #--------------------------------------------------------------------------
    def initialize(actor)
    super(0, 0, 640, 480)
    self.contents = Bitmap.new(width - 32, height - 32)
    refresh(actor)
    end
    #--------------------------------------------------------------------------
    # ● 리프레쉬
    #--------------------------------------------------------------------------
    def refresh(actor)
    self.contents.clear
    return if actor.nil?
    draw_battler_graphics(actor, 100, 200)
    self.contents.font.color = system_color
    self.contents.draw_text(250, 10, 80, 32, "이름 : ")
    self.contents.draw_text(250, 50, 80, 32, "생일 : ")
    self.contents.draw_text(250, 90, 80, 32, "학년 : ")
    self.contents.draw_text(250, 130, 80, 32, "신장 : ")
    self.contents.draw_text(250, 170, 80, 32, "체중 : ")
    self.contents.font.color = normal_color
    draw_actor_name(actor, 350, 10)
    self.contents.draw_text(350, 50, 80, 32, Chara_Review::CHARA_AGE[actor.id])
    self.contents.draw_text(350, 90, 180, 32, Chara_Review::CHARA_FROM[actor.id])
    self.contents.draw_text(350, 130 , 200, 32, Chara_Review::CHARA_H[actor.id])
    self.contents.draw_text(350, 170, 250, 32, Chara_Review::CHARA_W[actor.id])
    draw_enter_text(50, 250, 600, 32, Chara_Review::CHARA_INFO[actor.id])
    end
    end

    class Window_Base < Window
    #--------------------------------------------------------------------------
    # ● 버틀러 그래픽의 묘화
    #--------------------------------------------------------------------------
    def draw_battler_graphics(actor, x, y)
    battler = RPG::Cache.battler(actor.battler_name, actor.battler_hue)
    w = battler.width
    h = battler.height
    self.contents.blt(x-w/2, y-h, battler, Rect.new(0, 0, w,h))
    end
    #--------------------------------------------------------------------------
    # ● 개행을 인식해 표시
    #--------------------------------------------------------------------------
    def draw_enter_text(x, y, width, height, text)
    info_box = text.split(/n/)
    for i in 0...info_box.size
    self.contents.draw_text( x, y+i*32, width, 32, info_box[i])
    break if (y+i*32) > (self.height-32)
    end
    end
    end


    [Scene_Status]의 21~22번째 줄을

    # 스테이터스 윈도우를 작성
    @status_window = Window_Charactor.new(@actor)

    위와 같이 변경해 주세요~

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 습작 2012.12.24 6153
81 기타 Character Creator by Leon@Creation Asylum 2 file 백호 2009.02.22 1511
80 저장 Chaos Project Save Layout 1.4 by Fantasist, Blizzard file Alkaid 2010.10.08 1558
79 기타 Chaos Project Debug System 1.06b by Blizzard file Alkaid 2010.09.07 1367
78 기타 CG모드 도입 스크립트 file 백호 2009.02.21 1383
77 기타 CG그림 감상 스크립트 file 백호 2009.02.21 1735
76 오디오 CG, 음악 감상 스크립트 [한글화] 11 file 백호 2009.02.21 2403
75 아이템 Categorized Items Menu 1.3 by albertfish 1 file Alkaid 2010.09.09 1795
74 맵/타일 Call Map Event by DerVVulfman Alkaid 2011.12.21 1861
73 메뉴 Breath Of Fire 스타일의 메뉴 3 file 백호 2009.02.21 2343
72 기타 Book Event v2 by Bruth 5 백호 2009.02.22 1694
71 기타 Boat Script 백호 2009.02.21 729
70 전투 Blizz-ABS 1.95 27 아방스 2008.03.05 4028
69 스킬 Blacksmith System 2.0 by ForeverZer0 4 Alkaid 2011.09.07 1768
68 그래픽 Bitmap update 2.0 by Linkin_T 1 백호 2009.02.22 985
67 영상 berka's Video Script II Reloaded 1.2 2 Alkaid 2010.10.08 1400
66 상태/속성 BattleStatus Modification 1.1 for RTAB by DerVVulfman@rmxp.org 2 file 백호 2009.02.22 1788
65 전투 Battle Report 1.6 by Raziel@rmxp.org 1 file 백호 2009.02.22 1672
64 영상 AVI 동영상 파일 지원가능하게 하는 스크립트 5 아방스 2007.11.09 2070
63 영상 avi 동영상 실행 스크립트 9 백호 2009.02.21 2279
62 장비 Auto Equipment Optimization for Guillaume777's Multi Slot Script by DerVVulfman Alkaid 2012.09.09 1497
Board Pagination Prev 1 ... 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 Next
/ 52