Avangs

  • 게임 정보
    • 게임 소개
    • 게임 리뷰
    • 게임 실황
    • 게임 공략
    • 모바일 테스트
  • 게임 작품new
    • 완성작 게임new
    • 체험판 게임
    • 한글판 게임
    • 온라인 게임
    • 추천작 제작자 저장소
  • 투표선정 작품
    • 아방스 추천작
    • 완성 기대작
    • 투표 신청
    • 투표소
    • 투표 결과
  • 강좌new
    • 아방스 칼럼
    • 비주얼노벨 강좌
    • 알만툴 강좌
      • MZ 강좌
      • MV 강좌
      • VX Ace 강좌
      • VX 강좌
      • XP 강좌
      • 2003 강좌
      • 2000 강좌
    • 게임메이커 강좌
    • 울프툴 강좌
    • 3D 게임제작 강좌
    • 2D 게임제작 강좌
    • 그래픽 제작 강좌
    • 기타 강좌
  • 질문과 답변new
    • 자주 묻는 질문new
    • 질문과 답변new
    • 제작의뢰
  • 커뮤니티new
    • 구인·구직·외주
    • 테스트 요청
    • 자유게시판new
    • 게임계 소식
    • 유머&정보
    • 사이트링크
    • 이벤트&대회
  • 창작
    • 게임 기획
    • 맵배치
    • 글쓰기
    • 그리기
    • 음악
  • 자료실
    • 게임제작툴
    • 예제 및 샘플
    • 그래픽 소재
      • 오리지널 소재
      • 이차창작 소재
      • 수정·개조 소재
      • 외부 소재
    • 사운드 소재
    • 확장·플러그인·스크립트
      • MZ 플러그인
      • MV 플러그인
      • Ace 스크립트
      • VX 스크립트
      • XP 스크립트
      • 2k3 플러그인
      • VN 플러그인·확장
    • 외부 소재사이트
    • 기타 자료
      • 한글화툴
      • 무료 폰트
      • 유틸리티
    • 디자인 참고자료
  • 고객센터new
    • 공지사항new
    • 건의 및 신고
    • 핫 이슈
로그인 회원가입
Avangs
  • 게임 정보
    • 게임 소개
    • 게임 리뷰
    • 게임 실황
    • 게임 공략
    • 모바일 테스트
  • 게임 작품new
    • 완성작 게임new
    • 체험판 게임
    • 한글판 게임
    • 온라인 게임
    • 추천작 제작자 저장소
  • 투표선정 작품
    • 아방스 추천작
    • 완성 기대작
    • 투표 신청
    • 투표소
    • 투표 결과
  • 강좌new
    • 아방스 칼럼
    • 비주얼노벨 강좌
    • 알만툴 강좌
      • MZ 강좌
      • MV 강좌
      • VX Ace 강좌
      • VX 강좌
      • XP 강좌
      • 2003 강좌
      • 2000 강좌
    • 게임메이커 강좌
    • 울프툴 강좌
    • 3D 게임제작 강좌
    • 2D 게임제작 강좌
    • 그래픽 제작 강좌
    • 기타 강좌
  • 질문과 답변new
    • 자주 묻는 질문new
    • 질문과 답변new
    • 제작의뢰
  • 커뮤니티new
    • 구인·구직·외주
    • 테스트 요청
    • 자유게시판new
    • 게임계 소식
    • 유머&정보
    • 사이트링크
    • 이벤트&대회
  • 창작
    • 게임 기획
    • 맵배치
    • 글쓰기
    • 그리기
    • 음악
  • 자료실
    • 게임제작툴
    • 예제 및 샘플
    • 그래픽 소재
      • 오리지널 소재
      • 이차창작 소재
      • 수정·개조 소재
      • 외부 소재
    • 사운드 소재
    • 확장·플러그인·스크립트
      • MZ 플러그인
      • MV 플러그인
      • Ace 스크립트
      • VX 스크립트
      • XP 스크립트
      • 2k3 플러그인
      • VN 플러그인·확장
    • 외부 소재사이트
    • 기타 자료
      • 한글화툴
      • 무료 폰트
      • 유틸리티
    • 디자인 참고자료
  • 고객센터new
    • 공지사항new
    • 건의 및 신고
    • 핫 이슈
로그인 회원가입

NOTICE

공지사항
더보기
  • 홈페이지 개편 및 시스템 정비 작업 안내 04.13

Recently Added Games

최근 등록 게임
  • 어드벤쳐 [1치킨 수상작] 로봇 관리자 newfile 04.13
  • 퍼즐/보드 알파벳 용사 2 file 04.08
  • 롤플레잉 스틱 파이터 섬 1 체험판 file 03.31
  • 어드벤쳐 9th Existence file 03.26
  • 어드벤쳐 악역스타 훈발이 file 03.13
기타
2009.02.22 16:39

메세지를 분출해 표시

백호
조회 수 1219 추천 수 0 댓글 0
크게 작게 위로 아래로 댓글로 가기 인쇄
크게 작게 위로 아래로 댓글로 가기 인쇄
[사용법]
이벤트ID의 지정 방법이나 테일 화상의 형식은,메세지 분출해 표시와 같습니다.
(다만 「$mes_id=-1(그 이벤트 자신)」는 비대응이 되고 있습니다)

XMS.스크립트 쉘프모양의 「메세지 표시 풀 그레이드 업」은, 확장CO-X을 사용하는 것으로
제어 문자p[]의 설정을 자동적으로$mes_id에 적용할 수 있습니다.
즉, 캐릭터 팝으로부터 이벤트 커멘드를 고쳐 쓰는 필요없음에 도입이 가능합니다.


[스크립트]
#==============================================================================
# +++ 콜라보레이션 「+분출해 표시」 ver.1.13 +++
# Script by
#    파라개  http://para.j-mx.com/
#      ×
#    앵아 재흙 http://xms.fc2web.com/
#
#------------------------------------------------------------------------------
#  거의 어떤 메세지 윈도우에 대해서도 부록 가능한 「분출해 표시」입니다.
#  또, 테일 부분만의 자동 추적 기능을 가집니다.
#==============================================================================
# 분출해 표시를 하려면 ,
# 테일용 화상 「(스킨명)-top」 「(스킨명)-under」을
# 「Graphics/Windowskins」폴더에 임포트 해 둘 필요가 있습니다.
#------------------------------------------------------------------------------
#
# [분출해 표시의 사용법]
# 이벤트 커멘드 「스크립트」로 「$mes_id」에 이벤트ID를 대입하는 것으로
# 그 이벤트나무이고가 팝 하게 됩니다.
# (기술예: $mes_id=4 )
# ID에0를 대입하면 플레이어, nil대입하면, 통상의 메세지 표시로 돌아옵니다.
# 표시 위치는 이벤트 「문장 옵션」으로 변경할 수 있습니다.
# 표시 위치에 「중앙」을 지정하면, 이벤트의 위치에 관계없이
# 화면 중앙에 표시됩니다.
#
#==============================================================================

#==============================================================================
# □ 커스터마이즈 포인트
#==============================================================================
class Window_Message < Window_Selectable
  #--------------------------------------------------------------------------
  # 분출해 모드시의 스킨 설정
  #--------------------------------------------------------------------------
  # 스킨명(원의 윈도우 스킨과 같은 것을 사용할 때는 「""」)
  FUKI_SKIN_NAME = "001-Blue01"
  # 윈도우 배경의 불투명도(디폴트는160)
  FUKI_OPACITY = 255
end

#==============================================================================
# ■ Window_Message
#==============================================================================
class Window_Message < Window_Selectable
  #--------------------------------------------------------------------------
  # ● 메세지 종료 처리
  #--------------------------------------------------------------------------
  alias parashelf_terminate_message terminate_message
  def terminate_message
    # 귀환시키는
    parashelf_terminate_message
    # 나무이고의 소거
    del_tail
  end
  #--------------------------------------------------------------------------
  # ● 리프레쉬
  #--------------------------------------------------------------------------
  alias parashelf_refresh refresh
  def refresh
    # 귀환시키는
    parashelf_refresh
    # 나무이고의 재설정
    del_tail
    set_tail
  end
  #--------------------------------------------------------------------------
  # ● 윈도우의 위치와 불투명도의 설정
  #--------------------------------------------------------------------------
  alias parashelf_reset_window reset_window
  def reset_window
    # 귀환시키는
    parashelf_reset_window
    # 테일의 위치를 변경
    if $mes_id != nil and @tail != nil
      tale_pos = get_tale_pos
      @tail.x = tale_pos[0]
      @tail.y = tale_pos[1]
    end
  end
  #--------------------------------------------------------------------------
  # ● 프레임 갱신
  #--------------------------------------------------------------------------
  alias parashelf_update update
  def update
    # 귀환시키는
    parashelf_update
    # 분출해 테일의 갱신
    update_tail
    # 메세지 표시중의 경우
    if @contents_showing
      # 테일이 있는 경우는 포즈 싸인을 비표시
      if @tail != nil
        self.pause = false
      end
    end
    # 멧지 종료시에 스킨 설정이 돌아오지 않은 경우
    if $game_temp.message_window_showing == false and @def_skin_name != nil
      # 스킨을 되돌리는
      reset_fuki_skin
    end
  end
  #--------------------------------------------------------------------------
  # ○ 프레임 갱신 (분출해 테일)
  #--------------------------------------------------------------------------
  def update_tail
    # 분출해 모드에서는 이벤트의 움직임에 추종
    if $mes_id != nil and @tail != nil
      tale_pos = get_tale_pos
      @tail.x = tale_pos[0]
      @tail.y = tale_pos[1]
      skin = $game_system.windowskin_name
      case @message_position
      when 0  # 상
        @tail.bitmap = RPG::Cache.windowskin(skin + "-top")
      when 2  # 하
        @tail.bitmap = RPG::Cache.windowskin(skin + "-under")
      end
    end
  end
  #--------------------------------------------------------------------------
  # ○ 분출해 테일을 표시
  #--------------------------------------------------------------------------
  def set_tail
    # $mes_id 가 하늘 때와 전투중나무이고를 표시하지 않는
    if $mes_id == nil or $game_temp.in_battle
      del_tail
      # 스킨을 되돌리는
      reset_fuki_skin
    else
      # 스킨을 세트
      set_fuki_skin
      # 나무이고의 테일을 묘화
      skin = $game_system.windowskin_name
      if $game_system.message_frame == 0
        # 위치를 취득
        tale_pos = get_tale_pos
        @tail = Sprite.new
        case $game_system.message_position
        when 0  # 상
          @tail.bitmap = RPG::Cache.windowskin(skin + "-top")
          @tail.x = tale_pos[0]
          @tail.y = tale_pos[1]
          @tail.z = self.z + 1
        when 1  # 안
          @tail.dispose
          @tail = nil
        when 2  # 하
          @tail.bitmap = RPG::Cache.windowskin(skin + "-under")
          @tail.x = tale_pos[0]
          @tail.y = tale_pos[1]
          @tail.z = self.z + 1
        end
        # 엑스트라 스프라이트에 등록
        @extra_sprites = [] if @extra_sprites.nil?
        @extra_sprites.push(@tail) if @tail != nil
      end
    end
  end
  #--------------------------------------------------------------------------
  # ○ 테일의 위치를 계산
  #--------------------------------------------------------------------------
  def get_tale_pos
    character = get_character($mes_id)
    x = [[character.screen_x - 16, self.x].max, self.x + self.width - 32].min
    case $game_system.message_position
    when 0
      y = self.y + self.height - 16
    else
      y = self.y - 16
    end
    return [x, y]
  end
  #--------------------------------------------------------------------------
  # ○ 캐릭터의 취득
  #    parameter : 파라미터
  #--------------------------------------------------------------------------
  def get_character(parameter)
    # 파라미터로 분기
    case parameter
    when 0  # 플레이어
      return $game_player
    else  # 특정의 이벤트
      events = $game_map.events
      return events == nil ? nil : events[parameter]
    end
  end
  #--------------------------------------------------------------------------
  # ○ 나무이고를 파기
  #--------------------------------------------------------------------------
  def del_tail
    if @tail != nil
      @tail.dispose
      @tail = nil
    end
  end
  #--------------------------------------------------------------------------
  # ○ 스킨의 설정
  #--------------------------------------------------------------------------
  def set_fuki_skin
    # 윈도우 스킨을 변경
    if FUKI_SKIN_NAME != "" and FUKI_SKIN_NAME != $game_system.windowskin_name
      @def_skin_name = $game_system.windowskin_name
      $game_system.windowskin_name = FUKI_SKIN_NAME
      self.windowskin = RPG::Cache.windowskin($game_system.windowskin_name)
    end
    # 불투명도를 변경
    if self.back_opacity != FUKI_OPACITY
      @def_back_opacity = self.back_opacity
      self.back_opacity = FUKI_OPACITY
    end
  end
  #--------------------------------------------------------------------------
  # ○ 스킨을 되돌리는
  #--------------------------------------------------------------------------
  def reset_fuki_skin
    # 윈도우 스킨을 되돌리는
    if @def_skin_name != nil
      $game_system.windowskin_name = @def_skin_name
      self.windowskin = RPG::Cache.windowskin($game_system.windowskin_name)
      @def_skin_name = nil
    end
    # 불투명도를 되돌리는
    if @def_back_opacity != nil
      self.back_opacity = @def_back_opacity
      @def_back_opacity = nil
    end
  end
end

[출처]
http://para.j-mx.com/rgss/script/fuki_plus.html

Who's 백호

?

이상혁입니다.

http://elab.kr

0 추천 0 비추천
Facebook Twitter Google Pinterest KakaoStory Band
위로 아래로 댓글로 가기 인쇄
에디터 선택하기
✔ 텍스트 모드 ✔ 에디터 모드
?
댓글 쓰기 권한이 없습니다. 로그인 하시겠습니까?
Comment '0'

Category
  • 그래픽(16)
  • 맵/타일(15)
  • 메뉴(88)
  • 메시지(26)
  • 미니맵(9)
  • 버그픽스(0)
  • 변수/스위치(10)
  • 상점(14)
  • 상태/속성(8)
  • 스킬(49)
  • 아이템(34)
  • 액터(4)
  • 원경(0)
  • 영상(7)
  • 오디오(8)
  • 온라인(23)
  • 이동 및 탈것(62)
  • 이름입력(10)
  • 장비(34)
  • 저장(34)
  • 전투(174)
  • 제작도구(1)
  • 직업(2)
  • 퀘스트(3)
  • 키입력(18)
  • 타이틀/게임오버(24)
  • 파티(11)
  • HUD(34)
  • 기타(254)
List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 습작 2012.12.24 9749
1021 제작도구 [XP/VX/VXA] Doodad's Editor by newold Alkaid 2020.07.12 594
1020 메시지 Taylor's Simple Message System 2000 Alkaid 2020.07.05 426
1019 이름입력 한글조합입력기(영어가능) file 조규진1 2019.11.10 731
1018 맵/타일 맵연결 스크립트 (데모첨부) file 게임애호가 2018.06.15 900
1017 전투 전투중에 장비들 교체하기 file 레이스89 2017.08.19 930
1016 온라인 인터넷 웹 상에서의 시간을 취득하는 스크립트 1 이우 2016.05.24 1084
1015 장비 착용한 장비에 따라 모습이 달라지는 스크립트 예제 5 file 게임애호가 2015.02.14 2244
1014 기타 [All RGSS] File-Ex file Cheapmunk 2014.12.29 1097
1013 기타 [All RGSS] FileTest (Unicode) file Cheapmunk 2014.12.29 745
1012 기타 [RGSS XP] 게임 해상도 조절 스크립트 (*2) 11 file Cheapmunk 2014.10.03 2825
1011 그래픽 Drago - Custom Resolution II 1 Alkaid 2014.09.10 1240
1010 기타 레벨업스크립트(xp) 2 게임을만들자! 2014.08.05 1927
1009 메뉴 MOG - Scroll Bar for XP file 습작 2014.07.06 1714
1008 기타 [All RGSS] 윈도우 메세지박스 스크립트 (Completed ver) 5 file Cheapmunk 2014.06.22 2374
1007 기타 [All RGSS] 게임 다중 실행 방지 스크립트 1 file Cheapmunk 2014.05.24 1544
1006 기타 RM2kXP file 습작 2014.03.17 1696
1005 기타 [All RGSS] 윈도우 커서 숨기기/보이기 1 file Cheapmunk 2014.03.02 2139
1004 기타 Drago - Custom Resolution by LiTTleDRAgo Alkaid 2014.02.13 1301
1003 그래픽 [XP/VX/VXA] Drago - Transition Pack Alkaid 2014.02.13 1365
1002 기타 [XP/VX/VXA] Map Screenshot by LiTTleDRAgo 1 Alkaid 2014.02.13 1018
쓰기
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 ... 52 Next
/ 52
AVANGS

게임 제작, 창작, 자료, 강좌를 연결하는 커뮤니티

  • 개인정보 취급방침

Copyright © 2026 Avangs