상태/속성

SG_State Immunity Message by sandgolem (SDK 호환)

by 백호 posted Feb 22, 2009
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄
http://www.gamebaker.com/rmxp/scripts/immunity-message.htm
  속성이나 상태공격시 해당 속성이나 상태이상이 무효일 때는 Miss대신 Immune이라는 메세지가 뜨게 한 스크립트입니다.


#=============================================================================
# ** SG Immunity Message
#=============================================================================
# sandgolem
# Version 1
# 20.04.06
#=============================================================================
#
# 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",
# but under the default scripts and the SDK if you're using it.
#
# Have problems? You can leave me a message at:
# http://www.gamebaker.com/users/sandgolem
#
#=============================================================================

#--------------------------------------------------------------------------
# * SDK Log Script
#--------------------------------------------------------------------------
begin
  SDK.log("SG Immunity Message", "sandgolem", 1, "20.04.06")
  if SDK.state("SG Immunity Message") != true
    @sg_immunemsg_disabled = true
  end
  rescue
end

#--------------------------------------------------------------------------
# * Begin SDK Enable Test
#--------------------------------------------------------------------------
if !@sg_immunemsg_disabled
 
module RPG
  class Sprite < ::Sprite
    alias sandgolem_immunemsg_sprite_dam damage   
    def damage(value, critical)
      if @battler.sg_skill_immune == true
        if value == 'Miss'
          value = 'Immune'
        end
      end
      sandgolem_immunemsg_sprite_dam(value, critical)
    end
  end
end

class Game_Battler
  attr_reader :sg_skill_immune 
  alias sandgolem_immunemsg_gamebat_statesplus states_plus
 
  def sg_state_immune_check(statecheck)
    @sg_skill_immune = nil
    for i in statecheck
      if $data_states[i].nonresistance
        return
      end
      if self.state_ranks[i] != 0 && self.state_ranks[i] != 6
        return
      end
    end
    @sg_skill_immune = true
  end
 
  def states_plus(plus_state_set)
    sg_state_immune_check(plus_state_set)
    sandgolem_immunemsg_gamebat_statesplus(plus_state_set)
  end
end

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