这个不是。。。
拓展了一下- -流动光条。。效果不错,(喂!不要看fps
代码待发- -
召唤bbb= =:
@弗雷德 @satgo1546 @@kfflX
@你最珍贵 @烟倦 @神秘影子 等等
RUBY 代码
################################################ =begin 使用说明:此脚本运用中心处放大法实现描边。 使用方法:更改父类继承需要描边的精灵 更改super(args)参数、更改(父类图像的)path以及obj_name。 基本完成,其他代码自行修改微调即可。 本脚本示范人物行走图的描边,其他描边的注意ox,oy也要实现到中央(这里通过改y坐标) zoom可自行更改,blur(模糊)源码自带,VX不需要 =end ################################################ class Sprite_MB < Sprite_Character#←RPG::Sprite def initialize(viewport,obj)#初始化对像 super(viewport,obj) obj_name=@character.character_name# ablack("Graphics/Characters/",obj_name) update end def update#更新画面 super;zoom=1.1 self.zoom_x,self.zoom_y = zoom,zoom self.z += -1 self.y += @ch*(self.zoom_y-1)/2 self.blend_type,self.opacity = 1,100 end def ablack(path,obj_name)#描边 self.bitmap = Bitmap.new(path+obj_name) self.color.set(255,255,255,255) self.bitmap.blur()rescuefalse end end 复制代码
一共20行
示范的事件描边添加下面这句:
RUBY 代码
class Spriteset_Map alias ini initialize def initialize ini for i in$game_map.events.keys.sort @character_sprites.push Sprite_MB.new(@viewport1, $game_map.events[i]) end end end 复制代码
(引用)需要的模糊blur方法;
RUBY 代码
[code]class Bitmap
def blur(times=1,during =1,blur=1)
#blur(重做模糊次数,经历帧数,分散半径)
for i in1..times
blur_r(blur)
for j in1..during
Graphics.updateif i > 1and during >1
end
end
end
def blur_r(radius = 2)#blur_r(分散半径)
radius = 1if radius