Ace 스크립트

스크립트 :


#==============================================================================

# 8 방향 이동 스크립트                             번역 : 미루          출처 : JV Master Script

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

# 플레이어가 8 방향으로 이동할 수 있도록 한다.

# 사선 이동 그래픽 지원.

#==============================================================================


module JvScripts

  module Dirs8

    

    Switch = 0               # 4 방향 이동과 8 방향 이동을 전환하는 스위치의 ID 를 설정

                                 # 0 일경우 항상 8 방향 이동으로 설정된다.

                                 

    DiagonalSuffix = "_di"   # 8 방향 캐릭터 그래픽 뒤에 붙는 문구 ( 접미사 ) 를 설정

                                     # 8 방향 캐릭터 그래픽의 첫번째는 수직/수평이동

                                     # 두번째는 사선이동 그래픽을 넣어주세요.

  end

end


#==============================================================================

# Game CharacterBase

#==============================================================================

class Game_CharacterBase

  

  def move_diagonal(horz, vert)

    @move_succeed = diagonal_passable?(x, y, horz, vert)

    if @move_succeed

      @x = $game_map.round_x_with_direction(@x, horz)

      @y = $game_map.round_y_with_direction(@y, vert)

      @real_x = $game_map.x_with_direction(@x, reverse_dir(horz))

      @real_y = $game_map.y_with_direction(@y, reverse_dir(vert))

      increase_steps

    end

    if diagonal_charset?

      set_direction_diagonal(horz, vert)

    else

      set_direction(horz) if @direction == reverse_dir(horz)

      set_direction(vert) if @direction == reverse_dir(vert)

    end

  end

  

  def set_direction(d)

    if !@direction_fix && d != 0

      @direction = d

      @character_index = 0 if diagonal_charset?

    end

    @stop_count = 0

  end

  

  def set_direction_diagonal(horz, vert)

    if !@direction_fix && horz != 0 && vert != 0

      if horz == 4 && vert == 2

        @direction = 2

      elsif horz == 4 && vert == 8

        @direction = 4

      elsif horz == 6 && vert == 2

        @direction = 6

      elsif horz == 6 && vert == 8

        @direction = 8

      end

      

      @character_index = 1

    end

    @stop_count = 0

  end

  

  def diagonal_charset?

    true if @character_name.include?(JvScripts::Dirs8::DiagonalSuffix)

  end

end


#==============================================================================

# Game Player

#==============================================================================

class Game_Player < Game_Character

  def move_by_input

    return if !movable? || $game_map.interpreter.running?

    if JvScripts::Dirs8::Switch > 0

      if $game_switches[JvScripts::Dirs8::Switch] == true

        case Input.dir8

        when 2, 4, 6, 8

          move_straight(Input.dir4)

        when 1

          move_diagonal(4, 2)

        when 3

          move_diagonal(6, 2)

        when 7

          move_diagonal(4, 8)

        when 9

          move_diagonal(6, 8)

        end

      else

        move_straight(Input.dir4) if Input.dir4 > 0

      end

    else

      if Input.dir8 > 0

        case Input.dir8

        when 2, 4, 6, 8

          move_straight(Input.dir4)

        when 1

          move_diagonal(4, 2)

        when 3

          move_diagonal(6, 2)

        when 7

          move_diagonal(4, 8)

        when 9

          move_diagonal(6, 8)

        end

      end

    end

  end

end

#==============================================================================






사선이동 그래픽 규격 :


Character_di.png

Who's 미루

?

< 제작한 게임 >

- 피그렛 (Piglet) [완성] : 링크 내림

- 파라딜루전 (Paradelusion) [미완성] : 링크 내림

- 주인잃은 공책 [완성] : http://avangs.info/1090264


< 연구실 홈페이지 >

http://mirulab.xo.st/


< 아방스 게임 실황 방송국 >

http://afreeca.com/miru3137

