Partagez
Aller en bas
avatar
Rel
Membre

Nombre de messages : 352
Localisation : Le Mans, Sarthes
Distinction : aucune
Date d'inscription : 18/01/2013

Résolu [Résolu] Demande d'une petite modif sur le script de Mist

le Jeu 3 Juil 2014 - 17:35
Salut à tous!

Je poste cette demande car j'ai besoin de deux modifs sur le script de Mist:
Transfer System  v1.00  - de Mist
Spoiler:


La première:
Est t-il possible de changer le script pour que l'option ne soit plus dans le menu
et que l'on peut l’appeler par un appel de script?

La deuxième:
Est t-il possible de rajouter des conditions (activer un interrupteur) pour débloquer une destination?
(un interrupteur par destination).


Dernière édition par daster le Ven 4 Juil 2014 - 22:04, édité 1 fois
avatar
Heaven
Staffeux retraité

Nombre de messages : 2451
Age : 17
Localisation : Alpes-Maritimes VIRILITÉ OLALA
Distinction : Aucune
Date d'inscription : 18/10/2012

Résolu Re: [Résolu] Demande d'une petite modif sur le script de Mist

le Ven 4 Juil 2014 - 14:09
Essaie ceci, je suis pas du tout sûr que ça fonctionne mais test quand même. J'ai supprimé la partie où l'emplacement du menu était programmée. Sinon, tu as essayé de faire un appel de script ? Je pense que ça peut fonctionner (mais je sais pas du tout si les interrupteurs peuvent être utilisés dans ce cas, à tester x).

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
#==============================================================================
==========================================================
# ▼ 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

Heav'n
avatar
Zouzaka
Membre

Nombre de messages : 279
Age : 19
Distinction : aucune
Date d'inscription : 25/12/2011

Résolu Re: [Résolu] Demande d'une petite modif sur le script de Mist

le Ven 4 Juil 2014 - 14:56
Voila pour toi :
http://pastebin.com/ebBZifXy
l’appelle de script est:
Code:
SceneManager.call(Scene_Transfer)
avatar
Rel
Membre

Nombre de messages : 352
Localisation : Le Mans, Sarthes
Distinction : aucune
Date d'inscription : 18/01/2013

Résolu Re: [Résolu] Demande d'une petite modif sur le script de Mist

le Ven 4 Juil 2014 - 18:32
Merci de vos réponses.

J'ai pris la solution de Zouzaka,
car il y a la condition des interrupteurs.

Pour l'instants je test, et j'édit le message.


Edit: Est t-il possible que tant que l'interrupteur n'est pas activé,
on ne voit pas le nom de destination?

Ou alors ce n'est pas faisable?
avatar
Zouzaka
Membre

Nombre de messages : 279
Age : 19
Distinction : aucune
Date d'inscription : 25/12/2011

Résolu Re: [Résolu] Demande d'une petite modif sur le script de Mist

le Ven 4 Juil 2014 - 19:23
J'ai modifie le script et le voila :
http://pastebin.com/ebBZifXy
avatar
Rel
Membre

Nombre de messages : 352
Localisation : Le Mans, Sarthes
Distinction : aucune
Date d'inscription : 18/01/2013

Résolu Re: [Résolu] Demande d'une petite modif sur le script de Mist

le Ven 4 Juil 2014 - 19:53
Petit problème:

quand j'ai débloqué une destination et que je veux me téléporter
ça donne ça:

Spoiler:


Edit: Quand je sélectionne et appui sur un emplacement dont l'interrupteur n'est pas activé,
ça donne la même chose.
avatar
Zouzaka
Membre

Nombre de messages : 279
Age : 19
Distinction : aucune
Date d'inscription : 25/12/2011

Résolu Re: [Résolu] Demande d'une petite modif sur le script de Mist

le Ven 4 Juil 2014 - 21:50
Voila, désolé de t'avoir fait attendre ^^'
http://pastebin.com/ebBZifXy
avatar
Rel
Membre

Nombre de messages : 352
Localisation : Le Mans, Sarthes
Distinction : aucune
Date d'inscription : 18/01/2013

Résolu Re: [Résolu] Demande d'une petite modif sur le script de Mist

le Ven 4 Juil 2014 - 22:02
Merci Zouzaka.
ça marche maintenant.

Et désolé de t'avoir sollicité a ce point là!

Je met [Résolu] dans le titre
Contenu sponsorisé

Résolu Re: [Résolu] Demande d'une petite modif sur le script de Mist

Revenir en haut
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum