XP 스크립트

http://www.gamebaker.com/rmxp/scripts/battle-items.htm
  시전시 아이템을 소모하는 스킬을 만드는 스크립트입니다.  아이템을 사용하는 스킬을 만들 때는 DB에서 아이템 이름 뒤에 /S[스킬id]라고 써 주면 됩니다. (S는 항상 대문자)  물론 해당 아이템은 전투에서 사용가능해야 합니다.


#=============================================================================
# ** SG Skill Invoking Battle Items
#=============================================================================
# sandgolem
# Version 1
# 3.06.06
#=============================================================================

# Place S[#] in any of your item (not armor, weapon) names
# The item will use that skill when used in battle.

#=============================================================================
#
# To check for updates or find more scripts, visit:
#      http://www.gamebaker.com/rmxp/scripts/
#
# To use this script, copy it and insert it in a new section above "Main",
# under the default scripts, the SDK if you're using it, and anything else
# that rewrites this part of battle.
#
# SG Settings Control is required for this script! Must be above this.
#
# Have problems? You can leave me a message at:
# http://www.gamebaker.com/users/sandgolem
#
#=============================================================================

#--------------------------------------------------------------------------
# * SDK Log Script
#--------------------------------------------------------------------------
begin
  SDK.log("SG Skill Invoking Battle Items", "sandgolem", 1, "3.06.06")
  if SDK.state("SG Skill Invoking Battle Items") != true
    @sg_skillinvoking_disabled = true
  end
  rescue
end

#--------------------------------------------------------------------------
# * Begin SDK Enable Test
#--------------------------------------------------------------------------
if !@sg_skillinvoking_disabled

class SG_Start
  alias sandgolem_sinvoke_start start_game
  def start_game
    sandgolem_sinvoke_start
    sg_skillinvoking_set
  end

  def sg_skillinvoking_set
    if $sg_loaded != true
      $data_sg['invoke items'] = {}
      for i in 1...$data_items.size
        if $data_items[i].name.include?('S')
          $data_sg['invoke items'][i] = $data_items[i].name.slice(/\[S][([0-9]+)]/).to_s
          $data_sg['invoke items'][i].gsub!(/\S[/,'')
          $data_sg['invoke items'][i] = $data_sg['invoke items'][i].chop
          $data_items[i].name.gsub!(/\[S][([0-9]+)]/,'')
        end
      end
    end
  end
end

if $sg_loaded != nil && $sg_loaded != true
  sg_temp = SG_Start.new
  sg_temp.sg_skillinvoking_set
  sg_temp = nil
  $sg_loaded.refresh
end

class Game_Battler
  attr_accessor :sg_sinvoke
end

class Game_Actor < Game_Battler
  alias sandgolem_sinvoke_actor_canuse skill_can_use?
  def skill_can_use?(skill_id)
    if @sg_sinvoke
      return super
    end
    sandgolem_sinvoke_actor_canuse(skill_id)
  end
end

class Scene_Battle
  alias sandgolem_sinvoke_battle_skillact make_skill_action_result
  def make_skill_action_result
    sandgolem_sinvoke_battle_skillact
    if @active_battler.sg_sinvoke
      @active_battler.maxsp -= @active_battler.sg_sinvoke
      @active_battler.sg_sinvoke = nil
    end
  end
 
  alias sandgolem_sinvoke_battle_itemr make_item_action_result
  def make_item_action_result
    if $data_sg['invoke items'].has_key?(@active_battler.current_action.item_id)
      @item = $data_items[@active_battler.current_action.item_id]
      unless $game_party.item_can_use?(@item.id)
        @phase4_step = 1
        return
      end
      if @item.consumable
        $game_party.lose_item(@item.id, 1)
      end
      @active_battler.current_action.item_id = nil
      @active_battler.current_action.skill_id = $data_sg['invoke items'][@item.id].to_i
      @active_battler.sg_sinvoke = $data_skills[@active_battler.current_action.skill_id].sp_cost
      @active_battler.maxsp += @active_battler.sg_sinvoke
      @active_battler.sp += @active_battler.sg_sinvoke
      make_skill_action_result
      return
    end
    sandgolem_sinvoke_battle_itemr
  end 
end

#--------------------------------------------------------------------------
# * End SDK Enable Test
#--------------------------------------------------------------------------
end

Who's 백호

?

이상혁입니다.

http://elab.kr


List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 습작 2012.12.24 6153
49 스킬 패시브 스킬 (출처 RPGXP 포럼 - 후우님) 18 백호 2009.02.21 2915
48 스킬 제한시간내 커맨드를 입력해야 스킬이 발동~ 3 file 백호 2009.02.22 2614
47 스킬 약간 수정한 심플액알(크리티컬,스킬) 10 백호 2009.02.22 3836
46 스킬 스킬창 업그레이드? ps인간 2009.01.23 3061
45 스킬 스킬제휴 스크립트 file 백호 2009.02.21 1294
44 스킬 스킬샵 스크립트 16 file 독도2005 2009.08.24 4219
43 스킬 스킬북 스크립트 8 WMN 2008.03.17 2452
42 스킬 스킬변화를 주는 스크립트 2 백호 2009.02.21 1204
41 스킬 스킬도감 오류 수정본 2 file 백호 2009.02.22 1340
40 스킬 스킬 포인트를 올리자! 3 what더붥 2012.01.26 2680
39 스킬 스킬 컷인 - 전투시만.. 4 file 허걱 2009.08.16 3298
38 스킬 스킬 추가 공격 스크립트 7 file 백호 2009.02.21 1697
37 스킬 스킬 업데이트 시스템 4 file 백호 2009.02.22 1644
36 스킬 스킬 레벨 스크립트 # 번역 진행중 6 빗자루씨 2010.02.11 1981
35 스킬 스킬 도감 1 백호 2009.02.21 1138
34 스킬 스킬 Learning 스크립트 1 file 백호 2009.02.21 1713
33 스킬 선택 스킬 스크립트 4 file 백호 2009.02.21 1631
32 스킬 랜덤 스킬 스크립트 2 file 백호 2009.02.21 978
31 스킬 기술문서(스킬 습득 아이템) 7 ok하승헌 2010.02.18 2132
30 스킬 [RTAB] 스킬영창시간 7 file 백호 2009.02.22 2872
Board Pagination Prev 1 2 3 Next
/ 3