Atachment
첨부 '1'
  • ?
    포달 2013.07.11 10:50
    드디어 사선이동 환벽한게 나온건가요
  • ?
    아방님 2013.07.14 13:41
    사선이동 그래픽은 집적 만들어서 넣어야 되나요?
  • ?
    미루 2013.07.14 13:46
    네. 집적 만들어서 넣으셔야해요. ^^;;
  • ?
    아방님 2013.07.14 13:52
    제가 잘 못만들어서 그러는데 Evil캐릭터 칩에 5번째에 있는 캐릭터 사선모드좀 그려주시면 안되요? ㅠㅠ
  • ?
    미루 2013.07.14 13:56
    저도 도트는 잘 못찍고... 팔이 다쳐서, 타자치는것도 힘든 상태예요.
    공개배포되는 소재를 사용하시던가 ( 예 : http://usui.moo.jp/rpg_chadot.html [우스이의 회] )
    제작의뢰 게시판을 이용해주세요.
  • ?
    hyunseo1987 2013.08.15 10:43
    미루님이 가르쳐주신 사이트에서 의뢰를 통해 만드셨나요?
  • ?
    데스노트 2013.07.15 17:52
    마우스 스크립트랑 겹치는건 불가능한가요??
  • ?
    천년행복 2013.09.22 12:29
    으아아아아!!
    제가 그토록 찾던 사선이동 스크립트!!
    이겁니다..이거..ㅠㅠ 감사합니다!
  • profile
    2034 2014.09.16 13:41
    땡큐

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 습작 2012.12.24 5593
공지 RPG VX ACE 유용한 링크 모음 16 아방스 2012.01.03 29401
37 버그픽스 Graphical Object Global Reference ACE (세부적인 에러메세지 없는 RGSS Player 크래쉬 디버거) by Mithran 1 Alkaid 2014.03.03 1542
36 HUD 화폐단위 표시 구분 5 file 허걱 2014.03.19 2970
35 메시지 ListBox - 선택지 확장 스크립트 11 file 허걱 2014.04.03 3409
34 그래픽 Mirror: EvenNumber Pictures - 짝수번호 그림 반전표시 by 허걱 1 file 허걱 2014.05.10 1822
33 메뉴 스텟을 랭크로 나타내기 7 file Yeolde 2014.05.10 3558
32 전투 사이드뷰 배틀 스크립트 (Animated Battlers By Jet10985) 6 file Rebiart 2014.05.18 4542
31 메뉴 Etude87's Menu Editor 44 file 습작 2014.07.17 7029
30 메시지 Message Skip [메세지 스킵] 5 file Lisky 2014.09.09 4224
29 기타 Hurt Faces V1.2 (상처에 고통스러워하는 액터의 얼굴을 출력해봅시다.) 5 file spice 2014.09.19 3034
28 전투 GTBS 2.4 버전 에코 2014.11.28 1917
27 타이틀/게임오버 시작 전 로고 띄우기 7 file 냐냐 2014.12.04 3397
26 기타 메시지 표시 중에 자동으로 타이머 멈추기 1 file Bunny_Boy 2014.12.07 1053
25 전투 theolized 사이드뷰 스크립트 2 하늘바라KSND 2014.12.19 2503
24 기타 Gamepad Extender 습작 2015.01.02 744
23 기타 Improved Input System 1 습작 2015.01.02 1011
22 직업 직업 경험치+능력치 설정 확장 7 file zubako 2015.01.27 4004
21 미니맵 Etude87's KMS MiniMap Add-on ver.1.1.4 2 file 습작 2015.04.23 1972
20 메시지 아이템 정보 메세지가 뜨는 아이템 획득 1 폴라 2015.05.21 2414
19 이동 및 탈것 Khas Pathfinder(길찾기 스크립트) 15 찬잎 2015.07.10 1980
18 버그픽스 RGSS3 Unofficial Bug Fix Snippets Alkaid 2015.09.09 686
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 Next
/ 11