2005.08.25 22:26

이거 정리를..

조회 수 199 추천 수 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
번호 제목 글쓴이 날짜 조회 수
8827 저번 글들과, 이전 글에 대해 묻고 싶습니다. idtptkd 2005.05.17 1314
8826 이전 작가들은 어떻게 되는 건가요? 아렉스 2005.05.17 1091
8825 이전 작가들은 어떻게 되는 건가요? 영원전설 2005.05.18 1152
8824 프루티룹스 질문... 신승일 2005.05.18 1472
8823 창작글만 있는데 감상문 같은 건 쓸수 없나요? 다르칸 2005.05.18 994
8822 창작글만 있는데 감상문 같은 건 쓸수 없나요? 아렉스 2005.05.18 1031
8821 창작글만 있는데 감상문 같은 건 쓸수 없나요? 천무 2005.05.18 820
8820 창작글만 있는데 감상문 같은 건 쓸수 없나요? 『水』신교 2005.05.18 869
8819 rpg만들기 2000에서 신규프로젝트가 만들어지지 않아요;; 밀크마스터 2005.05.18 1166
8818 rpg만들기 2000에서 신규프로젝트가 만들어지지 않아요;; 나랑놀자 2005.05.18 1111
8817 rpg만들기 2000에서 신규프로젝트가 만들어지지 않아요;; 셉티찡 2005.05.18 1170
8816 릴레이 소설 말인데요... 외로운갈매기 2005.05.18 675
8815 이전의 창작글 게시판의 글은 어케되나요? 천무 2005.05.18 471
8814 이전의 창작글 게시판의 글은 어케되나요? Sir_아사히 2005.05.19 563
8813 윈도우 98에서는 rpgxp안돌아가요 ? 바람을 가르는 자 2005.05.19 767
8812 윈도우 98에서는 rpgxp안돌아가요 ? 미칼렌 2005.05.19 927
8811 패치 요청... Norid 2005.05.19 454
8810 rpg만들기 2000에서 신규프로젝트가 만들어지지 않아요;; black-angel 2005.05.19 1147
8809 [RPG XP] 게임 테스트 오류. 살려주세요// Norid 2005.05.19 939
8808 릴레이소설 사래신장전 완결했는데요.. 적랑 2005.05.20 648
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 442 Next
/ 442


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

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