Jump to content
Rpg²S Forum

Bestiario per vx


Lusianl
 Share

Recommended Posts

BESTIARIO

 

Descrizione

Permette di avere un bestiario come nel xp..

 

Autore

Dargor

 

Screen

http://img517.imageshack.us/img517/9654/vxbestiary1km4qo6.png

 

Istruzioni per l'uso

Incollate questo script sopra main

<div style="margin:20px;margin-top:5px" "="">

 

 

Spoiler

 

 

 

#==============================================================================
# ** Bestiary
#------------------------------------------------------------------------------
#  © Dargor, 2008
#  24/05/08
#  Version 1.2
#------------------------------------------------------------------------------
#  VERSION HISTORY:
#   - 1.0 (21/05/08), Initial release
#   - 1.1 (21/05/08), Minor bugs fixed
#   - 1.2 (24/05/08), Reseted Bestiary bug fixed
#------------------------------------------------------------------------------
#  INSTRUCTIONS:
#   1) Paste the script above main
#   2) Edit the Vocab variables
#   2) Edit the constants in the Bestiary module
#==============================================================================

#==============================================================================
#  ** Bestiary Configuration
#==============================================================================

module Bestiary
 # Enemies that won't appear in the bestiary
 Excluded_Enemies = [31]
 # 'Real' Elements, displayed in the bestiary
 Elements = [9,10,11,12,13,14,15,16]
 # 'Real' Elements Icon Index
 Element_Icons = { 9  => 104,
				10 => 105,
				11 => 106,
				12 => 107,
				13 => 108,
				14 => 109,
				15 => 110,
				16 => 111,
			  }
 # Play a BG' in the bestiary
 Play_BGM = true
 # BGM List based on enemy ID
 BGM = { 19 => 'Battle7',
	  20 => 'Battle7',
	  21 => 'Battle7',
	  22 => 'Battle7',
	  23 => 'Battle7',
	  24 => 'Battle7',
	  25 => 'Battle8',
	  26 => 'Battle8',
	  27 => 'Battle8',
	  28 => 'Battle8',
	  29 => 'Battle8',
	  30 => 'Battle9'
	}
 # Default BGM name
 BGM.default = 'Battle1'
end

# Vocabulary
Vocab::Hit = 'Hit Rate'
Vocab::Eva = 'Evasion'
Vocab::Exp = 'EXP'
Vocab::UnknownEnemy = '??????'
Vocab::UnknownDrop  = '??????'

#==============================================================================
# ** Game_System
#------------------------------------------------------------------------------
#  This class handles system-related data. Also manages vehicles and BGM, etc.
# The instance of this class is referenced by $game_system.
#==============================================================================

class Game_System
 #--------------------------------------------------------------------------
 # * Public Instance Variables
 #--------------------------------------------------------------------------
 attr_accessor :new_enemy
 attr_accessor :enemy_encountered
 attr_accessor :enemy_defeated
 attr_accessor :enemy_drops
 #--------------------------------------------------------------------------
 # * Alias Listing
 #--------------------------------------------------------------------------
 alias dargor_vx_bestiary_system_initialize initialize
 #--------------------------------------------------------------------------
 # * Object Initialization
 #--------------------------------------------------------------------------
 def initialize
@new_enemy = []
@enemy_encountered = []
@enemy_defeated = []
@enemy_drops = []
for i in 1...$data_enemies.size
  @new_enemy[i] = true
  @enemy_encountered[i] = 0
  @enemy_defeated[i] = 0
  @enemy_drops[i] = [false, false]
end
dargor_vx_bestiary_system_initialize
 end
end

#==============================================================================
# ** Game_Troop
#------------------------------------------------------------------------------
#  This class handles enemy groups and battle-related data. Also performs
# battle events. The instance of this class is referenced by $game_troop.
#==============================================================================

class Game_Troop < Game_Unit
 #--------------------------------------------------------------------------
 # * Alias Listing
 #--------------------------------------------------------------------------
 alias dargor_vx_bestiary_troop_setup setup
 alias dargor_vx_bestiary_troop_make_drop_items make_drop_items
 #--------------------------------------------------------------------------
 # * Setup
 #	 troop_id : troop ID
 #--------------------------------------------------------------------------
 def setup(troop_id)
dargor_vx_bestiary_troop_setup(troop_id)
for member in troop.members
  next if $data_enemies[member.enemy_id] == nil
  enemy = Game_Enemy.new(@enemies.size, member.enemy_id)
  $game_system.enemy_encountered[member.enemy_id] += 1
end
 end
 #--------------------------------------------------------------------------
 # * Create Array of Dropped Items
 #--------------------------------------------------------------------------
 def make_drop_items
drop_items = []
for enemy in dead_members
  for di in [enemy.drop_item1, enemy.drop_item2]
	next if di.kind == 0
	next if rand(di.denominator) != 0
	index = [enemy.drop_item1, enemy.drop_item2].index(di)
	$game_system.enemy_drops[enemy.enemy_id][index] = true
	if di.kind == 1
	  drop_items.push($data_items[di.item_id])
	elsif di.kind == 2
	  drop_items.push($data_weapons[di.weapon_id])
	elsif di.kind == 3
	  drop_items.push($data_armors[di.armor_id])
	end
  end
