RPGMakerID
Would you like to react to this message? Create an account in a few clicks or log in to continue.

Komunitas RPG Maker Indonesia
 
IndeksIndeks  Latest imagesLatest images  PencarianPencarian  PendaftaranPendaftaran  Login  
Per 2016, RMID pindah ke RMID Discord (Invite link dihapus untuk mencegah spambot -Theo @ 2019). Posting sudah tidak bisa dilakukan lagi.
Mohon maaf atas ketidaknyamanannya dan mohon kerjasamanya.

 

 Fadli's Styled Menu VX

Go down 
+8
darknezz
LiTTleDRAgo
rexoholic
Nefusa 7
LowlingLife
TegarDarmawan
richter_h
cacad
12 posters
PengirimMessage
cacad
Koplak RMer
cacad


Level 5
Posts : 399
Thanked : 3
Engine : Multi-Engine User
Skill : Skilled
Type : Event Designer

Trophies
Awards:
Fadli's Styled Menu VX Empty
PostSubyek: Fadli's Styled Menu VX   Fadli's Styled Menu VX Empty2012-03-02, 20:56

<Fadli's Styled Menu VX>
Versi: <1.4>
Tipe: <Menu System>


Pengenalan

<Ini adalah script buatan saya kedua karena bosan melihat menu system yg basic, pengen comot dari orang laen rasanya kuang pas :D, makanya saya mencoba membuat script menu system ini dan lumayan menambah kreativitas :D>


Fitur


  • <Ya menu system lah>
  • <Disertai spriteset dalam menu>
  • <Disertai Map name, Play time, Step>



Screenshots

Fadli's Styled Menu VX Menu10



Demo

Spoiler:



Scripts

Nih scriptnya :

Code:

=begin
===============================================================================
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Name        : Fadli's Styled Menu VX
Author      : Fadli Maulana
Relase Date  : 02/03/2012
Version      : 1.4
Engine      : RPG Maker VX <RMVX>
Type        : Menu System
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
===============================================================================
*******************************************************************************
SPECIAL TANKS TO :
 * RMID Users
 
RMID Nickname :
 * cacad
*******************************************************************************
===============================================================================
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


###############################################################################
PERBEDAAN VERSI
*Versi 1.0 memakai background bergambar
*Versi 1.0.A memakai create_menu_background
*Versi 1.1 memakai info map, step, dan playtime dan perbaikan bug
*Versi 1.2 hanya perbaikan bug :D
*Versi 1.3 hanya perbaikan bug di map name
*Versi 1.4 perbaikan bug di map name dan perbaikan window
###############################################################################


=end


#==============================================================================
# ** Window_MenuStatus
#------------------------------------------------------------------------------
#  This window displays party member status on the menu screen.
#==============================================================================

class Window_MenuStatus2 < Window_Selectable
  #--------------------------------------------------------------------------
  # * Object Initialization
  #    x : window X coordinate
  #    y : window Y coordinate
  #--------------------------------------------------------------------------
  def initialize(x, y)
    super(0, 218, 545, 198)
    @column_max = 4
    self.index = -1
    refresh
    self.active = false
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    @item_max = $game_party.members.size
    for actor in $game_party.members
      draw_actor_face(actor, actor.index * 130 + WLH / 2, 70 + 2, 92)
      x = actor.index * 130 + WLH / 2
      y = 0
      draw_actor_name(actor, x, y)
      #draw_actor_graphic(actor, x + 15, y + 82)
      #draw_actor_class(actor, x + 120, y)
      draw_actor_class(actor, actor.index * 130 + 12, y + 45)
      draw_actor_level(actor, x, y + WLH * 1)
      draw_actor_state(actor, x + 65, y + 22)
      draw_actor_hp(actor, x - 11, 40 + WLH * 1)
      draw_actor_mp(actor, x - 11, 40 + WLH * 2)
    end
  end
  #--------------------------------------------------------------------------
  # * Update cursor
  #--------------------------------------------------------------------------
  def update_cursor
    if @index < 0              # No cursor
      self.cursor_rect.empty     
    elsif @index < @item_max    # Normal @index * 96
      self.cursor_rect.set(@index * 130, 0, 120, 167)
    elsif @index >= 100        # Self (@index - 100) * 96
      self.cursor_rect.set((@index - 100) * 130, 0, 120, 167)
    else                        # All
      self.cursor_rect.set(0, 0, contents.width, @item_max * 96)
    end
  end
end


#==============================================================================
# ** Window_Info
#------------------------------------------------------------------------------
#  Untuk menampilkan info
#==============================================================================

