VX 스크립트

스테이터스 화면 개조 - 모든 스텟 커스텀.jpg

 

스테이터스 화면에 큰 그림을 표시하는 스크립트를 제가 약간 수정했습니다.

본명(풀네임)을 설정할 수 있으며,

종전과는 달리 명중률, 회피율, 크리티컬 확률까지 표시가 됩니다.

 

혹시 버그가 있으면 덧글 달아주세요.

 

설정할 내용은 스크립트에 전부 포함되어 있습니다.

 

 

 

#==============================================================================
# ☆ Window_Status_profile0     Ver. 1.01 (Custom by LOM)
#------------------------------------------------------------------------------
# 스테이터스 화면에 큰 그림을 표시하며, 더 많은 스텟을 표시해줍니다.
#==============================================================================

#//////////////////////////////////////
#명칭변경
#//////////////////////////////////////
module Vocab
  # 스테이터스 화면
  ExpTotal        = "EXP"      # 경험치
  ExpNext         = "NEXT"   # 다음 레벨까지 경험치
end


#//////////////////////////////////////////
#본명(풀네임) 기재 on/off
#0: 통상의 이름 1: 본명(풀네임)으로 기재
#//////////////////////////////////////////
DRAW_ACTOR_STATUS_NAME_ONOFF=1

#//////////////////////////////////////////////////
#본명 설정
#//////////////////////////////////////////////////
DRAW_ACTOR_STATUS_NAME={
   0=>"",
   1=>"랄프 빈데바르트",
   2=>"울리카 아브 바덴",
   3=>"도니 죤 베넷트",
   4=>"이르바 오크센셰르나",
   5=>"",
   6=>"오스카 슈타이넬",
   7=>"",
   8=>"에르마 라자루스",
   9=>"",
  10=>""
}

#//////////////////////////////////////////////////
#그림 파일명을 설정해주세요.
#설정 방법은:
# Cache.face("그림파일")          ===> graphicsface그림파일.png
# Cache.picture("그림파일")      ===> graphicspicture그림파일.png
#//////////////////////////////////////////////////
DRAW_ACTOR_STATUS_FACE={
   0=>Cache.picture(""),
   1=>Cache.picture("Actor1-1"),
   2=>Cache.picture("Actor1-4"),
   3=>Cache.picture("Actor2-3"),
   4=>Cache.picture("Actor2-6"),
   5=>Cache.picture(""),
   6=>Cache.picture("Evil-5"),
   7=>Cache.picture(""),
   8=>Cache.picture("Actor3-3"),
   9=>Cache.picture(""),
  10=>Cache.picture("")
}

#//////////////////////////////////////////////////
#그림의 크기
#//////////////////////////////////////////////////
DRAW_ACTOR_STATUS_FACE_X=272
DRAW_ACTOR_STATUS_FACE_Y=288

#//////////////////////////////////////////////////
#그림의 위치
#//////////////////////////////////////////////////
DRAW_ACTOR_STATUS_FACE_X2=0
DRAW_ACTOR_STATUS_FACE_Y2=78


