질문과 답변

Extra Form

    * This script is untested. *
#===============================================================================
module SynBattleB
  # 타일의 ID에 해당하는 배경그림을 설정합니다.
  Battle_background =
  {
  1 => "001-Grassland01",
  2 => "002-Woods01",
  3 => "001-Grassland01",
  4 => "001-Grassland01",
  5 => "006-Desert01",
  6 => "006-Desert01",

 

................... 라고 적혀있는데,  타일 ID를 어떻게 해야 알 수 있는 것인가요? 

 

배경화면을 좀 더 추가 하고 싶은데, ID를 모르니 추가가 안되네요;;;

Comment '11'
  • ?
    시트르산 2010.09.15 10:39

    타일 ID 는 타일 편집기에서 변경 가능한걸로 알고 있습니다만...

    문제는 그 타일 편집기가 정품에서만 사용가능하다는게..

    차라리 아래의 이걸 써보는 것이 어떨까요  

    맵 ID랑 에어리어 ID, 타일 ID에 따라서 전투배경 지정할수있게 해주는 스크립트입니다.

    맵 ID 나 에어리어 ID 에 따라서만 전투배경 지정해도 충분히 의도하는 바대로 하실 수 있을듯해서요.

    '레크토르와 흑사자의 문장' 에 사용된 스크립트.

    한글 번역 주석이 이해하기 쉬워서 사용방법은 금방 아실 수 있을듯 해서 스크립트만 올려드려요

     

    #==============================================================================
    # ★ ExBattle_Background                                              ver 2.00
    #------------------------------------------------------------------------------
    # ?배틀 화면에서 임의의 배경 화상을 설정할 수 있도록 하는 스크립트 소재입니다.
    #==============================================================================

    # 맵 설정.
    # 맵 ID, 그래픽명의 순서에 필요한 만큼 늘어놓습니다.
    EXBTL_BACKGR_MAP = {
        1 => "016-ForestTown02",
        5 => "048-Sewer01",
        6=> "048-Sewer01",
        8 => "029-Church02-2",
      10 => "016-ForestTown02",
      19 => "016-ForestTown02",
      22 => "016-ForestTown02",
      23 => "016-ForestTown02",
      24 => "043-Cave01",
      25 => "043-Cave01",
      26 => "043-Cave01",
      27 => "043-Cave01",
      29 => "053-desert_dark",
      30 => "053-desert_dark",
      31 => "053-desert_dark",
      32 => "053-desert_dark",
    }

    # 에리어 설정.
    # 에리어 ID, 그래픽명의 순서에 필요한 만큼 늘어놓습니다.
    EXBTL_BACKGR_AREA =
    { }

    # 디폴트 설정.
    # 맵이나 에리어가 설정되어 있지 않은 경우에?시 하는 그래픽을 설정합니다.
    EXBTL_BACKGR_DEFAULT = ""

    # 기초 설정.
    # 그래픽이 화면의 기초로서 표시 하는 배경을 설정합니다.
    # (0:흑 1:맵 화면)
    EXBTL_BACKGR_BACK = 1

    # 표시위치.
    # 그래픽의 표시위치 (0:상 1:중앙 2:화면 중앙 3:하)를 지정합니다.
    EXBTL_BACKGR_POSITION = 2

    # 배틀 플로어 설정
    # 배틀 플로어 화상을?시 할지를 설정합니다.
    # (0:?나타내 보여 않아 1:?시 한다)
    EXBTL_BACKGR_FLOOR = 0

    # 그래픽 폴더
    # 전투 배경용의 화상 파일이 있는 폴더 (Graphic/xxx/)(을)를 지정합니다.
    # (0:System 1:Parallaxes 2:Pictures)
    EXBTL_BACKGR_FOLDER = 2

    #------------------------------------------------------------------------------

    class Spriteset_Battle
      #--------------------------------------------------------------------------
      # ○배틀 백 스프라이트의 작성
      #--------------------------------------------------------------------------
      alias _exbbackgr_create_battleback create_battleback
      def create_battleback
        source = $game_temp.background_bitmap
        bitmap = Bitmap.new(640, 480)
        if EXBTL_BACKGR_BACK == 1
          bitmap.stretch_blt(bitmap.rect, source, source.rect)
        end
        @battleback_sprite = Sprite.new(@viewport1)
        @battleback_sprite.bitmap = bitmap
        @battleback_sprite.ox = 320
        @battleback_sprite.oy = 240
        @battleback_sprite.x = 272
        @battleback_sprite.y = 176
        fixed = false
        unless $BTEST
          for area in $data_areas.values
            if $game_player.in_area?(area) and EXBTL_BACKGR_AREA.has_key?(area.id)
              src_source = EXBTL_BACKGR_AREA[area.id]
              fixed = true
            end
          end
          unless fixed
            if EXBTL_BACKGR_MAP.has_key?($game_map.map_id)
              src_source = EXBTL_BACKGR_MAP[$game_map.map_id]
              fixed = true
            end
          end
        end
        unless fixed
          if EXBTL_BACKGR_DEFAULT != ""
            src_source = EXBTL_BACKGR_DEFAULT
            fixed = true
          end
        end
        if fixed
          case EXBTL_BACKGR_FOLDER
          when 0
            src_bitmap = Cache.system(src_source)
          when 1
            src_bitmap = Cache.parallax(src_source)
          when 2
            src_bitmap = Cache.picture(src_source)
          end
          x = (640 - src_bitmap.width) / 2
          case EXBTL_BACKGR_POSITION
          when 0
            y = 64
          when 1
            y = (416 - src_bitmap.height) / 2
          when 2
            y = (480 - src_bitmap.height) / 2 + 32
          when 3
            y = 480 - src_bitmap.height
          end
          @battleback_sprite.bitmap.blt(x, y, src_bitmap, src_bitmap.rect)
          src_bitmap.dispose
        end
      end
      #--------------------------------------------------------------------------
      # ○배틀 플로어 스프라이트의 작성
      #--------------------------------------------------------------------------
      alias _exbbackgr_create_battlefloor create_battlefloor
      def create_battlefloor
        _exbbackgr_create_battlefloor
        @battlefloor_sprite.opacity = 0 if EXBTL_BACKGR_FLOOR == 0
      end
    end

  • ?
    니노미야 2010.09.15 10:45

    감사합니다.  

    그런데, 올려주신 이 맵 ID 를 확인하려면 타일 편집기를 이용해야하는건가요?

  • ?
    시트르산 2010.09.15 10:49

    맵 ID는

    만드신 맵을 우클릭하시고 맵의 설정을 보시면

    나옵니당.

    ID : 002

    이런 식으로요

  • ?
    시트르산 2010.09.15 10:50

    에리어 ID는

    맵에서 영역 설정을 하시면

    AREA 001 이런 식으로 설정되는데

    그 1 이란 번호가 해당 AREA의 ID입니다

  • ?
    니노미야 2010.09.15 10:55

    감사합니다.  열심히 사용해 보겠습니다!

  • ?
    니노미야 2010.09.15 11:08

    시트르산님, 알려주신 스크립트를 사용하니까...  전투화면 중간에 뭔가 검은 그림자가 하나 보이는데, 이게 뭐예요?

    쉐도우파일은 투명하게 만들어서 안보이게 처리해놨는데;;;; 

  • ?
    시트르산 2010.09.15 11:13

    음..?? 저도 사용하고 있는데 전 전혀 그런 상황을 못 겪어봐서 잘 모르겠네요.. 스크린 샷을 올려주시면 한번 알아볼게욤.

  • ?
    니노미야 2010.09.15 11:27

    여기 스샷 올리려면, 딴곳에 올려놓고 링크 따와야 하는건가요?

    일단, 말씀만 드리면... 사이드뷰 스크립트 처음 사용할 때 나오는 필드 바닥 표시해주는 검은 그림자같은게 출력됩니다.

    근데, shadow01파일은 제가 투명하게 변경해놔서 안보여야하는게 정상일텐데;;; 

  • profile
    아방스 2010.09.15 11:35

    JPG / PNG / GIF 확장자를 가진 300kb이하 파일들은 올리수 있도록 설정 변경하였습니다.

  • ?
    시트르산 2010.09.15 11:31

    그것 때문이 아닐까요? shadow01 파일을 투명하게 안 하신다면 어떨런지??

    제 shoadow01 파일은 최초에 주어진 상태 그대로거든요

  • ?
    니노미야 2010.09.15 14:13

    음... 배경 스크립트의 문제가 아니라, SBS 스크립트에서도  floor 관련 기능을 죽여줘야 하는 거군요.

    전에 사용하던 스크립트는 그걸 그냥 놔도둬 자체적으로 죽여주는 것이었고요... 

     

    해결했으니, 잘 써보겠습니다.  도와주셔서 감사합니다.

     

    / 근데, 영역 ID로 월드맵 설정하려니 바다와 섬을 갈라놓는 부분에 영역추가를 너무 많이 하게 되는군요 @_@;

    던전이나 마을은 그냥 맵 ID로 찍어주면 되는데, 월드맵은 어쩔 수 없이 영역ID로 나눠줘야하니까 흑흑... ㅠ_ㅠ

    영역나누기가 자유롭지 못한게 안타까워요 ㅠ_ㅠ


List of Articles
종류 분류 제목 글쓴이 날짜 조회 수
공지 묻고 답하기 가이드 습작 2014.06.14 13176
RMVX 스텟 포인트 스크립트 오류? 끼룩 2010.09.16 703
RMVX 대규모파티 스크립에 관한 질문입니다. 1 별33 2010.09.16 873
RMVX 애니메이션 타이틀 1 Kan 2010.09.16 1034
RMVX ATB 사이드 배틀에 오버드라이브를 적용시켰을 때 질문입니다. 7 니노미야 2010.09.16 833
RMXP mog대해 1 사이언블루 2010.09.15 1013
RMVX 메뉴 화면에 대한 질문이 있습니다. (요 몇일동안 너무 자주 오는;;; ) 3 니노미야 2010.09.15 1235
RMVX 전투시 배경화면 교체해주는 스크립트에 대한 질문입니다. 11 니노미야 2010.09.15 1064
RMXP 글씨가 안 보여요!!! 1 누구 똥? 2010.09.15 1658
RMVX RPG Tankentai SBS 3.3 Kaduki Eng 스크립트 5 스노우 2010.09.14 1125
RMVX 테스트플레이할때 원래 좀 딜레이가 있나요? 3 dcbuzz 2010.09.14 922
RMVX KGC_PassiveSkill 에 대해서 질문 드립니다.;;; 7 니노미야 2010.09.14 1009
RMVX ATB 사이드 배틀 관련 질문입니다. 4 니노미야 2010.09.14 940
RMXP Broad Cast 자바채팅이랑 netplay랑 합치면 한글채팅되나여? 1 김똘식 2010.09.14 1791
기타 netplay evolution v3 구해주실분 없나여? 1 김똘식 2010.09.14 2121
RMXP 또 한가지 질문. 1 찹쌀 2010.09.14 1349
RMXP XP 네오 모드 7 3D와 각종 모드와의 충돌 문제 2 찹쌀 2010.09.14 1356
RMVX 이름입력 이벤트를 넣어도 왜 이름이 안바뀔까요? ㅡㅡ;; 4 dcbuzz 2010.09.14 1239
RMVX 스크립트 syntax error 문제 1 dcbuzz 2010.09.13 1664
RMXP XP 네오 모드 7 3D와 각종 모드와의 충돌 문제. 찹쌀 2010.09.13 1501
RMXP xp글씨체... 1 오니오니 2010.09.13 2081
Board Pagination Prev 1 ... 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 Next
/ 517