じ☆ve冰风 发表于 2026-7-30 20:08:42

One Actor Menu

One Actor Menu 1.0.0

by Todd (or DoctorTodd on RMRK)

Introduction

A menu that is modified to work as if you are only using one

actor.

Features

Goes to first actor, no actor selection

Detailed status

Simple

Screenshots

http://desmond.image....png&res=medium

How to Use

Paste above main

Select what window skin you want to use

Demo

I don't think it's really necessary.

Script

Spoiler                Code:       
#===============================================================================
#
# DT's One Person Menu
# Author: DoctorTodd
# Date (02/19/2012)
# Type: (Menu)
# Version: (1.0.0) (VXA)
# Level: (Simple)
# Email: BeaconGames2011@gmail.com
#
#===============================================================================
#
# NOTES: 1)This script will only work with ace, you may find my VX version on
# RMRK.net and the rpg maker web forums.
#
#===============================================================================
#
# Description: A menu that is modified to work as if you are only using one
# actor.
#
# Credits: Me (DoctorTodd)
#
#===============================================================================
#
# Instructions
# Paste above main.
#
#===============================================================================
#
# Contact me for commercial use, other wise just credit me and don't repost
# without my permission.
#
#===============================================================================
#
# Editing begins 40 and ends on 59.
#
#===============================================================================
module DTOPM

#Window skin to use, place in system.
WINDOW = ('Window')

#Status Window X
SX = 200

#Status Window Y
SY = 75

#Gold window X
GX = 40

#Gold Window Y
GY = 242

#Command Window X
CX = 40

#Command Window Y
CY = 75
end

class Scene_Menu < Scene_MenuBase
#--------------------------------------------------------------------------
# * Start processing
#--------------------------------------------------------------------------
def start
        super
        create_background
        create_command_window
        create_status_window
        create_gold_window
end
#--------------------------------------------------------------------------
# * Create Gold Window
#--------------------------------------------------------------------------
def create_gold_window
        @gold_window = Window_Gold.new
        @gold_window.x = (DTOPM::GX)
        @gold_window.y = (DTOPM::GY)
        @gold_window.windowskin = Cache.system(DTOPM::WINDOW)
        @gold_window.height = 55
end
#--------------------------------------------------------------------------
# * Create Status Window
#--------------------------------------------------------------------------
def create_status_window
        @status_window = Window_MenuInfo.new((DTOPM::SX), (DTOPM::SY))
        @status_window.windowskin = Cache.system(DTOPM::WINDOW)
end
#--------------------------------------------------------------------------
# * Create Command Window
#--------------------------------------------------------------------------
def create_command_window
   @command_window = Window_MenuCommand.new
        @command_window.set_handler(:item,          method(:command_item))
        @command_window.set_handler(:skill,       method(:command_skill))
        @command_window.set_handler(:equip,       method(:command_equip))
        @command_window.set_handler(:status,        method(:command_status))
        @command_window.set_handler(:save,          method(:command_save))
        @command_window.set_handler(:game_end,method(:command_game_end))
        @command_window.set_handler(:cancel,        method(:return_scene))
        @command_window.x = (DTOPM::CX)
        @command_window.y = (DTOPM::CY)
        end
end
#--------------------------------------------------------------------------
# * Command
#--------------------------------------------------------------------------
def command_item
        SceneManager.call(Scene_Item)
end
#--------------------------------------------------------------------------
# * Command
#--------------------------------------------------------------------------
def command_equip
        @actor = $game_party.members
        SceneManager.call(Scene_Equip)
end
#--------------------------------------------------------------------------
# * Command
#--------------------------------------------------------------------------
def command_status
        @actor = $game_party.members
        SceneManager.call(Scene_Status)
end
#--------------------------------------------------------------------------
# * Command
#--------------------------------------------------------------------------
def command_save
        SceneManager.call(Scene_Save)
end
#--------------------------------------------------------------------------
# * Command
#--------------------------------------------------------------------------
def command_game_end
        SceneManager.call(Scene_End)
end
#--------------------------------------------------------------------------
# * Command
#--------------------------------------------------------------------------
def command_skill
        @actor = $game_party.members
          SceneManager.call(Scene_Skill)
        end
#===================================================================
# ** Window_MenuStatus
#------------------------------------------------------------------------------
#This window displays the characters status on the menu screen.
#==============================================================================

