2005.08.25 22:26

이거 정리를..

조회 수 198 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
밑의 스크립트 정리가 안되요..ㅠㅠ
오류만 나고..도와주세요..
부탁드립니다..ㅠㅠ


#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
#_/  ◆장비 확장 - KGC_EquipExtension◆
#_/----------------------------------------------------------------------------
#_/ 장비 관련의 기능을 확장합니다.
#_/============================================================================
#_/ ≪장비품 설정 상세화[EquipDetailSetting]≫보다 위
#_/ ≪클래스 설정 상세화[ClassDetailSetting]≫보다 위
#_/ ≪한계 돌파[LimitBreak]≫보다 위
#_/ ≪장비 화면 개조[EquipAlter]≫보다 아래
#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

#==============================================================================
# ★ 커스터마이즈 항목 ★
#==============================================================================

module KGC
# ◆확장 장비 타입 정의
# 배열의 최초가 타입 5 에 상당.이후 6,7,8... (와)과 계속 된다.
EEX_EQUIP_TYPE_EXT = ["완부", "각부"]

# ◆장비품의 타입(1:순 2:두 3:신체 4:장식품 5이후:↑에 정의)
# ※어떻게 지정해도, 반드시 처음은 무기가 됩니다.
EEX_EQUIP_TYPE = [1, 2, 3, 4, 4, 5, 6]
# ◆쌍수검시의 무기수
# 쌍수검시는↑의 선두로부터 (EEX_TS_NUMBER - 1) 개가 무기로 옮겨진다
EEX_TS_NUMBER = 2

# ◆장비란의 이름
# 증가한 장비 타입의 명칭도 여기서 지정.
EEX_EQUIP_NAME = [
$data_system.words.weapon, # 무기
$data_system.words.armor1, # 타입 1(방패)
$data_system.words.armor2, # 타입 2(머리)
$data_system.words.armor3, # 타입 3(신체)
$data_system.words.armor4, # 타입 4(장식품)
EEX_EQUIP_TYPE_EXT[0], # 타입 5(속성명을 그대로 사용)
EEX_EQ UIP_TYPE_EXT[1] # 타입 6(속성명을 그대로 사용)
] # ←이 ] 는 지우지 않는 것

# ◆확장 장비 화면에 표시하는 장비란개시 번호
# 무기를 0 , 최초의 방어구를 1 으로 한 번호(인덱스).
EEX_EQUIP_EX_INDEX = 0
# ◆확장 장비 화면 배경 투과
EEX_EQUIP_EX_BACK_TRANSPARENT = true

# ◆확장 장비 화면 「장비 변경」명칭
EEX_EQUIP_EX_COMMAND_EQUIP = "장비 변경"
# ◆확장 장비 화면 「최강 장비」명칭
EEX_EQUIP_EX_COMMAND_STRONGEST_EQUIP = "최강 장비"
# ◆확장 장비 화면 「전해제」명칭
EEX_EQUIP_EX_COMMAND_ALL_RELEASE = "전해제"

# ◆확장 장비 화면 「장비 변경」 헬프
EEX_EQUIP_EX_HELP_EQUIP = "장비 무기를 변경합니다."
# ◆확장 장비 화면 「최강 장비」헬프
EEX_EQUIP_EX_HELP_STRONGEST_EQUIP = "자동적으로, 가장 강력한 장비로 변경합니다."
# ◆확장 장비 화면 「전해제」헬프
EEX_EQUIP_EX_HELP_ALL_RELEASE = "모든 장비품을 제외합니다. "

# ◆EP(Equip Point) 제를 사용한다
EEX_USE_EP = true

# ◆소비 EP기정치
# 소비 EP가 지정되어 있지 않은 장비품으로 사용
EEX_EP_COST_DEFAULT = 1
# ◆EP상한치
EEX_EP_MAX = 15
# ◆EP하한치
EEX_EP_MIN = 1
# ◆최대 EP산출식
# 【lv…레벨】
# 자동적으로 정수 변환되므로, 결과가 소수가 되어도 OK.
EEX_EP_FORMULA = "lv * 0.6"

# ◆「EP」의 명칭
EEX_EP_NAME = "EP"
# ◆장비 화면의 EP최대치 묘화
# 이름이 숨기는 경우는 false 로 해 주세요.
EEX_DRAW_EP_MAX = true
# ◆소비 EP치의 색(아이템명의 구멍을 뒤따르는 녀석)
EEX_EP_COLOR = Color.new(128, 255, 255)
end

#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

$imported["EquipExtension"] = true

# 양손 소유 속성
$game_special_elements["two_handed"] = $data_system.elements.index("양손 소유")

if KGC::EEX_EQUIP_TYPE_ EXT.size > 0
for element in KGC::EEX_EQUIP_TYPE_EXT.compact
$game_special_elements["EEX_#{element}"] = $data_system.elements.index(element)
end
end

#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

#--------------------------------------------------------------------------
# ● 확장 장비 화면 호출
# actor_index : 액터 INDEX
#--------------------------------------------------------------------------
def call_equip_extend(actor_index = 0)
# 플레이어의 자세를 교정
$game_player.straighten
# 확장 장비 화면으로 전환해
$scene = Scene_EquipExtend.new(actor_index)
end

#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆ ★☆★

#==============================================================================
# ■ RPG::Weapon
#==============================================================================

class RPG::Weapon
#--------------------------------------------------------------------------
# ● 이름 취득
#--------------------------------------------------------------------------
def name
return @name.gsub(/[.*]/) {""}
end
#--------------------------------------------------------------------------
# ● 오리지날 나토리 이득
#-------------------------------------------------------------------- ------
def original_name
return @name
end
#--------------------------------------------------------------------------
# ● 소비 EP취득
#--------------------------------------------------------------------------
def ep_cost
return @name =~ /[EP[ ]*(d+)]/i ? $1.to_i : KGC::EEX _EP_COST_DEFAULT
end
#--------------------------------------------------------------------------
# ● 장비 타입 취득
#--------------------------------------------------------------------------
def equip_type
if @name =~ /[ET[ ]*([0-9,]+)]/i
type = $1.split(/[,]/).compact
for i in 0...type.size
type[i] = type[i].to_i
end
type.insert(0, 0) if type[0] != 0
return type
else
return nil
end
end
end

#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

#============================================================================= =
# ■ RPG::Armor
#==============================================================================

class RPG::Armor
#--------------------------------------------------------------------------
# ● 이름 취득
#--------------------------------------------------------------------------
def name
return @name.gsub(/[.*]/) {""}
end
#--------------------------------------------------------------------------
# ● 오리지날 나토리 이득
#--------------------------------------------------------------------------
def original_name
return @name
end
#------------------------------ --------------------------------------------
# ● 소비 EP취득
#--------------------------------------------------------------------------
def ep_cost
return @name =~ /[EP[ ]*(d+)]/i ? $1.to_i : KGC::EEX_EP_COST_DEFAULT
end
#----------------------------------------------------------- ---------------
# ● 종류 취득
#--------------------------------------------------------------------------
def kind
if @guard_element_set.size > 0
for element in @guard_element_set.compact
for i in 0...KGC::EEX_EQUIP_TYPE_EXT.size
if element == $game_special_elemen ts["EEX_#{KGC::EEX_EQUIP_TYPE_EXT[i]}"]
return i + 4
end
end
end
end
return @kind
end
end

#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

#==============================================================================
# ■ Game_Actor
#=========== ===================================================================

class Game_Actor <Game_Battler @WEAPON_FIX.PUSH(FALSE) 防具 :ARMOR_ID :ARMOR_FIX 公開インスタンス変数 DEF アクター ACTOR="$data_actors[actor_id]" #-------------------------------------------------------------------------- ● SETUP(ACTOR_ID) 防具固定 @ARMOR_FIX[3]="actor.armor3_fix" ACTOR_ID @WEAPON_FIX="[actor.weapon_fix]" I SELF.EQUIP_TYPE.SIZE @ARMOR_FIX="[false]" ATTR_ACCESSOR : ALIAS SETUP 0 1...KGC::EEX_TS_NUMBER @ARMOR_FIX[2]="actor.armor2_fix" SETUP_KGC_EQUIPEXTENSION # @WEAPONS セットアップ IN @ARMOR1_ID="@armor2_id=@armor3_id=@armor4_id=0" END @ARMOR_FIX[1]="actor.armor1_fix" IF FOR ID @ARMOR_FIX[4]="actor.armor4_fix" <<> 5
for i in 5...self.equip_type.size
@armor_fix[i] = false
end
end

@armor_id = [0]
if @weapons[0] == 0 || !$data_weapons[@weapons[0]].element_set.include?($game_special_elements["two_handed"])
@armor_id[1] = actor.armor1_id
else
@armor_id[1 ] = 0
end
@armor_id[2] = actor.armor2_id
@armor_id[3] = actor.armor3_id
@armor_id[4] = actor.armor4_id
if self.equip_type.size > 5
for i in 5...self.equip_type.size
@armor_id[i] = 0
end
end

# 원래의 처리를 실행
setup_KGC_EquipExtension(actor_id)

@equip_type, @equip_type_weapon = nil, nil
@two_swords, @two_handed = false, 0
@ts_number, @attack_count = nil, 0
if KGC::EEX_EQUIP_TYPE.size > 5
for i in 5...KGC::EEX_EQUIP_TYPE.size
# 방어구 ID, 고정 플래그를 초기화
@armor_id[i], @armor_fix[i] = 0, false
# 오 트스테이트를 갱신
update_auto_state(nil, $data_armors[self.armor_id[i]])
end
end
end
#--------------------------------------------------------------------------
# ● 장비 타입 취득
#--------------------------------------------------------------------------
def equip_type
typ e = (@equip_type_weapon != nil && @equip_type_weapon != []) ?
@equip_type_weapon : (@equip_type != nil && @equip_type != []) ?
@equip_type : KGC::EEX_EQUIP_TYPE
if type[0] != 0
type.insert(0, 0)
end
return type
end
#------------------------------------------ --------------------------------
# ● 장비 타입 설정
#--------------------------------------------------------------------------
def equip_type=(type)
@equip_type = type
end
#--------------------------------------------------------------------------
# ● 장비품 타입 변경 적용
#---------------- ----------------------------------------------------------
def equip_type_apply
last_equip_type = self.equip_type.dup
if self.weapon_id > 0
@equip_type_weapon = $data_weapons[self.weapon_id].equip_type
else
@equip_type_weapon = nil
end
# 장비 불가능하게 된 것은 제외한다
for i in (self.two_swords? ? self.ts_number : 1)...last_equip_type.size
next if @armor_id[i] == nil
if (armor = $data_armors[@armor_id[i]]) != nil &&
self.equip_type[i] != armor.kind + 1
self.equip(i, 0)
end
end
@armor_id = @armor_id[0...self.equip_ type.size]
end
#--------------------------------------------------------------------------
# ● 최대 EP취득
#--------------------------------------------------------------------------
def max_ep
formula = KGC::EEX_EP_FORMULA.gsub(/lv/i) {"@level"}
return [[Integer(eval(formula)), KGC::EEX_EP_MIN].max, KGC::EEX_EP_MAX].min
end
#--------------------------------------------------------------------------
# ● EP취득
#--------------------------------------------------------------------------
def ep
if self.two_swords?
n = 0
for i in 0...self.ts_numb er
n += (weapon = $data_weapons[self.weapon_id(i)]) != nil ?
weapon.ep_cost : 0
end
else
n = (weapon = $data_weapons[self.weapon_id]) != nil ? weapon.ep_cost : 0
end
for i in (self.two_swords? ? self.ts_number : 1)...self.equip_type.size
n += ( armor = $data_armors[self.armor_id[i]]) != nil ? armor.ep_cost : 0
end
return self.max_ep - n
end
#--------------------------------------------------------------------------
# ● 쌍수검 상태 취득
#--------------------------------------------------------------------------
def two_sword s?
return @two_swords
end
#--------------------------------------------------------------------------
# ● 쌍수검 설정
#--------------------------------------------------------------------------
def two_swords=(value)
# 쌍수검이 되었을 경우
if value && !@two_swords
# 양손 소유를 해제
self.two_handed = false
# 쌍수검으로 장비 불가능하게 되는 방어구를 벗는다
for i in 1...self.ts_number
self.equip(i, 0)
end
# 쌍수검이 해제되었을 경우
elsif !value && @two_swords
# 원래 방어구인 부분의 무기를 벗는다
for i in 1...self.ts_number
self.equip(i, 0)
@weapons[i], @weapon_fix[i] = 0, false
end
end
@two_swords = value
end
#--------------------------------------------------------------------------
# ● 쌍수검 무기수취득
#--------------------------------------------------------------------------
def ts_number
return @ts_number != nil ? @ts_number : KGC::EEX_TS_NUMBER
end
#--------------------------------------------------------------------------
# ● 쌍수검 무기수설정
#--------------------------------------------------------------------------
def ts_number=(number)
@ts_number = number
end
#-------------------------------------- ------------------------------------
# ● 양손 소유 상태 취득
#--------------------------------------------------------------------------
def two_handed?
return @two_handed
end
#--------------------------------------------------------------------------
# ● 양손 소유 설정
#--------------------- -----------------------------------------------------
def two_handed=(value)
# 양손 소유가 되었을 경우
if value && !@two_handed
# 쌍수검을 해제
self.two_swords = false
# 최초의 방어구를 벗는다
self.equip(1, 0)
# 최초의 방어구를 고정
@armor_fix[1] = true
# 양손 소유가 해제되었을 경우
elsif !value && @two_handed
# 최초의 방어구 고정을 해제
@armor_fix[1] = false
end
@two_handed = value
end
#--------------------------------------------------------------------------
# ● 공격 회수 취득
#--------------------------------------------------------------------------
def attack_count
@attack_count = 0 if @attack_count == nil
return @attack_count
end
#--------------------------------------------------------------------------
# ● 공격 회수 설정
#--------------------------------------------------------------------------
def attack_count=(value)
@attack_count = 0 if @attack_count == nil
@attack_count = value
end
#--------------------------------------------------------------------------
# ● 무기 ID 의 취득
#--------------------------------------------------------------------------
def weapon_id(type = 0)
@weapons[type] = 0 if @weapons[type ] == nil
return @weapons[type]
end
#--------------------------------------------------------------------------
# ● 무기 ID 의 설정
#--------------------------------------------------------------------------
def weapon_id=(n)
@weapons[0] = n
end
#------------------------------ --------------------------------------------
# ● 무기 ID 의 설정(쌍수검용)
#--------------------------------------------------------------------------
def set_weapon(type, n)
@weapons[type] = n
end
#--------------------------------------------------------------------------
# ● 방어구 ID 의 취득
#--------------------------------------------------------------------------
def armor_id
type = self.equip_type.dup
for i in 1...type.size
if @armor_id[i] == nil
@armor_id[i] = 0
end
end
return @armor_id
end
#------------------------------------- -------------------------------------
# ● 방어구 ID 1 의 취득(호환용)
#--------------------------------------------------------------------------
def armor1_id
return self.armor_id[1]
end
#--------------------------------------------------------------------------
# ● 방어구 ID 1 의 설정(호환용)
#- -------------------------------------------------------------------------
def armor1_id=(id)
@armor_id[1] = id
end
#--------------------------------------------------------------------------
# ● 방어구 ID 2 의 취득(호환용)
#-------------------------------------------------------------------- ------
def armor2_id
return self.armor_id[2]
end
#--------------------------------------------------------------------------
# ● 방어구 ID 2 의 설정(호환용)
#--------------------------------------------------------------------------
def armor2_id=(id)
@armor_id[2] = id
end
#--- -----------------------------------------------------------------------
# ● 방어구 ID 3 의 취득(호환용)
#--------------------------------------------------------------------------
def armor3_id
return self.armor_id[3]
end
#--------------------------------------------------------------------- -----
# ● 방어구 ID 3 의 설정(호환용)
#--------------------------------------------------------------------------
def armor3_id=(id)
@armor_id[3] = id
end
#--------------------------------------------------------------------------
# ● 방어구 ID 4 의 취득(호환용)
#---------------------------------- ----------------------------------------
def armor4_id
return self.armor_id[4]
end
#--------------------------------------------------------------------------
# ● 방어구 ID 4 의 설정(호환용)
#--------------------------------------------------------------------------
def armor4_id=(id)
@armor_id[4] = id
end
#--------------------------------------------------------------------------
# ● 기본 공격력의 취득
#--------------------------------------------------------------------------
def base_atk
if $game_temp.in_battle
if self.two_swords?
weapon = $data_wea pons[self.weapon_id(@attack_count)]
n = weapon != nil ? weapon.atk : 0
else
weapon = $data_weapons[self.weapon_id]
n = weapon != nil ? weapon.atk : 0
n *= 1.5 if self.two_handed?
end
else
if self.two_swords?
n = 0
for i in 0...self.ts_number
weapon = $data_weapons[self.weapon_id(i)]
n += weapon != nil ? weapon.atk : 0
end
else
weapon = $data_weapons[self.weapon_id]
n = weapon != nil ? weapon.atk : 0
n *= 1.5 if self.two_handed?
end
end
return Integer(n)
end
#--------------------------------------------------------------------------
# ● 속성 보정치의 취득
# element_id : 속성 ID
#--------------------------------------------------------------------------
def element_rate(element_id)
# 속성 유효도에 대응하는 수치를 취득
table = [0, 200,150,100,50,0,-100]
result = table[$data_classes[@class_id].element_ranks[element_id]]
# 방어구로 이 속성이 방어되고 있는 경우는 반감
for i in (self.two_swords? ? self.ts_number : 1)...self.equip_type.size
val = self.armor_id[i]
next if val == nil
armor = $data_armors[val]
if a rmor != nil && armor.guard_element_set.include?(element_id)
result /= 2
end
end
# 스테이트에서 이 속성이 방어되고 있는 경우는 반감
for i in @states
if $data_states[i].guard_element_set.include?(element_id)
result /= 2
end
end
return result
end
#----------- ---------------------------------------------------------------
# ● 스테이트 방어 판정
# state_id : 스테이트 ID
#--------------------------------------------------------------------------
def state_guard?(state_id)
for i in (self.two_swords? ? self.ts_number : 1)...self.equip_type.size
val = self.armor_id[i]
next if val == nil
armor = $data_armors[val]
if armor != nil
if armor.guard_state_set.include?(state_id)
return true
end
end
end
return false
end
#-------------------------------------------------------- ------------------
# ● 기본 완력의 취득
#--------------------------------------------------------------------------
def base_str
n = $data_actors[@actor_id].parameters[2, @level]
if self.two_swords?
for i in 0...self.ts_number
weapon = $data_weapons[self.weapon_id(i)]
n += weapon != nil ? weapon.str_plus : 0
end
else
weapon = $data_weapons[self.weapon_id]
n += weapon != nil ? weapon.str_plus : 0
end
for i in (self.two_swords? ? self.ts_number : 1)...self.equip_type.size
armor = $data_armors[self.armor_id[i]]
n += armor != nil ? armor.str_plus : 0
end
n = [[n, 1].max, 999].min unless $imported["LimitBreak"]
return n
end
#--------------------------------------------------------------------------
# ● 기본 손재주가 있음의 취득
#----------------------------------------------------------------------- ---
def base_dex
n = $data_actors[@actor_id].parameters[3, @level]
if self.two_swords?
for i in 0...self.ts_number
weapon = $data_weapons[self.weapon_id(i)]
n += weapon != nil ? weapon.dex_plus : 0
end
else
weapon = $data_weapons[self.weapon_i d]
n += weapon != nil ? weapon.dex_plus : 0
end
for i in (self.two_swords? ? self.ts_number : 1)...self.equip_type.size
armor = $data_armors[self.armor_id[i]]
n += armor != nil ? armor.dex_plus : 0
end
n = [[n, 1].max, 999].min unless $imported["LimitBreak"]
return n
end
#--------------------------------------------------------------------------
# ● 기본 민첩함의 취득
#--------------------------------------------------------------------------
def base_agi
n = $data_actors[@actor_id].parameters[4, @level]
if self.two_swords?
fo r i in 0...self.ts_number
weapon = $data_weapons[self.weapon_id(i)]
n += weapon != nil ? weapon.agi_plus : 0
end
else
weapon = $data_weapons[self.weapon_id]
n += weapon != nil ? weapon.agi_plus : 0
end
for i in (self.two_swords? ? self.ts_number : 1)...self.equip_type.size
armor = $data_armors[self.armor_id[i]]
n += armor != nil ? armor.agi_plus : 0
end
n = [[n, 1].max, 999].min unless $imported["LimitBreak"]
return n
end
#--------------------------------------------------------------------------
# ● 기본 마력의 취득
#--------------------------------------------------------------------------
def base_int
n = $data_actors[@actor_id].parameters[5, @level]
if self.two_swords?
for i in 0...self.ts_number
weapon = $data_weapons[self.weapon_id(i)]
n += weapon != nil ? wea pon.int_plus : 0
end
else
weapon = $data_weapons[self.weapon_id]
n += weapon != nil ? weapon.int_plus : 0
end
for i in (self.two_swords? ? self.ts_number : 1)...self.equip_type.size
armor = $data_armors[self.armor_id[i]]
n += armor != nil ? armor.int _plus : 0
end
n = [[n, 1].max, 999].min unless $imported["LimitBreak"]
return n
end
#--------------------------------------------------------------------------
# ● 기본 물리 방어의 취득
#--------------------------------------------------------------------------
def base_pdef
n = 0
if self.two_swords?
for i in 0...self.ts_number
weapon = $data_weapons[self.weapon_id(i)]
n += weapon != nil ? weapon.pdef : 0
end
else
weapon = $data_weapons[self.weapon_id]
n += weapon != nil ? weapon.pdef : 0
end
for i in (sel f.two_swords? ? self.ts_number : 1)...self.equip_type.size
armor = $data_armors[self.armor_id[i]]
n += armor != nil ? armor.pdef : 0
end
return n
end
#--------------------------------------------------------------------------
# ● 기본 마법 방어의 취득
#----------------------- ---------------------------------------------------
def base_mdef
n = 0
if self.two_swords?
for i in 0...self.ts_number
weapon = $data_weapons[self.weapon_id(i)]
n += weapon != nil ? weapon.mdef : 0
end
else
weapon = $data_weapons[self.weapon_ id]
n += weapon != nil ? weapon.mdef : 0
end
for i in (self.two_swords? ? self.ts_number : 1)...self.equip_type.size
armor = $data_armors[self.armor_id[i]]
n += armor != nil ? armor.mdef : 0
end
return n
end
#-------------------------------------------- ------------------------------
# ● 기본 회피 수정의 취득
#--------------------------------------------------------------------------
def base_eva
n = 0
for i in (self.two_swords? ? self.ts_number : 1)...self.equip_type.size
armor = $data_armors[self.armor_id[i]]
n += armor != ni l ? armor.eva : 0
end
return n
end
#--------------------------------------------------------------------------
# ● 장비의 변경
# equip_type : 장비 타입
# id : 무기 or 방어구 ID (0 이라면 장비 해제)
#--------------------------------------------------------------------------
def equip(equip_type, id)
case equip_type
when (self.two_swords? ? 0...self.ts_number : 0) # 무기
if id == 0 || $game_party.weapon_number(id) > 0
# EP판정
if KGC::EEX_USE_EP && id > 0
# EP부족의 경우는 돌아온다
if $data_weapons[id].ep_cost > self.ep
r eturn
end
end
# 쌍수검 이외로 양손 소유 무기를 장비하는 경우
if !self.two_swords? && id > 0 &&
$data_weapons[id].element_set.include?($game_special_elements["two_handed"])
# 최초의 방어구를 벗는다
self.equip(1, 0)
end
$game_party.gain_weapon(self.w This page is too long to be completely translated. The remainder of this page will not be translated. eapon_id(equip_type), 1)
self.set_weapon(equip_type, id)
$game_party.lose_weapon(id, 1)
end
#when (self.two_swords? ? self.ts_number : 1)...self.equip_type.size
else # 防具
# 二刀流以外で、両手持ち武器を装備しており、最初の防具を変更する場合は戻る
if !self.two_swords? && equip_type == 1 && self.weapon_id > 0 &&
$data_weapons[self.weapon_id].element_set.include?($game_special_elements["two_handed"])
return
end
if id == 0 || $game_party.armor_number(id) > 0
# EP判定
if KGC::EEX_USE_EP && id > 0
# EP不足の場合は戻る
if $data_armors[id].ep_cost > self.ep
return
end
end
update_auto_state(@armor_id[equip_type] != nil ?
$data_armors[@armor_id[equip_type]] : nil, $data_armors[id])
if @armor_id[equip_type] != nil && @armor_id[equip_type] > 0
$game_party.gain_armor(@armor_id[equip_type], 1)
end
@armor_id[equip_type] = id
$game_party.lose_armor(id, 1)
end
end
end
#--------------------------------------------------------------------------
# ● 装備固定判定
# equip_type : 装備タイプ
#--------------------------------------------------------------------------
def equip_fix?(equip_type)
case equip_type
when (self.two_swords? ? 0...self.ts_number : 0) # 武器
return @weapon_fix[equip_type]
#when (self.two_swords? ? self.ts_number : 1)...self.equip_type.size
else # 防具
return @armor_fix[equip_type]
end
return false
end
#--------------------------------------------------------------------------
# ● 通常攻撃 攻撃側アニメーション ID の取得
#--------------------------------------------------------------------------
def animation1_id
if self.two_swords?
weapon = $data_weapons[self.weapon_id(self.attack_count)]
return weapon != nil ? weapon.animation1_id : 0
else
weapon = $data_weapons[self.weapon_id]
return weapon != nil ? weapon.animation1_id : 0
end
end
#--------------------------------------------------------------------------
# ● 通常攻撃 対象側アニメーション ID の取得
#--------------------------------------------------------------------------
def animation2_id
if self.two_swords?
weapon = $data_weapons[self.weapon_id(self.attack_count)]
return weapon != nil ? weapon.animation2_id : 0
else
weapon = $data_weapons[self.weapon_id]
return weapon != nil ? weapon.animation2_id : 0
end
end
#--------------------------------------------------------------------------
# ● クラス ID の変更
# class_id : 新しいクラス ID
#--------------------------------------------------------------------------
def class_id=(class_id)
if $data_classes[class_id] != nil
@class_id = class_id
# 装備できなくなったアイテムを外す
if self.two_swords?
for i in 0...self.ts_number
equip(i, 0) unless equippable?($data_weapons[self.weapon_id(i)])
end
else
equip(0, 0) unless equippable?($data_weapons[self.weapon_id])
end
for i in (self.two_swords? ? self.ts_number : 1)...self.equip_type.size
equip(i, 0) unless equippable?($data_armors[self.armor_id[i]])
end
end
end
end

