Page 2 sur 2 • 1, 2
- LitykMembre
- Nombre de messages : 173
Date d'inscription : 11/04/2011
Re: Ring Menu
Lun 25 Nov 2013 - 0:29
Ok, ça va déjà nettement mieux, toutefois, des bugs persistent.
Lorsque je choisis d'aller dans Quêtes, une erreur apparait
correspondante à la ligne :
command_quest
Lorsque je choisis d'aller dans Equipement, Magies, ou Statut, une autre erreur apparait
correspondante à la ligne :
if $game_system.maic_inserted_menu_commands.include?(@command_window.current_symbol)
Lorsque je choisis d'aller dans Quêtes, une erreur apparait
correspondante à la ligne :
command_quest
Lorsque je choisis d'aller dans Equipement, Magies, ou Statut, une autre erreur apparait
correspondante à la ligne :
if $game_system.maic_inserted_menu_commands.include?(@command_window.current_symbol)
- 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: Ring Menu
Lun 25 Nov 2013 - 0:48
Voici test et dis moi quoi, pour info cette version est testée sur un projet vierge et fonctionne parfaitement :
- Code:
#====================================================================
#Script: Ring Menu [ACE]
#Criado por: Victor Gomez
#
#Modifié et traduit par Spywaretof
#Ajout d'une nouvelle entrée ppur le script de quête de Modern Algebra.
#Dernière modif : 24.11.2013
#====================================================================
module Configuration
#nome dos items, ["items","sair","equip" etc...]
Item_name = [
"Inventaire",
"Magie",
"Equipements",
"Statut",
"Quêtes",
"Formation",
"Sauvegarder",
"Quitter"
]
#Nombre d'options maximum
Item_max = 8
#icones utilisés = [144,128,40,40,137,149,112,1]
Item_icon = [144,128,40,41,137,149,112,1]
#Activé ? ["item","skill"...]
Item_hab = [true,true,true,true,true,true,true,true]
end
#==============================================================================
# ** Scene_Menu
#------------------------------------------------------------------------------
#==============================================================================
class Scene_Menu < Scene_MenuBase
#--------------------------------------------------------------------------
# * Initialisation
#--------------------------------------------------------------------------
def start
super
@win_local = Window_Local.new(0,0)
px = $game_player.screen_x - 16
py = $game_player.screen_y - 28
@ring_menu = Window_RingMenu_Comando.new(px,py)
create_status_window
@status_window.visible = false
create_gold_window
end
def update
super
@ring_menu.update
@win_local.update
if Input.trigger?(Input::C)
case @ring_menu.indice
when 0
command_item
when 1,2,3,4
command_personal
when 5
command_formation
when 6
command_save
when 7
command_game_end
end
end
if Input.trigger?(:B)
return_scene
end
if Input.trigger?(Input::UP) or Input.trigger?(Input::LEFT) and @ring_menu.lol != false
Sound.play_cursor
@ring_menu.girar(3)
return
end
if Input.trigger?(Input::DOWN) or Input.trigger?(Input::RIGHT) and @ring_menu.lol != false
Sound.play_cursor
@ring_menu.girar(4)
return
end
end
def terminate
super
@ring_menu.dispose
@win_local.dispose
end
#--------------------------------------------------------------------------
# * Cria��o da janela de comando
#--------------------------------------------------------------------------
def create_command_window
@command_window = Window_MenuCommand.new
@command_window.set_handler(:item, method(:command_item))
@command_window.set_handler(:skill, method(:command_personal))
@command_window.set_handler(:equip, method(:command_personal))
@command_window.set_handler(:status, method(:command_personal))
@command_window.set_handler(:formation, method(:command_formation))
@command_window.set_handler(:save, method(:command_save))
@command_window.set_handler(:game_end, method(:command_game_end))
@command_window.set_handler(:cancel, method(:return_scene))
end
#--------------------------------------------------------------------------
# * Cria��o da janela de dinheiro
#--------------------------------------------------------------------------
def create_gold_window
@gold_window = Window_Gold.new
@gold_window.x = -20
@gold_window.y = Graphics.height - @gold_window.height
@gold_window.opacity = 0
end
#--------------------------------------------------------------------------
# * Cria��o da janela de atributos
#--------------------------------------------------------------------------
def create_status_window
@status_window = Window_MenuStatus.new(160, 0)
end
#--------------------------------------------------------------------------
# * Comando [Item]
#--------------------------------------------------------------------------
def command_item
SceneManager.call(Scene_Item)
end
#--------------------------------------------------------------------------
# * Comando [Habilidade] [Equipamentos] [Atributos]
#--------------------------------------------------------------------------
def command_personal
@status_window.select_last
@status_window.visible = true
@ring_menu.lol = false
@status_window.activate
@status_window.set_handler(:ok, method(:on_personal_ok))
@status_window.set_handler(:cancel, method(:on_personal_cancel))
end
#--------------------------------------------------------------------------
# * Comando [Forma��o]
#--------------------------------------------------------------------------
def command_formation
@status_window.select_last
@status_window.activate
@status_window.set_handler(:ok, method(:on_formation_ok))
@status_window.set_handler(:cancel, method(:on_formation_cancel))
end
#--------------------------------------------------------------------------
# * Comando [Salvar]
#--------------------------------------------------------------------------
def command_save
SceneManager.call(Scene_Save)
end
#--------------------------------------------------------------------------
# * Comando [Fim do Jogo]
#--------------------------------------------------------------------------
def command_game_end
SceneManager.call(Scene_End)
end
#--------------------------------------------------------------------------
# * Comandos individuais [Confirma��o]
#--------------------------------------------------------------------------
def on_personal_ok
case @ring_menu.indice
when 1
@status_window.visible = false
SceneManager.call(Scene_Skill)
when 2
@status_window.visible = false
SceneManager.call(Scene_Equip)
when 3
@status_window.visible = false
SceneManager.call(Scene_Status)
when 4
SceneManager.call(Scene_Quest)
end
end
#--------------------------------------------------------------------------
# * Comandos individuais [Cancelamento]
#--------------------------------------------------------------------------
def on_personal_cancel
@status_window.visible = false
@ring_menu.lol = true
@status_window.unselect
end
#--------------------------------------------------------------------------
# * Mudan�a de Ordem [Confirma��o]
#--------------------------------------------------------------------------
def on_formation_ok
@status_window.visible = true
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
#--------------------------------------------------------------------------
# * Mudan�a de Ordem [Cancelamento]
#--------------------------------------------------------------------------
def on_formation_cancel
if @status_window.pending_index >= 0
@status_window.pending_index = -1
@status_window.activate
else
@status_window.unselect
@status_window.visible = false
end
end
end
class Window_RingMenu_Comando < Window_Base
DurIni = 30
DurMov = 15
RaioAnel = 64
ModoIni = 1
ModoEsp = 2
ModoMD = 3
ModoME = 4
SE_Inicio = ""
attr_accessor :lol
attr_accessor :indice
#--------------------------------------------------------------------------
# Inicia o objeto
#--------------------------------------------------------------------------
def initialize(centro_x,centro_y)
super(0, 0, 544, 416)
self.opacity = 0
self.contents.font.size = 16
@item_name = Configuration::Item_name
@item_max = Configuration::Item_max
@item_icon = Configuration::Item_icon
@item_hab = Configuration::Item_hab
@indice = 0
@cx = centro_x - 12
@cy = centro_y - 12
inicia_menu
refresh
@lol = true
end
#--------------------------------------------------------------------------
# Atualiza o objeto
#--------------------------------------------------------------------------
def update
super
refresh
end
#--------------------------------------------------------------------------
# Atualiza o objeto
#--------------------------------------------------------------------------
def refresh
self.contents.clear
case @modo
when ModoIni
refresh_inicio
when ModoEsp
refresh_espera
when ModoMD
refresh_mover(1)
when ModoME
refresh_mover(0)
end
sw = self.contents.width
rect = Rect.new((@cx - ((sw-32)/2))+12, @cy - 40, sw-32, 32)
self.contents.draw_text(rect, @item_name[@indice],1)
end
#--------------------------------------------------------------------------
# Abre o menu
#--------------------------------------------------------------------------
def refresh_inicio
d1 = 2.0 * Math::PI / @item_max
d2 = 1.0 * Math::PI / DurIni
r = RaioAnel - 1.0 * RaioAnel * @passos / DurIni
for i in 0...@item_max
j = i - @indice
d = d1 * j + d2 * @passos
x = @cx + ( r * Math.sin( d ) ).to_i
y = @cy - ( r * Math.cos( d ) ).to_i
desenha_item(x, y, i)
end
@passos -= 1
if @passos < 1
@modo = ModoEsp
end
end
#--------------------------------------------------------------------------
# Atualiza o menu
#--------------------------------------------------------------------------
def refresh_espera
d = 2.0 * Math::PI / @item_max
for i in 0...@item_max
j = i - @indice
x = @cx + ( RaioAnel * Math.sin( d * j ) ).to_i
y = @cy - ( RaioAnel * Math.cos( d * j ) ).to_i
desenha_item(x, y, i)
end
end
#--------------------------------------------------------------------------
# Movimenta o menu
#--------------------------------------------------------------------------
def refresh_mover(modo)
d1 = 2.0 * Math::PI / @item_max
d2 = d1 / DurMov
d2 *= -1 if modo != 0
for i in 0...@item_max
j = i - @indice
d = d1 * j + d2 * @passos
x = @cx + ( RaioAnel * Math.sin( d ) ).to_i
y = @cy - ( RaioAnel * Math.cos( d ) ).to_i
desenha_item(x, y, i)
end
@passos -= 1
if @passos < 1
@modo = ModoEsp
end
end
#--------------------------------------------------------------------------
# Desenha o icone
#--------------------------------------------------------------------------
def desenha_item(x, y, i)
if @indice == i
self.cursor_rect.set(x-4, y-4, 32, 32)
draw_icon(@item_icon[i], x, y, @item_hab[i])
else
draw_icon(@item_icon[i], x, y, @item_hab[i])
end
end
#--------------------------------------------------------------------------
# Inicia o menu
#--------------------------------------------------------------------------
def inicia_menu
@modo = ModoIni
@passos = DurIni
if SE_Inicio != nil and SE_Inicio != "" and @activate
Audio.se_play("Audio/SE/" + SE_Inicio, 80, 100)
end
end
#--------------------------------------------------------------------------
# Gira o menu
#--------------------------------------------------------------------------
def girar(modo)
if modo == ModoMD
@indice -= 1
@indice = @item_hab.size - 1 if @indice < 0
elsif modo == ModoME
@indice += 1 and @activate
@indice = 0 if @indice >= @item_hab.size
else
return
end
@modo = modo
@passos = DurMov
end
end
#==============================================================================
# Scene_Title
#------------------------------------------------------------------------------
# Faz modifica��es nescessarias para a exibi��o do nome do mapa
#==============================================================================
module DataManager
def self.load_normal_database
$data_actors = load_data("Data/Actors.rvdata2")
$data_classes = load_data("Data/Classes.rvdata2")
$data_skills = load_data("Data/Skills.rvdata2")
$data_items = load_data("Data/Items.rvdata2")
$data_weapons = load_data("Data/Weapons.rvdata2")
$data_armors = load_data("Data/Armors.rvdata2")
$data_enemies = load_data("Data/Enemies.rvdata2")
$data_troops = load_data("Data/Troops.rvdata2")
$data_states = load_data("Data/States.rvdata2")
$data_animations = load_data("Data/Animations.rvdata2")
$data_tilesets = load_data("Data/Tilesets.rvdata2")
$data_common_events = load_data("Data/CommonEvents.rvdata2")
$data_system = load_data("Data/System.rvdata2")
$data_mapinfos = load_data("Data/MapInfos.rvdata2")
$data_mapinfo = load_data("Data/MapInfos.rvdata2")
end
end
#==============================================================================
# Window_Local
#------------------------------------------------------------------------------
# Cria a janela responsavel pela exibi��o do nome do mapa
#==============================================================================
class Window_Local < Window_Base
#--------------------------------------------------------------------------
# Inicia o objeto
#--------------------------------------------------------------------------
def initialize(x, y)
super(x, y, 160, 96)
self.opacity = 0
refresh
end
#--------------------------------------------------------------------------
# Atualiza o objeto
#--------------------------------------------------------------------------
def refresh
self.contents.clear
self.contents.font.color = normal_color
self.contents.draw_text(4, 0, 120, 32, "Local:")
self.contents.font.color = system_color
self.contents.draw_text(4, 32, 120, 32, $data_mapinfo[$game_map.map_id].name, 2)
end
end
- LitykMembre
- Nombre de messages : 173
Age : 31
Localisation : Metz
Distinction : aucune
Date d'inscription : 11/04/2011
Re: Ring Menu
Lun 25 Nov 2013 - 1:31
Toujours le même problème à la ligne 2867 du script de journal de quetes.
- 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: Ring Menu
Lun 25 Nov 2013 - 1:40
Le script de quête ne fait que 2744 lignes merci de prendre la dernière version de son script soit la version 1.0.3 pour VxAce.
- LitykMembre
- Nombre de messages : 173
Age : 31
Localisation : Metz
Distinction : aucune
Date d'inscription : 11/04/2011
Re: Ring Menu
Lun 25 Nov 2013 - 1:44
Aurai tu un lien pour cette version ? Je crois avoir la version 1.0.
- 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: Ring Menu
Lun 25 Nov 2013 - 1:48
Voila le lien vers la nouvelle version de ton script de quête :
http://rmrk.net/index.php/topic,45127.0.html
http://rmrk.net/index.php/topic,45127.0.html
- LitykMembre
- Nombre de messages : 173
Age : 31
Localisation : Metz
Distinction : aucune
Date d'inscription : 11/04/2011
Re: Ring Menu
Lun 25 Nov 2013 - 1:54
Ca ne change rien au problème, malheureusement. J'ai toujours cette même erreur des que je vais dans un sous menu. S'il y a plus de lignes c'est parce qu'il y a déjà des quêtes que j'ai préparées.
- 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: Ring Menu
Lun 25 Nov 2013 - 2:00
Bizarre de mon côté cela fonctionne bien, je t envoi la démo des que j ai un moment.
- LitykMembre
- Nombre de messages : 173
Age : 31
Localisation : Metz
Distinction : aucune
Date d'inscription : 11/04/2011
Re: Ring Menu
Lun 25 Nov 2013 - 2:14
C'est vraiment étrange. Le pire étant que ça se bloque a cette ligne
if $game_system.maic_inserted_menu_commands.include?(@command_window.current_symbol)
qui est quasiment la dernière, je n'arrive pas à comprendre à quoi cela correspond et avec ton aide, j'ai tellement l'impression de toucher au but...
if $game_system.maic_inserted_menu_commands.include?(@command_window.current_symbol)
qui est quasiment la dernière, je n'arrive pas à comprendre à quoi cela correspond et avec ton aide, j'ai tellement l'impression de toucher au but...
- 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: Ring Menu
Lun 25 Nov 2013 - 2:22
Dans le début du script essaie de mettre false à la ligne ou il te demande si tu veux que l option qui permet de rentrer dans le menu quête soit apparent. Je pense qu elle est sur true et elle doit être sur false.
- LitykMembre
- Nombre de messages : 173
Age : 31
Localisation : Metz
Distinction : aucune
Date d'inscription : 11/04/2011
Re: Ring Menu
Lun 25 Nov 2013 - 2:32
MENU_ACCESS = false
Pourtant le problème persiste.
Pourtant le problème persiste.
- PolliusMembre
- Nombre de messages : 42
Distinction : aucune
Date d'inscription : 23/10/2015
Re: Ring Menu
Sam 31 Oct 2015 - 20:42
J'ai utilisé ce menu en le combinant avec un script d'alchimie et je ne l'ai pas dans le menu tu pourrais faire une version avec un icône en plus ?
- ZangtherMembre
- Nombre de messages : 913
Distinction : aucune
Date d'inscription : 06/02/2013
Re: Ring Menu
Mar 3 Nov 2015 - 22:39
T'as une version customisable ici : https://rpgmakervx.1fr1.net/t13778-ring-menu
Suffit juste d'ajouter une option dans la configuration et c'est bon.
Suffit juste d'ajouter une option dans la configuration et c'est bon.
Page 2 sur 2 • 1, 2
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|