Views 1080 Votes 0 Comment 0
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print
#┌───────────────────────────────────────
#│
#│  TRCS.17
#│  "Game_Character 修正" ver1.00β (2005.11.05 h12)
#│  by NO
#│  http://chobi.net/~no/
#│  
#└───────────────────────────────────────

#┌───────────────────────────────────────
#│β版仕?
#│  ?マップチップ、キャラクタ?との?たり判定を修正します。
#│  ?イベントとの?たり判定部分が未解決です。
#└───────────────────────────────────────


#==============================================================================
# ■ Game_Character
#==============================================================================

class Game_Character
  #--------------------------------------------------------------------------
  # ○ オブジェクト初期化
  #--------------------------------------------------------------------------
  def trcs17_initialize initialize
    # キャラクタ?サイズの判定フラグ初期化
    @big = false
    # キャラクタ?グラフィックが表示されているセルの座標
    @x_list = []
    @y_list = []
    # 呼び?す
    trcs17_initialize
  end
  #--------------------------------------------------------------------------
  # ○ キャラクタ?サイズが基準以上か?
  #--------------------------------------------------------------------------
  def big?
    return @big
  end
  #--------------------------------------------------------------------------
  # ○ キャラクタ?グラフィックが表示されているセルの座標
  #--------------------------------------------------------------------------
  def cell_list
    return @x_list, @y_list
  end
  #--------------------------------------------------------------------------
  # ○ 通行可能判定
  #     x : X 座標
  #     y : Y 座標
  #     d : 方向 (0,2,4,6,8)  ※ 0 = 全方向通行不可の場合を判定 (ジャンプ用)
  #--------------------------------------------------------------------------
  alias trcs17_passable? passable?
  def passable?(x, y, d)
    # キャラクタ?ファイル名が定義されている場合
    unless @character_name == ""
      # キャラクタ?グラフィックオブジェクトを定義
      character = RPG::Cache.character(@character_name, @character_hue)
      # 倍率計算
      div_x = character.width / (32 * 4)
      div_y = character.height / (48 * 4)
      div_x = 1 if div_x < 1
      div_y = 1 if div_y < 1
      # x, yともに1倍の場合
      if div_x == 1 and div_y == 1
        # 呼び?す
        return trcs17_passable?(x, y, d)
      else
        # [基準サイズ以上である]をセット
        @big = true
        # [キャラクタ?グラフィックが表示されているセルの座標]の配列
        @x_list = [0]
        @y_list = [0]
        # 現位置において、
        # キャラクタ?グラフィックが表示されている全セルのx座標の算出
        # → グラフィックの幅は左右に等しい (基準の3倍ならば □■□)
        for i in 1..div_x / 2
          @x_list.unshift(-i)  if i == 1 and d != 6 # 本?の座標が移動の邪魔になるため
          @x_list.push(i)      if i == 1 and d != 4 # 本?の座標が移動の邪魔になるため
        end
        # 現位置において、
        # キャラクタ?グラフィックが表示されている全セルのy座標の算出
        # → y座標は?方向(負)に[基準のn倍]
        for i in 1...div_y
          @y_list.unshift(-i) if i == 1 and d != 2 # 本?の座標が移動の邪魔になるため
        end
        # 評?値の初期化
        bool = true
        # 二重ル?プで各座標を渡す
        for i in 0...@x_list.size
          for j in 0...@y_list.size
            x2 = @x_list[i]
            y2 = @y_list[j]
            # 呼び?す & ??値の評?
            # → 一度でもfalseになったら通行不可
            bool &= trcs17_passable?(x + x2, y + y2, d)
          end
        end
        # 評?値を返す
        return bool
      end
    else
      # 呼び?す
      return trcs17_passable?(x, y, d)
    end
  end
end

출처: 게임공작소
?

List of Articles
No. Category Subject Author Date Views Votes
160 RPGXP Script 한글조합입력기(영어가능) file 조규진1 2019.11.10 1201 0
159 RPGXP Script RPG XP Xas액알 1 file 심심치 2018.10.30 1331 0
158 RPGXP Script Font Setup file 운님 2016.07.22 1778 0
157 RPGXP Script 대화에 얼굴이 나오는 스크립트 by: killarot(네이버 dust_mite)(수정버전) 1 부초 2016.02.22 2183 0
156 RPGXP Script RPGXP ATB전투 시스템 예제(스크립트는 예제 안에 포함) 3 MagNesium 2015.11.17 1023 0
155 RPGXP Script 스테이터스,보수,골드,플레임 타임 삭제 rpgmakingbot 2015.06.02 994 0
154 RPGXP Script 헤드 업 디스플레이 스크립트 3  운 2015.01.30 1100 0
153 RPGXP Script 컬러 비트맵 타이틀 스크립트 3  운 2015.01.20 1054 1
152 RPGXP Script 로고 스크립트 1  운 2014.12.10 1403 1
151 RPGXP Script 타이틀 로딩 스크립트  운 2014.12.07 1303 0
150 RPGXP Script 타이틀 스크립트 3  운 2014.12.05 1263 0
149 RPGXP Script 액알 스크립트 4 커비♥ 2014.11.23 1660 1
148 RPGXP Script 공포게임에 장비착용메뉴 3  운 2014.08.24 1676 0
147 RPGXP Script 얼굴표시/문장을 한글자씩 나타내주는 스크립트 (출처-히페리온) 4 시르카 2014.06.22 1421 0
146 RPGXP Script 횡스크롤 점프 [버튼허용스위치추가] 3  운 2014.06.01 1856 0
145 RPGXP Script 말풍선 메세지 스크립트 2 천둥번들 2014.02.24 2048 0
144 RPGXP Script 스텟찍기스크립트 12 천둥번들 2014.02.22 2070 3
143 RPGXP Script 달리기스크립트 4 천둥번들 2014.02.22 2521 2
142 RPGXP Script 8방향 이동스크립트 5 천둥번들 2014.02.22 1976 6
141 RPGXP Script AraLab_MultiStartingPoint (다중 출발점 스크립트, 캐릭터 선택 스크립트) ver.0.2beta 3  운 2014.01.21 2203 1
Board Pagination Prev 1 2 3 4 5 6 7 8 Next
/ 8


[privacy statements] | [Terms of Use] | [Contact us] | [Sponsorship] | [Indiside History]

Copyright © 1999 - 2016 INdiSide.com/CL3D Co., Ltd. All Rights Reserved.
Owner : Chunmu(Jiseon Lee) | kernys(Wonbae Kim) | Sasinji(Byungkook Kim)