#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

#==============================================================================
# ■ Window_EquipLeft
#==============================================================================

unless $imported["EquipAlter"]
class Window_EquipLeft <Window_Base 1...@ACTOR.TS_NUMBER SELF.CONTENTS.FONT.COLOR="@actor.ep==0" REFRESH SELF.CONTENTS.DRAW_TEXT(196, DEF #-------------------------------------------------------------------------- ● 2) TYPE I KGC::EEX_DRAW_EP_MAX SELF.CONTENTS.DRAW_TEXT(172, ? < : @ACTOR.TWO_SWORDS? SELF.CONTENTS.DRAW_TEXT(180, ELSE KNOCKOUT_COLOR ALIAS WINDOW_EQUIPRIGHT SELF.CONTENTS.DRAW_TEXT(212, @EQUIP_TYPE="@actor.equip_type.dup" SELF.CONTENTS.DRAW_TEXT(140, 元の処理を実行 RETURN 1) WINDOW_SELECTABLE ■ 装備タイプを取得 # @EQUIP_TYPE[I]="0" @ACTOR.EQUIP_TYPE_APPLY @ACTOR.EP.TO_S, 16, KGC::EEX_USE_EP IN KGC::EEX_EP_NAME) 0, END 24, NORMAL_COLOR FOR タイプの取得 IF SELF.INDEX /", @ACTOR.MAX_EP.TO_S, #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★ 32, REFRESH_KGC_EQUIPEXTENSION @EQUIP_TYPE[SELF.INDEX] リフレッシュ> = @equip_type.size
self.index = @equip_type.size - 1
end
# ウィンドウ内容を作成
self.contents.dispose
self.contents = Bitmap.new(width - 32, @equip_type.size * 32)
@data = []
if @actor.two_swords?
for i in 0...@actor.ts_number
@data.push($data_weapons[@actor.weapon_id(i)])
end
for i in @actor.ts_number...@equip_type.size
@data.push($data_armors[@actor.armor_id[i]])
end
else
@data.push($data_weapons[@actor.weapon_id])
for i in 1...@equip_type.size
@data.push($data_armors[@actor.armor_id[i]])
end
end
@item_max = @data.size
self.contents.font.color = system_color
for i in 0...@equip_type.size
if @actor.two_swords? && i <@actor.ts_number 0...@COMMANDS.SIZE 80, DEF NORMAL_COLOR && 3) SELF.CONTENTS.DRAW_TEXT(120, ITEM1.ATK INITIALIZE(ACTOR) 224, ITEM.EP_COST.TO_S, ATK2="@item" SELF.CONTENTS.DRAW_TEXT(212, ATK1 SELF.CONTENTS.DRAW_TEXT(196, アクターを取得 WINDOW_EQUIPEXTENDCONTROL DRAW_ITEM_NAME($DATA_WEAPONS[@ACTOR.WEAPON_ID], 22 MDEF2 OPACITY) MDEF1 200, NEXT") 選択中の装備品 SELF.CONTENTS.DRAW_TEXT(172, 16, @ITEM_WIDTH="(width" DRAW_ACTOR_GRAPHIC(@ACTOR, 2) 368, 160, 変更前の素早さ ACTOR.EQUIPPABLE?(@ITEM) Y, @ACTOR.EXP_S, 0...$GAME_PARTY.ACTORS.SIZE 装備可能な場合 現在の装備品を取得 DRAW_ACTOR_LEVEL(@ACTOR, SELF.CONTENTS.DRAW_TEXT(516, #------------------------------------------------------------------------------ ACTOR.EQUIP_TYPE[J]="@item.kind" REFRESH 1) RETURN ATTR_ACCESSOR オブジェクト初期化 1...ACTOR.EQUIP_TYPE.SIZE SELF.CONTENTS.FONT.SIZE="18" 変更前の腕力 96, 持っている数") @DATA[I].EP_COST.TO_S, @ACTOR.MAX_EP.TO_S, ACTOR="$game_party.actors[i]" 72, ● @ITEM.ATK ACTOR.NAME) 1...@ACTOR.EQUIP_TYPE.SIZE @ITEM.MDEF 0, COLOR.NEW(0, ICON="RPG::Cache.icon(item1.icon_name)" 0) @NEW_ATK @LAST_STR="@actor.str" ICON.RECT, 装備可能なら通常文字色に、不可能なら無効文字色に設定 IN 216, SPRINTF("%+D", SELF.CONTENTS.DRAW_TEXT(204, IF SELF.CONTENTS.DRAW_TEXT(92, ITEM1.NAME) @ITEM.IS_A?(RPG::WEAPON) SELF.CONTENTS.DRAW_TEXT(572, WINDOW_EQUIPEXTENDSTATUS 変更前の魔力 DRAW_ITEM(INDEX) @LAST_INT="@actor.int" :NEW_EQUIP SELF.CONTENTS.DRAW_TEXT(140, WINDOW_EQUIPLEFT ITEM1.MDEF WINDOW_BASE RPG::ITEM /", I, DRAW_ITEM_NAME($DATA_WEAPONS[@ACTOR.WEAPON_ID(I)], 336, ■ I) @HELP_WINDOW.SET_TEXT(KGC::EEX_EQUIP_EX_HELP_ALL_RELEASE) @LAST_EQUIP="nil" 128 SELF.BACK_OPACITY="160" SELF.CONTENTS="Bitmap.new(width" @HELP_WINDOW.SET_TEXT(KGC::EEX_EQUIP_EX_HELP_STRONGEST_EQUIP) DRAW_ACTOR_HP(@ACTOR, SELF.CONTENTS.DRAW_TEXT(468, 項目の描画 DRAW_ITEM_KGC_EQUIPEXTENSION :LAST_AGI SELF.CURSOR_RECT.SET(@ITEM_WIDTH 64, DRAW_ACTOR_STATE(@ACTOR, ICON, 64) SELF.CONTENTS.DRAW_TEXT(320 0)) パラメータの変化値を描画 初期能力値を保存 WHEN :LAST_DEX 40, 0...@DATA.SIZE $IMPORTED["HELPEXTENSION"] ALIAS NUMBER="$game_party.armor_number(@item.id)" @ITEM_WIDTH, HEIGHT DRAW_ACTOR_NAME(@ACTOR, アクターの名前を描画 92, ELSE FOR SELF.CONTENTS.FILL_RECT(RECT, DRAW_ITEM_NAME(@DATA[I], SUPER(ACTOR) 144, KGC::EEX_EQUIP_NAME[@ACTOR.EQUIP_TYPE[I]]="nil" 元の処理を実行 DRAW_ITEM 120, @ACTOR.ARMOR_ID[I] RPG::ARMOR KGC::EEX_EQUIP_EX_COMMAND_ALL_RELEASE] 公開インスタンス変数 KNOCKOUT_COLOR 212, 28, 304, #-------------------------------------------------------------------------- KGC::EEX_DRAW_EP_MAX SELF.INDEX SELF.CONTENTS.DRAW_TEXT(4, WINDOW_EQUIPITEM @ACTOR.EP.TO_S, $IMPORTED["STATUSALTER"] SELF.CONTENTS.DRAW_TEXT(X 172) @ACTOR.TWO_SWORDS?  拡張装備画面で、アクターのパラメータ変化を表示するウィンドウです。 WINDOW_SHOPSTATUS DRAW_ACTOR_SP(@ACTOR, KGC::EEX_EP_NAME) SELF.CONTENTS.CLEAR @COMMANDS.SIZE 240, $DATA_SYSTEM.WORDS.PDEF) @ITEM.PDEF SELF.CONTENTS.DRAW_TEXT(320, RECT="Rect.new(@item_width" @COLUMN_MAX="@commands.size" 320 @DATA[I] BREAK 32, ヘルプテキスト更新 @COMMANDS[I], 武器の場合 32) @ITEM_MAX="@commands.size" EXP") (288 カーソルの矩形更新 400, UPDATE_HELP アイテムを描画 NUMBER.TO_S, @NEW_EQUIP="nil" @HELP_WINDOW.SET_TEXT(KGC::EEX_EQUIP_EX_HELP_EQUIP) 84, 0...@ACTOR.TS_NUMBER KGC::EEX_USE_EP ITEM1.PDEF SELF.CONTENTS.DRAW_TEXT(124, OPACITY="self.contents.font.color==normal_color" 112, 項目番号 64 @LAST_AGI="@actor.agi" 112) WINDOW_SELECTABLE ITEM1 255 DRAW_ITEM_NAME($DATA_ARMORS[ @ITEM.IS_A?(RPG::ITEM) Y X="4" 6) PDEF2="@item" PDEF1 @LAST_DEX="@actor.dex" 防具の場合 256, ], CHANGE), $DATA_SYSTEM.WORDS.DEX) J INDEX I $DATA_SYSTEM.WORDS.AGI) KGC::EEX_EQUIP_NAME[@ACTOR.EQUIP_TYPE[I]]) RPG::WEAPON CHANGE="pdef2" 変更前の器用さ NEXT 192 640, @ITEM.IS_A?(RPG::ARMOR) ? 48, < 48) : SELF.CONTENTS.FONT.COLOR="@actor.atk" CASE 5) DRAW_ACTOR_PARAMETER(@ACTOR, 192, ITEM SELF.CONTENTS.DRAW_TEXT(180, 4 @ACTOR.TS_NUMBER...@ACTOR.EQUIP_TYPE.SIZE 192) 24, 2 1 0 装備品追加情報 $DATA_SYSTEM.WORDS.INT) / SELF.CONTENTS.BLT(X, - @ITEM + * @ACTOR.NEXT_REST_EXP_S, $DATA_SYSTEM.WORDS.STR) :LAST_STR $DATA_SYSTEM.WORDS.MDEF) % 44 WINDOW_STATUS # @COMMANDS="[KGC::EEX_EQUIP_EX_COMMAND_EQUIP," UPDATE_CURSOR_RECT !="nil" SELF.CONTENTS.DRAW_TEXT(548, #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★ INDEX, 4, 装備") 128, KGC::EEX_EQUIP_EX_COMMAND_STRONGEST_EQUIP, 4) リフレッシュ INITIALIZE  装備画面で、操作を選択するウィンドウです。 KGC::EEX_EQUIP_NAME[0]) DRAW_ITEM_KGC_EQUIPEXTENSION(INDEX) KGC::EEX_EQUIP_EX_BACK_TRANSPARENT :LAST_INT END $DATA_SYSTEM.WORDS.ATK) SELF.CONTENTS.DRAW_TEXT(RECT, DRAW_ACTOR_CLASS(@ACTOR, SELF.Z="1000" SUPER(0, SELF.Y="288" SELF.X="368" 32> @new_atk ? text_color(2) :
@actor.atk <@new_atk SELF.CONTENTS.FONT.COLOR="@actor.pdef" SELF.CONTENTS.DRAW_TEXT(80, @ACTOR.ATK.TO_S, 2) ? : ELSE TEXT_COLOR(3) !="nil" 36, 64, @NEW_ATK.TO_S, @NEW_PDEF END NORMAL_COLOR IF 32,> @new_pdef ? text_color(2) :
@actor.pdef <@new_pdef SELF.CONTENTS.FONT.COLOR="@actor.mdef" SELF.CONTENTS.DRAW_TEXT(80, 2) @ACTOR.PDEF.TO_S, ? @NEW_PDEF.TO_S, : ELSE TEXT_COLOR(3) 96, !="nil" @NEW_MDEF 36, END NORMAL_COLOR IF 32,> @new_mdef ? text_color(2) :
@actor.mdef <@new_mdef SELF.CONTENTS.FONT.COLOR="@last_str" SELF.CONTENTS.DRAW_TEXT(80, 2) ? : ELSE TEXT_COLOR(3) 128, !="nil" 36, @NEW_STR @ACTOR.MDEF.TO_S, END NORMAL_COLOR IF @NEW_MDEF.TO_S, 32,> @new_str ? text_color(2) :
@last_str <@new_str SELF.CONTENTS.FONT.COLOR="@last_dex" @NEW_DEX 2) ? : ELSE TEXT_COLOR(3) SELF.CONTENTS.DRAW_TEXT(200, !="nil" @NEW_STR.TO_S, 36, END NORMAL_COLOR IF 32, @ACTOR.STR.TO_S,> @new_dex ? text_color(2) :
@last_dex <@new_dex SELF.CONTENTS.FONT.COLOR="@last_agi" @NEW_AGI 2) ? : ELSE TEXT_COLOR(3) SELF.CONTENTS.DRAW_TEXT(200, !="nil" @NEW_DEX.TO_S, 36, 64, END NORMAL_COLOR IF 32, @ACTOR.DEX.TO_S,> @new_agi ? text_color(2) :
@last_agi <@new_agi SELF.CONTENTS.FONT.COLOR="@last_int" 2) ? @NEW_AGI.TO_S, : ELSE TEXT_COLOR(3) SELF.CONTENTS.DRAW_TEXT(200, 96, !="nil" @ACTOR.AGI.TO_S, 36, @NEW_INT END NORMAL_COLOR IF 32,> @new_int ? text_color(2) :
@last_int <@new_int @NEW_PDEF="new_pdef" NEW_ST[3] NORMAL_COLOR 36, END 1...@ACTOR.TS_NUMBER FOR オブジェクト初期化 368, SELF.CONTENTS="Bitmap.new(width" 2) @LAST_EQUIP="@new_equip" #------------------------------------------------------------------------------ @NEW_STR="new_st[0]" @EQUIP_TYPE[I]="0" ELSE SELF.INDEX NEW_ST="[nil," TEXT_COLOR(3) 64, DEF SET_NEW_PARAMETERS(NEW_ATK, SELF.CONTENTS.FONT.COLOR="normal_color" INITIALIZE(ACTOR) $IMPORTED["HELPEXTENSION"] 装備変更後のパラメータ設定 @NEW_MDEF="new_mdef" アイテムの取得 ● アクター NIL]) @NEW_INT.TO_S, WINDOW_SELECTABLE 416) ITEM SUPER(0, @NEW_AGI="new_st[2]" @NEW_ATK="new_atk" @ACTOR="actor" || @NEW_DEX="new_st[1]" #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★ SELF.CONTENTS.DRAW_TEXT(200, IN IF ■ 128, REFRESH SELF.BACK_OPACITY="160"  拡張装備画面で、アクターが現在装備しているアイテムを表示するウィンドウです。 I @ACTOR.TWO_SWORDS? @EQUIP_TYPE="@actor.equip_type.dup" HEIGHT ACTOR ? < @DATA[SELF.INDEX] 32, : タイプの取得 NEW_PDEF, 32) SELF.ACTIVE="false" - @EQUIP_TYPE[SELF.INDEX] RETURN #-------------------------------------------------------------------------- リフレッシュ NIL, TYPE NEW_MDEF, # !="new_st[3]" @ACTOR.INT.TO_S, KGC::EEX_EQUIP_EX_BACK_TRANSPARENT @ACTOR.EQUIP_TYPE_APPLY 装備タイプを取得 SELF.HEIGHT="352" WINDOW_EQUIPEXTENDLIST SELF.Y="128"> = @equip_type.size
self.index = @equip_type.size - 1
end
# アイテムを追加
@data = []
if @actor.two_swords?
for i in 0...@actor.ts_number
@data.push($data_weapons[@actor.weapon_id(i)])
end
for i in @actor.ts_number...@equip_type.size
@data.push($data_armors[@actor.armor_id[i]])
end
else
@data.push($data_weapons[@actor.weapon_id])
for i in 1...@equip_type.size
@data.push($data_armors[@actor.armor_id[i]])
end
end
@equip_type = @equip_type[KGC::EEX_EQUIP_EX_INDEX...@equip_type.size]
@data = @data[KGC::EEX_EQUIP_EX_INDEX...@data.size]
@item_max = @data.size
# ウィンドウ内容を作成
self.contents.dispose
self.contents = Bitmap.new(width - 32, @equip_type.size * 32)
self.contents.font.color = system_color
for i in 0...@equip_type.size
if @equip_type[i] == 0 && @actor.two_swords? && i <@actor.ts_number && @COLUMN_MAX="1"  拡張装備画面で、装備変更の候補となるアイテムの一覧を表示するウィンドウです。 @DATA[I] KGC::EEX_EQUIP_NAME[0]) END FOR オブジェクト初期化 SELF.CONTENTS="nil" 2) #------------------------------------------------------------------------------ KGC::EEX_EQUIP_NAME[@EQUIP_TYPE[I]]="nil" $GAME_PARTY.WEAPON_NUMBER(I) ELSE SELF.INDEX="-1" 64, DEF INITIALIZE(ACTOR, SELF.CONTENTS.FONT.COLOR="KGC::EEX_EP_COLOR" $IMPORTED["HELPEXTENSION"] WINDOW_EQUIPEXTENDITEM アイテムの取得 SELF.CONTENTS.DRAW_TEXT(4, 92, 320, ● WEAPON_SET="$data_classes[@actor.class_id].weapon_set" アクター WINDOW_SELECTABLE 416) ITEM (0〜3) UPDATE_HELP @ACTOR="actor" SUPER(368, #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★ IN SELF.ITEM.DESCRIPTION) EQUIP_TYPE IF KGC::EEX_EQUIP_NAME[@EQUIP_TYPE[I]]) KGC::EEX_USE_EP DRAW_ITEM_NAME(@DATA[I], ■ @DATA="[]" 装備部位 EQUIP_TYPE) 240, REFRESH SELF.BACK_OPACITY="160" ヘルプテキスト更新 I, I I) @EQUIP_TYPE="0" ACTOR ? < @DATA[SELF.INDEX] 32, NEXT @DATA[I].EP_COST.TO_S, : 装備可能な武器を追加 SELF.ACTIVE="false" RETURN #-------------------------------------------------------------------------- * リフレッシュ # 1...$DATA_WEAPONS.SIZE !="nil" SELF.CONTENTS.DRAW_TEXT(92, @HELP_WINDOW.SET_TEXT(SELF.ITEM="nil" KGC::EEX_EQUIP_EX_BACK_TRANSPARENT SELF.CONTENTS.DISPOSE SELF.HEIGHT="352" 0...@DATA.SIZE SELF.Y="128" 32> 0 && weapon_set.include?(i)
@data.push($data_weapons[i])
end
end
end
# 装備可能な防具を追加
if @equip_type != 0
armor_set = $data_classes[@actor.class_id].armor_set
for i in 1...$data_armors.size
if $game_party.armor_number(i) > 0 && armor_set.include?(i)
if $data_armors[i].kind == @equip_type-1
@data.push($data_armors[i])
end
end
end
end
# 空白を追加
@data.push(nil)
# ビットマップを作成し、全項目を描画
@item_max = @data.size
self.contents = Bitmap.new(width - 32, row_max * 32)
for i in 0...@item_max-1
draw_item(i)
end
end
#--------------------------------------------------------------------------
# ● 項目の描画
# index : 項目番号
#--------------------------------------------------------------------------
def draw_item(index)
item = @data[index]
y = index * 32
case item
when RPG::Weapon
number = $game_party.weapon_number(item.id)
when RPG::Armor
number = $game_party.armor_number(item.id)
end
icon = RPG::Cache.icon(item.icon_name)
self.contents.blt(0, y + 4, icon, icon.rect)
self.contents.font.color = normal_color
self.contents.draw_text(32, y, 212, 32, item.name, 0)
self.contents.draw_text(244, y, 16, 32, ":", 1)
self.contents.draw_text(260, y, 24, 32, number.to_s, 2)
if KGC::EEX_USE_EP && item != nil
self.contents.font.color = KGC::EEX_EP_COLOR
self.contents.draw_text(220, y, 24, 32, item.ep_cost.to_s, 2)
end
end
#--------------------------------------------------------------------------
# ● ヘルプテキスト更新
#--------------------------------------------------------------------------
def update_help
@help_window.set_text(self.item == nil ? "" : self.item.description)
end
end

