- vickymichaelisMembre
- Nombre de messages : 319
Age : 31
Localisation : dans un fromage
Distinction : aucune
Date d'inscription : 15/01/2013
menu horizontal
Jeu 10 Oct 2013 - 13:43
Après avoir remarquer l'absence du menu de formation dans les "ring menu" je me suis mise en quête d'un menu sympas pour mon jeu, et j'en ai trouver un, en anglais, j'ai juste modifier des phrases pour les mettre en français.
Le script n'est pas de moi, je l'ai trouver sur "RPG maker VX ace community"
Le script n'est pas de moi, je l'ai trouver sur "RPG maker VX ace community"
- un screen de moi:
- script:
- #=============================================================================#
# Parthanandix's Simple Horizontal Menu #
#-----------------------------------------------------------------------------#
# Creates a menu that includes the character sprites instead of the faces and #
# the menu is horizontal. The status is only called upon when needed. #
# #
# Place below Materials but above main. Compatibility with other menu scripts #
# is unlikely. #
#=============================================================================#
module HelpText
# Change the help text below for each of the menu options.
Item_Help = "Utiliser un objet."
Status_Help = "Voir votre statut."
Equip_Help = "Equiper les armes et armures."
Skill_Help = "Utiliser une compétence."
Formation_Help = "Changer la formation."
Save_Help = "Sauvegarder la progression."
Cancel_Help = "Quitter le menu."
# This is to display help text when selecting an actor for a personal command.
Select_Actor_Help = "Choose an actor."
end
class Window_Parthanandix < Window_HorzCommand
def make_command_list
add_command(Vocab::item, :item)
add_command(Vocab::status, :status)
add_command(Vocab::equip, :equip)
add_command(Vocab::skill, :skill)
add_command(Vocab::formation, :formation)
add_command(Vocab::save, :save)
add_command(Vocab::cancel, :cancel)
end
def window_width
return 544
end
def col_max
return 5
end
def update_help
super
case self.index
when 0
@help_window.set_text(HelpText::Item_Help)
when 1
@help_window.set_text(HelpText::Status_Help)
when 2
@help_window.set_text(HelpText::Equip_Help)
when 3
@help_window.set_text(HelpText::Skill_Help)
when 4
@help_window.set_text(HelpText::Formation_Help)
when 5
@help_window.set_text(HelpText::Save_Help)
when 6
@help_window.set_text(HelpText::Cancel_Help)
end
end
end
class Scene_Map < Scene_Base
def call_menu
Sound.play_ok
SceneManager.call(Scene_Horz_Parthanandix)
Window_MenuCommand::init_command_position
end
end
class Window_MenuStatus < Window_Selectable
def window_width
return 544
end
def window_height
return 320
end
def draw_item(index)
actor = $game_party.members[index]
enabled = $game_party.battle_members.include?(actor)
rect = item_rect(index)
draw_item_background(index)
draw_character(actor.character_name, actor.character_index, rect.x + 70 , rect.y + 54)
draw_actor_simple_status(actor, rect.x + 108, rect.y)
end
def draw_item_background(index)
if index == @pending_index
contents.fill_rect(item_rect(index), pending_color)
end
end
def draw_actor_simple_status(actor, x, y)
draw_actor_name(actor, x + 40, y)
draw_actor_level(actor, x + 40, y + line_height * 1)
draw_actor_icons(actor, x + 40, y + line_height * 2)
draw_actor_class(actor, x + 200, y)
draw_actor_hp(actor, x + 200, y + line_height * 1)
draw_actor_mp(actor, x + 200, y + line_height * 2)
end
end
class Window_Gold < Window_Base
def window_width
return 200
end
end
class Window_NewHelp < Window_Base
#--------------------------------------------------------------------------
# * Object Initialization
#--------------------------------------------------------------------------
def initialize(line_number = 1)
super(0, 0, 344, fitting_height(line_number))
end
#--------------------------------------------------------------------------
# * Set Text
#--------------------------------------------------------------------------
def set_text(text)
if text != @text
@text = text
refresh
end
end
#--------------------------------------------------------------------------
# * Clear
#--------------------------------------------------------------------------
def clear
set_text("")
end
#--------------------------------------------------------------------------
# * Set Item
# item : Skills and items etc.
#--------------------------------------------------------------------------
def set_item(item)
set_text(item ? item.description : "")
end
#--------------------------------------------------------------------------
# * Refresh
#--------------------------------------------------------------------------
def refresh
contents.clear
draw_text_ex(4, 0, @text)
end
end
#==============================================================================
# Create Scene
#==============================================================================
class Scene_Horz_Parthanandix < Scene_Base
def start
super
create_help_window
create_window
create_gold_window
create_status_window
create_background
@status_window.visible = false
end
#----------------------------------------------------------------------------
# Terminate
#----------------------------------------------------------------------------
def terminate
super
dispose_background
end
#----------------------------------------------------------------------------
# Create Background
#----------------------------------------------------------------------------
def create_background
@back_sprite = Sprite.new
@back_sprite.bitmap = SceneManager.background_bitmap
@back_sprite.color.set(16, 16, 16, 128)
end
#----------------------------------------------------------------------------
# Dispose Background
#----------------------------------------------------------------------------
def dispose_background
@back_sprite.dispose
end
#----------------------------------------------------------------------------
# Create Gold Window
#----------------------------------------------------------------------------
def create_gold_window
@gold_window = Window_Gold.new
@gold_window.x = 0
@gold_window.y = 368
end
#----------------------------------------------------------------------------
# Create Help Window
#----------------------------------------------------------------------------
def create_help_window
if SceneManager.scene_is?(Scene_Horz_Parthanandix)
@help_window = Window_NewHelp.new
@help_window.x = 200
@help_window.y = 368
end
end
#----------------------------------------------------------------------------
# Create Window
#----------------------------------------------------------------------------
def create_window
@mycmd = Window_Parthanandix.new(0,0)
@mycmd.viewport = @viewport
@mycmd.help_window = @help_window
@mycmd.set_handler(:item, method(:item_menu))
@mycmd.set_handler(:skill, method(:command_personal))
@mycmd.set_handler(:equip, method(:command_personal))
@mycmd.set_handler(:status, method(:command_personal))
@mycmd.set_handler(:formation, method(:command_formation))
@mycmd.set_handler(:save, method(:command_save))
@mycmd.set_handler(:cancel, method(:cancel_menu))
end
#----------------------------------------------------------------------------
# Choose What To Do
#----------------------------------------------------------------------------
def command_personal
@help_window.clear
@help_window.set_text(HelpText::Select_Actor_Help)
@status_window.visible = true
@status_window.select_last
@status_window.activate
@status_window.set_handler(:ok, method(:on_personal_ok))
@status_window.set_handler(:cancel, method(:on_personal_cancel))
end
#----------------------------------------------------------------------------
# Create Status Window
#----------------------------------------------------------------------------
def create_status_window
@status_window = Window_MenuStatus.new(0,48)
end
#--------------------------------------------------------------------------
# Formation Command
#--------------------------------------------------------------------------
def command_formation
@status_window.select_last
@status_window.activate
@status_window.visible = true
@status_window.set_handler(:ok, method(:on_formation_ok))
@status_window.set_handler(:cancel, method(:on_formation_cancel))
end
#--------------------------------------------------------------------------
# * Formation [OK]
#--------------------------------------------------------------------------
def on_formation_ok
if @status_window.pending_index >= 0
$game_party.swap_order(@status_window.index,
@status_window.pending_index)
@status_window.pending_index = -1
@status_window.redraw_item(@status_window.index)
else
@status_window.pending_index = @status_window.index
end
@status_window.activate
end
#--------------------------------------------------------------------------
# * Formation [Cancel]
#--------------------------------------------------------------------------
def on_formation_cancel
if @status_window.pending_index >= 0
@status_window.pending_index = -1
@status_window.activate
else
@status_window.unselect
@mycmd.activate
@status_window.visible = false
end
end
#--------------------------------------------------------------------------
# Save Command
#--------------------------------------------------------------------------
def command_save
SceneManager.call(Scene_Save)
end
#----------------------------------------------------------------------------
# Define Item Menu
#----------------------------------------------------------------------------
def item_menu
SceneManager.call(Scene_Item)
@mycmd.active = false
end
#----------------------------------------------------------------------------
# On Status OK
#----------------------------------------------------------------------------
def on_personal_ok
case @mycmd.current_symbol
when :skill
SceneManager.call(Scene_Skill)
when :equip
SceneManager.call(Scene_Equip)
when :status
SceneManager.call(Scene_Status)
end
end
#----------------------------------------------------------------------------
# On Status Cancel
#----------------------------------------------------------------------------
def on_personal_cancel
@status_window.unselect
@status_window.visible = false
@mycmd.activate
end
#----------------------------------------------------------------------------
# Cancel Action
#----------------------------------------------------------------------------
def cancel_menu
return_scene
end
end
- HareckMembre
- Nombre de messages : 359
Age : 31
Distinction : aucune
Date d'inscription : 26/09/2013
Re: menu horizontal
Jeu 10 Oct 2013 - 14:55
Très sympa! Mais modifier le menu ring est plutôt simple tu sais?
- vickymichaelisMembre
- Nombre de messages : 319
Age : 31
Localisation : dans un fromage
Distinction : aucune
Date d'inscription : 15/01/2013
Re: menu horizontal
Jeu 10 Oct 2013 - 15:01
Je ne sais pas du tout faire ou modifier des scripts, donc non, ce n'est pas plus simple pour moi ^^
- HareckMembre
- Nombre de messages : 359
Age : 31
Distinction : aucune
Date d'inscription : 26/09/2013
Re: menu horizontal
Jeu 10 Oct 2013 - 15:04
Je comprends! Y'a une époque ou moi aussi je ne voulais pas toucher aux scripts...
- HeavenStaffeux retraité
- Nombre de messages : 2441
Age : 23
Localisation : Alpes-Maritimes VIRILITÉ OLALA
Distinction : Aucune
Date d'inscription : 18/10/2012
Re: menu horizontal
Jeu 10 Oct 2013 - 15:13
Merci du partage (:
Vraiment sympas ce menu ^^
Heav'n
Vraiment sympas ce menu ^^
Heav'n
- CraytMembre
- Nombre de messages : 216
Age : 25
Localisation : Devant mon ordinateur
Distinction : aucune
Date d'inscription : 28/10/2013
Re: menu horizontal
Lun 11 Nov 2013 - 22:35
Merci du partage !
- SpytjeAdministrateur
- Nombre de messages : 5935
Localisation : La terre
Distinction : Spiraliste [Korn']
Forestia : Projet du mois juillet 2014
Papy Pulkigrat [Yama']
Date d'inscription : 16/03/2008
Re: menu horizontal
Lun 11 Nov 2013 - 22:52
Comme dit Hareck il est très simple de modifier le ring-menu mais ce script plaira à beaucoup d'entre nous qui n'aiment pas modifier/toucher aux scripts.
Merci pour le partage et la traduction également !
Merci pour le partage et la traduction également !
_________________
Re: menu horizontal
Mar 4 Nov 2014 - 20:30
Super ce script
- Ecran de sélection Horizontal et Vertical
- Ecran titre Commande Horizontal
- Faire un choix par image en position horizontal par evenement commun
- problème Iconset/script menu tournent /marchand/menu compétence/etc.... [résolu]
- [Menu, Keybind et Map] Script - Affichage de la carte par pression d'un bind ou menu.
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum