Oniromancie: Scripts - Chercheur de texte


Comment ça marche?

Aëdemphia
Par Sylvanor

Fighting Robots Quest
Par Boulon

Forstale
Par Ødd Clock

Geex
Par roys

Inexistence
Par Falco

La Légende d'Ibabou
Par Zaitan

Lije
Par Gaetz

LoveMaster
Par Cuddlefox

Sarcia
Par Kaëlar

Super Mario RPG - Lost Souls
Par Omegabowser

News: Concours des Alex d'Or 2017-18: (...) / News: MegaMaker : créez votre propre (...) / News: Test de Tinker Quarry / Sorties: Leave the Room / Jeux: Leave the Room /

Chat  (35 connectés)

Bienvenue
visiteur !








Statistiques

Liste des
membres


Contact

63 connectés actuellement

9170818 visiteurs
depuis l'ouverture

1069 visiteurs
aujourd'hui

Groupe Facebook

Barre de séparation

Partenaires




TOP
GAMEMAKING


Les 5 plus
visités

Lunae, le baz'arts d'Emz0

Le studio du chat vert

Pixelandgame

Tashiroworld

HeyMakeGames

Au hasard

Loisirs RPG

Lunae, le baz'arts d'Emz0

Kingdom Ultimate

Les deux derniers

Lunae, le baz'arts d'Emz0

Le studio du chat vert

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



Aucun commentaire n'a été posté pour le moment.

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

Plan du site:

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