[RPG-MAKER.FR] Oniromancie: tout l'univers de RPG Maker en français - Scripts - Chercheur de texte

Oniromancie: Scripts - Chercheur de texte


Découvrir
RPG Maker

RM 95
RM 2000/2003
RM XP
RM VX/VX Ace

Apprendre
RPG Maker

Guides
Tutoriels
Astuces
Making-of


Comment ça marche?

Aëdemphia
Par Sylvanor

Fighting Robots Quest
Par Boulon

Geex
Par roys

Inexistence
Par Falco

La Légende d'Ibabou
Par Zaitan

Nylu
Par NanakyTim

Sarcia
Par Kaëlar

Super Mario RPG - Lost Souls
Par Omegabowser

News: Game design: ouvrir son jeu aux (...) / News: Des jeux et des screens / News: Alex 2019 : tests et nominations (...) / Jeux: Wendy Whedon / Sorties: Wendy Whedon /

Chat  

Bienvenue
visiteur !




publicité RPG Maker!

Statistiques

Liste des
membres


Contact

Mentions légales

115 connectés actuellement

10211239 visiteurs
depuis l'ouverture

99 visiteurs
aujourd'hui

Groupe Facebook

Barre de séparation

Partenaires






TOP
GAMEMAKING


Les 5 plus
visités

Akademiya RPG Maker

Alex d'Or

Blog of Chaos17

BloGecko

ConsoleFun

Au hasard

RPG Maker VX

RPG Maker - La Communauté

Blog of Chaos17

Les deux derniers

Zarok

Akademiya RPG Maker

Nos autres partenaires

Devenir
partenaire


Barre de séparation

Un site du réseau
War Paradise

Annuaires référenceurs




Chercheur de texte
Script pour RPG Maker XP
Ecrit par Crystal

Ce script sert à chercher des textes contenus dans les événements de votre jeu, ou si vous voulez dans un fichier aussi. Il peut rechercher soit dans les messages, soit dans les commandes de script. Et évidemment ça inclut les événements communs.

Pour l'utiliser, toutes les instructions sont indiquées dans les premières lignes !

Si ce script est publié ailleurs, je ne m'y oppose pas du tout mais j'aimerais être contacté. ^^


Portion de code : Tout sélectionner

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
#===================================================================
# RECHERCHE TEXTUELLE version 1.0
# Script par Crystal, 9/11/12
#-------------------------------------------------------------------
# Permet d'effectuer une recherche à travers les événements et leurs
# commandes de script ou un fichier texte pour une chaîne de
# caractères donnée.
#-------------------------------------------------------------------
# MODE D'EMPLOI:
#
# 1 - Insérer dans un événement ou un script de votre choix une
#   commande script: t = Text_Searcher.new
# 
# 2 - Utiliser une des fonctions suivantes:
# 
# t.search_game(texte, scripts) : recherche dans les événements.
#
#   - texte: le texte entre guillemets "" que vous cherchez
#   - scripts: true pour une recherche exclusive aux commandes de
#              script, false uniquement pour les messages.
#
#   Le résultat est un rapport détaillé dans un fichier qui est
#   crée dans le dossier du jeu.
# 
# t.search_file(texte, fichier) : recherche dans un fichier
#   
#   - texte: le texte entre guillemets "" que vous cherchez
#   - fichier: le nom du fichier entre guillemets ""
#
#   Le résultat renvoyé est true ou false.
#
# t.raw_search(texte, scripts) : recherche dans les événements.
#
#   La fonction s'utilise comme search_game, mais renvoie true ou
#   false. Peut être utile pour les recherches très lourdes.
# 
#===================================================================
 
class Text_Searcher
  def initialize
    map_infos = load_data("Data/MapInfos.rxdata")
    com_events = load_data("Data/CommonEvents.rxdata")
    @texts, @scripts = [], []
    for k in map_infos.keys
      for e in (map = load_data(sprintf("Data/Map%03d.rxdata", k))).events.keys.sort 
        for p in 0...map.events[e].pages.size
          for c in map.events[e].pages[p].list
            case c.code
            when 101, 401; @texts.push([c.parameters[0], k, e, p, false])
            when 355, 655; @scripts.push([c.parameters[0], k, e, p, false])
            when 111
              @scripts.push([c.parameters[1], k, e, p, false]) if c.parameters[0] == 12
            end
          end
        end
      end
    end
    for e in 1...com_events.size 
      for c in com_events[e].list
        case c.code
        when 101, 401; @texts.push([c.parameters[0], nil, e, nil, true])
        when 355, 655; @scripts.push([c.parameters[0], nil, e, nil, true])
        when 111
          @scripts.push([c.parameters[1], nil, e, nil, true]) if c.parameters[0] == 12
        end
      end 
    end
  end
  def raw_search(text, script = false)
    !!(script ? @scripts : @texts).find {|i| i.first.include?(text) }
  end
  def search_file(text, filename)
    File.open(filename, "r") {|f| result = f.read.include?(text) }; result
  end
  def search_game(text, script = false, write_it = true)
    m_dat = script ? @scripts : @texts).find_all {|i| i.first.include?(text) }
    write_data(text, m_dat, script) if write_it; m_dat
  end
  def write_data(text, m_dat, script = false)
    File.open("#{script ? "script" : "text"}_search_#{text}.txt", "w") {|f|
      f.write("Résultat de la recherche pour #{text}:\n\n\n")
      for d in m_dat
        f.write(d[0] + (d[4] ? " :: Événement commun: #{d[2]}\n\n" : " :: " +
        "Map: #{d[1]} :: Événement : #{d[2]} :: Page: #{d[3] + 1}\n\n")
      end
    }
    p "Recherche de texte terminée."
  end
end




NanakyTim - posté le 25/10/2018 à 17:02:41. (23174 messages postés) - staff

Leader Bocaliste Floodeur Légendaire

Excellent ce script.

Incroyable que personne n'ait encore commenté pour remercier son auteur. :x3

Héros ou Fléau ? Devenez le Roi de Quineroy ! ~ Plongez dans l'univers sombre du Darkans ! ~ Dimens Reis... Allez y faire un tour. ~ Rangez votre chambre ! ~ Avez-vous peur du noir ? ~ Sauvez le futur, en allant dans le passé: BOCALATOR...

Suite à de nombreux abus, le post en invités a été désactivé. Veuillez vous inscrire si vous souhaitez participer à la conversation.

Haut de page

Merci de ne pas reproduire le contenu de ce site sans autorisation.
Contacter l'équipe - Mentions légales

Plan du site:

Communauté: Accueil | News | Forum | Flash-news | Sorties | Chat | Commentaires | Galerie | Blogs | Articles perso | Screen de la semaine | Palmarès | Livre d'or | Recherche | Interviews | OST | L'Annuaire | Divers
Apprendre: Le Wiki | Tutoriels | Guides | Gaming-Live | Tests | Making-of
Télécharger: Programmes | Scripts | Packs de ressources | Midis | Eléments séparés | Sprites
Jeux: Index jeux séparés | Top Classiques | Top Originaux | Les autres | Collection Oniro | RPG Maker 95 | RPG Maker 2000 | RPG Maker 2003 | RPG Maker XP | RPG Maker VX | RPG Maker VX Ace | RPG Maker MV | Autres | Jeux complets | Proposer
Hébergés: Aëdemphia | Fighting Robots Quest | Geex | Inexistence | La Légende d'Ibabou | Nylu | Sarcia | Super Mario RPG - Lost Souls
Ressources RPG Maker 2000/2003: Chipsets | Charsets | Panoramas | Backdrops | Facesets | Battle anims | Battle charsets | Monstres | Systems | Templates
Ressources RPG Maker XP: Tilesets | Autotiles | Characters | Battlers | Window skins | Icônes | Transitions | Fogs | Templates
Ressources RPG Maker VX: Tilesets | Charsets | Facesets | Systèmes
Ressources RPG Maker MV: Tilesets | Characters | Faces | Systèmes | Title | Battlebacks | Animations | SV/Ennemis