AccueilAccueil  PortailPortail  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  ConnexionConnexion  




Partagez
 

 [VXace] Battlebacks modifiables selon la zone.

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Tiroflan
Illusionniste Lv.12
Illusionniste Lv.12
Tiroflan


Masculin Age : 34
Inscrit le : 14/02/2010
Messages : 796

[VXace] Battlebacks modifiables selon la zone. Empty
MessageSujet: [VXace] Battlebacks modifiables selon la zone.   [VXace] Battlebacks modifiables selon la zone. Icon_minitimeMer 4 Jan 2012 - 20:59

Tout est dans le titre ;p C'est très étonnant que le rgss3 nous donne accès à de meilleures zones et à des battlebacks élaborés sans faire le lien, donc ce code est là pour ça. A priori, son utilité principale serait pour la worldmap seulement, mais ça pourrait aussi servir pour un système de carte de type pokemon aussi.

Utilisation : dans l'onglet de la map, il faut taper la ligne suivante : ZONE ZONE_ID FOND SOL

Avec ZONE juste pour vérification, ZONE_ID comme le numéro de la zone ciblée, FOND le nom de l'image du battleback d'arrière plan, et SOL le nom de l'image du battleback représentant le sol. Si la taille des noms occasionne un retour à la ligne (ce sera fréquent), pas de souci, tant qu'on ne passe pas à la ligne volontairement (ne pas appuyer sur entrée !)
En dehors des zones (et dans les zones pour lesquelles on n'entre rien), le battleback utilisé sera bien sur celui mis par défaut dans l'onglet map.

Exemple :

[VXace] Battlebacks modifiables selon la zone. Sans_t15


Code:
#----------------------------------------#
      ####BACKGROUNDS PAR ZONE####
      ##Le 04/01/12 par Tiroflan##
##Remerciements à DeeDee13010 pour l'idée##
#----------------------------------------#

# Effet : En plus du battlebacks de base qu'il y a dans la map,
# vous pouvez en affecter des nouveaux selon la zone où le combat commence.

#----------------------------------------#
 
# Utilisation : Dans la note de l'onglet de la map, entrez la ligne :

#      ZONE ZONE_ID FOND SOL

# Avec ZONE qui sert juste à la vérification par le script,
# ZONE_ID qui est le numéro de la zone ciblée,
# SOL le nom du battleback sur lequel les combattants marchent, tel
#  qu'il est écrit dans les onglets graphiques, et idem pour FOND qui sera
# l'image d'arrière plan.

# EXEMPLE : ZONE 3 Forest1 GrassMaze

# Dans la plupart des cas, il y aura un retour à la ligne
# causé par la longueur des noms des battlebacks,
# mais tant que ce retour est automatique (n'appuyez pas sur entrée !),
# il n'y aura pas de problèmes
#----------------------------------------#

# 3 méthodes ont été aliasées :
#  setup dans Game_Map
#  create_battleback1 et create_battleback2 dans Spriteset_Battle

#----------------------------------------#


#----------------------------------------#
# Au chargement de la map, on récupère les zones concernées et leurs battlebacks respectifs.
#----------------------------------------#
class Game_Map
 
  attr_reader :background_data # Contient les zones/battlebacks
 
 
  alias backg_setup setup
  def setup(map_id)
    backg_setup(map_id)
    setup_backgrounds
  end
 
  def setup_backgrounds
    @background_data = {"area" => [] , "floor" => [] , "wall" => []}
    note = @map.note
    note.split(/[\r\n]+/).each { |line| #On lit la note ligne par ligne.
    str = line.split #Puis 'mot' par 'mot'.
    case str[0]
      when "ZONE"
        @background_data["area"].push(str[1].to_i)
        @background_data["floor"].push(str[2].to_s)
        @background_data["wall"].push(str[3].to_s)
      end}
    end
     
  end
#----------------------------------------#

#----------------------------------------#
# Ici, on modifie juste les fonctions qui récupèrent les battlebacks
# pour les afficher au début du combat, et on remplace
# quand c'est nécessaire par les battlebacks contenus dans $game_map.background_data.
#----------------------------------------#
class Spriteset_Battle
 
  alias old_create_battleback1 create_battleback1
  def create_battleback1
    zone = $game_map.region_id($game_player.x, $game_player.y) #zone au moment du combat
    if $game_map.background_data["area"].include?(zone) #La zone fait elle partie de celles qui ont des battlebacks particuliers ?
      index = $game_map.background_data["area"].index(zone) #On récupère l'indice de la zone dans l'array des zones
      @back1_sprite = Sprite.new(@viewport1)
      @back1_sprite.bitmap = Cache.battleback1($game_map.background_data["wall"][index]) #On applique l'indice pour retrouver le bon battleback.
      @back1_sprite.z = 0
      center_sprite(@back1_sprite)
    else
      old_create_battleback1
    end
  end

  alias old_create_battleback2 create_battleback2 #Même chose pour la deuxième image.
  def create_battleback2
    zone = $game_map.region_id($game_player.x, $game_player.y)
    if $game_map.background_data["area"].include?(zone)
      index = $game_map.background_data["area"].index(zone)
      @back2_sprite = Sprite.new(@viewport1)
      @back2_sprite.bitmap = Cache.battleback2($game_map.background_data["floor"][index])
      @back2_sprite.z = 1
      center_sprite(@back2_sprite)
    else
      old_create_battleback2
    end
  end

end
#----------------------------------------#


Dernière édition par Tiroflan le Mer 4 Jan 2012 - 22:05, édité 1 fois
Revenir en haut Aller en bas
Invité
Invité
avatar



[VXace] Battlebacks modifiables selon la zone. Empty
MessageSujet: Re: [VXace] Battlebacks modifiables selon la zone.   [VXace] Battlebacks modifiables selon la zone. Icon_minitimeMer 4 Jan 2012 - 21:05

Un bon script qui peut être très utile ! +3 points de participation ! Merci du partage !
Revenir en haut Aller en bas
Zangther
Maître des Duels
Maître des Duels
Zangther


Masculin Age : 32
Inscrit le : 29/07/2009
Messages : 7841

[VXace] Battlebacks modifiables selon la zone. Empty
MessageSujet: Re: [VXace] Battlebacks modifiables selon la zone.   [VXace] Battlebacks modifiables selon la zone. Icon_minitimeMer 4 Jan 2012 - 21:41

Dommage que le code ne soit que trop peu mis en forme et commenté.
Revenir en haut Aller en bas
Tiroflan
Illusionniste Lv.12
Illusionniste Lv.12
Tiroflan


Masculin Age : 34
Inscrit le : 14/02/2010
Messages : 796

[VXace] Battlebacks modifiables selon la zone. Empty
MessageSujet: Re: [VXace] Battlebacks modifiables selon la zone.   [VXace] Battlebacks modifiables selon la zone. Icon_minitimeMer 4 Jan 2012 - 21:52

Ah, t'as raison, je vais changer tout ça. Pour une fois, le code m'a pas posé de problème et je l'ai fait en une fois, du coup j'ai pas eu du tout besoin de commenter.
Revenir en haut Aller en bas
Zangther
Maître des Duels
Maître des Duels
Zangther


Masculin Age : 32
Inscrit le : 29/07/2009
Messages : 7841

[VXace] Battlebacks modifiables selon la zone. Empty
MessageSujet: Re: [VXace] Battlebacks modifiables selon la zone.   [VXace] Battlebacks modifiables selon la zone. Icon_minitimeMer 4 Jan 2012 - 22:00

Ben en fait c'est surtout dans la mise en forme et la précision de ce que t'as fait qu'il y a un probleme.
Revenir en haut Aller en bas
Tiroflan
Illusionniste Lv.12
Illusionniste Lv.12
Tiroflan


Masculin Age : 34
Inscrit le : 14/02/2010
Messages : 796

[VXace] Battlebacks modifiables selon la zone. Empty
MessageSujet: Re: [VXace] Battlebacks modifiables selon la zone.   [VXace] Battlebacks modifiables selon la zone. Icon_minitimeMer 4 Jan 2012 - 22:08

Heu, c'est à dire ? Y'a juste deux pauvres méthodes, j'ai un peu du mal à voir comment tu mets ça en forme. Si j'ai fait des codes qui pourraient être réduits, ce qui est tout à fait possible, dis le moi, j'apprendrai certainement un truc.
Revenir en haut Aller en bas
Zangther
Maître des Duels
Maître des Duels
Zangther


Masculin Age : 32
Inscrit le : 29/07/2009
Messages : 7841

[VXace] Battlebacks modifiables selon la zone. Empty
MessageSujet: Re: [VXace] Battlebacks modifiables selon la zone.   [VXace] Battlebacks modifiables selon la zone. Icon_minitimeMer 4 Jan 2012 - 22:52

En gros faire comme dans le scripts de base avec le entête et surtout le smethodes que t'as aliasées et pourquoi.
Revenir en haut Aller en bas
Nusenism
Nomimange'twa ♪
Nomimange'twa ♪
Nusenism


Masculin Age : 33
Inscrit le : 02/02/2010
Messages : 4692

[VXace] Battlebacks modifiables selon la zone. Empty
MessageSujet: Re: [VXace] Battlebacks modifiables selon la zone.   [VXace] Battlebacks modifiables selon la zone. Icon_minitimeJeu 5 Jan 2012 - 1:08

Très utile en tout cas. Enfin, pas au gameplay mais à l'esthétique globale des projets, à la logique de battlebacks, toussa.
Merci Tiro'! Wink
Revenir en haut Aller en bas
http://imagin.jeunforum.com/portal.htm
Eternal
Habitant Lv.6
Habitant Lv.6
Eternal


Masculin Age : 34
Inscrit le : 02/10/2008
Messages : 102

[VXace] Battlebacks modifiables selon la zone. Empty
MessageSujet: Re: [VXace] Battlebacks modifiables selon la zone.   [VXace] Battlebacks modifiables selon la zone. Icon_minitimeJeu 5 Jan 2012 - 16:14

Très utile pour un CBS Sideview, d'ailleurs, j'attends un CBS de ce type avec impatience (mais un bien^^ ) !
Revenir en haut Aller en bas
Contenu sponsorisé




[VXace] Battlebacks modifiables selon la zone. Empty
MessageSujet: Re: [VXace] Battlebacks modifiables selon la zone.   [VXace] Battlebacks modifiables selon la zone. Icon_minitime

Revenir en haut Aller en bas
 

[VXace] Battlebacks modifiables selon la zone.

Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1

 Sujets similaires

-
» Barre de HP et MP modifiables?
» [VXAce] Conversion du script Credits Vx=>VxAce
» Liste des battlebacks
» Battlebacks avec sbs
» Des battlebacks que j'utilise pour mon projet.

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
RPG Maker VX :: Entraide :: Scripts :: Scripts VX.Ace - RGSS3 :: Combat-
Créer un forum | ©phpBB | Forum gratuit d'entraide | Signaler un abus | Cookies | Forum gratuit