VX 스크립트

#출처 : http://daiambition.web.fc2.com/materialrgss2.html

 #- 이 스크립트는 한글 번역기를 통해 번역한 결과로서, 출처를 명확히 표기했습니다.

 #

#사용법 : 스크립트 복/붙 후

 #  이벤트 상에서의 스크립트 추가.

#  c_zoom(-1, 50) 의 경우 이벤트 넘버 (-1) 인 플레이어의 크기를 50 % 배율로 줄임.

# c_zoom(2, 150) 의 경우, 이벤트 넘버 (2) 인 오브젝트의 크기를 100% 배율로 늘임.

#응용법 : -  맵 상에서 전투 씬 이벤트 등에서의 크기 변화 묘사 시.

#               -  특수한 동작의 결과에 의해 줄어든 캐릭터, 오브젝트의 묘사 시.

 #### 아래 부터 스크립트 시작입니다. #####

 

 

=begin
■캐릭터 확대 축소 RGSS2 DAIpage■ v1.1

●기능●
·캐릭터 스프라이트를 쑥쑥 로 확대 축소합니다.

 ★사용예★
 ※ 스테이트 「소인」등의 연출에.
 ※ 아주 커지는 이벤트나 소울타리 되는 이벤트의 연출에.
 ※ 보상을 잡은 순간에는 보상을 조금 아주 크게 해 강조…같은.(무리하게)

●사용법●
 이벤트 커멘드의 스크립트로

c_zoom(id, zoom)

 (을)를 실행하면 지정한 id 의 이벤트가 zoom 의 확대율이 됩니다.
 id에는 이벤트 ID(-1로 플레이어, 0으로 이 이벤트)를,
 zoom에는 확대율(100이 표준)을 지정.

례:
c_zoom(-1, 50)
 # 플레이어를 반의 크기에.
c_zoom(5, 150)
 # 이벤트 ID 5 를 1.5배에.

또,

c_zoom_2(id, zoom)
 
 (와)과 같이 실행하면 갑자기 지정한 크기가 됩니다.

c_zoom_end(id)
(을)를 실행하면 원래대로 돌아갑니다.

●사양●
 RGSS의 사양에 의해, 이벤트 캐릭터의 확대 축소의 경우, 장소 이동에 의해서 캐릭터
 정보가 리셋트 되기 위해, 확대 축소도 리셋트 됩니다.플레이어에 관한 봐,
 해제할 때까지 효과가 계속 됩니다.

●재정의하고 있는 개소●

 Game_Character, Sprite_Character를 앨리어스(alias)
 ※같은 개소를 변경하는 스크립트와 병용 했을 경우는 경합 할 가능성이 있습니다.

●갱신 이력●
08/09/15:실행 후, 메뉴 호출등에서 화면 전환을 하면 재차 확대 축소의 동작을 한다
     불편을 수정.갑자기 확대 기능을 추가.
=end
#==============================================================================
# ■ Game_Character
#==============================================================================
class Game_Character
  #--------------------------------------------------------------------------
  # ● 공개 인스턴스 변수
  #--------------------------------------------------------------------------
  attr_accessor :c_zoom
  attr_accessor :c_zoom_flg
  #--------------------------------------------------------------------------
  # ● 오브젝트 초기화
  #--------------------------------------------------------------------------
  alias dai_c_zoom_initialize initialize
  def initialize
    dai_c_zoom_initialize
    @c_zoom = 100
    @c_zoom_flg = false
  end
end
#==============================================================================
# ■ Game_Interpreter
#==============================================================================
class Game_Interpreter
  #--------------------------------------------------------------------------
  # ● 캐라크타즘의 개시
  #--------------------------------------------------------------------------
  def c_zoom(id, zoom)
    character = get_character(id)
    character.c_zoom_flg = true
    character.c_zoom = zoom
  end
  #--------------------------------------------------------------------------
  # ● 캐라크타즘의 종료
  #--------------------------------------------------------------------------
  def c_zoom_end(id)
    character = get_character(id)
    character.c_zoom_flg = true
    character.c_zoom = 100
  end
  #--------------------------------------------------------------------------
  # ● 캐라크타즘의 종료
  #--------------------------------------------------------------------------
  def c_zoom_2(id, zoom)
    character = get_character(id)
    character.c_zoom_flg = false
    character.c_zoom = zoom
  end
end
#==============================================================================
# ■ Sprite_Character
#==============================================================================
class Sprite_Character < Sprite_Base
  #--------------------------------------------------------------------------
  # ● 프레임 갱신
  #--------------------------------------------------------------------------
  alias dai_c_zoom_update update
  def update
    dai_c_zoom_update
    zoom_update
  end
  #--------------------------------------------------------------------------
  # ● 줌의 갱신
  #--------------------------------------------------------------------------
  def zoom_update
    if @character.c_zoom_flg == false
      unless @character.c_zoom == 100
        self.zoom_x = @character.c_zoom * 1.00 / 100
        self.zoom_y = @character.c_zoom * 1.00 / 100
      else @character.c_zoom == 100
        self.zoom_x = 1
        self.zoom_y = 1
      end
    else
      if @character.c_zoom == 100
        if self.zoom_x == 1
          zoom_update_flg
          return
        elsif self.zoom_x < 1
          if self.zoom_x >= 0.9
            a = 0.01
          else
            a = 0.05
          end
        elsif self.zoom_x > 1
          if self.zoom_x <= 1.1
            a = -0.01
          else
            a = -0.05
          end
        end
      elsif @character.c_zoom > 100
        b = self.zoom_x * 100
        if b >= @character.c_zoom
          zoom_update_flg
          return
        elsif self.zoom_x >= (@character.c_zoom * 1.00 / 100) - 0.1
          a = 0.01
        else
          a = 0.05
        end
      elsif @character.c_zoom < 100
        b = self.zoom_x * 100
        if b <= @character.c_zoom
          zoom_update_flg
          return
        elsif self.zoom_x <= (@character.c_zoom * 1.00 / 100) + 0.1
          a = -0.01
        else
          a = -0.05
        end
      end
      self.zoom_x += a
      self.zoom_y += a
      c = self.zoom_x * 100
      unless c.integer?
        c = c.round * 1.00 / 100
        self.zoom_x = c
        self.zoom_y = c
      end
    end
  end
  #--------------------------------------------------------------------------
  # ● 줌 실행중 플래그를 오프
  #--------------------------------------------------------------------------
  def zoom_update_flg
    if @character.c_zoom_flg
      @character.c_zoom_flg = false
    end
  end
end

Comment '6'

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 3 습작 2012.12.24 5398
277 전투 맨손 공격시 2번공격하는 스크립트 5 아방스 2008.01.24 2357
276 타이틀/게임오버 맨처음 시작할때 타이틀에 게임로드칸 없애기 7 미카엘 2008.08.20 2819
275 HUD 맵 이름 스크립트 21 file 개임맨 2010.10.03 4365
274 HUD 맵 이름을 띠우는 스크립트 [메시지창] 24 아방스 2008.03.09 4748
273 타이틀/게임오버 맵 타이틀 스크립트 48 아방스 2009.06.17 5547
» 맵/타일 맵상 캐릭터 그래픽 확대 / 축소 이벤트 스크립트 6 시트르산 2010.09.10 3023
271 변수/스위치 맵에 변수와 스위치 설정하기.. 5 정의로운녀석 2008.07.22 1984
270 맵/타일 맵에 이벤트 뿌리기 입니다. 7 file 허걱 2009.01.31 3827
269 HUD 맵이름 띄우는 스크립트 입니다. 33 시에란 2008.08.16 5271
268 그래픽 먼가이상한데... 밤낮 변환 vx 44 작은악마 2008.03.18 3414
267 메뉴 메뉴 배경화면 바꾸는 스크립트 9 독도2005 2008.03.23 4520
266 메뉴 메뉴변경 스크립트 34 아방스 2008.01.24 7937
265 기타 메뉴에서 애니매이션 사용! 12 비극ㆍ 2010.04.19 3022
264 메시지 메시지 오른쪽 정렬되어 나오는 스크립트 3 file 아방스 2009.07.12 3237
263 메시지 메시지 표시 시스템 [NMS3] 31 아방스 2009.01.24 6248
262 메시지 메시지를 빠르게 넘겨주는 스크립트 3 타카나시 소라 2012.07.23 5038
261 타이틀/게임오버 메인 화면을 건너뛰고 시작하는 스크립트 14 아방스 2008.02.01 3064
260 기타 멥 이름 띄우기 10 신규회원 2012.02.24 3626
259 이름입력 모그 이름 바꾸기 한글 변역! 2 Man.... 2008.11.04 4114
258 메뉴 모그메뉴 스킨입니다. 1 file 아부리 2009.02.16 6866
Board Pagination Prev 1 ... 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 ... 32 Next
/ 32