#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

#==============================================================================
# ■ Interpreter (分割定義 3)
#==============================================================================

class Interpreter
#--------------------------------------------------------------------------
# ● 条件分岐
#--------------------------------------------------------------------------
def command_111
# ローカル変数 result を初期化
result = false
# 条件判定
case @parameters[0]
when 0 # スイッチ
result = ($game_switches[@parameters[1]] == (@parameters[2] == 0))
when 1 # 変数
value1 = $game_variables[@parameters[1]]
if @parameters[2] == 0
value2 = @parameters[3]
else
value2 = $game_variables[@parameters[3]]
end
case @parameters[4]
when 0 # と同値
result = (value1 == value2)
when 1 # 以上
result = (value1 >= value2)
when 2 # 以下
result = (value1 <=value2) RESULT="(value1" 超 WHEN 3 # VALUE2)> value2)
when 4 # 未満
result = (value1 <value2) セルフスイッチ 以外 RESULT="(value1" WHEN 5 2 # !="value2)" @EVENT_ID END IF> 0
key = [$game_map.map_id, @event_id, @parameters[1]]
if @parameters[2] == 0
result = ($game_self_switches[key] == true)
else
result = ($game_self_switches[key] != true)
end
end
when 3 # タイマー
if $game_system.timer_working
sec = $game_system.timer / Graphics.frame_rate
if @parameters[2] == 0
result = (sec >= @parameters[1])
else
result = (sec <=@parameters[1]) 防具 CASE BREAK エネミー 0...ACTOR.TS_NUMBER アクター ACTOR 名前 ゴールド 武器 パーティにいる I RESULT="($game_party.gold" ACTOR.ARMOR_ID[I]="@parameters[3]" WHEN ELSE @PARAMETERS[2]="0" 7 6 ACTOR.WEAPON_ID(I)="@parameters[3]" 5 4 3 2 1 ACTOR.TWO_SWORDS? 0 出現している スキル # !="nil" キャラクター ENEMY IN END FOR IF CHARACTER 1...ACTOR.EQUIP_TYPE.SIZE @PARAMETERS[1]) ステート> = @parameters[1])
else
result = ($game_party.gold <=@parameters[1]) RESULT="($game_party.item_number(@parameters[1])" WHEN 8 # END アイテム @PARAMETERS[1])> 0)
when 9 # 武器
result = ($game_party.weapon_number(@parameters[1]) > 0)
when 10 # 防具
result = ($game_party.armor_number(@parameters[1]) > 0)
when 11 # ボタン
result = (Input.press?(@parameters[1]))
when 12 # スクリプト
result = eval(@parameters[1])
end
# 判定結果をハッシュに格納
@branch[@list[@index].indent] = result
# 判定結果が真だった場合
if @branch[@list[@index].indent] == true
# 分岐データを削除
@branch.delete(@list[@index].indent)
# 継続
return true
end
# 条件に該当しない場合 : コマンドスキップ
return command_skip
end
end

#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

#==============================================================================
# ■ Scene_Equip
#==============================================================================

class Scene_Equip
#--------------------------------------------------------------------------
# ● メイン処理
#--------------------------------------------------------------------------
alias main_KGC_EquipExtension main
def main
# アクターを取得
@actor = $game_party.actors[@actor_index]
# アイテムウィンドウを作成
if KGC::EEX_EQUIP_TYPE_EXT.size > 0
for i in 0...KGC::EEX_EQUIP_TYPE_EXT.size
eval("@item_window#{i + 6} = Window_EquipItem.new(@actor, i + 5)")
if $imported["MenuAlter"] && KGC::MA_MENU_TRANSPARENT
eval("@item_window#{i + 6}.back_opacity = 160")
end
end
end

# 元の処理を実行
main_KGC_EquipExtension

# アイテムウィンドウを解放
if KGC::EEX_EQUIP_TYPE_EXT.size > 0
for i in 0...KGC::EEX_EQUIP_TYPE_EXT.size
eval("@item_window#{i + 6}.dispose if @item_window#{i + 6} != nil")
end
end
end
#--------------------------------------------------------------------------
# ● リフレッシュ
#--------------------------------------------------------------------------
def refresh
# ヘルプウィンドウを設定
if KGC::EEX_EQUIP_TYPE_EXT.size > 0
for i in 0...KGC::EEX_EQUIP_TYPE_EXT.size
eval("@item_window#{i + 6}.help_window = @help_window")
end
end
# アイテムウィンドウの可視状態設定
@item_window1.visible = (@right_window.type == 0)
@item_window2.visible = (@right_window.type == 1)
@item_window3.visible = (@right_window.type == 2)
@item_window4.visible = (@right_window.type == 3)
@item_window5.visible = (@right_window.type == 4)
if KGC::EEX_EQUIP_TYPE_EXT.size > 0
for i in 0...KGC::EEX_EQUIP_TYPE_EXT.size
eval("@item_window#{i + 6}.visible = (@right_window.type == i + 5)")
end
end
# 現在装備中のアイテムを取得
item1 = @right_window.item
# 現在のアイテムウィンドウを @item_window に設定
eval("@item_window = @item_window#{@right_window.type + 1}")
# ライトウィンドウがアクティブの場合
if @right_window.active
# 装備変更後のパラメータを消去
@left_window.set_new_parameters(nil, nil, nil)
end
# アイテムウィンドウがアクティブの場合
if @item_window.active
# 現在選択中のアイテムを取得
item2 = @item_window.item
# 装備を変更
last_hp = @actor.hp
last_sp = @actor.sp
if @actor.two_swords?
case @right_window.index
when 0...@actor.ts_number # 武器
@actor.set_weapon(@right_window.index, item2 == nil ? 0 : item2.id)
if $imported["EquipDetailSetting"]
@actor.update_auto_state(item1, item2, true)
end
when @actor.ts_number...@actor.equip_type.size # 防具
@actor.armor_id[@right_window.index] = (item2 == nil ? 0 : item2.id)
for i in @actor.ts_number...@actor.equip_type.size
@actor.update_auto_state(item1, item2)
end
end
else
case @right_window.index
when 0 # 武器
@actor.weapon_id = (item2 == nil ? 0 : item2.id)
if $imported["EquipDetailSetting"]
@actor.update_auto_state(item1, item2, true)
end
when 1...@actor.equip_type.size # 防具
@actor.armor_id[@right_window.index] = (item2 == nil ? 0 : item2.id)
for i in 1...@actor.equip_type.size
@actor.update_auto_state(item1, item2)
end
end
end
# 装備変更後のパラメータを取得
new_atk = @actor.atk
new_pdef = @actor.pdef
new_mdef = @actor.mdef
if $imported["EquipAlter"]
new_st = [@actor.str, @actor.dex, @actor.agi, @actor.int]
end
# 装備を戻す
if @actor.two_swords?
case @right_window.index
when 0...@actor.ts_number # 武器
@actor.set_weapon(@right_window.index, item1 == nil ? 0 : item1.id)
if $imported["EquipDetailSetting"]
@actor.update_auto_state(item2, item1, true)
end
when @actor.ts_number...@actor.equip_type.size # 防具
@actor.armor_id[@right_window.index] = (item1 == nil ? 0 : item1.id)
for i in @actor.ts_number...@actor.equip_type.size
@actor.update_auto_state(item2, item1)
end
end
else
case @right_window.index
when 0 # 武器
@actor.weapon_id = (item1 == nil ? 0 : item1.id)
if $imported["EquipDetailSetting"]
@actor.update_auto_state(item2, item1, true)
end
when 1...@actor.equip_type.size # 防具
@actor.armor_id[@right_window.index] = (item1 == nil ? 0 : item1.id)
for i in 1...@actor.equip_type.size
@actor.update_auto_state(item2, item1)
end
end
end
@actor.hp = last_hp
@actor.sp = last_sp
# レフトウィンドウに描画
if $imported["EquipAlter"]
@left_window.set_new_parameters(new_atk, new_pdef, new_mdef, new_st)
else
@left_window.set_new_parameters(new_atk, new_pdef, new_mdef)
end
end
end
#--------------------------------------------------------------------------
# ● フレーム更新 (アイテムウィンドウがアクティブの場合)
#--------------------------------------------------------------------------
unless $imported["EquipAlter"]
alias update_item_KGC_EquipExtension update_item
def update_item
# C ボタンが押された場合
if Input.trigger?(Input::C)
# アイテムウィンドウで現在選択されているデータを取得
item = @item_window.item
if KGC::EEX_USE_EP
# EP判定
if item != nil && item.ep_cost > @actor.ep
# ブザー SE を演奏
$game_system.se_play($data_system.buzzer_se)
return
end
end
# 装備 SE を演奏
$game_system.se_play($data_system.equip_se)
# 装備を変更
@actor.equip(@right_window.index, item == nil ? 0 : item.id)
# オートステートを更新
if $imported["EquipDetailSetting"]
if @actor.two_swords?
@actor.update_auto_state(nil, $data_weapons[@actor.weapon_id(@right_window.index)], true)
else
@actor.update_auto_state(nil, $data_weapons[@actor.weapon_id], true)
end
end
for i in 1...@actor.equip_type.size
@actor.update_auto_state(nil, $data_armors[@actor.armor_id[i]])
end
# 初期能力を更新
if $imported["EquipAlter"]
@left_window.last_str = @actor.str
@left_window.last_dex = @actor.dex
@left_window.last_agi = @actor.agi
@left_window.last_int = @actor.int
end
# ライトウィンドウをアクティブ化
@right_window.active = true
@item_window.active = false
@item_window.index = -1
# レフトウィンドウを初期化
@left_window.new_equip = nil if $imported["EquipAlter"]
@left_window.set_new_parameters(nil, nil, nil)
# ライトウィンドウ、アイテムウィンドウの内容を再作成
@right_window.refresh
for i in 1..(KGC::EEX_EQUIP_TYPE_EXT.size + 5)
eval("@item_window#{i}.refresh")
end
return
end

# 元の処理を実行
update_item_KGC_EquipExtension
end
end
end

#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

#==============================================================================
# ■ Scene_Battle (分割定義 1)
#==============================================================================

class Scene_Battle
#--------------------------------------------------------------------------
# ● メイン処理
#--------------------------------------------------------------------------
alias main_KGC_EquipExtension main
def main
# 攻撃回数を初期化
for actor in $game_party.actors
actor.attack_count = 0
end

# 元の処理を実行
main_KGC_EquipExtension
end
end

#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

#==============================================================================
# ■ Scene_Battle (分割定義 4)
#==============================================================================

class Scene_Battle
#--------------------------------------------------------------------------
# ● フレーム更新 (メインフェーズ ステップ 6 : リフレッシュ)
#--------------------------------------------------------------------------
alias update_phase4_step6_KGC_EquipExtension update_phase4_step6
def update_phase4_step6
# 元の処理を実行
update_phase4_step6_KGC_EquipExtension

# 二刀流・通常攻撃の場合
if @active_battler.is_a?(Game_Actor) && @active_battler.two_swords? &&
@active_battler.current_action.kind == 0 && @active_battler.current_action.basic == 0
# 攻撃回数加算
loop do
@active_battler.attack_count += 1
if @active_battler.attack_count == @active_battler.ts_number ||
@active_battler.weapon_id(@active_battler.attack_count) > 0
break
end
end
# 規定回数行動した場合
if @active_battler.attack_count == @active_battler.ts_number
# 攻撃回数を初期化
@active_battler.attack_count = 0
else
# 戦闘継続の場合
unless judge
# 攻撃対象が死んでいる場合は再設定
if @target_battlers[0].dead?
if @active_battler.restriction == 3
@target_battlers[0] = $game_party.random_target_actor
else
@target_battlers[0] = $game_troop.random_target_enemy
end
end
if $imported["ActiveCountBattle"]
@action_battlers.insert(0, @active_battler)
else
# ステップ 2 に移行
@phase4_step = 2
end
end
end
else
if @active_battler.is_a?(Game_Actor)
# 攻撃回数を初期化
@active_battler.attack_count = 0
end
end
end
end

