- Az'Membre
- Nombre de messages : 3318
Age : 75
Date d'inscription : 22/12/2007
[RGSS3]MTS - MistTransferSystem v.1.0
le Lun 6 Fév 2012 - 18:41
MTS permet de créer un système de téléportation, intégrable dans un menu ou bien utilisable à part.
Il est encore au stade de développement, mais en voici un aperçu. Tout est paramétrable via le script, et une modification du système de téléportation pour le rendre plus customisable est envisagée pour la V2.
Voici une démo' avec le nécessaire de fonctionnement.
Enjoy!
Il est encore au stade de développement, mais en voici un aperçu. Tout est paramétrable via le script, et une modification du système de téléportation pour le rendre plus customisable est envisagée pour la V2.
~ Screens ~
![[RGSS3]MTS - MistTransferSystem v.1.0 Screenshot_2-8fec092b98](https://2img.net/image.noelshack.com/old/up/screenshot_2-8fec092b98.png)
Merci pour l'illustration LightNox
~ Script ~
![[RGSS3]MTS - MistTransferSystem v.1.0 Screenshot_2-8fec092b98](https://2img.net/image.noelshack.com/old/up/screenshot_2-8fec092b98.png)
Merci pour l'illustration LightNox

~ Script ~
- Code:
#==============================================================================
# ▼ MTS - MistTransferSystem
# Version : 1.0
#------------------------------------------------------------------------------
# Permet de créer un système de téléportation, intégrable dans un menu ou bien
# utilisable à part.
# Par Mist'
# Le 06/02/12
# http://www.rpgmakervx-fr.com/
#
# Merci à Skillo et Berka pour leur aide quant aux fonctions des Arrays!
#==============================================================================
# Créer le Dossier "Graphics/MTS/" s'il n'existe pas.
#==============================================================================
TMP = "MTS"
Dir.mkdir("Graphics/#{TMP}", 0777) rescue nil
FileTest.exist?(TMP) ? nil : p("Le dossier #{TMP} a bien été créé !")
#==============================================================================
# Dans ce même dossier, placez vos images d'illustration.
# Pour paramètrer les images utilisées :
# Aux lignes similaires à celle-ci :
# ["Désert", 1, 9, 2, "nom_image"]
# nom_image est à remplacer par le nom de votre image.
#==============================================================================
#==============================================================================
# ▼ MTS - Mist_Transfer_Sys
# Module
#==============================================================================
module Mist_Transfer_Sys
# Textes affichés dans la fenêtre du haut. Modulable.
Msg_Help = ["Menu de téléportation", "Choisissez votre destination"]
# Paramètrage des téléportations :
Teleport = [
# Vous pouvez rajouter vos commandes personnalisées en suivant ce modèle :
#
# [Nom_de_la_commande, ID_MAP, X_Arrivée, Y_Arrivée, Nom_image_utilisée],
["Désert", 1, 34, 10, "DarkSpace2"],
["Plaine", 2, 6, 6, "Mountains4"],
["Volcan", 3, 6, 6, "Mountains5"],
["Vallée", 4, 9, 5, "Mountains1"],
["Ruines", 5, 9, 35, "Mountains2"],
["Espace", 6, 12, 28, "Mountains3"],
["Ville", 7, 28, 5, "BlueSky"],
["Village", 8, 25, 40, "CloudySky1"],
["Forêt", 9, 27, 22, "CloudySky2"],
["Grotte", 10, 5, 15, "DarkSpace1"],
# NE PAS EFFACER.
] # <-
# NE PAS EFFACER.
# Image par défaut si l'image d'illustration définie n'existe pas.
Image_Dft = "Défaut"
# Nom de la commande dans le menu
NOM_DS_MENU = "Téléport"
# Répertoire où aller chercher les images
Tr_Cache = "Graphics/#{TMP}/"
#----------------------------------------------------------
# Prévu pour la V.2
#
# Effet Sonore si validation de la téléportation
# (true = activé, false = désactivé)
SE_Telep = true
# Nom du SE
Nom_SE = "Transfer"
#-----------------------------------------------------------
end
#===============================================================================
# ▼ Cache
#===============================================================================
module Cache
def self.tr_cache(filename)
load_bitmap(Mist_Transfer_Sys::Tr_Cache, filename)
end
end
#==============================================================================
# ▼ Window_TransferCommand
#==============================================================================
class Window_TransferCommand < Window_Command
include Mist_Transfer_Sys
#--------------------------------------------------------------------------
# ● Initialize
#--------------------------------------------------------------------------
def initialize(x, y)
super(x, y)
update_position(x, y)
self.openness = 0
open
end
#--------------------------------------------------------------------------
# ● Window_width
#--------------------------------------------------------------------------
def window_width
return 160
end
#--------------------------------------------------------------------------
# ● Update_position
# x : x
# y : y
#--------------------------------------------------------------------------
def update_position(x, y)
self.x = x
self.y = y
end
#--------------------------------------------------------------------------
# ● Make_command_list
#--------------------------------------------------------------------------
def make_command_list
clé = []
for i in 0...Teleport.size
clé.push(Teleport[i][0])
add_command(clé[i], :i)
end
add_command("Quitter", :quit)
end
end
#==============================================================================
# ▼ Scene_Transfer
#==============================================================================
class Scene_Transfer < Scene_Base
include Mist_Transfer_Sys
#--------------------------------------------------------------------------
# ● Start
#--------------------------------------------------------------------------
def start
super
creer_win_help
creer_win_comm
creer_img
end
#--------------------------------------------------------------------------
# ● Creer_win_help
#--------------------------------------------------------------------------
def creer_win_help
@win_help = Window_Base.new(0, 0, 544, 44*Msg_Help.size)
Msg_Help.each do |i|
@win_help.draw_text(0, 32*Msg_Help.index(i), 544, 32, i, 1)
end
end
#--------------------------------------------------------------------------
# ● Creer_win_comm
#--------------------------------------------------------------------------
def creer_win_comm
@win_comm = Window_TransferCommand.new(0, @win_help.height)
@win_comm.height = Graphics.height - @win_help.height
@win_comm.set_handler(:i, method(:transf_process))
@win_comm.set_handler(:quit, method(:quitter))
end
#--------------------------------------------------------------------------
# ● Creer_img
#--------------------------------------------------------------------------
def creer_img
@sprite = Sprite.new
@sprite.x = @win_comm.width
@sprite.y = @win_help.height
end
#--------------------------------------------------------------------------
# ● Update
#--------------------------------------------------------------------------
def update
super
update_img
end
#--------------------------------------------------------------------------
# ● Dispose_all_sprites
#--------------------------------------------------------------------------
def dispose_all_sprites
instance_variables.each do |varname|
ivar = instance_variable_get(varname)
ivar.dispose if ivar.is_a?(Sprite)
end
end
#--------------------------------------------------------------------------
# ● Terminate
#--------------------------------------------------------------------------
def terminate
super
dispose_all_sprites
end
#--------------------------------------------------------------------------
# ● Update_img
#--------------------------------------------------------------------------
def update_img
index = @win_comm.index
clé = []
for i in 0...Teleport.size
clé.push(Teleport[i][4])
end
@sprite.bitmap = Cache.tr_cache(clé[index]) rescue @sprite.bitmap = Cache.tr_cache(Image_Dft)
end
#--------------------------------------------------------------------------
# ● Transf_process
#--------------------------------------------------------------------------
def transf_process
i = @win_comm.index
$game_player.reserve_transfer(Teleport[i][1],Teleport[i][2],Teleport[i][3])
SceneManager.goto(Scene_Map)
end
#--------------------------------------------------------------------------
# ● Quitter
#--------------------------------------------------------------------------
def quitter
SceneManager.goto(Scene_Menu)
end
end
#==============================================================================
# ▼ Window_MenuCommand
#==============================================================================
class Window_MenuCommand < Window_Command
include Mist_Transfer_Sys
#--------------------------------------------------------------------------
# ● AJOUT ~
#--------------------------------------------------------------------------
def add_transfer_command
add_command(NOM_DS_MENU, :transfer)
end
#--------------------------------------------------------------------------
# ● MODIF ~
#--------------------------------------------------------------------------
def make_command_list
add_main_commands
add_formation_command
add_original_commands
add_transfer_command # AJOUT #
add_save_command
add_game_end_command
end
end
#==============================================================================
# ▼ Window_MenuCommand
#==============================================================================
class Scene_Menu < Scene_MenuBase
#--------------------------------------------------------------------------
# ● ALIAS ~
#--------------------------------------------------------------------------
alias mts_old_command create_command_window
def create_command_window
mts_old_command
@command_window.set_handler(:transfer, method(:command_transfer))
end
#--------------------------------------------------------------------------
# ● AJOUT ~
#--------------------------------------------------------------------------
def command_transfer
SceneManager.call(Scene_Transfer)
end
end
~ Démo ~
Voici une démo' avec le nécessaire de fonctionnement.
Télécharger
Enjoy!
- XakuXMembre
- Nombre de messages : 1263
Age : 26
Localisation : là où tu n'auras jamais l'idée de chercher !
Distinction : * Bougre d'âne
Le bizu' à son Coco'
[Coco']
Membre aux désirs inassouvis de domination mondiale. [Maître du destin]
Date d'inscription : 13/12/2008
Re: [RGSS3]MTS - MistTransferSystem v.1.0
le Lun 6 Fév 2012 - 19:01
Je suis curieux de savoir ce que ça me donne, parce que ça m'a l'air tout à fait cool 

- driccMembre
- Nombre de messages : 2760
Localisation : Lille
Distinction : Altruiste - Incarnation de la Patience [Mist']
Date d'inscription : 10/08/2009
Re: [RGSS3]MTS - MistTransferSystem v.1.0
le Lun 6 Fév 2012 - 19:23
Ah oui , excellent . C'est toujours utile (surtout pour un T-RPG par exemple) .
Mais , euh , ce serait possible d'avoir un switch ou quoi que ce soit d'autre pour désactiver temporairement certaines destinations ? En fait , le top serait qu'on puisse au choix griser ou enlever carrément de la liste .
Mais , euh , ce serait possible d'avoir un switch ou quoi que ce soit d'autre pour désactiver temporairement certaines destinations ? En fait , le top serait qu'on puisse au choix griser ou enlever carrément de la liste .
- LightNoxMembre
- Nombre de messages : 1759
Age : 30
Localisation : Chez Moi ^^
Date d'inscription : 10/04/2008
Re: [RGSS3]MTS - MistTransferSystem v.1.0
le Lun 6 Fév 2012 - 20:03
vue que j'ai participer je sais ce que sa donne moi ahah ^^
et je peut vous dire que quand mist' aura fait la présentation vous ne serez pas déçu je pense
et je peut vous dire que quand mist' aura fait la présentation vous ne serez pas déçu je pense

- Az'Membre
- Nombre de messages : 3318
Age : 75
Date d'inscription : 22/12/2007
Re: [RGSS3]MTS - MistTransferSystem v.1.0
le Lun 6 Fév 2012 - 22:07
Hop, édité et présenté comme il se devait.
J'suis complètement d'accord, mais pour griser, enlever de la liste, comment?
P't'être rajouter un argument dans les tableaux, ID de l'interrupteur d'activation, mais ça fait beaucoup de switches quand même... T'aurais pas une idée pour compenser? x)
@Dricc a écrit:Mais , euh , ce serait possible d'avoir un switch ou quoi que ce soit d'autre pour désactiver temporairement certaines destinations ? En fait , le top serait qu'on puisse au choix griser ou enlever carrément de la liste .
J'suis complètement d'accord, mais pour griser, enlever de la liste, comment?
P't'être rajouter un argument dans les tableaux, ID de l'interrupteur d'activation, mais ça fait beaucoup de switches quand même... T'aurais pas une idée pour compenser? x)
Re: [RGSS3]MTS - MistTransferSystem v.1.0
le Lun 6 Fév 2012 - 22:24
Ah ! le voilà ce fameux script !
Quelques petites remarques:
- Par convention on ne met pas de caractère accentué dans les noms d'objets en programmation. C'est pour éviter les incompatibilités et notamment les bugs dus aux affichages sur les sites anglais.
- Plus rapide: plutôt que:
- Plutot que:
Bonne soirée,
Berka
Quelques petites remarques:
- Par convention on ne met pas de caractère accentué dans les noms d'objets en programmation. C'est pour éviter les incompatibilités et notamment les bugs dus aux affichages sur les sites anglais.
- Plus rapide: plutôt que:
- Code:
for i in 0...Teleport.size
clé.push(Teleport[i][4])
end
- Code:
Teleport.each{|e|
clé << e[4]
}
- Plutot que:
- Code:
@sprite.bitmap = Cache.tr_cache(clé[index]) rescue @sprite.bitmap = Cache.tr_cache(Image_Dft)
- Code:
@sprite.bitmap = Cache.tr_cache(clé[index] || Image_Dft)
Bonne soirée,
Berka
- Az'Membre
- Nombre de messages : 3318
Age : 75
Date d'inscription : 22/12/2007
Re: [RGSS3]MTS - MistTransferSystem v.1.0
le Lun 6 Fév 2012 - 22:37
Héhé, Berka, toujours au top!
Merci, tu m'apprends quelque chose là!
Je le met tout ça dans le script de ma future V.2.
Merci, tu m'apprends quelque chose là!
Je le met tout ça dans le script de ma future V.2.

- cator. lolMembre
- Nombre de messages : 164
Age : 29
Localisation : Cherche pas, tu me trouveras jamais.
Distinction : Zoophile à ses heures perdues, au torse poilu et qui chante YMCA
Frère de poils!
[Mist']
Maître du plantage d'arbres à femme : pour la sauvegarde des arbres et des petits oiseaux, vive la nature. [Balb']
crefadet le violeur du bois [Balb']
Date d'inscription : 02/02/2012
Re: [RGSS3]MTS - MistTransferSystem v.1.0
le Mar 7 Fév 2012 - 8:22
Moi qui croyais que le Ruby était un langage de haut niveau, je suis choqué XD
Je pensais pas qu'il se rapprochait autant du C++. [/HS]
N'ayant pas téléchargé la démo car je n'ai pas VXAce (pas encore, du moins), je ne m'avance pas trop, mais un tel système n'est-il pas plus facilement réalisable en événement ?
Je pensais pas qu'il se rapprochait autant du C++. [/HS]
N'ayant pas téléchargé la démo car je n'ai pas VXAce (pas encore, du moins), je ne m'avance pas trop, mais un tel système n'est-il pas plus facilement réalisable en événement ?
- Az'Membre
- Nombre de messages : 3318
Age : 75
Date d'inscription : 22/12/2007
Re: [RGSS3]MTS - MistTransferSystem v.1.0
le Mar 7 Fév 2012 - 10:58
A la base, le MTS est aussi prévu pour une customisation des téléportations.
Ce sera disponible dans une prochaine version du script.
Cette partie là est quant à elle, facilement réalisable en évènements, peut-être m'enfin après, chacun fait comme il le sent, je ne suis pas un anti-eventmaker non-plus. xD
De toutes façons, la prochaine version sera encore plus customisable. :3
Ce sera disponible dans une prochaine version du script.
Cette partie là est quant à elle, facilement réalisable en évènements, peut-être m'enfin après, chacun fait comme il le sent, je ne suis pas un anti-eventmaker non-plus. xD
De toutes façons, la prochaine version sera encore plus customisable. :3
- driccMembre
- Nombre de messages : 2760
Localisation : Lille
Distinction : Altruiste - Incarnation de la Patience [Mist']
Date d'inscription : 10/08/2009
Re: [RGSS3]MTS - MistTransferSystem v.1.0
le Mar 7 Fév 2012 - 13:24
Mist' a écrit:Hop, édité et présenté comme il se devait.@Dricc a écrit:Mais , euh , ce serait possible d'avoir un switch ou quoi que ce soit d'autre pour désactiver temporairement certaines destinations ? En fait , le top serait qu'on puisse au choix griser ou enlever carrément de la liste .
J'suis complètement d'accord, mais pour griser, enlever de la liste, comment?
P't'être rajouter un argument dans les tableaux, ID de l'interrupteur d'activation, mais ça fait beaucoup de switches quand même... T'aurais pas une idée pour compenser? x)
Par appel de script , ce serait peut-etre plus simple . genre :
Modify_transfert('Volcan','Enable',TRUE) # rend actif
Modify_transfert('Volcan','Enable',FALSE) # rend inactif(grisé)
Modify_transfert('Volcan','Display',TRUE) # affiché
Modify_transfert('Volcan','Display',FALSE) # non affiché
Ou qq chose comme ça . Et comme ça , on pourrait agir avec un"appeler script" pour modifier la liste des destinations . ça a l'air compliqué pour un profane mais il fera des copier-coller et pourra s'en sortir sans piger le code .
- Azuma-01Membre
- Nombre de messages : 94
Age : 28
Localisation : Amos
Distinction : aucune
Date d'inscription : 22/09/2009
Re: [RGSS3]MTS - MistTransferSystem v.1.0
le Mar 7 Fév 2012 - 21:20
@dricc a écrit:Par appel de script , ce serait peut-etre plus simple . genre :
Modify_transfert('Volcan','Enable',TRUE) # rend actif
Modify_transfert('Volcan','Enable',FALSE) # rend inactif(grisé)
Modify_transfert('Volcan','Display',TRUE) # affiché
Modify_transfert('Volcan','Display',FALSE) # non affiché
Ou qq chose comme ça . Et comme ça , on pourrait agir avec un"appeler script" pour modifier la liste des destinations . ça a l'air compliqué pour un profane mais il fera des copier-coller et pourra s'en sortir sans piger le code .
et pour recupérer les éléments visible on pourait utiliser la methode Array#select
- Code:
Teleport.select{|a| a[index_si_visible] }.each{ ...ajouter dans clé...
Rendu là ça relève des préférences du programmeur, mais bon... :dehors:
- Az'Membre
- Nombre de messages : 3318
Age : 75
Date d'inscription : 22/12/2007
Re: [RGSS3]MTS - MistTransferSystem v.1.0
le Jeu 9 Fév 2012 - 10:36
Exactement!
Puis, je pensais me servir de la classe Game_System avec une méthode qui ferait le tri d'informations à ajouter/supprimer dans une variable[], et vérifierait si on doit griser ou non, etc., directement dans la Scene selon l'id rentré en argument grâce à la technique d'Azuma.
Cette variable contiendrait donc la Constante Teleport, et avec la méthode Array#delete(arg), je supprime les valeurs de mon tableau récupéré, et j'me ressers d'un appel du style :
Utilisable dans un évènement commun, donc. :3
Puis, je pensais me servir de la classe Game_System avec une méthode qui ferait le tri d'informations à ajouter/supprimer dans une variable[], et vérifierait si on doit griser ou non, etc., directement dans la Scene selon l'id rentré en argument grâce à la technique d'Azuma.
Cette variable contiendrait donc la Constante Teleport, et avec la méthode Array#delete(arg), je supprime les valeurs de mon tableau récupéré, et j'me ressers d'un appel du style :
- Code:
$game_system.mod_teleport(fonction = 0 1 ou 2, id_du_array_dans_ma_constante_par_defaut = 0)
Utilisable dans un évènement commun, donc. :3
- driccMembre
- Nombre de messages : 2760
Localisation : Lille
Distinction : Altruiste - Incarnation de la Patience [Mist']
Date d'inscription : 10/08/2009
Re: [RGSS3]MTS - MistTransferSystem v.1.0
le Jeu 9 Fév 2012 - 11:04
Dans ce cas , tu pourrais mettre cette methode dans Game_Interpreter plutot que Game_system . ça simplifie puisque dans ton evenement commun tu pourras faire directement :
- Code:
mod_teleport(fonction = 0 1 ou 2, id_du_array_dans_ma_constante_par_defaut = 0)
- Az'Membre
- Nombre de messages : 3318
Age : 75
Date d'inscription : 22/12/2007
Re: [RGSS3]MTS - MistTransferSystem v.1.0
le Jeu 9 Fév 2012 - 11:18
Ca pourrait être intéressant, mais j'serais pas obligé d'instancier une nouvelle fois Game_Interpreter dans Scene_Teleport si je fais ça?
Parce que le tableau final récupéré grâce à la méthode me servira aussi dans la Scene, pour uniformiser le code et ainsi faire les opérations sur mon Array. A moins que ce soit défini dans les globales du DataManager de Ace, mais il me semble que ça aurait plus sa place dans Scene_Map/Game_Map... Non? Parce qu'il doit y avoir un Interpreter sur la Map, et surement un dans les Battle, donc on ne peut logiquement pas se servir d'une seule globale, puisque je suppose qu'il faudrait la clear puis la redéfinir à chaque transition entre Map/Battle, et ce, sans pouvoir dumper les données (positions des évènements, par exemple).
Après, j'peux me tromper. Mais, à la limite, je pense qu'il faudrait carrément faire une méthode dans le Game_System, utilisable comme j'l'ai fait plus haut, puis ensuite coder dans le Game_Interpreter une méthode relais se servant de l'objet Game_System, comme tu viens de le faire. Plus pratique, en effet.
Parce que le tableau final récupéré grâce à la méthode me servira aussi dans la Scene, pour uniformiser le code et ainsi faire les opérations sur mon Array. A moins que ce soit défini dans les globales du DataManager de Ace, mais il me semble que ça aurait plus sa place dans Scene_Map/Game_Map... Non? Parce qu'il doit y avoir un Interpreter sur la Map, et surement un dans les Battle, donc on ne peut logiquement pas se servir d'une seule globale, puisque je suppose qu'il faudrait la clear puis la redéfinir à chaque transition entre Map/Battle, et ce, sans pouvoir dumper les données (positions des évènements, par exemple).
Après, j'peux me tromper. Mais, à la limite, je pense qu'il faudrait carrément faire une méthode dans le Game_System, utilisable comme j'l'ai fait plus haut, puis ensuite coder dans le Game_Interpreter une méthode relais se servant de l'objet Game_System, comme tu viens de le faire. Plus pratique, en effet.
- zidoMembre
- Nombre de messages : 67
Age : 25
Localisation : France
Distinction : aucune
Date d'inscription : 19/05/2012
Re: [RGSS3]MTS - MistTransferSystem v.1.0
le Sam 19 Mai 2012 - 23:21
"Invalid or deleted file"
Quelqu'un peut me donner un autre lien ou le script directement plz

Quelqu'un peut me donner un autre lien ou le script directement plz

- LightNoxMembre
- Nombre de messages : 1759
Age : 30
Localisation : Chez Moi ^^
Date d'inscription : 10/04/2008
Re: [RGSS3]MTS - MistTransferSystem v.1.0
le Dim 20 Mai 2012 - 0:37
Euh .... Oo.
a part que tu n'est pas bien lu je ne sais pas ou est le problème ??
et en bonus ça :
Tu n'a pas besoin de la démo pour utiliser ce script tu as tout sous la main là.
a part que tu n'est pas bien lu je ne sais pas ou est le problème ??
- Code:
#==============================================================================
# ▼ MTS - MistTransferSystem
# Version : 1.0
#------------------------------------------------------------------------------
# Permet de créer un système de téléportation, intégrable dans un menu ou bien
# utilisable à part.
# Par Mist'
# Le 06/02/12
# http://www.rpgmakervx-fr.com/
#
# Merci à Skillo et Berka pour leur aide quant aux fonctions des Arrays!
#==============================================================================
# Créer le Dossier "Graphics/MTS/" s'il n'existe pas.
#==============================================================================
TMP = "MTS"
Dir.mkdir("Graphics/#{TMP}", 0777) rescue nil
FileTest.exist?(TMP) ? nil : p("Le dossier #{TMP} a bien été créé !")
#==============================================================================
# Dans ce même dossier, placez vos images d'illustration.
# Pour paramètrer les images utilisées :
# Aux lignes similaires à celle-ci :
# ["Désert", 1, 9, 2, "nom_image"]
# nom_image est à remplacer par le nom de votre image.
#==============================================================================
#==============================================================================
# ▼ MTS - Mist_Transfer_Sys
# Module
#==============================================================================
module Mist_Transfer_Sys
# Textes affichés dans la fenêtre du haut. Modulable.
Msg_Help = ["Menu de téléportation", "Choisissez votre destination"]
# Paramètrage des téléportations :
Teleport = [
# Vous pouvez rajouter vos commandes personnalisées en suivant ce modèle :
#
# [Nom_de_la_commande, ID_MAP, X_Arrivée, Y_Arrivée, Nom_image_utilisée],
["Désert", 1, 34, 10, "DarkSpace2"],
["Plaine", 2, 6, 6, "Mountains4"],
["Volcan", 3, 6, 6, "Mountains5"],
["Vallée", 4, 9, 5, "Mountains1"],
["Ruines", 5, 9, 35, "Mountains2"],
["Espace", 6, 12, 28, "Mountains3"],
["Ville", 7, 28, 5, "BlueSky"],
["Village", 8, 25, 40, "CloudySky1"],
["Forêt", 9, 27, 22, "CloudySky2"],
["Grotte", 10, 5, 15, "DarkSpace1"],
# NE PAS EFFACER.
] # <-
# NE PAS EFFACER.
# Image par défaut si l'image d'illustration définie n'existe pas.
Image_Dft = "Défaut"
# Nom de la commande dans le menu
NOM_DS_MENU = "Téléport"
# Répertoire où aller chercher les images
Tr_Cache = "Graphics/#{TMP}/"
#----------------------------------------------------------
# Prévu pour la V.2
#
# Effet Sonore si validation de la téléportation
# (true = activé, false = désactivé)
SE_Telep = true
# Nom du SE
Nom_SE = "Transfer"
#-----------------------------------------------------------
end
#===============================================================================
# ▼ Cache
#===============================================================================
module Cache
def self.tr_cache(filename)
load_bitmap(Mist_Transfer_Sys::Tr_Cache, filename)
end
end
#==============================================================================
# ▼ Window_TransferCommand
#==============================================================================
class Window_TransferCommand < Window_Command
include Mist_Transfer_Sys
#--------------------------------------------------------------------------
# ● Initialize
#--------------------------------------------------------------------------
def initialize(x, y)
super(x, y)
update_position(x, y)
self.openness = 0
open
end
#--------------------------------------------------------------------------
# ● Window_width
#--------------------------------------------------------------------------
def window_width
return 160
end
#--------------------------------------------------------------------------
# ● Update_position
# x : x
# y : y
#--------------------------------------------------------------------------
def update_position(x, y)
self.x = x
self.y = y
end
#--------------------------------------------------------------------------
# ● Make_command_list
#--------------------------------------------------------------------------
def make_command_list
clé = []
for i in 0...Teleport.size
clé.push(Teleport[i][0])
add_command(clé[i], :i)
end
add_command("Quitter", :quit)
end
end
#==============================================================================
# ▼ Scene_Transfer
#==============================================================================
class Scene_Transfer < Scene_Base
include Mist_Transfer_Sys
#--------------------------------------------------------------------------
# ● Start
#--------------------------------------------------------------------------
def start
super
creer_win_help
creer_win_comm
creer_img
end
#--------------------------------------------------------------------------
# ● Creer_win_help
#--------------------------------------------------------------------------
def creer_win_help
@win_help = Window_Base.new(0, 0, 544, 44*Msg_Help.size)
Msg_Help.each do |i|
@win_help.draw_text(0, 32*Msg_Help.index(i), 544, 32, i, 1)
end
end
#--------------------------------------------------------------------------
# ● Creer_win_comm
#--------------------------------------------------------------------------
def creer_win_comm
@win_comm = Window_TransferCommand.new(0, @win_help.height)
@win_comm.height = Graphics.height - @win_help.height
@win_comm.set_handler(:i, method(:transf_process))
@win_comm.set_handler(:quit, method(:quitter))
end
#--------------------------------------------------------------------------
# ● Creer_img
#--------------------------------------------------------------------------
def creer_img
@sprite = Sprite.new
@sprite.x = @win_comm.width
@sprite.y = @win_help.height
end
#--------------------------------------------------------------------------
# ● Update
#--------------------------------------------------------------------------
def update
super
update_img
end
#--------------------------------------------------------------------------
# ● Dispose_all_sprites
#--------------------------------------------------------------------------
def dispose_all_sprites
instance_variables.each do |varname|
ivar = instance_variable_get(varname)
ivar.dispose if ivar.is_a?(Sprite)
end
end
#--------------------------------------------------------------------------
# ● Terminate
#--------------------------------------------------------------------------
def terminate
super
dispose_all_sprites
end
#--------------------------------------------------------------------------
# ● Update_img
#--------------------------------------------------------------------------
def update_img
index = @win_comm.index
clé = []
for i in 0...Teleport.size
clé.push(Teleport[i][4])
end
@sprite.bitmap = Cache.tr_cache(clé[index]) rescue @sprite.bitmap = Cache.tr_cache(Image_Dft)
end
#--------------------------------------------------------------------------
# ● Transf_process
#--------------------------------------------------------------------------
def transf_process
i = @win_comm.index
$game_player.reserve_transfer(Teleport[i][1],Teleport[i][2],Teleport[i][3])
SceneManager.goto(Scene_Map)
end
#--------------------------------------------------------------------------
# ● Quitter
#--------------------------------------------------------------------------
def quitter
SceneManager.goto(Scene_Menu)
end
end
#==============================================================================
# ▼ Window_MenuCommand
#==============================================================================
class Window_MenuCommand < Window_Command
include Mist_Transfer_Sys
#--------------------------------------------------------------------------
# ● AJOUT ~
#--------------------------------------------------------------------------
def add_transfer_command
add_command(NOM_DS_MENU, :transfer)
end
#--------------------------------------------------------------------------
# ● MODIF ~
#--------------------------------------------------------------------------
def make_command_list
add_main_commands
add_formation_command
add_original_commands
add_transfer_command # AJOUT #
add_save_command
add_game_end_command
end
end
#==============================================================================
# ▼ Window_MenuCommand
#==============================================================================
class Scene_Menu < Scene_MenuBase
#--------------------------------------------------------------------------
# ● ALIAS ~
#--------------------------------------------------------------------------
alias mts_old_command create_command_window
def create_command_window
mts_old_command
@command_window.set_handler(:transfer, method(:command_transfer))
end
#--------------------------------------------------------------------------
# ● AJOUT ~
#--------------------------------------------------------------------------
def command_transfer
SceneManager.call(Scene_Transfer)
end
end
et en bonus ça :
- Spoiler:
Tu n'a pas besoin de la démo pour utiliser ce script tu as tout sous la main là.
Re: [RGSS3]MTS - MistTransferSystem v.1.0
le Dim 20 Mai 2012 - 0:45
bon petit script merci mist en plus il est personalisable vraiment pas mal !
- zidoMembre
- Nombre de messages : 67
Age : 25
Localisation : France
Distinction : aucune
Date d'inscription : 19/05/2012
Re: [RGSS3]MTS - MistTransferSystem v.1.0
le Dim 20 Mai 2012 - 0:46
:boulet: J'avais pas vu que le script était donné...
Merci de la réponse!
(Qu'est ce que je suis c** quand même
)
Merci de la réponse!
(Qu'est ce que je suis c** quand même
![[RGSS3]MTS - MistTransferSystem v.1.0 450709](https://2img.net/u/1612/18/81/17/smiles/450709.gif)
- PharazonStaffeux retraité
- Nombre de messages : 1700
Age : 34
Localisation : Au Pays des Bisounours
Distinction : Super distinction!
[Coco']
Date d'inscription : 14/04/2010
Re: [RGSS3]MTS - MistTransferSystem v.1.0
le Dim 20 Mai 2012 - 16:16
le script est affiché sur le premier post. Tu as juste à le copier/coller dans ta page de script au dessus de main.
Re: [RGSS3]MTS - MistTransferSystem v.1.0
le Dim 20 Mai 2012 - 19:39
Personne pour re-uploader la démo ?
- Az'Membre
- Nombre de messages : 3318
Age : 75
Date d'inscription : 22/12/2007
Re: [RGSS3]MTS - MistTransferSystem v.1.0
le Dim 20 Mai 2012 - 22:48
Le script est dans le post 

- BrandobscureMembre
- Nombre de messages : 531
Age : 24
Localisation : Belgique
Distinction : aucune
Date d'inscription : 03/01/2011
Re: [RGSS3]MTS - MistTransferSystem v.1.0
le Ven 25 Mai 2012 - 19:00
Salut !
Dis ?
Sur ton script a cette ligne :
Si je veux changer le répertoire de destinations et le mettre
dans Battlebacks je met sa :
Merci d'avance
Dis ?
Sur ton script a cette ligne :
- Code:
Tr_Cache = "Graphics/#{TMP}/"
Si je veux changer le répertoire de destinations et le mettre
dans Battlebacks je met sa :
- Code:
Tr_Cache = "Graphics/Battlebacks1#{TMP}/"
Merci d'avance

- Az'Membre
- Nombre de messages : 3318
Age : 75
Date d'inscription : 22/12/2007
Re: [RGSS3]MTS - MistTransferSystem v.1.0
le Ven 25 Mai 2012 - 20:03
Change ça :
En ça :
Enjoy, j'referais une démo un de ces jours, avec une update
- Code:
TMP = "MTS"
En ça :
- Code:
TMP = "Battlebacks1"
Enjoy, j'referais une démo un de ces jours, avec une update

- BrandobscureMembre
- Nombre de messages : 531
Age : 24
Localisation : Belgique
Distinction : aucune
Date d'inscription : 03/01/2011
Re: [RGSS3]MTS - MistTransferSystem v.1.0
le Sam 26 Mai 2012 - 11:19
Merci beaucoup, ton script vas me servir.
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum