Welcome Guest: S’enregistrer | Connexion
 
Portail  | FAQ | Rechercher | Membres | Groupes
 
[Script] Menu a la Secret of ...
 
Poster un nouveau sujet   Répondre au sujet
RPG Community Index du Forum -> RPG Maker -> Scripts RPG Maker XP
Sujet précédent :: Sujet suivant  
Auteur Message
Seb076
Soldat
Soldat

Hors ligne

Inscrit le: 12 Jan 2006
Messages: 220
Localisation: quelque part dans les terres oublier des highland
Points RPG Community: 5
Moyenne de points: 0,02

MessagePosté le: 26/01/2006 11:24:58
MessageSujet du message: [Script] Menu a la Secret of ...
Répondre en citant

Le menu à la Secret of …, est un menu spécial, en forme de cercle :


Tout d’abord, allez dans l'éditeur de scripts (F11), et créez au dessus de "main" un script appelé "Ring_Menu" (et oui, le menu est en forme de cercle) et mettait ce script dedans :
ATTENTION : CE SCRIPT DOIT TOUJOURS CE SITUER JUSTE AU DESSUS DE MAIN OU IL NE FONCTIONNERA PAS !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


Citation:
#==================================
# Window_RingMenu
#==================================
class Window_RingMenu < Window_Base
STARTUP_FRAMES = 20 # Vitesse d'ouverture du menu
MOVING_FRAMES = 10 # Vitesse de rotation des icônes
RING_R = 64 # Le Rayon du cercle
ICON_ITEM = RPG::Cache.icon("034-Item03") # Mettre l'icône que vous voulez
ICON_SKILL = RPG::Cache.icon("044-Skill01") # Mettre l'icône que vous voulez
ICON_EQUIP = RPG::Cache.icon("001-Weapon01") # Mettre l'icône que vous voulez
ICON_STATUS = RPG::Cache.icon("050-Skill07") # Mettre l'icône que vous voulez
ICON_SAVE = RPG::Cache.icon("038-Item07") # Mettre l'icône que vous voulez
ICON_EXIT = RPG::Cache.icon("046-Skill03") # Mettre l'icône que vous voulez
ICON_DISABLE= RPG::Cache.icon("")
SE_STARTUP = "056-Right02" # Le son d'ouverture du menu (si aucun mettre ( "" )
MODE_START = 1
MODE_WAIT = 2
MODE_MOVER = 3
MODE_MOVEL = 4
attr_accessor :index
def initialize( center_x, center_y )
super(0, 0, 640, 480)
self.contents = Bitmap.new(width-32, height-32)
self.contents.font.name = "Arial" #Mettre la police que vous voulez
self.opacity = 0
self.back_opacity = 0
s1 = "Objet"
s2 = "Compétence"
s3 = "Equiper"
s4 = "Etat"
s5 = "Sauvegarder"
s6 = "Quitter"
@commands = [ s1, s2, s3, s4, s5, s6 ]
@item_max = 6
@index = 0
@items = [ ICON_ITEM, ICON_SKILL, ICON_EQUIP, ICON_STATUS, ICON_SAVE, ICON_EXIT ]
@disabled = [ false, false, false, false, false, false ]
@cx = center_x - 16
@cy = center_y - 16
setup_move_start
refresh
end
def update
super
refresh
end
def refresh
self.contents.clear
case @mode
when MODE_START
refresh_start
when MODE_WAIT
refresh_wait
when MODE_MOVER
refresh_move(1)
when MODE_MOVEL
refresh_move(0)
end
rect = Rect.new(@cx - 272, @cy + 24, self.contents.width-32, 32)
self.contents.draw_text(rect, @commands[@index],1)
end
def refresh_start
d1 = 2.0 * Math::PI / @item_max
d2 = 1.0 * Math::PI / STARTUP_FRAMES
r = RING_R - 1.0 * RING_R * @steps / STARTUP_FRAMES
for i in 0...@item_max
j = i - @index
d = d1 * j + d2 * @steps
x = @cx + ( r * Math.sin( d ) ).to_i
y = @cy - ( r * Math.cos( d ) ).to_i
draw_item(x, y, i)
end
@steps -= 1
if @steps < 1
@mode = MODE_WAIT
end
end
def refresh_wait
d = 2.0 * Math::PI / @item_max
for i in 0...@item_max
j = i - @index
x = @cx + ( RING_R * Math.sin( d * j ) ).to_i
y = @cy - ( RING_R * Math.cos( d * j ) ).to_i
draw_item(x, y, i)
end
end
def refresh_move( mode )
d1 = 2.0 * Math::PI / @item_max
d2 = d1 / MOVING_FRAMES
d2 *= -1 if mode != 0
for i in 0...@item_max
j = i - @index
d = d1 * j + d2 * @steps
x = @cx + ( RING_R * Math.sin( d ) ).to_i
y = @cy - ( RING_R * Math.cos( d ) ).to_i
draw_item(x, y, i)
end
@steps -= 1
if @steps < 1
@mode = MODE_WAIT
end
end
def draw_item(x, y, i)
rect = Rect.new(0, 0, @items[i].width, @items[i].height)
if @index == i
self.contents.blt( x, y, @items[i], rect )
if @disabled[@index]
self.contents.blt( x, y, ICON_DISABLE, rect )
end
else
self.contents.blt( x, y, @items[i], rect, 128 )
if @disabled[@index]
self.contents.blt( x, y, ICON_DISABLE, rect, 128 )
end
end
end
def disable_item(index)
@disabled[index] = true
end
def setup_move_start
@mode = MODE_START
@steps = STARTUP_FRAMES
if SE_STARTUP != nil and SE_STARTUP != ""
Audio.se_play("Audio/SE/" + SE_STARTUP, 80, 100)
end
end
def setup_move_move(mode)
if mode == MODE_MOVER
@index -= 1
@index = @items.size - 1 if @index <0>= @items.size
else
return
end
@mode = mode
@steps = MOVING_FRAMES
end
def animation?
return @mode != MODE_WAIT
end
end
#==================================
# Window_MenuStatus
#==================================

class Window_RingMenuStatus < Window_Selectable
def initialize
super(204, 64, 232, 352)
self.contents = Bitmap.new(width - 32, height - 32)
refresh
self.active = false
self.index = -1
end
def refresh
self.contents.clear
self.contents.font.name = "Arial"
@item_max = $game_party.actors.size
for i in 0...$game_party.actors.size
x = 80
y = 80 * i
actor = $game_party.actors[i]
draw_actor_graphic(actor, x - 40, y + 80)
draw_actor_name(actor, x, y + 24)
end
end
def update_cursor_rect
if @index < 0
self.cursor_rect.empty
else
self.cursor_rect.set(0, @index * 80, self.width - 32, 80)
end
end
end
#==================================
# Scene_RingMenu
# Scene_Menu
#==================================

class Scene_Menu
def initialize(menu_index = 0)
@menu_index = menu_index
end
def main
@spriteset = Spriteset_Map.new
px = $game_player.screen_x - 15
py = $game_player.screen_y - 24
@command_window = Window_RingMenu.new(px,py)
@command_window.index = @menu_index
if $game_party.actors.size == 0
@command_window.disable_item(0)
@command_window.disable_item(1)
@command_window.disable_item(2)
@command_window.disable_item(3)
end
@command_window.z = 100
if $game_system.save_disabled
@command_window.disable_item(4)
end
@status_window = Window_RingMenuStatus.new
@status_window.x = 160
@status_window.y = 0
@status_window.z = 200
@status_window.visible = false
Graphics.transition
loop do
Graphics.update
Input.update
update
if $scene != self
break
end
end
Graphics.freeze
@spriteset.dispose
@command_window.dispose
@status_window.dispose
end
def update
@command_window.update
@status_window.update
if @command_window.active
update_command
return
end
if @status_window.active
update_status
return
end
end
def update_command
if Input.trigger?(Input::B)
$game_system.se_play($data_system.cancel_se)
$scene = Scene_Map.new
return
end
if Input.trigger?(Input::C)
if $game_party.actors.size == 0 and @command_window.index <4>= 2
$game_system.se_play($data_system.buzzer_se)
return
end
$game_system.se_play($data_system.decision_se)
$scene = Scene_Skill.new(@status_window.index)
when 2
$game_system.se_play($data_system.decision_se)
$scene = Scene_Equip.new(@status_window.index)
when 3
$game_system.se_play($data_system.decision_se)
$scene = Scene_Status.new(@status_window.index)
end
return
end
end
end


Vous pouvez personnaliser ce menu au endroit où j’ai mit des commentaires.
_________________


Revenir en haut
Publicité






MessagePosté le: 26/01/2006 11:24:58
MessageSujet du message: Publicité

PublicitéSupprimer les publicités ?
Revenir en haut
Ecureuil
Paysan
Paysan

Hors ligne

Inscrit le: 27 Déc 2007
Messages: 3
Localisation: Bas-rhin (Alsace)
Points RPG Community: 0
Moyenne de points: 0,00

MessagePosté le: 27/12/2007 12:26:57
MessageSujet du message: [Script] Menu a la Secret of ...
Répondre en citant

Bonjour, ce script ne marche pas chez moi !
Erreur :
Citation:
Script Ring_Menu ne fonctionne pas en 242 à la ligne 'SyntaxError'


Pour info dans la ligne 242, il n'y a que sa ...
Code:
when 2

_________________
Je sais pas quoi dire =(
Revenir en haut
Yojimbo
Seigneur tout puissant
Seigneur tout puissant

Hors ligne

Inscrit le: 04 Jan 2006
Messages: 805
Localisation: Grotte du priant volé.
Points RPG Community: 587
Moyenne de points: 0,73

MessagePosté le: 02/01/2008 21:54:42
MessageSujet du message: [Script] Menu a la Secret of ...
Répondre en citant

Effectivement, ça ne marche pas.
Voici un autre script trouvé su RM Factory :

Code:
#==============================================================================
# ¡ Window_RingMenu
#==============================================================================
#==============================================================================
# Edited by MakirouAru mofifier par boushy
#==============================================================================
class Window_RingMenu < Window_Base
 #--------------------------------------------------------------------------
 # › ƒNƒ‰ƒX’萔
 #--------------------------------------------------------------------------
 STARTUP_FRAMES = 20 # ‰ŠúƒAƒjƒ[ƒVƒ‡ƒ“‚̃tƒŒ[ƒ€”
 MOVING_FRAMES = 5   # ƒŠƒ“ƒO‚ð‰ñ‚µ‚½Žž‚̃tƒŒ[ƒ€”
 RING_R = 64         # ƒŠƒ“ƒO‚Ì”¼Œa
 ICON_ITEM   = RPG::Cache.icon("034-Item03") # uƒAƒCƒeƒ€vƒƒjƒ…[‚̃AƒCƒRƒ“
 ICON_SKILL  = RPG::Cache.icon("044-Skill01") # uƒXƒLƒ‹vƒƒjƒ…[‚̃AƒCƒRƒ“
 ICON_EQUIP  = RPG::Cache.icon("001-Weapon01") # u‘•”õvƒƒjƒ…[‚̃AƒCƒRƒ“
 ICON_STATUS = RPG::Cache.icon("050-Skill07") # uƒXƒe[ƒ^ƒXvƒƒjƒ…[‚̃AƒCƒRƒ“
 ICON_SAVE   = RPG::Cache.icon("038-Item07") # uƒZ[ƒuvƒƒjƒ…[‚̃AƒCƒRƒ“
 ICON_EXIT   = RPG::Cache.icon("046-Skill03") # uI—¹vƒƒjƒ…[‚̃AƒCƒRƒ“
 ICON_DISABLE= RPG::Cache.icon("") # Žg—p‹ÖŽ~€–Ú‚É•t‚­ƒAƒCƒRƒ“
 SE_STARTUP = "056-Right02" # ƒƒjƒ…[‚ðŠJ‚¢‚½‚Æ‚«‚ɖ‚炷SE
 MODE_START = 1 # ƒXƒ^[ƒgƒAƒbƒvƒAƒjƒ[ƒVƒ‡ƒ“
 MODE_WAIT  = 2 # ‘Ò‹@
 MODE_MOVER = 3 # ŽžŒv‰ñ‚è‰ñ“]ƒAƒjƒ[ƒVƒ‡ƒ“
 MODE_MOVEL = 4 # ”½ŽžŒv‰ñ‚è‰ñ“]ƒAƒjƒ[ƒVƒ‡ƒ“
 #--------------------------------------------------------------------------
 # › ƒAƒNƒZƒT
 #--------------------------------------------------------------------------
 attr_accessor :index
 #--------------------------------------------------------------------------
 # œ ƒIƒuƒWƒFƒNƒg‰Šú‰»
 #--------------------------------------------------------------------------
 def initialize( center_x, center_y )
   super(0, 0, 640, 480)
   self.contents = Bitmap.new(width-32, height-32)
   self.contents.font.name = "Arial"
   self.opacity = 0
   self.back_opacity = 0
   s1 = "Objet"
   s2 = "Compétence"
   s3 = "Equiper"
   s4 = "Etat"
   s5 = "Sauvegarder"
   s6 = "Quitter"
   @commands = [ s1, s2, s3, s4, s5, s6 ]
   @item_max = 6
   @index = 0
   @items = [ ICON_ITEM, ICON_SKILL, ICON_EQUIP, ICON_STATUS, ICON_SAVE, ICON_EXIT ]
   @disabled = [ false, false, false, false, false, false ]
   @cx = center_x - 16
   @cy = center_y - 16
   setup_move_start
   refresh
 end
 #--------------------------------------------------------------------------
 # œ ƒtƒŒ[ƒ€XV
 #--------------------------------------------------------------------------
 def update
   super
   refresh
 end
 #--------------------------------------------------------------------------
 # œ ‰æ–ʍĕ`‰æ
 #--------------------------------------------------------------------------
 def refresh
   self.contents.clear
   # ƒAƒCƒRƒ“‚ð•`‰æ
   case @mode
   when MODE_START
     refresh_start
   when MODE_WAIT
     refresh_wait
   when MODE_MOVER
     refresh_move(1)
   when MODE_MOVEL
     refresh_move(0)
   end
   # ƒAƒNƒeƒBƒu‚ȃRƒ}ƒ“ƒh–¼•\Ž¦
   rect = Rect.new(@cx - 272, @cy + 24, self.contents.width-32, 32)
   self.contents.draw_text(rect, @commands[@index],1)
 end
 #--------------------------------------------------------------------------
 # › ‰æ–ʍĕ`‰æ(‰Šú‰»Žž)
 #--------------------------------------------------------------------------
 def refresh_start
   d1 = 2.0 * Math::PI / @item_max
   d2 = 1.0 * Math::PI / STARTUP_FRAMES
   r = RING_R - 1.0 * RING_R * @steps / STARTUP_FRAMES
   for i in 0...@item_max
     j = i - @index
     d = d1 * j + d2 * @steps
     x = @cx + ( r * Math.sin( d ) ).to_i
     y = @cy - ( r * Math.cos( d ) ).to_i
     draw_item(x, y, i)
   end
   @steps -= 1
   if @steps < 1
     @mode = MODE_WAIT
   end
 end
 #--------------------------------------------------------------------------
 # › ‰æ–ʍĕ`‰æ(‘Ò‹@Žž)
 #--------------------------------------------------------------------------
 def refresh_wait
   d = 2.0 * Math::PI / @item_max
   for i in 0...@item_max
     j = i - @index
     x = @cx + ( RING_R * Math.sin( d * j ) ).to_i
     y = @cy - ( RING_R * Math.cos( d * j ) ).to_i
     draw_item(x, y, i)
   end
 end
 #--------------------------------------------------------------------------
 # › ‰æ–ʍĕ`‰æ(‰ñ“]Žž)
 #  mode : 0=”½ŽžŒv‰ñ‚è 1=ŽžŒv‰ñ‚è
 #--------------------------------------------------------------------------
 def refresh_move( mode )
   d1 = 2.0 * Math::PI / @item_max
   d2 = d1 / MOVING_FRAMES
   d2 *= -1 if mode != 0
   for i in 0...@item_max
     j = i - @index
     d = d1 * j + d2 * @steps
     x = @cx + ( RING_R * Math.sin( d ) ).to_i
     y = @cy - ( RING_R * Math.cos( d ) ).to_i
     draw_item(x, y, i)
   end
   @steps -= 1
   if @steps < 1
     @mode = MODE_WAIT
   end
 end
 #--------------------------------------------------------------------------
 # œ €–Ú‚Ì•`‰æ
 #     x :
 #     y :
 #     i : €–ڔԍ†
 #--------------------------------------------------------------------------
 def draw_item(x, y, i)
   #p "x=" + x.to_s + " y=" + y.to_s + " i=" + @items[i].to_s
   rect = Rect.new(0, 0, @items[i].width, @items[i].height)
   if @index == i
     self.contents.blt( x, y, @items[i], rect )
     if @disabled[@index]
       self.contents.blt( x, y, ICON_DISABLE, rect )
     end
   else
     self.contents.blt( x, y, @items[i], rect, 128 )
     if @disabled[@index]
       self.contents.blt( x, y, ICON_DISABLE, rect, 128 )
     end
   end
 end
 #--------------------------------------------------------------------------
 # œ €–ڂ𖳌ø‚É‚·‚é
 #     index : €–ڔԍ†
 #--------------------------------------------------------------------------
 def disable_item(index)
   @disabled[index] = true
 end
 #--------------------------------------------------------------------------
 # › ‰Šú‰»ƒAƒjƒ[ƒVƒ‡ƒ“‚̏€”õ
 #--------------------------------------------------------------------------
 def setup_move_start
   @mode = MODE_START
   @steps = STARTUP_FRAMES
   if  SE_STARTUP != nil and SE_STARTUP != ""
     Audio.se_play("Audio/SE/" + SE_STARTUP, 80, 100)
   end
 end
 #--------------------------------------------------------------------------
 # › ‰ñ“]ƒAƒjƒ[ƒVƒ‡ƒ“‚̏€”õ
 #--------------------------------------------------------------------------
 def setup_move_move(mode)
   if mode == MODE_MOVER
     @index -= 1
     @index = @items.size - 1 if @index < 0
   elsif mode == MODE_MOVEL
     @index += 1
     @index = 0 if @index >= @items.size
   else
     return
   end
   @mode = mode
   @steps = MOVING_FRAMES
 end
 #--------------------------------------------------------------------------
 # › ƒAƒjƒ[ƒVƒ‡ƒ“’†‚©‚Ç‚¤‚©
 #--------------------------------------------------------------------------
 def animation?
   return @mode != MODE_WAIT
 end
end
#==============================================================================
# ¡ Window_MenuStatus
#------------------------------------------------------------------------------
# @ƒƒjƒ…[‰æ–ʂŃp[ƒeƒBƒƒ“ƒo[‚̃Xƒe[ƒ^ƒX‚ð•\Ž¦‚·‚éƒEƒBƒ“ƒhƒE‚Å‚·B
#==============================================================================

class Window_RingMenuStatus < Window_Base
#--------------------------------------------------------------------------
 # › ƒNƒ‰ƒX’萔
 #--------------------------------------------------------------------------
 STARTUP_FRAMES = 20 # ‰ŠúƒAƒjƒ[ƒVƒ‡ƒ“‚̃tƒŒ[ƒ€”
 MOVING_FRAMES = 5   # ƒŠƒ“ƒO‚ð‰ñ‚µ‚½Žž‚̃tƒŒ[ƒ€”
 RING_R = 64         # ƒŠƒ“ƒO‚Ì”¼Œa
ICON_SKILL  = RPG::Cache.icon("044-Skill01") # uƒXƒLƒ‹vƒƒjƒ…[‚̃AƒCƒRƒ“
 ICON_EQUIP  = RPG::Cache.icon("001-Weapon01") # u‘•”õvƒƒjƒ…[‚̃AƒCƒRƒ“
 ICON_STATUS = RPG::Cache.icon("050-Skill07") # uƒXƒe[ƒ^ƒXvƒƒjƒ…[‚̃AƒCƒRƒ“
 ICON_SAVE   = RPG::Cache.icon("038-Item07") # uƒZ[ƒuvƒƒjƒ…[‚̃AƒCƒRƒ“
 ICON_EXIT   = RPG::Cache.icon("046-Skill03") # uI—¹vƒƒjƒ…[‚̃AƒCƒRƒ“
 ICON_DISABLE= RPG::Cache.icon("") # Žg—p‹ÖŽ~€–Ú‚É•t‚­ƒAƒCƒRƒ“
 SE_STARTUP = "056-Right02" # ƒƒjƒ…[‚ðŠJ‚¢‚½‚Æ‚«‚ɖ‚炷SE
 MODE_START = 1 # ƒXƒ^[ƒgƒAƒbƒvƒAƒjƒ[ƒVƒ‡ƒ“
 MODE_WAIT  = 2 # ‘Ò‹@
 MODE_MOVER = 3 # ŽžŒv‰ñ‚è‰ñ“]ƒAƒjƒ[ƒVƒ‡ƒ“
 MODE_MOVEL = 4 # ”½ŽžŒv‰ñ‚è‰ñ“]ƒAƒjƒ[ƒVƒ‡ƒ“
 #--------------------------------------------------------------------------
 # › ƒAƒNƒZƒT
 #--------------------------------------------------------------------------
 attr_accessor :index
 #--------------------------------------------------------------------------
 # œ ƒIƒuƒWƒFƒNƒg‰Šú‰»
 #--------------------------------------------------------------------------
 def initialize( center_x, center_y )
   
   actor=$game_party.actors[0]
   if actor !=nil
   bitmap = RPG::Cache.character(actor.character_name, actor.character_hue)
   end
   actor1=$game_party.actors[1]
    if actor1 !=nil
   bitmap1 = RPG::Cache.character(actor1.character_name, actor.character_hue)
  end
   actor2=$game_party.actors[2]
    if actor2 !=nil
   bitmap2 = RPG::Cache.character(actor2.character_name, actor.character_hue)
   end
   actor3=$game_party.actors[3]
   if actor3 !=nil
   bitmap3 = RPG::Cache.character(actor3.character_name, actor.character_hue)
   end
   super(0, 0, 640, 480)
   self.contents = Bitmap.new(width-32, height-32)
   self.contents.font.name = "Arial"
   self.opacity = 0
   self.back_opacity = 0
   if $game_party.actors.size==4
   
   s1 = actor.name
   s2 = actor1.name
   s3 = actor2.name
   s4 = actor3.name
   @commands = [ s1, s2, s3, s4]
 else
   if $game_party.actors.size==3
   
   s1 = actor.name
   s2 = actor1.name
   s3 = actor2.name
   
   @commands = [ s1, s2, s3]
 else
   if $game_party.actors.size==2
   
   s1 = actor.name
   s2 = actor1.name
 
   @commands = [ s1, s2]
 else
   if $game_party.actors.size==1
   
   s1 = actor.name
   
   @commands = [ s1]
 else
   if $game_party.actors.size==0
   
   
   @commands = [ ]
 end
end
end
end
  end
   @item_max = 4

   if actor3 ==nil
   @item_max = 3
  end
   if actor2 ==nil and actor3 ==nil
     @item_max = 2
   end
     if actor1 ==nil and actor2 ==nil and actor3 ==nil
       @item_max = 1
    end
       if actor ==nil and actor1 ==nil and actor2 ==nil and actor3 ==nil
         @item_max = 0
       end
                 
     @index = 0
   if $game_party.actors.size==4
   @items = [ bitmap,bitmap1,bitmap2,bitmap3]
 end
 if $game_party.actors.size==3
   @items = [ bitmap, bitmap1, bitmap2]
 end
 if $game_party.actors.size==2
   @items = [ bitmap, bitmap1]
 end
 if $game_party.actors.size==1
   @items = [ bitmap]
 end
 if $game_party.actors.size==0
   @items = [ ]
   end
 
   @disabled = [ false, false, false, false, false, false ]
   @cx = center_x - 16
   @cy = center_y - 16
   setup_move_start
   refresh
 end
 #--------------------------------------------------------------------------
 # œ ƒtƒŒ[ƒ€XV actor = $game_party.actors[i]
      #draw_actor_graphic(actor, x - 40, y + 80)
 #--------------------------------------------------------------------------
 def update
   super
   refresh
 end
 #--------------------------------------------------------------------------
 # œ ‰æ–ʍĕ`‰æ
 #--------------------------------------------------------------------------
 def refresh
   self.contents.clear
   # ƒAƒCƒRƒ“‚ð•`‰æ
   case @mode
   when MODE_START
     refresh_start
   when MODE_WAIT
     refresh_wait
   when MODE_MOVER
     refresh_move(1)
   when MODE_MOVEL
     refresh_move(0)
   end
   # ƒAƒNƒeƒBƒu‚ȃRƒ}ƒ“ƒh–¼•\Ž¦
   rect = Rect.new(@cx - 272, @cy + 24, self.contents.width-32, 32)
   self.contents.draw_text(rect, @commands[@index],1)
 end
 #--------------------------------------------------------------------------
 # › ‰æ–ʍĕ`‰æ(‰Šú‰»Žž)
 #--------------------------------------------------------------------------
 def refresh_start
   d1 = 2.0 * Math::PI / @item_max
   d2 = 1.0 * Math::PI / STARTUP_FRAMES
   r = RING_R - 1.0 * RING_R * @steps / STARTUP_FRAMES
   for i in 0...@item_max
     j = i - @index
     d = d1 * j + d2 * @steps
     x = @cx + ( r * Math.sin( d ) ).to_i
     y = @cy - ( r * Math.cos( d ) ).to_i
     draw_item(x, y, i)
   end
   @steps -= 1
   if @steps < 1
     @mode = MODE_WAIT
   end
 end
 #--------------------------------------------------------------------------
 # › ‰æ–ʍĕ`‰æ(‘Ò‹@Žž)
 #--------------------------------------------------------------------------
 def refresh_wait
   d = 2.0 * Math::PI / @item_max
   for i in 0...@item_max
     j = i - @index
     x = @cx + ( RING_R * Math.sin( d * j ) ).to_i
     y = @cy - ( RING_R * Math.cos( d * j ) ).to_i
     draw_item(x, y, i)
   end
 end
 #--------------------------------------------------------------------------
 # › ‰æ–ʍĕ`‰æ(‰ñ“]Žž)
 #  mode : 0=”½ŽžŒv‰ñ‚è 1=ŽžŒv‰ñ‚è
 #--------------------------------------------------------------------------
 def refresh_move( mode )
   d1 = 2.0 * Math::PI / @item_max
   d2 = d1 / MOVING_FRAMES
   d2 *= -1 if mode != 0
   for i in 0...@item_max
     j = i - @index
     d = d1 * j + d2 * @steps
     x = @cx + ( RING_R * Math.sin( d ) ).to_i
     y = @cy - ( RING_R * Math.cos( d ) ).to_i
     draw_item(x, y, i)
   end
   @steps -= 1
   if @steps < 1
     @mode = MODE_WAIT
   end
 end
 #--------------------------------------------------------------------------
 # œ €–Ú‚Ì•`‰æ
 #     x :
 #     y :
 #     i : €–ڔԍ†
 #--------------------------------------------------------------------------
 def draw_item(x, y, i)
   #p "x=" + x.to_s + " y=" + y.to_s + " i=" + @items[i].to_s
   cw = @items[i].width / 4
    ch = @items[i].height / 9#4 pour taille normal
   
   
   rect = Rect.new(0, 0, cw, ch)
   if @index == i
     self.contents.blt( x, y, @items[i], rect )
     if @disabled[@index]
       self.contents.blt( x, y, ICON_DISABLE, rect )
     end
   else
     self.contents.blt( x, y, @items[i], rect, 128 )
     if @disabled[@index]
       self.contents.blt( x, y, ICON_DISABLE, rect, 128 )
     end
   end
 end
 #--------------------------------------------------------------------------
 # œ €–ڂ𖳌ø‚É‚·‚é
 #     index : €–ڔԍ†
 #--------------------------------------------------------------------------
 def disable_item(index)
   @disabled[index] = true
 end
 #--------------------------------------------------------------------------
 # › ‰Šú‰»ƒAƒjƒ[ƒVƒ‡ƒ“‚̏€”õ
 #--------------------------------------------------------------------------
 def setup_move_start
   @mode = MODE_START
   @steps = STARTUP_FRAMES
   if  SE_STARTUP != nil and SE_STARTUP != ""
     Audio.se_play("Audio/SE/" + SE_STARTUP, 80, 100)
   end
 end
 #--------------------------------------------------------------------------
 # › ‰ñ“]ƒAƒjƒ[ƒVƒ‡ƒ“‚̏€”õ
 #--------------------------------------------------------------------------
 def setup_move_move(mode)
   if mode == MODE_MOVER
     @index -= 1
     @index = @items.size - 1 if @index < 0
   elsif mode == MODE_MOVEL
     @index += 1
     @index = 0 if @index >= @items.size
   else
     return
   end
   @mode = mode
   @steps = MOVING_FRAMES
 end
 #--------------------------------------------------------------------------
 # › ƒAƒjƒ[ƒVƒ‡ƒ“’†‚©‚Ç‚¤‚©
 #--------------------------------------------------------------------------
 def animation2?
   return @mode != MODE_WAIT
 end
end
#==============================================================================
# #¡ Scene_RingMenu
# ¡ Scene_Menu
#------------------------------------------------------------------------------
# @ƒƒjƒ…[‰æ–ʂ̏ˆ—‚ðs‚¤ƒNƒ‰ƒX‚Å‚·B
#==============================================================================

#class Scene_RingMenu
class Scene_Menu
 #--------------------------------------------------------------------------
 # œ ƒIƒuƒWƒFƒNƒg‰Šú‰»
 #     menu_index : ƒRƒ}ƒ“ƒh‚̃J[ƒ\ƒ‹‰ŠúˆÊ’u
 #--------------------------------------------------------------------------
 def initialize(menu_index = 0)
   @menu_index = menu_index
 end
 #--------------------------------------------------------------------------
 # œ ƒƒCƒ“ˆ—
 #--------------------------------------------------------------------------
 def main
   # ƒXƒvƒ‰ƒCƒgƒZƒbƒg‚ðì¬
   @spriteset = Spriteset_Map.new
   # ƒRƒ}ƒ“ƒhƒEƒBƒ“ƒhƒE‚ðì¬
   px = $game_player.screen_x - 15
   py = $game_player.screen_y - 24
   @command_window = Window_RingMenu.new(px,py)
   @command_window.index = @menu_index
   # ƒp[ƒeƒBl”‚ª 0 l‚̏ꍇ
   if $game_party.actors.size == 0
     # ƒAƒCƒeƒ€AƒXƒLƒ‹A‘•”õAƒXƒe[ƒ^ƒX‚𖳌ø‰»
     @command_window.disable_item(0)
     @command_window.disable_item(1)
     @command_window.disable_item(2)
     @command_window.disable_item(3)
   end
   @command_window.z = 100
   # ƒZ[ƒu‹ÖŽ~‚̏ꍇ
   if $game_system.save_disabled
     # ƒZ[ƒu‚𖳌ø‚É‚·‚é
     @command_window.disable_item(4)
   end
   # ƒXƒe[ƒ^ƒXƒEƒBƒ“ƒhƒE‚ðì¬
    px2 = $game_player.screen_x - 15
   py2 = $game_player.screen_y - 24
   @status_window = Window_RingMenuStatus.new(px2,py2)
   
   @status_window.visible = false
   # ƒgƒ‰ƒ“ƒWƒVƒ‡ƒ“ŽÀs
   Graphics.transition
   # ƒƒCƒ“ƒ‹[ƒv
   loop do
     # ƒQ[ƒ€‰æ–Ê‚ðXV
     Graphics.update
     # “ü—͏î•ñ‚ðXV
     Input.update
     # ƒtƒŒ[ƒ€XV
     update
     # ‰æ–Ê‚ªØ‚è‘Ö‚í‚Á‚½‚烋[ƒv‚ð’†’f
     if $scene != self
       break
     end
   end
   # ƒgƒ‰ƒ“ƒWƒVƒ‡ƒ“€”õ
   Graphics.freeze
   # ƒXƒvƒ‰ƒCƒgƒZƒbƒg‚ð‰ð•ú
   @spriteset.dispose
   # ƒEƒBƒ“ƒhƒE‚ð‰ð•ú
   @command_window.dispose
   @status_window.dispose
 end
 #--------------------------------------------------------------------------
 # œ ƒtƒŒ[ƒ€XV
 #--------------------------------------------------------------------------
 def update
   # ƒEƒBƒ“ƒhƒE‚ðXV
   @command_window.update
   @status_window.update
   # ƒRƒ}ƒ“ƒhƒEƒBƒ“ƒhƒE‚ªƒAƒNƒeƒBƒu‚̏ꍇ: update_command ‚ðŒÄ‚Ô
   if @command_window.active
     update_command
     return
   end
   # ƒXƒe[ƒ^ƒXƒEƒBƒ“ƒhƒE‚ªƒAƒNƒeƒBƒu‚̏ꍇ: update_status ‚ðŒÄ‚Ô
   if @status_window.active
     update_status
     return
   end
 end
 #--------------------------------------------------------------------------
 # œ ƒtƒŒ[ƒ€XV (ƒRƒ}ƒ“ƒhƒEƒBƒ“ƒhƒE‚ªƒAƒNƒeƒBƒu‚̏ꍇ)
 #--------------------------------------------------------------------------
 def update_command
   # B ƒ{ƒ^ƒ“‚ª‰Ÿ‚³‚ꂽê‡
   if Input.trigger?(Input::B)
     # ƒLƒƒƒ“ƒZƒ‹ SE ‚ð‰‰‘t
     $game_system.se_play($data_system.cancel_se)
     # ƒ}ƒbƒv‰æ–ʂɐ؂è‘Ö‚¦
     $scene = Scene_Map.new
     return
   end
   # C ƒ{ƒ^ƒ“‚ª‰Ÿ‚³‚ꂽê‡
   if Input.trigger?(Input::C)
     # ƒp[ƒeƒBl”‚ª 0 l‚ŁAƒZ[ƒuAƒQ[ƒ€I—¹ˆÈŠO‚̃Rƒ}ƒ“ƒh‚̏ꍇ
     if $game_party.actors.size == 0 and @command_window.index < 4
       # ƒuƒU[ SE ‚ð‰‰‘t
       $game_system.se_play($data_system.buzzer_se)
       return
     end
     # ƒRƒ}ƒ“ƒhƒEƒBƒ“ƒhƒE‚̃J[ƒ\ƒ‹ˆÊ’u‚Å•ªŠò
     case @command_window.index
     when 0  # ƒAƒCƒeƒ€
       # Œˆ’è  SE ‚ð‰‰‘t
       $game_system.se_play($data_system.decision_se)
       # ƒAƒCƒeƒ€‰æ–ʂɐ؂è‘Ö‚¦
       $scene = Scene_Item.new
     when 1  # ƒXƒLƒ‹
       # Œˆ’è SE ‚ð‰‰‘t
       $game_system.se_play($data_system.decision_se)
       # ƒXƒe[ƒ^ƒXƒEƒBƒ“ƒhƒE‚ðƒAƒNƒeƒBƒu‚É‚·‚é
       @command_window.active = false
       @status_window.active = true
       @status_window.visible = true
       @status_window.index = 0
     when 2  # ‘•”õ
       # Œˆ’è SE ‚ð‰‰‘t
       $game_system.se_play($data_system.decision_se)
       # ƒXƒe[ƒ^ƒXƒEƒBƒ“ƒhƒE‚ðƒAƒNƒeƒBƒu‚É‚·‚é
       @command_window.active = false
       @status_window.active = true
       @status_window.visible = true
       @status_window.index = 0
     when 3  # ƒXƒe[ƒ^ƒX
       # Œˆ’è SE ‚ð‰‰‘t
       $game_system.se_play($data_system.decision_se)
       # ƒXƒe[ƒ^ƒXƒEƒBƒ“ƒhƒE‚ðƒAƒNƒeƒBƒu‚É‚·‚é
       @command_window.active = false
       @status_window.active = true
       @status_window.visible = true
       @status_window.index = 0
     when 4  # ƒZ[ƒu
       # ƒZ[ƒu‹ÖŽ~‚̏ꍇ
       if $game_system.save_disabled
         # ƒuƒU[ SE ‚ð‰‰‘t
         $game_system.se_play($data_system.buzzer_se)
         return
       end
       # Œˆ’è SE ‚ð‰‰‘t
       $game_system.se_play($data_system.decision_se)
       # ƒZ[ƒu‰æ–ʂɐ؂è‘Ö‚¦
       $scene = Scene_Save.new
     when 5  # ƒQ[ƒ€I—¹
       # Œˆ’è SE ‚ð‰‰‘t
       $game_system.se_play($data_system.decision_se)
       # ƒQ[ƒ€I—¹‰æ–ʂɐ؂è‘Ö‚¦
       $scene = Scene_End.new
     end
     return
   end
   # ƒAƒjƒ[ƒVƒ‡ƒ“’†‚È‚çƒJ[ƒ\ƒ‹‚̏ˆ—‚ðs‚í‚È‚¢
   return if @command_window.animation?
   # ªor© ƒ{ƒ^ƒ“‚ª‰Ÿ‚³‚ꂽê‡
   if Input.press?(Input::UP) or  Input.press?(Input::LEFT)
     $game_system.se_play($data_system.cursor_se)
     @command_window.setup_move_move(Window_RingMenu::MODE_MOVEL)
     return
   end
   # «or¨ ƒ{ƒ^ƒ“‚ª‰Ÿ‚³‚ꂽê‡
   if Input.press?(Input::DOWN) or  Input.press?(Input::RIGHT)
     $game_system.se_play($data_system.cursor_se)
     @command_window.setup_move_move(Window_RingMenu::MODE_MOVER)
     return
   end
 end
 #--------------------------------------------------------------------------
 # œ ƒtƒŒ[ƒ€XV (ƒXƒe[ƒ^ƒXƒEƒBƒ“ƒhƒE‚ªƒAƒNƒeƒBƒu‚̏ꍇ)
 #--------------------------------------------------------------------------
 def update_status2
   # B ƒ{ƒ^ƒ“‚ª‰Ÿ‚³‚ꂽê‡
   if Input.trigger?(Input::B)
     # ƒLƒƒƒ“ƒZƒ‹ SE ‚ð‰‰‘t
     $game_system.se_play($data_system.cancel_se)
     # ƒRƒ}ƒ“ƒhƒEƒBƒ“ƒhƒE‚ðƒAƒNƒeƒBƒu‚É‚·‚é
     @command_window.active = true
     @status_window.active = false
     @status_window.visible = false
     @status_window.index = -1
     return
   end
   # C ƒ{ƒ^ƒ“‚ª‰Ÿ‚³‚ꂽê‡
   if Input.trigger?(Input::C)
     # ƒRƒ}ƒ“ƒhƒEƒBƒ“ƒhƒE‚̃J[ƒ\ƒ‹ˆÊ’u‚Å•ªŠò
     case @command_window.index
     when 1  # ƒXƒLƒ‹
       # ‚±‚̃AƒNƒ^[‚̍s“®§ŒÀ‚ª 2 ˆÈã‚̏ꍇ
       if $game_party.actors[@status_window.index].restriction >= 2
         # ƒuƒU[ SE ‚ð‰‰‘t
         $game_system.se_play($data_system.buzzer_se)
         return
       end
       # Œˆ’è SE ‚ð‰‰‘t
       $game_system.se_play($data_system.decision_se)
       # ƒXƒLƒ‹‰æ–ʂɐ؂è‘Ö‚¦
       $scene = Scene_Skill.new(@status_window.index)
     when 2  # ‘•”õ
       # Œˆ’è SE ‚ð‰‰‘t
       $game_system.se_play($data_system.decision_se)
       # ‘•”õ‰æ–ʂɐ؂è‘Ö‚¦
       $scene = Scene_Equip.new(@status_window.index)
     when 3  # ƒXƒe[ƒ^ƒX
       # Œˆ’è SE ‚ð‰‰‘t
       $game_system.se_play($data_system.decision_se)
       # ƒXƒe[ƒ^ƒX‰æ–ʂɐ؂è‘Ö‚¦
       $scene = Scene_Status.new(@status_window.index)
     end
     return
   end
 end
 def update_status
   @command_window.visible=false
   # B ƒ{ƒ^ƒ“‚ª‰Ÿ‚³‚ꂽê‡
   if Input.trigger?(Input::B)
     # ƒLƒƒƒ“ƒZƒ‹ SE ‚ð‰‰‘t
     $game_system.se_play($data_system.cancel_se)
     # ƒ}ƒbƒv‰æ–ʂɐ؂è‘Ö‚¦
     $scene = Scene_Menu.new
     return
   end
   # C ƒ{ƒ^ƒ“‚ª‰Ÿ‚³‚ꂽê‡
   if Input.trigger?(Input::C)
     # ƒp[ƒeƒBl”‚ª 0 l‚ŁAƒZ[ƒuAƒQ[ƒ€I—¹ˆÈŠO‚̃Rƒ}ƒ“ƒh‚̏ꍇ
     if $game_party.actors.size == 0 and @command_window.index < 4
       # ƒuƒU[ SE ‚ð‰‰‘t
       $game_system.se_play($data_system.buzzer_se)
       return
     end
     # ƒRƒ}ƒ“ƒhƒEƒBƒ“ƒhƒE‚̃J[ƒ\ƒ‹ˆÊ’u‚Å•ªŠò
     case @command_window.index
     when 0  # ƒAƒCƒeƒ€
       # Œˆ’è  SE ‚ð‰‰‘t
       $game_system.se_play($data_system.decision_se)
       # ƒAƒCƒeƒ€‰æ–ʂɐ؂è‘Ö‚¦
       $scene = Scene_Item.new
     when 1  # ƒXƒLƒ‹
       # Œˆ’è SE ‚ð‰‰‘t
       $game_system.se_play($data_system.decision_se)
       # ƒXƒe[ƒ^ƒXƒEƒBƒ“ƒhƒE‚ðƒAƒNƒeƒBƒu‚É‚·‚é
       
       $scene = Scene_Skill.new(@status_window.index)
     when 2  # ‘•”õ
       # Œˆ’è SE ‚ð‰‰‘t
       $game_system.se_play($data_system.decision_se)
       # ƒXƒe[ƒ^ƒXƒEƒBƒ“ƒhƒE‚ðƒAƒNƒeƒBƒu‚É‚·‚é
       $scene = Scene_Equip.new(@status_window.index)
     when 3  # ƒXƒe[ƒ^ƒX
       # Œˆ’è SE ‚ð‰‰‘t
       $game_system.se_play($data_system.decision_se)
       # ƒXƒe[ƒ^ƒXƒEƒBƒ“ƒhƒE‚ðƒAƒNƒeƒBƒu‚É‚·‚é
       $scene = Scene_Status.new(@status_window.index)
     when 4  # ƒZ[ƒu
       # ƒZ[ƒu‹ÖŽ~‚̏ꍇ
       if $game_system.save_disabled
         # ƒuƒU[ SE ‚ð‰‰‘t
         $game_system.se_play($data_system.buzzer_se)
         return
       end
       # Œˆ’è SE ‚ð‰‰‘t
       $game_system.se_play($data_system.decision_se)
       # ƒZ[ƒu‰æ–ʂɐ؂è‘Ö‚¦
       $scene = Scene_Save.new
     when 5  # ƒQ[ƒ€I—¹
       # Œˆ’è SE ‚ð‰‰‘t
       $game_system.se_play($data_system.decision_se)
       # ƒQ[ƒ€I—¹‰æ–ʂɐ؂è‘Ö‚¦
       $scene = Scene_End.new
     end
     return
   end
   # ƒAƒjƒ[ƒVƒ‡ƒ“’†‚È‚çƒJ[ƒ\ƒ‹‚̏ˆ—‚ðs‚í‚È‚¢
   return if @status_window.animation2?
   # ªor© ƒ{ƒ^ƒ“‚ª‰Ÿ‚³‚ꂽê‡
   if Input.press?(Input::UP) or  Input.press?(Input::LEFT)
     $game_system.se_play($data_system.cursor_se)
     @status_window.setup_move_move(Window_RingMenuStatus::MODE_MOVEL)
     return
   end
   # «or¨ ƒ{ƒ^ƒ“‚ª‰Ÿ‚³‚ꂽê‡
   if Input.press?(Input::DOWN) or  Input.press?(Input::RIGHT)
     $game_system.se_play($data_system.cursor_se)
     @status_window.setup_move_move(Window_RingMenuStatus::MODE_MOVER)
     return
   end
 end
 
 end
Revenir en haut
Visiter le site web du posteur
Contenu Sponsorisé






MessagePosté le: 03/12/2016 11:34:07
MessageSujet du message: [Script] Menu a la Secret of ...

Revenir en haut
Montrer les messages depuis:   
RPG Community Index du Forum -> RPG Maker -> Scripts RPG Maker XP Toutes les heures sont au format GMT + 2 Heures
Poster un nouveau sujet   Répondre au sujet
Page 1 sur 1
Sauter vers:  

 

Portail | Index | Panneau d’administration | Créer un forum | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
phpBB
Template by BMan1
Traduction par : phpBB-fr.com