Ace 스크립트

# 개인적으로 사용중인 스크립트입니다.

# 스크립트 사용자를 대상으로 공개 배포합니다. [중급이상 권장]

# 응용은 각자 알아서 하시고 추가 질문은 안받겠습니다.

# 스크립트 내용의 수정/추가 등은 능력껏 하시고 그에따른 책임은 각자 알아서...@_@

 

 

# Tag System
# BaseItem을 포함하는 클래스에 적용
# [액터, 직업, 스킬, 아이템, 무기, 방어구, 적 케릭터, 상태]
#
# 적용되는 클래스의 메모 부분에 <TAG:A,B,C> 의 형식으로 태그를 지정해줌
# get_list_tag(list, key) 를 사용해서 list 중 key를 태그로 포함하는 목록 취득가능

 

#==============================================================================
# ■ HG_TAG_SYSTEM
#------------------------------------------------------------------------------
#  TAG System 모듈(HG_TAG_SYSTEM)과 그 내부 클래스(Tag) 정의
#==============================================================================
module HG_TAG_SYSTEM
  class Tag
    #--------------------------------------------------------------------------
    # ● 초기화
    #--------------------------------------------------------------------------
    def initialize
      @data = []
    end
    #--------------------------------------------------------------------------
    # ● key 를 태그로 갖고 있는지 확인
    #--------------------------------------------------------------------------
    def check(key)
      @data.include?(key)
    end
    #--------------------------------------------------------------------------
    # ● key 를 태그로 추가 (중복방지)
    #--------------------------------------------------------------------------
    def add(key)
      @data.push(key) unless check(key)
    end
    #--------------------------------------------------------------------------
    # ● key 를 태그에서 제거
    #--------------------------------------------------------------------------
    def del(key)
      @data.delete(key)
    end
  end
end

#==============================================================================
# ■ RPG::BaseItem
#------------------------------------------------------------------------------
#  RPG::BaseItem 의 내용 수정
#==============================================================================
class RPG::BaseItem
  alias tag_system_initialize initialize
  #--------------------------------------------------------------------------
  # ● 초기화 정의 수정/추가
  #--------------------------------------------------------------------------
  def initialize
    tag_system_initialize
    initialize_tag
  end
  #--------------------------------------------------------------------------
  # ● 태그 내용 초기화
  #--------------------------------------------------------------------------
  def initialize_tag
    @tag = HG_TAG_SYSTEM::Tag.new
    @note.each_line {|line|
    if line =~ /<TAG:(.*)>/
      $1.split(/,/).each {|i| @tag.add(i) }
    end
    }
  end
  #--------------------------------------------------------------------------
  # ● 태그 리스트 취득
  #--------------------------------------------------------------------------
  def tag
    initialize_tag unless @tag
    @tag
  end
end

 

#==============================================================================
# ■ get_list_tag(list, key)
#   스크립트 부분에 사용
#------------------------------------------------------------------------------
#  list 중에서 key 를 태그로 갖는 아이템의 목록을 얻는다.
#==============================================================================
def get_list_tag(list, key)
  list.select {|item| item.tag.check(key) rescue next }
end

 

 

 

# presented by 허걱

Who's 허걱

?

공개된 사이트에서 퍼온 자료를 제외한(이 경우는 글에 출처를 남깁니다.)

제가 올린 모든 글과 자작 자료에대해 무단으로 퍼가는것을 금지합니다.


List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 습작 2012.12.24 5111
공지 RPG VX ACE 유용한 링크 모음 16 아방스 2012.01.03 28933
157 파티 맵에서 4명 이상 대열 이동 가능수 조절하는 스크립트 5 Omegaroid 2013.10.17 1785
156 기타 게임속 이벤트를 텍스트 파일로 추출 2 file 영감쟁e 2013.10.15 3769
155 전투 스킬 캐스팅 시스템 3 스리아씨 2013.10.12 32183
154 전투 자동전투 명령어 추가 스크립트 2 스리아씨 2013.10.11 1953
153 전투 공격시 반동데미지 스크립트 8 스리아씨 2013.10.11 1882
152 변수/스위치 Simple self switches(간단한 셀프 스위치) 4 한국사수련생 2013.10.04 1434
151 변수/스위치 Mog Event Sensor Range 4 file 이클립스 2013.09.30 1570
150 전투 Symbol Encounter 5 파송송뇌진탕 2013.09.29 2534
149 상점 Shop Stock < 상점에서 판매하는 아이템의 수량 제한 > 2 file 스리아씨 2013.09.26 1876
148 기타 아이템 합성 스크립트 4 file 스리아씨 2013.09.26 3140
147 메시지 Text Skip [ 메시지 스킵 ] 4 file 스리아씨 2013.09.26 2989
146 타이틀/게임오버 No Game Over 1 file 스리아씨 2013.09.26 2400
145 HUD 동방프로젝트(풍신록) 맵 이름 표시 3 file 스리아씨 2013.09.24 3256
144 기타 크리스탈 엔진 : 포켓몬 배틀 시스템 7 file 스리아씨 2013.09.24 3894
143 액터 액터 스탯 분배 스크립트 14 file 스리아씨 2013.09.23 2678
142 기타 이동제한 스크립트 5 file 스리아씨 2013.09.23 1770
141 HUD ReinoRpg Hudre 5 file 스리아씨 2013.09.22 2786
140 기타 KGC 스텟 포인트 분배 스크립트 4 file 스리아씨 2013.09.21 1812
139 버그픽스 Event Jitter Fix/Display Rounding Error Fix by Neon Black Alkaid 2013.08.31 1003
138 메뉴 저장금지시 메뉴에 저장 안 뜨게 하기 5 file Bunny_Boy 2013.08.24 2520
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 Next
/ 11