#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

#==============================================================================
# ■ Scene_EquipExtend
#------------------------------------------------------------------------------
#  拡張装備画面の処理を行うクラスです。
#==============================================================================

class Scene_EquipExtend
#--------------------------------------------------------------------------
# ● オブジェクト初期化
# actor_index : アクターインデックス
# equip_index : 装備インデックス
#--------------------------------------------------------------------------
def initialize(actor_index = 0, equip_index = 0, call_menu = false)
@actor_index = actor_index
@equip_index = equip_index
@call_menu = call_menu
end
#--------------------------------------------------------------------------
# ● メイン処理
#--------------------------------------------------------------------------
def main
@actor = $game_party.actors[@actor_index]
@spriteset = Spriteset_Map.new if KGC::EEX_EQUIP_EX_BACK_TRANSPARENT
# ウィンドウを作成
if $imported["HelpExtension"]
@help_window = Window_HelpExtension.new
else
@help_window = Window_Help.new
end
@control_window = Window_EquipExtendControl.new
@control_window.y = 64 if $imported["HelpExtension"]
@status_window = Window_EquipExtendStatus.new(@actor)
@list_window = Window_EquipExtendList.new(@actor)
@item_window1 = Window_EquipExtendItem.new(@actor, 0)
@item_window2 = Window_EquipExtendItem.new(@actor, 1)
@item_window3 = Window_EquipExtendItem.new(@actor, 2)
@item_window4 = Window_EquipExtendItem.new(@actor, 3)
@item_window5 = Window_EquipExtendItem.new(@actor, 4)
# ヘルプウィンドウを関連付け
@control_window.help_window = @help_window
@list_window.help_window = @help_window
@item_window1.help_window = @help_window
@item_window2.help_window = @help_window
@item_window3.help_window = @help_window
@item_window4.help_window = @help_window
@item_window5.help_window = @help_window
# 拡張アイテムウィンドウを作成
if KGC::EEX_EQUIP_TYPE_EXT.size > 0
for i in 0...KGC::EEX_EQUIP_TYPE_EXT.size
eval("@item_window#{i + 6} = Window_EquipExtendItem.new(@actor, i + 5)")
eval("@item_window#{i + 6}.help_window = @help_window")
if KGC::EEX_EQUIP_EX_BACK_TRANSPARENT
eval("@item_window#{i + 6}.back_opacity = 160")
end
end
end
if KGC::EEX_EQUIP_EX_BACK_TRANSPARENT
@help_window.back_opacity = 160
@control_window.back_opacity = 160
end
# カーソル位置を設定
@list_window.index = @equip_index
@effect_type = 0
refresh
# トランジション実行
Graphics.transition
# メインループ
loop do
# ゲーム画面を更新
Graphics.update
# 入力情報を更新
Input.update
# フレーム更新
update
# 画面が切り替わったらループを中断
if $scene != self
break
end
end
# トランジション準備
Graphics.freeze
# ウィンドウを解放
@help_window.dispose
@control_window.dispose
@status_window.dispose
@list_window.dispose
@item_window1.dispose
@item_window2.dispose
@item_window3.dispose
@item_window4.dispose
@item_window5.dispose
if KGC::EEX_EQUIP_TYPE_EXT.size > 0
for i in 0...KGC::EEX_EQUIP_TYPE_EXT.size
eval("@item_window#{i + 6}.dispose if @item_window#{i + 6} != nil")
end
end
@spriteset.dispose if KGC::EEX_EQUIP_EX_BACK_TRANSPARENT
end
#--------------------------------------------------------------------------
# ● フレーム更新
#--------------------------------------------------------------------------
def update
# ウィンドウを更新
@status_window.update
@list_window.update
@item_window.update
@control_window.update
refresh
update_effect(@effect_type)
# 操作ウィンドウがアクティブの場合: update_control を呼ぶ
if @control_window.active
@effect_type = 0
update_control
return
end
# リストウィンドウがアクティブの場合: update_list を呼ぶ
if @list_window.active
@effect_type = 1
update_list
return
end
# アイテムウィンドウがアクティブの場合: update_item を呼ぶ
if @item_window.active
@effect_type = 2
update_item
return
end
end
#--------------------------------------------------------------------------
# ● フレーム更新 (エフェクト)
#--------------------------------------------------------------------------
def update_effect(type)
case type
when 1
@last_index = -1
@status_window.x = [@status_window.x + 48, 368].min
@status_window.y = [@status_window.y + 24, 288].min
@list_window.x = [@list_window.x + 8, 0].min
@item_window.x = [@item_window.x + 8, 368].min
when 2
if @last_index != @list_window.index
pos = @list_window.index - @list_window.top_row
center = (@list_window.height - 32) / 64
@status_y = pos >= center ? @list_window.y : 288
@last_index = @list_window.index
end
@status_window.x = [@status_window.x - 48, 0].max
if @status_y > @status_window.y
@status_window.y = [@status_window.y + 24, @status_y].min
elsif @status_y <@status_window.y && ステータスウィンドウを初期化 @CONTROL_WINDOW.INDEX [@STATUS_WINDOW.Y INPUT.TRIGGER?(INPUT::L) 別の装備画面に切り替え $GAME_SYSTEM.SE_PLAY($DATA_SYSTEM.DECISION_SE) (アイテムウィンドウがアクティブの場合) @LIST_WINDOW.X="[@list_window.x" @CALL_MENU ボタンが押された場合 END INPUT.TRIGGER?(INPUT::R) 最強装備 24, FOR (KGC::EEX_EQUIP_EX_INDEX...MX).EACH UNLESS @ACTOR.EQUIP(I, ELSE DEF KGC::EEX_EQUIP_EX_INDEX) リストウィンドウをアクティブ化 @CONTROL_WINDOW.VISIBLE="true" |I| マップ画面に切り替え 8, カーソル位置で分岐 ITEM.EP_COST 操作ウィンドウに切り替え 装備を外す @STATUS_WINDOW.LAST_STR="@actor.str" $GAME_SYSTEM.SE_PLAY($DATA_SYSTEM.CANCEL_SE) ● メニュー画面に切り替え KGC::EEX_EQUIP_EX_INDEX @LIST_WINDOW.INDEX="-1" レフトウィンドウを初期化 リストウィンドウに切り替え @CALL_MENU) EQUIP_STRONGEST_WEAPON(I) } (TW 装備固定の場合は次へ { (リストウィンドウがアクティブの場合) ITEM UPDATE_LIST INPUT.TRIGGER?(INPUT::C) $GAME_SYSTEM.SE_PLAY($DATA_SYSTEM.EQUIP_SE) フレーム更新 カーソル 武器 @ACTOR.TS_NUMBER 0, @STATUS_WINDOW.SET_NEW_PARAMETERS(NIL, 装備固定でない場合は解除 0) IN 1)...MX @STATUS_Y].MAX アイテムウィンドウをアクティブ化 を演奏 全解除 IF -48].MAX @CONTROL_WINDOW.ACTIVE="true" KGC::EEX_USE_EP $SCENE="Scene_EquipExtend.new(@actor_index," (操作ウィンドウがアクティブの場合) @STATUS_WINDOW.LAST_AGI="@actor.agi" @STATUS_WINDOW.LAST_INT="@actor.int" 装備 INPUT.TRIGGER?(INPUT::B) @STATUS_WINDOW.LAST_DEX="@actor.dex" REFRESH_WINDOW EP判定 防具 ブザー R REFRESH キャンセル L @ITEM_WINDOW.INDEX="-1" I I) @ITEM_WINDOW.ACTIVE="false" WHEN @ACTOR.TWO_SWORDS? C B A 0...@ACTOR.TS_NUMBER ? 次のアクターへ INPUT.TRIGGER?(INPUT::A) NEXT : INDEX="@list_window.index" 装備固定の場合 最強武器装備 決定 TW="$imported["EquipExtension"]" 最強防具装備 装備最大数を取得 2 @ACTOR_INDEX 1 0 UPDATE_ITEM 320].MAX - CASE RETURN @LIST_WINDOW.ACTIVE="true" + #-------------------------------------------------------------------------- リフレッシュ NIL, MX="5" @ITEM_WINDOW.X="[@item_window.x" %="$game_party.actors.size" NIL) # @ACTOR.EQUIP(INDEX, !="nil" $IMPORTED["EQUIPEXTENSION"] ウィンドウをリフレッシュ UPDATE_CONTROL @ACTOR.EQUIP_FIX?(I) 選択中の装備品を更新 ウィンドウリフレッシュ $GAME_SYSTEM.SE_PLAY($DATA_SYSTEM.BUZZER_SE) 装備の種類で分岐 前のアクターへ KGC::EEX_EQUIP_EX_INDEX...MX @ACTOR.EQUIP_FIX?(@LIST_WINDOW.INDEX 装備変更 @STATUS_WINDOW.NEW_EQUIP="nil" $GAME_SYSTEM.SE_PLAY($DATA_SYSTEM.CURSOR_SE) 初期能力を更新 アイテムウィンドウで現在選択されているデータを取得 SE EQUIP_STRONGEST_ARMOR(@ACTOR.EQUIP_TYPE[I],> @actor.ep
# ブザー SE を演奏
$game_system.se_play($data_system.buzzer_se)
return
end
end
# 装備 SE を演奏
$game_system.se_play($data_system.equip_se)
# 装備を変更
@actor.equip(index, item == nil ? 0 : item.id)
# オートステートを更新
if $imported["EquipDetailSetting"]
if $imported["EquipExtension"] && @actor.two_swords?
@actor.update_auto_state(nil, $data_weapons[@actor.weapon_id(index)], true)
else
@actor.update_auto_state(nil, $data_weapons[@actor.weapon_id], true)
end
end
if $imported["EquipExtension"]
for i in (@actor.two_swords? ? @actor.ts_number : 1)...@actor.equip_type.size
@actor.update_auto_state(nil, $data_armors[@actor.armor_id[i]])
end
else
for i in 1..4
@actor.update_auto_state(nil, $data_armors[eval("@actor.armor#{i}_id")])
end
end
# 初期能力を更新
@status_window.last_str = @actor.str
@status_window.last_dex = @actor.dex
@status_window.last_agi = @actor.agi
@status_window.last_int = @actor.int
# リストウィンドウをアクティブ化
@list_window.active = true
@item_window.active = false
@item_window.index = -1
# ステータスウィンドウを初期化
@status_window.new_equip = nil
@status_window.set_new_parameters(nil, nil, nil)
# ウィンドウの内容を再作成
refresh_window
return
end
end
#--------------------------------------------------------------------------
# ● リフレッシュ
#--------------------------------------------------------------------------
def refresh
# アイテムウィンドウの可視状態設定
@item_window1.visible = (@list_window.type == 0)
@item_window2.visible = (@list_window.type == 1)
@item_window3.visible = (@list_window.type == 2)
@item_window4.visible = (@list_window.type == 3)
@item_window5.visible = (@list_window.type == 4)
if KGC::EEX_EQUIP_TYPE_EXT.size > 0
for i in 0...KGC::EEX_EQUIP_TYPE_EXT.size
eval("@item_window#{i + 6}.visible = (@list_window.type == i + 5)")
end
end
# 現在装備中のアイテムを取得
item1 = @list_window.item
# 現在のアイテムウィンドウを @item_window に設定
eval("@item_window = @item_window#{@list_window.type + 1}")
# リストウィンドウがアクティブの場合
if @list_window.active
# 装備変更後のパラメータを消去
@status_window.set_new_parameters(nil, nil, nil)
end
# アイテムウィンドウがアクティブの場合
if @item_window.active
# 現在選択中のアイテムを取得
item2 = @item_window.item
index = @list_window.index + KGC::EEX_EQUIP_EX_INDEX
# 装備を変更
last_hp = @actor.hp
last_sp = @actor.sp
if @actor.two_swords?
case index
when 0...@actor.ts_number # 武器
@actor.set_weapon(index, item2 == nil ? 0 : item2.id)
if $imported["EquipDetailSetting"]
@actor.update_auto_state(item1, item2, true)
end
when @actor.ts_number...@actor.equip_type.size # 防具
@actor.armor_id[index] = (item2 == nil ? 0 : item2.id)
for i in @actor.ts_number...@actor.equip_type.size
@actor.update_auto_state(item1, item2)
end
end
else
case index
when 0 # 武器
@actor.weapon_id = (item2 == nil ? 0 : item2.id)
if $imported["EquipDetailSetting"]
@actor.update_auto_state(item1, item2, true)
end
when 1...@actor.equip_type.size # 防具
@actor.armor_id[index] = (item2 == nil ? 0 : item2.id)
for i in 1...@actor.equip_type.size
@actor.update_auto_state(item1, item2)
end
end
end
# 装備変更後のパラメータを取得
new_atk = @actor.atk
new_pdef = @actor.pdef
new_mdef = @actor.mdef
if $imported["EquipAlter"]
new_st = [@actor.str, @actor.dex, @actor.agi, @actor.int]
end
# 装備を戻す
if @actor.two_swords?
case index
when 0...@actor.ts_number # 武器
@actor.set_weapon(index, item1 == nil ? 0 : item1.id)
if $imported["EquipDetailSetting"]
@actor.update_auto_state(item2, item1, true)
end
when @actor.ts_number...@actor.equip_type.size # 防具
@actor.armor_id[index] = (item1 == nil ? 0 : item1.id)
for i in @actor.ts_number...@actor.equip_type.size
@actor.update_auto_state(item2, item1)
end
end
else
case index
when 0 # 武器
@actor.weapon_id = (item1 == nil ? 0 : item1.id)
if $imported["EquipDetailSetting"]
@actor.update_auto_state(item2, item1, true)
end
when 1...@actor.equip_type.size # 防具
@actor.armor_id[index] = (item1 == nil ? 0 : item1.id)
for i in 1...@actor.equip_type.size
@actor.update_auto_state(item2, item1)
end
end
end
@actor.hp = last_hp
@actor.sp = last_sp
# ステータスウィンドウに描画
if $imported["EquipAlter"]
@status_window.set_new_parameters(new_atk, new_pdef, new_mdef, new_st)
else
@status_window.set_new_parameters(new_atk, new_pdef, new_mdef)
end
end
end
#--------------------------------------------------------------------------
# ● ウィンドウをリフレッシュ
#--------------------------------------------------------------------------
def refresh_window
# 初期能力を更新
@status_window.last_str = @actor.str
@status_window.last_dex = @actor.dex
@status_window.last_agi = @actor.agi
@status_window.last_int = @actor.int
# リフレッシュ
@status_window.refresh
@list_window.refresh
@item_window1.refresh
@item_window2.refresh
@item_window3.refresh
@item_window4.refresh
@item_window5.refresh
if KGC::EEX_EQUIP_TYPE_EXT.size > 0
for i in 0...KGC::EEX_EQUIP_TYPE_EXT.size
eval("@item_window#{i + 6}.refresh")
end
?

List of Articles
번호 제목 글쓴이 날짜 조회 수
1487 XP로 3D 사용하던 팁있던데 어디갔죠..ㅡ.ㅡ 승사마 2005.08.26 213
1486 제가 액알 게이지를 만들었는데.... 카리스 2005.08.26 201
1485 저 게임만들기첫걸음 (초보질문요) 타타모라 2005.08.26 470
1484 포그와 화면의 움직임에 대해서..(RPGXP) 크로스바게트 2005.08.26 492
» 이거 정리를.. Crystal_Love 2005.08.25 198
1482 알피지만들기xp자동이동하는것좀 갈켜주세요 メIllusion。 2005.08.25 179
1481 지금 현재 상황입니다. file 힐데브란트 2005.08.25 171
1480 스킬에 관한... 디아나 2005.08.25 267
1479 질문입니다... 크로스바게트 2005.08.25 87
1478 레벨업하는데 이벤트 조작 정상적인거 같은데.. 막상하면... file 부기v 2005.08.25 85
1477 질문입니다... 『푸른용가리™』 2005.08.25 151
1476 xp에서 기본전투 조건분기에 관한 겁니다. 크로스바게트 2005.08.25 102
1475 xp에서 기본전투 조건분기에 관한 겁니다. FFalcon 2005.08.25 164
1474 레벨업하는데 이벤트 조작 정상적인거 같은데.. 막상하면... メIllusion。 2005.08.25 108
1473 레벨업하는데 이벤트 조작 정상적인거 같은데.. 막상하면... 크로스바게트 2005.08.25 103
1472 저..xp 많은 파티스크립트... 나루나비 2005.08.25 560
1471 제가 아이템을 하나 만들려고합니다.. 카리스 2005.08.25 182
1470 rpgxp 오프닝화면에 관한 질문입니다. file WideBodyKit 2005.08.25 758
1469 그래픽분야에 궁금점하나 있습니다 타타모라 2005.08.25 443
1468 dunky`s answer ! 덩키동크 2005.08.25 226
Board Pagination Prev 1 ... 363 364 365 366 367 368 369 370 371 372 ... 442 Next
/ 442


[개인정보취급방침] | [이용약관] | [제휴문의] | [후원창구] | [인디사이드연혁]

Copyright © 1999 - 2016 INdiSide.com/(주)씨엘쓰리디 All Rights Reserved.
인디사이드 운영자 : 천무(이지선) | kernys(김원배) | 사신지(김병국)