Remplacement des tilesets pendant le jeu.
Dim 13 Avr 2008 - 19:03
Voici un script de ERZENGEL permettant de remplacer un tileset par un autre avec juste une commande de script !
Le script:
Utilisation:
Vos tilesets doivent être placés dans votre dossier "Graphics/System"
Appelez un script et utilisez ces commandes:
Attention ! Le nouveau tileset remplace le précédent mais garde les mêmes propriétés de passabilité !
A vous de vous arranger pour créer des tilesets compatibles entre eux.
Le script:
- Spoiler:
- Code:
#==============================================================================
# ** [ERZVX] Tile Substitution (von ERZENGEL am 5. April 2008 um 14:51)
#------------------------------------------------------------------------------
# Ermöglicht es die verschiedenen Tilesets zu wechseln.
#==============================================================================
#===============================================================
#
# rpgmakervx.1fr1.net
#
#===============================================================
#==============================================================================
# ** Game_Map
#==============================================================================
class Game_Map
#--------------------------------------------------------------------------
# * Öffentliche Instanzvariablen
#--------------------------------------------------------------------------
attr_accessor :tile_a1, :tile_a2, :tile_a3, :tile_a4, :tile_a5,
:tile_b, :tile_c, :tile_d, :tile_e
#--------------------------------------------------------------------------
# * Objektinitialisation
#--------------------------------------------------------------------------
alias erzvx_tilesubst_init initialize
def initialize
erzvx_tilesubst_init
# Namen der Standardtilesets
@tile_a1 = 'TileA1'; @tile_a2 = 'TileA2'; @tile_a3 = 'TileA3';
@tile_a4 = 'TileA4'; @tile_a5 = 'TileA5'; @tile_b = 'TileB';
@tile_c = 'TileC'; @tile_d = 'TileD'; @tile_e = 'TileE'
end
end
#==============================================================================
# ** Spriteset_Map
#==============================================================================
class Spriteset_Map
#--------------------------------------------------------------------------
# * Objektinitialisation
#--------------------------------------------------------------------------
alias erzvx_tilesubst_init2 initialize
def initialize
erzvx_tilesubst_init2
@tile_a1 = $game_map.tile_a1; @tile_a2 = $game_map.tile_a2;
@tile_a3 = $game_map.tile_a3; @tile_a4 = $game_map.tile_a4;
@tile_a5 = $game_map.tile_a5; @tile_b = $game_map.tile_b;
@tile_c = $game_map.tile_c; @tile_d = $game_map.tile_d;
@tile_e = $game_map.tile_e
end
#--------------------------------------------------------------------------
# * Create Tilemap
#--------------------------------------------------------------------------
def create_tilemap
@tilemap = Tilemap.new(@viewport1)
# Zuweisung von Variablen statt fester Strings
@tilemap.bitmaps[0] = Cache.system($game_map.tile_a1)
@tilemap.bitmaps[1] = Cache.system($game_map.tile_a2)
@tilemap.bitmaps[2] = Cache.system($game_map.tile_a3)
@tilemap.bitmaps[3] = Cache.system($game_map.tile_a4)
@tilemap.bitmaps[4] = Cache.system($game_map.tile_a5)
@tilemap.bitmaps[5] = Cache.system($game_map.tile_b)
@tilemap.bitmaps[6] = Cache.system($game_map.tile_c)
@tilemap.bitmaps[7] = Cache.system($game_map.tile_d)
@tilemap.bitmaps[8] = Cache.system($game_map.tile_e)
@tilemap.map_data = $game_map.data
@tilemap.passages = $game_map.passages
end
#--------------------------------------------------------------------------
# * Update Tilemap
#--------------------------------------------------------------------------
alias erzvx_tilesubst_upd update_tilemap
def update_tilemap
# Abfrage, ob Tilesets gewechselt wurden
@tilemap.bitmaps[0] =
Cache.system($game_map.tile_a1) if @tile_a1 != $game_map.tile_a1
@tilemap.bitmaps[1] =
Cache.system($game_map.tile_a2) if @tile_a2 != $game_map.tile_a2
@tilemap.bitmaps[2] =
Cache.system($game_map.tile_a3) if @tile_a3 != $game_map.tile_a3
@tilemap.bitmaps[3] =
Cache.system($game_map.tile_a4) if @tile_a4 != $game_map.tile_a4
@tilemap.bitmaps[4] =
Cache.system($game_map.tile_a5) if @tile_a5 != $game_map.tile_a5
@tilemap.bitmaps[5] =
Cache.system($game_map.tile_b) if @tile_b != $game_map.tile_b
@tilemap.bitmaps[6] =
Cache.system($game_map.tile_c) if @tile_c != $game_map.tile_c
@tilemap.bitmaps[7] =
Cache.system($game_map.tile_d) if @tile_d != $game_map.tile_d
@tilemap.bitmaps[8] =
Cache.system($game_map.tile_e) if @tile_e != $game_map.tile_e
# Alter Code
erzvx_tilesubst_upd
end
end
Utilisation:
Vos tilesets doivent être placés dans votre dossier "Graphics/System"
Appelez un script et utilisez ces commandes:
- Code:
$game_map.tile_a1 = 'Nom du nouveau Tile A1'
$game_map.tile_a2 = 'Nom du nouveau Tile A2'
$game_map.tile_a3 = 'Nom du nouveau Tile A3'
$game_map.tile_a4 = 'Nom du nouveau Tile A4'
$game_map.tile_a5 = 'Nom du nouveau Tile A5'
$game_map.tile_b = 'Nom du nouveau Tile B'
$game_map.tile_c = 'Nom du nouveau Tile C'
$game_map.tile_d = 'Nom du nouveau Tile D'
$game_map.tile_e = 'Nom du nouveau Tile E'
Attention ! Le nouveau tileset remplace le précédent mais garde les mêmes propriétés de passabilité !
A vous de vous arranger pour créer des tilesets compatibles entre eux.
_________________
- JessStaffeux retraité
- Nombre de messages : 855
Age : 33
Localisation : Ma drums ou mon ordi !
Distinction : Dieu de Kipatord
Date d'inscription : 04/05/2008
Re: Remplacement des tilesets pendant le jeu.
Ven 27 Juin 2008 - 22:09
Alors je dirais que c'est chaud pour faire des Tiles compatible entre eux. Mais en tout cas, une fois le sujet maîtrisé, si on a vraiment besoin de plus de Tiles c'est vraiment super utile !
Merci beaucoup alors. ^^
Merci beaucoup alors. ^^
- GummyStaffeux retraité
- Nombre de messages : 2666
Age : 33
Localisation : Belgique
Distinction : Modérateur imprévisible
Papy Lolo' [Nabots Nimousse]
Date d'inscription : 27/01/2008
Re: Remplacement des tilesets pendant le jeu.
Ven 27 Juin 2008 - 22:13
Ce petit script ne sert plus à rien depuis que Tata Monos a sorti son fameux "Tileset Upgrader" alias mutipleset, qui permet de rajouter un nombre indéfini de tilesets.
- JessStaffeux retraité
- Nombre de messages : 855
Age : 33
Localisation : Ma drums ou mon ordi !
Distinction : Dieu de Kipatord
Date d'inscription : 04/05/2008
Re: Remplacement des tilesets pendant le jeu.
Sam 4 Oct 2008 - 11:57
Ouais t'a pas tord, je l'ai testé et son programme est génial quoi, rien à redire, merci TATA ! !
Re: Remplacement des tilesets pendant le jeu.
Sam 4 Avr 2009 - 5:53
Ca ce fait beaucoup plus facilement en event !
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum