Bienvenue visiteur !
|
Statistiques
Liste des membres
Contact
Mentions légales
316 connectés actuellement
30742222 visiteurs depuis l'ouverture
2595 visiteurs aujourd'hui
Partenaires
Tous nos partenaires
Devenir partenaire
|
Messages postés par Deadpool98 Nombre de messages référencés sur Oniromancie (non supprimés): 45 Aller à la page: 1 2
Posté dans Forum - [RPG Maker VX] Problème dimensionnement sprites |
DeadPool98 -
posté le 06/05/2017 à 12:00:55. (47 messages postés) |
| Si justement: le logiciel ne fait que couper les sprites et iconsets.
Ainsi, pour ton sprite qui est trop grand, tu devra juste créer une image plus grande.
Si ton sprite fait 640*720, l'image que tu importera dans rmva fera 640*4=2560 en largeur et
720*2=1440!
Pour les icones, je crois que c'est différents...
Ton image finale doit comporter 16 icones en largeur et 39 en hauteur (j'ai calculé d'après l'iconset de base)
Donc si tu prépare des icones de 10*10, ton iconset que tu importera mesurera 16*10=160 pixel de largeur
et 39*10=390 pixel de hauteur!
Ravis d'avoir pu t'aider
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - [RPG Maker VX] Problème dimensionnement sprites |
DeadPool98 -
posté le 06/05/2017 à 09:34:34. (47 messages postés) |
| Oui, mais comme je te l'ai dit, tu ne peux pas directement importer
tes sprites dans rmva!
Tu doit créer une image avec ces dimensions:
largeur=4*largeur de ton sprite
hauteur=2*hauteur de ton sprite
Je vois sur l'image que tu as mis en lien que tes sprites font du 32*32 seul
et donc du 96*128 en comptant les frames d'animation et les 4 directions.
Si tous tes autres sprites (Annie, Ashes, etc...) font aussi 32*32 en individuel
et du 96*128 en groupé, alors tu doit créer une plus grande image de
dimenssion 96*4=384 pixels en largeur et 128*2=256 pixels en hauteur.
Ensuite, tu prends tes sprites 1 à 1 et tu les ranges dans cette image.
(Pour bien te repérer, tu place ton premier sprite dans le coin haut gauche)
A la fin, l'image des sprites que tu importera dans RMVA sera de cette forme-ci:
http://i.imgur.com/BX0MbP8.png
Rmva effectue ensuite son découpage lui même en coupant l'image
par 4 en largeur et par 2 en hauteur
Si t'as pas compris hésite pas à redemmander
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - [RPG Maker VX] Problème dimensionnement sprites |
DeadPool98 -
posté le 04/05/2017 à 21:58:37. (47 messages postés) |
| Salut!
Normalement sous Vx Ace, les sprites doivent être dans une image tel que:
-Un spriteset soit divisible par 3 en largeur (pour les 3 frames d'animation) et par 4 en hauteur
(pour les 4 directions)
Voilà ce que je considère comme étant un sprite set
-Ce spriteset soit placé dans une image comportant 4 spriteset en largeur et 2 en hauteur
(ils doivent bien évidement tous avoir les mêmes dimensions)
Voilà une image directement utilisable pour RMVA
Par exemple:
Si ton personnage fait 32*32 (largeur*hauteur) -> Son spriteset fera 32*3=96 pixels de largeur
et 32*4=128 pixels de hauteur.
Ce spriteset ne pourra pas directement être importé dans Vx Ace, tu devra avant le mettre dans une image
pouvant comporter 4 spritesets en largeur et en hauteur.
Dans notre cas, ton image importable vers RMVA fera 96*4=384 pixels de largeur et 128*2=256 pixels
de hauteur!
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - [GameMaker] [RPG maker- like] cherche graphiste pour projet |
DeadPool98 -
posté le 04/05/2017 à 00:32:19. (47 messages postés) |
| Bon ben... si tu m'laisse le choix alors je veux bien par mail ^^
J'ai upload de nouveaux screen dans ma galerie si ça t'intéresse!
Pense à m'envoyer par mail le type de graphismes que tu aimerais avoir, qu'on en discute un peu.
Bonne soirée!
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - [GameMaker] [RPG maker- like] cherche graphiste pour projet |
DeadPool98 -
posté le 03/05/2017 à 22:57:39. (47 messages postés) |
| Salut Yozamu!
Pourrais-je en savoir un peu plus sur ton projet?
Si tu veux savoir, je m'amuse à créer mes propres graphismes pour RMVA
et je viens de me lancé sur Game Maker récemment.
Ils sont très très simple, vraiment du pixel art basique, mais j'aime bien ^^
Je posterais de trois screen si j'en retrouve.
Tiens-moi au courant
(Regarde dans ma Galerie, j'avais déjà posté deux screens l'année dernière)
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - [Rpg maker vx ACE] Jauge multiple |
DeadPool98 -
posté le 23/12/2016 à 20:44:51. (47 messages postés) |
| Je pense qu'en recopiant ton script et en changeant l'ensemble des variables
qu'il comporte de façon explicite il y aurait effectivement moyen d'avoir une deuxième barre.
J'avais un script où je voulais ajouter quelque chose de semblable à ce que tu cherche: j'ai fais ce que je t'ai dit, et ne m'y connaissant pas en ruby j'ai mis quasiment une bonne heure.
Attention quand même de changer le positionnement sur l'axe des y de ta nouvelle barre!
Je vais voir si je peux faire quelque chose
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - [Rpg Maker Vx Ace] Police d'écriture Nette? |
DeadPool98 -
posté le 23/12/2016 à 14:57:41. (47 messages postés) |
| J'imagine que tu vois ce que je veux dire... mais il s'agit d'un projet sous XP...
Et j'aurais besoin d'une version du script pour VX Ace...
Si une âme charitable pouvait m'aider
PS: je cherche encore en contactant des personnes sur les forum anglais. J'essayerais de le replacer dans la partie script d'Oniro
PS*: Je tiens peut-être une piste: http://www.rpgmakercentral.com/topic/442-ve-sfonts/
Il y a un long script qui est donné. Je sais pas si c'est celui là...
Bon, j'ai retrouvé le script et j'ai lu son fonctionnement. Je l'ai essayé, mais il me déclare une erreur
Voici d'abord les scripts:
Le Victor Engine (pour faire fonctionner l'ensemble de ses scripts)
https://drive.google.com/file/d/0B0cSp2lASM9wTEhkS3Jjc1N1NjQ/view
Et le Victor SFont (the script)
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
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
| #==============================================================================
# ** Victor Engine - SFont
#------------------------------------------------------------------------------
# Author : Victor Sant
#
# Aditional Credit :
# - RubyGame (Original Concept)
# - Trickster (RubyGame SFont conversion to RPG Maker)
#
# Version History:
# v 1.00 - 2011.12.21 - First relase
#------------------------------------------------------------------------------
# This script allows the use of SFonts. SFonts is a image file that replaces
# the normal font.
#
# What are SFonts? (from http://rubygame.org/docs/)
# SFont is a type of bitmapped font, which is loaded from an image file with
# a meaningful top row of pixels, and the font itself below that. The top row
# provides information about what parts of of the lower area contains font
# data, and which parts are empty. The image file should contain all of the
# glyphs on one row, with the colorkey color at the bottom-left pixel and the
# "skip" color at the top-left pixel.
#
#------------------------------------------------------------------------------
# Compatibility
# Requires the script 'Victor Engine - Basic Module'
#
# * Overwrite methods
# None
#
# * Alias methods
# class Bitmap
# def draw_text
# def text_size(str)
#
# class << DataManager
# def create_game_objects
#
# class Sprite_Timer < Sprite
# def create_bitmap
#
# class Window_Base < Window
# def create_contents
# def text_color(n)
#
#------------------------------------------------------------------------------
# Instructions:
# To instal the script, open you script editor and paste this script on
# a new section on bellow the Materials section. This script must also
# be bellow the script 'Victor Engine - Basic'
# The SFonts must be placed on the folder "Graphics/SFonts". Create a folder
# named "SFonts" on the Graphics folder.
#
#------------------------------------------------------------------------------
# Additional instructions:
#
# On the SFont, the first pixel on the top left corner is considered the
# "skip color", so, anywhere that this color appears on the first row
# the part will be skiped, so use it to define the limit from each
# character. At first it might be hard to get how it work.
#
# If the constant ALL_SFONT is true, all fonts in all windows will be
# replaced with SFonts, if false, you will need to add them manually
# in the code (not recomended for begginers).
#
# The method "text_color(n)" from Window_Base can be used to change
# the SFont, where n is the SFont index on the SFONT_NAMES array.
# (Remember that indexes starts at 0, not at 1)
# Text on independent bitmaps (outside windows) will need to be changed
# manually on the code.
#
# The system colors can be changed on the Window_Base class, on the
# following methods. Replace the number in text_color(x) with the index
# of the color SFont on the SFONT_NAMES array.
# def normal_color; text_color(0); end;
# def system_color; text_color(16); end;
# def crisis_color; text_color(17); end;
# def knockout_color; text_color(18); end;
# def gauge_back_color; text_color(19); end;
# def hp_gauge_color1; text_color(20); end;
# def hp_gauge_color2; text_color(21); end;
# def mp_gauge_color2; text_color(23); end;
# def mp_gauge_color1; text_color(22); end;
# def mp_cost_color; text_color(23); end;
# def power_up_color; text_color(24); end;
# def power_down_color; text_color(25); end;
# def tp_gauge_color1; text_color(28); end;
# def tp_gauge_color2; text_color(29); end;
# def tp_cost_color; text_color(29); end;
# If you don't feel like changing the default scripts just create a new
# script on the Materials section for the class Window_Base and add these
# medthods.
#
#==============================================================================
#==============================================================================
# ** Victor Engine
#------------------------------------------------------------------------------
# Setting module for the Victor Engine
#==============================================================================
module Victor_Engine
#--------------------------------------------------------------------------
# * Set the use of SFonts for all windows
# If true all windows will use SFonts automatically, if false
# you must set them manually
#--------------------------------------------------------------------------
VE_ALL_SFONT = true
#--------------------------------------------------------------------------
# * Set SFonts
# Set here the name of the SFonts that will be used, add how many
# SFont names you want. Refer to the SFont bitmap with $sfont[index]
#--------------------------------------------------------------------------
VE_SFONT_NAMES = ["Arial White", "Arial Red", "Arial Blue", "Arial Green",
"Arial Yellow", "Arial Gray"]
#--------------------------------------------------------------------------
# * Set the digit list
# The order of the digits here define the order of of the digits on
# the image file, make sure to follow the same order or the text
# in game might be totally screwed.
# You can add how many characters you want, even complex character.
# the character here doesn't need to be exactly the same from the
# image file so you can use special characters to show icons and such.
#--------------------------------------------------------------------------
VE_SFONT_DIGITS = ["!",'"',"#","$","%","&","'","(",")","*","+",",","-",".",
"/","0","1","2","3","4","5","6","7","8","9",":",";","<","=",">","?","@","A",
"B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T",
"U","V","W","X","Y","Z","[","\\","]","^","_","`","a","b","c","d","e","f","g",
"h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z",
"{","|","}","~"]
end
$imported[:ve_sfonts] = true
#==============================================================================
# ** Cache
#------------------------------------------------------------------------------
# This module loads each of graphics, creates a Bitmap object, and retains it.
# To speed up load times and conserve memory, this module holds the created
# Bitmap object in the internal hash, allowing the program to return
# preexisting objects when the same bitmap is requested again.
#==============================================================================
module Cache
#--------------------------------------------------------------------------
# * New method: sfont
#--------------------------------------------------------------------------
def self.sfont(filename, hue = 0)
self.load_bitmap("Graphics/SFonts/", filename, hue)
end
end
#==============================================================================
# ** Bitmap
#------------------------------------------------------------------------------
# This class handles and draws the bitmaps
#==============================================================================
class Bitmap
#--------------------------------------------------------------------------
# * Public Instance Variables
#--------------------------------------------------------------------------
attr_accessor :sfont
#--------------------------------------------------------------------------
# * Alias method: draw_text
#--------------------------------------------------------------------------
alias :draw_text_ve_sfont :draw_text
def draw_text(*args)
sfont ? draw_sfont_text(*args) : draw_text_ve_sfont(*args)
end
#--------------------------------------------------------------------------
# * Alias method: draw_sfont_text
#--------------------------------------------------------------------------
def draw_sfont_text(*args)
is_rect = args[0].is_a?(Rect)
x = is_rect ? args[0].x : args[0]
y = is_rect ? args[0].y : args[1]
width = is_rect ? args[0].width : args[2]
height = is_rect ? args[0].height : args[3]
text = is_rect ? args[1].to_s : args[4].to_s
align = is_rect ? args[2] : args[5]
bitmap = sfont.draw_text(text)
x += width - bitmap.width if align == 2
x += (width - bitmap.width) / 2 if align == 1
y += (height - bitmap.height) / 2 - 4
blt(x, y, bitmap, bitmap.rect)
end
#--------------------------------------------------------------------------
# * Alias method: text_size
#--------------------------------------------------------------------------
alias :text_size_ve_sfont :text_size
def text_size(text)
sfont ? sfont.text_size(text) : text_size_ve_sfont(text)
end
end
#==============================================================================
# ** DataManager
#------------------------------------------------------------------------------
# This module handles the game and database objects used in game.
# Almost all global variables are initialized on this module
#==============================================================================
class << DataManager
#--------------------------------------------------------------------------
# * Alias method: create_game_objects
#--------------------------------------------------------------------------
alias :create_game_objects_ve_sfont :create_game_objects
def create_game_objects
create_game_objects_ve_sfont
create_sfonts
end
#--------------------------------------------------------------------------
# * New method: create_sfonts
#--------------------------------------------------------------------------
def create_sfonts
$sfont = VE_SFONT_NAMES.collect {|name| SFont.new(name)}
end
end
#==============================================================================
# ** Sprite_Timer
#------------------------------------------------------------------------------
# This sprite is used to display the timer. It observes the $game_system
# and automatically changes sprite conditions.
#==============================================================================
class Sprite_Timer < Sprite
#--------------------------------------------------------------------------
# * Alias method: create_bitmap
#--------------------------------------------------------------------------
alias :create_bitmap_ve_sfont :create_bitmap
def create_bitmap
create_bitmap_ve_sfont
self.bitmap.sfont = $sfont[0] if VE_ALL_SFONT
end
end
#==============================================================================
# ** Window_Base
#------------------------------------------------------------------------------
# This is a superclass of all windows in the game.
#==============================================================================
class Window_Base < Window
#--------------------------------------------------------------------------
# * Alias method: create_contents
#--------------------------------------------------------------------------
alias :create_contents_ve_sfont :create_contents
def create_contents
create_contents_ve_sfont
contents.sfont = $sfont[0] if VE_ALL_SFONT
end
#--------------------------------------------------------------------------
# * Alias method: text_color
#--------------------------------------------------------------------------
alias :text_color_ve_sfont :text_color
def text_color(n)
sfont(n)
text_color_ve_sfont(n)
end
#--------------------------------------------------------------------------
# * Alias method: change_color
#--------------------------------------------------------------------------
alias :change_color_ve_sfont :change_color
def change_color(color, enabled = true)
change_color_ve_sfont(color, enabled)
contents.sfont.alpha = enabled ? 255 : translucent_alpha
end
#--------------------------------------------------------------------------
# * New method: sfont
#--------------------------------------------------------------------------
def sfont(n)
return if !contents.sfont
contents.sfont = $sfont[n] ? $sfont[n] : $sfont[0]
end
end
#==============================================================================
# ** SFont
#------------------------------------------------------------------------------
# This class handles the SFonts
#==============================================================================
class SFont
#--------------------------------------------------------------------------
# * Public Instance Variables
#--------------------------------------------------------------------------
attr_reader :bitmap
attr_accessor :alpha
#--------------------------------------------------------------------------
# * initialize
#--------------------------------------------------------------------------
def initialize(name)
@bitmap = Cache.sfont(name)
@height = @bitmap.height + 4
@skip = @bitmap.get_pixel(0, 0)
@digits = VE_SFONT_DIGITS
@alpha = 255
@values = {}
@values[" "] = Rect.new(-12, 0, 12, @height)
setup_digits
@values.default = @values[" "]
end
#--------------------------------------------------------------------------
# * setup_digits
#--------------------------------------------------------------------------
def setup_digits
x1 = x2 = 0
@digits.each do |digit|
x1 += 1 while @bitmap.get_pixel(x1, 0) == @skip && x1 < @bitmap.width
x2 = x1
x2 += 1 while @bitmap.get_pixel(x2, 0) != @skip && x2 < @bitmap.width
@values[digit] = Rect.new(x1, 0, x2 - x1, @height)
x1 = x2
end
end
#--------------------------------------------------------------------------
# * text_size
#--------------------------------------------------------------------------
def text_size(text)
size = 0
text.split("").each {|i| size += @values[i].width}
rect = Rect.new(0, 0, size, @height)
rect
end
#--------------------------------------------------------------------------
# * draw_text
#--------------------------------------------------------------------------
def draw_text(text)
width = [text_size(text).width, 1].max
bitmap = Bitmap.new(width, @height)
x = 0
text.split("").each do |i|
bitmap.blt(x, 4, @bitmap, @values[i], @alpha)
x += @values[i].width
end
bitmap
end
#--------------------------------------------------------------------------
# * dispose
#--------------------------------------------------------------------------
def dispose
return if !@bitmap || @bitmap.disposed?
@bitmap.dispose
end
end |
Je l'ai essayé mais je me suis surement foiré quelque par (j'ai une erreur comme quoi il ne peut pas créer de bitmap)
Si vous arrivez à le faire fonctionner, je veux bien savoir comment vous vous y êtes pris...
Bonne après midi à tous!
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - Screenshots de vos jeux ! |
DeadPool98 -
posté le 23/12/2016 à 11:03:46. (47 messages postés) |
| Hey!Tes Screen sont vraiment sympathiques!
Je pense qu'il faudrais quand même que tu fasse des contours
plus épais au joueur car sinon il se font trop dans le décor...
Bon après c'est un personnage test...
Sinon, j'aime bien le petit nuage avec le visage ^^
Bonne continuation
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - [Rpg Maker Vx Ace] Police d'écriture Nette? |
DeadPool98 -
posté le 23/12/2016 à 10:50:16. (47 messages postés) |
| Salut Verehn!
Alors pour les dialogues en bulles j'utilise ce script:
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
| #==============================================================================
#
# ¥ Yami Engine Ace - Basic Module
# -- Last Updated: 2012.04.27
# -- Level: Nothing
# -- Requires: n/a
#
#==============================================================================
$imported = {} if $imported.nil?
$imported["YSE-BasicModule"] = true
#==============================================================================
# ¥ Updates
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# 2012.04.27 - Added Notetags Initializer.
# 2012.03.24 - Added Parse Range Keys.
# 2012.03.17 - Updated Load Data Method.
# 2012.03.13 - Remove requirements mechanic.
# 2012.03.11 - Change in requirements mechanic.
# 2012.03.02 - Added Message Box.
# 2012.03.01 - Started and Finished Script.
#
#==============================================================================
# ¥ Introduction
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# This script provides many methods for Yami Engine Ace.
#
#==============================================================================
# ¥ Instructions
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# To install this script, open up your script editor and copy/paste this script
# to an open slot below ¥ Materials/‘fÞ but above ¥ Main. Remember to save.
#
#==============================================================================
# ¥ Compatibility
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# This script is made strictly for RPG Maker VX Ace. It is highly unlikely that
# it will run with RPG Maker VX without adjusting.
#
#==============================================================================
#==============================================================================
# ¥ Configuration
#==============================================================================
module YSE
#=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
# - External Data Configuration -
#=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
DATA_CONFIGURATION = { # Start here.
:ext => "rvdata2", # Data File Extension.
:salt => "cl", # Salt. Make an unique two-character phrase.
# Must be 2 characters.
:unique => "z8x8273ac", # Unique phrase. Must be at least 1 character.
:comp_level => 9, # Level from 1 to 9. Best Speed at 1, Best
# Compress at 9.
} # Do not delete this.
end
#==============================================================================
# ¥ Editting anything past this point may potentially result in causing
# computer damage, incontinence, explosion of user's head, coma, death, and/or
# halitosis so edit at your own risk.
#==============================================================================
#==============================================================================
# ¡ YSE - Basic Module
#==============================================================================
module YSE
#--------------------------------------------------------------------------
# message_box
#--------------------------------------------------------------------------
def self.message_box(title, message)
api = Win32API.new('user32','MessageBox',['L', 'P', 'P', 'L'],'I')
api.call(0,message,title,0)
end
#--------------------------------------------------------------------------
# charset
#--------------------------------------------------------------------------
def self.charset
result = "abcdefghjkmnpqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ0123456789"
result
end
#--------------------------------------------------------------------------
# make_random_string
#--------------------------------------------------------------------------
def self.make_random_string(length = 6)
result = ""
while result.size < length
result << charset[rand(charset.size)]
end
result
end
#--------------------------------------------------------------------------
# make_filename
#--------------------------------------------------------------------------
def self.make_filename(filename, dir = "")
ext = DATA_CONFIGURATION[:ext]
result = "#{dir}/#{filename}.#{ext}"
result
end
#--------------------------------------------------------------------------
# compress_data
#--------------------------------------------------------------------------
def self.compress_data(data, comp_level = nil)
compress_level = comp_level.nil? ? DATA_CONFIGURATION[:comp_level] : comp_level
result = Zlib::Deflate.deflate(Marshal.dump(data), compress_level)
result
end
#--------------------------------------------------------------------------
# decompress_data
#--------------------------------------------------------------------------
def self.decompress_data(data)
result = Zlib::Inflate.inflate(Marshal.load(data))
result
end
#--------------------------------------------------------------------------
# make_hash
#--------------------------------------------------------------------------
def self.make_hash(string = "")
salt = DATA_CONFIGURATION[:salt]
result = string.crypt(salt)
result = result + DATA_CONFIGURATION[:unique]
result
end
#--------------------------------------------------------------------------
# save_data
#--------------------------------------------------------------------------
def self.save_data(filename, data_hash)
File.open(filename, "wb") do |file|
Marshal.dump(compress_data(data_hash), file)
end
return true
end
#--------------------------------------------------------------------------
# save_data
#--------------------------------------------------------------------------
def self.load_data(filename, method, index = 0, ext = nil)
File.open(filename, "rb") do |file|
index.times { Marshal.load(file) }
if ext
case ext
when :mtime
method.call(Marshal.load(decompress_data(file)), file.mtime)
end
else
method.call(Marshal.load(decompress_data(file)))
end
end
return true
end
#--------------------------------------------------------------------------
# parse_range
#--------------------------------------------------------------------------
def self.parse_range(hash)
result = {}
hash.each { |key, value|
if key.is_a?(Range)
key.each { |id| result[id] = value }
else
result[key] = value
end
}
result
end
#--------------------------------------------------------------------------
# patch_start
#--------------------------------------------------------------------------
def self.patch_start
return unless $imported["YSE-PatchSystem"]
SceneManager.call(Scene_Patch_YSE)
end
end # YSE - Basic Module
#==============================================================================
# ¡ DataManager
#==============================================================================
module DataManager
#--------------------------------------------------------------------------
# alias method: load_database
#--------------------------------------------------------------------------
class <<self; alias load_database_yebm load_database; end
def self.load_database
load_database_yebm
load_notetags_ye
end
#--------------------------------------------------------------------------
# new method: load_notetags_ye
#--------------------------------------------------------------------------
def self.load_notetags_ye
groups = [$data_actors, $data_classes, $data_skills, $data_items, $data_weapons,
$data_armors, $data_enemies, $data_states]
groups.each { |group|
group.each { |obj|
next if obj.nil?
obj.notetags_initialize
}
}
end
end # DataManager
#==============================================================================
# ¡ RPG::BaseItem
#==============================================================================
class RPG::BaseItem
#--------------------------------------------------------------------------
# new method: notetags_initialize
#--------------------------------------------------------------------------
def notetags_initialize
@notelines = []
#---
self.note.split(/[\r\n]+/).each { |line|
@notelines.push(line)
} # self.note.split
#---
notetags_reader
end
#--------------------------------------------------------------------------
# new method: notetags_reader
#--------------------------------------------------------------------------
def notetags_reader
# Reading Notetags.
end
end # RPG::BaseItem
#==============================================================================
# ¡ System Errors
#==============================================================================
if YSE::DATA_CONFIGURATION[:salt].size < 2
YSE.message_box("YSE - Basic Module", "Salt must have at least 2 characters.")
exit
end
if YSE::DATA_CONFIGURATION[:unique].size < 1
YSE.message_box("YSE - Basic Module", "Unique phrase must have at least 1 character.")
exit
end
#==============================================================================
#
# ¥ End of File
#
#============================================================================== |
Il est en deux partie... désolé pour la taille...
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
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
|
#==============================================================================
#
# ¥ Yami Engine Ace - Pop Message
# -- Last Updated: 2012.06.07
# -- Level: Normal
# -- Requires: n/a
#
#==============================================================================
$imported = {} if $imported.nil?
$imported["YSE-PopMessage"] = true
#==============================================================================
# ¥ Updates
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# 2012.06.07 - Fixed Compatible: YEA - Ace Message System.
# 2012.05.11 - Fixed Message Position.
# - Remove Requirement: YSE - Fix Events Order.
# 2012.05.07 - Fixed Face position.
# - Added Requirement: YSE - Fix Events Order.
# 2012.04.06 - You can change Bubble Tag filename.
# 2012.03.28 - Fixed Default Message Position and Sizes.
# 2012.03.27 - Fixed Default Message.
# 2012.03.27 - Added Bubble Tag.
# 2012.03.25 - Fixed Escape Message.
# 2012.03.24 - Fixed Battle Message.
# 2012.03.24 - Rewrote script.
#
#==============================================================================
# ¥ Instructions
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# To install this script, open up your script editor and copy/paste this script
# to an open slot below ¥ Materials/‘fÞ but above ¥ Main. Remember to save.
#
# -----------------------------------------------------------------------------
# Message Window text Codes - These go inside of your message window.
# -----------------------------------------------------------------------------
# Position: Effect:
# \bm[x] - Sets Message Window position to event x. *Note
# \cbm - Cancel bubble message.
#
# *Note: Set to 0 to sets position to Game Player.
#
#==============================================================================
# ¥ Compatibility
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# This script is made strictly for RPG Maker VX Ace. It is highly unlikely that
# it will run with RPG Maker VX without adjusting.
#
#==============================================================================
module YSE
module POP_MESSAGE
#=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
# - Visual Settings -
#=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
LIMIT = { # Start.
:limit_width => 0, # Set to 0 to disable limit.
:limit_line => 6, # Set to 0 to disable limit.
} # End.
POSITION = { # Start.
:x_buffer => 0,
:y_buffer => -36,
:face_x_buffer => 8,
:face_y_buffer => 24,
:tag_y_buffer => -6,
:name_x_buffer => 112, # Require YEA - Message System.
} # End.
EFFECT = { # Start.
:fade_face => true,
:move_face => true,
:use_bubble_tag => true,
:bubble_tag_name => "BubbleTag",
} # End.
end
end
#==============================================================================
# ¥ Editting anything past this point may potentially result in causing
# computer damage, incontinence, explosion of user's head, coma, death, and/or
# halitosis so edit at your own risk.
#==============================================================================
#==============================================================================
# ¡ Spriteset_Map
#==============================================================================
class Spriteset_Map
#--------------------------------------------------------------------------
# public instance variables
#--------------------------------------------------------------------------
attr_accessor :character_sprites
end # Spriteset_Map
#==============================================================================
# ¡ Window_Message_Face
#==============================================================================
class Window_Message_Face < Window_Base
#--------------------------------------------------------------------------
# initialize
#--------------------------------------------------------------------------
def initialize
super(0, 0, 120, 255)
self.opacity = 0
@face_name = ""
@face_index = 0
@move_x = 0
close
end
#--------------------------------------------------------------------------
# message_window=
#--------------------------------------------------------------------------
def message_window=(window)
@message_window = window
end
#--------------------------------------------------------------------------
# set_face
#--------------------------------------------------------------------------
def set_face
contents.clear
return unless @message_window
if !$game_message.face_name.empty?
draw_face($game_message.face_name, $game_message.face_index, 0, 0)
set_position
show_face
else
hide_face
end
end
#--------------------------------------------------------------------------
# set_position
#--------------------------------------------------------------------------
def set_position
return unless @message_window
self.x = @message_window.x
self.y = @message_window.y - 96
self.x += YSE::POP_MESSAGE::POSITION[:face_x_buffer]
self.y += YSE::POP_MESSAGE::POSITION[:face_y_buffer]
self.y += (@message_window.real_lines - 1) * 24
self.z = @message_window.z + 1
if (@face_name != $game_message.face_name || @face_index != $game_message.face_index)
if YSE::POP_MESSAGE::EFFECT[:move_face]
@move_x = 30
self.x -= 30
end
@face_name = $game_message.face_name
@face_index = $game_message.face_index
self.contents_opacity = 0 if YSE::POP_MESSAGE::EFFECT[:fade_face]
end
end
#--------------------------------------------------------------------------
# show_face
#--------------------------------------------------------------------------
def show_face
open
end
#--------------------------------------------------------------------------
# hide_face
#--------------------------------------------------------------------------
def hide_face
contents.clear
close
end
#--------------------------------------------------------------------------
# update
#--------------------------------------------------------------------------
def update
super
self.contents_opacity += 15 if self.contents_opacity < 255
unless @move_x <= 0
self.x += 2
@move_x -= 2
end
end
end # Sprite_Message_Face
#==============================================================================
# ¡ Window_Message
#==============================================================================
class Window_Message < Window_Base
#--------------------------------------------------------------------------
# new method: face_window=
#--------------------------------------------------------------------------
def face_window=(window)
@face_window = window
end
#--------------------------------------------------------------------------
# new method: bubble_tag=
#--------------------------------------------------------------------------
def bubble_tag=(sprite)
@bubble_tag = sprite
end
#--------------------------------------------------------------------------
# new method: message_escape_characters_pop_message
#--------------------------------------------------------------------------
def message_escape_characters_pop_message(result)
result.gsub!(/\eBM\[(\d+)\]/i) { event_pop_message_setup($1.to_i, false) }
result.gsub!(/\eBMF\[(\d+)\]/i) { event_pop_message_setup($1.to_i, true) }
result.gsub!(/\eCBM/i) { event_pop_message_setup(nil, false) }
result
end
#--------------------------------------------------------------------------
# alias method: convert_escape_characters
#--------------------------------------------------------------------------
alias yse_convert_escape_characters_pm convert_escape_characters
def convert_escape_characters(text)
result = yse_convert_escape_characters_pm(text)
result = message_escape_characters_pop_message(result)
result
end
#--------------------------------------------------------------------------
# new method: event_pop_message_setup
#--------------------------------------------------------------------------
def event_pop_message_setup(event_id, follower = false)
if follower && $game_player.followers[event_id].nil?
@event_pop_id = nil
@event_pop_follower = false
return ""
end
@event_pop_follower = follower
@event_pop_id = event_id
return ""
end
#--------------------------------------------------------------------------
# new method: set_face_position
#--------------------------------------------------------------------------
def set_face_position
return unless SceneManager.scene_is?(Scene_Map)
return unless @event_pop_id
return unless @face_window
contents.clear
@face_window.set_face
return unless $imported["YEA-MessageSystem"]
return if @face_window.close?
#@name_window.x = self.x + YSE::POP_MESSAGE::POSITION[:face_x_buffer] + YSE::POP_MESSAGE::POSITION[:name_x_buffer] if (@name_position == 1 || @name_position == 2)
end
#--------------------------------------------------------------------------
# alias method: new_page
#--------------------------------------------------------------------------
alias window_message_new_page_pm_yse new_page
def new_page(text, pos)
window_message_new_page_pm_yse(text, pos)
set_face_position
end
#--------------------------------------------------------------------------
# alias method: close
#--------------------------------------------------------------------------
alias pop_message_close close
def close
pop_message_close
return unless SceneManager.scene_is?(Scene_Map)
return unless @event_pop_id
@event_pop_id = nil
@event_pop_follower = false
@face_window.hide_face
return unless YSE::POP_MESSAGE::EFFECT[:use_bubble_tag]
@bubble_tag.visible = false if @bubble_tag
end
#--------------------------------------------------------------------------
# alias method: open_and_wait
#--------------------------------------------------------------------------
alias pop_message_open_and_wait open_and_wait
def open_and_wait
pop_message_open_and_wait
return unless YSE::POP_MESSAGE::EFFECT[:use_bubble_tag]
@bubble_tag.visible = true if @event_pop_id && @bubble_tag
end
#--------------------------------------------------------------------------
# alias method: process_all_text
#--------------------------------------------------------------------------
alias pop_message_process_all_text process_all_text
def process_all_text
@event_pop_id = nil
convert_escape_characters($game_message.all_text)
update_placement
adjust_pop_message($game_message.all_text)
pop_message_process_all_text
end
#--------------------------------------------------------------------------
# alias method: update_placement
#--------------------------------------------------------------------------
alias event_pop_message_update_placement update_placement
def update_placement
if SceneManager.scene_is?(Scene_Map)
if @event_pop_id.nil?
fix_default_message
event_pop_message_update_placement
elsif @event_pop_id == 0
character = $game_player
self.y = character.screen_y - self.height + YSE::POP_MESSAGE::POSITION[:y_buffer]
self.x = character.screen_x - self.width / 2 + YSE::POP_MESSAGE::POSITION[:x_buffer]
fix_position_bubble(character)
set_bubble_tag(character)
elsif @event_pop_id > 0
hash = @event_pop_follower ? $game_player.followers : $game_map.events
character = hash[@event_pop_id]
self.y = character.screen_y - self.height + YSE::POP_MESSAGE::POSITION[:y_buffer]
self.x = character.screen_x - self.width / 2 + YSE::POP_MESSAGE::POSITION[:x_buffer]
fix_position_bubble(character)
set_bubble_tag(character)
end
else
event_pop_message_update_placement
end
end
#--------------------------------------------------------------------------
# new method: fix_default_message
#--------------------------------------------------------------------------
def fix_default_message
self.width = window_width
self.height = window_height
self.x = 0
@face_window.hide_face if @face_window
create_contents
return unless YSE::POP_MESSAGE::EFFECT[:use_bubble_tag]
@bubble_tag.visible = false if @bubble_tag
end
#--------------------------------------------------------------------------
# new method: fix_position_bubble
#--------------------------------------------------------------------------
def fix_position_bubble(character)
end_x = self.x + self.width
end_y = self.y + self.height
self.x = 0 if self.x < 0
self.y = character.screen_y if self.y < 0
self.x = Graphics.width - self.width if end_x > Graphics.width
self.y = Graphics.height - self.height if end_y > Graphics.height
end
#--------------------------------------------------------------------------
# new method: set_bubble_tag
#--------------------------------------------------------------------------
def set_bubble_tag(character)
return unless YSE::POP_MESSAGE::EFFECT[:use_bubble_tag]
return unless @bubble_tag
up = self.y == character.screen_y
self.y += up ? @bubble_tag.height / 2 : -@bubble_tag.height / 2
@bubble_tag.x = character.screen_x - @bubble_tag.width / 2
if up
@bubble_tag.src_rect.set(0, @bubble_tag.height, @bubble_tag.width, @bubble_tag.height)
@bubble_tag.y = self.y - @bubble_tag.height - YSE::POP_MESSAGE::POSITION[:tag_y_buffer]
else
@bubble_tag.src_rect.set(0, 0, @bubble_tag.width, @bubble_tag.height)
@bubble_tag.y = self.y + self.height + YSE::POP_MESSAGE::POSITION[:tag_y_buffer]
end
end
#--------------------------------------------------------------------------
# new method: cal_number_line
#--------------------------------------------------------------------------
def cal_number_line(text)
result = 0
text.each_line { result += 1 }
return result
end
#--------------------------------------------------------------------------
# new method: cal_width_line
#--------------------------------------------------------------------------
def cal_width_line(text)
result = 0
text.each_line { |line|
result = text_size(line).width if result < text_size(line).width
}
return result
end
#--------------------------------------------------------------------------
# alias method: adjust_message_window_size
#--------------------------------------------------------------------------
if $imported["YEA-MessageSystem"]
alias yse_pop_message_adjust_message_window_size adjust_message_window_size
def adjust_message_window_size
start_name_window if @event_pop_id
return if @event_pop_id
yse_pop_message_adjust_message_window_size
end
end
#--------------------------------------------------------------------------
# new method: adjust_pop_message
#--------------------------------------------------------------------------
def adjust_pop_message(text = " ")
return unless SceneManager.scene_is?(Scene_Map)
unless @event_pop_id
if $imported["YEA-MessageSystem"]
#adjust_message_window_size
end
return
end
n_line = cal_number_line(text)
n_line = YSE::POP_MESSAGE::LIMIT[:limit_line] if YSE::POP_MESSAGE::LIMIT[:limit_line] > 0 && cal_number_line(text) > YSE::POP_MESSAGE::LIMIT[:limit_line]
@real_lines = n_line
self.height = fitting_height(n_line)
self.width = cal_width_line(text) + 24
self.width += new_line_x
if self.width > YSE::POP_MESSAGE::LIMIT[:limit_width] && YSE::POP_MESSAGE::LIMIT[:limit_width] > 0
self.width = YSE::POP_MESSAGE::LIMIT[:limit_width]
end
create_contents
update_placement
end
#--------------------------------------------------------------------------
# overwrite method: new_line_x
#--------------------------------------------------------------------------
def new_line_x
if $game_message.face_name.empty?
return 0
else
result = YSE::POP_MESSAGE::POSITION[:face_x_buffer]
p_x = $imported["YEA-MessageSystem"] ? YEA::MESSAGE::FACE_INDENT_X : 112
result += p_x
return result
end
end
#--------------------------------------------------------------------------
# new method: real_lines
#--------------------------------------------------------------------------
def real_lines
@real_lines
end
end # Window_Message
#==============================================================================
# ¡ Scene_Map
#==============================================================================
class Scene_Map < Scene_Base
#--------------------------------------------------------------------------
# alias method: create_message_window
#--------------------------------------------------------------------------
alias yse_pm_create_message_window create_message_window
def create_message_window
yse_pm_create_message_window
@face_window = Window_Message_Face.new
@face_window.message_window = @message_window
if YSE::POP_MESSAGE::EFFECT[:use_bubble_tag]
@bubble_tag_sprite = Sprite.new
@bubble_tag_sprite.visible = false
@bubble_tag_sprite.bitmap = Cache.system(YSE::POP_MESSAGE::EFFECT[:bubble_tag_name])
@bubble_tag_sprite.src_rect.set(0, 0, @bubble_tag_sprite.width, @bubble_tag_sprite.height / 2)
@message_window.bubble_tag = @bubble_tag_sprite
end
@message_window.face_window = @face_window
end
#--------------------------------------------------------------------------
# alias method: dispose_spriteset
#--------------------------------------------------------------------------
alias pop_message_dispose_spriteset dispose_spriteset
def dispose_spriteset
pop_message_dispose_spriteset
return unless @bubble_tag_sprite
@bubble_tag_sprite.dispose
end
end # Scene_Map
#==============================================================================
#
# ¥ End of File
#
#============================================================================== |
Ensuite j'utilise un autre tout petit script pour modifier la police du jeu:
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
| #=========================================
#Script police d'Ecriture
#=========================================
#
# Auteur : Brandobscure.
#
#=======================================
#
# Script à placer au dessus du script Main.
# Vous pouvez modifier le script a la ligne :
# 32 pour le Nom de l'écriture
# 43 pour la taille de l'écriture
# 49 si vous voulez mettre l'écriture en gras
# 53 si vous voulez le mettre en italique
#
#===============================================================
#
#
# Choix de la police d'ecriture pour le jeu.
# Font.default_name = ["papyrus"]
#
# Vous pouvez placer plusieurs police ecriture en cas ou si le pc d'un joueur
# na pas la police demandé. Voici donc le morceau de code à changer.
#-------------------------------------------------
# Font.default_name = ["Rod","nom de la 2em police"]
#---------------------------------------------------
Font.default_name = ["Pokemon X and Y"] #Police que j'utilise pour mon projet
#donc a vous de changer.
#Taille de l'ecriture de la police.
Font.default_size= 23
#Option pour les polices d'ecriture.
#false=desactivé; true=activé
#Ecriture en gras.
Font.default_bold = false
#Ecriture en italique
Font.default_italic = false
#Ombre: Activé par défaut.
Font.default_shadow = false |
Du coup, que se soit avec ou sans bulle, la police est toujours aussi moche
J'utilise la police d'écriture Pokemon X and Y:
http://www.dafont.com/fr/pokemon-x-and-y.font
Et même en utilisant d'autre police ont a toujours un résultat pas très charmant...
Je vais uploader des screen du jeu pour que vous compreniez pourquoi cet "anti-alisaing" me dérange tant...
En fait il n'est pas du tout en harmonie avec les graphismes...
Sinon, j'ai vu que l'on pouvait utiliser des sprites pour les chiffres et lettres... le script qui réaliserait cela
s'appel SFont, mais est totalement introuvable (ou alors je ne sais pas chercher )
En tout cas merci de t'être penché sur mon problème
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - [RPG Maker MV] Customisation de l'écran titre |
DeadPool98 -
posté le 20/12/2016 à 22:59:51. (47 messages postés) |
| Kingdommangas, le lien est mort...
Je suis pas sous MV, mais je pense que tu peux le faire en full event:
-En gros il te faudrait sauter l'écran titre de base de RMMV (il y a un script pour Vx Ace, il faudrais le même pour MV). Ou alors le plugin qu'a mentionné
Kingdommangas. (Après je ne m'y connais dans ce domaine)
-Ensuite, tu crée une map avec une image de background qui comprendra le fond de ton menu et ton titre.
-Sur cette même map tu place l'événement de départ de ton héro que tu défini avec "Aucun" sprite.
-Enfin, la partie la plus délicate: tu crée un événement en processus parallèle dans lequel
tu défini le comportement de ton menu (gestion des touches et de l'action sur le menu)
Franchement c'est pas super compliqué! Si tu as besoin d'aide sur cette dernière partie demande-moi
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - [Rpg Maker Vx Ace] Police d'écriture Nette? |
DeadPool98 -
posté le 20/12/2016 à 22:12:48. (47 messages postés) |
| Domaine concerné: Script
Logiciel utilisé: Rpg Maker Vx Ace
Bonsoir Makeuses et Makeurs
Je voudrais savoir si il était possible de rendre les polices d'écritures plus nettes dans les dialogues?
En gros j'aimerais passer de ça:
à ça:
Voilà voilà, j'espère que l'on m'aidera à trouver une solution à ce détail...
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - [RM Vx Ace] Textures et Plein écran |
DeadPool98 -
posté le 22/10/2016 à 21:47:28. (47 messages postés) |
| Domaine concerné: Scrip/Graphismes Logiciel utilisé: RM Vx Ace 'Soir à toutes et à tous
Alors voilà, j'aurais voulus savoir si il existait un moyen de lisser
les textures et textes sous RPG Maker Vx Ace?
En gros, quand on joue en plein écran, on se rend compte que
les graphismes sont un petit peut floutés... pareil pour les textes.
Je cherche donc à les rendre plus net...
Voilà, tchouss
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - [RPG Maker VX Ace] Problème avec le Script Autolight de Kylock |
DeadPool98 -
posté le 28/09/2016 à 17:04:23. (47 messages postés) |
| Merci, merci, merci, merci, et je ne le redirais jamais assez MEEEERCI!!!
Voilà du coté de l'effet ce que ça peut donner une fois bien ajusté
et une dernière pour la route
Pas mal hein
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - [RPG Maker MV] Pointeur |
DeadPool98 -
posté le 25/09/2016 à 13:04:06. (47 messages postés) |
| J'ai pas téléchargé RMMV, mais as-tu essayé F1 lorsque tu lance le jeu en mode test? Y des fois quelques options que tu peux régler, alors peut-être peut-on désactiver les pointeur ou modifier la vitesse de déplacement en utilisant le pointeur... faut que tu test
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - [RPG Maker VX Ace] Problème avec le Script Autolight de Kylock |
DeadPool98 -
posté le 24/09/2016 à 18:11:35. (47 messages postés) |
| Domaine concerné: Script/Event Logiciel utilisé: RPG Maker VX Ace Salut tout le monde ,
alors voilà, hier j'ai voulu installer le script "Light Effect 1.3.1": je l'essaye, il marche à merveille!
Comme le précise la description du script, on peut activer et désactiver l'effet de lumière grâce à des interrupteurs.
Le problème étant qu'en désactivant l'interrupteur, on désactive TOUS les effets de lumières...
Pour palier à cela, j'ai décidé de bidouiller un peut le script avec la base que je maîtrise en rgss. Je décide de créer un deuxième Interrupteur (il m'en faudra 14 au total) qui lui contrôlera les effets lumineux portant le nom de LIGHT 2.
En faisant cela, lorsque je fait "Nouvelle Partie", le jeu crash et me dit:
Citation: Script 'Light_Effects' line 91: NameError occured. uninitialized constant Spriteset_Map::Light_Effect_A. |
J'ai passé la journée à essayer de résoudre ce problème, et bien que je comprenne le sens du message d'erreur, je ne sais pas comment le résoudre...
Si quelqu'un pouvait m'apporter son aide, se serais merveilleux.
Bonne soirée les Maker
Script Original "Light Effects":
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
| #==============================================================================
# AUTOLIGHT 1.3.1 UNOFFICIAL PORTING VX ACE
# 12.27.2008
#------------------------------------------------------------------------------
# SCRIPT BY: Kylock
# PORTING BY: I don't want to be credited.
#
#==============================================================================
# INSTRUCTIONS
#
# Remember, you must have the file "le.png" in your "Graphics\Pictures" folder!
# If you're missing the file follow this link:
# <a href="http://imageshack.us/photo/my-images/189/81598086.png/" target="_blank">http://imageshack.us/photo/my-images/189/81598086.png/</a>
#
# To make an event glow, choose the desired event and comment with the applied
# term. If you want Light 1, comment "LIGHT 1".
#==============================================================================
# ? Change Log
#------------------------------------------------------------------------------
# 1.0 - Original Release
# 1.1 - New light modes added: LIGHT2, TORCHLIT 1, TORCHLIT 2
# - Changed sprite blend mode to ADD
# - Fire-based lights are now red in color
# 1.2 - Bug fixed with looping maps and lights displaying above message boxes
# 1.3 - More bugfixes
#==============================================================================
# ? Light Modes
#------------------------------------------------------------------------------
#LIGHT 1 - Lumière blanche régulière. (Petit)
#FIREPIT - Scintillement.
#LIGHT 2 - Lumière blanche régulière. (Grand)
#LIGHT 3 - Lumière blanche régulière.
#TORCHLIT 1 - Scintillement. (Lourd)
#TORCHLIT 2 - Scintillement. (Lumière)
#==============================================================================
module LES
#The switch used to turn lights ON/OFF
#If the Switch is ON the lights turn OFF
#If the Switch is OFF the lights turn ON
SWITCH = 30
end
#==============================================================================
# ¦ Spriteset_Map
#==============================================================================
class Spriteset_Map
alias les_spriteset_map_initalize initialize
def initialize
initialize_effects
les_spriteset_map_initalize
update
end
def initialize_effects
@light_effects = []
setup_lights
end
alias les_spriteset_map_dispose dispose
def dispose
les_spriteset_map_dispose
dispose_effects
end
def dispose_effects
for effect in @light_effects
effect.light.dispose
end
@light_effects = []
end
alias les_spriteset_map_update update
def update
les_spriteset_map_update
update_light_effects
end
def setup_lights
for event in $game_map.events.values
next if event.list == nil
for i in 0...event.list.size
if event.list[i].code == 108 and event.list[i].parameters == ["LIGHT 1"]
type = "LIGHT 1"
light_effects = Light_Effect.new(event,type)
light_effects.light.zoom_x = 2
light_effects.light.zoom_y = 2
light_effects.light.opacity = 100
@light_effects.push(light_effects)
end
if event.list[i].code == 108 and event.list[i].parameters == ["FIREPIT"]
type = "FIREPIT"
light_effects = Light_Effect.new(event,type)
light_effects.light.zoom_x = 300 / 100.0
light_effects.light.zoom_y = 300 / 100.0
light_effects.light.opacity = 100
@light_effects.push(light_effects)
end
if event.list[i].code == 108 and event.list[i].parameters == ["LIGHT 2"]
type = "LIGHT 2"
light_effects = Light_Effect.new(event,type)
light_effects.light.zoom_x = 1
light_effects.light.zoom_y = 1
light_effects.light.opacity = 150
@light_effects.push(light_effects)
end
if event.list[i].code == 108 and event.list[i].parameters == ["LIGHT 3"]
type = "LIGHT 3"
light_effects = Light_Effect.new(event,type)
light_effects.light.zoom_x = 6
light_effects.light.zoom_y = 6
light_effects.light.opacity = 150
@light_effects.push(light_effects)
end
if event.list[i].code == 108 and event.list[i].parameters == ["TORCHLIT 1"]
type = "TORCHLIT 1"
light_effects = Light_Effect.new(event,type)
light_effects.light.zoom_x = 6
light_effects.light.zoom_y = 6
light_effects.light.opacity = 150
@light_effects.push(light_effects)
end
if event.list[i].code == 108 and event.list[i].parameters == ["TORCHLIT 2"]
type = "TORCHLIT 2"
light_effects = Light_Effect.new(event,type)
light_effects.light.zoom_x = 6
light_effects.light.zoom_y = 6
light_effects.light.opacity = 150
@light_effects.push(light_effects)
end
end
end
for effect in @light_effects
case effect.type
when "LIGHT 1"
effect.light.x = effect.event.screen_x - 64
effect.light.y = effect.event.screen_y - 86
effect.light.blend_type = 1
when "FIREPIT"
effect.light.x = effect.event.screen_x - 96 + rand(6) - 3
effect.light.y = effect.event.screen_y - 118 + rand(6) - 3
effect.light.tone = Tone.new(255,-100,-255, 0)
effect.light.blend_type = 1
when "LIGHT 2"
effect.light.x = effect.event.screen_x - 32
effect.light.y = effect.event.screen_y - 54
effect.light.blend_type = 1
when "LIGHT 3"
effect.light.x = effect.event.screen_x - 182 - 20
effect.light.y = effect.event.screen_y - 214
effect.light.blend_type = 1
when "TORCHLIT 1"
effect.light.x = effect.event.screen_x - 182 - 20 + rand(20) - 10
effect.light.y = effect.event.screen_y - 214 + rand(20) - 10
effect.light.tone = Tone.new(255,-100,-255, 0)
effect.light.blend_type = 1
when "TORCHLIT 2"
effect.light.x = effect.event.screen_x - 182 - 20
effect.light.y = effect.event.screen_y - 214
effect.light.tone = Tone.new(255,-100,-255, 0)
effect.light.blend_type = 1
end
end
end #def setup_lights
def update_light_effects
if $game_switches[LES::SWITCH]
for effect in @light_effects
effect.light.visible = false
end
else
for effect in @light_effects
effect.light.visible = true
end
end
for effect in @light_effects
case effect.type
when "LIGHT 1"
effect.light.x = effect.event.screen_x - 64
effect.light.y = effect.event.screen_y - 86
when "FIREPIT"
effect.light.x = effect.event.screen_x - 96 + rand(6) - 3
effect.light.y = effect.event.screen_y - 118 + rand(6) - 3
effect.light.opacity = rand(10) + 90
when "LIGHT 2"
effect.light.x = effect.event.screen_x - 32
effect.light.y = effect.event.screen_y - 54
when "LIGHT 3"
effect.light.x = effect.event.screen_x - 182 - 20
effect.light.y = effect.event.screen_y - 214
when "TORCHLIT 1"
effect.light.x = effect.event.screen_x - 182 - 20 + rand(20) - 10
effect.light.y = effect.event.screen_y - 214 + rand(20) - 10
effect.light.opacity = rand(30) + 70
when "TORCHLIT 2"
effect.light.x = effect.event.screen_x - 182 - 20
effect.light.y = effect.event.screen_y - 214
effect.light.opacity = rand(10) + 90
end
end
end #def update_light_effects
end #class Spriteset_Map
#==============================================================================
# ¦ Light_Effect
#==============================================================================
class Light_Effect
attr_accessor :light
attr_accessor :event
attr_accessor :type
def initialize(event, type)
@light = Sprite.new
@light.bitmap = Cache.picture("le.png")
@light.visible = true
@light.z = 190
@event = event
@type = type
end
end #class Light_Effect
#==============================================================================
# ¦ Scene_Map
#==============================================================================
class Scene_Map
alias les_pre_transfer pre_transfer
def pre_transfer
les_pre_transfer
@spriteset.dispose_effects
end
alias les_post_transfer post_transfer
def post_transfer
@spriteset.initialize_effects
les_post_transfer
end
end #Scene_Map
#==============================================================================
# END OF FILE
#============================================================================== |
Code que j'ai modifié :
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
| #==============================================================================
# AUTOLIGHT 1.3.1 UNOFFICIAL PORTING VX ACE
# 12.27.2008
#------------------------------------------------------------------------------
# SCRIPT BY: Kylock
# PORTING BY: I don't want to be credited.
#
#==============================================================================
# INSTRUCTIONS
#
# Remember, you must have the file "le.png" in your "Graphics\Pictures" folder!
# If you're missing the file follow this link:
# <a href="http://imageshack.us/photo/my-images/189/81598086.png/" target="_blank">http://imageshack.us/photo/my-images/189/81598086.png/</a>
#
# To make an event glow, choose the desired event and comment with the applied
# term. If you want Light 1, comment "LIGHT 1".
#==============================================================================
# ? Change Log
#------------------------------------------------------------------------------
# 1.0 - Original Release
# 1.1 - New light modes added: LIGHT2, TORCHLIT 1, TORCHLIT 2
# - Changed sprite blend mode to ADD
# - Fire-based lights are now red in color
# 1.2 - Bug fixed with looping maps and lights displaying above message boxes
# 1.3 - More bugfixes
#==============================================================================
# ? Light Modes
#------------------------------------------------------------------------------
#LIGHT 1 - Lumière blanche régulière. (Petit)
#FIREPIT - Scintillement.
#LIGHT 2 - Lumière blanche régulière. (Grand)
#LIGHT 3 - Lumière blanche régulière.
#TORCHLIT 1 - Scintillement. (Lourd)
#TORCHLIT 2 - Scintillement. (Lumière)
#==============================================================================
module LES
#The switch used to turn lights ON/OFF
#If the Switch is ON the lights turn OFF
#If the Switch is OFF the lights turn ON
SWITCHA = 1
SWITCHB = 2
end
#==============================================================================
# ¦ Spriteset_Map
#==============================================================================
class Spriteset_Map
alias les_spriteset_map_initalize initialize
def initialize
initialize_effects
les_spriteset_map_initalize
update
end
def initialize_effects
@light_effects_A = []
@light_effects_B = []
setup_lights
end
alias les_spriteset_map_dispose dispose
def dispose
les_spriteset_map_dispose
dispose_effects
end
def dispose_effects
for effect in @light_effects_A
effect.light.dispose
end
@light_effects_A = []
for effect in @light_effects_B
effect.light.dispose
end
@light_effects_B = []
end
alias les_spriteset_map_update update
def update
les_spriteset_map_update
update_light_effects_A
update_light_effects_B
end
def setup_lights
for event in $game_map.events.values
next if event.list == nil
for i in 0...event.list.size
if event.list[i].code == 108 and event.list[i].parameters == ["LIGHT 1"]
type = "LIGHT 1"
light_effects_A = Light_Effect_A.new(event,type)
light_effects_A.light.zoom_x = 2
light_effects_A.light.zoom_y = 2
light_effects_A.light.opacity = 100
@light_effects_A.push(light_effects_A)
end
if event.list[i].code == 108 and event.list[i].parameters == ["LIGHT 2"]
type = "LIGHT 2"
light_effects_B = Light_Effect_B.new(event,type)
light_effects_B.light.zoom_x = 2
light_effects_B.light.zoom_y = 2
light_effects_B.light.opacity = 100
@light_effects_B.push(light_effects_B)
end
end
end
for effect in @light_effects_A
case effect.type
when "LIGHT 1"
effect.light.x = effect.event.screen_x - 64
effect.light.y = effect.event.screen_y - 86
effect.light.blend_type = 1
end
end
for effect in @light_effects_B
case effect.type
when "LIGHT 2"
effect.light.x = effect.event.screen_x - 64
effect.light.y = effect.event.screen_y - 86
effect.light.blend_type = 1
end
end
end #def setup_lights
def update_light_effects_A
if $game_switches[LES::SWITCHA]
for effect in @light_effects_A
effect.light.visible = false
end
else
for effect in @light_effects_A
effect.light.visible = true
end
end
for effect in @light_effects_A
case effect.type
when "LIGHT 1"
effect.light.x = effect.event.screen_x - 31
effect.light.y = effect.event.screen_y - 41
end
end
end #def update_light_effects
def update_light_effects_B
if $game_switches[LES::SWITCHB]
for effect in @light_effects_B
effect.light.visible = false
end
else
for effect in @light_effects_B
effect.light.visible = true
end
end
for effect in @light_effects_B
case effect.type
when "LIGHT 2"
effect.light.x = effect.event.screen_x - 31
effect.light.y = effect.event.screen_y - 41
end
end
end #def update_light_effects
end #class Spriteset_Map
#==============================================================================
# ¦ Light_Effect
#==============================================================================
class Light_Effect
attr_accessor :light
attr_accessor :event
attr_accessor :type
def initialize(event, type)
@light = Sprite.new
@light.bitmap = Cache.picture("le.png")
@light.visible = true
@light.z = 190
@event = event
@type = type
end
end #class Light_Effect
#==============================================================================
# ¦ Scene_Map
#==============================================================================
class Scene_Map
alias les_pre_transfer pre_transfer
def pre_transfer
les_pre_transfer
@spriteset.dispose_effects
end
alias les_post_transfer post_transfer
def post_transfer
@spriteset.initialize_effects
les_post_transfer
end
end #Scene_Map
#==============================================================================
# END OF FILE
#============================================================================== |
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - [RM Vx Ace] Système Impropre de Sauvegardes |
DeadPool98 -
posté le 29/06/2016 à 18:26:37. (47 messages postés) |
| Domaine concerné: Script/Event
Logiciel utilisé: RM Vx Ace
Bonjour Bonsoir à tous et à toutes!
Alors voilà, le système de sauvegarde de RM Vx Ace ne me satisfaisant pas, je me suis lancé dans
la "concoction" d'un script pour y remédier. Comme le titre l'indique, il s'agit d'un système TOTALEMENT
impropre, qui se base sur l'utilisation d'un fichier txt, donc modifiable par le joueur
J'arrive à sauvegarder l'ID de la map et les coordonnées du Héros dans un fichier .txt;
à les charger et attitrer les données du fichier .txt à des variables du jeu;
Mais le problème survient lors de la téléportation du Héro afin qu'il puisse
se retrouver là où il avait sauvegardé....
En clair:
-Je sauvegarde (IDmap+x+y)-->Héros dans un fichier txt
-Je charge ces données depuis le txt
-J'attribut ces données à des variables du jeu
-Je téléporte le Héros aux variables définies
-Et là.... ça plante
Voici maintenant le script en entier:
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
| def save_data_init
print "Ouverture du fichier 'Save.txt' en cours...\n\n"
file = File.open("Save.txt", "w+")
print "Ouverture du fichier Save.txt terminée avec succès!\n\n"
file.close
end
def save_data_idmap
#Mettre à jour la variable 4980
@Save_data = $game_variables[4980]
file = File.open("Save.txt", "a")
file.write("idmap=#{@Save_data};")
file.close
end
def save_data_posx
#Mettre à jour la variable 4980
@Save_data = $game_variables[4980]
file = File.open("Save.txt", "a")
file.write("posx=#{@Save_data};")
file.close
end
def save_data_posy
#Mettre à jour la variable 4980
@Save_data = $game_variables[4980]
file = File.open("Save.txt", "a")
file.write("posy=#{@Save_data};")
file.close
end
def load_data_player
# Script de chargement d'un fichier.
print "Localisation du fichier de données en cours...\n\n"
print "Fichier de données localisé!\n\n"
file = File.open("Save.txt", "r")
print "Lecture des données de Save.txt en cours...\n\n"
fichier = file.read
print "Création d'un data_board en cours...\n\n"
fichier = fichier.split(";")
print "Séparation des caracteres reussie"
idmap = fichier[0]
posx = fichier[1]
posy = fichier[2]
print "Création du tableau reussie"
idmap = idmap.split("=")
@idmap = idmap[1]
posx = posx.split("=")
@posx = posx[1]
posy = posy.split("=")
@posy = posy[1]
print "Idmap=", @idmap, " Posx=", @posx, " Posy=", @posy
print "Création d'un data_board terminée terminée avec succès!\n\n"
print "Affectation des données aux variable du jeu en cours...\n\n"
$game_variables[4981] = @idmap
$game_variables[4982] = @posx
$game_variables[4983] = @posy
print "Idmap=", $game_variables[4981], " Posx=", $game_variables[4982], " Posy=", $game_variables[4983]
print "Affectation des donnée aux variables du jeu terminée avec succès!\n\n"
file.close
print "Fermeture du fichier reussie"
end |
Voilà voilà.... si vous avez besoin de plus de précisions dites-le moi
Merci d'avance pour vos réponses qui je l'espère réglerons se SATANE problème...
MISE A JOUR
Je pense avoir trouvé pourquoi l'erreur s'affiche, cela dit je ne sais pas comment
résoudre le problème....
Je pense que les variables idmap, posx et posy sont considérée comme des chaines de caractères... ainsi, lors du choix de téléportation par variables, RM ne reçoit pas des chiffres mais plutôt ce qu'il considère être des caractères... Mais je ne sais pas comment convertir ces "string" en "fixnum"....
Je vous rassure, je n'attend pas qu'on me serve tout sur un plateau, et continue à chercher....
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - [RPG Maker VX] Extraire les dialogues |
DeadPool98 -
posté le 28/08/2015 à 02:38:00. (47 messages postés) |
| Je pense que Dreamaker est compatible avec les versions comprises entre xp et vxace... donc vx doit être compatible...
et puis ça serait logique! pourquoi faire un programme fonction pour xp et vx ace mais pas vx?
Ca coûte rien d'essayer
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - [RPG Maker VX Ace] Un script/event un peu spécial... |
DeadPool98 -
posté le 27/08/2015 à 23:56:43. (47 messages postés) |
| okidoki !
Ps: le manuel d'aide RMVXAce traduit!? Pourquoi pas! Pour l'envoyer par mail, voilà mon adresse:
Edo.Rpg.Games@gmail.com
Et encore merci!
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - [RPG Maker VX Ace] Un script/event un peu spécial... |
DeadPool98 -
posté le 27/08/2015 à 18:40:26. (47 messages postés) |
| Yep! Encore moi... ( je suis chiant je sais...)
Bon le temps de rétablir la connexion internet, j'ai revu le script, et il fonctionne... presque
Donc petit topo avant de balancer le script...
-Mon script se situe au dessus de Main et en dessous de Material
-Il se découpe en deux methodes: save et load, qui comme leur nom l'indique,
sont censées sauvegarder et charger une partie.
-La partie est pour l'instant sauvegarder dans le même dossier que le "Game.exe" et se nomme "Save.txt"
-Sur la carte, j'ai deux événements:
-le premier, qui sauvegarde la partie en appelant "save"
-le deuxième, qui efface l'écran en fondu, appelle "load",
téléporte le joueur sur la map dont l'ID est sauvegardé
et à des coordonnées stockées dans des variables utilisées
dans "load"
Maintenant le problème:
Je lance le Jeu;
je parle à l'événement qui sauvegarde;
mon fichier save.txt est bien crée avec toutes les information dedans;
puis, je me dirige vers l'événement qui charge les données;
je lui parle;
l'écran s'efface en fondu;
mes variables se chargent;
mon écran se r'affiche en fondu;
mon joueur à bien été téléporté aux coordonnées enregistrées;
puis le Jeu plante et me dit que RGSS3 player à cessé de fonctionner, rechercher des solution, etc (le blabla de windows 7 quoi!)
Bien, voici donc le code:
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
| # Script de sauvegarde dans un fichier.
def save
@idmap = $game_variables[4981]
@posx = $game_variables[4982]
@posy = $game_variables[4983]
print "Création du fichier Save.txt en cours...\n\n"
file = File.open("Save.txt", "w+")
print "Sauvegarde des données dans Save.txt en cours...\n\n"
file.write("idmap=#{@idmap};posx=,#{@posx};posy=,#{@posy}")
print "Sauvegarde des données dans Save.txt terminée!\n\n"
file.close
print "Bilan: Idmap=#{@idmap}; Posx=#{@posx}; Posy=#{@posy}\n\n"
end
# Script de chargement d'un fichier.
def load
print "Localisation du fichier de données en cours...\n\n"
begin
print "Fichier de données localisé!\n\n"
file = File.open("Save.txt", "r")
print "Lecture des données de Save.txt en cours...\n\n"
fichier = file.read
print "Création d'un data_board en cours...\n\n"
fichier.gsub!(" ","")
fichier.gsub!("_", " ")
fichier = fichier.split(";")
idmap = Fichier[0]
posx = Fichier[1]
posy = Fichier[2]
idmap = idmap.split("=")
@idmap = idmap[1]
posx = posx.split("=")
@posx = posx[1]
posy = posy.split("=")
@posy = posy[1]
print "Création d'un data_board terminée terminée avec succès!\n\n"
print "Affectation des données aux variable du jeu en cours...\n\n"
$game_variables[4981] = @idmap
$game_variables[4982] = @posx
$game_variables[4983] = @posy
print "Affectation des donnée aux variables du jeu terminée avec succès!\n\n"
print "Fermeture du fichier de données en cours...\n\n"
file.close
print "Fermeture du fichier de données terminée avec succès!\n\n"
rescue
print "Le Fichier de donnée n'existe pas ou est corrompu...\n\n"
print "Création d'un Fichier de données en cours...\n\n"
fichier= File.open("Save.txt", "w+")
@idmap = $game_variables[4981]
@posx = $game_variables[4982]
@posy = $game_variables[4983]
fichier.write("idmap=#{@idmap};posx=#{@posx};posy=#{@posy}")
file.close
end
end |
Voilà, voilà... j'espère que quelqu'un pourra m'aider... je continue donc à chercher de mon côté...
Ps: j'ai essayé de mettre la fermeture du fichier entre les deux "end" à la fin mais ça veut pas marché
(et heureusement pasque sinon ça serais vachement flippant...)
OK!!! Problème résolu!!! Merci DeadPool98!!! Non sérieusement, merci énormément à toi arttroy!!!
Je ne pense pas avoir pu y arriver sans tes infos!!! En tout cas ça montre qu'Oniromancie est plein
de gens biens!!!
Bon, je balance le code pour les intérressés!
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
| # Script de sauvegarde dans un fichier.
def save
@idmap = $game_variables[4981]
@posx = $game_variables[4982]
@posy = $game_variables[4983]
print "Création du fichier Save.txt en cours...\n\n"
file = File.open("Save.txt", "w+")
print "Sauvegarde des données dans Save.txt en cours...\n\n"
file.write("idmap=#{@idmap};posx=,#{@posx};posy=,#{@posy}")
print "Sauvegarde des données dans Save.txt terminée!\n\n"
file.close
print "Bilan: Idmap=#{@idmap}; Posx=#{@posx}; Posy=#{@posy}\n\n"
end
# Script de chargement d'un fichier.
def load
print "Localisation du fichier de données en cours...\n\n"
begin
print "Fichier de données localisé!\n\n"
file = File.open("Save.txt", "r")
print "Lecture des données de Save.txt en cours...\n\n"
fichier = file.read
print "Création d'un data_board en cours...\n\n"
fichier.gsub!(" ","")
fichier.gsub!("_", " ")
fichier = fichier.split(";")
idmap = Fichier[0]
posx = Fichier[1]
posy = Fichier[2]
idmap = idmap.split("=")
@idmap = idmap[1]
posx = posx.split("=")
@posx = posx[1]
posy = posy.split("=")
@posy = posy[1]
print "Création d'un data_board terminée terminée avec succès!\n\n"
print "Affectation des données aux variable du jeu en cours...\n\n"
$game_variables[4981] = @idmap
$game_variables[4982] = @posx
$game_variables[4983] = @posy
print "Affectation des donnée aux variables du jeu terminée avec succès!\n\n"
rescue
print "Le Fichier de donnée n'existe pas ou est corrompu...\n\n"
@idmap = $game_variables[4981]
@posx = $game_variables[4982]
@posy = $game_variables[4983]
print "Création du fichier Save.txt en cours...\n\n"
file = File.open("Save.txt", "w+")
print "Sauvegarde des données dans Save.txt en cours...\n\n"
file.write("idmap=#{@idmap};posx=,#{@posx};posy=,#{@posy}")
print "Sauvegarde des données dans Save.txt terminée!\n\n"
print "Bilan: Idmap=#{@idmap}; Posx=#{@posx}; Posy=#{@posy}\n\n"
end
print "Fermeture du fichier de données en cours...\n\n"
file.close
print "Fermeture du fichier de données terminée avec succès!\n\n"
end
|
Le système de sauvegarde est encore basique, de plus, il n'y a qu'une sauvegarde... Quand je l'aurais amélioré,
je ferais un tuto sur la création d'un menu Ultra-Personnalisé, avec n'importe quels options, ainsi que le chargement et la sauvegarde de fichiers dans différents slots... Voilà! Tchous tout l'monde
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - [RPG Maker VX Ace] Un script/event un peu spécial... |
DeadPool98 -
posté le 26/08/2015 à 11:58:30. (47 messages postés) |
| Merci beaucoup!!!
Me revoilà! Désolé pour le double post...
Donc, j'ai suivie un Tuto sur Oniro qui expliquait comment lire et
écrire dans un fichier texte... à la différence que moi, je ne met pas
le script dans Main, mais au-dessus, dans une fonction, que
j'appelle dans mon jeu... de plus, je ne met pas de rescue pour le
moment...
Voilà mon scirpt:
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
| def load
# J\'ouvre mon fichier texte en lecture seule
file = File.open("Save.txt", "r")
fichier = file
fichier = fichier.read
# Les ";" sont des séparations
fichier = fichier.split(";")
# Je crée mon "tableau\
argent = fichier[0]
sante = fichier[1]
idmap = fichier[2]
posx = fichier[3]
posy = fichier[4]
# Je crée mes cellules en séparant le paramètre de la valeure
argent = argent.split("=")
@argent = argent[1]
sante = sante.split("=")
@sante = sante[1]
idmap = idmap.split("=")
@idmap = idmap[1]
posx = posx.split("=")
@posx = posx[1]
posy = posy.split("=")
@posy = posy[1]
# Je ferme mon fichier
file.close
$game_variables[0100] = @argent
$game_variables[0101] = @sante
$game_variables[0102] = @idmap
$game_variables[0103] = @posx
$game_variables[0104] = @posy
end |
Le contenu de mon fichier Save.txt:
1
2
3
4
5
| argent=10000;
sante=120;
idmap=002;
posx=04;
posy=19 |
Et mon événement qui actualise le jeu:
1
2
3
4
5
| @>Script: load
@>Effacer en fondu
@>Modifier l'argent: + Variable [0100]
@>Téléportation: Variable [0102][0103][0104], Bas, Aucun
@>Afficher en fondu |
Je lance mon jeu, je parle à l'événement qui actualise le jeu, et là, j'ai le droit à:
Citation: Unable to find file:
Data/Map000.rvdata2 |
Je pense savoir d\'où vien le problème mais je ne sais pas comment le résoudre:
je pense que les "0" dans "idmap=002" ne plaisent pas au code...
Si c\'est ça, y a-t-il un moyen de contourner le problème?
Merci à ceux qui prendrons le temps de me lire!
Ps: Le même message d\'erreur apparait lorsque je remplace \"002\" par \"2\"...
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Jeux - The Legend of Zelda: L'éveil |
DeadPool98 -
posté le 25/08/2015 à 22:20:40. (47 messages postés) |
| Wouaw! Je viens de tomber amoureux de ces graphismes!
Après le gameplay et l'histoire je verrais demain pasque plus de 100Mo
C'est un p'tit peu lourd!
En tout cas je te donne une banane d'or pour les graphismes!
Bravo!
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - [RPG Maker VX Ace] Un script/event un peu spécial... |
DeadPool98 -
posté le 25/08/2015 à 21:13:46. (47 messages postés) |
| Salut Arttroy, et merci pour ta réponse!
Bon, pour le Ruby je programme dans la console et avec notepad++...
Sur la documentation que tu m'as passé, j'ai trouvé un liens vers la version française. Du coup j'avance petit à petit, mais avec la rentrée je pense ne reprendre que pendant les vacances...
M'enfin bon! J'ai trouvé un système facile à éditer:
créer mes propres sauvegarde dans un fichier txt
crée, lu et éditer via des scripts simple appelés par
événement!
Tu vas me dire: "Mais c'est pas sécurisé! Le Joueur peut se créée une
partie cheatée!"
Oui! Mais le Jeu que je crée ne sera qu'une version Alpha, qui connaîtra
des mises à jours, avec pourquoi pas, des idées des joueurs. Ainsi, quand
j'aurais le temps, je créerais un système complexe et chiant à décrypter
afin d'éviter le cheat! Ce système sera mis à jours régulièrement,
et donc sera amélioré à chaque fois! De quoi décourager les tricheurs
Cela dit, tout n'est pas rose! (ou bleu ou vert... bref c'est toi qui voit!)
Je voudrais savoir si tu sait comment affecter une variable du style:
@mapetitevariable
à une variable du style:
\v[4000]
Y a-t-il une syntaxe comme v[4000] == @mapetitevariable ?
Voilà voilà! Sur ce sempaï arttroy, je vous dit à bientôt!
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - [RPG Maker VX Ace] Un script/event un peu spécial... |
DeadPool98 -
posté le 24/08/2015 à 21:36:25. (47 messages postés) |
| Domaine concerné: Script/Event
Logiciel utilisé: RPG Maker VX Ace
Bonjour ou bonsoir à toutes et à tous!
Voilà, comme vous l'avez lu dans le titre, je voulais savoir si il était possible de réaliser un petit script permettant plusieurs petites choses...
Avant de continuer, je voulais préciser que j'ai essayé de me lancer dans l'apprentissage du rgss3, mais les seuls tutos que j'ai trouvés ne s'arrêtaient vraiment qu'au niveau de l'utilisation de la console rgss, sans intervenir directement
dans le jeu. Ainsi, je voulais savoir comment ceux qui maîtrisent "l'Art de Scripter" ont-ils appris? Autodidact? cours?
Voilà... Donc les spécifitées du script:
-Sauvegarder directement la partie en cours sur son "slot" grâce à un événement:
J'aurais pensé à mettre un script dans matérials. Si la partie en cours est la
partie 2, le script vérifie dans le dossier si Save02 existe, si oui il sauvegarde dedans,
sinon, il crée un fichier Save02.
ce script serait appelé grace à Script dans Evénement.
-Mon Jeu Comportera 5 slots. Chaque slot à un interrupteur. Ainsi, si Save01 est créée,
L'interrupteur S01 sera activé. Donc, si il est activé, dans mon menu, le slot 1 sera
chargeable. ainsi, lors de la selection de ce slot, le script fera un truc du style:
open savedata\v[010X] avec X le numéros choisis sur le Menu.
-Et toujours par événement, appeler une sauvegarde pour ouvrir la partie en cours.
Un petit exemple:
-Je saute l'écran titre de VX Ace (réussi)
-Mon menu personalisé apparait (réussi)
-Je lance une nouvelle partie (réussi)
-je sauvegarde grace à un événement et sans passer par l'écran des sauvegardes (non achevé...)
-Je retourne sur l'écran titre
-Je vais dans un écran de chargement de partie personnalisé
-Différentes parties s'affiche avec leur numéro de sauvegarde (1,2,3,4,5)
Bon... j'espère avoir été limpide... En tout cas merci d'avance à ceux qui répondrons à ma demande
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - [RPG Maker VX Ace] Variables diverses et variées |
DeadPool98 -
posté le 23/08/2015 à 13:55:44. (47 messages postés) |
| Domaine concerné: Event/Script Logiciel utilisé: RPG Maker VX Ace
Bonjour (ou bonsoir) à tous!
Je voulais savoir si il était possible de stocker une variable d'un script dans une variable du jeu... Pas clair hein?
En gros, je souhaiterais stocker les variables "hour", "min", et "sec" du script suivant:
Citation:
dans des variables du style \v[0001] ou \v[0013].
Voilà, en espérant avoir été assez clair, je remercie d'avance ceux qui répondrons!
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - La Poudre de Taliis |
Darkrai911 -
posté le 19/08/2015 à 22:46:14. (47 messages postés) |
| Salut Lnaunboq!
Bon, je suis la pour te démonter donner mon avis donc il se pourrait que dans les lignes qui suivent tu trouve un avis pertinent et tous les autre à chier. Pour l'instant je n'ai regardé que les Screenshots, mais le jeu se télécharge (150 Mo pour moi c'est 58 min de Dl....]
Au niveau cohérence des map:
C'est vrais que varier la végétation est important, mais je trouve qu'à mon goût, l'entrée du château est un peut trop diversifiée... les sapins et les chênes à coté de l'entrée je ne trouve pas ça super esthétique... peut-être un peut moins de végétation à l'entrée (oh! les écolos! ont s'calme!)
Citation:
La salle de repos! Comme l'a dit Terzarok, le bas de la map est un peut vide... Mais au lieux de combler ce vide avec des décorations bourrative, pourquoi n'essayerais-tu pas de revoir la taille de cette salle? Enlever le bout de la salle où il y a un piano, et mettre le piano toujours en haut à gauche de la map mais sans extension ( heu... t'as rien pigé avoue?)
Spoiler (cliquez pour afficher)
Avec une image c'est mieux!!!!
Citation: Bref... passons au dernier quartier de bœuf... Ah non en fait y a une suite! |
Les routes et les forêts... une partie que je déteste faire parsque ça me prend au moins 4 bonnes heures voir plus, à trouver un bon agencement...
Sur le mont paradis tu as fait l'effort de ne pas mettre que des arbres... si si j'te jure! Y a une feuille et une pierre!
Par contre sur le sentier montagneux... Ça fait plaisir!!! (Pas à toi! à moi! )
-Trop d'arbres
-Répétition d'arbre ( tu vois, c'est là qu'il faut faire varier la végétation!!!)
-Les bords des falaises me semblent bizarre... tu as utilisé le premier set de montagne? Tu aurais peut-être dû utiliser celui tout en bas du tile Outside_ A1... juste en dessous des escaliers...
Citation: Morceau de viande suivant! |
LA MAISON DU HÉROS!!!
Personnellement je la trouve trop grande... Parceque les étagères de la cuisines... sont quelque peut inaccessible
(Allez!!! Dit-le!!! Dit-le que j'suis un co Maniaque!!! Dit-le!!!)
Les Murs sont vides... Rajouter quelques tableaux ou des fleurs ou n'importe quoi! (Sauf un ornithorynque avec un chapeau de Noël buvant une tasse de thé...)
Citation:
Citation:
Il faut que tu sache que dans ces Screenshots y a pas que du mauvais!
Par exemple, je trouve sympa de retrouver ce système "d'ombre " dans les grottes! Ça c'est cool!
Ou encore Xifa! A première vue je trouve ce village tranquille, paisible, où il fait bon d'y vivre! (Je ne parle pas de Tune parsque y a comme même des choses qui vont pas dessus...)
Mais ce je trouve vraiment bien par dessus tout, c'est la fenêtre et la couleur de fond que tu a utilisé!
Super lisible! Chapeau j'ai malheureusement rien à dire dessus!
Comme tu le dit, le Menu n'est pas très original, mais je ne pense pas que se soit un réel problème puisque à ce que j'ai vu, tu a ajouter des script à ton jeu qui ferons ( je l'espère) oublier le petit coté rpg maker de ton jeu!
En tout cas ton jeu à l'air prometteur, et j'y jouerais dès qu'il sera Dl. J'espère que tu lira ce Loooooooong commentaire, et que tu tiendra compte de certains point majeur pour retoucher ou pas à ton jeu.
Et pour finir, la phrase d'un type bien:
Spoiler (cliquez pour afficher) Citation: "Je suis p'tet un connard, mais c'est pour votre bien! |
Voilà,bonne soirée (ou journée ) à toi qui a lu ce message!
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - [RPG Maker VX ace] Tiroirs |
Darkrai911 -
posté le 19/08/2015 à 01:53:23. (47 messages postés) |
| Merci, j'ai testé et ça marche!!! ( désolé pour le retard... )
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - [RPG Maker VX Ace] Kernys & VX Ace... |
Naouchel98 -
posté le 31/05/2015 à 17:37:13. (47 messages postés) |
| Domaine concerné: Projet Logiciel utilisé: RPG Maker VX Ace Salut tous le monde!
Bon, cela fait quelques temps que j'ai télécharger une application du nom de RPG XP et qui permet de faire fonctionner ses jeux RPG Maker sous Android ( Classe hein? )
Il y a pas longtemps, une mise à jour à eu lieu déclarant que l'application supporterait enfin les Jeux Rpg Maker VX Ace!!!
Je met donc le projet de mon jeu compilé dans le dossier de mon téléphone, je le lance et là, on m'annonce que:
"RPGVX Ace Mobile RGSS Not installed. Please install it."
Je voulais donc savoir où serait-il possible de télécharger RGSS de Vx ace pour mobile. Merci d'avance!
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - [RPG Maker VX Ace] De la 3D ou 2.5D? |
Naouchel98 -
posté le 11/05/2015 à 10:01:57. (47 messages postés) |
| Mais du coup, est-il possible de mettre cet effet "Mode-7" sur RPG Maker VX ace? Y a -t-il un script ou autre qui permette cela?
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - [RPG Maker VX Ace] De la 3D ou 2.5D? |
Naouchel98 -
posté le 10/05/2015 à 16:56:36. (47 messages postés) |
| Domaine concerné: Graphisme et/ou Script Logiciel utilisé: RPG Maker VX Ace Bonjour à tous!
Je voulais tous d'abord savoir si les jeux pokemon des versions diamant perle et platine aux version HG et SS sont en 2.5D ou mode 7. Ensuite, si ils sont bien en 2.5D, est-il possible d'avoir un tel rendu sous RPG Maker Vx Ace ( c'est à dire des batiment en 3D mais sprites en 2D)
Je vous remerci d'avance!
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - [RPG Maker VX ace] Problème de Climat |
naouchel98 -
posté le 22/02/2015 à 14:14:13. (47 messages postés) |
| Domaine concerné: Evenement/Script Logiciel utilisé: RPG Maker VX ace Bonjour à tous et à toutes.
Voilà, cela fait plus de... BEAUCOUP de mois que je butte sur un problème, en lien avec le changement de climat ( Matin, Jour, Soir, et Nuit).
J'ai donc crée un Événement Commun que j'ai appelé "Temps", en Processus Parallèle, et avec "Time" comme interrupteur conditionnel.
J'ai aussi crée un autre Événement ( toujours en Commun ), que j'ai appelé "Climat", en Processus Parallèle, et avec "Time" comme interrupteur conditionnel.
Donc, lors du test, tous se passe bien, j'ai bien mes quatre moments de la Journée qui s'affichent; mais du coup, en rentrant dans un bâtiment, si il fait nuit à l'extérieur, il fait aussi nuit à l'intérieur...
A l'extérieur...
A l'intérieur...
J'ai donc imaginé plusieurs moyens pour résoudre "ça", mais ils ont tous échoués:
-Création d'un interrupteur "Extérieure", qui si il est activé, l’événement "Climat" affiche les différents moments de la journée, mais si il n'est pas activé, laisse le climat à 0;0;0;60.
Cette méthode fonctionne, mais le climat met un certain temps à se mettre en place, du coup, quand on rentre dans une pièce, elle parait d'abord sombre, puis d'un coup, clair...
Pareil en extérieur... Tout parait clair, puis le climat se met en place...
-Je ne me rappelle plus trop des autres techniques mais elles étaient vraiment farfelues...
Si quelqu'un sait comment faire, je lui serait EXTRÊMEMENT reconnaissant....
Merci d'avance à ceux qui auront pris le temps de lire ce message
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - [RPG Maker VX ace] Heure Locale |
naouchel98 -
posté le 12/10/2014 à 17:36:45. (47 messages postés) |
| Merci, mais, cela n'affiche que l'heure... aurais-tu une solution pour stocker les minutes dans une autre variable? Merci!
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - [RPG Maker VX ace] Heure Locale |
naouchel98 -
posté le 12/10/2014 à 16:48:05. (47 messages postés) |
| Domaine concerné: Evenement/Script Logiciel utilisé: RPG Maker VX ace Bonjour à tous! Voilà, j'aimerais savoir s'il existe un moyen pour faire en sorte que l'une des variables de mon jeu (ici celle de l'heure), prenne comme valeur, l'heure de l'ordinateur utilisé.
En effet, beaucoup d'évènements quotidiens seront présents dans mon jeu ( ouverture d'une porte à une certaine heure, rencontre de personnages spéciaux, etc...)
Je sais que certains me diront qu'il est déconseillé de le faire ( les journées seraient interminables, etc...) mais j'aimerais comme même essayer! Je vous remercie d'avance!
Cordialement : Moi
|
J'aime les shorts, ça garde les genoux bien au frais! |
Posté dans Forum - [RPG Maker VX ace] Tiroirs |
Naouchel98 -
posté le 25/10/2013 à 13:34:05. (47 messages postés) |
| Domaine concerné: scripts/événements Logiciel utilisé: RPG Maker VX ace Bonjour à tous!
Et bien voila, je voudrais savoir si il était possible avec RPG Maker VX ace de créer des sortes de tiroirs pour ranger des objets un peut comme dans animal crossing?
Et si oui, de fixer une limite d'objet à déposer?
Merci d'avance.
|
J'aime les shorts, ça garde les genoux bien au frais! |
Aller à la page: 1 2
|
|
|