Project1
标题:
关于雾的做法
[打印本页]
作者:
kil8594326
时间:
2013-7-28 00:21
标题:
关于雾的做法
请问在XP里有更改地图设置来做雾的效果,VX里怎么找不到啊?难道没有这个效果了么?
还有个问题怎么让雾动起来啊?雾一动不动的无法到达效果……
作者:
八月桑
时间:
2013-7-28 08:39
#=========================================================================
#VX的雾效果,可以使VX拥有和XP一样的雾效果
#原脚本由Hevendor所写,改写By 红灯,转载使用时请保留此信息,谢谢。
#请在脚本中设置。具体说明如下。
#=========================================================================
module Fog_Set
#====所有设置请在下面进行===============================================
#雾的名称,可以添加雾的图片,图片请放到“Pictures”文件夹下面。
#每个不同的雾图片名称请对应一个相应的数字
#格式为:数字 => "雾图片的名称"
Fog_Names = {1 => "FOG01.png",2 => "010-Water04.png"}
#想要开启雾效果的地图ID和所对应想要应用的雾图形
#格式为:地图ID => 上面雾名称对应的数字
Fog_Maps = {001 =>1,002 =>2}
#雾的透明度设置
Fog_Opacity = {1 => 90,2 =>40}
#雾的合成方式设置,0为正常,1为加法,2为减法
Fog_Blend = {1 =>0,2 =>0}
#雾的x,y向滚动速度
Fog_Ox_Oy = {1 => [1,1],2 => [2,1]}
#雾的色调合成,数组内依次为 红,绿,蓝,数值范围0~255
Fog_Tone = {1 =>[0,0,0],2 =>[0,0,200]}
end
#—======================================================================
class Game_Map
attr_accessor :map_id
attr_accessor :fog_ox
attr_accessor :fog_oy
alias fog_map_up update
alias fog_map_in initialize
def initialize
@fog_ox = 0
@fog_oy = 0
@map_id = map_id
fog_map_in
end
def fog_update
if Fog_Set::Fog_Maps.include?($game_map.map_id)
@fog_ox -=Fog_Set::Fog_Ox_Oy[Fog_Set::Fog_Maps[@map_id]][0]
@fog_oy -=Fog_Set::Fog_Ox_Oy[Fog_Set::Fog_Maps[@map_id]][1]
end
end
def update
fog_map_up
fog_update
end
end
class Spriteset_Map
alias fog_in initialize
alias fog_view create_viewports
alias fog_dispose dispose
alias fog_viewup update
def initialize
fog_in
create_fog
end
def creat_viewports
@viewport = Viewport.new(0, 0, 544,416)
@viewport.z = 8
fog_view
end
def create_fog
[url=home.php?mod=space&uid=14217]@fog[/url] = Plane.new(@viewport)
if Fog_Set::Fog_Maps.include?($game_map.map_id)
fog_no = Fog_Set::Fog_Maps[$game_map.map_id]
fog_up
@fog.bitmap = Cache.picture(Fog_Set::Fog_Names[fog_no])
@fog.opacity = Fog_Set::Fog_Opacity[fog_no]
@fog.blend_type = Fog_Set::Fog_Blend[fog_no]
@fog.tone.red = Fog_Set::Fog_Tone[fog_no][0]
@fog.tone.green = Fog_Set::Fog_Tone[fog_no][1]
@fog.tone.blue = Fog_Set::Fog_Tone[fog_no][2]
end
end
def fog_up
if @fog !=nil
@fog.ox = $game_map.fog_ox
@fog.oy = $game_map.fog_oy
end
end
def update
fog_viewup
fog_up
end
def dispose_fog
@fog.dispose
end
def dispose
dispose_fog
fog_dispose
end
end
复制代码
原帖地址(有范例)
VX也拥有XP的雾效果!
作者:
876加几
时间:
2013-7-28 09:14
本帖最后由 protosssonny 于 2013-7-28 10:32 编辑
编辑部分:
@fog
试试看这个,如果不行请你回帖诉说。
@fog = Plane.new
@fog.bitmap = Bitmap.new("Graphics/Pictures/XXX.xxx")
# 这里的XXX代表文件名,这里的xxx代表格式
@fog.x = 0
@fog.y = 0
复制代码
如果有移动用循环+脚本
脚本内容是:
@fog.ox = @fog.ox + X
@fog.oy = @fog.oy + X
# 这里的X代表数字
复制代码
场所移动后:
@fog.bitmap.dispose
@fog.dispose
复制代码
作者:
kil8594326
时间:
2013-7-28 20:44
876加几 发表于 2013-7-28 09:14
编辑部分:@fog
试试看这个,如果不行请你回帖诉说。如果有移动用循环+脚本
脚本苦手啊……
谢谢回答,我去研究研究看……
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1