Player-Named Maps
Version: 1.0
Author: modern algebra
Date: December 8, 2009
Version History
<Version 1.0> 12.08.2009 - Original Release
deskripsi
Ini permintaan aneh dan sangat dekat dengan sia-sia, tetapi pada dasarnya script ini memungkinkan Anda untuk memanggil sebuah adegan yang memungkinkan pemain mengubah nama dari peta. Ini hanya benar-benar masuk akal jika Anda memiliki script yang benar-benar menunjukkan nama-nama peta dalam game. Hal ini mungkin berguna untuk benteng atau sesuatu.
fitur
Memungkinkan pemain untuk nama peta, sehingga mungkin baik untuk kubu atau yang sejenis itu
Menggunakan aktor dummy, yang berarti Anda akan dapat mengimpor gambar 96x96 pemandangan dan impor mereka sebagai facesets dan menggunakannya untuk mewakili peta pada layar penamaan
Sama persis setup sebagai adegan Pahlawan Masukan Nama biasa
Tampilan Layar
Ini tampak sama persis seperti layar Pahlawan Masukan Nama, dan mungkin akan bahkan jika Anda memiliki script Masukan Nama kustom.
instruksi
Tempatkan script ini di editor, di atas dan di bawah Main script standar
Untuk memanggil adegan penamaan peta, gunakan kode ini dalam naskah panggilan:
- Code:
-
call_map_name (map_id, max_chars)
map_id : the ID of the map you want the player to name
max_chars : the maximum number of characters for the name. This
defaults to 10 if not set by you.
Lihat header untuk instruksi lebih lanjut.
Script
- Code:
-
#==============================================================================
# Player-Named Maps
# Version: 1.0
# Author: modern algebra (rmrk.net)
# Date: December 8, 2009
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# Description:
# This script allows you to call a scene that lets the player change the
# name of the maps. It only really makes sense if you have another script
# that shows the names of the maps.
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# Instructions:
# Place this script in your editor, above Main and below the default scripts
#
# To call the map naming scene, use this code in a call script:
# call_map_name (map_id, max_chars)
# map_id : the ID of the map you want the player to name
# max_chars : the maximum number of characters for the name. This
# defaults to 10 if not set by you.
#
# This script requires you to have a dummy actor who never appears in the
# game and ought not be setup - it is his face graphic that will show up in
# the map naming screen, so if you wanted to have the map represented by a
# 96x96 graphic you could import it as a face graphic and set it on the dummy
# actor immediately prior to calling the map naming screen. Otherwise leave
# it blank. To set the ID for that actor, go to line 45 and change the number
# to the ID of that dummy actor. You may also determine whether you want the
# database name of the map to initially show up while setting the name or
# whether you just want it to be blank at line 48
#==============================================================================
#==============================================================================
# ** RPG::MapInfo
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# Summary of Changes:
# new constant - MAMN_DUMMY_ACTOR
# aliased method - name
#==============================================================================
class RPG::MapInfo
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# * CONSTANT
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Set this value to the ID of an actor to use as a dummy while naming maps
MAMN_DUMMY_ACTOR = 9
# The following determines whether the naming scene starts by showing the
# database name or whether it starts blank
MAMN_SHOW_CURRENT_NAME = true
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# * Get Name
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
alias malg_jtswyr_namemps_7yu2 name
def name (*args)
real_name = malg_jtswyr_namemps_7yu2 (*args)
return $game_system.ma_map_names[real_name] unless $game_system.nil? ||
$game_system.ma_map_names[real_name].nil?
return real_name
end
end
#==============================================================================
# ** Game_System
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# Summary of Changes:
# new public instance variable - ma_map_names, ma_map_name_id
# aliased method - initialize
#==============================================================================
class Game_System
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# * Public Instance Variables
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
attr_reader :ma_map_names
attr_accessor :ma_map_name_id
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# * Object Initialize
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
alias ma_jsswyr_intlz_mpnmes_9kb3 initialize
def initialize (*args)
@ma_map_names = {} # Initialize Map name hash
@ma_map_name_id = 1
ma_jsswyr_intlz_mpnmes_9kb3 (*args) # Run Original Method
end
end
#==============================================================================
# ** Game_Interpreter
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# Summary of Changes:
# new method - call_map_name
#==============================================================================
class Game_Interpreter
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# * Call Map Name
# map_id : ID of map to name
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
def call_map_name (map_id, max_chars = 10)
$game_system.ma_map_name_id = map_id
$game_temp.name_max_char = max_chars
$scene = Scene_MapName.new
end
end
#==============================================================================
# ** Scene_MapName
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# Subclass of Scene_Name
# altered methods - start, return_scene
#==============================================================================
class Scene_MapName < Scene_Name
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# * Start Processing
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
def start (*args)
@map_id = $game_system.ma_map_name_id
$game_temp.name_actor_id = RPG::MapInfo::MAMN_DUMMY_ACTOR
$game_actors[$game_temp.name_actor_id].name = ""
if RPG::MapInfo::MAMN_SHOW_CURRENT_NAME
db_name = load_data ("Data/MapInfos.rvdata")[@map_id].name
cnt_name = $game_system.ma_map_names[db_name]
$game_actors[$game_temp.name_actor_id].name = cnt_name.nil? ? db_name : cnt_name
end
super (*args)
end
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# * Return Scene
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
def return_scene (*args)
map_name = load_data ("Data/MapInfos.rvdata")[@map_id].name
$game_system.ma_map_names[map_name] = @actor.name
super (*args)
end
end
Credit
modern algebra (translate: Andry5ury4)
Thanks
justSawyer (from rmrk) and Kuru, for request
mendukung
Silahkan posting di topik ini di rmrk.net untuk respon tercepat. Jangan PM saya.
Dikenal Masalah Kompatibilitas
Tidak ada masalah kompatibilitas saat ini dikenal
Demo
Tidak perlu untuk demo. Ini terlihat dan mengoperasikan sama dengan adegan Pahlawan Masukan Nama, dan menyebutnya, semua yang perlu Anda lakukan adalah mengikuti petunjuk sederhana
n.b.: ini bukan dari saya, saya cuma mentraslatenya jadi Indonesia
dan maaf kalau aku bikin ini pas tengah malam
^^