RPG Fusion
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.



 
AccueilPortailRechercherDernières imagesS'enregistrerConnexion
Le Deal du moment :
Cartes Pokémon 151 : où trouver le ...
Voir le deal

 

 Le nom de votre héros sur VX

Aller en bas 
AuteurMessage
Nova
Infâme Milicien
Infâme Milicien
Nova


Masculin
Nombre de messages : 185
Age : 34
Projet(s) en cours : Rédemptions
Niveau Rpg Maker : + : Mapping, Évent, Combat. - : Script, Rapidité.
Jeux Préférés : FFTA, FFLW, FF 1 à 12 sauf 7, Jeux DS.
Date d'inscription : 30/12/2007

Le nom de votre héros sur VX Empty
MessageSujet: Le nom de votre héros sur VX   Le nom de votre héros sur VX EmptyJeu 03 Avr 2008, 00:43

Salut à vous tous.

Vous l'avez peut-être remarqué sur VX, mais il existe un petit problème facilement résolvable quant au choix du nom du héros. Je vais vous concoter un petit tuto pratique et efficace...

Auteur: Nova

Effets:
  • plus de choix de lettres lors de la saisie du nom
  • correction d'un manque de la part des réalisateurs de VX ou Nino (notre bien-aimé traducteur) quant à la totalité des lettres de base.


Let's go....

I_ Piqûre de rappel

Tout d'abord, je vais vous rappeler la façon de procéder pour saisir le nom du héros SOUS VX (je rappelle que XP nécessite un script pour cela).

  • Passez la map en mode évènement (F6).
  • Dans le coin de la map, ou bien à n'importe quel endroit, insérez un évènement.
  • Dans "commande de l'évènement", double-cliquez et rendez-vous à l'onglet 3.

    Le nom de votre héros sur VX Comman10

  • Choisissez le héros à renommer, puis cliquez sur OK.
  • Ne sortez pas encore de l'évènement:
  • Mettez PROCESSUS PARALLELE dans les conditions de déclanchement, si vous voulez que le joueur renomme directement le héros, et AUTOMATIQUE, si vous voulez que le joueur entre le nom après un dialogue, ou un évent.

Au final, on obtient ceci...

Le nom de votre héros sur VX Au_fin10

Bravo nous avons réalisé 50% du boulot. Pour les 50% restants, rendez-vous dans les scripts...

II_ La modification du script

