Day.png);">
Apprendre


Vous êtes
nouveau sur
Oniromancie?

Visite guidée
du site


Découvrir
RPG Maker


Apprendre
RPG Maker

Tutoriels
Guides
Making-of

Dans le
Forum

Section Entraide

Jeux: puie z / Jeux: Citymaime - Chapitre 1 / Jeux: Mer, îles et fous / News: Du neuf dans le making / News: Muma|Rope est disponible en (...) / Chat

Bienvenue
visiteur !




publicité RPG Maker!

Statistiques

Liste des
membres


Contact

Mentions légales

508 connectés actuellement

30732476 visiteurs
depuis l'ouverture

2455 visiteurs
aujourd'hui



Barre de séparation

Partenaires

Indiexpo

Akademiya RPG Maker

Blog Alioune Fall

Fairy Tail Constellations

Level Up!

Hellsoft

New RPG Maker

Planète Glutko

Eclipso

Tous nos partenaires

Devenir
partenaire



Scene_Worldmap 0.9

Menu de téléportation avec images, et possibilité de cacher/montrer les destinatons voulues.

Script pour RPG Maker XP
Ecrit par Krazplay
Publié par Sonara (lui envoyer un message privé)
Signaler un script cassé

❤ 0

Auteur : Krazplay
Logiciel : RPG Maker XP
Nombre de scripts : 1

Fonctionnalités
- Permet d'afficher un menu avec le choix des destinations possibles, avec des images des lieux.
- Gestion des points de téléportation affichés par interrupteurs ou variables.

Installation
A placer au-dessus de Main.
Contrairement à ce qui est écrit au début, ce script suffit seul car le second est inclus dedans.

Utilisation
Ce script est à personnaliser en début de code. Lisez les commentaires, tout est expliqué.

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
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
#======================================================================= 
# ■ Scene_Worldmap v0.9 
#-------------------------------------------------------------------------------------------------------------------------------- 
# Ecrit par Krazplay, version la plus à jour disponible sur le forum du site rpgmakerxp.free.fr 
# Nécessite : le script Window_World
# Description : 
# Ce scrîpt permet d'afficher un menu de carte du monde/téléporteur comportant dans une 
# première fenêtre à gauche une liste de choix (les destinations), chacun des choix est 
# accompagné d'une image qui apparaitra à droite, et probablement dans une prochaine version 
# d'une description dans la fenêtre de bienvenu, un choix peut être ajouté/enlevé ou désactivé 
# à l'aide de variables ou de switchs. 
# Utilisation : 
# Il y a trois endroits où vous devez modifier ce scrîpt pour qu'il fonctionne, pour cela faites 
# comme dans les exemples, ils sont à mon avis assez explicites. 
# 
# Modifications 1 : C'est là que vous mettrez le nom de la destination (dans la variable @s[i], 
# où i est la position de ce choix, 0 = première position, 1 = 2nde position ou 1ère position si 
# le choix 0 n'est pas disponible et ainsi de suite) et le nom de l'image du dossier Pictures lui 
# correspondant dans la variable @ni[i] (le nom doit être entre crochets (exemple "Ville"), et ne 
# doit PAS contenir le nom de l'extension (.jpg). 
# 
# Modifications 2 : Optionnel, si vous voullez qu'à un moment le joueur ne puisse pas aller 
# quelquepart mais que le choix soit tout de même visible, c'est là qu'il faut le mettre, à l'aide 
# de la commande : @command_window.disable_item("nom du l'endroit") 
# 
# Modifications 3 : Entrer ici les conséquences du choix, générallement la téléportion complète 
# de l'équipe. Pour téléporter l'équipe vous pouvez utiliser la commande : 
# téléportation(id_de_la_map, coordonnée_x, coordonnée_y, direction_du_héros_optionnel) 
# Je ne me rappelle plus des différentes direction du héros, il me semble que ce chiffre peut 
# une valeur entre 0 et 3, 0 et 3 étant compris. Cela permet en tout cas que le héro regarde 
# vers le haut ou la droite par exemple, après s'être téléporté. 
# 
# Notes importantes : L'image doit être au format jpg (c'est le seul que j'ai testé, je ne sais pas 
# si les autres sont acceptés). Son format conseillé est de 368x352, si l'image est plus petite, 
# elle sera automatiquement centré au milieu de la fenêtre, de même si elle est trop grande, on 
# verra son milieu, et non son côté. 
# Pour appeller cette carte du monde, utliser la ligne de scrîpt suivante : 
# $scene = Scene_Worldmap.new 
# à partir de n'importe quel évènement ou scrîpt. 
#======================================================================= 
class Scene_Worldmap 
  
  def initialize(menu_index = 0) 
    @menu_index = menu_index 
  end 
 
  
  def main 
    @s = [] 
    @ni = [] 
    ############### Modifications 1 ################ 
    @s[0] = "Mines"     #Nom du premier choix 
    @ni[0] = "image_Mines1"    #Nom de l'image du premier choix ds votre dossier Pictures (sans l'extension) 
    @s[1] = "Ville du desert"      
   #@ni[1] = "Ville du desert"    #Le nom de l'image étant identique à celui du lieu, on peut négliger de la préciser 
    if $game_switches[1] == true   # Exemple avec un switch : 
      @s[2] = "Test"                         # Le choix "Test" n'apparaitra que si 
      @ni[2] = "image_test"            # le switch 1 est activé 
    end                                              
    if $game_variables[80] > 3     # Exemple avec une variable : 
      @s[3] = "AZERTY"                # Le choix "AZERTY" n'apparaitra que si 
      @ni[3] = "blablabla"                   # la variable 80 est supérieur à 3 
    end 
    
    for i in 0...@s.size 
      if @ni[i] == nil and @s[i] != nil   # Si aucun nom d'image n'a été attribué alors que le lieu existe 
        @ni[i] = @s[i]           # Alors le nom du lieu devient le nom de l'image 
      end 
    end 
    @s.compact!      # Enlève les espaces vides possibles. 
    @ni.compact! 
#Création de la fenêtre de bienvenue => (coordonnée x, coordonnée y, largeur, hauteur) 
    largeur = 640 
    hauteur = 96 
    @bienvenue_window = Window_Base.new(0,0,largeur,hauteur) 
    @bienvenue_window.contents = Bitmap.new(largeur-32, hauteur-32) 
    @bienvenue_window.contents.font.name = $fontface #si vous voullez modifier la police d'écriture 
    @bienvenue_window.contents.font.size = $fontsize #ou sa taille c'est ici. 
    message1 = "Bienvenu sur la World Map." 
    message2 = "Veuillez choisir votre destination." 
    align = 1 #(0 = texte aligné à gauche ; 1 = texte centré ; 2 = aligné à droite) 
    @bienvenue_window.contents.draw_text(0, 0, largeur, 32, message1, align) 
    @bienvenue_window.contents.draw_text(0, 32, largeur, 32, message2, align) 
    largeur2 = 240      #(largeur de la fenêtre des choix) 
    @command_window = Window_World.new(largeur2, @s) 
    @command_window.x = 0       # position x de la fenêtre des choix 
    @command_window.y = 96     # position y de la fenêtre des choix 
    @command_window.index = @menu_index 
    # Fenêtre qui contiendra l'image => (position x, position y, largeur, hauteur) 
    @image_window = Window_Base.new(240, 96, 400, 480-96) 
    
    ############### Modifications 2 ################ 
    # Liste des choix non selectionnables, ils sont visibles en grisé par le joueur. 
    if $game_switches[2] == true                # Exemple avec un switch : 
      @command_window.disable_item("Ville du desert") # Le choix "Ville du desert" sera grisé 
    end                         # et non selectionnable si le switch 2 est activé 
    
    if $game_variables[66] < 4    # Exemple avec une variable : Le choix "Mines" 
      @command_window.disable_item("Mines")   #  sera grisé et non selectionnable 
    end                          # tant que la variable 66 est inférieur à 4. 
    
    Graphics.transition 
    loop do 
      Graphics.update 
      Input.update 
      update 
      if $scene != self 
        break 
      end 
    end 
    Graphics.freeze 
    @command_window.dispose 
  end 
 
  
  def update 
    @command_window.update 
    if @image_window.active 
      update_image 
    end 
    if @command_window.active 
      update_command 
      return 
    end 
  end 
 
  
  def update_command 
    if Input.trigger?(Input::B) 
      $game_system.se_play($data_system.cancel_se) 
      @bienvenue_window.dispose 
      @image_window.dispose 
      $scene = Scene_Map.new 
      return 
    end 
    if Input.trigger?(Input::C) 
      case @s[@command_window.index] 
      
      ############### Modifications 3 ################ 
      when "Mines"  # Ce qui se passe si le joueur choisit "Mines" 
        if not @command_window.disable_item?("Mines")  # Le choix n'est pas validé s'il est désactivé (grisé). 
          téléportation(2, 1, 1, 2) # téléportation de l'équipe 
# rappel : (id_de_la_map, coordonnée_x, coordonnée_y, direction_du_héros_optionnel) 
        end 
        
      when "Ville du desert" 
        if not @command_window.disable_item?("Ville du desert") 
          téléportation(4, 8, 10) 
        end 
        
      when "Test" 
        if not @command_window.disable_item?("Test") 
          téléportation(2, 1, 1) 
        end 
      end 
      
      if $scene == self  # Si la scene est encore celle-ci, le choix n'était pas bon, donc on 
        $game_system.se_play($data_system.buzzer_se)  # joue un bruit de buzzer 
      else 
        $game_system.se_play($data_system.decision_se)        
      end 
      return 
    end 
  end 
  
  def téléportation(map_id, coord_x, coord_y, héro_direction=0) 
    @bienvenue_window.dispose 
    @image_window.dispose 
    $game_temp.player_transferring = true 
    $game_temp.player_new_map_id = map_id 
    $game_temp.player_new_x = coord_x 
    $game_temp.player_new_y = coord_y 
    $game_temp.player_new_direction = héro_direction 
    Graphics.freeze 
    $game_temp.transition_processing = true 
    $game_temp.transition_name = "" 
    $scene = Scene_Map.new 
  end 
    
  def update_image 
    i =@command_window.index 
    if @ni[i] != nil and i != @vieuxi 
      @image_window.contents = Bitmap.new(400-32, 480-96-32) 
      bitmap = RPG::Cache.picture(@ni[i]) 
      cw = bitmap.width 
      ch = bitmap.height 
      if cw > 368   # Ce qui suit sert à centrer l'image si elle est trop petite ou trop grande. 
        aw = (cw - 368) / 2 
        bw = 0 
      else 
        aw = 0 
        bw = (368 - cw) / 2 
      end 
      if ch > 352 
        ah = (ch - 352) / 2 
        bh =0 
      else 
        ah = 0 
        bh = (352 - ch) / 2 
      end 
      src_rect = Rect.new(aw, ah, cw, ch) 
      @image_window.contents.blt(bw, bh, bitmap, src_rect) 
      @vieuxi = i 
    end 
  end 
  
end
 
#======================================================================= 
# ■ Window_World v0.9 
#-------------------------------------------------------------------------------------------------------------------------------- 
# Ecrit par Krazplay, version la plus à jour disponible sur le forum du site rpgmakerxp.free.fr 
# Nécessite : le scrîpt Scene_Worldmap 
# Toutes les explications sont dans le scrîpt Scene_Worldmap, il ne devrait rien avoir à faire 
# dans celui-ci. 
#======================================================================= 
class Window_World < Window_Selectable 
  def initialize(width, commands) 
    @item_désactivé =[] 
    if commands.size > 11 
      hauteur = 11 
    else 
      hauteur = commands.size 
    end 
    super(0, 0, width, hauteur * 32 + 32) 
    @item_max = commands.size 
    @commands = commands 
    self.contents = Bitmap.new(width - 32, @item_max * 32) 
    self.contents.font.name = $fontface 
    self.contents.font.size = $fontsize 
    refresh 
    self.index = 0 
  end 
 
  def refresh 
    self.contents.clear 
    for i in 0...@item_max 
      draw_item(i, normal_color) 
    end 
  end 
 
  def draw_item(index, color) 
    self.contents.font.color = color 
    rect = Rect.new(4, 32 * index, self.contents.width - 8, 32) 
    self.contents.fill_rect(rect, Color.new(0, 0, 0, 0)) 
    self.contents.draw_text(rect, @commands[index]) 
    @item_désactivé[index] = 0 
  end 
 
  def disable_item(nom) 
    if indexde(nom) != false 
      draw_item(indexde(nom), disabled_color) 
      @item_désactivé[indexde(nom)] = 1 
    end 
  end 
  
  def disable_item?(nom) 
      if @item_désactivé[indexde(nom)] == 1 
        return true 
      else 
        return false 
      end 
  end 
  
  def indexde(nom) 
    for i in 0...@commands.size 
      if @commands[i] == nom 
        return i 
      end 
    end 
    return false 
  end 
  
end




Mis à jour le 12 novembre 2020.






Caesar01 - posté le 20/11/2008 à 17:36:27 (23 messages postés)

❤ 0

Dites moi est-ce quelqu'un peut me dire où se trouve le script

Citation:

Window_world

?
Merci:):help:D

caesar01.miniville.fr/megamagalopole.miniville.fr


steph51300 - posté le 25/01/2009 à 16:43:17 (5 messages postés)

❤ 0

j ai essayé de le fair mai je ne suis pas encore assé qualifié
pour pourvois l utilisé a ai Caesar1 le script commence a
class Scene_Worldmap


Pourquoi - posté le 02/07/2009 à 11:26:30 (24 messages postés)

❤ 0

Projet en cours: The last World

Comme je suis très nul en script, vous pouvez me dire comment on appel ce script?:F
Et sa me met une erreur ligne 221:

Citation:

class Window_World < Window_Selectable

:'(


Raoul - posté le 20/09/2009 à 16:55:47 (10 messages postés)

❤ 0

Bosse sur la prog ruby de son jeu

Pas mal ce script, je vais sans doute l'utiliser pour mon jeu:)

Plus on en saît, plus on comprend qu'on ne saît rien...


--ayoub-- - posté le 27/04/2010 à 21:04:07 (96 messages postés)

❤ 0

C'est moi la meileur

joly script :sourit

78

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 | Forum | Chat | Commentaires | News | Flash-news | Screen de la semaine | Sorties | Tests | Gaming-Live | Interviews | Galerie | OST | Blogs | Recherche
Apprendre: Visite guidée | RPG Maker 95 | RPG Maker 2003 | RPG Maker XP | RPG Maker VX | RPG Maker MV | Tutoriels | Guides | Making-of
Télécharger: Programmes | Scripts/Plugins | Ressources graphiques / sonores | Packs de ressources | Midis | Eléments séparés | Sprites
Jeux: Au hasard | Notre sélection | Sélection des membres | Tous les jeux | Jeux complets | Le cimetière | RPG Maker 95 | RPG Maker 2000 | RPG Maker 2003 | RPG Maker XP | RPG Maker VX | RPG Maker VX Ace | RPG Maker MV | Autres | Proposer
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
Archives: Palmarès | L'Annuaire | Livre d'or | Le Wiki | Divers