조회 수 1656 추천 수 0 댓글 1
?

단축키

Prev이전 문서

Next다음 문서

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

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
#======================================================================
# ■ Window_ShopStatus
#------------------------------------------------------------------------------
#  숍 화면에서, 아이템의 소지수나 엑터의 장비를 표시하는 윈도우입니다.
#======================================================================
class Window_ShopStatus < Window_Base
#--------------------------------------------------------------------------
# ● 오브젝트 초기화
#--------------------------------------------------------------------------
def initialize(actor_index = 0)
super(368, 128, 272, 352)
self.contents = Bitmap.new(width - 32, height - 32)
@actor_index = actor_index
@item = nil
#@actor_index = 0
refresh
end
#-------------------
def update
super
번호돌리기
end
#-------------------
#--------------------------------------------------------------------------
# ● 리프레쉬
#--------------------------------------------------------------------------
def refresh
self.contents.clear
if @item == nil
return
end
case @item
when RPG::Item
number = $game_party.item_number(@item.id)
when RPG::Weapon
number = $game_party.weapon_number(@item.id)
when RPG::Armor
number = $game_party.armor_number(@item.id)
end
self.contents.font.color = system_color
self.contents.draw_text(4, 0, 200, 32, "소지수")
self.contents.font.color = normal_color
self.contents.draw_text(204, 0, 32, 32, number.to_s, 2)
if @item.is_a? (RPG::Item)
return
end
# 장비품 추가 정보
for i in 0...$game_party.actors.size
# 엑터를 취득
actor = $game_party.actors[@actor_index]#$game_party.actors[i]
# 장비 가능하면 통상 문자색에, 불가능하면 무효 문자색으로 설정
if actor.equippable? (@item)
self.contents.font.color = normal_color
else
self.contents.font.color = disabled_color
end
# 엑터의 이름을 묘화
@이름 = $game_party.actors[@actor_index].name
$game_party.actors[@actor_index]
self.contents.draw_text(4, 64, 120, 32, @이름)#(4, 64 + 64 * i, 120, 32, actor.name)
# 현재의 장비품을 취득
if @item.is_a? (RPG::Weapon)
item1 = $data_weapons[$game_party.actors[@actor_index].weapon_id]#$data_weapons[actor.weapon_id]
elsif @item.kind == 0
item1 = $data_armors[$game_party.actors[@actor_index].armor1_id]#$data_armors[actor.armor1_id]
elsif @item.kind == 1
item1 = $data_armors[$game_party.actors[@actor_index].armor2_id]#$data_armors[actor.armor2_id]
else
item1 = $data_armors[$game_party.actors[@actor_index].armor3_id]#$data_armors[actor.armor3_id]
end
# 장비 가능한 경우
if actor.equippable? (@item)
# 무기의 경우
if @item.is_a? (RPG::Weapon)
atk1 = item1 != nil ? item1.atk : 0
atk2 = @item != nil ? @item.atk : 0
str1 = item1 != nil ? item1.str_plus : 0
str2 = @item != nil ? @item.str_plus : 0
dex1 = item1 != nil ? item1.dex_plus : 0
dex2 = @item != nil ? @item.dex_plus : 0
agi1 = item1 != nil ? item1.agi_plus : 0
agi2 = @item != nil ? @item.agi_plus : 0
int1 = item1 != nil ? item1.int_plus : 0
int2 = @item != nil ? @item.int_plus : 0
change1 = atk2 - atk1
change4 = str2 - str1
change5 = dex2 - dex1
change6 = agi2 - agi1
change7 = int2 - int1
end
# 방어용 기구의 경우
if @item.is_a? (RPG::Armor)
pdef1 = item1 != nil ? item1.pdef : 0
mdef1 = item1 != nil ? item1.mdef : 0
pdef2 = @item != nil ? @item.pdef : 0
mdef2 = @item != nil ? @item.mdef : 0
str1 = item1 != nil ? item1.str_plus : 0
str2 = @item != nil ? @item.str_plus : 0
dex1 = item1 != nil ? item1.dex_plus : 0
dex2 = @item != nil ? @item.dex_plus : 0
agi1 = item1 != nil ? item1.agi_plus : 0
agi2 = @item != nil ? @item.agi_plus : 0
int1 = item1 != nil ? item1.int_plus : 0
int2 = @item != nil ? @item.int_plus : 0
change2 = pdef2 - pdef1 #+ mdef2 - mdef1
change3 = mdef2 - mdef1
change4 = str2 - str1
change5 = dex2 - dex1
change6 = agi2 - agi1
change7 = int2 - int1
end
# 파라미터의 변화치를 묘화
self.contents.draw_text(124, 64, 112, 32,
sprintf("공격%+d", change1), 2)
self.contents.draw_text(124, 94, 112, 32,
sprintf("방어%+d", change2), 2)
self.contents.draw_text(124, 124, 112, 32,
sprintf("마법방어%+d", change3), 2)
self.contents.draw_text(124, 154, 112, 32,
sprintf("힘%+d", change4), 2)
self.contents.draw_text(124, 184, 112, 32,
sprintf("민첩%+d", change5), 2)
self.contents.draw_text(124, 214, 112, 32,
sprintf("회피%+d", change6), 2)
self.contents.draw_text(124, 244, 112, 32,
sprintf("지능%+d", change7), 2)
end
# 아이템을 묘화
if item1 != nil
x = 4
y = 104
bitmap = RPG::Cache.icon(item1.icon_name)
opacity = self.contents.font.color == normal_color ? 255 : 30
self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24), opacity)
self.contents.draw_text(x + 28, y, 212, 32, item1.name, opacity)
end
end
end
#-----------------------------------------------
def 번호돌리기#두개를 분리한 이유는 이해가 쉽게하기 위해서
번호를더하라
번호를빼라
end
#-----------------------------------------------
def 번호를더하라
if Input.trigger? (Input::R)
@actor_index += 1
@actor_index %= $game_party.actors.size
refresh
end
end
#------------------------------------------------
def 번호를빼라
if Input.trigger? (Input::L)
@actor_index += $game_party.actors.size - 1
@actor_index %= $game_party.actors.size
refresh
end
end
#--------------------------------------------------------------------------
# ● 아이템의 설정
# item : 새로운 아이템
#--------------------------------------------------------------------------
def item=(item)
if @item != item
@item = item
refresh
end
end
end
?

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수 추천 수
148 RPGXP 스크립트 메세지에 얼굴, 이름등 다양한 기능 넣기 UMS 스크립트 1 데노제 2013.12.10 1616 0
147 RPGMV 플러그인 퀘스트 시스템 플러그인! Gameus' Quest System 1 file willmv 2015.11.07 1571 0
146 RPGMV 플러그인 [鳥小屋] 실적 플러그인(인게임 트로피 시스템) file 이니군 2017.10.31 1548 0
145 RPGXP 스크립트 캐릭터 그림자 2 청담 2013.09.24 1546 0
144 RPGVX Ace 스크립트 지속데미지 스크립트(MBS) 天下太平 2016.02.14 1516 0
143 RPGMV 플러그인 YouTube Player 6 file 러닝은빛 2016.05.08 1477 0
142 RPGXP 스크립트 그림자문자 사용하기.. 바탕색이 무슨색이건 상관없이 글자가 잘보인다!!! 창조도시 2007.11.06 1475 1
141 RPGVX Ace 스크립트 LuD Script Package 1 file LuD 2017.08.16 1468 0
140 RPGXP 스크립트 기차 파티 스크립트 2 창조도시 2008.07.24 1465 2
139 RPGXP 스크립트 선택 메뉴를 가운데 정렬 해보자. 1 file 창조도시 2007.12.02 1449 2
138 RPGXP 스크립트 Font Setup file 운님 2016.07.22 1447 0
137 RPGXP 스크립트 액알 스크립트 4 커비♥ 2014.11.23 1440 1
136 RPGXP 스크립트 맵 이름 표시 스크립트 5 청담 2013.09.20 1438 0
135 RPGXP 스크립트 c[n] 명령어 줄때의 색상 결정. 창조도시 2008.02.14 1438 1
134 RPGMV 플러그인 텍스트 입력창(Keyboard Input Dialog) 1 file 러닝은빛 2016.08.09 1421 1
133 RPGXP 스크립트 몬스터 도감 1 청담 2013.09.24 1421 0
132 RPGXP 스크립트 공포게임에 장비착용메뉴 3  운 2014.08.24 1420 0
131 RPGXP 스크립트 대화 글씨가 한글자씩 나오는 스크립트 1 청담 2013.09.24 1415 0
130 RPGMV 플러그인 [RPG MV] 퀘스트 마커 지속 표시 플러그인 file lklslel 2017.04.09 1411 0
129 RPGMV 플러그인 RMMV 옵션 창에 메시지 속도 및 글자 크기 변경 기능 추가 file 러닝은빛 2018.07.15 1403 0
Board Pagination Prev 1 ... 3 4 5 6 7 8 9 10 11 12 ... 15 Next
/ 15






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

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