XP 스크립트

#==============================================================================
# ++ 스테이터스 표시 플러스 ver. 1.00 ++
#  Script by 파라개
#  http://para.j-mx.com/
#------------------------------------------------------------------------------
# [기능1] 스테이터스 화면의 액터명을 풀네임으로 표시
# [기능2] 스테이터스 화면의 그래픽을 변경
# [기능3] 클래스명을 비표시
#------------------------------------------------------------------------------
# [그래픽의 종류 「픽처」의 사용법]
# 「Graphics/Pictures」폴더에, 액터 그래픽과 동명의 화상 파일을
# 임포트 합니다.
# 「보행 그래픽에 의존」의 경우는 보행 그래픽명이,
# 「버틀러에 의존」의 경우는 버틀러 그래픽명이
# 픽처의 파일명이 됩니다.
#==============================================================================

module PARA_STSW

  # 액터의 풀네임(서식은 FULLNAME[ 액터ID ] = "이름")
  FULLNAME=[]#이 행은 지우지 말아 주세요
  FULLNAME[1] = "아르시스=못체리노"
  FULLNAME[2] = "“타와시두의 프린스”바질"
 
  # 그래픽의 종류
  #( 0:보행 그래픽 / 1:버틀러 그래픽 /
  #  2:픽처(보행 그래픽에 의존) / 3:픽처(버틀러에 의존) )
  STATUS_GRAPHIC_TYPE = 1
 
  # 문자 위치를 옆에 늦춘다
  # (픽처의 사이즈가 너무 커서 문자와 겹칠 때 설정.0그리고 초기 위치)
  STATUS_SHIFT = 32
 
  # 클래스명을 비표시(? true / false )
  DRAW_SKIP_CLASS = false

end

# ↑ 설정 항목 여기까지
#------------------------------------------------------------------------------

#==============================================================================
# ■ Window_Status
#==============================================================================

class Window_Status < Window_Base
  #--------------------------------------------------------------------------
  # ● 리프레쉬
  #--------------------------------------------------------------------------
  alias refresh_para_stsw refresh
  def refresh
    @draw_skip_graphic = true
    @draw_skip_name = true
    @draw_skip_class = true
    refresh_para_stsw
    # 상세 스테이터스의 문자 위치를 옆에 늦추는
    if PARA_STSW::STATUS_SHIFT != 0
      @status_sprite = Sprite.new
      @status_sprite.x = 16 + PARA_STSW::STATUS_SHIFT
      @status_sprite.y = 16
      @status_sprite.z = self.z + 1
      @status_sprite.bitmap = self.contents.dup
      self.contents.clear
    end
    # 그래픽을 묘화
    @draw_skip_graphic = false
    case PARA_STSW::STATUS_GRAPHIC_TYPE
      when 0
        draw_actor_graphic(@actor, 40, 112)
      when 1
        draw_battler_graphic_para(@actor, 0, 40)
      when 2
        draw_actor_picture_para(@actor, 0, 40)
      when 3
        draw_battler_picture_para(@actor, 0, 40)
    end
    # 액터의 이름을 묘화
    @draw_skip_name = false
    @draw_skip_class = PARA_STSW::DRAW_SKIP_CLASS
    if PARA_STSW::FULLNAME[@actor.id] != nil
      self.contents.draw_text(4, 0, 260, 32, PARA_STSW::FULLNAME[@actor.id])
      draw_actor_class(@actor, 4 + 284, 0)
    else
      draw_actor_name(@actor, 4, 0)
      draw_actor_class(@actor, 4 + 144, 0)
    end
  end
  #--------------------------------------------------------------------------
  # ○ 파기
  #--------------------------------------------------------------------------
  alias dispose_para_stsw dispose
  def dispose
    dispose_para_stsw
    if @status_sprite != nil
      @status_sprite.dispose
    end
  end
end

#==============================================================================
# ■ Window_Base
#==============================================================================

