- XakuXMembre
- Nombre de messages : 1263
Age : 30
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
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
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 : 34
Localisation : Chez Moi ^^
Date d'inscription : 10/04/2008
Re: [RGSS3]MTS - MistTransferSystem v.1.0
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
Re: [RGSS3]MTS - MistTransferSystem v.1.0
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
- cator. lolMembre
- Nombre de messages : 164
Age : 33
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
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 ?
- 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
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 : 32
Localisation : Amos
Distinction : aucune
Date d'inscription : 22/09/2009
Re: [RGSS3]MTS - MistTransferSystem v.1.0
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:
- 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
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)
- zidoMembre
- Nombre de messages : 67
Age : 29
Localisation : France
Distinction : aucune
Date d'inscription : 19/05/2012
Re: [RGSS3]MTS - MistTransferSystem v.1.0
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 : 34
Localisation : Chez Moi ^^
Date d'inscription : 10/04/2008
Re: [RGSS3]MTS - MistTransferSystem v.1.0
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
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 : 29
Localisation : France
Distinction : aucune
Date d'inscription : 19/05/2012
Re: [RGSS3]MTS - MistTransferSystem v.1.0
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 )
- PharazonStaffeux retraité
- Nombre de messages : 1701
Age : 38
Localisation : Au Pays des Bisounours
Distinction : Super distinction!
[Coco' ]
Date d'inscription : 14/04/2010
Re: [RGSS3]MTS - MistTransferSystem v.1.0
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.
- BrandobscureMembre
- Nombre de messages : 528
Age : 28
Localisation : Belgique
Distinction : aucune
Date d'inscription : 03/01/2011
Re: [RGSS3]MTS - MistTransferSystem v.1.0
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
- BrandobscureMembre
- Nombre de messages : 528
Age : 28
Localisation : Belgique
Distinction : aucune
Date d'inscription : 03/01/2011
Re: [RGSS3]MTS - MistTransferSystem v.1.0
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