VX 스크립트

말그대로 비행선을 더 높이 뜨게 하는 스크립트 입니다.

기존의 비행선은 캐릭터의 바로 위를 날아 다녔잖아요?(사람 키만큼밖에 안뜨는 비행선이라니... 말도 안돼! <퍽!)

그래서! 비행선의 비행 높이를 증가시키는 스크립트를 소개하겠습니다~

여기서 MAX AlTITUDE라고 표시되어 있는 곳의 값을 변경 시키면 어떤 높이로든 날게할 수 있습니다.

아래부터 복사

==============================================================================
# Fly High 1.0
#------------------------------------------------------------------------------
# Este script permite que você modifique a altura em que o AirShip voa.
# Para entender melhor este script, leia as modificações em baixo.
#==============================================================================

class Game_Vehicle < Game_Character
  #--------------------------------------------------------------------------
  # Constantes (Altura do Vôo)
  #--------------------------------------------------------------------------
  MAX_ALTITUDE = 100
 
#Procedimento:
  # Se quiser que a AirShip vôo mais alto, basta modificar o
  #algarismo 100 por um mais elevado como por exemplo: 200.
  #Se quiser que a AirShip vôo mais baixo, basta fazer o oposto, modificando
  #o algarismo 100 por um inferior como por exemplo: 60.
  #--------------------------------------------------------------------------
  # Variáveis públicas
  #--------------------------------------------------------------------------
  attr_reader   :type                     # Tipo de veículo (0 .. 2)
  attr_reader   :altitude                 # Altitude para airship
  attr_reader   :driving                  # Marca execução
  #--------------------------------------------------------------------------
  # Inicialização do objeto
  #     type : Tipo de veículo (0:barco 1:navio 2:airship)
  #--------------------------------------------------------------------------
  def initialize(type)
    super()
    @type = type
    @altitude = 0
    @driving = false
    @direction = 4
    @walk_anime = false
    @step_anime = false
    load_system_settings
  end
  #--------------------------------------------------------------------------
  # Carregamento da construção de sistema
  #--------------------------------------------------------------------------
  def load_system_settings
    case @type
    when 0;  sys_vehicle = $data_system.boat
    when 1;  sys_vehicle = $data_system.ship
    when 2;  sys_vehicle = $data_system.airship
    else;    sys_vehicle = nil
    end
    if sys_vehicle != nil
      @character_name = sys_vehicle.character_name
      @character_index = sys_vehicle.character_index
      @bgm = sys_vehicle.bgm
      @map_id = sys_vehicle.start_map_id
      @x = sys_vehicle.start_x
      @y = sys_vehicle.start_y
    end
  end
  #--------------------------------------------------------------------------
  # Atualização
  #--------------------------------------------------------------------------
  def refresh
    if @driving
      @map_id = $game_map.map_id
      sync_with_player
    elsif @map_id == $game_map.map_id
      moveto(@x, @y)
    end
    case @type
    when 0;
      @priority_type = 1
      @move_speed = 4
    when 1;
      @priority_type = 1
      @move_speed = 5
    when 2;
      @priority_type = @driving ? 2 : 0
      @move_speed = 6
    end
    @walk_anime = @driving
    @step_anime = @driving
  end
  #--------------------------------------------------------------------------
  # Mudar posição
  #     map_id : ID do mapa
  #     x      : coordenada X
  #     y      : xoordenada Y
  #--------------------------------------------------------------------------
  def set_location(map_id, x, y)
    @map_id = map_id
    @x = x
    @y = y
    refresh
  end
  #--------------------------------------------------------------------------
  # Verificando coincidências de coordenadas
  #     x : coordenada X
  #     y : xoordenada Y
  #--------------------------------------------------------------------------
  def pos?(x, y)
    return (@map_id == $game_map.map_id and super(x, y))
  end
  #--------------------------------------------------------------------------
  # Transparência
  #--------------------------------------------------------------------------
  def transparent
    return (@map_id != $game_map.map_id or super)
  end
  #--------------------------------------------------------------------------
  # Entrar no veículo
  #--------------------------------------------------------------------------
  def get_on
    @driving = true
    @walk_anime = true
    @step_anime = true
    if @type == 2               # Caso seja uma airship
      @priority_type = 2        # Mudar prioridade para "junto ao herói"
    end
    @bgm.play                   # Reproduz música
  end
  #--------------------------------------------------------------------------
  # Sair do veículo
  #--------------------------------------------------------------------------
  def get_off
    @driving = false
    @walk_anime = false
    @step_anime = false
    @direction = 4
  end
  #--------------------------------------------------------------------------
  # Sincronização com o jogador
  #--------------------------------------------------------------------------
  def sync_with_player
    @x = $game_player.x
    @y = $game_player.y
    @real_x = $game_player.real_x
    @real_y = $game_player.real_y
    @direction = $game_player.direction
    update_bush_depth
  end
  #--------------------------------------------------------------------------
  # Velocidade
  #--------------------------------------------------------------------------
  def speed
    return @move_speed
  end
  #--------------------------------------------------------------------------
  # Coordenadas Y na tela
  #--------------------------------------------------------------------------
  def screen_y
    return super - altitude
  end
  #--------------------------------------------------------------------------
  # Verifica se é possível mover
  #--------------------------------------------------------------------------
  def movable?
    return false if (@type == 2 and @altitude < MAX_ALTITUDE)
    return (not moving?)
  end
  #--------------------------------------------------------------------------
  # Atualização da tela
  #--------------------------------------------------------------------------
  def update
    super
    if @type == 2               # Caso seja uma airship
      if @driving
        if @altitude < MAX_ALTITUDE
          @altitude += 1        # Aumenta a altitude
        end
      elsif @altitude > 0
        @altitude -= 1          # Diminui a altitude
        if @altitude == 0
          @priority_type = 0    # Retorna para prioridade "abaixo do herói"
        end
      end
    end
  end
end

#----------------------------------------------------------------------------
#                                 Fly High 1.0
#                       www.rpgmakerbrasil.com/forum/
#----------------------------------------------------------------------------

지금까지! 루시페르였습니다!~
Comment '8'
  • ?
    Zero_Som 2009.06.06 18:03

    높이? 어떻게 구현되나 궁금하군요 ㅎㅎ

     

  • ?
    IceSky 2009.06.06 20:13

    허.. 한번 테스트 해볼까?

  • ?
    백년술사 2009.06.09 22:52
    드레곤볼 게임 만들때 쓰면 좋을지도...
  • ?
    나이스goo 2009.06.20 15:27
    오진짜. 놉게난다/...
  • ?
    불독 2009.12.06 18:23

    이거... 그냥 스크립트 추가하지말고 Game_Vehicle스크립트 중에서 12번째 줄 32라고 나와있는 숫자를 늘리면 높이 날고 줄이면 낮게 납니다.

    괜히 스크립트 추가하실 필요가 전혀 없어요...ㅜㅜ

  • ?
    뾰롱뾰롱 2011.02.25 02:29

    ㅋㅋㅋㅋㅋ 레알 그렇네

  • ?
    언제나웃음 2010.01.01 22:23

    비행선 스피드도 빨라짐

  • ?
    모험소년 2010.01.07 18:02

    이게 어디가 어이없죠..? 은근 필요있는 녀석인데 ㅋㅋㅋ


List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 3 습작 2012.12.24 5408
50 기타 메뉴에서 애니매이션 사용! 12 비극ㆍ 2010.04.19 3022
49 기타 그림자 없애기... 3 비극ㆍ 2010.04.19 1642
48 기타 세이브 포인트 2 비극ㆍ 2010.04.19 2518
47 기타 레벨업 이펙트... 20 비극ㆍ 2010.04.19 3768
46 기타 Lock Screen 3 비극ㆍ 2010.04.19 2012
45 기타 전투후 이어지는 베경음 9 비극ㆍ 2010.04.19 2190
44 기타 [자작]게임 실행시 파일 체크 프로그램. 또는 파일 실행기. 16 file NightWind AYARSB 2010.05.20 3193
43 기타 개인판타지메뉴+업그래이드 배틀 23 file 콩밥 2010.08.02 4211
42 기타 이벤트 상세효과 9 file 사람이라면? 2010.08.15 2801
41 기타 블록 미니게임 11 file 사람이라면? 2010.08.15 2269
40 기타 몬스터 리얼한 효과 27 file 사람이라면? 2010.08.16 5074
39 기타 RTS? 미니게임 스크립트 7 file 사람이라면? 2010.08.16 2788
38 기타 설명하기 힘든 스크립트 (스크린샷 확인) 10 file 사람이라면? 2010.08.16 3818
37 기타 다른 방식의 테트리스 미니게임 7 file 사람이라면? 2010.08.17 2362
36 기타 블랙잭, 룰렛, 포커 스크립트 종합 9 file 도심 2010.08.22 2643
35 기타 VX Weather Script by ccoa 1 Alkaid 2010.09.08 1318
34 기타 타격관계도 등의 한계돌파 11 시트르산 2010.09.10 2365
33 기타 이벤트 제작용 소품 모음 스크립트 12 시트르산 2010.09.10 2209
32 기타 레벨업 시 증가분의 HP/MP 회복 10 시트르산 2010.09.12 2427
31 기타 みんと씨의 RMVX 샘플 프로젝트 1.11 (2009-11-05) 6 Alkaid 2010.09.13 2005
Board Pagination Prev 1 2 3 4 5 6 7 Next
/ 7