Partagez
Aller en bas
avatar
Dishi
Membre

Nombre de messages : 632
Age : 19
Localisation : Marseille
Distinction : Alias Dichie
Aussi alias Sherifa Luna de la commu' (je suis dichie et d'ailleurs )

Co-créateur du Nyan Xak
[Tétété]

Apprenti Pedobear
[Mémé nova]

Keupiteur de ponctuation.
[un sombre inconnu.]
Date d'inscription : 07/07/2011
https://github.com/paul-roman

Script de faceset

le Jeu 7 Juil 2011 - 16:23
Bonjour à tous, aujourd'hui je partage mon 1er script, permettant d'afficher des facesets pour les personnages principaux.
Je m'explique : diisons que votre personnage, s'équipe d'une armure qui, grâce à un évenement commun, lui fait changer d'apparence, sa face doit changer aussi.
Or, pour éviter ça :
Code:
Si Ralph possède l'Armure de Fer
Alors > Afficher tel message avec la face du héros équipé
Sinon > Afficher tel message avec la face du héros non-équipé

J'ai créé ce script. Il vous suffira alors de mettre la face du héros non équipé, et le script fera lui même la distinction, entre la face équipée et celle non équipée.

Prérequis :
- Les faces du héros équipé ET non-équipé dans le dossiers Graphics\Faces
- Un interrupteur
- Une variable par héros
- Un évenement commun en processus parallèle qui démarre à quand l'interrupteur précédemment défini est activé, structuré de cette façon :
Spoiler:

|> Condition : Si [Ralph] est équipé avec l'armure [Armure de Fer]
||||> Modifier Apparence Personnage : [Ralph], Charset:'$Ralph-Armure1', 0, Faceset:'Ralph-Armure1', 0
||||> Opération : Variable [0001:Apparence Ralph] = 1
||||>
| Sinon :
||||> Condition : Si [Ralph] est équipé avec l'armure [Armure d'Or]
||||> Modifier Apparence Personnage : [Ralph], Charset:'$Ralph-Armure2', 0, Faceset:'Ralph-Armure2', 0
||||> Opération : Variable [0001:Apparence Ralph] = 2
||||>
Sinon :
||||> Modifier Apparence Personnage : [Ralph], Charset:'$Ralph', 0, Faceset:'Ralph', 0
||||> Opération : Variable [0001:Apparence Ralph] = 0
||||>
| Fin - Condition
| Fin - Condition


Les variables et m'interrupteur évoqués sont celles à mentionner dans le script

Et voila la (petite) bête :

Code:
###################################
# Créé par Dishi
###################################
module Face_chara
# Indique ici l'ID de l'interrupteur de controle du remplacement :
# Actif => Remplacement / désactivé => Faceset normal
  ID_switch = 5
 
# Variables contenant l'emplacement dans le tableau çi dessous du fichier que l'on veut
  Ids_var = [1,2,3]

# Indique ici les noms de fichiers de remplacement :
  NOMS = [  # si Ids_var contient [x,y,z,t], voila à quel tableau chaque variable correspond
            ["FaceA1","FaceA2","FaceA3"],#variable1
            ["FaceB1","FaceB2","FaceB3"],#variable2
            ["FaceC1","FaceC2","FaceC3"],#variable3

        ]
        # Pour ajouter la gestion d'un autre personnage:
        #  - ajouter une virgule à la dernière ligne contenant un tableau (comme les lignes précédentes)
        #  - ajouter ["Face1","Face2"..."FaceN"] à la ligne vide après le dernier tableau
        #  - remplacer évidement par les noms correspondants...
# ATTENTION A BIEN AVOIR AUTANT DE VARIABLES DANS IDS_VAR QUE DE TABLEAUX DANS NOMS
end
###################################
class Window_Message < Window_Selectable
  alias face_new_page new_page
  def new_page
    check_face_chara
    face_new_page
  end
  def check_face_chara
    return unless $game_switches[Face_chara::ID_switch]
    name = $game_message.face_name
    for i in 0...Face_chara::NOMS.size
      if Face_chara::NOMS[i][0] == name # On compare au premier nom
        new_name = Face_chara::NOMS[i][$game_variables[Face_chara::Ids_var[i]]] # On remplace par celui que la variable définie
        $game_message.face_name = new_name
        break
      end
    end
  end
end


Dernière édition par Emdel le Ven 8 Juil 2011 - 21:17, édité 3 fois
avatar
dricc
Membre

Nombre de messages : 2753
Localisation : Lille
Distinction : Altruiste - Incarnation de la Patience [Mist']
Date d'inscription : 10/08/2009

Re: Script de faceset

le Ven 8 Juil 2011 - 17:28
Oui , une bonne idée .
Au passage , on devrait aussi pouvoir l'utiliser pour les status (malade , empoisonné ...) .

Juste un truc : je suis surpris que tu ne modifies que Window_Message . ça se repercute aussi au menu et à la fenetre de status ?
avatar
Dishi
Membre

Nombre de messages : 632
Age : 19
Localisation : Marseille
Distinction : Alias Dichie
Aussi alias Sherifa Luna de la commu' (je suis dichie et d'ailleurs )

Co-créateur du Nyan Xak
[Tétété]

Apprenti Pedobear
[Mémé nova]

Keupiteur de ponctuation.
[un sombre inconnu.]
Date d'inscription : 07/07/2011
https://github.com/paul-roman

Re: Script de faceset

le Ven 8 Juil 2011 - 18:18
Oui, à la base, je l'avais créé pour les équipements, mais on peux l'utiliser pour les statutes.
En ce qui concerne les menus statuts et menus tout courts, je me suis fait la réflexion suivante :

Chaque héros a un charset et un faceset approprié. Or, dans les messages, on utilise une certaine face, et non la face du héros, même si c'est la même, d'où mon script. Je pensais donc que pour les faces appropriés aux héros, on pouvaient les changé dans un évenement commun, en même temps que les charsets.

j'en ai profité pour faire un édit des prérequis.
avatar
Pharazon
Staffeux retraité

Nombre de messages : 1702
Age : 32
Localisation : Au Pays des Bisounours
Distinction : Super distinction!
[Coco' ]
Date d'inscription : 14/04/2010

Re: Script de faceset

le Ven 8 Juil 2011 - 19:57
pas mal comme script. merci beaucoup pour ce travail Smile
avatar
Garruk
Membre

Nombre de messages : 912
Age : 33
Localisation : Evreux 27
Distinction : The Master Show de 2011
Date d'inscription : 13/09/2009

Re: Script de faceset

le Sam 9 Juil 2011 - 15:54
Bonne idée, merci à toi. =)
avatar
Dishi
Membre

Nombre de messages : 632
Age : 19
Localisation : Marseille
Distinction : Alias Dichie
Aussi alias Sherifa Luna de la commu' (je suis dichie et d'ailleurs )

Co-créateur du Nyan Xak
[Tétété]

Apprenti Pedobear
[Mémé nova]

Keupiteur de ponctuation.
[un sombre inconnu.]
Date d'inscription : 07/07/2011
https://github.com/paul-roman

Re: Script de faceset

le Sam 9 Juil 2011 - 15:59
de rien, merci à vous, je vais essayer de faire une v2, avec les conseils apportés par dricc Wink
Contenu sponsorisé

Re: Script de faceset

Revenir en haut
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum