VX 스크립트

메뉴
2009.02.20 11:44

CogWheelBars 시스템.

조회 수 4362 추천 수 1 댓글 13
Atachment
첨부 '1'

CogWheelBars.jpg
이런식으로 변경됩니다.
체력이 부족하면 빨간색 중간은 노르스름한. 풀이면 초록색.이렇게 나오죠.. 자주 쓰이는 시스템.
물론 저는 이거 안써요.^^;;  출처 : House Slasher


# ** COGWHEEL Style Menu Bars
#------------------------------------------------------------------------------
# by Syvkal
# Version 1.9
# 04-26-08
#==============================================================================
#
# USAGE:
#
# This system is Plug 'N' Play
# It has been made so it will work as soon as you put it in the Script Editor
#
# However, it has also been made so you can easily make your own bars
# To draw a bar use:
# draw_custom_gauge
#
# Followed by:
# (value, max, x, y, width, height, color1, color2, use_windowskin)
#
# Value - is the thing your bar is made to draw
# Max - is the max value of what your bar is made to draw
# x, y - are the x and y values
# width, height - are the width and height values
# use_windowskin - if set to true it will take the colours from the windowskin
# it is set to false if not specified
# Color1, Color2 - these are the two colours to be used for the gradient
# Specify with Color.new(r,g,b,a) to set a colour
# If use_windowskin is set, simply put the number of the
# colour you want to use from the windowskin
#
#==============================================================================

#=================================================#
# ** C O N F I G U R A T I O N ** #
#=================================================#

module COG
# Use built in RTP colors taken from the current system skin
USE_WINDOWSKIN = true
# Parameter Max Value
P_MAX = 500
# Gauge Border Colors
COLOR1 = Color.new(0, 0, 0, 192) # Outer Border
COLOR2 = Color.new(255, 255, 192, 192) # Inner Border
# Gauge Empty filler
COLOR3 = Color.new(0, 0, 0, 12) # Half of Inner Shading
COLOR4 = Color.new(64, 0, 0, 92) # Half of Inner Shading
end

#=================================================#

class Window_Base < Window
alias draw_actor_hp_gauge_original draw_actor_hp_gauge
def draw_actor_hp_gauge(actor, x, y, width = 120)
if actor.maxhp != 0
rate = actor.hp.to_f / actor.maxhp
else
rate = 0
end
if actor.maxhp != 0
gw = width * actor.hp / actor.maxhp
else
gw = 0
end
gc1 = Color.new(80 - 24 * rate, 80 * rate, 14 * rate, 192)
gc2 = Color.new(240 - 72 * rate, 240 * rate, 62 * rate, 192)
self.contents.fill_rect(x-2, y + WLH - 10, width+4, 10, COG::COLOR1)
self.contents.fill_rect(x-1, y + WLH - 9, width+2, 8, COG::COLOR2)
self.contents.gradient_fill_rect(x, y + WLH - 8, width, 6, COG::COLOR3, COG::COLOR4)
self.contents.gradient_fill_rect(x, y + WLH - 8, gw, 6, gc1, gc2)
end

alias draw_actor_mp_gauge_original draw_actor_mp_gauge
def draw_actor_mp_gauge(actor, x, y, width = 120)
if actor.maxmp != 0
rate = actor.mp.to_f / [actor.maxmp, 1].max
else
rate = 1
end
if actor.maxmp != 0
gw = width * actor.mp / [actor.maxmp, 1].max
else
gw = width
end
gc1 = Color.new(14 * rate, 80 - 24 * rate, 80 * rate, 192)
gc2 = Color.new(62 * rate, 240 - 72 * rate, 240 * rate, 192)
self.contents.fill_rect(x-2, y + WLH - 10, width+4, 10, COG::COLOR1)
self.contents.fill_rect(x-1, y + WLH - 9, width+2, 8, COG::COLOR2)
self.contents.gradient_fill_rect(x, y + WLH - 8, width, 6, COG::COLOR3, COG::COLOR4)
self.contents.gradient_fill_rect(x, y + WLH - 8, gw, 6, gc1, gc2)
end

alias draw_actor_parameter_original draw_actor_parameter
def draw_actor_parameter(actor, x, y, type)
draw_actor_parameter_gauge(actor, x, y, type)
draw_actor_parameter_original(actor, x, y, type)
end

def draw_actor_parameter_gauge(actor, x, y, type)
case type
when 0
e1 = actor.atk
COG::USE_WINDOWSKIN ? gc1 = text_color(20) : gc1 = Color.new(253, 53, 56, 192)
COG::USE_WINDOWSKIN ? gc2 = text_color(2) : gc2 = Color.new(242, 74, 6, 192)
when 1
e1 = actor.def
COG::USE_WINDOWSKIN ? gc1 = text_color(21) : gc1 = Color.new(238, 254, 124, 192)
COG::USE_WINDOWSKIN ? gc2 = text_color(17) : gc2 = Color.new(228, 253, 48, 192)
when 2
e1 = actor.spi
COG::USE_WINDOWSKIN ? gc1 = text_color(31) : gc1 = Color.new(119, 203, 254, 192)
COG::USE_WINDOWSKIN ? gc2 = text_color(30) : gc2 = Color.new(8, 160, 253, 192)
when 3
e1 = actor.agi
COG::USE_WINDOWSKIN ? gc1 = text_color(4) : gc1 = Color.new(124, 254, 155, 192)
COG::USE_WINDOWSKIN ? gc2 = text_color(12) : gc2 = Color.new(33, 253, 86, 192)
end
# Calculate Bar Gradiation
e2 = COG::P_MAX
if e1.to_f >= e2.to_f
rate = 1
elsif e1.to_f != 0
rate = e1.to_f / e2.to_f
else
rate = 1
end
# Adjust Bar Color based on Gradiation & Parameter Type
for i in 0..3
r = gc2.red * rate
g = (gc2.green - 72) * rate
b = gc2.blue * rate
a = gc2.alpha
end
# Calculate Bar Width
width = 168
if e1.to_f >= e2.to_f
par = width
elsif e1.to_f != 0
par = width * e1.to_f / e2.to_f
else
par = width
end
self.contents.fill_rect(x-2, y + WLH - 10, width+4, 10, COG::COLOR1)
self.contents.fill_rect(x-1, y + WLH - 9, width+2, 8, COG::COLOR2)
self.contents.gradient_fill_rect(x, y + WLH - 8, width, 6, COG::COLOR3, COG::COLOR4)
self.contents.gradient_fill_rect(x, y + WLH - 8, par, 6, Color.new(r, g, b, a), gc1)
end


def draw_custom_gauge(value, max, x, y, width, height, color1, color2, use_windowskin = false)
if value.to_f >= max.to_f
rate = 1
elsif value.to_f != 0
rate = value.to_f / max.to_f
else
rate = 1
end
use_windowskin ? gc1 = text_color(color1) : gc1 = color1
use_windowskin ? gc2 = text_color(color2) : gc2 = color2
r = gc2.red * rate
g = (gc2.green - 72) * rate
b = gc2.blue * rate
a = gc2.alpha
if value.to_f >= max.to_f
custom = width
elsif value.to_f != 0
custom = width * value.to_f / max.to_f
else
custom = width
end
self.contents.fill_rect(x-2, y + WLH - 10, width+4, height+4, COG::COLOR1)
self.contents.fill_rect(x-1, y + WLH - 9, width+2, height+2, COG::COLOR2)
self.contents.gradient_fill_rect(x, y + WLH - 8, width, height, COG::COLOR3, COG::COLOR4)
self.contents.gradient_fill_rect(x, y + WLH - 8, custom, height, gc1, Color.new(r, g, b, a))
end
end


class Window_SkillStatus < Window_Base
alias refresh_original refresh
def refresh
draw_actor_name(@actor, 4, 0)
draw_actor_level(@actor, 140, 0)
draw_actor_hp(@actor, 238, 0)
draw_actor_mp(@actor, 390, 0)
end
end

Comment '13'
  • ?
    나렌시아 2009.02.20 11:46
    스크립트를 안쓰심에도 불구하고 많은 스크립트를 구하시네요

    혹시 스크립트 수집가신가 ≡ㅅ≡ .. ??
  • ?
    할렘 2009.02.20 11:54
    뭐랄까...스크립터로써..아 이사람은 이렇게 짰구나..하면서 보는재미도 있고..흥미있는 스크립트를 모으기도 하는데...
    스크립트 수집가인가...흠...생각해보겠습니다.저의 자아에대해서..ㄷㄷ;;
  • ?
    닭장군 2009.04.07 17:57
    이거 괜찮네요 ㅎㅎ.
  • ?
    초록불빛 2009.05.24 18:29

    오옷 감사합니당~!

  • ?
    줄리안 2009.06.26 20:49

    파일이 없다고 나오는데 그 파일은 어디에...?

  • ?
    mymy 2009.11.14 19:32

    와우 굿인데요?ㄳㄳ

  • ?
    이렐 2010.02.20 22:54

    잘쓰겠습니다~~

  • profile
    Ravenwild 2010.07.08 13:53

    감사합니다!

  • ?
    ijsh515 2010.07.09 22:45

    와웅 감사요 ㅎㅎ

  • ?
    따메츠나 2010.07.25 18:00

    우옷 간지!! 잘쓰겠씁니다

  • ?
    따메츠나 2010.07.25 18:09

    아포인트 ㅜㅡ

  • ?
    봉시기 2010.07.26 05:13

    잘쓸께여

  • ?
    블랙로즈 2013.06.12 21:40
    잘 썼습니다. 좋아요. 아주 좋아요.

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 3 습작 2012.12.24 5398
24 메뉴 스테이터스 화면 개조 - 커스텀 버전 13 file 훈덕 2009.06.15 4932
23 메뉴 시스템 옵션 스크립트의 사용방법 6 아방스 2009.06.04 2832
22 메뉴 몬스터도감 Tankentai사이드뷰에 작동하도록 수정 13 카르와푸딩의아틀리에 2009.05.22 3775
21 메뉴 [자작]명성치 사용 시스템(메뉴 출력) 16 Rainsy 2009.03.22 4360
» 메뉴 CogWheelBars 시스템. 13 file 할렘 2009.02.20 4362
19 메뉴 모그메뉴 스킨입니다. 1 file 아부리 2009.02.16 6866
18 메뉴 (모그메뉴 풀세트팩 SEL Style.) 유니크급 자료 147 file 할렘 2009.02.07 9558
17 메뉴 GuiRPG menu시스템 13 file 할렘 2009.02.07 4849
16 메뉴 파이날 판타지 IX 메뉴. 12 file 할렘 2009.02.06 6286
15 메뉴 스테이터스 창을 멋있게 쿨하게~!전신을 보여주자. 24 file 할렘 2009.02.06 6236
14 메뉴 캐릭터설명을 심플하게! 스크립트. 13 file 할렘 2009.02.03 4848
13 메뉴 레벨업 시 자세한 정보 나오는 스크립트 23 아방스 2009.01.20 3895
12 메뉴 커서 모양 바꾸는 스크립트 16 아방스 2009.01.20 3958
11 메뉴 Adding Extra Menu in lafia Script 2 Man... 2008.10.29 1574
10 메뉴 김태히님이 개조한 모그메뉴 스텟화면 43 file RPGbooster 2008.10.08 6360
9 메뉴 지난 메뉴 스크립트에 이은 스테이터스 스크립트! 5 file 독사 2008.06.29 3545
8 메뉴 헬프 윈도우 중앙표시 스크립트 11 file 양념통닼 2008.06.10 3348
7 메뉴 창 크기 변경 스크립트 6 file Incubus 2008.05.25 5945
6 메뉴 일본에서 만든 멋있는메뉴변경 스크립트 (한글 VX에서 쓰시면 자동으로 바뀜) 45 유칸지 2008.04.09 8861
5 메뉴 메뉴 배경화면 바꾸는 스크립트 9 독도2005 2008.03.23 4520
Board Pagination Prev 1 2 3 Next
/ 3