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 5408
317 저장 세이브 시스템 확장 스크립트 9 file 신규회원 2012.02.24 3315
316 아이템 아이템 분류 19 file RPGbooster 2008.10.11 3309
315 저장 세이브/로드가 불가능한 스크립트!!! 9 file ~AYARSB~ 2010.03.08 3298
314 스킬 DQ특기풍스킬 - KGC 4 카르와푸딩의아틀리에 2009.08.19 3288
313 이름입력 MOG 이름바꾸기 11 file RPGbooster 2008.10.08 3285
312 장비 장비 레벨 개념 추가 스크립트 14 아방스 2010.12.06 3275
311 다음 레벨까지의 경험치 강제조정 13 정의로운녀석 2008.07.24 3273
310 액터 한계돌파(렙9999) 18 작은샛별 2010.03.07 3273
309 이동 및 탈것 탈것탑승후 내부로 이동하는 스크립트 16 file 카르와푸딩의아틀리에 2009.07.01 3272
308 기타 KGC파라미터배분 2 (VX전용) 20 file 카르와푸딩의아틀리에 2009.07.21 3269
307 상태/속성 어떤 상태일때에만 사용가능한 스킬 14 file 좀비사냥꾼 2009.03.25 3266
306 기타 라이트 이펙트 스크립트 12 file 아방스 2009.02.07 3262
305 기타 [kcg] 슬립 데미지 상세화 19 BoneheadedAlien 2009.02.22 3242
304 메시지 메시지 오른쪽 정렬되어 나오는 스크립트 3 file 아방스 2009.07.12 3237
303 기타 <중수이상>RPG VX의 대표적 참조값 6 까까까 2009.05.31 3236
302 타이틀/게임오버 Graphics Load System 1.0.1 14 file NightWind AYARSB 2010.06.10 3230
301 전투 사이드뷰배틀에서 찌르기 공격 가능하게 7 078656577er 2009.09.16 3223
300 전투 불사신(무적) 스크립트 9 file 미얼 2009.10.29 3198
299 기타 [자작]게임 실행시 파일 체크 프로그램. 또는 파일 실행기. 16 file NightWind AYARSB 2010.05.20 3193
298 상점 Shopoholic(한글 설명) 11 Man... 2008.10.29 3185
Board Pagination Prev 1 ... 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 ... 32 Next
/ 32