RPGXP 스크립트
2013.09.24 08:12

간단한 여관 스크립트

조회 수 911 추천 수 0 댓글 1
?

단축키

Prev이전 문서

Next다음 문서

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

단축키

Prev이전 문서

Next다음 문서

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

http://www.dubealex.com/asylum/index.php?showtopic=9362 
  간단한 여관스크립트입니다.  호출법은 이벤트 명령->스크립트에서: 
a = #여관 비용 
b = #주인의 인사말('어서 오세요~ 하룻밤에 $$$입니다.  쉬어가시겠습니까?') 
c = #작별인사('안녕히 가세요~') 
call_inn(a,b,c) 

호출 예: 
a = 300 
b = '어서 오십시오.  하룻밤 자는데 300G입니다.  자고 가시겠습니까?' 
c = '이용해 주셔서 감사합니다.' 
call_inn(a,b,c) 


#============================================================================== 
# ** Inn 
#------------------------------------------------------------------------------ 
# Tsunokiette 
# 2 
# 2006-06-12 

# Edited by Zeriab 
# 2006-06-13 
#============================================================================== 

# Quick Call 
def call_inn(a,b,c) 
  $scene = Inn.new(a,b,c) 
end 

#================================================================= 
# ** Scene Inn 
#================================================================= 
class Inn 
    
    #================================================================= 
    # * Initialization 
    #----------------------------------------------------------------- 
    # Cost = Ammount of Money to Charge. 
    # Message A = Message to say hello and ask if you want to stay. 
    # Message B = Message to say once you've stayed and are leaving. 
    #================================================================= 
    def initialize(cost,message_a,message_b) 
        @cost = cost 
        @hello = message_a 
        @goodbye = message_b 
    end 
  
    #================================================================= 
    # * Main Proccessing 
    #================================================================= 
    def main 
        @bitmap = Spriteset_Map.new 
        @gold = Window_Gold.new 
        @gold.x = (640 - @gold.width) 
        @gold.y = 0 
        @choice = Window_Command.new(200,['Yes','No']) 
        width = @choice.contents.text_size('Yes').width + 40 
        @choice.dispose 
        @choice = Window_Command.new(width,['Yes','No']) 
        @choice.width = width 
        @choice.y = 214 
        @choice.index = 0 
        @message = Window_Message.new  
        $game_temp.message_text = @hello.dup    
        @message.visible = true 
        # Execute transition 
        Graphics.transition 
        loop do 
            Graphics.update 
            Input.update 
            @choice.update 
            @bitmap.update 
            $game_temp.message_text = @hello.dup    
            @message.refresh 
            @message.update            
            if Input.trigger?(Input::C) 
                case @choice.index 
                when 0 
                    if $game_party.gold >= @cost 
                        for actor in $game_party.actors 
                          actor.hp = actor.maxhp 
                          actor.sp = actor.maxsp 
                        end 
                        @gold.visible = false 
                        @message.visible = false 
                        @choice.visible = false 
                        @choice.active = false 
                        $game_party.lose_gold(@cost) 
                        @gold.refresh 
                        tone1 = Tone.new(-255,-255,-255,255) 
                        tone2 = Tone.new(0,0,0,0) 
                        $game_screen.start_tone_change(tone1, 20) 
                        wait = 0 
                        max_wait = 165 
                        while wait < max_wait do 
                          if wait == 20 
                            $game_system.me_play(RPG::AudioFile.new('014-Inn01')) 
                          end 
                          if wait == max_wait - 20 
                            $game_screen.start_tone_change(tone2, 20) 
                          end 
                          wait += 1 
                          $game_screen.update 
                          Graphics.update 
                          @bitmap.update 
                        end 
                        @gold.visible = true 
                        @message.visible = true 
                    else          
                        @choice.visible = false 
                        @choice.active = false 
                        @goodbye = "It appears you don't have enough money." 
                    end 
                end 
                break 
            elsif Input.trigger?(Input::B) 
                break 
            end 
        end 
        @choice.visible = false 
        @choice.active = false  
        $game_temp.message_text = @goodbye.dup    
        loop do 
            Graphics.update 
            Input.update 
            @bitmap.update 
            $game_temp.message_text = @goodbye.dup 
            @message.update 
            @message.refresh 
            if Input.trigger?(Input::C) or Input.trigger?(Input::B) 
                @message.visible = false 
                break 
            end 
        end 
        @gold.dispose 
        @message.dispose 
        @choice.dispose 
        @bitmap.dispose 
        $scene = Scene_Map.new 
    end 
end


by Tsunokiette@Creation Asylum

?

  1. [RPG MV] 퀘스트 마커 지속 표시 플러그인

  2. [VXAce] 레이어 맵 <layer> 시스템

  3. [VX] 메시지 표시를 한번에 표시로 전환하기

  4. [VX] 메시지 표시를 한번에 표시로 전환하기

  5. [VX] 조건분기로 키입력의 처리 실행

  6. [VX] 조건분기로 키입력의 처리 실행

  7. [VX] 파티 선두 캐릭터 액터ID를 변수에 넣기

  8. [VX] 파티 선두 캐릭터 액터ID를 변수에 넣기

  9. [鳥小屋] 실적 플러그인(인게임 트로피 시스템)

  10. [무한응용]스위치/변수 임시 저장/로딩하기

  11. [무한응용]스위치/변수 임시 저장/로딩하기

  12. [아힝흥행]레벨한계 돌파 스크립트

  13. 가상 키보드 입력 스크립트

  14. 간단한 여관 스크립트

  15. 게임도중에 글씨체를 바꿔보자.

  16. 게임도중에 글씨체를 바꿔보자.

  17. 게임시작하면 바로 뉴게임으로 가는 플러그인!

  18. 게임에서 제공해주는 노래가 아닌 외부에서 다운받고 안에 넣어쓰려면 어떻게 해야하나요?

  19. 게임프레임 조절

  20. 경험치 표시 스크립트

Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 15 Next
/ 15






[개인정보취급방침] | [이용약관] | [제휴문의] | [후원창구] | [인디사이드연혁]

Copyright © 1999 - 2016 INdiSide.com/(주)씨엘쓰리디 All Rights Reserved.
인디사이드 운영자 : 천무(이지선) | kernys(김원배) | 사신지(김병국)