class Window_Status < Window_Base
  #--------------------------------------------------------------------------
  # ☆ リフレッシュ <変更>
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    draw_actor_status_class(@actor, 0, 32) #ここ変更:初期は(264, 32)
    draw_basic_info(264, 0)          #ここ変更:初期は(264, 64)
    draw_parameters(264, 108)         #ここ変更:初期は(264,172)
    draw_exp_info(398, 0)            #ここ変更:初期は(398, 64)
    draw_equipments(264, 228)         #ここ変更:初期は(264,228)
    draw_actor_status_face(@actor, DRAW_ACTOR_STATUS_FACE_X2, DRAW_ACTOR_STATUS_FACE_Y2)    #ここ新規追加:初期は(272,288)
    if DRAW_ACTOR_STATUS_NAME_ONOFF==1
      draw_actor_status_name(@actor, 0, 0)     #ここ新規追加:初期は(264,  0)
    else
      draw_actor_name(@actor, 0, 0)
    end
  end
  #--------------------------------------------------------------------------
  # ☆ 本名の描画 <新規追加>
  #     actor : アクター
  #     x     : 描画先 X 座標
  #     y     : 描画先 Y 座標
  #--------------------------------------------------------------------------
  def draw_actor_status_name(actor, x, y)
    self.contents.font.color = hp_color(actor)
    self.contents.draw_text(x, y, 288, WLH, DRAW_ACTOR_STATUS_NAME[actor.id])
  end
  #--------------------------------------------------------------------------
  # ☆ 能力値の描画 <変更>
  #     x : 描画先 X 座標
  #     y : 描画先 Y 座標
  #--------------------------------------------------------------------------
  def draw_parameters(x, y)
    draw_actor_status_parameter(@actor, x, y + WLH * 0, 0)
    draw_actor_status_parameter(@actor, x+130, y + WLH * 0, 1)
    draw_actor_status_parameter(@actor, x, y + WLH * 1, 2)   
    draw_actor_status_parameter(@actor, x+130, y + WLH * 1, 3)
###############################################
    draw_actor_status_parameter(@actor, x, y + WLH * 2.5, 4)
    draw_actor_status_parameter(@actor, x+130, y + WLH * 2.5, 5)
    draw_actor_status_parameter(@actor, x, y + WLH * 3.5, 6)   
    #draw_actor_status_parameter(@actor, x+130, y + WLH * 3.5, 7) # Odds
###############################################
  end
  #--------------------------------------------------------------------------
  # ☆ 経験値情報の描画 <変更>
  #     x : 描画先 X 座標
  #     y : 描画先 Y 座標
  #--------------------------------------------------------------------------
  def draw_exp_info(x, y)
    s1 = @actor.exp_s
    s2 = @actor.next_rest_exp_s
    s_next = sprintf(Vocab::ExpNext, Vocab::level)
    self.contents.font.color = system_color
    self.contents.draw_text(x, y + WLH * 0, 90, WLH, Vocab::ExpTotal)
    self.contents.draw_text(x, y + WLH * 2, 90, WLH, s_next)
    self.contents.font.color = normal_color
    self.contents.draw_text(x, y + WLH * 1, 110, WLH, s1, 2)
    self.contents.draw_text(x, y + WLH * 3, 110, WLH, s2, 2)
  end
  #--------------------------------------------------------------------------
  # ☆ 能力値の描画 <新規追加>
  #     actor : アクター
  #     x     : 描画先 X 座標
  #     y     : 描画先 Y 座標
  #     type  : 能力値の種類 (0~3)
  #--------------------------------------------------------------------------
  def draw_actor_status_parameter(actor, x, y, type)
    case type
    when 0
      parameter_name = Vocab::atk
      parameter_value = actor.atk
    when 1
      parameter_name = Vocab::def
      parameter_value = actor.def
    when 2
      parameter_name = Vocab::spi
      parameter_value = actor.spi
    when 3
      parameter_name = Vocab::agi
      parameter_value = actor.agi
############################################
# 파라미터 이름을 설정해주세요
############################################
    when 4
      parameter_name = "HIT"  # 명중률
      parameter_value = sprintf("%d%%", @actor.hit)
    when 5
      parameter_name = "EVA"  # 회피율
      parameter_value = sprintf("%d%%", @actor.eva)
    when 6
      parameter_name = "CRI"  # 크리티컬
      parameter_value = sprintf("%d%%", @actor.cri)
    when 7
      parameter_name = "Odds"  # 이것은 손대지 마세요 
      parameter_value = @actor.odds     
############################################
    end
    self.contents.font.color = system_color
    self.contents.draw_text(x, y, 70, WLH, parameter_name)
    self.contents.font.color = normal_color
    self.contents.draw_text(x + 80, y, 36, WLH, parameter_value, 2)
  end
  #--------------------------------------------------------------------------
  # ☆ アクターのステータス画面の顔グラフィックの描画 <新規追加>
  #     face_name  : 顔グラフィック ファイル名
  #     face_index : 顔グラフィック インデックス
  #     x          : 描画先 X 座標
  #     y          : 描画先 Y 座標
  #     size       : 表示サイズ
  #--------------------------------------------------------------------------
  def draw_actor_status_face(face_name,x, y)
    bitmap = DRAW_ACTOR_STATUS_FACE[face_name.id]
    rect = Rect.new(0, 0, 0, 0)
    rect.x = 0
    rect.y = 0
    rect.width = DRAW_ACTOR_STATUS_FACE_X
    rect.height =DRAW_ACTOR_STATUS_FACE_Y
    self.contents.blt(x, y, bitmap, rect)
    #bitmap.dispose
  end
  #--------------------------------------------------------------------------
  # ☆ ステータス画面上でクラスの描画 <新規追加> Ver.1.01~
  #     actor : アクター
  #     x     : 描画先 X 座標
  #     y     : 描画先 Y 座標
  #--------------------------------------------------------------------------
  def draw_actor_status_class(actor, x, y)
    self.contents.font.color = normal_color
    self.contents.draw_text(x, y, 288, WLH, actor.class.name)
  end
end
 
#////////////////////////////////////////////////////////////////
#作成者:ehime
#http://www.abcoroti.com/~nekoneko/index.html
#readmeやスタッフロールの明記,使用報告は任意.
#////////////////////////////////////////////////////////////////

Comment '13'

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 3 습작 2012.12.24 5398
637 스킬 훔치기 스킬을 만드는 스크립트! 5 우켈킁 2011.03.31 2390
636 기타 회피,명중,크리 스테이트를 작성하는 스크립트 9 카르와푸딩의아틀리에 2009.06.30 2393
635 기타 확장 에러 메시지 13 file 허걱 2009.08.17 2497
634 메뉴 확장 스테이터스 화면 - KGC 23 file 카르와푸딩의아틀리에 2009.08.19 5057
633 기타 화폐단위 구분해 주는 스크립트 38 file 허걱 2010.04.13 3652
632 이동 및 탈것 화면의 부드러운 스크롤 스크립트 32 카르와푸딩의아틀리에 2009.07.17 3817
631 기타 화면에 그림 그리는 스크립트 21 file 강진수 2010.02.27 2961
630 기타 화면 확대 스크립트 12 file 에돌이 2011.07.22 3059
629 기타 화면 해상도(640 X 480) 스크립트 6 file 쿠쿠밥솥 2012.01.10 3972
628 아이템 현재있는 파티원 선택 레벨업 아이템 만들기 1 file 싸패 2016.06.06 713
627 헬프윈도우 확장 13 file RPGbooster 2008.10.08 2872
626 메뉴 헬프 윈도우 중앙표시 스크립트 11 file 양념통닼 2008.06.10 3348
625 키입력 해외 제작자 He Who Jets님의 마우스 스크립트(mouse system) 1 file 보자기군 2014.09.30 1260
624 기타 해상도 변경 스크립트 11 카리스 2011.07.19 2723
623 스킬 합성샾 스크립트 ^^ [동영상 포함] 6 file 아방스 2008.09.23 6038
622 키입력 한글입력기(펌) 수정 10 전설의달빛조각사 2011.04.03 2674
621 이름입력 한글로 이름 입력하는 스크립트입니다. 55 file 헤르코스 2009.03.18 6662
620 이름입력 한글 이름 입력 스크립트입니다.^^ 14 레시온 2008.03.18 4382
619 액터 한계돌파(렙9999) 18 작은샛별 2010.03.07 3273
618 이동 및 탈것 피티원이 따라다니는 스크립트 38 file 아방스 2009.02.05 5024
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 ... 32 Next
/ 32