Si vous avez testé la fonction de la saisie du nom, et que vous avez l'oeil, vous remarquerez que ni le H, ni le X n'existent. Cela est assez embêtant, surtout pour ceux qui s'appellent AntHony... La première opération va donc résoudre ce problème des deux lettres manquantes, la deuxième quant à elle va vous montre comment insérer d'autres caractères....

  • Ouvrez l'éditeur de script (F11)
  • Vous voyez les classes accompagnées d'une flèche pointée vers le bas? eh bien rendez-vous dans la rubrique "fenêtre".
  • Le 20ème script de cette rubrique se nomme en théorie "Name_input". Allez-y.
  • Là, vous appercevez des chiffres et des lettres (pas sur france 2) en violet. Ce sont les lettres et chiffres sélectionnable lors de la saisie du nom.
  • Remplacez tout le script par celui-ci...

    #Window_NameInput
    #Amélioré par Nova
    #Rajout des lettres H et X, espace et autres caractères
    #Exclusivité RPGFusion (https://rpgfusionv2.1fr1.net/index.htm)
    #==============================================================================
    # ■ Window_NameInput
    #------------------------------------------------------------------------------
    #  名前入力画面で、文字を選択するウィンドウです。
    #==============================================================================

    class Window_NameInput < Window_Base
    #--------------------------------------------------------------------------
    # ● 文字表
    #--------------------------------------------------------------------------
    HIRAGANA = [ 'a','b','c','d','e', 'A','B','C','D','E',
    'f','g','h','i','j', 'F','G','H','I','J',
    'k','l','m','n','o', 'K','L','M','N','O',
    'p','q','r','s','t', 'P','Q','R','S','T',
    'u','v','w','x','y', 'U','V','W','X','Y',
    'z',' ',' ',' ',' ', 'Z',' ',' ',' ',' ',
    '1','2','3','4','5', 'à','ä','é','è','ê',
    '6','7','8','9','0', 'ë','ô','û','_','.',
    '!','?',',',';',':', '@','%','€','','OK']
    TABLE = [HIRAGANA]
    #--------------------------------------------------------------------------
    # ● オブジェクト初期化
    # mode : 初期入力モード (0 = ひらがな、1 = カタカナ)
    #--------------------------------------------------------------------------
    def initialize(mode = 0)
    super(88, 148, 368, 248)
    @mode = mode
    @index = 0
    refresh
    update_cursor
    end
    #--------------------------------------------------------------------------
    # ● 文字の取得
    #--------------------------------------------------------------------------
    def character
    if @index < 88
    return TABLE[@mode][@index]
    else
    return ""
    end
    end
    #--------------------------------------------------------------------------
    # ● カーソル位置 モード切り替え判定 (かな/カナ)
    #--------------------------------------------------------------------------
    def is_mode_change
    return (@index == 88)
    end
    #--------------------------------------------------------------------------
    # ● カーソル位置 決定判定
    #--------------------------------------------------------------------------
    def is_decision
    return (@index == 89)
    end
    #--------------------------------------------------------------------------
    # ● 項目を描画する矩形の取得
    # index : 項目番号
    #--------------------------------------------------------------------------
    def item_rect(index)
    rect = Rect.new(0, 0, 0, 0)
    rect.x = index % 10 * 32 + index % 10 / 5 * 16
    rect.y = index / 10 * WLH
    rect.width = 32
    rect.height = WLH
    return rect
    end
    #--------------------------------------------------------------------------
    # ● リフレッシュ
    #--------------------------------------------------------------------------
    def refresh
    self.contents.clear
    for i in 0..89
    rect = item_rect(i)
    rect.x += 2
    rect.width -= 4
    self.contents.draw_text(rect, TABLE[@mode][i], 1)
    end
    end
    #--------------------------------------------------------------------------
    # ● カーソルの更新
    #--------------------------------------------------------------------------
    def update_cursor
    self.cursor_rect = item_rect(@index)
    end
    #--------------------------------------------------------------------------
    # ● カーソルを下に移動
    # wrap : ラップアラウンド許可
    #--------------------------------------------------------------------------
    def cursor_down(wrap)
    if @index < 80
    @index += 10
    elsif wrap
    @index -= 80
    end
    end
    #--------------------------------------------------------------------------
    # ● カーソルを上に移動
    # wrap : ラップアラウンド許可
    #--------------------------------------------------------------------------
    def cursor_up(wrap)
    if @index >= 10
    @index -= 10
    elsif wrap
    @index += 80
    end
    end
    #--------------------------------------------------------------------------
    # ● カーソルを右に移動
    # wrap : ラップアラウンド許可
    #--------------------------------------------------------------------------
    def cursor_right(wrap)
    if @index % 10 < 9
    @index += 1
    elsif wrap
    @index -= 9
    end
    end
    #--------------------------------------------------------------------------
    # ● カーソルを左に移動
    # wrap : ラップアラウンド許可
    #--------------------------------------------------------------------------
    def cursor_left(wrap)
    if @index % 10 > 0
    @index -= 1
    elsif wrap
    @index += 9
    end
    end
    #--------------------------------------------------------------------------
    # ● カーソルを決定へ移動
    #--------------------------------------------------------------------------
    def cursor_to_decision
    @index = 89
    end
    #--------------------------------------------------------------------------
    # ● 次のページへ移動
    #--------------------------------------------------------------------------
    def cursor_pagedown
    @mode = (@mode + 1) % TABLE.size
    refresh
    end
    #--------------------------------------------------------------------------
    # ● 前のページへ移動
    #--------------------------------------------------------------------------
    def cursor_pageup
    @mode = (@mode + TABLE.size - 1) % TABLE.size
    refresh
    end
    #--------------------------------------------------------------------------
    # ● フレーム更新
    #--------------------------------------------------------------------------
    def update
    super
    last_mode = @mode
    last_index = @index
    if Input.repeat?(Input::DOWN)
    cursor_down(Input.trigger?(Input::DOWN))
    end
    if Input.repeat?(Input::UP)
    cursor_up(Input.trigger?(Input::UP))
    end
    if Input.repeat?(Input::RIGHT)
    cursor_right(Input.trigger?(Input::RIGHT))
    end
    if Input.repeat?(Input::LEFT)
    cursor_left(Input.trigger?(Input::LEFT))
    end
    if Input.trigger?(Input::A)
    cursor_to_decision
    end
    if Input.trigger?(Input::R)
    cursor_pagedown
    end
    if Input.trigger?(Input::L)
    cursor_pageup
    end
    if Input.trigger?(Input::C) and is_mode_change
    cursor_pagedown
    end
    if @index != last_index or @mode != last_mode
    Sound.play_cursor
    end
    update_cursor
    end
    end


  • Une fois ceci fait, cliquez sur OK.
  • Et voilà! Maintenant de nouveau caratères sont disponibles!


Testons tout cela....
  • Testez le jeu en appuyant sur F12.
  • Rendez-vous sur la map où le héros doit changer de nom. Si vous avez suivi correctement mon tuto, dès que vous entrez sur la carte, une fenêtre apparaît, exactement celle-ci...


Le nom de votre héros sur VX Et_voi10

Et voilà le travail!
Alors mon dernier petit conseil est celui de mettre 7 lettres, voire 8, pour la taille maximale du nom, car 16 (ce que j'ai fait sur le dernier screen) est très laid.

J'espère que ce tuto vous sera utile; normalement tout est fonctionnel, mais si les symptômes persistent, consultez votre membre préféré!
Revenir en haut Aller en bas
http://authors-empire.1fr1.net/forum.htm
 
Le nom de votre héros sur VX
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» ecrivez votre pseudo avec votre coude
» Vitesse du heros

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
RPG Fusion :: LUDOTHEQUE :: Temple du Savoir :: Cours & Astuces sur RM-
Sauter vers:  
Ne ratez plus aucun deal !
Abonnez-vous pour recevoir par notification une sélection des meilleurs deals chaque jour.
IgnorerAutoriser