class Window_Info < Window_Base
  #--------------------------------------------------------------------------
  # * Object Initialization
  #    x : window X coordinate
  #    y : window Y coordinate
  #--------------------------------------------------------------------------
  def initialize(x, y)
    super(x, y, 545, WLH + 64)
    refresh
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    #MAP NAME
    @map_name = load_data("Data/MapInfos.rvdata")[$game_map.map_id].name
    self.contents.draw_text(30, 0, width - 384, WLH, @map_name, 0)
    draw_icon(153, 0, 0) # Map icon
    #GOLD
    draw_currency_value($game_party.gold, 4, 0, 500)
    draw_icon(205, 340, 0) # Gold icon
    #STEP
    self.contents.draw_text(10, 32, width - 384, WLH, $game_party.steps, 2)
    draw_icon(48, 0, 32) #Step icon   
  end
#=============================================================================
  # * Check if Playtime is different from last check
  #=============================================================================
  def update
    if @text != (Graphics.frame_count / Graphics.frame_rate)
      draw_time
    end
    super
  end # update
 #-----------------------------------------------------------------------------
 #
 #-----------------------------------------------------------------------------
 def draw_time
 #Play time
    self.contents.clear_rect(Rect.new(340, 32, (260 - 32), 24))
    draw_icon(188, 340, 32)
    @total_sec = Graphics.frame_count / Graphics.frame_rate
    @hour = @total_sec / 60 / 60
    @min = @total_sec / 60 % 60
    @sec = @total_sec % 60
    @text = sprintf("%02d:%02d:%02d", @hour, @min, @sec)
    self.contents.draw_text(349, 32, width - 384, WLH, @text, 2)
  end
  end
#----------------------------------------------------------------------------
# *Buat Nampilin karakter di menu
#----------------------------------------------------------------------------
class Window_Chibi < Window_Base
  #--------------------------------------------------------------------------
  # * Object Initialization
  #    x : window X coordinate
  #    y : window Y coordinate
  #--------------------------------------------------------------------------
  def initialize(x, y)
    super(0, 0, 544, 416)
    refresh
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    self.opacity = 0
    self.back_opacity = 0
    self.contents_opacity = 250
    @item_max = $game_party.members.size
    for actor in $game_party.members
    draw_actor_graphic(actor, actor.index * 132 + 57, 193 + 2)
    end
  end
  end

class Window_Comman < Window_Selectable
  #--------------------------------------------------------------------------
  # * Public Instance Variables
  #--------------------------------------------------------------------------
  attr_reader  :commands                # command
  #--------------------------------------------------------------------------
  # * Object Initialization
  #    width      : window width
  #    commands  : command string array
  #    column_max : digit count (if 2 or more, horizontal selection)
  #    row_max    : row count (0: match command count)
  #    spacing    : blank space when items are arrange horizontally
  #--------------------------------------------------------------------------
  def initialize(width, commands, column_max = 5, row_max = 0, spacing = 5)
    if row_max == 0
      row_max = (commands.size + column_max - 5) / column_max
    end
    super(0, 0, 544, row_max * WLH + 32, spacing)
    @commands = commands
    @item_max = commands.size
    @column_max = column_max
    refresh
    self.index = 0
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    for i in 0...@item_max
      draw_item(i)
    end
  end
  #--------------------------------------------------------------------------
  # * Draw Item
  #    index  : item number
  #    enabled : enabled flag. When false, draw semi-transparently.
  #--------------------------------------------------------------------------
  def draw_item(index, enabled = true)
    rect = item_rect(index)
    rect.x += 4
    rect.width -= 8
    self.contents.clear_rect(rect)
    self.contents.font.color = normal_color
    self.contents.font.color.alpha = enabled ? 255 : 128
    self.contents.draw_text(rect, @commands[index])
  end
end


#==============================================================================
# ** Scene_Menu
#------------------------------------------------------------------------------
#  This class performs the menu screen processing.
#==============================================================================

class Scene_Menu < Scene_Base
  #--------------------------------------------------------------------------
  # * Object Initialization
  #    menu_index : command cursor's initial position
  #--------------------------------------------------------------------------
  def initialize(menu_index = 0)
    @menu_index = menu_index
  end
  #--------------------------------------------------------------------------
  # * Start processing
  #--------------------------------------------------------------------------
  def start
    super
    create_menu_background
    create_command_window
    @info_window = Window_Info.new(0, 55)
    @status_window = Window_MenuStatus2.new(160, 0)
    @chibi_indicator = Window_Chibi.new(0, 0)
  end
  #--------------------------------------------------------------------------
  # * Termination Processing
  #--------------------------------------------------------------------------
  def terminate
    super
    dispose_menu_background
    @command_window.dispose
    @info_window.dispose
    @status_window.dispose
    @chibi_indicator.dispose
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    super
    update_menu_background
    @command_window.update
    @info_window.update
    @status_window.update
    @chibi_indicator.update
    if @command_window.active
      update_command_selection
    elsif @status_window.active
      update_actor_selection
    end
  end
  #--------------------------------------------------------------------------
  # * Create Command Window
  #--------------------------------------------------------------------------
  def create_command_window
    s1 = Vocab::item
    s2 = Vocab::skill
    s3 = Vocab::equip
    s4 = Vocab::status
    s5 = Vocab::game_end
    @command_window = Window_Comman.new(160, [s1, s2, s3, s4, s5])
    @command_window.index = @menu_index
    if $game_party.members.size == 0          # If number of party members is 0
      @command_window.draw_item(0, false)    # Disable item
      @command_window.draw_item(1, false)    # Disable skill
      @command_window.draw_item(2, false)    # Disable equipment
      @command_window.draw_item(3, false)    # Disable status
    end
    if $game_system.save_disabled            # If save is forbidden
      print "You don't have saved data"
      @command_window.draw_item(4, false)    # Disable save
    end
  end
  #--------------------------------------------------------------------------
  # * Update Command Selection
  #--------------------------------------------------------------------------
  def update_command_selection
    if Input.trigger?(Input::B)
      Sound.play_cancel
      $scene = Scene_Map.new
    elsif Input.trigger?(Input::C)
      if $game_party.members.size == 0 and @command_window.index < 4
        Sound.play_buzzer
        return
      elsif $game_system.save_disabled and @command_window.index == 4
        Sound.play_buzzer
        return
      end
      Sound.play_decision
      case @command_window.index
      when 0      # Item
        $scene = Scene_Item.new
      when 1,2,3  # Skill, equipment, status
        start_actor_selection
      when 4
        $scene = Scene_End.new
    end
    end
  end
  #--------------------------------------------------------------------------
  # * Start Actor Selection
  #--------------------------------------------------------------------------
  def start_actor_selection
    @command_window.active = false
    @status_window.active = true
    if $game_party.last_actor_index < @status_window.item_max
      @status_window.index = $game_party.last_actor_index
    else
      @status_window.index = 0
    end
  end
  #--------------------------------------------------------------------------
  # * End Actor Selection
  #--------------------------------------------------------------------------
  def end_actor_selection
    @command_window.active = true
    @status_window.active = false
    @status_window.index = -1
  end
  #--------------------------------------------------------------------------
  # * Update Actor Selection
  #--------------------------------------------------------------------------
  def update_actor_selection
    if Input.trigger?(Input::B)
      Sound.play_cancel
      end_actor_selection
    elsif Input.trigger?(Input::C)
      $game_party.last_actor_index = @status_window.index
      Sound.play_decision
      case @command_window.index
      when 1  # skill
        $scene = Scene_Skill.new(@status_window.index)
      when 2  # equipment
        $scene = Scene_Equip.new(@status_window.index)
      when 3  # status
        $scene = Scene_Status.new(@status_window.index)
      end
    end
  end
end




Credits


  • <Cacad (Fadli)>


Terakhir diubah oleh cacad tanggal 2012-06-05, 04:56, total 5 kali diubah
Kembali Ke Atas Go down
richter_h
Salto Master
Hancip RMID
richter_h


Kosong
Posts : 1705
Thanked : 30
Engine : Other
Skill : Skilled
Type : Developer

Trophies
Awards:

Fadli's Styled Menu VX Empty
PostSubyek: Re: Fadli's Styled Menu VX   Fadli's Styled Menu VX Empty2012-03-02, 21:03

:hmm: not bad =w=b

btw kalo ane liat jadi kurang efisien :v
lihat, masih ada space kosong di tengah2, dimana ada charset karakter yang nongol. Gunakan space sebaik mungkin
kalo mau juga, kasih 'create_menu_background,' jadi keliatan itu adalah scene buat ngakses inventori/skill/lainnya
contohnya kek default menu system bawaan VX :ngacay2:

nice start, boys =w=b
Kembali Ke Atas Go down
http://ryann.creatvwrkr.com
TegarDarmawan
Novice
Novice
TegarDarmawan


Level 5
Posts : 115
Thanked : 1
Engine : RMVX
Skill : Beginner
Type : Developer

Fadli's Styled Menu VX Empty
PostSubyek: Re: Fadli's Styled Menu VX   Fadli's Styled Menu VX Empty2012-03-02, 22:16

siippp,,,, 4/5 lahh
setuju sama di atas,,masih ada yg bolong
Kembali Ke Atas Go down
http://www.fuocogames.blogspot.com
cacad
Koplak RMer
cacad


Level 5
Posts : 399
Thanked : 3
Engine : Multi-Engine User
Skill : Skilled
Type : Event Designer

Trophies
Awards:
Fadli's Styled Menu VX Empty
PostSubyek: Re: Fadli's Styled Menu VX   Fadli's Styled Menu VX Empty2012-03-03, 04:45

@Richter : emang sengaja gk dikasih create_menu_background, tapi katanya lebih baik dikasih create_menu_background dan dihilangkan gambar backgroundnya agar kelihatan gambar map-nya ya :hmm:
klo itu menurut anda semua bagus bakalan saya update/ganti :D

@Tegar : Ok :D
Kembali Ke Atas Go down
LowlingLife
Administrator
Administrator
LowlingLife


Kosong
Posts : 2000
Thanked : 25
Engine : Multi-Engine User

Trophies
Awards:

Fadli's Styled Menu VX Empty
PostSubyek: Re: Fadli's Styled Menu VX   Fadli's Styled Menu VX Empty2012-03-03, 21:43

Cool om Cacad. Tapi, mungkin bagian yang kosong di tengah itu bisa diisi dengan hal-hal lain seperti data-data pemain gak cuma uang. Seperti Location, teru Play Time, dsb.
Kembali Ke Atas Go down
Nefusa 7
Senior
Senior
Nefusa 7


Level 5
Posts : 954
Thanked : 6
Engine : RMXP
Skill : Intermediate
Type : Scripter

Fadli's Styled Menu VX Empty
PostSubyek: Re: Fadli's Styled Menu VX   Fadli's Styled Menu VX Empty2012-03-04, 04:29

hmm.. :hmm:
lumayang dah =w=b

btw seperti komen-komen diatas,
yang tengah itu dikasih sesuatu :D
seperti statusnya character :)
atau yang laennya :v
Kembali Ke Atas Go down
https://nefusa.my.id/
rexoholic
Advance
Advance
rexoholic


Level 5
Posts : 330
Thanked : 2
Engine : Multi-Engine User
Skill : Beginner
Type : Jack of All Trades

Fadli's Styled Menu VX Empty
PostSubyek: Re: Fadli's Styled Menu VX   Fadli's Styled Menu VX Empty2012-03-04, 16:28

keren tuh. tapi seperti yang diatas bilang, di tengah masih kurang sreg gara-gara bolong. good job lah. paling enggak kamu udah bisa bikin CMS sendiri. ga kayak aku.
Kembali Ke Atas Go down
LiTTleDRAgo
Senior
Senior
LiTTleDRAgo


Level 5
Posts : 712
Thanked : 27
Engine : RMXP
Skill : Skilled
Type : Scripter

Trophies
Awards:
Fadli's Styled Menu VX Empty
PostSubyek: Re: Fadli's Styled Menu VX   Fadli's Styled Menu VX Empty2012-03-04, 17:42

bagus, tapi itu faceset ketimpa sama tulisan Lv sama Bar HP/MP kelihatannya jadi aneh
Kembali Ke Atas Go down
darknezz
Novice
Novice
darknezz


Level 5
Posts : 184
Thanked : 0
Engine : Multi-Engine User
Skill : Intermediate
Type : Developer

Fadli's Styled Menu VX Empty
PostSubyek: Re: Fadli's Styled Menu VX   Fadli's Styled Menu VX Empty2012-03-04, 19:17

yg kosong2 di isi aja sama waktu atau jumlah step kan sudah lumayan
Kembali Ke Atas Go down
http://gameloverz-4ever.blogspot.com
cacad
Koplak RMer
cacad


Level 5
Posts : 399
Thanked : 3
Engine : Multi-Engine User
Skill : Skilled
Type : Event Designer

Trophies
Awards:
Fadli's Styled Menu VX Empty
PostSubyek: Re: Fadli's Styled Menu VX   Fadli's Styled Menu VX Empty2012-03-28, 18:21

UPDATED To Version 1.1
Kembali Ke Atas Go down
Adhe45
Senior
Senior
Adhe45


Level 5
Posts : 665
Thanked : 4
Engine : RMXP
Skill : Beginner
Type : Spriter

