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
29 스킬 [KGC]시간차스킬 스크립트 -일종의 죽음의 선고?- 1 file 백호 2009.02.22 1666
28 스킬 [KGC] 스킬습득 아이템 2 백호 2009.02.22 1290
27 스킬 [KGC] 다단공격 (즉, 여러번 공격하는 스킬) 10 백호 2009.02.21 2817
26 스킬 [KGC] Skill Grouping 백호 2009.02.21 861
25 스킬 Trickster's Bag of Skill Effects (SDK 필요) Alkaid 2012.09.17 1289
24 스킬 Trickster's Bag of Skill Effects file 백호 2009.02.22 1077
23 스킬 Skills_Consume_Hp[By: Gando] - HP를 소비하는 스킬 스크립트 4 쉴더 2009.02.21 1385
22 스킬 Skill Shop by Trickster@rmxp.org file 백호 2009.02.22 1073
21 스킬 Skill Shop by SephirothSpawn file 백호 2009.02.22 813
20 스킬 Skill Requirements by SephirothSpawn (SDK호환) file 백호 2009.02.22 763
» 스킬 SG_Skill Invoking Battle Items by sandgolem (SDK호환) 백호 2009.02.22 894
18 스킬 SG_Skill Break by sandgolem (SDK호환) 백호 2009.02.22 772
17 스킬 SG_Escape Only Skills by sandgolem (SDK호환) 백호 2009.02.22 752
16 스킬 RO Job/Skill System 2.01b by Blizzard 2 file Alkaid 2010.09.05 1862
15 스킬 Miriam's Handicrafts! 1.3 by DerVVulfman Alkaid 2012.08.26 1204
14 스킬 MicKo's Skill Tree 1.2 by DerVVulfman 2 Alkaid 2011.03.15 2010
13 스킬 KGC_SkillReflection (마법반사) 2 file 백호 2009.02.22 1476
12 스킬 KGC_SkillMessage (스킬사용메세지) 1 file 백호 2009.02.22 2081
11 스킬 KGC_HideNameSkill(명칭 비표시 스킬) 백호 2009.02.22 1122
10 스킬 KGC_CrashSkill(자폭스킬) 4 file 백호 2009.02.22 2024
Board Pagination Prev 1 2 3 Next
/ 3