class Window_Base < Window
  #--------------------------------------------------------------------------
  # ● 오브젝트 초기화
  #--------------------------------------------------------------------------
  alias initialize_para_stsw initialize
  def initialize(x, y, width, height)
    initialize_para_stsw(x, y, width, height)
    @draw_skip_graphic = false
    @draw_skip_name = false
    @draw_skip_class = PARA_STSW::DRAW_SKIP_CLASS
  end
  #--------------------------------------------------------------------------
  # ● 그래픽의 묘화
  #--------------------------------------------------------------------------
  alias draw_actor_graphic_para_stsw draw_actor_graphic
  def draw_actor_graphic(actor, x, y)
    if !(@draw_skip_graphic)
      draw_actor_graphic_para_stsw(actor, x, y)
    end
  end
  #--------------------------------------------------------------------------
  # ● 이름의 묘화
  #--------------------------------------------------------------------------
  alias draw_actor_name_para_stsw draw_actor_name
  def draw_actor_name(actor, x, y)
    if !(@draw_skip_name)
      draw_actor_name_para_stsw(actor, x, y)
    end
  end
  #--------------------------------------------------------------------------
  # ● 클래스의 묘화
  #--------------------------------------------------------------------------
  alias draw_actor_class_para_stsw draw_actor_class
  def draw_actor_class(actor, x, y)
    if !(@draw_skip_class)
      draw_actor_class_para_stsw(actor, x, y)
    end
  end
  #--------------------------------------------------------------------------
  # ○ 버틀러 그래픽의 묘화
  #--------------------------------------------------------------------------
  def draw_battler_graphic_para(actor, x, y)
    bitmap = RPG::Cache.battler(actor.battler_name, actor.battler_hue)
    cw = bitmap.width
    ch = bitmap.height
    src_rect = Rect.new(0, 0, cw, ch)
    self.contents.blt(x, y, bitmap, src_rect)
  end
  #--------------------------------------------------------------------------
  # ○ 픽처의 묘화(액터)
  #--------------------------------------------------------------------------
  def draw_actor_picture_para(actor, x, y)
    bitmap = RPG::Cache.picture(actor.character_name)
    cw = bitmap.width
    ch = bitmap.height
    src_rect = Rect.new(0, 0, cw, ch)
    self.contents.blt(x, y, bitmap, src_rect)
  end
  #--------------------------------------------------------------------------
  # ○ 픽처의 묘화(버틀러)
  #--------------------------------------------------------------------------
  def draw_battler_picture_para(actor, x, y)
    bitmap = RPG::Cache.picture(actor.battler_name)
    cw = bitmap.width
    ch = bitmap.height
    src_rect = Rect.new(0, 0, cw, ch)
    self.contents.blt(x, y, bitmap, src_rect)
  end
end


출처:http://para.j-mx.com/

Who's 백호

?

이상혁입니다.

http://elab.kr


List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 습작 2012.12.24 6202
761 기타 Near Fantastica's SDK Test Bed 3 file 백호 2009.02.22 885
760 온라인 NetPlay Evolution v3 여러분이 고대하시던 NPE v3입니다! 5 file 심영 2010.10.29 3993
759 온라인 NetRPGXP Client Core 일부분임 8 백호 2009.10.06 2885
758 키입력 No F1, F12 and Alt+Return (Kein F1, F12 und Alt+Eingabe) by cremno 습작 2013.04.19 995
757 기타 Note Editor for RMXP by NEWOLD 1 Alkaid 2012.01.15 2101
756 기타 NPC Details Window by SephirothSpawn (SDK호환) 1 file 백호 2009.02.22 1209
755 메뉴 Options System by slipknot 3 file 백호 2009.02.22 2101
754 온라인 ORPG 여러분이 원하는 온라인 스크립트 한글화해서 다시 배포! 20 file 심영 2010.10.16 5573
753 파티 Party & Class Changing script 1 file 백호 2009.02.21 962
752 파티 Party Changer 4.0 by Dargor (SDK2.3 호환) 3 WMN 2008.04.06 1574
751 파티 Party Switching Screen by exseiken file 백호 2009.02.22 1303
750 미니맵 Passability Minimap by squall@rmxp.org 백호 2009.02.22 1125
749 기타 Phylomortis.com 스크립트들. file Alkaid 2010.09.02 1776
748 그래픽 Pictures below Characters by PK8 (XP/VXA) Alkaid 2012.09.07 1643
747 전투 Prize Point System 2.0 by Dark Ruby@rmxp.org 3 file 백호 2009.02.22 1742
746 기타 Project RGSS3 by joe5491 6 습작 2013.05.06 1970
745 기타 Quick Animations by SephirothSpawn (SDK호환) 백호 2009.02.22 852
744 기타 Random Character Generator by SephirothSpawn (SDK호환) 1 백호 2009.02.22 1040
743 맵/타일 Random Map Generator by Wachunga@rmxp.net file 백호 2009.02.22 1096
742 기타 Rataime's Multi Demo 1 file 백호 2009.02.22 834
Board Pagination Prev 1 ... 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 ... 52 Next
/ 52