Jump to content
Rpg²S Forum
  • 0

Imparare skill tramite equip.


Draxis
 Share

Question

Dunque,nel mio progetto vorrei fare in modo che equipaggiando un determinato oggetto succeda:

 

-Se [nomepg] ha equipaggiato [nomeoggetto]

---Se [nomepg] livello 10

--[nomepg] impara Fuoco I

---Se [nomepg] livello 20

--[nomepg] impara Fuoco II

---Se [nomepg] livello 30

--[nomepg] impara Fuoco III

---Se [nomepg] livello 40

--[nomepg] impara Fuoco IV

-Se no

--disimpara le skill sopra

 

Possibilmente vorrei fare tutto tramite common event,che penso si possa fare ma non so come (nelle conditional branch non c'è una condizione per i livelli).

Ho cercato tutorial ovunque ma non ho trovato nulla a riguardo.

Sapreste aiutarmi? :tongue:

Edited by Draxis

Apprendimento Rpg Maker XP: |||||||||||||||||||

Progetto in corso: CaelestiS: |||||||||||||||||||

Link to comment
Share on other sites

7 answers to this question

Recommended Posts

  • 0

Mmmh crea un evento in processo parallelo negli eventi comune attivabile tramite una switch che metterai ON all'inizio della partita e quindi sarà attivo per tutto il gioco:

If1 eroe Arshes ha equipaggiato Spada Focata

-- Variabile LivelloArshes==Arshes livello

-- if2 Variabile LivelloArshes > 9

---- apprendi magia fuoco1

-- end if2

-- if3 Variabile LivelloArshes > 19

---- apprendi magia fuoco2

-- end if3

-- if4 Variabile LivelloArshes > 29

---- apprendi magia fuoco3

-- end if4

(e così via tanti in per quante sono le abilità da apprendere!)

ELSE (dell'if1)

- dimentica magia fuoco1

- dimentica magia fuoco2

- dimentica magia fuoco3

(e così via per tutte le abilità che può apprendere dall'arma)

end if1

(e così via da ripetere per ogni singola arma e per ogni singolo personaggio ^ ^)

 

Nota bene come sono annidate le condizioni!

^ ^

Problema: presenta un grave difetto! La modifica delle abilità diventa effettiva solo dopo essere uscito dal menù, quindi se tu equipaggi/disequipaggi un'arma e poi senza uscire completamente dal menù vai sulle abilità allora non noterai nesun cambiamento, devi prima uscire, rinetrare nel menù e verificare le nuove abilità apprese!

^ ^

Per nascondere l'errore potrei vedere come dal menù equipaggiamento usando il tasto X/esc invece di tornare al menù torni alla mappa, tutto via script... va bene come trucchetto?

^ ^

(\_/)
(^ ^) <----coniglietto rosso, me!
(> <)


Il mio Tumblr dove seguire i miei progetti, i progetti della Reverie : : Project ^ ^

http://i.imgur.com/KdUDtQt.png disponibile su Google Play, qui i dettagli! ^ ^

http://i.imgur.com/FwnGMI3.png completo! Giocabile online, qui i dettagli! ^ ^

REVERIE : : RENDEZVOUS (In allenamento per apprendere le buone arti prima di cominciarlo per bene ^ ^) Trovate i dettagli qui insieme alla mia intervista (non utilizzerò più rpgmaker) ^ ^

 

SUWOnzB.jpg 🖤
http://www.rpg2s.net/dax_games/r2s_regali2s.png E:3 http://www.rpg2s.net/dax_games/xmas/gifnatale123.gif
http://i.imgur.com/FfvHCGG.png by Testament (notare dettaglio in basso a destra)! E:3
http://i.imgur.com/MpaUphY.jpg by Idriu E:3

Membro Onorario, Ambasciatore dei Coniglietti (Membro n.44)

http://i.imgur.com/PgUqHPm.png
Ufficiale
"Ad opera della sua onestà e del suo completo appoggio alla causa dei Panda, Guardian Of Irael viene ufficialmente considerato un Membro portante del Partito, e Ambasciatore del suo Popolo presso di noi"


http://i.imgur.com/TbRr4iS.png<- Grazie Testament E:3
Ricorda...se rivolgi il tuo sguardo ^ ^ a Guardian anche Guardian volge il suo sguardo ^ ^ a te ^ ^
http://i.imgur.com/u8UJ4Vm.gifby Flame ^ ^
http://i.imgur.com/VbggEKS.gifhttp://i.imgur.com/2tJmjFJ.gifhttp://projectste.altervista.org/Our_Hero_adotta/ado2.png
Grazie Testament XD Fan n°1 ufficiale di PQ! :D

Viva
il Rhaxen! <- Folletto te lo avevo detto (fa pure rima) che non
avevo programmi di grafica per fare un banner su questo pc XD (ora ho di
nuovo il mio PC veramente :D)

Rosso Guardiano della
http://i.imgur.com/Os5rvhx.png

Rpg2s RPG BY FORUM:

Nome: Darth Reveal

 

PV totali 2
PA totali 16

Descrizione: ragazzo dai lunghi capelli rossi ed occhi dello stesso colore. Indossa una elegante giacca rossa sopra ad una maglietta nera. Porta pantaloni rossi larghi, una cintura nera e degli stivali dello stesso colore. E' solito trasportare lo spadone dietro la schiena in un fodero apposito. Ha un pendente al collo e tiene ben legato un pezzo di stoffa (che gli sta particolarmente a cuore) intorno al braccio sinistro sotto la giacca, copre una cicatrice.
Bozze vesti non definitive qui.

Equipaggiamento:
Indossa:
60$ e 59$ divisi in due tasche interne
Levaitan

Spada a due mani elsa lunga

Guanti del Defender (2PA)
Anello del linguaggio animale (diventato del Richiamo)

Scrinieri da lanciere (2 PA)

Elmo del Leone (5 PA)

Corazza del Leone in Ferro Corrazzato (7 PA)

ZAINO (20) contenente:
Portamonete in pelle di cinghiale contenente: 100$
Scatola Sanitaria Sigillata (può contenere e tenere al sicuro fino a 4 oggetti curativi) (contiene Benda di pronto soccorso x3, Pozione di cura)
Corda
Bottiglia di idromele
Forma di formaggio
Torcia (serve ad illuminare, dura tre settori)

Fiasca di ceramica con Giglio Amaro (Dona +1PN e Velocità all'utilizzatore)
Ampolla Bianca

Semi di Balissa

 

CAVALLO NORMALE + SELLA (30 +2 armi) contentente:
66$
Benda di pronto soccorso x3
Spada a due mani

Fagotto per Adara (fazzoletto ricamato)


 

Link to comment
Share on other sites

  • 0
Mmmh crea un evento in processo parallelo negli eventi comune attivabile tramite una switch che metterai ON all'inizio della partita e quindi sarà attivo per tutto il gioco:

If1 eroe Arshes ha equipaggiato Spada Focata

-- Variabile LivelloArshes==Arshes livello

-- if2 Variabile LivelloArshes > 9

---- apprendi magia fuoco1

-- end if2

-- if3 Variabile LivelloArshes > 19

---- apprendi magia fuoco2

-- end if3

-- if4 Variabile LivelloArshes > 29

---- apprendi magia fuoco3

-- end if4

(e così via tanti in per quante sono le abilità da apprendere!)

ELSE (dell'if1)

- dimentica magia fuoco1

- dimentica magia fuoco2

- dimentica magia fuoco3

(e così via per tutte le abilità che può apprendere dall'arma)

end if1

(e così via da ripetere per ogni singola arma e per ogni singolo personaggio ^ ^)

 

Nota bene come sono annidate le condizioni!

^ ^

Problema: presenta un grave difetto! La modifica delle abilità diventa effettiva solo dopo essere uscito dal menù, quindi se tu equipaggi/disequipaggi un'arma e poi senza uscire completamente dal menù vai sulle abilità allora non noterai nesun cambiamento, devi prima uscire, rinetrare nel menù e verificare le nuove abilità apprese!

^ ^

Per nascondere l'errore potrei vedere come dal menù equipaggiamento usando il tasto X/esc invece di tornare al menù torni alla mappa, tutto via script... va bene come trucchetto?

^ ^

 

Intanto ti ringrazio infinitamente per la celerità. ^_^

Per quanto riguarda il problema,utilizzando il menu ad anello ho ogni sottosezione del menu normale separata dalle altre,ciò significa che se scelgo equip andrà solo li e se ne esco tornerà alla mappa,quindi fortunatamente non dovrebbe sussistere. :sisi:

 

Di nuovo grazie,lo testo e ti dico se ci sono controindicazioni. :sisi:

Apprendimento Rpg Maker XP: |||||||||||||||||||

Progetto in corso: CaelestiS: |||||||||||||||||||

Link to comment
Share on other sites

  • 0

Mi correggo,pur avendo menu ad anello che mi separa il tutto,finchè non chiudo tutto quanto (anello compreso) non me la fa scordare. :(

 

Uhm...qual'era la soluzione via script che dicevi?

 

*Occhioni da gatto* :tongue:

Apprendimento Rpg Maker XP: |||||||||||||||||||

Progetto in corso: CaelestiS: |||||||||||||||||||

Link to comment
Share on other sites

  • 0

Eh... volevo modificare la finestra equip in modo che ti portasse subito alla mappa anche se poco elegante come soluzione! XD Però dovresti farmi avere lo script che usi per menù ed equip!

^ ^

(\_/)
(^ ^) <----coniglietto rosso, me!
(> <)


Il mio Tumblr dove seguire i miei progetti, i progetti della Reverie : : Project ^ ^

http://i.imgur.com/KdUDtQt.png disponibile su Google Play, qui i dettagli! ^ ^

http://i.imgur.com/FwnGMI3.png completo! Giocabile online, qui i dettagli! ^ ^

REVERIE : : RENDEZVOUS (In allenamento per apprendere le buone arti prima di cominciarlo per bene ^ ^) Trovate i dettagli qui insieme alla mia intervista (non utilizzerò più rpgmaker) ^ ^

 

SUWOnzB.jpg 🖤
http://www.rpg2s.net/dax_games/r2s_regali2s.png E:3 http://www.rpg2s.net/dax_games/xmas/gifnatale123.gif
http://i.imgur.com/FfvHCGG.png by Testament (notare dettaglio in basso a destra)! E:3
http://i.imgur.com/MpaUphY.jpg by Idriu E:3

Membro Onorario, Ambasciatore dei Coniglietti (Membro n.44)

http://i.imgur.com/PgUqHPm.png
Ufficiale
"Ad opera della sua onestà e del suo completo appoggio alla causa dei Panda, Guardian Of Irael viene ufficialmente considerato un Membro portante del Partito, e Ambasciatore del suo Popolo presso di noi"


http://i.imgur.com/TbRr4iS.png<- Grazie Testament E:3
Ricorda...se rivolgi il tuo sguardo ^ ^ a Guardian anche Guardian volge il suo sguardo ^ ^ a te ^ ^
http://i.imgur.com/u8UJ4Vm.gifby Flame ^ ^
http://i.imgur.com/VbggEKS.gifhttp://i.imgur.com/2tJmjFJ.gifhttp://projectste.altervista.org/Our_Hero_adotta/ado2.png
Grazie Testament XD Fan n°1 ufficiale di PQ! :D

Viva
il Rhaxen! <- Folletto te lo avevo detto (fa pure rima) che non
avevo programmi di grafica per fare un banner su questo pc XD (ora ho di
nuovo il mio PC veramente :D)

Rosso Guardiano della
http://i.imgur.com/Os5rvhx.png

Rpg2s RPG BY FORUM:

Nome: Darth Reveal

 

PV totali 2
PA totali 16

Descrizione: ragazzo dai lunghi capelli rossi ed occhi dello stesso colore. Indossa una elegante giacca rossa sopra ad una maglietta nera. Porta pantaloni rossi larghi, una cintura nera e degli stivali dello stesso colore. E' solito trasportare lo spadone dietro la schiena in un fodero apposito. Ha un pendente al collo e tiene ben legato un pezzo di stoffa (che gli sta particolarmente a cuore) intorno al braccio sinistro sotto la giacca, copre una cicatrice.
Bozze vesti non definitive qui.

Equipaggiamento:
Indossa:
60$ e 59$ divisi in due tasche interne
Levaitan

Spada a due mani elsa lunga

Guanti del Defender (2PA)
Anello del linguaggio animale (diventato del Richiamo)

Scrinieri da lanciere (2 PA)

Elmo del Leone (5 PA)

Corazza del Leone in Ferro Corrazzato (7 PA)

ZAINO (20) contenente:
Portamonete in pelle di cinghiale contenente: 100$
Scatola Sanitaria Sigillata (può contenere e tenere al sicuro fino a 4 oggetti curativi) (contiene Benda di pronto soccorso x3, Pozione di cura)
Corda
Bottiglia di idromele
Forma di formaggio
Torcia (serve ad illuminare, dura tre settori)

Fiasca di ceramica con Giglio Amaro (Dona +1PN e Velocità all'utilizzatore)
Ampolla Bianca

Semi di Balissa

 

CAVALLO NORMALE + SELLA (30 +2 armi) contentente:
66$
Benda di pronto soccorso x3
Spada a due mani

Fagotto per Adara (fazzoletto ricamato)


 

Link to comment
Share on other sites

  • 0
Eh... volevo modificare la finestra equip in modo che ti portasse subito alla mappa anche se poco elegante come soluzione! XD Però dovresti farmi avere lo script che usi per menù ed equip!

^ ^

Dunque,per equip uso i 3 windows default di xp.

Per il ring menu ti rimando a quest'altro topic dove chiesi chiarimenti a riguardo (lo script è tra spoiler nel primo post).

http://www.rpg2s.net/forum/index.php?showtopic=13573

Apprendimento Rpg Maker XP: |||||||||||||||||||

Progetto in corso: CaelestiS: |||||||||||||||||||

Link to comment
Share on other sites

  • 0

Ah se la scene_equip è la stessa di quella standard allora è facile!

Sostituisci la tua Scene_Equip con questa modificata:

 

#==============================================================================
# ** Scene_Equip
#------------------------------------------------------------------------------
#  This class performs equipment screen processing.
#==============================================================================

class Scene_Equip
 #--------------------------------------------------------------------------
 # * Object Initialization
 #	 actor_index : actor index
 #	 equip_index : equipment index
 #--------------------------------------------------------------------------
 def initialize(actor_index = 0, equip_index = 0)
@actor_index = actor_index
@equip_index = equip_index
 end
 #--------------------------------------------------------------------------
 # * Main Processing
 #--------------------------------------------------------------------------
 def main
# Get actor
@actor = $game_party.actors[@actor_index]
# Make windows
@help_window = Window_Help.new
@left_window = Window_EquipLeft.new(@actor)
@right_window = Window_EquipRight.new(@actor)
@item_window1 = Window_EquipItem.new(@actor, 0)
@item_window2 = Window_EquipItem.new(@actor, 1)
@item_window3 = Window_EquipItem.new(@actor, 2)
@item_window4 = Window_EquipItem.new(@actor, 3)
@item_window5 = Window_EquipItem.new(@actor, 4)
# Associate help window
@right_window.help_window = @help_window
@item_window1.help_window = @help_window
@item_window2.help_window = @help_window
@item_window3.help_window = @help_window
@item_window4.help_window = @help_window
@item_window5.help_window = @help_window
# Set cursor position
@right_window.index = @equip_index
refresh
# Execute transition
Graphics.transition
# Main loop
loop do
  # Update game screen
  Graphics.update
  # Update input information
  Input.update
  # Frame update
  update
  # Abort loop if screen is changed
  if $scene != self
	break
  end
end
# Prepare for transition
Graphics.freeze
# Dispose of windows
@help_window.dispose
@left_window.dispose
@right_window.dispose
@item_window1.dispose
@item_window2.dispose
@item_window3.dispose
@item_window4.dispose
@item_window5.dispose
 end
 #--------------------------------------------------------------------------
 # * Refresh
 #--------------------------------------------------------------------------
 def refresh
# Set item window to visible
@item_window1.visible = (@right_window.index == 0)
@item_window2.visible = (@right_window.index == 1)
@item_window3.visible = (@right_window.index == 2)
@item_window4.visible = (@right_window.index == 3)
@item_window5.visible = (@right_window.index == 4)
# Get currently equipped item
item1 = @right_window.item
# Set current item window to @item_window
case @right_window.index
when 0
  @item_window = @item_window1
when 1
  @item_window = @item_window2
when 2
  @item_window = @item_window3
when 3
  @item_window = @item_window4
when 4
  @item_window = @item_window5
end
# If right window is active
if @right_window.active
  # Erase parameters for after equipment change
  @left_window.set_new_parameters(nil, nil, nil)
end
# If item window is active
if @item_window.active
  # Get currently selected item
  item2 = @item_window.item
  # Change equipment
  last_hp = @actor.hp
  last_sp = @actor.sp
  @actor.equip(@right_window.index, item2 == nil ? 0 : item2.id)
  # Get parameters for after equipment change
  new_atk = @actor.atk
  new_pdef = @actor.pdef
  new_mdef = @actor.mdef
  # Return equipment
  @actor.equip(@right_window.index, item1 == nil ? 0 : item1.id)
  @actor.hp = last_hp
  @actor.sp = last_sp
  # Draw in left window
  @left_window.set_new_parameters(new_atk, new_pdef, new_mdef)
end
 end
 #--------------------------------------------------------------------------
 # * Frame Update
 #--------------------------------------------------------------------------
 def update
# Update windows
@left_window.update
@right_window.update
@item_window.update
refresh
# If right window is active: call update_right
if @right_window.active
  update_right
  return
end
# If item window is active: call update_item
if @item_window.active
  update_item
  return
end
 end
 #--------------------------------------------------------------------------
 # * Frame Update (when right window is active)
 #--------------------------------------------------------------------------
 def update_right
# If B button was pressed
if Input.trigger?(Input::B)
	   # Play cancel SE
  $game_system.se_play($data_system.cancel_se)
  # Switch to map screen
  $scene = Scene_Map.new
  return
end
# If C button was pressed
if Input.trigger?(Input::C)
  # If equipment is fixed
  if @actor.equip_fix?(@right_window.index)
	# Play buzzer SE
	$game_system.se_play($data_system.buzzer_se)
	return
  end
  # Play decision SE
  $game_system.se_play($data_system.decision_se)
  # Activate item window
  @right_window.active = false
  @item_window.active = true
  @item_window.index = 0
  return
end
# If R button was pressed
if Input.trigger?(Input::R)
  # Play cursor SE
  $game_system.se_play($data_system.cursor_se)
  # To next actor
  @actor_index += 1
  @actor_index %= $game_party.actors.size
  # Switch to different equipment screen
  $scene = Scene_Equip.new(@actor_index, @right_window.index)
  return
end
# If L button was pressed
if Input.trigger?(Input::L)
  # Play cursor SE
  $game_system.se_play($data_system.cursor_se)
  # To previous actor
  @actor_index += $game_party.actors.size - 1
  @actor_index %= $game_party.actors.size
  # Switch to different equipment screen
  $scene = Scene_Equip.new(@actor_index, @right_window.index)
  return
end
 end
 #--------------------------------------------------------------------------
 # * Frame Update (when item window is active)
 #--------------------------------------------------------------------------
 def update_item
# If B button was pressed
if Input.trigger?(Input::B)
		# Play cancel SE
  $game_system.se_play($data_system.cancel_se)
  # Switch to map screen
  $scene = Scene_Map.new
  return
end
# If C button was pressed
if Input.trigger?(Input::C)
  # Play equip SE
  $game_system.se_play($data_system.equip_se)
  # Get currently selected data on the item window
  item = @item_window.item
  # Change equipment
  @actor.equip(@right_window.index, item == nil ? 0 : item.id)
  # Activate right window
  @right_window.active = true
  @item_window.active = false
  @item_window.index = -1
  # Remake right window and item window contents
  @right_window.refresh
  @item_window.refresh
  return
end
 end
end

 

^ ^

 

Se ci fai caso l'unica cosa che è cambiata è l'(Input::B), là infatti dove appare tale tasto invece di rimandare al menù manda direttamente alla mappa!

^ ^

(\_/)
(^ ^) <----coniglietto rosso, me!
(> <)


Il mio Tumblr dove seguire i miei progetti, i progetti della Reverie : : Project ^ ^

http://i.imgur.com/KdUDtQt.png disponibile su Google Play, qui i dettagli! ^ ^

http://i.imgur.com/FwnGMI3.png completo! Giocabile online, qui i dettagli! ^ ^

REVERIE : : RENDEZVOUS (In allenamento per apprendere le buone arti prima di cominciarlo per bene ^ ^) Trovate i dettagli qui insieme alla mia intervista (non utilizzerò più rpgmaker) ^ ^

 

SUWOnzB.jpg 🖤
http://www.rpg2s.net/dax_games/r2s_regali2s.png E:3 http://www.rpg2s.net/dax_games/xmas/gifnatale123.gif
http://i.imgur.com/FfvHCGG.png by Testament (notare dettaglio in basso a destra)! E:3
http://i.imgur.com/MpaUphY.jpg by Idriu E:3

Membro Onorario, Ambasciatore dei Coniglietti (Membro n.44)

http://i.imgur.com/PgUqHPm.png
Ufficiale
"Ad opera della sua onestà e del suo completo appoggio alla causa dei Panda, Guardian Of Irael viene ufficialmente considerato un Membro portante del Partito, e Ambasciatore del suo Popolo presso di noi"


http://i.imgur.com/TbRr4iS.png<- Grazie Testament E:3
Ricorda...se rivolgi il tuo sguardo ^ ^ a Guardian anche Guardian volge il suo sguardo ^ ^ a te ^ ^
http://i.imgur.com/u8UJ4Vm.gifby Flame ^ ^
http://i.imgur.com/VbggEKS.gifhttp://i.imgur.com/2tJmjFJ.gifhttp://projectste.altervista.org/Our_Hero_adotta/ado2.png
Grazie Testament XD Fan n°1 ufficiale di PQ! :D

Viva
il Rhaxen! <- Folletto te lo avevo detto (fa pure rima) che non
avevo programmi di grafica per fare un banner su questo pc XD (ora ho di
nuovo il mio PC veramente :D)

Rosso Guardiano della
http://i.imgur.com/Os5rvhx.png

Rpg2s RPG BY FORUM:

Nome: Darth Reveal

 

PV totali 2
PA totali 16

Descrizione: ragazzo dai lunghi capelli rossi ed occhi dello stesso colore. Indossa una elegante giacca rossa sopra ad una maglietta nera. Porta pantaloni rossi larghi, una cintura nera e degli stivali dello stesso colore. E' solito trasportare lo spadone dietro la schiena in un fodero apposito. Ha un pendente al collo e tiene ben legato un pezzo di stoffa (che gli sta particolarmente a cuore) intorno al braccio sinistro sotto la giacca, copre una cicatrice.
Bozze vesti non definitive qui.

Equipaggiamento:
Indossa:
60$ e 59$ divisi in due tasche interne
Levaitan

Spada a due mani elsa lunga

Guanti del Defender (2PA)
Anello del linguaggio animale (diventato del Richiamo)

Scrinieri da lanciere (2 PA)

Elmo del Leone (5 PA)

Corazza del Leone in Ferro Corrazzato (7 PA)

ZAINO (20) contenente:
Portamonete in pelle di cinghiale contenente: 100$
Scatola Sanitaria Sigillata (può contenere e tenere al sicuro fino a 4 oggetti curativi) (contiene Benda di pronto soccorso x3, Pozione di cura)
Corda
Bottiglia di idromele
Forma di formaggio
Torcia (serve ad illuminare, dura tre settori)

Fiasca di ceramica con Giglio Amaro (Dona +1PN e Velocità all'utilizzatore)
Ampolla Bianca

Semi di Balissa

 

CAVALLO NORMALE + SELLA (30 +2 armi) contentente:
66$
Benda di pronto soccorso x3
Spada a due mani

Fagotto per Adara (fazzoletto ricamato)


 

Link to comment
Share on other sites

  • 0
Ah se la scene_equip è la stessa di quella standard allora è facile!

Sostituisci la tua Scene_Equip con questa modificata:

 

#==============================================================================
# ** Scene_Equip
#------------------------------------------------------------------------------
#  This class performs equipment screen processing.
#==============================================================================

class Scene_Equip
 #--------------------------------------------------------------------------
 # * Object Initialization
 #	 actor_index : actor index
 #	 equip_index : equipment index
 #--------------------------------------------------------------------------
 def initialize(actor_index = 0, equip_index = 0)
@actor_index = actor_index
@equip_index = equip_index
 end
 #--------------------------------------------------------------------------
 # * Main Processing
 #--------------------------------------------------------------------------
 def main
# Get actor
@actor = $game_party.actors[@actor_index]
# Make windows
@help_window = Window_Help.new
@left_window = Window_EquipLeft.new(@actor)
@right_window = Window_EquipRight.new(@actor)
@item_window1 = Window_EquipItem.new(@actor, 0)
@item_window2 = Window_EquipItem.new(@actor, 1)
@item_window3 = Window_EquipItem.new(@actor, 2)
@item_window4 = Window_EquipItem.new(@actor, 3)
@item_window5 = Window_EquipItem.new(@actor, 4)
# Associate help window
@right_window.help_window = @help_window
@item_window1.help_window = @help_window
@item_window2.help_window = @help_window
@item_window3.help_window = @help_window
@item_window4.help_window = @help_window
@item_window5.help_window = @help_window
# Set cursor position
@right_window.index = @equip_index
refresh
# Execute transition
Graphics.transition
# Main loop
loop do
  # Update game screen
  Graphics.update
  # Update input information
  Input.update
  # Frame update
  update
  # Abort loop if screen is changed
  if $scene != self
	break
  end
end
# Prepare for transition
Graphics.freeze
# Dispose of windows
@help_window.dispose
@left_window.dispose
@right_window.dispose
@item_window1.dispose
@item_window2.dispose
@item_window3.dispose
@item_window4.dispose
@item_window5.dispose
 end
 #--------------------------------------------------------------------------
 # * Refresh
 #--------------------------------------------------------------------------
 def refresh
# Set item window to visible
@item_window1.visible = (@right_window.index == 0)
@item_window2.visible = (@right_window.index == 1)
@item_window3.visible = (@right_window.index == 2)
@item_window4.visible = (@right_window.index == 3)
@item_window5.visible = (@right_window.index == 4)
# Get currently equipped item
item1 = @right_window.item
# Set current item window to @item_window
case @right_window.index
when 0
  @item_window = @item_window1
when 1
  @item_window = @item_window2
when 2
  @item_window = @item_window3
when 3
  @item_window = @item_window4
when 4
  @item_window = @item_window5
end
# If right window is active
if @right_window.active
  # Erase parameters for after equipment change
  @left_window.set_new_parameters(nil, nil, nil)
end
# If item window is active
if @item_window.active
  # Get currently selected item
  item2 = @item_window.item
  # Change equipment
  last_hp = @actor.hp
  last_sp = @actor.sp
  @actor.equip(@right_window.index, item2 == nil ? 0 : item2.id)
  # Get parameters for after equipment change
  new_atk = @actor.atk
  new_pdef = @actor.pdef
  new_mdef = @actor.mdef
  # Return equipment
  @actor.equip(@right_window.index, item1 == nil ? 0 : item1.id)
  @actor.hp = last_hp
  @actor.sp = last_sp
  # Draw in left window
  @left_window.set_new_parameters(new_atk, new_pdef, new_mdef)
end
 end
 #--------------------------------------------------------------------------
 # * Frame Update
 #--------------------------------------------------------------------------
 def update
# Update windows
@left_window.update
@right_window.update
@item_window.update
refresh
# If right window is active: call update_right
if @right_window.active
  update_right
  return
end
# If item window is active: call update_item
if @item_window.active
  update_item
  return
end
 end
 #--------------------------------------------------------------------------
 # * Frame Update (when right window is active)
 #--------------------------------------------------------------------------
 def update_right
# If B button was pressed
if Input.trigger?(Input::B)
	   # Play cancel SE
  $game_system.se_play($data_system.cancel_se)
  # Switch to map screen
  $scene = Scene_Map.new
  return
end
# If C button was pressed
if Input.trigger?(Input::C)
  # If equipment is fixed
  if @actor.equip_fix?(@right_window.index)
	# Play buzzer SE
	$game_system.se_play($data_system.buzzer_se)
	return
  end
  # Play decision SE
  $game_system.se_play($data_system.decision_se)
  # Activate item window
  @right_window.active = false
  @item_window.active = true
  @item_window.index = 0
  return
end
# If R button was pressed
if Input.trigger?(Input::R)
  # Play cursor SE
  $game_system.se_play($data_system.cursor_se)
  # To next actor
  @actor_index += 1
  @actor_index %= $game_party.actors.size
  # Switch to different equipment screen
  $scene = Scene_Equip.new(@actor_index, @right_window.index)
  return
end
# If L button was pressed
if Input.trigger?(Input::L)
  # Play cursor SE
  $game_system.se_play($data_system.cursor_se)
  # To previous actor
  @actor_index += $game_party.actors.size - 1
  @actor_index %= $game_party.actors.size
  # Switch to different equipment screen
  $scene = Scene_Equip.new(@actor_index, @right_window.index)
  return
end
 end
 #--------------------------------------------------------------------------
 # * Frame Update (when item window is active)
 #--------------------------------------------------------------------------
 def update_item
# If B button was pressed
if Input.trigger?(Input::B)
		# Play cancel SE
  $game_system.se_play($data_system.cancel_se)
  # Switch to map screen
  $scene = Scene_Map.new
  return
end
# If C button was pressed
if Input.trigger?(Input::C)
  # Play equip SE
  $game_system.se_play($data_system.equip_se)
  # Get currently selected data on the item window
  item = @item_window.item
  # Change equipment
  @actor.equip(@right_window.index, item == nil ? 0 : item.id)
  # Activate right window
  @right_window.active = true
  @item_window.active = false
  @item_window.index = -1
  # Remake right window and item window contents
  @right_window.refresh
  @item_window.refresh
  return
end
 end
end

 

^ ^

 

Se ci fai caso l'unica cosa che è cambiata è l'(Input::B), là infatti dove appare tale tasto invece di rimandare al menù manda direttamente alla mappa!

^ ^

Perfetto,funziona. ^^

Ti ringrazio. :sisi:

Apprendimento Rpg Maker XP: |||||||||||||||||||

Progetto in corso: CaelestiS: |||||||||||||||||||

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...