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 5398
637 전투 VLAD ABS [액알 시스템] 65 아방스 2009.01.07 12563
636 전투 vampyr SBABS-Requiem ABS 9(액알) 101 file 담먹캐 2009.11.01 12000
635 HUD rpg 만들기 vx - 맵이름 띠우는 스크립트 ^^ 74 아방스 2008.01.27 11920
634 HUD PRABS v1.0 [hud,주석액알,원거리공격,hotkeys,vx] 대박감이다. 47 유칸지 2008.08.13 11114
633 전투 사이드뷰배틀3.3 + ATB1.1 스크립트. 65 할렘 2009.02.01 10945
632 전투 ORBS [새로운 전투 방식] 48 file 아방스 2009.03.04 10208
631 그래픽 3D그래픽 파티클엔진 45 file RPGbooster 2008.10.08 10130
630 전투 rpgvx 간단액알 스크립트 제작: 41 *PS 2008.02.07 9821
629 메뉴 (모그메뉴 풀세트팩 SEL Style.) 유니크급 자료 147 file 할렘 2009.02.07 9558
628 전투 RPG Tankentai SBS 3.3 + ATB Kaduki Eng 58 아방스 2009.02.05 9071
627 전투 ATB전투방식.(사이드뷰X 백발의카임전투방식O) 14 file 이피쿤 2009.06.24 9035
626 메뉴 일본에서 만든 멋있는메뉴변경 스크립트 (한글 VX에서 쓰시면 자동으로 바뀜) 45 유칸지 2008.04.09 8861
625 전투 WGB배틀 시스템. 59 file 카르와푸딩의아틀리에 2009.06.30 8776
624 전투 Crissaegrim ABS 2.0.5 최신 48 file RPGbooster 2008.10.08 8765
623 전투 Requiem ABS 8 - 액션 배틀 시스템 8 36 아방스 2009.06.24 8540
622 전투 RPGTankentai SBS3.3b 버전 (사이드뷰) 21 file 카르와푸딩의아틀리에 2009.07.01 8455
621 전투 사이드뷰 스크립트 [2003 전투 방식] 39 아방스 2008.03.09 8406
620 맵/타일 RPG 만들기 VX 로 구현한 3D~ 42 아방스 2008.09.02 8405
619 메뉴 메뉴변경 스크립트 34 아방스 2008.01.24 7937
618 전투 PRABS 2.0 액션배틀시스템 58 file RPGbooster 2008.10.08 7572
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