Envision, Create, Share

Welcome to HBGames, a leading amateur game development forum and Discord server. All are welcome, and amongst our ranks you will find experts in their field from all aspects of video game design and development.

Bestiary Script for VX

Status
Not open for further replies.
Intro:
It's a bestiary script for VX.
I found it in a Japanease site.
I couldn't find the author, but i think it's Mamono.

Script:
Code:
#==============================================================================
# ■ 必須スクリプト Ver1.00 (更新:2008.01.12)
#
# URL : [url=http://f53.aaa.livedoor.jp/~momomo/]http://f53.aaa.livedoor.jp/~momomo/[/url]
#------------------------------------------------------------------------------
# 当サイトã
 
the ???? means that u didn't discovered the itens that monster drops.
When u get the iten, the ????? will replaced with the name of the iten.

kay? ^^
 
Dann Woolf":2c2i0iia said:
Can't understand your crazy moon language!

Is there a translation available?

when u use the scripts it will be english in game but i will try and translate the scripts when i can
i can upload the english pics for can be a chair tomorrow if they want me to
 
shadowmastersonic":1qpsfafb said:
Dann Woolf":1qpsfafb said:
Can't understand your crazy moon language!

Is there a translation available?

when u use the scripts it will be english in game but i will try and translate the scripts when i can
i can upload the english pics for can be a chair tomorrow if they want me to

What? I didn't understand a word of that.
 

Aleksi

Member

Dann Woolf":32cxuj3p said:
shadowmastersonic":32cxuj3p said:
Dann Woolf":32cxuj3p said:
Can't understand your crazy moon language!

Is there a translation available?

when u use the scripts it will be english in game but i will try and translate the scripts when i can
i can upload the english pics for can be a chair tomorrow if they want me to

What? I didn't understand a word of that.
Basically I believe they said that, although the screenshots and the notes in each script are in Japanese, the actual bestiary displayed, if using an English version of RMVX, is in English. They also said they would try and translate the notes on the scripts whenever they could, and would upload English screenshots of the bestiary if the original poster - Can be a chair - wanted them to.

Thanks for finding this, Chair (and Mamono, for creating it, of course) - it's very useful as an extra for my game, and holds a place on my menu for easy access. Now I just need to work out how the item-dropping thing works - right now it'd seem they're either completely revealed, or completely hidden. Hmm...
 
First let me say thanks and I am new here as you may have noticed.  Now for those of you who have ask for a translation you could just google translate it, but you don't have to as I have done so, as is the purpose of my post.  To break it down here are the files above translated to English for those who want them.  I know google doesn't always do a great job translating but at least you can read it now and the grammer errors were really not that bad I don't think.

Code:
#============================================================================== 
# Script Required Ver1.00 (Update: 2008.01.12) 
# 
# URL: http://f53.aaa.livedoor.jp/ ~ momomo / 
#------------------------------------------------------------------------------ 
# The site will use the scripts when you need them 
# Of the script. 
# Try to use the latest ones, please. 
#============================================================================== 

#============================================================================== 
# Generic functions
#============================================================================== 
module MoMoG 
# Field notes read word for punctuation 
GET_NOTE_SEPARATER = "" 

#-------------------------------------------------------------------------- 
# Words read notes field (duplicate ignore the first to return) 
# Read the notes field in a line at a time, beginning with the words specified in the return line. 
# Returns an array of elements with the first word is whether it is appropriate, 
# Later after the word separator (default is "" (space)) 
# Entered into an argument with each of them will be stored. 
# Note: memo fields (a string) 
# Word: specify the word (string) 
#-------------------------------------------------------------------------- 
def self.get_note(note, word) 
# Read one line
note.each_line {|str| 

# Specify whether the words that begin with decision 
if (str =~ /^#{word}(#{GET_NOTE_SEPARATER}|\s|\n|$).*/) 

# Separator, separated by an array of stores 
ary = str.split(GET_NOTE_SEPARATER) 

# Extra character to 
for temp in ary 
temp.strip! 
end 

ary[0] = true 
return ary 
end 
} 

return [false] 
end 

#-------------------------------------------------------------------------- 
# Notes field for reading words (to avoid duplication of consideration) 
# Read the notes field in a line at a time, beginning with the words specified in the return line. 
# Returns an array of elements with the first word is whether it is appropriate, 
# Later after the word separator (default is "" (space)) 
# Separated by the input, but the argument is stored in the array is returned. 
# Note: memo fields (a string) 
# Word: specify the word (string) 
#-------------------------------------------------------------------------- 
def self.get_note2(note, word) 
ret = [] 

# Read one line
note.each_line {|str| 

# Specify whether the words that begin with decision 
if (str =~ /^#{word}(#{GET_NOTE_SEPARATER}|\s|\n|$).*/) 

# Separator, separated by an array of stores 
ary = str.split(GET_NOTE_SEPARATER) 

# Extra character to 
for temp in ary 
temp.strip! 
end 

ary[0] = true 
ret.push(ary) 
end 
} 

if (ret.size == 0) 
ret[0] = [false] 
end 

return ret 
end 

#-------------------------------------------------------------------------- 
# Field specified words exist? 
#-------------------------------------------------------------------------- 
def self.note_include?(note, word) 
bool = self.get_note(note, word) 
return bool[0]

end 

end

Code:
#============================================================================== 
# Guide System Administration Scripts Ver1.01 (Update: 2008.01.24) 
# 
# URL: http://f53.aaa.livedoor.jp/ ~ momomo / 
#------------------------------------------------------------------------------ 
# Script to guide the system when the script will be required. 
# Script than any book on the series, please paste. 
#============================================================================== 

#============================================================================== 
# MoMo_Book_Shelf 
#============================================================================== 
class MoMo_Book_Shelf 
@@books = [] 

#-------------------------------------------------------------------------- 
# Reference to the bookshelf 
#-------------------------------------------------------------------------- 
def books 
@@books 
end 

#-------------------------------------------------------------------------- 
# Moving scene 
#-------------------------------------------------------------------------- 
def move_scene(str) 
# All of this processing 
for book in @@books 

# All this calls for processing name 
for name in book.call_names 
# The name of the call to run move_scene 
if (name == str) 
book.move_scene 
flag = true 
return 
end 
end 

end 
end 

#-------------------------------------------------------------------------- 
# Moving scenes (in one easy-to-call definition) 
#-------------------------------------------------------------------------- 
def scene=(str) 
# Calls to move the scene 
self.move_scene(str) 
end 

end 

#============================================================================== 
# MoMo_Book_Data 
#============================================================================== 
class MoMo_Book_Data 
attr_accessor: title 
attr_accessor: show_switch 
attr_accessor: contents_type 
attr_accessor: call_name 
#-------------------------------------------------------------------------- 
# Object initialization 
#-------------------------------------------------------------------------- 
def initialize 
@title = "" # Title 
@show_switch = 0 # Emergence switch 
@contents_type = "" # Type 
@call_name = [] # Calling Name 
end 

#-------------------------------------------------------------------------- 
# Moving scene 
#-------------------------------------------------------------------------- 
def move_scene 
# Inherited at the definition 
end 

#-------------------------------------------------------------------------- 
# Registration information to save 
#-------------------------------------------------------------------------- 
def data 
# Inherited at the definition 
end 
#-------------------------------------------------------------------------- 
# Calling name acquisition 
#-------------------------------------------------------------------------- 
def call_names 
# + Title sequence of calls to return 
return [@title] + @call_name 
end 
end 

#============================================================================== 
# MoMo_Window_Book_Title 
#============================================================================== 
class MoMo_Window_Book_Title < Window_Base 
#-------------------------------------------------------------------------- 
# Object initialization 
#-------------------------------------------------------------------------- 
def initialize(book) 
super(0, 0, 544, 24 + 32) 
@book = book 
self.refresh 
end 

#-------------------------------------------------------------------------- 
# Refresh
#-------------------------------------------------------------------------- 
def refresh 
# Clear contents
self.contents.clear 

# Draw title 
self.draw_title(0, 0) 
end 

#-------------------------------------------------------------------------- 
# Title to appear 
#-------------------------------------------------------------------------- 
def draw_title(x, y) 
title = @book.title 
self.contents.draw_text(x, y, 256, WLH, title, 0) 
end 

#-------------------------------------------------------------------------- 
# Show completion rate 
# 0: Type display type: Hide 
# 1: The current / maximum number of 
# 2: Completion rate 
# 3: Current / maximum number (completion rate) 
#-------------------------------------------------------------------------- 
def draw_comp(x, y, type) 
# If you do not be back 
return if (type == 0) 

# Various figures obtained 
max = @book.data.max_item 
now = @book.data.now_item 
comp = @book.data.comp_item 

str = "" 

# Strings to obtain completion rate 
case type 
when 1 
str = sprintf( "% d /% d", now, max) 
when 2 
str = sprintf( "% d%%", comp) 
when 3 
str = sprintf( "% d /% d (% d %%)", now, max, comp) 
end 

# Show completion rate 
self.contents.draw_text(x, y, 256, WLH, str, 2) 
end 
end 



#============================================================================== 
# MoMo_Scene_Book_Shelf 
#============================================================================== 
class MoMo_Scene_Book_Shelf < Scene_Base 
#-------------------------------------------------------------------------- 
# Object initialization 
# Menu_index: initial position of the cursor command 
#-------------------------------------------------------------------------- 
def initialize(menu_index = 0) 
@menu_index = menu_index 

# Create the bookshelf 
@book_shelf = MoMo_Book_Shelf.new 
end 

#-------------------------------------------------------------------------- 
# Start processing 
#-------------------------------------------------------------------------- 
def start 
super 
create_menu_background 
create_command_window 
end 

#-------------------------------------------------------------------------- 
# Termination 
#-------------------------------------------------------------------------- 
def terminate 
super 
dispose_menu_background 
@command_window.dispose 
end 

#-------------------------------------------------------------------------- 
# Frame update 
#-------------------------------------------------------------------------- 
def update 
super 
update_menu_background 

# Update window # 
@command_window.update 

# B if the button is pressed. 
if Input.trigger?(Input:: B) 
# Cancel the sound of a bell 
Sound.play_cancel 
# Map screen 
$scene = Scene_Map.new 
return 
end 

# C if the button is pressed. 
if Input.trigger?(Input:: C) 
# Play a sound decision 
Sound.play_decision 
# Selected in the call to move the scene 
@book_shelf.move_scene(@command_window.commands[@command_window.index]) 
return 
end 
end 

#-------------------------------------------------------------------------- 
# Create a command window
#-------------------------------------------------------------------------- 
def create_command_window 
data = [] 

# Registered on the bookshelves of all of this process 
for book in @book_shelf.books 
# 0 or appearance of the switch ID is the emergence of ID switch if the switch is ON 
if book.show_switch == 0 or $game_switches[book.show_switch] 
# Add to show the command # 
data.push(book.title) 
end 
end 

# To create a command window # 
@command_window = Window_Command.new(160, data) 
@command_window.index = @menu_index 
end 

end 

#============================================================================== 
# Scene_Map 
#============================================================================== 
class Scene_Map < Scene_Base 
#-------------------------------------------------------------------------- 
# Run transition 
#-------------------------------------------------------------------------- 
alias momo_book_shelf_update_scene_change: update_scene_change 
def update_scene_change 
return if $game_player.moving? # Players moving? 

case $game_temp.next_scene 
when "book", "bookshelf" 
call_bookshelf 
when "monsterbook", "monster", "mbk" 
call_monsterbook 
end 

# Original process 
momo_book_shelf_update_scene_change 
end 
#-------------------------------------------------------------------------- 
# Screen switching to the bookshelf 
#-------------------------------------------------------------------------- 
def call_bookshelf 
$game_temp.next_scene = nil 
$scene = MoMo_Scene_Book_Shelf.new 
end 
#-------------------------------------------------------------------------- 
# Mamono screen guide to the switch 
#-------------------------------------------------------------------------- 
def call_monsterbook 
$game_temp.next_scene = nil 
$book_shelf.move_scene(Mod_MoMo_Monster_Book::TITLE) 
end 
end 

# Create and keep a bookcase 
$book_shelf = MoMo_Book_Shelf.new

Code:
#============================================================================== 
# Mamono Guide (basic) Ver1.01 (Update: 2008.01.24) 
# 
# URL: http://f53.aaa.livedoor.jp/ ~ momomo / 
#------------------------------------------------------------------------------ 
# Enemy defeated able to view it. 
# 
# Basic use 
# Basically, it is introducing all the necessary script to do OK. 
# 
# Up ban 
# Enemy any field notes 
# "Prohibit registered" ( ""). 
# And enter the Enemy Mamono book is no longer registered. 
# 
# Analyze
# Any state in the notes field 
# "Analyze" ( ""). 
# And enter the state to analyze the Enemy. 
# Analyze the Enemy Mamono is automatically registered as a guide, 
# Item guide appear when you drop by. 
# 
# Action, to analyze the moment to view the status of Public Enemy, will also be implemented soon. 
# For now the center is not implemented. 
# 
# How to switch to the scene
# Bookshelves across the screen if you want to transfer 
# Event # command script 
# $ Game_temp.next_scene = "bookshelf" 
# Input. ( "bookshelf" the "book" is OK) 
# 
# Mamono guide if you want to go directly to the screen 
# Event # command script 
# $ Game_temp.next_scene = "monsterbook" 
# Input. ( "monsterbook" the "monster" or "mbk" But OK) 
# 
# The Mamono guide directly from the menu screen, and if you want to transfer 
# $ Book_shelf.scene = "monsterbook" 
# ( "Monsterbook" the "monster" or "mbk" But OK) 
# Order to move. 
# 
#============================================================================== 

#============================================================================== 
# Preference 
#============================================================================== 
module Mod_MoMo_Monster_Book 
# Registered for the banned words 
NO_REGISTER_SIGNATURE = "registered ban" 


# Analyze word for
ANALYZE_SIGNATURE = "analyze" 


# Complete guide on how to display rate 
# 0: No 1: The current number / Max 2: 3%: both 
SHOW_COMPLETE_TYPE = 3 

# Book title 
TITLE = "Monster_book" # Change this for the name of the "monster book" 

# Showing the flag for the switch ID # 
# This switch is ID # [ON] if the Mamono guide the selection screen is displayed. 
# ID 0 is specified, unconditionally available. 
SHOW_SWITCH_ID = 0 

# Have not yet emerged to show whether the items 
NO_DATA_VISIBLE = false 

# Emergence of a display name items 
EMPTY_ENEMY_WORD = "Empty Enemy" # Change this for a slot where there is no enemy 

# Screen guide to wander back to the screen when the map? 
# False case of the selection screen 
RETURN_MAP = false 

# Various terms (for display) 
Exp = "Exp" # Exp text dislpay 
Gold = "Gold" # Gold text display 
Drop_Item1 = "Drop item 1" # Drop item 1 text display 
Drop_Item2 = "Drop item 2" # Drop item 2 text display 
end 

#============================================================================== 
# MoMo_Monster_Book_Data 
#============================================================================== 
class MoMo_Monster_Book_Data 
#-------------------------------------------------------------------------- 
# Object initialization 
#-------------------------------------------------------------------------- 
def initialize 
@registration_data = [] # Mamono registration 
@new_regist_data = [] # Register new information 
end 

#-------------------------------------------------------------------------- 
# Registration information obtained Mamono 
# Mid: Chara enemy ID 
#-------------------------------------------------------------------------- 
def registration_data(mid) 
flag = @registration_data[mid] 

# If the registration is nil # 0, otherwise it returns the value of the flag 
return (flag == nil) ? 0 : flag 
end 

#-------------------------------------------------------------------------- 
# New registration information obtained #
# Mid: Chara enemy ID 
#-------------------------------------------------------------------------- 
def monster_book_new(mid) 
flag = @new_regist_data[mid] 

If the registration is nil # 0, otherwise it returns the value of the flag 
return (flag == nil) ? 0 : flag 
end 

#-------------------------------------------------------------------------- 
# New registrations have been read and process information 
# Mid: Chara enemy ID 
#-------------------------------------------------------------------------- 
def monster_book_new_readed(mid) 
flag = self.monster_book_new(mid) 

# If the new flag # 
if (flag == 1) 
@new_regist_data[mid] = 2 
return true 
end 

return false 
end 

#-------------------------------------------------------------------------- 
# Additional registration information Mamono # 
# Mid: Chara enemy ID 
# Flag: registration flags unregistered 0 
# 1 already encounter 
# Research already # 2 
#-------------------------------------------------------------------------- 
def add_mbk(mid, flag) 
# Still a time when there is not 
if (self.registration_data(mid) == 0) 
# Flag 
@registration_data[mid] = flag 

# Register new flag 
@new_regist_data[mid] = 1 

# If you are already registered 
else 
# Add a current registration flag from the flag is bigger than you 
if (@registration_data[mid] <flag) 
# Flag to override 
@registration_data[mid] = flag 
end 
end 

end 

#-------------------------------------------------------------------------- 
# Mamono registration information removed 
#-------------------------------------------------------------------------- 
def del_mbk(mid) 
# 0 flag (not encounter) set 
@registration_data[mid] = 0 
# Reset to register new flag 
@new_regist_data[mid] = 0 
end 

#-------------------------------------------------------------------------- 
# Remove invalid registration information 
#-------------------------------------------------------------------------- 
def no_exist_clear_mbk 
for i in 1 ... $data_enemies.size 
enemy = $data_enemies [i]

# Enemy does not exist or if the ban is registered Enemy 
if (enemy == nil or enemy.mbk_no_register?) 

# Registration information to be removed 
self.del_mkb(i) 
end 
end 

end 

#-------------------------------------------------------------------------- 
# To get the maximum number of registered # 
#-------------------------------------------------------------------------- 
def max_item 
num = 0 
for i in 1 ... $data_enemies.size 
enemy = $data_enemies[i]

# Enemy Enemy does not exist or is not registered ban 
unless (enemy == nil or enemy.mbk_no_register?) 
num += 1 
end 
end 

return num 
end 

#-------------------------------------------------------------------------- 
# The number of currently registered to obtain # 
#-------------------------------------------------------------------------- 
def now_item 
num = 0 

for i in 1 ... $data_enemies.size 
enemy = $data_enemies[i]

# Enemy is not exist 
unless (enemy == nil) 
If an enrolled Enemy # 
num += 1 if enemy.mbk_registed? 
end 
end 

return num 
end 

#-------------------------------------------------------------------------- 
# Completion rate to obtain # 
#-------------------------------------------------------------------------- 
def comp_item 
# The maximum number of the current number to obtain 
max = self.max_item 
now = self.now_item 

# The maximum number is zero, and a 100% 
return 100 if (max == 0) 

# Calculated 
num = 100 * now / max 

return num 
end 

#-------------------------------------------------------------------------- 
# Enemy # not create a list banning the return 
#-------------------------------------------------------------------------- 
def make_enemy_list 
list = [] 

for i in 1 ... $data_enemies.size 
enemy = $data_enemies[i]

# Enemy Enemy does not exist or is registered name is banned or not 
# If you are not
unless (enemy == nil or enemy.mbk_no_register? or enemy.name == "") 
# Add to the list
list.push(enemy) 
end 
end 

return list 
end 

end 

#============================================================================== 
# Game_Party 
#============================================================================== 
class Game_Party < Game_Unit 
#-------------------------------------------------------------------------- 
# Reference to the registration information Mamono 
#-------------------------------------------------------------------------- 
def mbk_data 
# Save for the variable has been created does not 
if (@monster_book_data == nil) 
# The newly created # 
@monster_book_data = MoMo_Monster_Book_Data.new 
end 

return @monster_book_data 
end 
end 

#============================================================================== 
# Scene_Battle 
#============================================================================== 
class Scene_Battle < Scene_Base 
#-------------------------------------------------------------------------- 
# Battle ends 
#-------------------------------------------------------------------------- 
alias momo_monsterbook_battle_end :battle_end 
def battle_end(result) 
# Mamono to register after the close of hostilities 
for member in $game_troop.dead_members 
If you are disabled navigation Enemy # 
next if ($data_enemies[member.enemy_id] == nil) 

# Registration # 
$game_party.mbk_data.add_mbk(member.enemy_id, 1) 
end 

# Original process 
momo_monsterbook_battle_end(result) 
end 
end 

#============================================================================== 
# Game_Battler 
#============================================================================== 
class Game_Battler 
#-------------------------------------------------------------------------- 
# Additional state 
#-------------------------------------------------------------------------- 
alias momo_monsterbook_add_state :add_state 
def add_state(state_id) 
momo_monsterbook_add_state(state_id) 

# Enemy only treatment 
if self.is_a?(Game_Enemy) 

# If the state is not valid
if ($data_states[state_id] != nil) 
# Notes field is set to analyze the words that determine 
note = $data_states[state_id]. note 
ret = MoMoG.note_include?(note, Mod_MoMo_Monster_Book::ANALYZE_SIGNATURE) 

# If you analyze # 
if (ret == true) 
# Research already registered 
$game_party.mbk_data.add_mbk(self.enemy_id, 2) 
@analized = true 
end 
end 

end 

end 
end 

#============================================================================== 
# Game_Enemy 
#============================================================================== 
class Game_Enemy < Game_Battler 
attr_accessor :analized # ANARAIZUFURAGU 
#-------------------------------------------------------------------------- 
# Object initialization 
#-------------------------------------------------------------------------- 
alias momo_monsterbook_initialize :initialize 
def initialize(index, enemy_id) 
momo_monsterbook_initialize(index, enemy_id) 
@analized = false 
end 

#-------------------------------------------------------------------------- 
# Registration information obtained 
#-------------------------------------------------------------------------- 
def mbk_registration_data 
return $game_party.mbk_data.registration_data(self.enemy_id) 
end 

#-------------------------------------------------------------------------- 
# New registration information obtained
#-------------------------------------------------------------------------- 
def mbk_new_data 
return $game_party.mbk_data.monster_book_new(self.enemy_id) 
end 

#-------------------------------------------------------------------------- 
# Analyze Why? 
#-------------------------------------------------------------------------- 
def analized? 
# To obtain registration information
flag = self.mbk_registration_data 

# Analyze returns true if you already
return true if (flag >= 2) 

# Otherwise, it returns false
return false 
end 

#-------------------------------------------------------------------------- 
# Whether the new registration? 
#-------------------------------------------------------------------------- 
def mbk_new? 
# New registration information to obtain
flag = self.mbk_new_data 

# Returns true if the new registration 
return true if (flag == 1) 

# Otherwise, it returns false 
return false 
end 

end 


module RPG 
class Enemy 
#-------------------------------------------------------------------------- 
# Mamono guide whether or not to register? 
#-------------------------------------------------------------------------- 
def mbk_no_register? 
if (@mbk_no_register == nil) 
# Memo to obtain
note = self.note 
ret = MoMoG.note_include?(note, Mod_MoMo_Monster_Book::NO_REGISTER_SIGNATURE) 
@mbk_no_register = ret 
end 

return @mbk_no_register 
end 

#-------------------------------------------------------------------------- 
# Registration information obtained 
#-------------------------------------------------------------------------- 
def mbk_registration_data 
return $game_party.mbk_data.registration_data(self.id) 
end 

#-------------------------------------------------------------------------- 
# New registration information obtained
#-------------------------------------------------------------------------- 
def mbk_new_data 
return $game_party.mbk_data.monster_book_new(self.id) 
end 

#-------------------------------------------------------------------------- 
# Mamono whether registered guide? 
#-------------------------------------------------------------------------- 
def mbk_registed? 
flag = self.mbk_registration_data 

# Ban registered and not registered to return true 
return true if (flag >= 1) and (self.mbk_no_register? == false) 

# Otherwise, it returns false 
return false 
end 

#-------------------------------------------------------------------------- 
# Analyze Why? 
#-------------------------------------------------------------------------- 
def analized? 
# To obtain registration information 
flag = self.mbk_registration_data 

# Analyze returns true if you already
return true if (flag >= 2) 

# Otherwise, it returns false
return false 
end 

#-------------------------------------------------------------------------- 
# Whether the new registration? 
#-------------------------------------------------------------------------- 
def mbk_new? 
# New registration information to obtain
flag = self.mbk_new_data 

# Returns true if the new registration 
return true if (flag == 1) 

# Otherwise, it returns false
return false 
end 

end 
end 

#============================================================================== 
# MoMo_Scene_Monster_Book 
#============================================================================== 
class MoMo_Scene_Monster_Book < Scene_Base 
#-------------------------------------------------------------------------- 
# Object initialization 
#-------------------------------------------------------------------------- 
def initialize(book_data) 
super() 
@book_data = book_data 
end 

#-------------------------------------------------------------------------- 
# Start processing 
#-------------------------------------------------------------------------- 
def start 
super() 
create_menu_background 

# Create a window title 
@title_window = MoMo_Window_MonsterBook_Title.new(@book_data) 

# Create the main window 
@main_window = MoMo_Window_MonsterBook.new(0, 24 + 32, 544, 416 - 24 - 32) 

# Create an information window 
@info_window = MoMo_Window_MonsterInfo.new 
@info_window.active = false 
@info_window.visible = false 
end 

#-------------------------------------------------------------------------- 
# Termination 
#-------------------------------------------------------------------------- 
def terminate 
super() 
dispose_menu_background 
# Release window 
@title_window.dispose 
@info_window.dispose 
@main_window.dispose 
end 

#-------------------------------------------------------------------------- 
# Frame update 
#-------------------------------------------------------------------------- 
def update 
super() 
update_menu_background 
# Windows update 
@info_window.update 
@main_window.update 
@comment_window.update if (@comment_window != nil) 

# If the window is active 
if @info_window.active 
# Update_info run 
self.update_info 
else 
# Update_main run 
self.update_main 
end 
end 
#-------------------------------------------------------------------------- 
# Main window operation update 
#-------------------------------------------------------------------------- 
def update_main 
# If the button is pressed # B 
if Input.trigger?(Input::B) 
# Cancel the sound of a bell 
Sound.play_cancel 

# Map if it is set back 
if Mod_MoMo_Monster_Book::RETURN_MAP 
# Map moving scene 
$scene = Scene_Map.new 
else 
# Scene to move the bookshelf 
$scene = MoMo_Scene_Book_Shelf.new 
end 

return 
end 

# If the button is pressed # C 
if Input.trigger?(Input::C) 
# If the information shown
if self.show_info?(@main_window.index) 
# Play a sound decision 
Sound.play_decision 

# Main window inactive 
@main_window.active = false 

# Window to display and active 
@info_window.active = true 
@info_window.visible = true 

# Information window selected in the main window to set the Enemy 
@info_window.set_enemy(@main_window.item.id) 

# To update the information window
@info_window.refresh 

# Comment window if there 
if (@comment_window != nil) 
# Window for comments 
@comment_window.visible = true 

# Comments window to refresh 
@comment_window.refresh(@main_window.item.comment) 
end 


# Determine the items have been read and update # & 
self.item_read 

return 
end 

# Buzzer sound of a bell 
Sound.play_buzzer 
return 
end 
end 
#-------------------------------------------------------------------------- 
# Updated information on the current window 
#-------------------------------------------------------------------------- 
def update_info 
# If the button is pressed # B 
if Input.trigger?(Input::B) 
# Cancel the sound of a bell 
Sound.play_cancel 

# Leading the active window
@main_window.active = true 

# Window to hide the inactive 
@info_window.active = false 
@info_window.visible = false 

# Comments if the window does hide 
@comment_window.visible = false if (@comment_window != nil) 
return 
end 

# If the button is pressed # R 
if Input.trigger?(Input::R) 
# Next to the Enemy 
next_index = @main_window.index 

loop do 
next_index += 1 

next_index = 0 if next_index >= @main_window.item_max 

break if next_index == @main_window.index 

if self.show_info?(next_index) 
Sound.play_decision 
@main_window.index = next_index 
@info_window.set_enemy(@main_window.item.id) 
@info_window.refresh 
if (@comment_window != nil) 
@comment_window.refresh(@main_window.item.comment) 
end 
self.item_read 
break 
end 
end 
return 
end 

# If the button is pressed # L 
if Input.trigger?(Input::L) 
# Previous to the Enemy # 
next_index = @main_window.index 

loop do 
next_index -= 1 

next_index = @main_window.item_max - 1 if next_index < 0 

break if next_index == @main_window.index 

if self.show_info?(next_index) 
Sound.play_decision 
@main_window.index = next_index 
@info_window.set_enemy(@main_window.item.id) 
@info_window.refresh 
if (@comment_window != nil) 
@comment_window.refresh(@main_window.item.comment) 
end 
self.item_read 
break 
end 
end 
return 
end 

end 
#-------------------------------------------------------------------------- 
# Whether information is displayed? 
#-------------------------------------------------------------------------- 
def show_info?(index) 
# To get Enemy # 
enemy = @main_window.data [index] 

# Enemy # If you are not disabled 
if (enemy != nil) 
# Enemy # If you have registered to return true 
return true if enemy.mbk_registed? 
end 

# False returns 
return false 
end 

#-------------------------------------------------------------------------- 
# Mark Read & # determine item update 
#-------------------------------------------------------------------------- 
def item_read 
# Have been read and judge 
bool = $game_party.mbk_data.monster_book_new_readed (@main_window.item.id) 

# Judgement is true (as read the new registration →), 
if bool 
# Item to update the main window 
@main_window.draw_item(@main_window.index) 
end 
end 

def comment(id) 
comment = MoMo_MBK_Comment.comment_data[id] 
comment = [] if (comment == nil) 
end 

end 

#============================================================================== 
# Bookshelf: 
#============================================================================== 
class MoMo_Monster_Book < MoMo_Book_Data 
def initialize 
super() 
@title = Mod_MoMo_Monster_Book::TITLE 
@show_switch = Mod_MoMo_Monster_Book::SHOW_SWITCH_ID 
@contents_type = "Mamono guide" 
@call_name = [ "monsterbook", "monster", "mbk"] 
end 
def move_scene 
super 
$scene = MoMo_Scene_Monster_Book.new(self) 
end 
def data 
$game_party.mbk_data 
end 
end 

class MoMo_Book_Shelf 
# Registered bookshelf 
@@books.push (MoMo_Monster_Book.new) 
end

Code:
#============================================================================== 
# [VX] Mamono Guide (Display Relationship) Ver1.02 (Update: 2008.02.18) 
# 
# URL: [url=http://f53.aaa.livedoor.jp/]http://f53.aaa.livedoor.jp/[/url] ~ momomo / 
#------------------------------------------------------------------------------ 
# Parts of the book Mamono # 1. 
# Relations class display at once. 
#============================================================================== 

#============================================================================== 
# MoMo_Window_MonsterInfo 
#------------------------------------------------------------------------------ 
# Enemy, for information display window. 
#============================================================================== 
class MoMo_Window_MonsterInfo < Window_Base 
#-------------------------------------------------------------------------- 
# Public instance variable 
#-------------------------------------------------------------------------- 
attr_reader :enemy # Enemy 
#-------------------------------------------------------------------------- 
# Object initialization 
#-------------------------------------------------------------------------- 
def initialize 
super(0, 0, 544, 288) 
@enemy = nil 
self.back_opacity = 255 
end 

#-------------------------------------------------------------------------- 
# Enemy # â—
 
Anemous":2wuleamq said:
Could someone help me with installing this. Here's a screenshot of where I put it:

http://img81.imageshack.us/img81/1442/90772914zr5.png

And here's the error I'm getting when I try playing the game:

http://img58.imageshack.us/img58/1839/43919513ss4.png

I put the five parts of the script in the same order they were posted in. I think I was supposed to name them something specific though which is why I got the NameError but I'm not sure what. Any help is greatly appreciated.

Did you put the scripts below the "Material" section of the script menu?
Also, seems that there's no "#" on line 7, considering it's part of the comment momomo made.
 
Hello ppl!

sorry for the late i am makin a demo rigth now, and will upload the English SS togher with the demo(at the same time).

In the max of 1 hour
Thx for the posts...

bye!
 
luckysjsh, the last time someone posted in this topic was 6 months ago. Please don't necropost.
If you need support for this script, ask in the RGSS Support forum.

Thanks
-Dargor
 
Status
Not open for further replies.

Thank you for viewing

HBGames is a leading amateur video game development forum and Discord server open to all ability levels. Feel free to have a nosey around!

Discord

Join our growing and active Discord server to discuss all aspects of game making in a relaxed environment. Join Us

Content

  • Our Games
  • Games in Development
  • Emoji by Twemoji.
    Top