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
557 VX 주석액알 PR코더즈의ABS보다 않좋다고생각할수있지만 더좋음 34 배군 2008.08.17 5145
556 배틀할때 몬스터의 HP표시 !! 5 file 미카엘 2008.08.17 7517
555 타이틀/게임오버 맨처음 시작할때 타이틀에 게임로드칸 없애기 7 미카엘 2008.08.20 2819
554 ((대박!)) 게임상의 모든 글자에 효과 주기.. 33 미카엘 2008.08.20 5583
553 키입력 입력 기능 확장 스크립트 추가. [전체키 스크립트] 22 아방스 2008.08.25 3772
552 전투 돌아가는 전투 메뉴 시스템 33 아방스 2008.08.29 5085
551 체력 게이지바 스크립트 30 아방스 2008.09.01 5829
550 맵/타일 RPG 만들기 VX 로 구현한 3D~ 42 아방스 2008.09.02 8405
549 맵/타일 월드맵 스크립트 49 아방스 2008.09.07 6123
548 레벨업 할경우 hp/mp 등을 채워주는 스크립트 49 아방스 2008.09.09 4473
547 파티 전에 아방스님이 올린 '파티 변경 시스템'을 한글화 했습니다. 17 file 아리엘 2008.09.16 3589
546 전투 지형에 따른 전투배경화면 표시 스크립트!! 30 file 레오 2008.09.17 5855
545 스킬 합성샾 스크립트 ^^ [동영상 포함] 6 file 아방스 2008.09.23 6038
544 Path Finding 6 Man... 2008.10.08 1530
543 AntiLag_1.2h 23 file RPGbooster 2008.10.08 2284
542 빠른 스킬사용 6 file RPGbooster 2008.10.08 2814
541 타이틀/게임오버 랜덤 타이틀화면 8 file RPGbooster 2008.10.08 2832
540 깔끔한 링메뉴 45 file RPGbooster 2008.10.08 5000
539 탈것을 소환 12 file RPGbooster 2008.10.08 2713
538 심플하게 메뉴 띄우기 25 file RPGbooster 2008.10.08 3864
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