Fadli's Styled Menu VX Empty
PostSubyek: Re: Fadli's Styled Menu VX   Fadli's Styled Menu VX Empty2012-03-28, 18:25

keren kak ! :thumbup:


btw bisa dibuat yang versi XP nya gak ?
Kembali Ke Atas Go down
cacad
Koplak RMer
cacad


Level 5
Posts : 399
Thanked : 3
Engine : Multi-Engine User
Skill : Skilled
Type : Event Designer

Trophies
Awards:
Fadli's Styled Menu VX Empty
PostSubyek: Re: Fadli's Styled Menu VX   Fadli's Styled Menu VX Empty2012-03-28, 18:35

@Adhe45 :
Spoiler:
Kembali Ke Atas Go down
cacad
Koplak RMer
cacad


Level 5
Posts : 399
Thanked : 3
Engine : Multi-Engine User
Skill : Skilled
Type : Event Designer

Trophies
Awards:
Fadli's Styled Menu VX Empty
PostSubyek: Re: Fadli's Styled Menu VX   Fadli's Styled Menu VX Empty2012-03-28, 18:49

UPDATED To Version 1.2
lho !!! kok cepet amat dari V.1.1 langsung ke V.1.2
karena ada bug nyangkut dan sudah dihilangkan bug-nya :D
Kembali Ke Atas Go down
Adhe45
Senior
Senior
Adhe45


Level 5
Posts : 665
Thanked : 4
Engine : RMXP
Skill : Beginner
Type : Spriter

Fadli's Styled Menu VX Empty
PostSubyek: Re: Fadli's Styled Menu VX   Fadli's Styled Menu VX Empty2012-03-28, 19:05

wah gak bisa ya,,,

ok deh, kutunggu karya" mu selanjutnya !
Kembali Ke Atas Go down
Chanai-ai
Novice
Novice
Chanai-ai


Level 5
Posts : 187
Thanked : 4
Engine : RMVX
Skill : Beginner
Type : Artist

Fadli's Styled Menu VX Empty
PostSubyek: Re: Fadli's Styled Menu VX   Fadli's Styled Menu VX Empty2012-03-28, 19:55

weeew, udh dibetulin ternyata good =w=b
lanjutkan bwt lg script yg bnyk om :D
Kembali Ke Atas Go down
cacad
Koplak RMer
cacad


Level 5
Posts : 399
Thanked : 3
Engine : Multi-Engine User
Skill : Skilled
Type : Event Designer

Trophies
Awards:
Fadli's Styled Menu VX Empty
PostSubyek: Re: Fadli's Styled Menu VX   Fadli's Styled Menu VX Empty2012-05-10, 19:40

@Adhe : iya gk bsa, soalnya ane gk bsa convert dari RGSS2 ke 1, tpi dari RGSS1 ke 2 lebih mudah :D
@Ai : wah makasih atas tanggapannya :)
Kembali Ke Atas Go down
Danger Force Ryder
Advance
Advance
Danger Force Ryder


Level 3
Posts : 307
Thanked : 1
Engine : RMXP
Skill : Very Beginner
Type : Writer

Fadli's Styled Menu VX Empty
PostSubyek: Re: Fadli's Styled Menu VX   Fadli's Styled Menu VX Empty2012-06-04, 19:29

Kaya nya bagus tuh tapi sayang aku pake yg XP
Kembali Ke Atas Go down
cacad
Koplak RMer
cacad


Level 5
Posts : 399
Thanked : 3
Engine : Multi-Engine User
Skill : Skilled
Type : Event Designer

Trophies
Awards:
Fadli's Styled Menu VX Empty
PostSubyek: Re: Fadli's Styled Menu VX   Fadli's Styled Menu VX Empty2012-06-05, 04:41

zzz . . . . ada bug yg nyangkut !!!!!!!!!!!111
UPDATED TO VERSION 1.3
Thanks :D
Kembali Ke Atas Go down
cacad
Koplak RMer
cacad


Level 5
Posts : 399
Thanked : 3
Engine : Multi-Engine User
Skill : Skilled
Type : Event Designer

Trophies
Awards:
Fadli's Styled Menu VX Empty
PostSubyek: Re: Fadli's Styled Menu VX   Fadli's Styled Menu VX Empty2012-06-05, 05:12

wew, ada serangga nyangkut lagi
UPDATED TO VERSION 1.4 :banana:

Sekalian !!!!!

UPDATED TO VERSION 1.5

Di versi 1.5 menu dapat diberi background dengan gambar sesuai selera :3

Untuk memberi gambar Buat gambar lalu simpan di Graphics/System dengan nama MenuBack
INGAT !!!!!! Nama backgroundnya MenuBack

Nih Versi 1.5 nya :

Code:

=begin
===============================================================================
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Name        : Fadli's Styled Menu VX
Author      : Fadli Maulana
Relase Date  : 02/03/2012
Version      : 1.5
Engine      : RPG Maker VX <RMVX>
Type        : Menu System
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
===============================================================================
*******************************************************************************
SPECIAL TANKS TO :
 * RMID Users
 
RMID Nickname :
 * cacad
*******************************************************************************
===============================================================================
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


###############################################################################
PERBEDAAN VERSI
*Versi 1.0 memakai background bergambar
*Versi 1.0.A memakai create_menu_background
*Versi 1.1 memakai info map, step, dan playtime dan perbaikan bug
*Versi 1.2 hanya perbaikan bug :D
*Versi 1.3 hanya perbaikan bug di map name
*Versi 1.4 perbaikan bug di map name dan perbaikan window
*Versi 1.5 Dapat memakai background sesuai selera
###############################################################################

###############################################################################
~ Untuk background simpan di Graphics/System simpan dengan nama MenuBack
###############################################################################

=end


#==============================================================================
# ** Window_MenuStatus
#------------------------------------------------------------------------------
#  This window displays party member status on the menu screen.
#==============================================================================

class Window_MenuStatus2 < Window_Selectable
  #--------------------------------------------------------------------------
  # * Object Initialization
  #    x : window X coordinate
  #    y : window Y coordinate
  #--------------------------------------------------------------------------
  def initialize(x, y)
    super(0, 218, 545, 198)
    @column_max = 4
    self.index = -1
    refresh
    self.active = false
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    @item_max = $game_party.members.size
    for actor in $game_party.members
      draw_actor_face(actor, actor.index * 130 + WLH / 2, 70 + 2, 92)
      x = actor.index * 130 + WLH / 2
      y = 0
      draw_actor_name(actor, x, y)
      #draw_actor_graphic(actor, x + 15, y + 82)
      #draw_actor_class(actor, x + 120, y)
      draw_actor_class(actor, actor.index * 130 + 12, y + 45)
      draw_actor_level(actor, x, y + WLH * 1)
      draw_actor_state(actor, x + 65, y + 22)
      draw_actor_hp(actor, x - 11, 40 + WLH * 1)
      draw_actor_mp(actor, x - 11, 40 + WLH * 2)
      self.back_opacity = 100
    end
  end
  #--------------------------------------------------------------------------
  # * Update cursor
  #--------------------------------------------------------------------------
  def update_cursor
    if @index < 0              # No cursor
      self.cursor_rect.empty     
    elsif @index < @item_max    # Normal @index * 96
      self.cursor_rect.set(@index * 130, 0, 120, 167)
    elsif @index >= 100        # Self (@index - 100) * 96
      self.cursor_rect.set((@index - 100) * 130, 0, 120, 167)
    else                        # All
      self.cursor_rect.set(0, 0, contents.width, @item_max * 96)
    end
  end
end


#==============================================================================
# ** Window_Info
#------------------------------------------------------------------------------
#  Untuk menampilkan info
#==============================================================================

class Window_Info < Window_Base
  #--------------------------------------------------------------------------
  # * Object Initialization
  #    x : window X coordinate
  #    y : window Y coordinate
  #--------------------------------------------------------------------------
  def initialize(x, y)
    super(x, y, 545, WLH + 64)
    refresh
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    #MAP NAME
    @map_name = load_data("Data/MapInfos.rvdata")[$game_map.map_id].name
    self.contents.draw_text(30, 0, width - 384, WLH, @map_name, 0)
    draw_icon(153, 0, 0) # Map icon
    #GOLD
    draw_currency_value($game_party.gold, 4, 0, 500)
    draw_icon(205, 340, 0) # Gold icon
    #STEP
    self.contents.draw_text(10, 32, width - 384, WLH, $game_party.steps, 2)
    draw_icon(48, 0, 32) #Step icon   
    self.back_opacity = 100
  end
#=============================================================================
  # * Check if Playtime is different from last check
  #=============================================================================
  def update
    if @text != (Graphics.frame_count / Graphics.frame_rate)
      draw_time
    end
    super
  end # update
 #-----------------------------------------------------------------------------
 #
 #-----------------------------------------------------------------------------
 def draw_time
 #Play time
    self.contents.clear_rect(Rect.new(340, 32, (260 - 32), 24))
    draw_icon(188, 340, 32)
    @total_sec = Graphics.frame_count / Graphics.frame_rate
    @hour = @total_sec / 60 / 60
    @min = @total_sec / 60 % 60
    @sec = @total_sec % 60
    @text = sprintf("%02d:%02d:%02d", @hour, @min, @sec)
    self.contents.draw_text(349, 32, width - 384, WLH, @text, 2)
  end
  end
#----------------------------------------------------------------------------
# *Buat Nampilin karakter di menu
#----------------------------------------------------------------------------
class Window_Chibi < Window_Base
  #--------------------------------------------------------------------------
  # * Object Initialization
  #    x : window X coordinate
  #    y : window Y coordinate
  #--------------------------------------------------------------------------
  def initialize(x, y)
    super(0, 0, 544, 416)
    refresh
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    self.opacity = 0
    self.back_opacity = 0
    self.contents_opacity = 250
    @item_max = $game_party.members.size
    for actor in $game_party.members
    draw_actor_graphic(actor, actor.index * 132 + 57, 193 + 2)
    end
  end
  end

class Window_Comman < Window_Selectable
  #--------------------------------------------------------------------------
  # * Public Instance Variables
  #--------------------------------------------------------------------------
  attr_reader  :commands                # command
  #--------------------------------------------------------------------------
  # * Object Initialization
  #    width      : window width
  #    commands  : command string array
  #    column_max : digit count (if 2 or more, horizontal selection)
  #    row_max    : row count (0: match command count)
  #    spacing    : blank space when items are arrange horizontally
  #--------------------------------------------------------------------------
  def initialize(width, commands, column_max = 5, row_max = 0, spacing = 5)
    if row_max == 0
      row_max = (commands.size + column_max - 5) / column_max
    end
    super(0, 0, 544, row_max * WLH + 32, spacing)
    @commands = commands
    @item_max = commands.size
    @column_max = column_max
    refresh
    self.index = 0
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    for i in 0...@item_max
      draw_item(i)
      self.back_opacity = 100
    end
  end
  #--------------------------------------------------------------------------
  # * Draw Item
  #    index  : item number
  #    enabled : enabled flag. When false, draw semi-transparently.
  #--------------------------------------------------------------------------
  def draw_item(index, enabled = true)
    rect = item_rect(index)
    rect.x += 4
    rect.width -= 8
    self.contents.clear_rect(rect)
    self.contents.font.color = normal_color
    self.contents.font.color.alpha = enabled ? 255 : 128
    self.contents.draw_text(rect, @commands[index])
  end
end


#==============================================================================
# ** Scene_Menu
#------------------------------------------------------------------------------
#  This class performs the menu screen processing.
#==============================================================================

class Scene_Menu < Scene_Base
  #--------------------------------------------------------------------------
  # * Object Initialization
  #    menu_index : command cursor's initial position
  #--------------------------------------------------------------------------
  def initialize(menu_index = 0)
    @menu_index = menu_index
  end
  #--------------------------------------------------------------------------
  # * Start processing
  #--------------------------------------------------------------------------
  def start
    super
    create_menu_background
    create_command_window
    @info_window = Window_Info.new(0, 55)
    @status_window = Window_MenuStatus2.new(160, 0)
    @chibi_indicator = Window_Chibi.new(0, 0)
    create_menu_graphic
  end
  #--------------------------------------------------------------------------
  # * Termination Processing
  #--------------------------------------------------------------------------
  def terminate
    super
    dispose_menu_background
    @command_window.dispose
    @info_window.dispose
    @status_window.dispose
    @chibi_indicator.dispose
    snapshot_for_background
    dispose_menu_graphic
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    super
    update_menu_background
    @command_window.update
    @info_window.update
    @status_window.update
    @chibi_indicator.update
    if @command_window.active
      update_command_selection
    elsif @status_window.active
      update_actor_selection
    end
  end
  #--------------------------------------------------------------------------
  # * Create Menu Graphic
  #--------------------------------------------------------------------------
  def create_menu_graphic
    @sprite = Sprite.new
    @sprite.bitmap = Cache.system("MenuBack")
  end
  #--------------------------------------------------------------------------
  # * Dispose of Menu Graphic
  #--------------------------------------------------------------------------
  def dispose_menu_graphic
    @sprite.bitmap.dispose
    @sprite.dispose
  end
  #--------------------------------------------------------------------------
  # * Create Command Window
  #--------------------------------------------------------------------------
  def create_command_window
    s1 = Vocab::item
    s2 = Vocab::skill
    s3 = Vocab::equip
    s4 = Vocab::status
    s5 = Vocab::game_end
    @command_window = Window_Comman.new(160, [s1, s2, s3, s4, s5])
    @command_window.index = @menu_index
    if $game_party.members.size == 0          # If number of party members is 0
      @command_window.draw_item(0, false)    # Disable item
      @command_window.draw_item(1, false)    # Disable skill
      @command_window.draw_item(2, false)    # Disable equipment
      @command_window.draw_item(3, false)    # Disable status
    end
    if $game_system.save_disabled            # If save is forbidden
      print "You don't have saved data"
      @command_window.draw_item(4, false)    # Disable save
    end
  end
  #--------------------------------------------------------------------------
  # * Update Command Selection
  #--------------------------------------------------------------------------
  def update_command_selection
    if Input.trigger?(Input::B)
      Sound.play_cancel
      $scene = Scene_Map.new
    elsif Input.trigger?(Input::C)
      if $game_party.members.size == 0 and @command_window.index < 4
        Sound.play_buzzer
        return
      elsif $game_system.save_disabled and @command_window.index == 4
        Sound.play_buzzer
        return
      end
      Sound.play_decision
      case @command_window.index
      when 0      # Item
        $scene = Scene_Item.new
      when 1,2,3  # Skill, equipment, status
        start_actor_selection
      when 4
        $scene = Scene_End.new
    end
    end
  end
  #--------------------------------------------------------------------------
  # * Start Actor Selection
  #--------------------------------------------------------------------------
  def start_actor_selection
    @command_window.active = false
    @status_window.active = true
    if $game_party.last_actor_index < @status_window.item_max
      @status_window.index = $game_party.last_actor_index
    else
      @status_window.index = 0
    end
  end
  #--------------------------------------------------------------------------
  # * End Actor Selection
  #--------------------------------------------------------------------------
  def end_actor_selection
    @command_window.active = true
    @status_window.active = false
    @status_window.index = -1
  end
  #--------------------------------------------------------------------------
  # * Update Actor Selection
  #--------------------------------------------------------------------------
  def update_actor_selection
    if Input.trigger?(Input::B)
      Sound.play_cancel
      end_actor_selection
    elsif Input.trigger?(Input::C)
      $game_party.last_actor_index = @status_window.index
      Sound.play_decision
      case @command_window.index
      when 1  # skill
        $scene = Scene_Skill.new(@status_window.index)
      when 2  # equipment
        $scene = Scene_Equip.new(@status_window.index)
      when 3  # status
        $scene = Scene_Status.new(@status_window.index)
      end
    end
  end
end

MAU DEMONYA ???
GK USAH !!!!
GAMPANG KOK :3

MAU SS NYA ???
GK USAH !!!
PASTI NGERTI KOK :D
Kembali Ke Atas Go down
Dan-G-
Newbie
Newbie
avatar


Level 5
Posts : 6
Thanked : 0
Engine : RMVX Ace
Skill : Beginner

Fadli's Styled Menu VX Empty
PostSubyek: Re: Fadli's Styled Menu VX   Fadli's Styled Menu VX Empty2012-06-11, 18:47

kurang begitu wow.... :D tadi di coba dulu deh... hihihi...
Kembali Ke Atas Go down
http://www.wix.com/enjie1993/salvation
cacad
Koplak RMer
cacad


Level 5
Posts : 399
Thanked : 3
Engine : Multi-Engine User
Skill : Skilled
Type : Event Designer

Trophies
Awards:
Fadli's Styled Menu VX Empty
PostSubyek: Re: Fadli's Styled Menu VX   Fadli's Styled Menu VX Empty2012-06-12, 08:41

Silahkan dicoba dahulu :3
abis itu komen :v
Thanks . .
Kembali Ke Atas Go down
Sponsored content





Fadli's Styled Menu VX Empty
PostSubyek: Re: Fadli's Styled Menu VX   Fadli's Styled Menu VX Empty

Kembali Ke Atas Go down
 
Fadli's Styled Menu VX
Kembali Ke Atas 
Halaman 1 dari 1
 Similar topics
-
» [ASK]gimana caranya manggil menu item tanpa balik ke menu?
» [Ask] Title Menu dan cara menghilangkan pilihan menu skill
» [Posisi & Jumlah menu dalam Main menu]
» [Help] Cara tambah menu di Ring Menu
» Megaman-styled Platformer + RPG Elements??

Permissions in this forum:Anda tidak dapat menjawab topik
RPGMakerID :: Scripts & Event Systems :: RMVX Scripts-
Navigasi: