=begin
╔=════════════════════════════════════════════════════════════════════════=╗
║ Script: Create Window Easy ║
╚══════════════════════════════════════════════════════════════════════════╝
╔══════════════╗ ╔════════════════════╗
║ Crédit: Dany ║ ║ Version: 1.0.0 ║
╚══════════════╝ ╚════════════════════╝
Description:
Ce script, permet de créer une fenêtre simple avec l'ajout d'un texte.
Appel de script utilisable en Jeu/Script:
touch_wc Lance la condition de la touche
wc_launch Lance la fenêtre.
edit_all(x,y,l,h,t,tx,ty,o) Edite tout les données, sauf les sons.
edit_xy(x,y) Edite les données X/Y.
edit_lh(l,h) Edite les données L/H.
edit_t(t) Edite les données T.
edit_txy(tx,ty) Edite les données TX/TY.
edit_op(o) Edite les données O.
edit_touch(touch) Edite la touche pour fermer le menu.
edit_son(f,v,p,f2,v2,p2) Edite le son d'ouverture/fermeture.
x = position x de la fenêtre.
y = position y de la fenêtre.
l = largeur de la fenêtre.
h = hauteur de la fenêtre.
t = texte avec les guillemets, ex: "Je suis là".
Vous pouvez utiliser les CODES des messages.
tx = position x du texte.
ty = position y du texte.
o = opacité 255 pour affiché la fenêtre 0 pour l'enlever.
touch = touche pour ouvrir le menu ex :C
f = nom du son d'ouverture, exemple: "Audio/SE/Open1"
v = volume du son d'ouverture.
p = pitch du son d'ouverture.
f2 = nom du son fermetue, exemple: "Audio/SE/Open1"
v2 = volume du son fermeture.
p2 = pitch du son fermeture.
BUG & MAJ:
-Création du script.
=end
#================================Game_Party================================#
# Stockage des données dans le Game_Party, afin de les sauvegarders. #
#==========================================================================#
class Game_Party
attr_accessor :wc_touche
attr_accessor :wc_x
attr_accessor :wc_y
attr_accessor :wc_l
attr_accessor :wc_h
attr_accessor :wc_o
attr_accessor :wc_t
attr_accessor :wc_tx
attr_accessor :wc_ty
attr_accessor :wc_sono
attr_accessor :wc_sonov
attr_accessor :wc_sonop
attr_accessor :wc_sonc
attr_accessor :wc_soncv
attr_accessor :wc_soncp
alias ex_initialize initialize
def initialize(*arg)
ex_initialize(*arg)
@wc_touche = :A
@wc_x = 0
@wc_y = 0
@wc_l = Graphics.width
@wc_h = Graphics.height
@wc_o = 0
@wc_t = ""
@wc_tx = 0
@wc_ty = 0
@wc_sono = "Audio/SE/Open1"
@wc_sonov = 100
@wc_sonop = 50
@wc_sonc = "Audio/SE/Cancel2"
@wc_soncv = 100
@wc_soncp = 50
end
end
#==================================Create==================================#
# Création des appels de script pour faciliter l'utilisateur. #
#==========================================================================#
module Create
def touch_wc
@audio_open = $game_party.wc_sono.to_s
@audio_open_vol = $game_party.wc_sonov.to_i
@audio_open_pitch = $game_party.wc_sonop.to_i
@audio_close = $game_party.wc_sonc.to_s
@audio_close_vol = $game_party.wc_soncv.to_i
@audio_close_pitch = $game_party.wc_soncp.to_i
@touche = $game_party.wc_touche
if Input.trigger?(@touche)
if @window_wc.open?
Audio.se_play(@audio_open, @audio_open_vol, @audio_open_pitch)
@window_wc.close
elsif @window_wc.close?
Audio.se_play(@audio_close, @audio_close_vol, @audio_close_pitch)
@window_wc.open
end
end
end
def wc_launch
@x = $game_party.wc_x
@y = $game_party.wc_y
@l = $game_party.wc_l
@h = $game_party.wc_h
@o = $game_party.wc_o
@t = $game_party.wc_t
@tx = $game_party.wc_tx
@ty = $game_party.wc_ty
@window_wc = Window_Create.new(@x, @y, @l, @h, @t, @tx, @ty)
@window_wc.z = 2000
@window_wc.openness = 0
@window_wc.close
end
def edit_all(x, y, l, h, t, tx, ty, o)
$game_party.wc_x = x
$game_party.wc_y = y
$game_party.wc_l = l
$game_party.wc_h = h
$game_party.wc_t = t
$game_party.wc_tx = tx
$game_party.wc_ty = ty
$game_party.wc_o = o
end
def edit_xy(x, y)
$game_party.wc_x = x
$game_party.wc_y = y
end
def edit_lh(l, h)
$game_party.wc_l = l
$game_party.wc_h = h
end
def edit_t(t)
$game_party.wc_t = t
end
def edit_txy(tx, ty)
$game_party.wc_tx = tx
$game_party.wc_ty = ty
end
def edit_op(o)
$game_party.wc_o = o
end
def edit_touch(touch)
$game_party.touche = touch
end
def edit_song(f,v,p,f2,v2,p2)
$game_party.sono = f if f != nil
$game_party.sonov = v if v != nil
$game_party.sonop = p if p != nil
$game_party.sonc = f2 if f2 != nil
$game_party.soncv = v2 if v2 != nil
$game_party.soncp = p2 if p2 != nil
end
end
#=============================Game_Interpreter=============================#
# (En Jeu) #
# Implante le module dans le Game_Interpreter pour l'utilisation du code. #
#==========================================================================#
class Game_Interpreter
include Create
end
#============================Scene_MenuBase================================#
# (En Script) #
# Implante le module dans le Scene_MenuBase pour l'utilisation du code. # #
#==========================================================================#
class Scene_MenuBase
include Create
end
#===============================Window_Create==============================#
# Création de la fenêtre avec l'affichage du texte. #
#==========================================================================#
class Window_Create < Window_Base
def initialize(x, y, l, h, t, tx, ty)
super(x, y, l, h)
@text = t
@text_x = tx
@text_y = ty
create_text
end
def create_text
self.contents.clear
draw_text_ex(@text_x.to_i, @text_y.to_i, @text.to_s)
end
end
#===============================Scene_Create===============================#
# Création de la scene pour appeler la fenêtre. #
# SceneManager.call(Scene_Create) #
#==========================================================================#
class Scene_Create < Scene_MenuBase
def start
super
@touch = $game_party.touche
create_window
end
def update
super
name = $game_party.wc_son.to_s
volume = $game_party.wc_sonv.to_i
pitch = $game_party.wc_sonp.to_i
return_scene if Input.trigger?(@touch)
if Input.trigger?(@touch)
Audio.se_play(name, volume, pitch)
end
end
def create_window
@x = $game_party.wc_x
@y = $game_party.wc_y
@l = $game_party.wc_l
@h = $game_party.wc_h
@o = $game_party.wc_o
@t = $game_party.wc_t
@tx = $game_party.wc_tx
@ty = $game_party.wc_ty
@window = Window_Create.new(@x, @y, @l, @h, @t, @tx, @ty)
@window.opacity = @o
@window.z = 2000
@window.openness = 0
end
end