[VXAce] Une Couche Haut?
Mer 30 Mai 2012 - 22:40
Bonsoir voilà j'ai besoin qu'une ou plusieur personne fasse un script d'une couche haut comme VX voici le script de VX!
- Spoiler:
- class Scene_Map < Scene_Base
alias start_2 start
alias update_2 update
attr_reader :map_layer_spritesets
#--------------------------------------------------------------------------
# * Start processing
#--------------------------------------------------------------------------
def start
start_2
setup_map_layers
end
def update_transfer_player
return unless $game_player.transfer?
fade = (Graphics.brightness > 0)
fadeout(30) if fade
@spriteset.dispose # Dispose of sprite set
for i in 0...@map_layer_spritesets.size
@map_layer_spritesets.dispose
end
$game_player.perform_transfer # Execute player transfer
$game_map.autoplay # Automatically switch BGM and BGS
$game_map.update
Graphics.wait(15)
@spriteset = Spriteset_Map.new # Recreate sprite set
setup_map_layers
fadein(30) if fade
Input.update
end
def setup_map_layers
maps = load_data("Data/MapInfos.rvdata")
game_map_name = maps[$game_map.map_id].name
@map_layers = []
@map_layer_spritesets = []
map_names = []
layer_map_names = []
layer_index = []
c = maps.keys
d = c.max
for i in 1..d
unless maps == nil
a = nil
map_names.push(maps.name)
a = maps.name =~ /(l|L)\d+/
layer_map_names.push(maps.name) if a != nil
layer_index.push(maps.index(maps)) if a != nil
end
end
for string in layer_map_names
string.chop! until string == game_map_name or string == ""# nil
end
if layer_map_names.include?(game_map_name)
for i in 0...layer_map_names.size
if layer_map_names != ""
map = Game_Map.new
map.setup(layer_index)
@map_layer_spritesets.push(Spriteset_Map_2.new(map))
@map_layers.push(map)
end
end
end
end
def update
update_2
for i in 0...@map_layer_spritesets.size
@map_layers.update
@map_layer_spritesets.update
end
end
end
class Spriteset_Map_2 < Spriteset_Map
#--------------------------------------------------------------------------
# * Object Initialization
#--------------------------------------------------------------------------
def initialize(layer)
@layer = layer
create_viewports
create_tilemap
update
end
def update
update_tilemap
update_viewports
end
def dispose
@tilemap.dispose
end
#--------------------------------------------------------------------------
# * Create Tilemap
#--------------------------------------------------------------------------
def create_tilemap(a1 = nil, a2 = nil, a3 = nil, a4 = nil, a5 = nil, b = nil, c = nil, d = nil, e = nil)
@tilemap = Tilemap.new(@viewport1)
@tilemap.bitmaps[0] = (a1 == nil ? Cache.system("TileA1") : a1)
@tilemap.bitmaps[1] = (a2 == nil ? Cache.system("TileA2") : a2)
@tilemap.bitmaps[2] = (a3 == nil ? Cache.system("TileA3") : a3)
@tilemap.bitmaps[3] = (a4 == nil ? Cache.system("TileA4") : a4)
@tilemap.bitmaps[4] = (a5 == nil ? Cache.system("TileA5") : a5)
@tilemap.bitmaps[5] = (b == nil ? Cache.system("TileB") : b)
@tilemap.bitmaps[6] = (c == nil ? Cache.system("TileC") : c)
@tilemap.bitmaps[7] = (d == nil ? Cache.system("TileD") : d)
@tilemap.bitmaps[8] = (e == nil ? Cache.system("TileE") : e)
@tilemap.map_data = @layer.data
@tilemap.passages = @layer.passages
end
#--------------------------------------------------------------------------
# * Update Tilemap
#--------------------------------------------------------------------------
# def update_tilemap
# @tilemap.ox = @layer.display_x / 8
# @tilemap.oy = @layer.display_y / 8
# @tilemap.update
# end
#--------------------------------------------------------------------------
# * Update Viewport
#--------------------------------------------------------------------------
def update_viewports
@viewport1.tone = @layer.screen.tone
@viewport1.ox = @layer.screen.shake
@viewport2.color = @layer.screen.flash_color
@viewport3.color.set(0, 0, 0, 255 - @layer.screen.brightness)
@viewport1.update
@viewport2.update
@viewport3.update
end
end
Re: [VXAce] Une Couche Haut?
Mer 30 Mai 2012 - 22:51
Se script t'aidera : Overlay mapping
Une démo est compris dans le lien.
Se script te permettra de gérer plusieurs "couches" dont celle tu cherches mais il faudra que tu utilies un éditeur d'images.
Une démo est compris dans le lien.
Se script te permettra de gérer plusieurs "couches" dont celle tu cherches mais il faudra que tu utilies un éditeur d'images.
Re: [VXAce] Une Couche Haut?
Jeu 31 Mai 2012 - 18:56
il faut que je joue avec les images au non il a pas de script genre on fait la 1er: Test puis la couche haute de la map TestL1! nn on peut pas faire un script comme vx?
Ps: UP! si vous plait merci car je veux exactement le script vx car je veu pas jouer avec des images car c'est long merci a vous!^^
Ps: UP! si vous plait merci car je veux exactement le script vx car je veu pas jouer avec des images car c'est long merci a vous!^^
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|