end
return drop_items
 end
end

#==============================================================================
# ** Game_Enemy
#------------------------------------------------------------------------------
#  This class handles enemy characters. It's used within the Game_Troop class
# ($game_troop).
#==============================================================================

class Game_Enemy < Game_Battler
 #--------------------------------------------------------------------------
 # * Alias Listing
 #--------------------------------------------------------------------------
 alias dargor_vx_bestiary_enemy_perform_collapse perform_collapse
 #--------------------------------------------------------------------------
 # * Perform Collapse
 #--------------------------------------------------------------------------
 def perform_collapse
dargor_vx_bestiary_enemy_perform_collapse
if $game_temp.in_battle and dead?
  $game_system.enemy_defeated[@enemy_id] += 1
end
 end
end

#==============================================================================
# ** Window_Base
#------------------------------------------------------------------------------
#  This is a superclass of all windows in the game.
#==============================================================================

class Window_Base < Window
 #--------------------------------------------------------------------------
 # * Get HP Text Color
 #	 enemy : enemy
 #--------------------------------------------------------------------------
 def hp_color(actor)
return normal_color if actor.is_a?(RPG::Enemy)
return knockout_color if actor.hp == 0
return crisis_color if actor.hp < actor.maxhp / 4
return normal_color
 end
 #--------------------------------------------------------------------------
 # * Draw Enemy MAXHP
 #	 enemy : enemy
 #	 x	 : draw spot x-coordinate
 #	 y	 : draw spot y-coordinate
 #	 width : Width
 #--------------------------------------------------------------------------
 def draw_enemy_maxhp(enemy, x, y, width = 120)
draw_enemy_hp_gauge(enemy, x, y, width)
self.contents.font.color = system_color
self.contents.draw_text(x, y, 30, WLH, Vocab::hp)
self.contents.font.color = hp_color(enemy)
last_font_size = self.contents.font.size
xr = x + width
self.contents.font.color = normal_color
self.contents.draw_text(xr - 80, y, 80, WLH, enemy.maxhp, 2)
 end
 #--------------------------------------------------------------------------
 # * Draw Enemy HP gauge
 #	 enemy : enemy
 #	 x	 : draw spot x-coordinate
 #	 y	 : draw spot y-coordinate
 #	 width : Width
 #--------------------------------------------------------------------------
 def draw_enemy_hp_gauge(enemy, x, y, width = 120)
gw = width
gc1 = hp_gauge_color1
gc2 = hp_gauge_color2
self.contents.fill_rect(x, y + WLH - 8, width, 6, gauge_back_color)
self.contents.gradient_fill_rect(x, y + WLH - 8, gw, 6, gc1, gc2)
 end
 #--------------------------------------------------------------------------
 # * Draw Enemy MAXMP
 #	 enemy : enemy
 #	 x	 : draw spot x-coordinate
 #	 y	 : draw spot y-coordinate
 #	 width : Width
 #--------------------------------------------------------------------------
 def draw_enemy_maxmp(enemy, x, y, width = 120)
draw_enemy_mp_gauge(enemy, x, y, width)
self.contents.font.color = system_color
self.contents.draw_text(x, y, 30, WLH, Vocab::mp)
self.contents.font.color = hp_color(enemy)
last_font_size = self.contents.font.size
xr = x + width
self.contents.font.color = normal_color
self.contents.draw_text(xr - 80, y, 80, WLH, enemy.maxmp, 2)
 end
 #--------------------------------------------------------------------------
 # * Draw Enemy MP gauge
 #	 enemy : enemy
 #	 x	 : draw spot x-coordinate
 #	 y	 : draw spot y-coordinate
 #	 width : Width
 #--------------------------------------------------------------------------
 def draw_enemy_mp_gauge(enemy, x, y, width = 120)
gw = width
gc1 = mp_gauge_color1
gc2 = mp_gauge_color2
self.contents.fill_rect(x, y + WLH - 8, width, 6, gauge_back_color)
self.contents.gradient_fill_rect(x, y + WLH - 8, gw, 6, gc1, gc2)
 end
 #--------------------------------------------------------------------------
 # * Draw Enemy Parameters
 #	 enemy : enemy
 #	 x	 : draw spot x-coordinate
 #	 y	 : draw spot y-coordinate
 #	 type  : Type of parameters (0-7)
 #--------------------------------------------------------------------------
 def draw_enemy_parameter(enemy, x, y, type)
case type
when 0
  parameter_name = Vocab::atk
  parameter_value = enemy.atk
when 1
  parameter_name = Vocab::def
  parameter_value = enemy.def
when 2
  parameter_name = Vocab::spi
  parameter_value = enemy.spi
when 3
  parameter_name = Vocab::agi
  parameter_value = enemy.agi
when 4
  parameter_name = Vocab::Hit
  parameter_value = enemy.hit
when 5
  parameter_name = Vocab::Eva
  parameter_value = enemy.eva
when 6
  parameter_name = Vocab::Exp
  parameter_value = enemy.exp
when 7
  parameter_name = Vocab::gold
  parameter_value = enemy.gold
end
self.contents.font.color = system_color
self.contents.draw_text(x, y, 120, WLH, parameter_name)
self.contents.font.color = normal_color
parameter_value = "#{parameter_value}%" if [4,5].include?(type)
self.contents.draw_text(x + 100, y, 56, WLH, parameter_value, 2)
 end
 #--------------------------------------------------------------------------
 # * Draw Enemy Drop
 #	 enemy : enemy
 #	 x	 : draw spot x-coordinate
 #	 y	 : draw spot y-coordinate
 #--------------------------------------------------------------------------
 def draw_enemy_drop(enemy,x,y)
self.contents.font.color = system_color
self.contents.draw_text(x,y,220,WLH,'Items Dropped')
drops = []
drops_index = []
drops << enemy.drop_item1 unless enemy.drop_item1.kind == 0
drops << enemy.drop_item2 unless enemy.drop_item2.kind == 0
drops_index << 0 unless enemy.drop_item1.kind == 0
drops_index << 1 unless enemy.drop_item2.kind == 0
for i in 0...drops.size
  drop = drops[i]
  index = drops_index[i]
  case drop.kind
  when 1
	item = $data_items[drop.item_id]
  when 2
	item = $data_weapons[drop.weapon_id]
  when 3
	item = $data_armors[drop.armor_id]
  end
  if $game_system.enemy_drops[enemy.id][index]
	draw_item_name(item,x,y + (i+1) * WLH)
	probability = 100 / drop.denominator
	self.contents.draw_text(x,y + (i+1) * WLH,220,WLH, "#{probability}%",2)
  else
	self.contents.font.color = normal_color
	self.contents.draw_text(x+26,y + (i+1) * WLH,220,WLH,Vocab::UnknownDrop)
  end
end
 end
 #--------------------------------------------------------------------------
 # * Draw Enemy Encountered
 #	 enemy : enemy
 #	 x	 : draw spot x-coordinate
 #	 y	 : draw spot y-coordinate
 #--------------------------------------------------------------------------
 def draw_enemy_encountered(enemy,x,y)
self.contents.font.color = system_color
self.contents.draw_text(x,y,120,WLH,'Encountered')
times = $game_system.enemy_encountered[enemy.id]
self.contents.font.color = normal_color
self.contents.draw_text(x + 120,y,36,WLH,times,2)
 end
 #--------------------------------------------------------------------------
 # * Draw Enemy Defeated
 #	 enemy : enemy
 #	 x	 : draw spot x-coordinate
 #	 y	 : draw spot y-coordinate
 #--------------------------------------------------------------------------
 def draw_enemy_defeated(enemy,x,y)
self.contents.font.color = system_color
self.contents.draw_text(x,y,120,WLH,'Defeated')
times = $game_system.enemy_defeated[enemy.id]
self.contents.font.color = normal_color
self.contents.draw_text(x + 120,y,36,WLH,times,2)
 end
 #--------------------------------------------------------------------------
 # * Draw Enemy Weakness
 #	 enemy : enemy
 #	 x	 : draw spot x-coordinate
 #	 y	 : draw spot y-coordinate
 #--------------------------------------------------------------------------
 def draw_enemy_weakness(enemy,x,y)
enemy = Game_Enemy.new(0, enemy.id)
self.contents.font.color = system_color
self.contents.draw_text(x,y,120,WLH,'Weakness')
weakness = []
for element_id in Bestiary::Elements
  weakness << element_id if enemy.element_rate(element_id) > 100
end
for i in 0...weakness.size
  element_id = weakness[i]
  x = 144 * (i % 2)
  y2 = WLH * (i / 2)
  icon_index = Bestiary::Element_Icons[element_id]
  draw_icon(icon_index,x,y2 + (y + WLH))
  element = $data_system.elements[element_id]
  self.contents.font.color = normal_color
  self.contents.draw_text(x+26,y2 + (y + WLH),120,WLH,element)
end
 end
end

#==============================================================================
# ** Window_EnemyStatus
#------------------------------------------------------------------------------
#  This window displays full status specs on the bestiary screen.
#==============================================================================

class Window_EnemyStatus < Window_Base
 #--------------------------------------------------------------------------
 # * Object Initialization
 #--------------------------------------------------------------------------
 def initialize
super(0,0,544,416)
 end
 #--------------------------------------------------------------------------
 # * Setup
 #	 enemy : enemy
 #	 id	: bestiary id
 #--------------------------------------------------------------------------
 def setup(enemy, id)
@enemy = enemy
@id = id
$game_system.new_enemy[enemy.id] = false
refresh
 end
 #--------------------------------------------------------------------------
 # * Refresh
 #--------------------------------------------------------------------------
 def refresh
self.contents.clear
bitmap = Cache.battler(@enemy.battler_name, @enemy.battler_hue)
self.contents.blt(0,32,bitmap,bitmap.rect)
self.contents.font.color = normal_color
self.contents.draw_text(0,0,272,WLH,"#{@id}: #{@enemy.name}")
draw_enemy_maxhp(@enemy,272,WLH * 1,156)
draw_enemy_maxmp(@enemy,272,WLH * 2,156)
for i in 0..7
  draw_enemy_parameter(@enemy, 304, WLH * 3 + (WLH * i), i)
end
draw_enemy_drop(@enemy,272,WLH * 11)
draw_enemy_encountered(@enemy,272,WLH * 14)
draw_enemy_defeated(@enemy,272,WLH * 15)
draw_enemy_weakness(@enemy,0,WLH * 11)
 end
end

#==============================================================================
# ** Window_EnemyList
#------------------------------------------------------------------------------
#  This window displays full status specs on the bestiary screen.
#==============================================================================

class Window_EnemyList < Window_Selectable
 #--------------------------------------------------------------------------
 # * Object Initialization
 #	 x	 : draw spot x-coordinate
 #	 y	 : draw spot y-coordinate
 #--------------------------------------------------------------------------
 def initialize(x,y)
super(x,y,544,360)
self.index = 0
@column_max = 2
refresh
 end
 #--------------------------------------------------------------------------
 # * Enemy
 #--------------------------------------------------------------------------
 def enemy
return @data[self.index]
 end
 #--------------------------------------------------------------------------
 # * Enemies
 #--------------------------------------------------------------------------
 def enemies
return @data
 end
 #--------------------------------------------------------------------------
 # * Refresh
 #--------------------------------------------------------------------------
 def refresh
self.contents.clear
@data = []
for item in $data_enemies
  next if Bestiary::Excluded_Enemies.include?(item.id)
  @data << item
end
@data.compact!
@item_max = @data.size
create_contents
for i in 0...@item_max
  draw_item(i)
end
 end
 #--------------------------------------------------------------------------
 # * Draw Item
 #	 index : index
 #--------------------------------------------------------------------------
 def draw_item(index)
rect = item_rect(index)
self.contents.clear_rect(rect)
item = @data[index]
if item != nil
  rect.width -= 4
  if $game_system.enemy_encountered[item.id] > 0
	if $game_system.new_enemy[item.id]
	  self.contents.font.color = power_up_color
	else
	  self.contents.font.color = normal_color
	end
	self.contents.draw_text(rect, "#{index+1}:#{item.name}")
  else
	self.contents.font.color = normal_color
	self.contents.draw_text(rect, "#{index+1}:#{Vocab::UnknownEnemy}")
  end
end
 end
end
#==============================================================================
# ** Scene_Bestiary
#------------------------------------------------------------------------------
#  This class performs the bestiary screen processing.
#==============================================================================

class Scene_Bestiary < Scene_Base
 #--------------------------------------------------------------------------
 # * Start processing
 #--------------------------------------------------------------------------
 def start
super
create_menu_background
@last_bgm = RPG::BGM.last
@help_window = Window_Help.new
@list_window = Window_EnemyList.new(0,56)
@status_window = Window_EnemyStatus.new
@status_window.visible = false
@status_window.back_opacity = 255
encountered = 0
for enemy in @list_window.enemies
  if $game_system.enemy_encountered[enemy.id] > 0
	encountered += 1
  end
end
completion1 = "#{encountered}/#{@list_window.enemies.size}"
completion2 = (encountered * 100) / @list_window.enemies.size
@help_window.set_text("Completion: #{completion1}(#{completion2}%)")
 end
 #--------------------------------------------------------------------------
 # * Termination Processing
 #--------------------------------------------------------------------------
 def terminate
super
dispose_menu_background
@help_window.dispose
@list_window.dispose
@status_window.dispose
 end
 #--------------------------------------------------------------------------
 # * Frame Update Processing
 #--------------------------------------------------------------------------
 def update
super
if @status_window.visible
  update_status_selection
  return
end
if @list_window.active
  @list_window.update
  update_list_selection
  return
end
 end
 #--------------------------------------------------------------------------
 # * Update Status Selection
 #--------------------------------------------------------------------------
 def update_status_selection
if Input.trigger?(Input::B)
  Sound.play_cancel
  @status_window.visible = false
  @last_bgm.play
  return
end
if Input.trigger?(Input::L) or Input.repeat?(Input::L)
  Sound.play_cursor
  loop do
	@list_window.index = (@list_window.index + 1)
	@list_window.index %= @list_window.enemies.size
	break if $game_system.enemy_encountered[@list_window.index+1] > 0
  end
  process_status_window(@list_window.enemy, @list_window.index+1)
end
if Input.trigger?(Input::R) or Input.repeat?(Input::R)
  Sound.play_cursor
  loop do
	@list_window.index = (@list_window.index - 1) % @list_window.enemies.size
	break if $game_system.enemy_encountered[@list_window.index+1] > 0
  end
  process_status_window(@list_window.enemy, @list_window.index+1)
end
 end
 #--------------------------------------------------------------------------
 # * Update List Selection
 #--------------------------------------------------------------------------
 def update_list_selection
if Input.trigger?(Input::B)
  Sound.play_cancel
  $scene = Scene_Map.new
  return
end
if Input.trigger?(Input::C)
  unless $game_system.enemy_encountered[@list_window.enemy.id] > 0
	Sound.play_buzzer
	return
  end
  process_status_window(@list_window.enemy, @list_window.index+1)
end
 end
 #--------------------------------------------------------------------------
 # * Process Status Window
 #--------------------------------------------------------------------------
 def process_status_window(enemy, index)
if Bestiary::Play_BGM
  bgm_name = Bestiary::BGM[enemy.id]
  if bgm_name.nil?
	bgm = RPG::BGM.new(Bestiary::BGM.default)
	bgm.play
  else
	bgm = RPG::BGM.new(bgm_name)
	bgm.play
  end
end
@status_window.setup(enemy, index)
@status_window.visible = true
@list_window.draw_item(index-1)
 end
end

 

Per richiamare il bestiario scriviamo nel call script : $scene = Scene_Bestiary.new

 

 

 

AGGIUNTA dell'utente WRATHROOK (messaggio 53):

 

Inserimento del bestiario nel menù sopra od a sostituzione di salva con correzione di alcuni errori.

 

A molta richiesta di tutti ho fatto lo script per mettere il comando del bestiario nel VX! Contenti!?

Vi ho pure integrato la possibilità di scegliere o meno se sostituire Salva con Bestiario o se mettere il bestiario sopra salva.

Inoltre ho corretto alcuni errori che non sono stati menzionati, come il fatto che entrando nel bestiario e uscendo non si ritornava nel menu, ma direttamente nella mappa.

 

Lo script va inserito prima di Main e dopo lo script del bestiario.

 

Script:

 

#>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
# Creato da \/\/rathrook.
#>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
# OPZIONE BESTIARIO NEL MENU
# Versione 0.01
# Risalente al 12 Gennaio 2012 (Ore 14:45)
#>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
# EFFETTI DELLO SCRIPT
# Aggiunge l'opzione "Bestiario" al menù.
#>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
# COME USARE LO SCRIPT
# 1) Inserite lo script sopra main
# 2) Andate nella configurazione script (qui sotto) e cambiate le opzioni
#	secondo le vostre esigenze.
#>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
# FEATURE LOG
# ^^^ 0.01 ^^^
# - Questo script non meriterebbe neanche di esistere...
#>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

#>>>>>>>>>>>>>>>>
# CONFIGURAZIONE
#>>>>>>>>>>>>>>>>
module WRATHROOK
 module COMANDO_BESTIARIO

#NOME = "Nome"
#Il nome del comando nel bestiario. Deve essere scritto tra virgolette.
NOME = "Bestiario"

#SOSTITUISCI_SALVA = true/false
#Decidi se sostituire o meno il comando salva col comando bestiario.
#true: Il comando salva diventerà il comando bestiario.
#false: Il comando bestiario andrà sopra il comando salva.
SOSTITUISCI_SALVA = false

 end
end
#>>>>>>>>>>>>>>>>>>>>>
# FINE CONFIGURAZIONE
#>>>>>>>>>>>>>>>>>>>>>

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

class Scene_Menu < Scene_Base
 #--------------------------------------------------------------------------
 # * Create Command Window
 #--------------------------------------------------------------------------
 def create_command_window
s1 = Vocab::item
s2 = Vocab::skill
s3 = Vocab::equip
s4 = Vocab::status
s5 = Vocab::save
s6 = Vocab::game_end
s7 = WRATHROOK::COMANDO_BESTIARIO::NOME
if WRATHROOK::COMANDO_BESTIARIO::SOSTITUISCI_SALVA == true
  @command_window = Window_Command.new(160, [s1, s2, s3, s4, s7, s6])
else
  @command_window = Window_Command.new(160, [s1, s2, s3, s4, s7, s5, s6,])
end
@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
  @command_window.draw_item(4, false)
end
if $game_system.save_disabled and		 # If save is forbidden
WRATHROOK::COMANDO_BESTIARIO::SOSTITUISCI_SALVA == false;
  @command_window.draw_item(5, 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	  # Save
	$scene = Scene_Bestiary.new
  when 5	  # End Game
	if WRATHROOK::COMANDO_BESTIARIO::SOSTITUISCI_SALVA == true
	  $scene = Scene_End.new
	else
	  $scene = Scene_File.new(true, false, false)
	end
  when 6
	$scene = Scene_End.new
  end
end
 end
end

class Scene_File < Scene_Base
 def return_scene
if @from_title
  $scene = Scene_Title.new
elsif @from_event
  $scene = Scene_Map.new
else
  $scene = Scene_Menu.new(5)
end
 end
end

class Scene_End < Scene_Base
 def return_scene
if WRATHROOK::COMANDO_BESTIARIO::SOSTITUISCI_SALVA == true
  $scene = Scene_Menu.new(5)
else
  $scene = Scene_Menu.new(6)
end
 end
end

class Scene_Bestiary < Scene_Base
 def update_list_selection
if Input.trigger?(Input::B)
  Sound.play_cancel
  $scene = Scene_Menu.new(4)
  return
end
if Input.trigger?(Input::C)
  unless $game_system.enemy_encountered[@list_window.enemy.id] > 0
	Sound.play_buzzer
	return
  end
process_status_window(@list_window.enemy, @list_window.index+1)
end
 end
end

 

 

Sono un po' in ritardo, ma meglio tardi che mai.

http://www.freankexpo.net/signature/1129.png

2986.png

BIM_Banner3.png

Premi RpgMaker

 


http://www.rpg2s.net/forum/uploads/monthly_01_2017/msg-293-0-48316500-1483794996.jpghttp://www.rpg2s.net/dax_games/r2s_regali2.pngContesthttp://rpg2s.net/gif/SCContest1Oct.gifhttp://rpg2s.net/gif/SCContest3Oct.gifhttp://rpg2s.net/gif/SCContest2Oct.gifhttp://rpg2s.net/gif/SCContest3Oct.gifhttp://rpg2s.net/gif/SCContest3Oct.gifhttp://rpg2s.net/gif/SCContest3Oct.gifhttp://rpg2s.net/gif/SCContest2Oct.gifhttp://rpg2s.net/gif/SCContest3Oct.gifhttp://rpg2s.net/gif/SCContest1Oct.gifhttp://rpg2s.net/gif/SCContest2Oct.gif http://rpg2s.net/gif/SCContest1Oct.gif http://rpg2s.net/gif/SCContest2Oct.gif http://rpg2s.net/gif/SCContest2Oct.gifhttp://rpg2s.net/gif/SCContest1Oct.gifhttp://www.rpg2s.net/awards/bestpixel2.jpghttp://www.rpg2s.net/awards/bestresourCSist2.jpghttp://www.rpg2s.net/awards/mostproductive1.jpghttp://i42.servimg.com/u/f42/13/12/87/37/iconap13.pnghttp://i42.servimg.com/u/f42/13/12/87/37/iconap14.pnghttp://i42.servimg.com/u/f42/13/12/87/37/iconap15.pnghttp://i42.servimg.com/u/f42/13/12/87/37/iconap16.pnghttp://i42.servimg.com/u/f42/13/12/87/37/screen10.pnghttp://www.rpgmkr.net/contest/screen-contest-primo.pnghttp://www.makerando.com/forum/uploads/jawards/iconawards3.png

Link to comment
Share on other sites

  • Replies 65
  • Created
  • Last Reply

Top Posters In This Topic

dove si trova il call script???

Alla terza pagina dei comandi evento..Prima fila, ultima posizione..

http://www.freankexpo.net/signature/1129.png

2986.png

BIM_Banner3.png

Premi RpgMaker

 


http://www.rpg2s.net/forum/uploads/monthly_01_2017/msg-293-0-48316500-1483794996.jpghttp://www.rpg2s.net/dax_games/r2s_regali2.pngContesthttp://rpg2s.net/gif/SCContest1Oct.gifhttp://rpg2s.net/gif/SCContest3Oct.gifhttp://rpg2s.net/gif/SCContest2Oct.gifhttp://rpg2s.net/gif/SCContest3Oct.gifhttp://rpg2s.net/gif/SCContest3Oct.gifhttp://rpg2s.net/gif/SCContest3Oct.gifhttp://rpg2s.net/gif/SCContest2Oct.gifhttp://rpg2s.net/gif/SCContest3Oct.gifhttp://rpg2s.net/gif/SCContest1Oct.gifhttp://rpg2s.net/gif/SCContest2Oct.gif http://rpg2s.net/gif/SCContest1Oct.gif http://rpg2s.net/gif/SCContest2Oct.gif http://rpg2s.net/gif/SCContest2Oct.gifhttp://rpg2s.net/gif/SCContest1Oct.gifhttp://www.rpg2s.net/awards/bestpixel2.jpghttp://www.rpg2s.net/awards/bestresourCSist2.jpghttp://www.rpg2s.net/awards/mostproductive1.jpghttp://i42.servimg.com/u/f42/13/12/87/37/iconap13.pnghttp://i42.servimg.com/u/f42/13/12/87/37/iconap14.pnghttp://i42.servimg.com/u/f42/13/12/87/37/iconap15.pnghttp://i42.servimg.com/u/f42/13/12/87/37/iconap16.pnghttp://i42.servimg.com/u/f42/13/12/87/37/screen10.pnghttp://www.rpgmkr.net/contest/screen-contest-primo.pnghttp://www.makerando.com/forum/uploads/jawards/iconawards3.png

Link to comment
Share on other sites

  • 1 month later...
non trovo questo comando evento dov'è?

Cosa non trovi?Il comando "Call script"?Se si, si trova nella terza pagina del menù alla fine della prima colonna!^^

http://www.freankexpo.net/signature/1129.png

2986.png

BIM_Banner3.png

Premi RpgMaker

 


http://www.rpg2s.net/forum/uploads/monthly_01_2017/msg-293-0-48316500-1483794996.jpghttp://www.rpg2s.net/dax_games/r2s_regali2.pngContesthttp://rpg2s.net/gif/SCContest1Oct.gifhttp://rpg2s.net/gif/SCContest3Oct.gifhttp://rpg2s.net/gif/SCContest2Oct.gifhttp://rpg2s.net/gif/SCContest3Oct.gifhttp://rpg2s.net/gif/SCContest3Oct.gifhttp://rpg2s.net/gif/SCContest3Oct.gifhttp://rpg2s.net/gif/SCContest2Oct.gifhttp://rpg2s.net/gif/SCContest3Oct.gifhttp://rpg2s.net/gif/SCContest1Oct.gifhttp://rpg2s.net/gif/SCContest2Oct.gif http://rpg2s.net/gif/SCContest1Oct.gif http://rpg2s.net/gif/SCContest2Oct.gif http://rpg2s.net/gif/SCContest2Oct.gifhttp://rpg2s.net/gif/SCContest1Oct.gifhttp://www.rpg2s.net/awards/bestpixel2.jpghttp://www.rpg2s.net/awards/bestresourCSist2.jpghttp://www.rpg2s.net/awards/mostproductive1.jpghttp://i42.servimg.com/u/f42/13/12/87/37/iconap13.pnghttp://i42.servimg.com/u/f42/13/12/87/37/iconap14.pnghttp://i42.servimg.com/u/f42/13/12/87/37/iconap15.pnghttp://i42.servimg.com/u/f42/13/12/87/37/iconap16.pnghttp://i42.servimg.com/u/f42/13/12/87/37/screen10.pnghttp://www.rpgmkr.net/contest/screen-contest-primo.pnghttp://www.makerando.com/forum/uploads/jawards/iconawards3.png

Link to comment
Share on other sites

Quella degli eventi!

Targhette
http://www.rpg2s.net/awards/mostpolite2.jpghttp://www.rpg2s.net/awards/mostpresent1.jpghttp://i51.tinypic.com/2mfnpt2.png

 

 

http://www.rpg2s.net/dax_games/r2s_regali5.png

Link to comment
Share on other sites

Non in eventi comuni(o puoi anche andarci), cmq quando apri un progetto se clicchi due volte all'interno di una mappa,comparirà un evento e a destra seci clicchi altre due volte compariranno i comandi degli eventi divisi in 3 pagine, nella terza c'è n'è uno chiamato Call script o qualcosa del genere dipende dalle versioni!

Cmq, ti consiglio di impararti un pò il programma,prima di iniziare a prendee scripts ;)

Edited by Soul Eater

Targhette
http://www.rpg2s.net/awards/mostpolite2.jpghttp://www.rpg2s.net/awards/mostpresent1.jpghttp://i51.tinypic.com/2mfnpt2.png

 

 

http://www.rpg2s.net/dax_games/r2s_regali5.png

Link to comment
Share on other sites

Non in eventi comuni(o puoi anche andarci), cmq quando apri un progetto se clicchi due volte all'interno di una mappa,comparirà un evento e a destra seci clicchi altre due volte compariranno i comandi degli eventi divisi in 3 pagine, nella terza c'è n'è uno chiamato Call script o qualcosa del genere dipende dalle versioni!

Cmq, ti consiglio di impararti un pò il programma,prima di iniziare a prendee scripts ;)

 

ah sisi ok ora ho capito grazie mille ^^

Link to comment
Share on other sites

leggiti la guida a rpg maker che ho scritto ^^

Finrod, GDR PBF

2PV e 1PAEquip: - faretra con 20 frecce- arco lungo- pugnale comune- Armatura di cuoio- Torcia- Cappuccio

Mi sa che è ora di vincere qualche premio per rinnovare questa firma! :3Posizioni raggiunte nei contest

http://rpg2s.net/gif/SCContest3Oct.gifhttp://www.rpg2s.net/awards/bestresourCSist3.jpghttp://www.rpg2s.net/awards/mosthelpful2.jpghttp://www.rpg2s.net/awards/mostpresent2.jpg

 

 

 

Link to comment
Share on other sites

  • 2 months later...
mi dà errore...

 

 

sii più preciso o non ti possiamo aiutare :biggrin:

Finrod, GDR PBF

2PV e 1PAEquip: - faretra con 20 frecce- arco lungo- pugnale comune- Armatura di cuoio- Torcia- Cappuccio

Mi sa che è ora di vincere qualche premio per rinnovare questa firma! :3Posizioni raggiunte nei contest

http://rpg2s.net/gif/SCContest3Oct.gifhttp://www.rpg2s.net/awards/bestresourCSist3.jpghttp://www.rpg2s.net/awards/mosthelpful2.jpghttp://www.rpg2s.net/awards/mostpresent2.jpg

 

 

 

Link to comment
Share on other sites

  • 4 months later...
  • 1 month later...
  • 1 month later...

Bellissimo lavoro!!!!

 

Solo una domanda:

Avendo messo nel mio progetto il comando ruba con relativo script, esiste un metodo per mettere nelle informazioni del mostro

anche gli oggetti che si possono rubare?

http://i.imgur.com/NwhgV4X.png

 

Link to comment
Share on other sites

Io ho inserito un oggetto chiamato "wikipedia" (ok il mio è un gioco comico)

Obiettivo none Usa solo nel menù che richiama un evento comune "Bestiario" che ha un call script:

$scene = Scene_Bestiary.new.

 

se hai il filtro oggetti nelle note ricorda di mettere *KEY

 

Credo sia il metodo più rapido...

http://i.imgur.com/NwhgV4X.png

 

Link to comment
Share on other sites

  • 1 month later...
  • 3 months later...
Io ho inserito un oggetto chiamato "wikipedia" (ok il mio è un gioco comico)

Obiettivo none Usa solo nel menù che richiama un evento comune "Bestiario" che ha un call script:

$scene = Scene_Bestiary.new.

 

se hai il filtro oggetti nelle note ricorda di mettere *KEY

 

Credo sia il metodo più rapido...

 

qualcuno potrebbe dirci un modo per mettere un opzione nel menù in modo k quando ci clikki venga il bestiario? grazie

Link to comment
Share on other sites

Qualcuno potrebbe spiegarmi (dettagliatamente x favore) come posso fare per mettere un tasto nel menù che mi mandi al bestiario???? Non ho tanta familiarità con lo script

 

 

Io ti posso aiutare!

devi andare nello script del menu che hai ( se hai uno script di menu personalizzato) se hai quello normale vai nello script Scene_Menu.

Modifica questa parte:

 

 

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(160, [s1, s2, s3, s4, s5, s6])

@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

@command_window.draw_item(4, false) # Disable save

end

end

In questa :

 

 

 

1 = Vocab::item

s2 = Vocab::skill

s3 = Vocab::equip

s4 = Vocab::status

s5 = Vocab::save

s6 = Vocab::game_end

s7 = "Bestiario"

@command_window = Window_Command.new(160, [s1, s2, s7, s3, s4, s5, s6])

@command_window.index = @menu_index

@command_window.openness = 0

@command_window.open

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

 

 

Poi modifica :

 

 

when 0 # Item

$scene = Scene_Item.new

when 1,2,3 # Skill, equipment, status

start_actor_selection

when 4 # Save

$scene = Scene_File.new(true, false, false)

when 5 # End Game

$scene = Scene_End.new

end

end

end

 

 

Con questa:

 

 

case @command_window.index

when 0 # Item

$scene = Scene_Item.new

when 1,2,3,4 # Skill, equipment, status

start_actor_selection

when 5 # Save

$scene = Scene_File.new(true, false, false)

when 6 # End Game

$scene = Scene_End.new

end

end

end

 

 

Ed infine devi modificare questa parte :

 

 

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)

 

 

Con Questa:

 

 

when 1

$scene = Scene_Skill.new(@status_window.index)

when 2

$scene = Scene_Bestiary.new

when 3

$scene = Scene_Equip.new(@status_window.index)

when 4

$scene = Scene_Status.new(@status_window.index)

 

http://img248.imageshack.us/img248/5513/signaturen.jpg

[L'ho fatta da solo!XD]

________________________________________________________________________________

 

Cercasi grafico e muscista per VX

________________________________________________________________________________

 

Ri-programmazione gioco : Leggende

 

La riprogrammazione del gioco parte del gioco alla storia!

Link to comment
Share on other sites

  • 2 months later...
Dipende che battle system usi...

Per qualsiasi motivo non aprite questo spoiler.

 

 

Ho detto di non aprirlo !

 

 

Se lo apri ancora esplode il mondo.

 

 

Aaaaaa è un vizio.

 

 

Contento? Il mondo è esploso, sono tutti morti

per colpa della tua curiosità .

 

 

Vuoi che ti venga anche il morbillo, la varicella e l'AIDS???

 

 

O bravo ora sei un malato terminale e nessuno

ti puo curare, sono tutti morti !

 

 

Se clicchi ancora una volta il PC esplode.

 

 

E dai smettila !!

 

Uff!! Hai cliccato tante volte che ho dovuto sostituirlo con un codebox.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

http://s8.postimg.org/yntv9nxld/Banner.png

http://img204.imageshack.us/img204/8039/sccontest3octpl3.gif

Link to comment
Share on other sites

  • 2 weeks later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share


×
×
  • Create New...