RPGVX.net

  RPG-Maker VX => VX Skripte [Fertiger Code] => Thema gestartet von: woratana am Februar 01, 2008, 08:47:11

Titel: Lite Menu Version 0.5
Beitrag von: woratana am Februar 01, 2008, 08:47:11
Lite Menu Version 1.01
by Woratana
Released on: 03/02/2008

Introduction
I script this because request of turtleman, so I want to share here. Maybe you guys will like it~^^

This script will change your menu style similar to Dragon Warrior style menu.

Request Picture:
(http://www.woodus.com/den/games/dw2nes/graphics/walkthru/dews-yarn.gif)

Screenshot
(http://woratana.fileave.com/litemenu1.jpg)

Script
place it above main
#==============================================================================
# ¦ [RMVX] Lite Menu Version 1.01
#------------------------------------------------------------------------------
# by Woratana [woratana@hotmail.com]
# released on 03/02/2008
#
# Features Version 1.01
# - Fixed Bug in Gold_Text
# Features Version 1.0
# - Allow user to config menu
# - Add Gold/Location Window (user can turn on/off)
#==============================================================================

module Wor_Litemenu
  #================
  # SETUP Script Here!
  #================
  MENU_WINDOW_Y = 50
  CHARA_WINDOW_Y = 160
  CHARA_WINDOW_WIDTH = 175
  SHOW_LV = true
  SHOW_LOCATION_WINDOW = true
  VOCAB_LOCATION = "Location:"
  VOCAB_GOLD = "Gold:"
  LOCATION_WINDOW_Y = 295
  LOCATION_TEXT_X = 96
  GOLD_TEXT_X = 84
end

class Scene_Menu < Scene_Base

  def initialize(menu_index = 0)
    @menu_index = menu_index
  end

  def start
    super
    create_menu_background
    create_command_window
    lite_create_location_window if Wor_Litemenu::SHOW_LOCATION_WINDOW == true
    lite_create_actor_window
  end
 
# START LITE METHOD
  def lite_create_actor_window
    member = []
    @item_max = $game_party.members.size
    for actor in $game_party.members
     member.push ((actor.name) + " Lv." + (actor.level.to_s)) if Wor_Litemenu::SHOW_LV == true
     member.push (actor.name) if Wor_Litemenu::SHOW_LV == false
    end
    @status_window = Window_Command.new(Wor_Litemenu::CHARA_WINDOW_WIDTH, member)
    @status_window.index = @menu_index
    @status_window.x = (554 /2) - (@status_window.width/2)
    @status_window.y = Wor_Litemenu::CHARA_WINDOW_Y
    @status_window.visible = false
  end

  def lite_get_map_name
    mapdata = load_data("Data/MapInfos.rvdata")
    map_id = $game_map.map_id
    @map_name = mapdata[map_id].name
  end
  
  def lite_draw_currency_value(value, x, y, width)
    cx = @location_window.contents.text_size(Vocab::gold).width
    @location_window.contents.font.color = @location_window.normal_color
    @location_window.contents.draw_text(x+53, y, @location_window.width+cx, 24, value, 0)
    @location_window.contents.font.color = @location_window.system_color
    @location_window.contents.draw_text(x+(($game_party.gold).to_s.size * 8)+68, y, @location_window.width, 24, Vocab::gold, 0)
  end
  
  def lite_create_location_window
    width = 300
    height = 90
    x = (554 /2) - (width/2)
    y = Wor_Litemenu::LOCATION_WINDOW_Y
    @location_window = Window_Base.new(x, y, width, height)
    @location_window.create_contents
    lite_get_map_name
    @location_window.contents.font.color = @location_window.system_color
    @location_window.contents.draw_text(0, 0, 300, 24, Wor_Litemenu::VOCAB_GOLD)
    @location_window.contents.font.color = @location_window.normal_color
    lite_draw_currency_value($game_party.gold, 4, 0, Wor_Litemenu::GOLD_TEXT_X)
    @location_window.contents.font.color = @location_window.system_color
    @location_window.contents.draw_text(0, 32, 300, 24, Wor_Litemenu::VOCAB_LOCATION)
    @location_window.contents.font.color = @location_window.normal_color
    @location_window.contents.draw_text(Wor_Litemenu::LOCATION_TEXT_X, 32, 300, 24, @map_name)
  end

# END LITE METHOD

  def terminate
    super
    dispose_menu_background
    @command_window.dispose
    @location_window.dispose if @location_window
    @status_window.dispose
  end
  
  def update
    super
    update_menu_background
    @command_window.update
    if @command_window.active
      update_command_selection
    elsif @status_window.active
      @status_window.update
      update_actor_selection
    end
  end

  def create_command_window
    s1 = Vocab::item
    s2 = Vocab::skill
    s3 = Vocab::equip
    s4 = Vocab::status
    s5 = Vocab::save
    s6 = Vocab::game_end
    @command_window = Window_Command.new(200, [s1, s2, s3, s4, s5, s6],2,3)
    @command_window.index = @menu_index
    @command_window.x = (554 /2) - (@command_window.width/2) #167
    @command_window.y = Wor_Litemenu::MENU_WINDOW_Y
    if $game_party.members.size == 0
      @command_window.draw_item(0, false)
      @command_window.draw_item(1, false)
      @command_window.draw_item(2, false)
      @command_window.draw_item(3, false)
    end
    if $game_system.save_disabled
      @command_window.draw_item(4, false)
    end
  end

  def start_actor_selection
    @command_window.active = false
    @status_window.visible = true
    @status_window.active = true
    @status_window.index = 0
  end

  def end_actor_selection
    @command_window.active = true
    @status_window.visible = false
    @status_window.active = false
    @status_window.index = -1
  end
  
end

Note
  This script started because request of other member, and you are allow to use, and post in other forum if credit included.

  Please do not redistribute if there's no permission.

Comment? Question? feel free to post~^^
Titel: Lite Menu Version 0.5
Beitrag von: ERZENGEL am Februar 01, 2008, 12:55:27
Really nice script that you've wrote. But I prefer detailled menus, so I won't need it. But it is great work!
Titel: Lite Menu Version 0.5
Beitrag von: Onkel Hell am Februar 01, 2008, 14:00:45
looks funny, very minimalistic^^
maybe u should set a header above the both menus
but ill prefer detailled ones too, buts thanks for share
Titel: Lite Menu Version 0.5
Beitrag von: Dainreth am Februar 01, 2008, 14:27:36
Hm..I like this one. It's a simple menu, maybe I use this in one of my mini-projets, so thanks wortana.

btw. You posted a script to skip the title menu..I forgot where it was. Could you give some link because that's also a great and helpful script.
Titel: Lite Menu Version 0.5
Beitrag von: woratana am Februar 01, 2008, 14:58:28
@Dainreth
The Skip Title Screen is here~^^
http://www.rpgrevolution.com/forums/?showtopic=8521 (http://www.rpgrevolution.com/forums/?showtopic=8521)
Titel: Lite Menu Version 0.5
Beitrag von: Dainreth am Februar 01, 2008, 15:10:07
Damn, it was on Revoltion...hm I must overlooked by searching for it. Thanks.
Titel: Lite Menu Version 0.5
Beitrag von: Baur am Februar 01, 2008, 17:03:47
I found it by myself, Daninreth *g* Really nice Script (Skip Title), one, I was waiting for. Thanks, Woratana.

The Lite Menu is well done too, but I'm not in a need for.
Titel: Lite Menu Version 0.5
Beitrag von: woratana am Februar 02, 2008, 08:28:13
Version 1.0 Updated!!!

Script of this version will longer, but you can config many things in the script after line.

  #================
  # SETUP Script Here!
  #================

and I added Location Window too! (If you don't want you can turn it off)

Other thing, you can add Lv. of character after the name. (And again, you can turn it off if you don't like it)
Titel: Lite Menu Version 0.5
Beitrag von: woratana am Februar 03, 2008, 23:33:35
Sorry for double post,

Updated to Version 1.01

- Fixed Gold_Text Bug
(http://woratana.fileave.com/goldfix.jpg)

If you're using version 1.00, please update the script~^^
Titel: Re: Lite Menu Version 0.5
Beitrag von: Paragorn am März 26, 2010, 21:45:28
Ok ich gebe zu ich kann nicht scripten^^ Habs dennoch geschafft das Save und spiel beenden verschwinden.
Auch das das Menü sitzt wo es soll. und die grösse ist angepasst.
Aber ich schaffe nicht die reihenvolge der anzeige zu ändern.
Doch beim verdrehen der anzeige verzweifle ich seit ner stunde Das sieht dann so aus
Im Original heisst es
Zitat
 def create_command_window
    s1 = Vocab::item
    s2 = Vocab::skill
    s3 = Vocab::equip
    s4 = Vocab::status
    s5 = Vocab::save
    s6 = Vocab::game_end
    @command_window = Window_Command.new(200, [s1, s2, s3, s4, s5, s6],2,3)
    @command_window.index = @menu_index
    @command_window.x = (554 /2) - (@command_window.width/2) #167
    @command_window.y = Wor_Litemenu::MENU_WINDOW_Y
    if $game_party.members.size == 0
      @command_window.draw_item(0, false)
      @command_window.draw_item(1, false)
      @command_window.draw_item(2, false)
      @command_window.draw_item(3, false)
    end
    if $game_system.save_disabled
      @command_window.draw_item(4, false)
    end
  end

Ich hab es wie folgt geändert

Zitat
 def create_command_window
    s1 = Vocab::item
    s2 = Vocab::skill
    s3 = Vocab::equip
    s4 = Vocab::status
    s5 = Vocab::save
    s6 = Vocab::game_end
    @command_window = Window_Command.new(280, [s4, s1, s2, s3],2,2)
    @command_window.index = @menu_index
    @command_window.x = (554 /2) - (@command_window.width/2) #167
    @command_window.y = Wor_Litemenu::MENU_WINDOW_Y
    if $game_party.members.size == 0
      @command_window.draw_item(0, false)
      @command_window.draw_item(1, false)
      @command_window.draw_item(2, false)
      @command_window.draw_item(3, false)
    end
    if $game_system.save_disabled
      @command_window.draw_item(4, false)
    end
  end

Kann mir vielleicht jemand helfen? Ich möcht doch nur die Sachen rumschieben^^
Kann mir da jemand vielleicht helfen?
SimplePortal 2.3.3 © 2008-2010, SimplePortal