RMXP

XP - 부활스크립트 에러... 전문가분들 도와주십셔 ...

by ElecNote posted Jul 24, 2013
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄
Extra Form

우선...현재 제가 사용하고있는 스크립트들 입니다.

 

자신의 이름표시

NPC(이벤트)이름표시

메뉴창의 게이지바

맵 이름

미니맵

데미지 폰트

전투시 게이지바

그리고 부활스크립트...

 

지금 부활스크립트 마을설정하는법과 좌표입력방법은 다 익혔습니다만...

캐릭터가 죽고나서 부활하면

BGM도 안나올뿐더러

대화창이 아래에서 위로올라가있구요...

장소이동도 안됩니다...

이벤트자체가 에러를 먹은건지.....

 

사용중인스크립트들중에서 충돌해서그런건지 도무지 모르겠습니다....

전문가분들 도와주십셔..

 

 

---------

 

class Scene_Gameover
  # 죽엇니?
  $losegold = true # TRUE = yes //\ FALSE = no
  $loseexp = true # TRUE = yes //\ FALSE = no
 
  #--------------------------------------------------------------------------
  # * 메인 프로세스
  #--------------------------------------------------------------------------
  def main
    @spriteset = Spriteset_Map.new
    # PK 갱신
    # 도표에 게임을 만드십시오
    # 옵션 목록을 만드십시오
    @options = Window_Command.new(160, ["마을로 이동"])
    @options.x = 480
    @options.y = 384
    @Gameover = Window_GameOver.new
    #  BGM와 BGS 정지합니다.
    $game_system.bgm_play(nil)
    $game_system.bgs_play(nil)
    # 저에 놀이 게임
    $game_system.me_play($data_system.gameover_me)
    # 과도를 수행하세요
    Graphics.transition(120)
    # 메인 루프
    loop do
      # 게임 스크린 갱신
      Graphics.update
      # 갱신은 정보를 입력
      Input.update
      # 프레임 갱신
      update
      # 스크린이 바꾸어지는 경우에 비행 루프를 중지한다.
      if $scene != self
        break
      end
    end
    # 과도를 위해 준비
    Graphics.freeze
    # 도표에 게임을 처분
    @spriteset.dispose
    @Gameover.dispose
    # 선택권을 처분
    @options.dispose
    # 과도를 수행
    Graphics.transition(40)
    # 과도를 위해 준비
    Graphics.freeze
    # 만약에 전투인 경우에 테스트 한다.
    if $BTEST
      $scene = nil
    end
  end
  #--------------------------------------------------------------------------
  # * 프레임 업데이트
  #--------------------------------------------------------------------------
  def update
    @options.update
    @Gameover.update
    @spriteset.update
    # C 버튼이 눌러진 경우
    if Input.trigger?(Input::C)
      case @options.index
      when 0
        $game_player.refresh
        $game_temp.player_new_map_id = $game_variables[75] # 아이디
        $game_temp.player_new_x = $game_variables[74] # 맵 x 좌표
        $game_temp.player_new_y = $game_variables[73] # 맵 y 좌표
        $game_map.setup($game_temp.player_new_map_id)
        $game_player.moveto($game_temp.player_new_x, $game_temp.player_new_y)
        $game_map.update
        $game_actors[1].hp = $game_actors[1].maxhp
        $game_actors[1].sp = $game_actors[1].maxsp
        $game_temp.gameover = false
        $game_temp.player_transferring = false
        $game_temp.transition_processing = false
        $scene = Scene_Map.new
      
        if $losegold == true
        $gameover_gold = (($game_party.gold.to_i * 10) / 100 / 4) # 돈을 5%를 잃는다.
        $game_party.lose_gold($gameover_gold)
        end
        else
      end                                                                            
    
      if $loseexp == true
        $game_actors[1].exp -= (($game_actors[1].level.to_i * 10) / 2) #경험치 잃는다
      end                                                                                      
      else                                                                                        #(:: so 플레이어  30 경험치 잃는다.)
      end
  end
end

#==============================================================================
# ** window_help
#------------------------------------------------------------------------------
# 이 창은 배우 상태와 함께 기술과 품목 설명을 보여준다 .
#==============================================================================

class Window_GameOver < Window_Base
  #--------------------------------------------------------------------------
  # * 목표 초기 설정
  #--------------------------------------------------------------------------
  def initialize
    super(0, 0, 640, 64)
    self.contents = Bitmap.new(width - 32, height - 32)
    refresh
  end
  def refresh
      self.contents.clear
      self.contents.font.color = normal_color
      self.contents.draw_text(20,-35,1000,100, "Game" + "Over")
    end
  end