never mind everybody i made it.
#--------------------------------------------------------------------------
# * Draws Shaded Text
#--------------------------------------------------------------------------
def shade_text(x,y,sx,sy,text,align=0)
skip = 2 #decrease to smoothen the shade transition
src_bitmap = Bitmap.new(sx,sy)
src_bitmap.font = self.contents.font
h = (sy/skip)
cs = 40
for i in 0..h
src_bitmap.font.color.red += src_bitmap.font.color.red==0 ? 0 : i<=(h/2) ? cs : -cs
src_bitmap.font.color.green += src_bitmap.font.color.green==0 ? 0 : i<=(h/2) ? cs : -cs
src_bitmap.font.color.blue += src_bitmap.font.color.blue==0 ? 0 : i<=(h/2) ? cs : -cs
src_bitmap.draw_text(0, 0, sx, sy, text, align)
src_rect = Rect.new(0,i*skip,sx,skip)
self.contents.blt(x, y+i*skip, src_bitmap, src_rect)
src_bitmap.clear
end
end