Day.png);">
Apprendre


Vous êtes
nouveau sur
Oniromancie?

Visite guidée
du site


Découvrir
RPG Maker

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

Apprendre
RPG Maker

Tutoriels
Guides
Making-of

Dans le
Forum

Section Entraide

Sorties: "Dread Mac Farlane", (...) / Tutos: Checklist de la composition (...) / Sorties: Dread Mac Farlane - episode 8 / Sorties: Dread Mac Farlane - episode 7 / Jeux: Ce qui vit Dessous / Chat

Bienvenue
visiteur !




publicité RPG Maker!

Statistiques

Liste des
membres


Contact

Mentions légales

366 connectés actuellement

29423300 visiteurs
depuis l'ouverture

7527 visiteurs
aujourd'hui



Barre de séparation

Partenaires

Indiexpo

Akademiya RPG Maker

Blog Alioune Fall

Fairy Tail Constellations

Eclipso

RPG Maker - La Communauté

Le Temple de Valor

Zarok

Tous nos partenaires

Devenir
partenaire



forums

Index du forum > Entraide > [RPG Maker XP] Besoin d'aide pour 3 scripts


Voximilien - posté le 27/06/2016 à 14:38:32 (128 messages postés)

❤ 0

Domaine concerné : Script
Logiciel utilisé : RPG Maker XP

Hellow tout le monde !

J'ai trouvé ces 2 scripts très utile, mais avec toutefois des défauts assez gênant. Je ne parviens pas à trouver une solution pour régler ces problèmes. Je vais détailler pour chacun d'entre-eux.


Minuteur en pause [Résolu]

Le script qui met en pause le minuteur peut être appelé à l'aide d'une insertion de script dans un événement via la/les commandes. Cela fonctionne très bien, cependant, lorsque le minuteur est en pause, comme pour lire un dialogue par exemple, ce minuteur disparait visuellement le temps de la pause et réapparaît visuellement une fois que la pause a cessé.

Le problème étant que la pause fonctionne bien, mais le minuteur ne s'affiche plus sur l'écran le temps de cette pause. Y a t-il un moyen de régler ça ?

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
#==============================================================================
# ■ Minuteur en Pause
#
# ■ Par : Shaz
# ■ Modifié par : Bigace360 pour RMXP
#
#==============================================================================
# ■ Insérez un script à l'aide de ces commandes :
#
# $game_system.pause :   Le minuteur est en pause jusqu'à nouvel ordre.
# $game_system.unpause : Le minuteur n'est plus en pause.
#
#==============================================================================
 
class Game_System
  #--------------------------------------------------------------------------
  # * Pause
  #--------------------------------------------------------------------------
  def pause
    @timer_working = false if @timer > 0
  end
  #--------------------------------------------------------------------------
  # * Unpause
  #--------------------------------------------------------------------------
  def unpause
    @timer_working = true if @timer > 0
  end
end


Source du script : http://www.gdunlimited.net/forums/topic/10595-pausing-a-timer-rmxp/




Choix chronométrés

Ensuite, pour celui-ci, je suis équipé du script UMS de Ccoa (la version 1.8.0). Il s'agit d'un script qui impose un temps limite pour faire un choix. L’intérêt, c'est d'avoir 2 minuteurs indépendants l'un de l'autre, si jamais le minuteur principal est déjà activé.

Lorsque qu'un dialogue apparaît, les différents choix apparaissent aussi, le dialogue est censé rester affiché pendant nos choix.

Le problème étant qu'une fois que le dialogue a été passé, les choix apparaissent, mais le dialogue précédent disparaît alors qu'il ne devrait pas.
Pour la position du minuteur à la ligne 55, il ne fonctionne pas non plus pour le changer de place. J'imagine que les lignes 155 et 156 y sont pour quelque chose.

image



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
#=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:
# Timed Choices                                                       Ver 1.01
#   by KK20                                                          [03/06/13]
#=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:
# [ Description ]
# RPG Maker is built with a 'Show Choices' command, giving players a list of
# items to choose from. This script will throw in a timer element, limiting
# players with the amount of time they have to make a decision. Should the timer
# hit zero, the last item highlighted will be selected.
#
# [ Instructions ]
# Place below default scripts and any scripts that modify messages.
# There is very little to configure below.
#
# For events, use the script call
#
#    $game_system.choices_timer = frames
#
# replacing frames with an integer value. The timer counts down in frames. If
# your game is running at 40 frames per second, a value of 400 is equivalent to
# 10 seconds.
#
# The timer will carry on over to the next time choices are given. Thus, if you
# always want the player to have a fresh 5 seconds every time he/she is given
# choices, you will need to use the above script call every time before every
# 'Show Choices' command.
#
# If you wish to disable the timer, use the above script call but set it equal
# to -1.
#
# [ Tips ]
# Should you ever want to store the current timer, you can use this script call:
#
#     $game_variables[id] = $game_system.choices_timer
#
# replacing 'id' with the game variable you wish to use. You can then do
#
#     $game_system.choices_timer = $game_variables[id]
#
# to set the timer back.
#
# [ Compatibility ]
# - Fix for CCoa UMS v1.80 has been made as of v1.01
#
# Be wary of scripts that modify how messages are displayed.
# Aliases Window_Message class methods to ensure best compatibility.
#
# [ Credits ]
# KK20 - For script
#=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:
#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
#                       C O N F I G U R A T I O N
#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
# Determines position of timer window. 0 for left, 1 for center, 2 for right.
POSITION = 0
#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
#                   E N D   C O N F I G U R A T I O N
#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
#==============================================================================
# ** Window_Message
#------------------------------------------------------------------------------
#  This message window is used to display text.
#==============================================================================
 
class Window_Message < Window_Selectable
  attr_reader :choice_window # Ccoa UMS fix
  #--------------------------------------------------------------------------
  # * Object Initialization
  #--------------------------------------------------------------------------
  alias init_choices_timer_window initialize
  def initialize
    init_choices_timer_window
    @timer_window = Window_ChoicesTimer.new(self)
  end
  #--------------------------------------------------------------------------
  # * Dispose
  #--------------------------------------------------------------------------
  alias dispose_timer_window dispose
  def dispose
    dispose_timer_window
    @timer_window.dispose
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  alias update_rest_of_msg_window update
  def update
    @timer_window.adjust_position(self.x,self.y)
    @timer_window.update
    # If choices displayed and timer has hit zero
    if $game_temp.choice_max > 0 and $game_system.choices_timer == 0
      super
      # Revert timer back to -1
      $game_system.choices_timer = -1
      # Force decision based on current item highlighted
      $game_system.se_play($data_system.decision_se)
      # Ccoa UMS fix
      var = defined?(Window_Choice) ? @choice_window.index : self.index
      $game_temp.choice_proc.call(var)
      terminate_message
      return
    end
    # Alias update method
    update_rest_of_msg_window
  end
end
 
#==============================================================================
# ** Game_System
#------------------------------------------------------------------------------
#  Adds another variable @choices_timer
#==============================================================================
class Game_System
  attr_accessor :choices_timer
  alias init_choices_timer initialize
  def initialize
    @choices_timer = -1
    init_choices_timer
  end
end
 
#==============================================================================
# ** Window_ChoicesTimer
#------------------------------------------------------------------------------
#  This window displays the amount of time the player has left to make a choice.
#==============================================================================
class Window_ChoicesTimer < Window_Base
  #--------------------------------------------------------------------------
  # * Object Initialization
  #--------------------------------------------------------------------------
  def initialize(msgwin)
    # Basic initialization variables
    super(0, 0, 64, 48)
    self.contents = Bitmap.new(self.width-32, self.height-32)
    self.visible = false
    self.z = 9998
    @fade_in = false
    @fade_out = false
    self.active = false
    # Assign message window
    self.message_window = msgwin
  end
  #--------------------------------------------------------------------------
  # * Assign message window and make appropriate movements to timer box
  #--------------------------------------------------------------------------
  def message_window=(msgwin)
    @message_window = msgwin
    adjust_position(msgwin.x,msgwin.y)
  end
  #--------------------------------------------------------------------------
  # * Moves the timer box
  #--------------------------------------------------------------------------
  def adjust_position(x,y)
    case POSITION
    when 1 then x = x + (width / 2) - 32
    when 2 then x = x + width - 64
    end
    if y <= 48
      y += height
    else
      y -= 48
    end
    return if [self.x,self.y] == [x,y]
    self.x, self.y = x,y
  end
  #--------------------------------------------------------------------------
  # * Update
  #--------------------------------------------------------------------------
  def update
    super
    # If window is fading in
    if @fade_in
      self.contents_opacity += 24
      if self.contents_opacity == 255
        @fade_in = false
      end
      return
    end
    # If the timer window needs to be displayed, prepare to display it
    if !self.visible and $game_temp.message_text != nil and
    $game_temp.choice_max > 0 and $game_system.choices_timer > 0
      # CCoa UMS fix
      if defined?(Window_Choice)
        return unless @message_window.choice_window.visible
      end
      @fade_in = true
      self.visible = true
      self.contents_opacity = 0
      self.opacity = 255
      self.back_opacity = 160
      # Draw timer
      self.contents.clear
      self.contents.font.size = 16
      sec = $game_system.choices_timer / Graphics.frame_rate
      min = sec / 60
      time = sprintf("%02d:%02d", min, sec)
      self.contents.draw_text(0,-15,self.width,self.height,time)
      return
    end
    # If no longer making choice, fade out window
    if $game_temp.choice_max == 0
      @fade_out = true
      self.opacity -= 48
      self.contents_opacity -= 48
      if self.opacity == 0
        self.visible = false
        @fade_out = false
      end
      return
    end
    # If window is visible, count down timer and draw it to window
    if self.visible
      self.contents.clear
      self.contents.font.size = 16
      sec = $game_system.choices_timer / Graphics.frame_rate
      min = sec / 60
      time = sprintf("%02d:%02d", min, sec)
      self.contents.draw_text(0,-15,self.width,self.height,time)
      $game_system.choices_timer -= 1
    end
  end
end
 


Source du script : http://forum.chaos-project.com/index.php?topic=13182.0




UMS (Saisie d'un code à X chiffres)

Pour celui-ci, je viens juste de m'apercevoir qu'il y a un défaut majeur dans le script et je parviens pas à trouver la source du problème. Quand je souhaite mettre un code à X chiffres, une fois sur le jeu, l'affichage du texte pour saisir le code ne s'affiche pas. Une petite boîte de dialogue apparaît à droite de l'écran, mais vide.

Le problème étant que je peux entendre ma saisie du code, mais impossible de voir le "texte" du code. Donc impossible de savoir quel numéro j'ai pu mettre, ce qui est très gênant.

image


Source du script : http://www.gdunlimited.net/forums/files/file/63-ccoas-ums-18/

Un peu d'aide ne serait pas de refus, merci d'avance aux âmes charitables ! :)



» Liste de scripts | » XP - Options

Index du forum > Entraide > [RPG Maker XP] Besoin d'aide pour 3 scripts

repondre up

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