class Window_MenuInfo < Window_Base
#--------------------------------------------------------------------------
# * Object Initialization
#       x : window X coordinate
#       y : window Y coordinate
#--------------------------------------------------------------------------
def initialize(x, y)
        super(x, y, 300, 221)
        refresh
end
#--------------------------------------------------------------------------
# * Refresh
#--------------------------------------------------------------------------
def refresh
        self.contents.clear
       @actor = $game_party.members
          draw_actor_face(@actor, 0, 0)
          draw_actor_name(@actor, 110, 5)
          draw_actor_level(@actor, 190, 5)
          draw_actor_hp(@actor, 110 ,40)
          draw_actor_mp(@actor, 110 , 65)
          draw_actor_param(@actor, 0, 100, 0)
          draw_actor_param(@actor, 0, 124, 1)
          draw_actor_param(@actor, 0, 148, 2)
          draw_actor_param(@actor, 0, 172, 3)
          draw_actor_graphic(@actor, 220, 160)
          draw_actor_icons(@actor, 190, 180, width = 96)
        end
end
#==============================================================================
# ** Window_MenuCommand
#------------------------------------------------------------------------------
#This command window appears on the menu screen.
#==============================================================================

class Window_MenuCommand < Window_Command
#--------------------------------------------------------------------------
# * Initialize Command Selection Position (Class Method)
#--------------------------------------------------------------------------
def self.init_command_position
        @@last_command_symbol = nil
end
#--------------------------------------------------------------------------
# * Object Initialization
#--------------------------------------------------------------------------
def initialize
        super(0, 0)
        select_last
end
#--------------------------------------------------------------------------
# * Get Window Width
#--------------------------------------------------------------------------
def window_width
        return 160
end
#--------------------------------------------------------------------------
# * Get Number of Lines to Show
#--------------------------------------------------------------------------
def visible_line_number
        item_max
end
#--------------------------------------------------------------------------
# * Create Command List
#--------------------------------------------------------------------------
def make_command_list
        add_main_commands
        add_original_commands
        add_save_command
        add_game_end_command
end
#--------------------------------------------------------------------------
# * Add Main Commands to List
#--------------------------------------------------------------------------
def add_main_commands
        add_command(Vocab::item,   :item,   main_commands_enabled)
        add_command(Vocab::skill,:skill,main_commands_enabled)
        add_command(Vocab::equip,:equip,main_commands_enabled)
        add_command(Vocab::status, :status, main_commands_enabled)
end
#--------------------------------------------------------------------------
# * For Adding Original Commands
#--------------------------------------------------------------------------
def add_original_commands
end
#--------------------------------------------------------------------------
# * Add Save to Command List
#--------------------------------------------------------------------------
def add_save_command
        add_command(Vocab::save, :save, save_enabled)
end
#--------------------------------------------------------------------------
# * Add Exit Game to Command List
#--------------------------------------------------------------------------
def add_game_end_command
        add_command(Vocab::game_end, :game_end)
end
#--------------------------------------------------------------------------
# * Get Activation State of Main Commands
#--------------------------------------------------------------------------
def main_commands_enabled
        $game_party.exists
end
#--------------------------------------------------------------------------
# * Get Activation State of Formation
#--------------------------------------------------------------------------
def formation_enabled
        $game_party.members.size >= 2 && !$game_system.formation_disabled
end
#--------------------------------------------------------------------------
# * Get Activation State of Save
#--------------------------------------------------------------------------
def save_enabled
        !$game_system.save_disabled
end
#--------------------------------------------------------------------------
# * Processing When OK Button Is Pressed
#--------------------------------------------------------------------------
def process_ok
        @@last_command_symbol = current_symbol
        super
end
#--------------------------------------------------------------------------
# * Restore Previous Selection Position
#--------------------------------------------------------------------------
def select_last
        select_symbol(@@last_command_symbol)
end
end





FAQ

None right now.

Credit and Thanks

- Todd

Author's Notes

Free for non-commercial and commercial games. You must credit me! If you use this in a commercial game I expect a free copy.


本贴来自国际rpgmaker官方论坛作者:Todd处,因国际论坛即将永久关站,为了存档多年珍贵资料,署名转载到本论坛存档,由于官方帖子为英文原帖,需要中文翻译请点击论坛顶部切换语言为中文就可以将帖子翻译成中文浏览,方便大家随时查看,原文地址:https://forums.rpgmakerweb.com/threads/one-actor-menu.920/
页: [1]
查看完整版本: One Actor Menu