Age : 26 Avertissements : 3Inscrit le : 03/04/2010 Messages : 512
Sujet: [VX] Triple fonds de combat Ven 17 Juin 2011 - 12:52
Script: Deux fonds de combat Créateur: YEZ Utilité: Ce script permet d'avoir trois fonds de combat. Je ne sais pas s'il a été posté ou non. Quoi, pas de bluff ? Ok. Prenez une première couche de combat qui sera utilisée en arrière plan :
Troisième plan :
Spoiler:
Appelez-la Galaxy. Oui bon évidemment si l'image ne vous satisfait pas, prenez une autre, mais gardez le même nom.
Deuxième plan :
Spoiler:
Celui-ci, nommez-le cloudswhite.
Premier plan :
Spoiler:
Puis notre ami grassland ^^
Tout ceci est à placer dans Graphics/Parallaxes.
Superbe rendu :
En sachant que le fond avec les nuages bouge Customisez comme vous le voulez. Le script, à appeler : YEZ Variable Backdrops :
Code:
#=============================================================================== # # Yanfly Engine Zealous - Variable Backdrops # Last Date Updated: 2010.02.07 # Level: Normal # # One of the greatest things to come out of RPG Maker 2003 that didn't appear in # any of its successors was moving backdrops during battle. There was a front # layer and then a back layer and it broke the monotony of a static background. # This script lets you recreate all of that with ease and control it with ease. # Just change a variable value inside the event editor and you'll receive the # listed backdrop found in the hash within this script. # # Also now, when a backdrop variable changes during battle, its graphic will # update and show the newer backdrop. This allows for interesting battles where # scenes are constantly shifting and whatnot. # #=============================================================================== # Updates # ----------------------------------------------------------------------------- # o 2010.02.07 - Started Script and Finished. #=============================================================================== # Instructions # ----------------------------------------------------------------------------- # To install this script, open up your script editor and copy/paste this script # to an open slot below ▼ Materials but above ▼ Main. Remember to save. # # - Download Backdrops from Pockethouse.com and unzip it to your Graphics folder # into your "Parallaxes" folder. # - Bind BATTLE_SHADOW_SWITCH to a switch. By default, it's 60. # - Bind the following to variables # VARIABLE_MIST_OPACITY - Default 56 - Adjusts the mist opacity. # VARIABLE_MIST_IMAGE - Default 57 - Sets the fog that covers enemies. # VARIABLE_FRONT_IMAGE - Default 58 - Front background layer. # VARIABLE_MIDDLE_IMAGE - Default 59 - Middle background layer. # VARIABLE_BACK_IMAGE - Default 60 - Back background layer. # # Change the variables in your event editor to reflect the backdrop you want to # see in battle. Toggle the BATTLE_SHADOW_SWITCH switch if you want to hide/show # the floor shadow inbattle. Adjust the hashes down below if you want to add # more backdrops to your game. # #=============================================================================== # Compatibility # ----------------------------------------------------------------------------- # - Works With: Nearly everything that doesn't affect backdrops. # ----------------------------------------------------------------------------- # Note: This script may not work with former Yanfly Engine ReDux scripts. # Use Yanfly Engine Zealous scripts to work with this if available. #===============================================================================
$imported = {} if $imported == nil $imported["VariableBackdrops"] = true
module YEZ module BACKDROP
# This switch enables and disables the ground battle shadow behind enemies. # If the switch is on, the battle shadow appears. If the switch is off, # it will disappear. BATTLE_SHADOW_SWITCH = 60
# These variables determine the individual backdrops adjusted for their # individual layers. There's four images that can be shown at once. VARIABLE_MIST_OPACITY = 56 VARIABLE_MIST_IMAGE = 57 VARIABLE_FRONT_IMAGE = 58 VARIABLE_MIDDLE_IMAGE = 59 VARIABLE_BACK_IMAGE = 60
# This will let you set how you would like your backdrops to appear when # you start a new game. In the order of Battle Shadow, Mist Opacity, Mist # Layer, Front Layer, Middle Layer, and Back Layer. STARTING_BACKDROPS = [false, 0, 0, 101, 200, 310]
# This will adjust how you would like the backdrops to appear when battle # testing. Same ordering as above. BTEST_BACKDROPS = [false, 0, 0, 101, 200, 304]
end # BACKDROP end # YEZ
#=============================================================================== # Editting anything past this point may potentially result in causing computer # damage, incontinence, explosion of user's head, coma, death, and/or halitosis. # Therefore, edit at your own risk. #===============================================================================
#-------------------------------------------------------------------------- # alias method: command_121 switches #-------------------------------------------------------------------------- alias command_121_vb command_121 unless $@ def command_121 result = command_121_vb if $game_temp.in_battle and $scene.is_a?(Scene_Battle) if @params[0] == YEZ::BACKDROP::BATTLE_SHADOW_SWITCH $scene.spriteset.create_battlefloor end end return result end
#-------------------------------------------------------------------------- # alias method: command_122 variables #-------------------------------------------------------------------------- alias command_122_vb command_122 unless $@ def command_122 result = command_122_vb if $game_temp.in_battle and $scene.is_a?(Scene_Battle) n = $game_variables[@params[0]] case @params[0] when YEZ::BACKDROP::VARIABLE_MIST_IMAGE $scene.spriteset.create_backdrop(n, nil, nil, nil) when YEZ::BACKDROP::VARIABLE_FRONT_IMAGE $scene.spriteset.create_backdrop(nil, n, nil, nil) when YEZ::BACKDROP::VARIABLE_MIDDLE_IMAGE $scene.spriteset.create_backdrop(nil, nil, n, nil) when YEZ::BACKDROP::VARIABLE_BACK_IMAGE $scene.spriteset.create_backdrop(nil, nil, nil, n) end end return result end
#-------------------------------------------------------------------------- # alias method: create_battleback #-------------------------------------------------------------------------- alias create_battleback_vb create_battleback unless $@ def create_battleback new_backdrop = false v0 = $game_variables[YEZ::BACKDROP::VARIABLE_MIST_IMAGE] v1 = $game_variables[YEZ::BACKDROP::VARIABLE_FRONT_IMAGE] v2 = $game_variables[YEZ::BACKDROP::VARIABLE_MIDDLE_IMAGE] v3 = $game_variables[YEZ::BACKDROP::VARIABLE_BACK_IMAGE] new_backdrop = true if YEZ::BACKDROP::BACKDROP_HASH.include?(v1) new_backdrop = true if YEZ::BACKDROP::BACKDROP_HASH.include?(v2) new_backdrop = true if YEZ::BACKDROP::BACKDROP_HASH.include?(v3) v0 = 0 unless YEZ::BACKDROP::BACKDROP_HASH.include?(v0) v1 = 0 unless YEZ::BACKDROP::BACKDROP_HASH.include?(v1) v2 = 0 unless YEZ::BACKDROP::BACKDROP_HASH.include?(v2) v3 = 0 unless YEZ::BACKDROP::BACKDROP_HASH.include?(v3) if new_backdrop create_backdrop(v0, v1, v2, v3) else create_battleback_vb end end
#-------------------------------------------------------------------------- # alias method: create_battlefloor #-------------------------------------------------------------------------- alias create_battlefloor_vb create_battlefloor unless $@ def create_battlefloor @battlefloor_sprite.dispose if @battlefloor_sprite != nil if $game_switches[YEZ::BACKDROP::BATTLE_SHADOW_SWITCH] create_battlefloor_vb else @battlefloor_sprite = Sprite.new(@viewport1) end end
#-------------------------------------------------------------------------- # new method: create_backdrop #-------------------------------------------------------------------------- def create_backdrop(v0 = nil, v1 = nil, v2 = nil, v3 = nil) @backdrop_data = {} if @backdrop_data == nil @backdrop_counter = {} if @backdrop_counter == nil if v3 != nil and v3 != 0 array = YEZ::BACKDROP::BACKDROP_HASH[v3] @backdrop_counter[:b3_x] = 0 @backdrop_counter[:b3_y] = 0 @backdrop_data[:b3_wx] = array[0] @backdrop_data[:b3_wy] = array[1] @backdrop_data[:b3_ox] = array[2] @backdrop_data[:b3_oy] = array[2] @battleback3_sprite.dispose if @battleback3_sprite != nil @battleback3_sprite = Plane.new @battleback3_sprite.bitmap = Cache.parallax(array[4]) @battleback3_sprite.z = -100 elsif v3 == 0 @battleback3_sprite.dispose if @battleback3_sprite != nil @battleback3_sprite = nil end if v2 != nil and v2 != 0 array = YEZ::BACKDROP::BACKDROP_HASH[v2] @backdrop_counter[:b2_x] = 0 @backdrop_counter[:b2_y] = 0 @backdrop_data[:b2_wx] = array[0] @backdrop_data[:b2_wy] = array[1] @backdrop_data[:b2_ox] = array[2] @backdrop_data[:b2_oy] = array[2] @battleback2_sprite.dispose if @battleback2_sprite != nil @battleback2_sprite = Plane.new @battleback2_sprite.bitmap = Cache.parallax(array[4]) @battleback2_sprite.z = -99 elsif v2 == 0 @battleback2_sprite.dispose if @battleback2_sprite != nil @battleback2_sprite = nil end if v1 != nil and v1 != 0 array = YEZ::BACKDROP::BACKDROP_HASH[v1] @backdrop_counter[:b1_x] = 0 @backdrop_counter[:b1_y] = 0 @backdrop_data[:b1_wx] = array[0] @backdrop_data[:b1_wy] = array[1] @backdrop_data[:b1_ox] = array[2] @backdrop_data[:b1_oy] = array[2] @battleback_sprite.dispose if @battleback_sprite != nil @battleback_sprite = Plane.new @battleback_sprite.bitmap = Cache.parallax(array[4]) @battleback_sprite.z = -98 if @battleback_sprite.bitmap.width > Graphics.width @battleback_sprite.ox = (@battleback_sprite.bitmap.width - Graphics.width)/2 end @battleback_sprite.oy = @battleback_sprite.bitmap.height - Graphics.height elsif v1 == 0 @battleback_sprite = Sprite.new(@viewport1) end if v0 != nil and v0 != 0 array = YEZ::BACKDROP::BACKDROP_HASH[v0] @backdrop_counter[:b0_x] = 0 @backdrop_counter[:b0_y] = 0 @backdrop_data[:b0_wx] = array[0] @backdrop_data[:b0_wy] = array[1] @backdrop_data[:b0_ox] = array[2] @backdrop_data[:b0_oy] = array[2] @battleback0_sprite.dispose if @battleback0_sprite != nil @battleback0_sprite = Plane.new @battleback0_sprite.bitmap = Cache.parallax(array[4]) op = $game_variables[YEZ::BACKDROP::VARIABLE_MIST_OPACITY] op = [[op, 255].min, 0].max @battleback0_sprite.opacity = op elsif v0 == 0 @battleback0_sprite.dispose if @battleback0_sprite != nil @battleback0_sprite = nil end end
#-------------------------------------------------------------------------- # alias method: dispose_battleback_bitmap #-------------------------------------------------------------------------- alias dispose_battleback_bitmap_vb dispose_battleback_bitmap unless $@ def dispose_battleback_bitmap @battleback3_sprite.bitmap.dispose if @battleback3_sprite != nil @battleback2_sprite.bitmap.dispose if @battleback2_sprite != nil dispose_battleback_bitmap_vb @battleback0_sprite.bitmap.dispose if @battleback0_sprite != nil end
#-------------------------------------------------------------------------- # alias method: dispose_battleback #-------------------------------------------------------------------------- alias dispose_battleback_vb dispose_battleback unless $@ def dispose_battleback @battleback3_sprite.dispose if @battleback3_sprite != nil @battleback2_sprite.dispose if @battleback2_sprite != nil dispose_battleback_vb @battleback0_sprite.dispose if @battleback0_sprite != nil end
#-------------------------------------------------------------------------- # alias method: update_battleback #-------------------------------------------------------------------------- alias update_battleback_vb update_battleback unless $@ def update_battleback if @battleback0_sprite != nil and @battleback0_sprite.is_a?(Plane) @backdrop_counter[:b0_x] += 1 if @backdrop_data[:b0_wx] > 0 @backdrop_counter[:b0_y] += 1 if @backdrop_data[:b0_wy] > 0 if @backdrop_counter[:b0_x] > @backdrop_data[:b0_wx] @battleback0_sprite.ox += @backdrop_data[:b0_ox] @backdrop_counter[:b0_x] = 0 end if @backdrop_counter[:b0_y] > @backdrop_data[:b0_wy] @battleback0_sprite.oy += @backdrop_data[:b0_oy] @backdrop_counter[:b0_y] = 0 end end #--- if @battleback_sprite != nil and @battleback_sprite.is_a?(Plane) @backdrop_counter[:b1_x] += 1 if @backdrop_data[:b1_wx] > 0 @backdrop_counter[:b1_y] += 1 if @backdrop_data[:b1_wy] > 0 if @backdrop_counter[:b1_x] > @backdrop_data[:b1_wx] @battleback_sprite.ox += @backdrop_data[:b1_ox] @backdrop_counter[:b1_x] = 0 end if @backdrop_counter[:b1_y] > @backdrop_data[:b1_wy] @battleback_sprite.oy += @backdrop_data[:b1_oy] @backdrop_counter[:b1_y] = 0 end end #--- if @battleback2_sprite != nil and @battleback2_sprite.is_a?(Plane) @backdrop_counter[:b2_x] += 1 if @backdrop_data[:b2_wx] > 0 @backdrop_counter[:b2_y] += 1 if @backdrop_data[:b2_wy] > 0 if @backdrop_counter[:b2_x] > @backdrop_data[:b2_wx] @battleback2_sprite.ox += @backdrop_data[:b2_ox] @backdrop_counter[:b2_x] = 0 end if @backdrop_counter[:b2_y] > @backdrop_data[:b2_wy] @battleback2_sprite.oy += @backdrop_data[:b2_oy] @backdrop_counter[:b2_y] = 0 end end #--- if @battleback3_sprite != nil and @battleback3_sprite.is_a?(Plane) @backdrop_counter[:b3_x] += 1 if @backdrop_data[:b3_wx] > 0 @backdrop_counter[:b3_y] += 1 if @backdrop_data[:b3_wy] > 0 if @backdrop_counter[:b3_x] > @backdrop_data[:b3_wx] @battleback3_sprite.ox += @backdrop_data[:b3_ox] @backdrop_counter[:b3_x] = 0 end if @backdrop_counter[:b3_y] > @backdrop_data[:b3_wy] @battleback3_sprite.oy += @backdrop_data[:b3_oy] @backdrop_counter[:b3_y] = 0 end end #--- return if @battleback_sprite.is_a?(Plane) update_battleback_vb end
#-------------------------------------------------------------------------- # public instance variables #-------------------------------------------------------------------------- attr_accessor :spriteset
end # Scene_Battle
#=============================================================================== # # END OF FILE # #===============================================================================
Bon making à tous
Gela
Brandobscure001
Seigneur Lv.18
Age : 28 Inscrit le : 26/12/2010 Messages : 2220
Sujet: Re: [VX] Triple fonds de combat Ven 17 Juin 2011 - 12:55
Encore merci ce script et super Ou tu les trouve ces scripts ?
gelamine
Mage Lv.11
Age : 26 Avertissements : 3Inscrit le : 03/04/2010 Messages : 512
Sujet: Re: [VX] Triple fonds de combat Ven 17 Juin 2011 - 13:00
Sur d'autres forums RPG Maker, évidemment
Gela
BARVACHE
Vache Folle
Age : 29 Inscrit le : 22/05/2010 Messages : 3005
Sujet: Re: [VX] Triple fonds de combat Ven 17 Juin 2011 - 13:27
Jebb bossait sur un script similaire, il a donc été devancé par YanFly. Bon script, c'est sur, mais je ne l'utiliserai pas. Flemme de configurer. Merci du partage en tout cas.=) (et en plus ben tout le monde va piquer ce script et on aura encore des copier-coller de projets)
gelamine
Mage Lv.11
Age : 26 Avertissements : 3Inscrit le : 03/04/2010 Messages : 512
Sujet: Re: [VX] Triple fonds de combat Ven 17 Juin 2011 - 13:31
Jebb bossait dessus ? Ah. Pauvre de lui, et de moi si j'avais posté ça après lui Nan mais au pire ça se trouve le sien sera légèrement différent Et pour celui-ci, tu peux bien avoir cette flemme Pour les copiés/collés de projets bah...pffff à la limite tu peux changer toutes les images (à condition de garder le nom) donc je ne dirais pas ça.
Gela
Malum
Révolutionnaire mais ça rentrait pas alors autre chose
Age : 30 Inscrit le : 28/05/2010 Messages : 1537
Sujet: Re: [VX] Triple fonds de combat Ven 17 Juin 2011 - 18:43
J'aime bien, merci à toi, ça va me servir ! On peut donc s'en servir pour animer la pluie ?
lyam7777
Habitant Lv.6
Age : 24 Inscrit le : 01/03/2011 Messages : 120
Sujet: Re: [VX] Triple fonds de combat Ven 17 Juin 2011 - 19:06
gros problême: si tu veux changer de fond suivant les endroits...
gelamine
Mage Lv.11
Age : 26 Avertissements : 3Inscrit le : 03/04/2010 Messages : 512
Sujet: Re: [VX] Triple fonds de combat Ven 17 Juin 2011 - 21:18
Malum -> Oui tu peux changer les nuages par la pluie, sauf que ça sera animé de gauche à droite et non de haut en bas, comme les nuages. lyam7777 -> Si tu veux changer de fond suivant les endroits ? Bah tu customizes tes images comme tu veux : par là un bananier, ici une piscine...
Gela
Malum
Révolutionnaire mais ça rentrait pas alors autre chose
Age : 30 Inscrit le : 28/05/2010 Messages : 1537
Sujet: Re: [VX] Triple fonds de combat Sam 18 Juin 2011 - 6:07
Mais on peut pas modifier ça quelque part dans le script ?
lyam7777
Habitant Lv.6
Age : 24 Inscrit le : 01/03/2011 Messages : 120
Sujet: Re: [VX] Triple fonds de combat Sam 18 Juin 2011 - 8:37
Mais je parle de modifier le fond suivant les endroit, mais.. ro! exemple:
Ralph fait un combat dans le désert, il y a le fond qui correspond au desert, ok.. Puis, 2 minutes après, il prend une potion de téléportation er se retrouve dans la jungle, ou il affronte un monstre: -on va garder le battleback de désert, alors qu'il en faudrai un de jungle...
gelamine
Mage Lv.11
Age : 26 Avertissements : 3Inscrit le : 03/04/2010 Messages : 512
Sujet: Re: [VX] Triple fonds de combat Sam 18 Juin 2011 - 8:52
Ah, ça ! Bah oui c'est sûrement possible >.< J'utilise le ABS donc je sais pas mais c'est sûrement modifiable quelque part dans le script... Je vais voir.
Gela
Edit : Je suis en train de vérifier, en attendant voici d'autres fonds de combat :
http://rmxp.atspace.com/bb/bbgal.htm
BARVACHE
Vache Folle
Age : 29 Inscrit le : 22/05/2010 Messages : 3005
Sujet: Re: [VX] Triple fonds de combat Sam 18 Juin 2011 - 9:40
Pour la pluie, y'a déjà un script qui permet de garder les effets de météo et de teinte d'écran en combat. Je l'ai dans ma démo de Requiem donc si vous l'avez encore, vous pouvez prendre le script.
Zaris
Poulet Lv.1
Inscrit le : 19/06/2011 Messages : 9
Sujet: Re: [VX] Triple fonds de combat Dim 19 Juin 2011 - 22:59
Pouvez vous m'expliquer comment le configurer?
Frozen'
Mage Lv.11
Age : 29 Inscrit le : 20/04/2011 Messages : 572
Sujet: Re: [VX] Triple fonds de combat Lun 20 Juin 2011 - 9:37