Jump to content
Rpg²S Forum

Recommended Posts

Monster Book

Descrizione

Permette di creare un bestiario

Autore

 

 

 

MogHunter

 

 

#==============================================================================
# +++ MOG - MONSTER BOOK  (v1.1) +++
#==============================================================================
# By Moghunter
# http://www.atelier-rgss.com/
#==============================================================================
# Sistema que permite verificar os parâmetros dos inimigos derrotados,
# o que inclui o battleback e a música de batalha.
#
#==============================================================================
# Para chamar o script use o comando abaixo.
#
# SceneManager.call(Monster_Book)
#
#==============================================================================#==============================================================================
# ● Histórico (Version History)
#==============================================================================
# v 1.1 - Correção na atualização do battleback em imagens repetidas.
#	   - Correção na execução da música quando o pitch ou volume é diferente.
#	   - Correção no espaço entre os números de parametros.
#==============================================================================[/color][/color][/indent]
[indent=1][color=#008800][color=#000099]module MOG_MONSTER_BOOK
  #Ocultar inimigos especificos da lista de inimigos.
  HIDE_ENEMIES_ID = [9,10]
  #Ativar a música de batalha.
  PLAY_MUSIC = true
  #Definição da palavra Completado.
  COMPLETED_WORD =  "Completed"
  #Ativar o Monster Book no Menu.
  MENU_COMMAND = true
  #Nome do comando apresentado no menu.
  MENU_COMMAND_NAME = "Bestiary"
end

#==============================================================================
# ■ Game_Temp
#==============================================================================
class Game_Temp
  attr_accessor :bestiary_battleback1_name
  attr_accessor :bestiary_battleback2_name
 
 #--------------------------------------------------------------------------
 # ● Initialize
 #--------------------------------------------------------------------------	  
  alias mog_bestiary_initialize initialize
  def initialize
   @bestiary_battleback1_name = "Crystal1"
   @bestiary_battleback1_name = "crystal"
   mog_bestiary_initialize
  end
end

#==============================================================================
# ■ Game_System
#==============================================================================
class Game_System

 attr_accessor :bestiary_defeated
 attr_accessor :bestiary_battleback
 attr_accessor :bestiary_music

 #--------------------------------------------------------------------------
 # ● Initialize
 #--------------------------------------------------------------------------  
 alias mog_monster_book_initialize initialize
 def initialize
  @bestiary_defeated = []
  @bestiary_battleback = []
  @bestiary_music = []
  mog_monster_book_initialize
 end

end #==============================================================================
# ■ Spriteset_Battle
#==============================================================================
class Spriteset_Battle
 #--------------------------------------------------------------------------
 # ● Initialize
 #--------------------------------------------------------------------------
 alias mog_bestiary_initialize initialize
 def initialize
  mog_bestiary_initialize
  $game_temp.bestiary_battleback1_name = battleback1_name
  $game_temp.bestiary_battleback2_name = battleback2_name
 end

end[/color][/color][/indent]
[indent=1][color=#008800][color=#000099]#==============================================================================
# ■ Game_Enemy
#==============================================================================
class Game_Enemy < Game_Battler
 attr_accessor :enemy_id

 #--------------------------------------------------------------------------
 # ● Die
 #--------------------------------------------------------------------------
 alias mog_monster_book_die die
 def die
  mog_monster_book_die
  check_monster_book
 end
 
 #--------------------------------------------------------------------------
 # ● Check Monster Book
 #--------------------------------------------------------------------------
 def check_monster_book
  if $game_system.bestiary_defeated[@enemy_id] == nil
	 $game_system.bestiary_defeated[@enemy_id] = 0
	 $game_system.bestiary_battleback[@enemy_id] = [$game_temp.bestiary_battleback1_name,$game_temp.bestiary_battleback2_name]
	 $game_system.bestiary_music[@enemy_id] = $game_system.battle_bgm
  end  
  $game_system.bestiary_defeated[@enemy_id] += 1	
 end
end #==============================================================================
# ■ Window_Monster_Status
#==============================================================================[/color][/color][/indent]
[indent=1][color=#008800][color=#000099]class Window_Monster_Status < Window_Selectable
 #--------------------------------------------------------------------------
 # ● Initialize
 #--------------------------------------------------------------------------
 def initialize(enemy)
super(0, 288, 544, 128)
self.opacity = 255
self.z = 300
refresh(enemy)
activate
 end[/color][/color][/indent]
[indent=1][color=#008800][color=#000099]  #--------------------------------------------------------------------------
 # ● Refresh
 #--------------------------------------------------------------------------
 def refresh(enemy)
  self.contents.clear
  if $game_system.bestiary_defeated[enemy.id] == nil
	 self.contents.draw_text(0,0 , 180, 24, "No Data",0)  
   else
	 change_color(system_color)
	 w_max = 50
	 ex = 16
	 self.contents.draw_text(0,0 , w_max, 24, Vocab::param(0),0)  
	 self.contents.draw_text(0,24 * 1 , w_max, 24, Vocab::param(1),0)
	 self.contents.draw_text(0,24 * 2 , w_max, 24, Vocab::param(2),0)
	 self.contents.draw_text(0,24 * 3 , w_max, 24, Vocab::param(3),0)
	 self.contents.draw_text(128,24 * 0 , w_max, 24, Vocab::param(4),0)
	 self.contents.draw_text(128,24 * 1 , w_max, 24, Vocab::param(5),0)
	 self.contents.draw_text(128,24 * 2 , w_max, 24, Vocab::param(6),0)		
	 self.contents.draw_text(128,24 * 3 , w_max, 24, Vocab::param(7),0)		
	 self.contents.draw_text(256,24 * 0 , w_max, 24, "Exp",0)
	 self.contents.draw_text(384,24 * 0 , w_max, 24, Vocab::currency_unit,0)
	 self.contents.draw_text(256,24 * 1 , w_max, 24, "Treasure",0)		
	 change_color(normal_color,true)
	 w_max2 = 64		
	 #HP
	 self.contents.draw_text(32 + ex,0 , w_max2, 24, enemy.params[0],2)
	 #MP
	 self.contents.draw_text(32 + ex,24 * 1 , w_max2, 24, enemy.params[1],2)
	 #ATK
	 self.contents.draw_text(32 + ex,24 * 2 ,w_max2 , 24, enemy.params[2],2)		
	 #Def
	 self.contents.draw_text(32 + ex,24 * 3 , w_max2, 24, enemy.params[3],2)		
	 #Mag Power
	 self.contents.draw_text(160 + ex,24 * 0 , w_max2, 24, enemy.params[4],2)
	 #Mag Def
	 self.contents.draw_text(160 + ex,24 * 1 , w_max2, 24, enemy.params[5],2)
	 #Agility
	 self.contents.draw_text(160 + ex,24 * 2 , w_max2, 24, enemy.params[6],2)
	 #Luck
	 self.contents.draw_text(160 + ex,24 * 3 , w_max2, 24, enemy.params[7],2)
	 #EXP
	 self.contents.draw_text(280,24 * 0 , 96, 24, enemy.exp,2)
	 #Gold
	 self.contents.draw_text(400,24 * 0 , 96, 24, enemy.gold,2)
	 #Drop Items
	 tr = 0
	 for i in enemy.drop_items
		next if i.kind == 0
		tr += 1
		tr_name = $data_items[i.data_id] if i.kind == 1
		tr_name = $data_weapons[i.data_id] if i.kind == 2
		tr_name = $data_armors [i.data_id] if i.kind == 3
		draw_icon(tr_name.icon_index, 336, 24 * tr)
		self.contents.draw_text(368,24 * tr , 160, 24, tr_name.name.to_s,0)
	 end	  
  end
 end
end[/color][/color][/indent]
[indent=1][color=#008800][color=#000099]#==============================================================================
# ■ Window_Monster_List
#==============================================================================
class Window_Monster_List < Window_Selectable

#------------------------------------------------------------------------------
# ● Initialize
#------------------------------------------------------------------------------  
 def initialize(data)
  super(312, 64, 232, 224)
  self.opacity = 255
  self.z = 301
  @index = -1
  @data = data
  @item_max = @data.size
  refresh(data)
  select(0)
  activate
 end[/color][/color][/indent]
[indent=1][color=#008800][color=#000099]#------------------------------------------------------------------------------
# ● Refresh
#------------------------------------------------------------------------------  
 def refresh(data)
  self.contents.clear
  if @item_max > 0
	 self.contents = Bitmap.new(width - 32, @item_max * 24)
	 for i in 0...@item_max
		draw_item(i)
	 end
  end
 end

#------------------------------------------------------------------------------
# ● draw_item MAX
#------------------------------------------------------------------------------	
def check_item_max
 @data_max = 0
 for i in $data_enemies
	 next if i == nil or  MOG_MONSTER_BOOK::HIDE_ENEMIES_ID.include?(i.id)
	 @data_max += 1
 end
end

#------------------------------------------------------------------------------
# ● draw_item
#------------------------------------------------------------------------------  
 def draw_item(index)
  x = 0
  y = index / col_max  * 24
  n_index = index + 1
  if $game_system.bestiary_defeated[@data[index].id] == nil
	 monster_name = "No Data"
	 defeated = " ---- "
	 change_color(normal_color,false)
  else
	monster_name = @data[index].name
	change_color(normal_color,true)
  end
  check_item_max
  d = @data_max > 99 ? "%03d" : @data_max > 9 ? "%02d" : "%01d"
  text = sprintf(d, n_index).to_s  + " - "
  self.contents.draw_text(x,y , 56, 24, text,0)
  self.contents.draw_text(x + 56,y , 140, 24, monster_name,0)
 end[/color][/color][/indent]
[indent=1][color=#008800][color=#000099]#------------------------------------------------------------------------------
# ● Item Max
#------------------------------------------------------------------------------		
 def item_max
  return @item_max == nil ? 0 : @item_max
 end

end[/color][/color][/indent]
[indent=1][color=#008800][color=#000099]#==============================================================================
# ■ Window_Monster_Comp
#==============================================================================
class Window_Monster_Comp < Window_Selectable
 include  MOG_MONSTER_BOOK

 #--------------------------------------------------------------------------
 # ● Initialize
 #--------------------------------------------------------------------------
 def initialize
  super(312,0, 232, 64)
  self.opacity = 255
  self.z = 300
  refresh
  activate
 end

 #--------------------------------------------------------------------------
 # ● Check Completition
 #--------------------------------------------------------------------------
 def check_completion
  data_max = 0
  for i in $data_enemies
	  next if i == nil or  MOG_MONSTER_BOOK::HIDE_ENEMIES_ID.include?(i.id)
	  data_max += 1
  end
  comp = 0
  for i in 0...$game_system.bestiary_defeated.size  
	  comp += 1 if $game_system.bestiary_defeated[i] != nil
  end
  @completed = COMPLETED_WORD + " " + comp.to_s + "/" + data_max.to_s
 end

 #--------------------------------------------------------------------------
 # ● Refresh
 #--------------------------------------------------------------------------
 def refresh
  self.contents.clear
  check_completion
  self.contents.draw_text(0,0, 160, 24, @completed.to_s,0)
 end
end[/color][/color][/indent]
[indent=1][color=#008800][color=#000099]#==============================================================================
# ■ Monster_Book
#==============================================================================
class Monster_Book

#--------------------------------------------------------------------------
# ● Main
#--------------------------------------------------------------------------		
def main
 Graphics.transition
 execute_loop
 execute_dispose
end  [/color][/color][/indent]
[indent=1][color=#008800][color=#000099]#--------------------------------------------------------------------------
# ● Execute Loop
#--------------------------------------------------------------------------		  
def execute_loop
 loop do
	Graphics.update
	Input.update
	update
	break if SceneManager.scene != self
 end
end  

#--------------------------------------------------------------------------
# ● Initialize
#--------------------------------------------------------------------------		
def initialize
 load_data
 create_window_guide
 create_enemy_sprite
 create_battleback
 @music = [nil,nil,nil]
 refresh_bgm
end  

#------------------------------------------------------------------------------
# ● Initialize
#------------------------------------------------------------------------------	
def load_data
 BattleManager.save_bgm_and_bgs
 @data = []
 for i in $data_enemies
	 next if i == nil or  MOG_MONSTER_BOOK::HIDE_ENEMIES_ID.include?(i.id)
	 @data.push(i)
 end
end

#--------------------------------------------------------------------------
# ● Execute Dispose
#--------------------------------------------------------------------------		  
def execute_dispose
 Graphics.freeze
 @windows_guide.dispose
 @windows_status.dispose
 if @enemy_sprite.bitmap != nil
	@enemy_sprite.bitmap.dispose
 end
 @enemy_sprite.dispose
 dispose_battleback		  
 @battleback1.dispose
 @battleback2.dispose
 @spriteset.dispose
 @window_comp.dispose
 BattleManager.replay_bgm_and_bgs
end

#--------------------------------------------------------------------------
# ● Dispose_battleback
#--------------------------------------------------------------------------			
def dispose_battleback
 if @battleback1.bitmap != nil
	@battleback1.bitmap.dispose
	@battleback1.bitmap = nil
 end
 if @battleback2.bitmap != nil
	@battleback2.bitmap.dispose
	@battleback2.bitmap = nil
 end  
end

#--------------------------------------------------------------------------
# ● Create Window Guide
#--------------------------------------------------------------------------		  
def create_window_guide
 @spriteset = Spriteset_Map.new
 @windows_guide = Window_Monster_List.new(@data)
 @enemy = @data[@windows_guide.index]
 @windows_status = Window_Monster_Status.new(@enemy)
 @window_comp = Window_Monster_Comp.new
 @old_index = @windows_guide.index
 @org_pos = [@windows_guide.x,@windows_guide.y]
 @fade_time = 60
end
 
#--------------------------------------------------------------------------
# ● Create Enemy Sprite
#--------------------------------------------------------------------------			
def create_enemy_sprite
 @enemy_sprite = Sprite.new
 @enemy_sprite.z = 100
 @enemy_sprite_org =  @enemy_sprite.x
 refresh_enemy_sprite
end

#--------------------------------------------------------------------------
# ● Create_Battleback
#--------------------------------------------------------------------------			
def create_battleback
 @battleback1 = Sprite.new
 @battleback1.z = 1
 @battleback1.opacity = 0
 @battleback2 = Sprite.new
 @battleback2.z = 2
 @battleback2.opacity = 0
 @old_battleback = [nil,nil]
 refresh_batteback
end

#--------------------------------------------------------------------------
# ● Update
#--------------------------------------------------------------------------		  
def update
 @windows_guide.update
 update_command
 update_animation
 refresh if @old_index != @windows_guide.index
end

#--------------------------------------------------------------------------
# ● Update Animation
#--------------------------------------------------------------------------			
def update_animation
 update_window_fade_animation
 update_battleback_animation
 update_enemy_sprite_animation
end

#--------------------------------------------------------------------------
# ● Update Enemy Sprite Animation
#--------------------------------------------------------------------------			
def update_enemy_sprite_animation
 @enemy_sprite.opacity += 15
 if @enemy_sprite.x < @enemy_sprite_org
	@enemy_sprite.x += 15
	@enemy_sprite.x = @enemy_sprite_org if @enemy_sprite.x > @enemy_sprite_org
 end
end
 
#--------------------------------------------------------------------------
# ● Update Window Fade Animation
#--------------------------------------------------------------------------			
def update_window_fade_animation
 if @windows_guide.visible
	@windows_guide.opacity += 15
	@windows_guide.contents_opacity += 15	  
	if @windows_guide.y > @org_pos[1]
	   @windows_guide.y -= 25
	   if @windows_guide.y < @org_pos[1]
		  @windows_guide.y = @org_pos[1]
		  @windows_guide.opacity += 255
		  @windows_guide.contents_opacity = 255
	   end
	end			
 else
	@windows_guide.opacity -= 15
	@windows_guide.contents_opacity -= 15
	if @windows_guide.y < (@windows_guide.height + 416)
	   @windows_guide.y += 25
	   @windows_guide.y = (@windows_guide.height + 416) if @windows_guide.y > (@windows_guide.height + 416)		  
	end	  
end
end  

#--------------------------------------------------------------------------
# ● Update Battleback Animation
#--------------------------------------------------------------------------			
def update_battleback_animation
 if @old_battleback == nil
	@battleback1.opacity -= 10
	@battleback2.opacity -= 10
 else
	@battleback1.opacity += 10
	@battleback2.opacity += 10	
 end
end
 
#--------------------------------------------------------------------------
# ● Update Command
#--------------------------------------------------------------------------			
def update_command
 if Input.trigger?(Input::B)
	Sound.play_cancel
	SceneManager.return
  elsif Input.trigger?(Input::C)
	Sound.play_ok  
	return
	if @windows_guide.visible
	   @windows_guide.visible = false
	else
	   @windows_guide.visible = true
	end
 end  
end

#--------------------------------------------------------------------------
# ● Refresh Animation
#--------------------------------------------------------------------------			
def refresh
 @old_index = @windows_guide.index
 @enemy = @data[@windows_guide.index]
 @windows_status.refresh(@enemy)
 refresh_bgm
 refresh_enemy_sprite
 refresh_batteback
end
 
#--------------------------------------------------------------------------
# ● Refresh Animation
#--------------------------------------------------------------------------			  
def refresh_enemy_sprite
 if @enemy_sprite.bitmap != nil
	@enemy_sprite.bitmap.dispose
	@enemy_sprite.bitmap = nil
 end
 if $game_system.bestiary_defeated[@enemy.id] != nil
	@enemy_sprite.bitmap = Cache.battler(@enemy.battler_name, @enemy.battler_hue)		
	@enemy_sprite_org =  (312/ 2) - (@enemy_sprite.bitmap.width / 2)
	@enemy_sprite.x = -@enemy_sprite.bitmap.width
	@enemy_sprite.y = 272 - @enemy_sprite.bitmap.height
	@enemy_sprite.opacity = 0
 end
end [/color][/color][/indent]
[indent=1][color=#008800][color=#000099]#--------------------------------------------------------------------------
# ● BGM Refresh
#--------------------------------------------------------------------------			  
def refresh_bgm
 return unless MOG_MONSTER_BOOK::PLAY_MUSIC
 if $game_system.bestiary_music[@enemy.id] != nil and
	(@music[0] != $game_system.bestiary_music[@enemy.id].name or
	 @music[1] != $game_system.bestiary_music[@enemy.id].volume or
	 @music[2] != $game_system.bestiary_music[@enemy.id].pitch)
	 m = $game_system.bestiary_music[@enemy.id]
	 @music = [m.name, m.volume, m.pitch]
	RPG::BGM.stop
	Audio.bgm_play("Audio/BGM/" +  m.name, m.volume, m.pitch)
 end
end

#--------------------------------------------------------------------------
# ● Refresh Battleback
#--------------------------------------------------------------------------			  
def refresh_batteback  
 if $game_system.bestiary_battleback[@enemy.id] != nil and
	(@old_battleback[0] != $game_system.bestiary_battleback[@enemy.id][0] or
	 @old_battleback[1] != $game_system.bestiary_battleback[@enemy.id][1])
	  @old_battleback = [$game_system.bestiary_battleback[@enemy.id][0], $game_system.bestiary_battleback[@enemy.id][1]]
	  dispose_battleback
	  @battleback1.opacity = 0
	  @battleback2.opacity = 0
	if $game_system.bestiary_battleback[@enemy.id][0] != nil
	   @battleback1.bitmap = Cache.battleback1($game_system.bestiary_battleback[@enemy.id][0])
	else
	   @battleback1.bitmap = Cache.battleback1("")
	end
	if $game_system.bestiary_battleback[@enemy.id][1] != nil
	   @battleback2.bitmap = Cache.battleback2($game_system.bestiary_battleback[@enemy.id][1])
	else
	   @battleback2.bitmap = Cache.battleback2("")
	end		  
 end
end

end[/color][/color][/indent]
[indent=1][color=#008800][color=#000099]if MOG_MONSTER_BOOK::MENU_COMMAND
#==============================================================================
# ■ Window Menu Command
#==============================================================================
class Window_MenuCommand < Window_Command

#------------------------------------------------------------------------------
# ● Add Main Commands
#------------------------------------------------------------------------------	
 alias mog_bestiary_add_main_commands add_main_commands
 def add_main_commands
  mog_bestiary_add_main_commands
  add_command(MOG_MONSTER_BOOK::MENU_COMMAND_NAME, :bestiary, main_commands_enabled)
 end
end  [/color][/color][/indent]
[indent=1][color=#008800][color=#000099]#==============================================================================
# ■ Scene Menu
#==============================================================================
class Scene_Menu < Scene_MenuBase

#------------------------------------------------------------------------------
# ● Create Command Windows
#------------------------------------------------------------------------------	  
  alias mog_bestiary_create_command_window create_command_window
  def create_command_window
   mog_bestiary_create_command_window
   @command_window.set_handler(:bestiary,	 method(:Monster_Book))
  end
 
#------------------------------------------------------------------------------
# ● Monster Book
#------------------------------------------------------------------------------	  
  def Monster_Book
   SceneManager.call(Monster_Book)
  end

end  

end[/color][/color][/indent]
[indent=1][color=#008800][color=#000099]$mog_rgss3_monster_book = true

 

 

 

Istruzioni per l'uso

 

All'interno dello Script.

 

Bugs e Conflitti Noti N\A

Edited by nomorehero

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

 

Link to comment
Share on other sites

Argh sembrava andare tutto bene questa volta ed invece aprendo lo spoiler sembra esserci qualche rimasuglio di codice, tanto che se ci fai caso lo script ad un certo punto rimane tutto verde! XD Puoi provare a copiare ed incollare di nuovo?

^ ^

 

Per quanto riguarda la configurazione non c'è solo il nome, se leggi le istruzioni ci son pure altri parametri! ^ ^

(\_/)
(^ ^) <----coniglietto rosso, me!
(> <)


Il mio Tumblr dove seguire i miei progetti, i progetti della Reverie : : Project ^ ^

http://i.imgur.com/KdUDtQt.png disponibile su Google Play, qui i dettagli! ^ ^

http://i.imgur.com/FwnGMI3.png completo! Giocabile online, qui i dettagli! ^ ^

REVERIE : : RENDEZVOUS (In allenamento per apprendere le buone arti prima di cominciarlo per bene ^ ^) Trovate i dettagli qui insieme alla mia intervista (non utilizzerò più rpgmaker) ^ ^

 

SUWOnzB.jpg 🖤
http://www.rpg2s.net/dax_games/r2s_regali2s.png E:3 http://www.rpg2s.net/dax_games/xmas/gifnatale123.gif
http://i.imgur.com/FfvHCGG.png by Testament (notare dettaglio in basso a destra)! E:3
http://i.imgur.com/MpaUphY.jpg by Idriu E:3

Membro Onorario, Ambasciatore dei Coniglietti (Membro n.44)

http://i.imgur.com/PgUqHPm.png
Ufficiale
"Ad opera della sua onestà e del suo completo appoggio alla causa dei Panda, Guardian Of Irael viene ufficialmente considerato un Membro portante del Partito, e Ambasciatore del suo Popolo presso di noi"


http://i.imgur.com/TbRr4iS.png<- Grazie Testament E:3
Ricorda...se rivolgi il tuo sguardo ^ ^ a Guardian anche Guardian volge il suo sguardo ^ ^ a te ^ ^
http://i.imgur.com/u8UJ4Vm.gifby Flame ^ ^
http://i.imgur.com/VbggEKS.gifhttp://i.imgur.com/2tJmjFJ.gifhttp://projectste.altervista.org/Our_Hero_adotta/ado2.png
Grazie Testament XD Fan n°1 ufficiale di PQ! :D

Viva
il Rhaxen! <- Folletto te lo avevo detto (fa pure rima) che non
avevo programmi di grafica per fare un banner su questo pc XD (ora ho di
nuovo il mio PC veramente :D)

Rosso Guardiano della
http://i.imgur.com/Os5rvhx.png

Rpg2s RPG BY FORUM:

Nome: Darth Reveal

 

PV totali 2
PA totali 16

Descrizione: ragazzo dai lunghi capelli rossi ed occhi dello stesso colore. Indossa una elegante giacca rossa sopra ad una maglietta nera. Porta pantaloni rossi larghi, una cintura nera e degli stivali dello stesso colore. E' solito trasportare lo spadone dietro la schiena in un fodero apposito. Ha un pendente al collo e tiene ben legato un pezzo di stoffa (che gli sta particolarmente a cuore) intorno al braccio sinistro sotto la giacca, copre una cicatrice.
Bozze vesti non definitive qui.

Equipaggiamento:
Indossa:
60$ e 59$ divisi in due tasche interne
Levaitan

Spada a due mani elsa lunga

Guanti del Defender (2PA)
Anello del linguaggio animale (diventato del Richiamo)

Scrinieri da lanciere (2 PA)

Elmo del Leone (5 PA)

Corazza del Leone in Ferro Corrazzato (7 PA)

ZAINO (20) contenente:
Portamonete in pelle di cinghiale contenente: 100$
Scatola Sanitaria Sigillata (può contenere e tenere al sicuro fino a 4 oggetti curativi) (contiene Benda di pronto soccorso x3, Pozione di cura)
Corda
Bottiglia di idromele
Forma di formaggio
Torcia (serve ad illuminare, dura tre settori)

Fiasca di ceramica con Giglio Amaro (Dona +1PN e Velocità all'utilizzatore)
Ampolla Bianca

Semi di Balissa

 

CAVALLO NORMALE + SELLA (30 +2 armi) contentente:
66$
Benda di pronto soccorso x3
Spada a due mani

Fagotto per Adara (fazzoletto ricamato)


 

Link to comment
Share on other sites

Guest clyde
Ci soni dei tag in mezzo al codice! È successo anche altre volte... Cidenti al nuovo forum. Sottolineo ancora che non bisognerebbe postare senza cognizione della risorsa. Capis co l'entusiasmo di condividere, ma questo script ha diverse opzioni di configurazione e necessiterebbe di traduzione in alcuno punti.
Link to comment
Share on other sites

Diverse? Ok, da adesso in poi metto solo "Configurazione dentro lo script." Pensavo fosse solo una questione di vocaboli, sul serio!

Per i tag, non si levano neanche ad editarlo...

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

 

Link to comment
Share on other sites

Argh, perchè questi errori?

Un bestiario per ace finalmente, ti frusto perchè non hai messo uno screen.U.u

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

Guest clyde
Il fatto che manchino determinati script è che avevo intenzione di pubblicarli io con adeguato materiale e revisione. Di bestiari ne esistono diversi, credo di averne anche uno sopravvissuto a mundorpgmaker.
Link to comment
Share on other sites

sopravvissuto a mundorpgmaker.

Non riprenderà a vivere allora?

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

Perfetto! ^ ^

da adesso in poi metto solo "Configurazione dentro lo script.

Sempre se ci sono! XD La descrizione comunque più o meno ci vuole! ^ ^

(\_/)
(^ ^) <----coniglietto rosso, me!
(> <)


Il mio Tumblr dove seguire i miei progetti, i progetti della Reverie : : Project ^ ^

http://i.imgur.com/KdUDtQt.png disponibile su Google Play, qui i dettagli! ^ ^

http://i.imgur.com/FwnGMI3.png completo! Giocabile online, qui i dettagli! ^ ^

REVERIE : : RENDEZVOUS (In allenamento per apprendere le buone arti prima di cominciarlo per bene ^ ^) Trovate i dettagli qui insieme alla mia intervista (non utilizzerò più rpgmaker) ^ ^

 

SUWOnzB.jpg 🖤
http://www.rpg2s.net/dax_games/r2s_regali2s.png E:3 http://www.rpg2s.net/dax_games/xmas/gifnatale123.gif
http://i.imgur.com/FfvHCGG.png by Testament (notare dettaglio in basso a destra)! E:3
http://i.imgur.com/MpaUphY.jpg by Idriu E:3

Membro Onorario, Ambasciatore dei Coniglietti (Membro n.44)

http://i.imgur.com/PgUqHPm.png
Ufficiale
"Ad opera della sua onestà e del suo completo appoggio alla causa dei Panda, Guardian Of Irael viene ufficialmente considerato un Membro portante del Partito, e Ambasciatore del suo Popolo presso di noi"


http://i.imgur.com/TbRr4iS.png<- Grazie Testament E:3
Ricorda...se rivolgi il tuo sguardo ^ ^ a Guardian anche Guardian volge il suo sguardo ^ ^ a te ^ ^
http://i.imgur.com/u8UJ4Vm.gifby Flame ^ ^
http://i.imgur.com/VbggEKS.gifhttp://i.imgur.com/2tJmjFJ.gifhttp://projectste.altervista.org/Our_Hero_adotta/ado2.png
Grazie Testament XD Fan n°1 ufficiale di PQ! :D

Viva
il Rhaxen! <- Folletto te lo avevo detto (fa pure rima) che non
avevo programmi di grafica per fare un banner su questo pc XD (ora ho di
nuovo il mio PC veramente :D)

Rosso Guardiano della
http://i.imgur.com/Os5rvhx.png

Rpg2s RPG BY FORUM:

Nome: Darth Reveal

 

PV totali 2
PA totali 16

Descrizione: ragazzo dai lunghi capelli rossi ed occhi dello stesso colore. Indossa una elegante giacca rossa sopra ad una maglietta nera. Porta pantaloni rossi larghi, una cintura nera e degli stivali dello stesso colore. E' solito trasportare lo spadone dietro la schiena in un fodero apposito. Ha un pendente al collo e tiene ben legato un pezzo di stoffa (che gli sta particolarmente a cuore) intorno al braccio sinistro sotto la giacca, copre una cicatrice.
Bozze vesti non definitive qui.

Equipaggiamento:
Indossa:
60$ e 59$ divisi in due tasche interne
Levaitan

Spada a due mani elsa lunga

Guanti del Defender (2PA)
Anello del linguaggio animale (diventato del Richiamo)

Scrinieri da lanciere (2 PA)

Elmo del Leone (5 PA)

Corazza del Leone in Ferro Corrazzato (7 PA)

ZAINO (20) contenente:
Portamonete in pelle di cinghiale contenente: 100$
Scatola Sanitaria Sigillata (può contenere e tenere al sicuro fino a 4 oggetti curativi) (contiene Benda di pronto soccorso x3, Pozione di cura)
Corda
Bottiglia di idromele
Forma di formaggio
Torcia (serve ad illuminare, dura tre settori)

Fiasca di ceramica con Giglio Amaro (Dona +1PN e Velocità all'utilizzatore)
Ampolla Bianca

Semi di Balissa

 

CAVALLO NORMALE + SELLA (30 +2 armi) contentente:
66$
Benda di pronto soccorso x3
Spada a due mani

Fagotto per Adara (fazzoletto ricamato)


 

Link to comment
Share on other sites

  • 2 weeks later...
Gratitudine a chiunque mi posti un call script per aggiungere i mostri manualmente.Tante prove e non ci sono riuscito.

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

Ma a te funziona lo script? Da quel che vedo ha ancora parecchi errori dovuti al forum, ident, eccc... D:

(\_/)
(^ ^) <----coniglietto rosso, me!
(> <)


Il mio Tumblr dove seguire i miei progetti, i progetti della Reverie : : Project ^ ^

http://i.imgur.com/KdUDtQt.png disponibile su Google Play, qui i dettagli! ^ ^

http://i.imgur.com/FwnGMI3.png completo! Giocabile online, qui i dettagli! ^ ^

REVERIE : : RENDEZVOUS (In allenamento per apprendere le buone arti prima di cominciarlo per bene ^ ^) Trovate i dettagli qui insieme alla mia intervista (non utilizzerò più rpgmaker) ^ ^

 

SUWOnzB.jpg 🖤
http://www.rpg2s.net/dax_games/r2s_regali2s.png E:3 http://www.rpg2s.net/dax_games/xmas/gifnatale123.gif
http://i.imgur.com/FfvHCGG.png by Testament (notare dettaglio in basso a destra)! E:3
http://i.imgur.com/MpaUphY.jpg by Idriu E:3

Membro Onorario, Ambasciatore dei Coniglietti (Membro n.44)

http://i.imgur.com/PgUqHPm.png
Ufficiale
"Ad opera della sua onestà e del suo completo appoggio alla causa dei Panda, Guardian Of Irael viene ufficialmente considerato un Membro portante del Partito, e Ambasciatore del suo Popolo presso di noi"


http://i.imgur.com/TbRr4iS.png<- Grazie Testament E:3
Ricorda...se rivolgi il tuo sguardo ^ ^ a Guardian anche Guardian volge il suo sguardo ^ ^ a te ^ ^
http://i.imgur.com/u8UJ4Vm.gifby Flame ^ ^
http://i.imgur.com/VbggEKS.gifhttp://i.imgur.com/2tJmjFJ.gifhttp://projectste.altervista.org/Our_Hero_adotta/ado2.png
Grazie Testament XD Fan n°1 ufficiale di PQ! :D

Viva
il Rhaxen! <- Folletto te lo avevo detto (fa pure rima) che non
avevo programmi di grafica per fare un banner su questo pc XD (ora ho di
nuovo il mio PC veramente :D)

Rosso Guardiano della
http://i.imgur.com/Os5rvhx.png

Rpg2s RPG BY FORUM:

Nome: Darth Reveal

 

PV totali 2
PA totali 16

Descrizione: ragazzo dai lunghi capelli rossi ed occhi dello stesso colore. Indossa una elegante giacca rossa sopra ad una maglietta nera. Porta pantaloni rossi larghi, una cintura nera e degli stivali dello stesso colore. E' solito trasportare lo spadone dietro la schiena in un fodero apposito. Ha un pendente al collo e tiene ben legato un pezzo di stoffa (che gli sta particolarmente a cuore) intorno al braccio sinistro sotto la giacca, copre una cicatrice.
Bozze vesti non definitive qui.

Equipaggiamento:
Indossa:
60$ e 59$ divisi in due tasche interne
Levaitan

Spada a due mani elsa lunga

Guanti del Defender (2PA)
Anello del linguaggio animale (diventato del Richiamo)

Scrinieri da lanciere (2 PA)

Elmo del Leone (5 PA)

Corazza del Leone in Ferro Corrazzato (7 PA)

ZAINO (20) contenente:
Portamonete in pelle di cinghiale contenente: 100$
Scatola Sanitaria Sigillata (può contenere e tenere al sicuro fino a 4 oggetti curativi) (contiene Benda di pronto soccorso x3, Pozione di cura)
Corda
Bottiglia di idromele
Forma di formaggio
Torcia (serve ad illuminare, dura tre settori)

Fiasca di ceramica con Giglio Amaro (Dona +1PN e Velocità all'utilizzatore)
Ampolla Bianca

Semi di Balissa

 

CAVALLO NORMALE + SELLA (30 +2 armi) contentente:
66$
Benda di pronto soccorso x3
Spada a due mani

Fagotto per Adara (fazzoletto ricamato)


 

Link to comment
Share on other sites

A me funziona perfettamente.Ho copiato lo script, messo il call script per chiamarlo e va bene.

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

A occhi e croce senza testare direi che dovresti usare questo codice:

 

def add_enemy_to_bestiary(enemy_id = 0)

if $game_system.bestiary_defeated[enemy_id] == nil

$game_system.bestiary_defeated[enemy_id] = 0

$game_system.bestiary_battleback[enemy_id] = [$game_temp.bestiary_battleback1_name,$game_temp.bestiary_battleback2_name]

$game_system.bestiary_music[enemy_id] = $game_system.battle_bgm

end

$game_system.bestiary_defeated[enemy_id] += 1

end

e per aggiungere un mostro sarà :

add_enemy_to_bestiary(enemy_id)

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

Guest clyde

La parte in cui viene realizzato quello che ti interessa è questa:

 

 

def check_monster_book
 if $game_system.bestiary_defeated[@enemy_id] == nil
$game_system.bestiary_defeated[@enemy_id] = 0
$game_system.bestiary_battleback[@enemy_id] = [$game_temp.bestiary_battleback1_name,$game_temp.bestiary_battleback2_name]
$game_system.bestiary_music[@enemy_id] = $game_system.battle_bgm
 end
 $game_system.bestiary_defeated[@enemy_id] += 1	  
end

 

 

 

Quello che devi scrivere nel callscript è questo:

 

 

$game_system.bestiary_defeated[@enemy_id] = 1
$game_system.bestiary_battleback[@enemy_id] = [$game_temp.bestiary_battleback1_name,$game_temp.bestiary_battleback2_name]
$game_system.bestiary_music[@enemy_id] = $game_system.battle_bgm

 

 

 

EDIT:

Ninja'd e anche bene dal re!

 

CONTROEDIT:

Re, quella chiamata al callscript è da rivedere! Il metodo è in Game_Enemy.

Edited by clyde
Link to comment
Share on other sites

No no, vedi bene è un normalissimo metodo che funziona di per se, non richiama nessun attributo di game enemy.

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

Guest clyde

No no, vedi bene è un normalissimo metodo che funziona di per se, non richiama nessun attributo di game enemy.

O.o Mi ero sognato che l'avevi inserito nella classe Game_Enemy!

Link to comment
Share on other sites

Direi che non funziona...

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

In effetti non era testato, allora appena postano una versione del codice senza quegli strani BBCODE te ne comunicherò uno che funziona che posso testare.

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

Aspetta te lo posto io la versione che ho:

 

 

#==============================================================================
# +++ MOG - MONSTER BOOK  (v1.1) +++
#==============================================================================
# By Moghunter
# http://www.atelier-rgss.com/
#==============================================================================
# Sistema que permite verificar os parâmetros dos inimigos derrotados,
# o que inclui o battleback e a música de batalha.
#
#==============================================================================
# Para chamar o script use o comando abaixo.
#
# SceneManager.call(Monster_Book)
#
#==============================================================================
#==============================================================================
# ● Histórico (Version History)
#==============================================================================
# v 1.1 - Correção na atualização do battleback em imagens repetidas.
#	   - Correção na execução da música quando o pitch ou volume é diferente.
#	   - Correção no espaço entre os números de parametros.
#==============================================================================
module MOG_MONSTER_BOOK
  #Ocultar inimigos especificos da lista de inimigos.
  HIDE_ENEMIES_ID = [9,10]
  #Ativar a música de batalha.
  PLAY_MUSIC = true
  #Definição da palavra Completado.
  COMPLETED_WORD =  "Completed"
  #Ativar o Monster Book no Menu.
  MENU_COMMAND = true
  #Nome do comando apresentado no menu.
  MENU_COMMAND_NAME = "Bestiary"
end

#==============================================================================
# ■ Game_Temp
#==============================================================================
class Game_Temp
  attr_accessor :bestiary_battleback1_name
  attr_accessor :bestiary_battleback2_name
 
 #--------------------------------------------------------------------------
 # ● Initialize
 #--------------------------------------------------------------------------	  
  alias mog_bestiary_initialize initialize
  def initialize
   @bestiary_battleback1_name = ""
   @bestiary_battleback1_name = ""
   mog_bestiary_initialize
  end
end

#==============================================================================
# ■ Game_System
#==============================================================================
class Game_System

 attr_accessor :bestiary_defeated
 attr_accessor :bestiary_battleback
 attr_accessor :bestiary_music

 #--------------------------------------------------------------------------
 # ● Initialize
 #--------------------------------------------------------------------------   
 alias mog_monster_book_initialize initialize
 def initialize
  @bestiary_defeated = []
  @bestiary_battleback = []
  @bestiary_music = []
  mog_monster_book_initialize
 end

end 
#==============================================================================
# ■ Spriteset_Battle
#==============================================================================
class Spriteset_Battle
 #--------------------------------------------------------------------------
 # ● Initialize
 #--------------------------------------------------------------------------
 alias mog_bestiary_initialize initialize
 def initialize
  mog_bestiary_initialize
  $game_temp.bestiary_battleback1_name = battleback1_name
  $game_temp.bestiary_battleback2_name = battleback2_name
 end

end
#==============================================================================
# ■ Game_Enemy
#==============================================================================
class Game_Enemy < Game_Battler
 attr_accessor :enemy_id

 #--------------------------------------------------------------------------
 # ● Die
 #--------------------------------------------------------------------------
 alias mog_monster_book_die die
 def die
  mog_monster_book_die
  check_monster_book
 end
  
 #--------------------------------------------------------------------------
 # ● Check Monster Book
 #-------------------------------------------------------------------------- 
 def check_monster_book
  if $game_system.bestiary_defeated[@enemy_id] == nil
	 $game_system.bestiary_defeated[@enemy_id] = 1
	 $game_system.bestiary_battleback[@enemy_id] = [$game_temp.bestiary_battleback1_name,$game_temp.bestiary_battleback2_name]
	 $game_system.bestiary_music[@enemy_id] = $game_system.battle_bgm
  end  
  $game_system.bestiary_defeated[@enemy_id] += 1	 
 end 
end 
#==============================================================================
# ■ Window_Monster_Status
#==============================================================================
class Window_Monster_Status < Window_Selectable
 #--------------------------------------------------------------------------
 # ● Initialize
 #--------------------------------------------------------------------------
 def initialize(enemy)
   super(0, 288, 544, 128)
   self.opacity = 255
   self.z = 300
   refresh(enemy)
   activate
 end
 #--------------------------------------------------------------------------
 # ● Refresh
 #-------------------------------------------------------------------------- 
 def refresh(enemy)
  self.contents.clear
  if $game_system.bestiary_defeated[enemy.id] == nil
	 self.contents.draw_text(0,0 , 180, 24, "No Data",0)   
   else
	 change_color(system_color)
	 w_max = 50
	 ex = 16
	 self.contents.draw_text(0,0 , w_max, 24, Vocab::param(0),0)   
	 self.contents.draw_text(0,24 * 1 , w_max, 24, Vocab::param(1),0)
	 self.contents.draw_text(0,24 * 2 , w_max, 24, Vocab::param(2),0)
	 self.contents.draw_text(0,24 * 3 , w_max, 24, Vocab::param(3),0)
	 self.contents.draw_text(128,24 * 0 , w_max, 24, Vocab::param(4),0)
	 self.contents.draw_text(128,24 * 1 , w_max, 24, Vocab::param(5),0)
	 self.contents.draw_text(128,24 * 2 , w_max, 24, Vocab::param(6),0)		
	 self.contents.draw_text(128,24 * 3 , w_max, 24, Vocab::param(7),0)		
	 self.contents.draw_text(256,24 * 0 , w_max, 24, "Exp",0)
	 self.contents.draw_text(384,24 * 0 , w_max, 24, Vocab::currency_unit,0)
	 self.contents.draw_text(256,24 * 1 , w_max, 24, "Treasure",0)		
	 change_color(normal_color,true)
	 w_max2 = 64		
	 #HP
	 self.contents.draw_text(32 + ex,0 , w_max2, 24, enemy.params[0],2)
	 #MP
	 self.contents.draw_text(32 + ex,24 * 1 , w_max2, 24, enemy.params[1],2)
	 #ATK
	 self.contents.draw_text(32 + ex,24 * 2 ,w_max2 , 24, enemy.params[2],2)		
	 #Def
	 self.contents.draw_text(32 + ex,24 * 3 , w_max2, 24, enemy.params[3],2)		
	 #Mag Power
	 self.contents.draw_text(160 + ex,24 * 0 , w_max2, 24, enemy.params[4],2)
	 #Mag Def
	 self.contents.draw_text(160 + ex,24 * 1 , w_max2, 24, enemy.params[5],2) 
	 #Agility
	 self.contents.draw_text(160 + ex,24 * 2 , w_max2, 24, enemy.params[6],2)
	 #Luck
	 self.contents.draw_text(160 + ex,24 * 3 , w_max2, 24, enemy.params[7],2)
	 #EXP
	 self.contents.draw_text(280,24 * 0 , 96, 24, enemy.exp,2)
	 #Gold
	 self.contents.draw_text(400,24 * 0 , 96, 24, enemy.gold,2)
	 #Drop Items
	 tr = 0
	 for i in enemy.drop_items
	    next if i.kind == 0
	    tr += 1
	    tr_name = $data_items[i.data_id] if i.kind == 1
	    tr_name = $data_weapons[i.data_id] if i.kind == 2
	    tr_name = $data_armors [i.data_id] if i.kind == 3
	    draw_icon(tr_name.icon_index, 336, 24 * tr)
	    self.contents.draw_text(368,24 * tr , 160, 24, tr_name.name.to_s,0)
	 end	  
  end
 end
end
#==============================================================================
# ■ Window_Monster_List
#==============================================================================
class Window_Monster_List < Window_Selectable

#------------------------------------------------------------------------------
# ● Initialize
#------------------------------------------------------------------------------  
 def initialize(data)
  super(312, 64, 232, 224)
  self.opacity = 255
  self.z = 301
  @index = -1
  @data = data
  @item_max = @data.size
  refresh(data)
  select(0)
  activate
 end
#------------------------------------------------------------------------------
# ● Refresh
#------------------------------------------------------------------------------  
 def refresh(data)
  self.contents.clear
  if @item_max > 0
	 self.contents = Bitmap.new(width - 32, @item_max * 24)
	 for i in 0...@item_max
	    draw_item(i)
	 end
  end
 end

#------------------------------------------------------------------------------
# ● draw_item MAX
#------------------------------------------------------------------------------	
def check_item_max
 @data_max = 0
 for i in $data_enemies
	 next if i == nil or  MOG_MONSTER_BOOK::HIDE_ENEMIES_ID.include?(i.id)
	 @data_max += 1
 end
end
 
#------------------------------------------------------------------------------
# ● draw_item
#------------------------------------------------------------------------------  
 def draw_item(index)
  x = 0
  y = index / col_max  * 24
  n_index = index + 1
  if $game_system.bestiary_defeated[@data[index].id] == nil
	 monster_name = "No Data"
	 defeated = " ---- "
	 change_color(normal_color,false)
  else 
    monster_name = @data[index].name
    change_color(normal_color,true)
  end
  check_item_max
  d = @data_max > 99 ? "%03d" : @data_max > 9 ? "%02d" : "%01d" 
  text = sprintf(d, n_index).to_s  + " - "
  self.contents.draw_text(x,y , 56, 24, text,0)
  self.contents.draw_text(x + 56,y , 140, 24, monster_name,0)
 end
#------------------------------------------------------------------------------
# ● Item Max
#------------------------------------------------------------------------------		
 def item_max
  return @item_max == nil ? 0 : @item_max
 end 

end
#==============================================================================
# ■ Window_Monster_Comp
#==============================================================================
class Window_Monster_Comp < Window_Selectable
 include  MOG_MONSTER_BOOK

 #--------------------------------------------------------------------------
 # ● Initialize
 #--------------------------------------------------------------------------
 def initialize
  super(312,0, 232, 64)
  self.opacity = 255
  self.z = 300
  refresh
  activate
 end

 #--------------------------------------------------------------------------
 # ● Check Completition
 #-------------------------------------------------------------------------- 
 def check_completion
  data_max = 0
  for i in $data_enemies
	  next if i == nil or  MOG_MONSTER_BOOK::HIDE_ENEMIES_ID.include?(i.id)
	  data_max += 1
  end
  comp = 0 
  for i in 0...$game_system.bestiary_defeated.size   
	  comp += 1 if $game_system.bestiary_defeated[i] != nil
  end 
  @completed = COMPLETED_WORD + " " + comp.to_s + "/" + data_max.to_s
 end

 #--------------------------------------------------------------------------
 # ● Refresh
 #-------------------------------------------------------------------------- 
 def refresh
  self.contents.clear
  check_completion
  self.contents.draw_text(0,0, 160, 24, @completed.to_s,0)
 end
end
#==============================================================================
# ■ Monster_Book
#==============================================================================
class Monster_Book

#--------------------------------------------------------------------------
# ● Main
#--------------------------------------------------------------------------		 
def main
 Graphics.transition
 execute_loop
 execute_dispose
end  
#--------------------------------------------------------------------------
# ● Execute Loop
#--------------------------------------------------------------------------		  
def execute_loop
 loop do
    Graphics.update
    Input.update
    update
    break if SceneManager.scene != self
 end
end  

#--------------------------------------------------------------------------
# ● Initialize
#--------------------------------------------------------------------------		 
def initialize
 load_data
 create_window_guide
 create_enemy_sprite
 create_battleback
 @music = [nil,nil,nil]
 refresh_bgm
end  

#------------------------------------------------------------------------------
# ● Initialize
#------------------------------------------------------------------------------	
def load_data
 BattleManager.save_bgm_and_bgs
 @data = []
 for i in $data_enemies
	 next if i == nil or  MOG_MONSTER_BOOK::HIDE_ENEMIES_ID.include?(i.id)
	 @data.push(i)
 end 
end

#--------------------------------------------------------------------------
# ● Execute Dispose
#--------------------------------------------------------------------------		  
def execute_dispose
 Graphics.freeze
 @windows_guide.dispose
 @windows_status.dispose
 if @enemy_sprite.bitmap != nil
    @enemy_sprite.bitmap.dispose
 end
 @enemy_sprite.dispose
 dispose_battleback		  
 @battleback1.dispose
 @battleback2.dispose
 @spriteset.dispose
 @window_comp.dispose
 BattleManager.replay_bgm_and_bgs
end

#--------------------------------------------------------------------------
# ● Dispose_battleback
#--------------------------------------------------------------------------			
def dispose_battleback
 if @battleback1.bitmap != nil
    @battleback1.bitmap.dispose
    @battleback1.bitmap = nil
 end
 if @battleback2.bitmap != nil
    @battleback2.bitmap.dispose
    @battleback2.bitmap = nil
 end  
end
 
#--------------------------------------------------------------------------
# ● Create Window Guide
#--------------------------------------------------------------------------		   
def create_window_guide
 @spriteset = Spriteset_Map.new
 @windows_guide = Window_Monster_List.new(@data)
 @enemy = @data[@windows_guide.index]
 @windows_status = Window_Monster_Status.new(@enemy)
 @window_comp = Window_Monster_Comp.new
 @old_index = @windows_guide.index
 @org_pos = [@windows_guide.x,@windows_guide.y]
 @fade_time = 60
end
 
#--------------------------------------------------------------------------
# ● Create Enemy Sprite
#--------------------------------------------------------------------------			
def create_enemy_sprite
 @enemy_sprite = Sprite.new
 @enemy_sprite.z = 100
 @enemy_sprite_org =  @enemy_sprite.x
 refresh_enemy_sprite
end

#--------------------------------------------------------------------------
# ● Create_Battleback
#--------------------------------------------------------------------------			
def create_battleback
 @battleback1 = Sprite.new
 @battleback1.z = 1
 @battleback1.opacity = 0
 @battleback2 = Sprite.new
 @battleback2.z = 2
 @battleback2.opacity = 0
 @old_battleback = [nil,nil]
 refresh_batteback
end

#--------------------------------------------------------------------------
# ● Update
#--------------------------------------------------------------------------		   
def update
 @windows_guide.update
 update_command
 update_animation
 refresh if @old_index != @windows_guide.index
end

#--------------------------------------------------------------------------
# ● Update Animation
#--------------------------------------------------------------------------			
def update_animation
 update_window_fade_animation
 update_battleback_animation
 update_enemy_sprite_animation
end 

#--------------------------------------------------------------------------
# ● Update Enemy Sprite Animation
#--------------------------------------------------------------------------			 
def update_enemy_sprite_animation
 @enemy_sprite.opacity += 15
 if @enemy_sprite.x < @enemy_sprite_org
    @enemy_sprite.x += 15
    @enemy_sprite.x = @enemy_sprite_org if @enemy_sprite.x > @enemy_sprite_org
 end 
end
 
#--------------------------------------------------------------------------
# ● Update Window Fade Animation
#--------------------------------------------------------------------------			
def update_window_fade_animation
 if @windows_guide.visible
    @windows_guide.opacity += 15
    @windows_guide.contents_opacity += 15	   
    if @windows_guide.y > @org_pos[1]
	   @windows_guide.y -= 25
	   if @windows_guide.y < @org_pos[1]
		  @windows_guide.y = @org_pos[1]
		  @windows_guide.opacity += 255
		  @windows_guide.contents_opacity = 255
	   end
    end			 
 else
    @windows_guide.opacity -= 15
    @windows_guide.contents_opacity -= 15
    if @windows_guide.y < (@windows_guide.height + 416)
	   @windows_guide.y += 25
	   @windows_guide.y = (@windows_guide.height + 416) if @windows_guide.y > (@windows_guide.height + 416)		  
    end	  
   end 
end  

#--------------------------------------------------------------------------
# ● Update Battleback Animation
#--------------------------------------------------------------------------			 
def update_battleback_animation
 if @old_battleback == nil
    @battleback1.opacity -= 10
    @battleback2.opacity -= 10
 else
    @battleback1.opacity += 10
    @battleback2.opacity += 10	
 end 
end
  
#--------------------------------------------------------------------------
# ● Update Command
#--------------------------------------------------------------------------			
def update_command
 if Input.trigger?(Input::B)
    Sound.play_cancel
    SceneManager.return
  elsif Input.trigger?(Input::C)
    Sound.play_ok  
    return
    if @windows_guide.visible
	   @windows_guide.visible = false
    else
	   @windows_guide.visible = true
    end 
 end  
end

#--------------------------------------------------------------------------
# ● Refresh Animation
#--------------------------------------------------------------------------			 
def refresh
 @old_index = @windows_guide.index
 @enemy = @data[@windows_guide.index]
 @windows_status.refresh(@enemy)
 refresh_bgm
 refresh_enemy_sprite
 refresh_batteback
end
 
#--------------------------------------------------------------------------
# ● Refresh Animation
#--------------------------------------------------------------------------			  
def refresh_enemy_sprite
 if @enemy_sprite.bitmap != nil
    @enemy_sprite.bitmap.dispose
    @enemy_sprite.bitmap = nil
 end
 if $game_system.bestiary_defeated[@enemy.id] != nil
    @enemy_sprite.bitmap = Cache.battler(@enemy.battler_name, @enemy.battler_hue)		
    @enemy_sprite_org =  (312/ 2) - (@enemy_sprite.bitmap.width / 2)
    @enemy_sprite.x = -@enemy_sprite.bitmap.width
    @enemy_sprite.y = 272 - @enemy_sprite.bitmap.height
    @enemy_sprite.opacity = 0
 end
end 
#--------------------------------------------------------------------------
# ● BGM Refresh
#--------------------------------------------------------------------------			   
def refresh_bgm
 return unless MOG_MONSTER_BOOK::PLAY_MUSIC
 if $game_system.bestiary_music[@enemy.id] != nil and
    (@music[0] != $game_system.bestiary_music[@enemy.id].name or
	 @music[1] != $game_system.bestiary_music[@enemy.id].volume or
	 @music[2] != $game_system.bestiary_music[@enemy.id].pitch)
	 m = $game_system.bestiary_music[@enemy.id]
	 @music = [m.name, m.volume, m.pitch]
    RPG::BGM.stop
    Audio.bgm_play("Audio/BGM/" +  m.name, m.volume, m.pitch)
 end 
end

#--------------------------------------------------------------------------
# ● Refresh Battleback
#--------------------------------------------------------------------------			   
def refresh_batteback   
 if $game_system.bestiary_battleback[@enemy.id] != nil and
    (@old_battleback[0] != $game_system.bestiary_battleback[@enemy.id][0] or
	 @old_battleback[1] != $game_system.bestiary_battleback[@enemy.id][1])
	  @old_battleback = [$game_system.bestiary_battleback[@enemy.id][0], $game_system.bestiary_battleback[@enemy.id][1]]
	  dispose_battleback
	  @battleback1.opacity = 0
	  @battleback2.opacity = 0
    if $game_system.bestiary_battleback[@enemy.id][0] != nil
	   @battleback1.bitmap = Cache.battleback1($game_system.bestiary_battleback[@enemy.id][0])
    else
	   @battleback1.bitmap = Cache.battleback1("")
    end
    if $game_system.bestiary_battleback[@enemy.id][1] != nil
	   @battleback2.bitmap = Cache.battleback2($game_system.bestiary_battleback[@enemy.id][1])
    else
	   @battleback2.bitmap = Cache.battleback2("")
    end		  
 end 
end

end
if MOG_MONSTER_BOOK::MENU_COMMAND
#==============================================================================
# ■ Window Menu Command
#==============================================================================
class Window_MenuCommand < Window_Command 

#------------------------------------------------------------------------------
# ● Add Main Commands
#------------------------------------------------------------------------------	
 alias mog_bestiary_add_main_commands add_main_commands
 def add_main_commands
  mog_bestiary_add_main_commands
  add_command(MOG_MONSTER_BOOK::MENU_COMMAND_NAME, :bestiary, main_commands_enabled)
 end
end  
#==============================================================================
# ■ Scene Menu
#==============================================================================
class Scene_Menu < Scene_MenuBase

#------------------------------------------------------------------------------
# ● Create Command Windows
#------------------------------------------------------------------------------	  
  alias mog_bestiary_create_command_window create_command_window
  def create_command_window
   mog_bestiary_create_command_window
   @command_window.set_handler(:bestiary,	 method(:Monster_Book))
  end
 
#------------------------------------------------------------------------------
# ● Monster Book
#------------------------------------------------------------------------------	   
  def Monster_Book
   SceneManager.call(Monster_Book)
  end

end  

end
$mog_rgss3_monster_book = true

 

 

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

Guest clyde

 

 

#==============================================================================
# +++ MOG - MONSTER BOOK  (v1.1) +++
#==============================================================================
# By Moghunter
# [url="http://www.atelier-rgss.com/"]http://www.atelier-rgss.com/[/url]
#==============================================================================
# Sistema que permite verificar os parâmetros dos inimigos derrotados,
# o que inclui o battleback e a música de batalha.
#
#==============================================================================
# Para chamar o script use o comando abaixo.
#
# SceneManager.call(Monster_Book)
#
#==============================================================================

#==============================================================================
# ● Histórico (Version History)
#==============================================================================
# v 1.1 - Correção na atualização do battleback em imagens repetidas.
#	   - Correção na execução da música quando o pitch ou volume é diferente.
#	   - Correção no espaço entre os números de parametros.
#==============================================================================

module MOG_MONSTER_BOOK
  #Ocultar inimigos especificos da lista de inimigos.
  HIDE_ENEMIES_ID = [9,10]
  #Ativar a música de batalha.
  PLAY_MUSIC = true
  #Definição da palavra Completado.
  COMPLETED_WORD =  "Completed"
  #Ativar o Monster Book no Menu.
  MENU_COMMAND = true
  #Nome do comando apresentado no menu.
  MENU_COMMAND_NAME = "Bestiary"
end

#==============================================================================
# ■ Game_Temp
#==============================================================================
class Game_Temp
  attr_accessor :bestiary_battleback1_name
  attr_accessor :bestiary_battleback2_name
 
 #--------------------------------------------------------------------------
 # ● Initialize
 #--------------------------------------------------------------------------	  
  alias mog_bestiary_initialize initialize
  def initialize
   @bestiary_battleback1_name = ""
   @bestiary_battleback1_name = ""
   mog_bestiary_initialize
  end
end

#==============================================================================
# ■ Game_System
#==============================================================================
class Game_System

 attr_accessor :bestiary_defeated
 attr_accessor :bestiary_battleback
 attr_accessor :bestiary_music

 #--------------------------------------------------------------------------
 # ● Initialize
 #--------------------------------------------------------------------------	
 alias mog_monster_book_initialize initialize
 def initialize
  @bestiary_defeated = []
  @bestiary_battleback = []
  @bestiary_music = []
  mog_monster_book_initialize
 end

end  

#==============================================================================
# ■ Spriteset_Battle
#==============================================================================
class Spriteset_Battle
 #--------------------------------------------------------------------------
 # ● Initialize
 #--------------------------------------------------------------------------
 alias mog_bestiary_initialize initialize
 def initialize
  mog_bestiary_initialize
  $game_temp.bestiary_battleback1_name = battleback1_name
  $game_temp.bestiary_battleback2_name = battleback2_name
 end

end

#==============================================================================
# ■ Game_Enemy
#==============================================================================
class Game_Enemy < Game_Battler
 attr_accessor :enemy_id

 #--------------------------------------------------------------------------
 # ● Die
 #--------------------------------------------------------------------------
 alias mog_monster_book_die die
 def die
  mog_monster_book_die
  check_monster_book
 end

 #--------------------------------------------------------------------------
 # ● Check Monster Book
 #--------------------------------------------------------------------------  
 def check_monster_book
  if $game_system.bestiary_defeated[@enemy_id] == nil
	 $game_system.bestiary_defeated[@enemy_id] = 0
	 $game_system.bestiary_battleback[@enemy_id] = [$game_temp.bestiary_battleback1_name,$game_temp.bestiary_battleback2_name]
	 $game_system.bestiary_music[@enemy_id] = $game_system.battle_bgm
  end  
  $game_system.bestiary_defeated[@enemy_id] += 1	  
 end  
end  

#==============================================================================
# ■ Window_Monster_Status
#==============================================================================

class Window_Monster_Status < Window_Selectable
 #--------------------------------------------------------------------------
 # ● Initialize
 #--------------------------------------------------------------------------
 def initialize(enemy)
super(0, 288, 544, 128)
self.opacity = 255
self.z = 300
refresh(enemy)
activate
 end

 #--------------------------------------------------------------------------
 # ● Refresh
 #--------------------------------------------------------------------------  
 def refresh(enemy)
  self.contents.clear
  if $game_system.bestiary_defeated[enemy.id] == nil
	 self.contents.draw_text(0,0 , 180, 24, "No Data",0)	
   else
	 change_color(system_color)
	 w_max = 50
	 ex = 16
	 self.contents.draw_text(0,0 , w_max, 24, Vocab::param(0),0)	
	 self.contents.draw_text(0,24 * 1 , w_max, 24, Vocab::param(1),0)
	 self.contents.draw_text(0,24 * 2 , w_max, 24, Vocab::param(2),0)
	 self.contents.draw_text(0,24 * 3 , w_max, 24, Vocab::param(3),0)
	 self.contents.draw_text(128,24 * 0 , w_max, 24, Vocab::param(4),0)
	 self.contents.draw_text(128,24 * 1 , w_max, 24, Vocab::param(5),0)
	 self.contents.draw_text(128,24 * 2 , w_max, 24, Vocab::param(6),0)		
	 self.contents.draw_text(128,24 * 3 , w_max, 24, Vocab::param(7),0)		
	 self.contents.draw_text(256,24 * 0 , w_max, 24, "Exp",0)
	 self.contents.draw_text(384,24 * 0 , w_max, 24, Vocab::currency_unit,0)
	 self.contents.draw_text(256,24 * 1 , w_max, 24, "Treasure",0)		
	 change_color(normal_color,true)
	 w_max2 = 64		
	 #HP
	 self.contents.draw_text(32 + ex,0 , w_max2, 24, enemy.params[0],2)
	 #MP
	 self.contents.draw_text(32 + ex,24 * 1 , w_max2, 24, enemy.params[1],2)
	 #ATK
	 self.contents.draw_text(32 + ex,24 * 2 ,w_max2 , 24, enemy.params[2],2)		
	 #Def
	 self.contents.draw_text(32 + ex,24 * 3 , w_max2, 24, enemy.params[3],2)		
	 #Mag Power
	 self.contents.draw_text(160 + ex,24 * 0 , w_max2, 24, enemy.params[4],2)
	 #Mag Def
	 self.contents.draw_text(160 + ex,24 * 1 , w_max2, 24, enemy.params[5],2)  
	 #Agility
	 self.contents.draw_text(160 + ex,24 * 2 , w_max2, 24, enemy.params[6],2)
	 #Luck
	 self.contents.draw_text(160 + ex,24 * 3 , w_max2, 24, enemy.params[7],2)
	 #EXP
	 self.contents.draw_text(280,24 * 0 , 96, 24, enemy.exp,2)
	 #Gold
	 self.contents.draw_text(400,24 * 0 , 96, 24, enemy.gold,2)
	 #Drop Items
	 tr = 0
	 for i in enemy.drop_items
		next if i.kind == 0
		tr += 1
		tr_name = $data_items[i.data_id] if i.kind == 1
		tr_name = $data_weapons[i.data_id] if i.kind == 2
		tr_name = $data_armors [i.data_id] if i.kind == 3
		draw_icon(tr_name.icon_index, 336, 24 * tr)
		self.contents.draw_text(368,24 * tr , 160, 24, tr_name.name.to_s,0)
	 end	  
  end
 end
end

#==============================================================================
# ■ Window_Monster_List
#==============================================================================
class Window_Monster_List < Window_Selectable

#------------------------------------------------------------------------------
# ● Initialize
#------------------------------------------------------------------------------  
 def initialize(data)
  super(312, 64, 232, 224)
  self.opacity = 255
  self.z = 301
  @index = -1
  @data = data
  @item_max = @data.size
  refresh(data)
  select(0)
  activate
 end

#------------------------------------------------------------------------------
# ● Refresh
#------------------------------------------------------------------------------  
 def refresh(data)
  self.contents.clear
  if @item_max > 0
	 self.contents = Bitmap.new(width - 32, @item_max * 24)
	 for i in 0...@item_max
		draw_item(i)
	 end
  end
 end

#------------------------------------------------------------------------------
# ● draw_item MAX
#------------------------------------------------------------------------------	
def check_item_max
 @data_max = 0
 for i in $data_enemies
	 next if i == nil or  MOG_MONSTER_BOOK::HIDE_ENEMIES_ID.include?(i.id)
	 @data_max += 1
 end
end
  
#------------------------------------------------------------------------------
# ● draw_item
#------------------------------------------------------------------------------  
 def draw_item(index)
  x = 0
  y = index / col_max  * 24
  n_index = index + 1
  if $game_system.bestiary_defeated[@data[index].id] == nil
	 monster_name = "No Data"
	 defeated = " ---- "
	 change_color(normal_color,false)
  else  
	monster_name = @data[index].name
	change_color(normal_color,true)
  end
  check_item_max
  d = @data_max > 99 ? "%03d" : @data_max > 9 ? "%02d" : "%01d"  
  text = sprintf(d, n_index).to_s  + " - "
  self.contents.draw_text(x,y , 56, 24, text,0)
  self.contents.draw_text(x + 56,y , 140, 24, monster_name,0)
 end

#------------------------------------------------------------------------------
# ● Item Max
#------------------------------------------------------------------------------		
 def item_max
  return @item_max == nil ? 0 : @item_max
 end  

end

#==============================================================================
# ■ Window_Monster_Comp
#==============================================================================
class Window_Monster_Comp < Window_Selectable
 include  MOG_MONSTER_BOOK

 #--------------------------------------------------------------------------
 # ● Initialize
 #--------------------------------------------------------------------------
 def initialize
  super(312,0, 232, 64)
  self.opacity = 255
  self.z = 300
  refresh
  activate
 end

 #--------------------------------------------------------------------------
 # ● Check Completition
 #--------------------------------------------------------------------------  
 def check_completion
  data_max = 0
  for i in $data_enemies
	  next if i == nil or  MOG_MONSTER_BOOK::HIDE_ENEMIES_ID.include?(i.id)
	  data_max += 1
  end
  comp = 0  
  for i in 0...$game_system.bestiary_defeated.size	
	  comp += 1 if $game_system.bestiary_defeated[i] != nil
  end  
  @completed = COMPLETED_WORD + " " + comp.to_s + "/" + data_max.to_s
 end

 #--------------------------------------------------------------------------
 # ● Refresh
 #--------------------------------------------------------------------------  
 def refresh
  self.contents.clear
  check_completion
  self.contents.draw_text(0,0, 160, 24, @completed.to_s,0)
 end
end

#==============================================================================
# ■ Monster_Book
#==============================================================================
class Monster_Book

#--------------------------------------------------------------------------
# ● Main
#--------------------------------------------------------------------------		  
def main
 Graphics.transition
 execute_loop
 execute_dispose
end  

#--------------------------------------------------------------------------
# ● Execute Loop
#--------------------------------------------------------------------------		  
def execute_loop
 loop do
	Graphics.update
	Input.update
	update
	break if SceneManager.scene != self
 end
end  

#--------------------------------------------------------------------------
# ● Initialize
#--------------------------------------------------------------------------		  
def initialize
 load_data
 create_window_guide
 create_enemy_sprite
 create_battleback
 @music = [nil,nil,nil]
 refresh_bgm
end  

#------------------------------------------------------------------------------
# ● Initialize
#------------------------------------------------------------------------------	
def load_data
 BattleManager.save_bgm_and_bgs
 @data = []
 for i in $data_enemies
	 next if i == nil or  MOG_MONSTER_BOOK::HIDE_ENEMIES_ID.include?(i.id)
	 @data.push(i)
 end  
end

#--------------------------------------------------------------------------
# ● Execute Dispose
#--------------------------------------------------------------------------		  
def execute_dispose
 Graphics.freeze
 @windows_guide.dispose
 @windows_status.dispose
 if @enemy_sprite.bitmap != nil
	@enemy_sprite.bitmap.dispose
 end
 @enemy_sprite.dispose
 dispose_battleback		  
 @battleback1.dispose
 @battleback2.dispose
 @spriteset.dispose
 @window_comp.dispose
 BattleManager.replay_bgm_and_bgs
end

#--------------------------------------------------------------------------
# ● Dispose_battleback
#--------------------------------------------------------------------------			
def dispose_battleback
 if @battleback1.bitmap != nil
	@battleback1.bitmap.dispose
	@battleback1.bitmap = nil
 end
 if @battleback2.bitmap != nil
	@battleback2.bitmap.dispose
	@battleback2.bitmap = nil
 end  
end
  
#--------------------------------------------------------------------------
# ● Create Window Guide
#--------------------------------------------------------------------------			
def create_window_guide
 @spriteset = Spriteset_Map.new
 @windows_guide = Window_Monster_List.new(@data)
 @enemy = @data[@windows_guide.index]
 @windows_status = Window_Monster_Status.new(@enemy)
 @window_comp = Window_Monster_Comp.new
 @old_index = @windows_guide.index
 @org_pos = [@windows_guide.x,@windows_guide.y]
 @fade_time = 60
end
 
#--------------------------------------------------------------------------
# ● Create Enemy Sprite
#--------------------------------------------------------------------------			
def create_enemy_sprite
 @enemy_sprite = Sprite.new
 @enemy_sprite.z = 100
 @enemy_sprite_org =  @enemy_sprite.x
 refresh_enemy_sprite
end

#--------------------------------------------------------------------------
# ● Create_Battleback
#--------------------------------------------------------------------------			
def create_battleback
 @battleback1 = Sprite.new
 @battleback1.z = 1
 @battleback1.opacity = 0
 @battleback2 = Sprite.new
 @battleback2.z = 2
 @battleback2.opacity = 0
 @old_battleback = [nil,nil]
 refresh_batteback
end

#--------------------------------------------------------------------------
# ● Update
#--------------------------------------------------------------------------			
def update
 @windows_guide.update
 update_command
 update_animation
 refresh if @old_index != @windows_guide.index
end

#--------------------------------------------------------------------------
# ● Update Animation
#--------------------------------------------------------------------------			
def update_animation
 update_window_fade_animation
 update_battleback_animation
 update_enemy_sprite_animation
end  

#--------------------------------------------------------------------------
# ● Update Enemy Sprite Animation
#--------------------------------------------------------------------------			  
def update_enemy_sprite_animation
 @enemy_sprite.opacity += 15
 if @enemy_sprite.x < @enemy_sprite_org
	@enemy_sprite.x += 15
	@enemy_sprite.x = @enemy_sprite_org if @enemy_sprite.x > @enemy_sprite_org
 end  
end
 
#--------------------------------------------------------------------------
# ● Update Window Fade Animation
#--------------------------------------------------------------------------			
def update_window_fade_animation
 if @windows_guide.visible
	@windows_guide.opacity += 15
	@windows_guide.contents_opacity += 15		
	if @windows_guide.y > @org_pos[1]
	   @windows_guide.y -= 25
	   if @windows_guide.y < @org_pos[1]
		  @windows_guide.y = @org_pos[1]
		  @windows_guide.opacity += 255
		  @windows_guide.contents_opacity = 255
	   end
	end			  
 else
	@windows_guide.opacity -= 15
	@windows_guide.contents_opacity -= 15
	if @windows_guide.y < (@windows_guide.height + 416)
	   @windows_guide.y += 25
	   @windows_guide.y = (@windows_guide.height + 416) if @windows_guide.y > (@windows_guide.height + 416)		  
	end	  
end  
end  

#--------------------------------------------------------------------------
# ● Update Battleback Animation
#--------------------------------------------------------------------------			  
def update_battleback_animation
 if @old_battleback == nil
	@battleback1.opacity -= 10
	@battleback2.opacity -= 10
 else
	@battleback1.opacity += 10
	@battleback2.opacity += 10	
 end  
end

#--------------------------------------------------------------------------
# ● Update Command
#--------------------------------------------------------------------------			
def update_command
 if Input.trigger?(Input::B)
	Sound.play_cancel
	SceneManager.return
  elsif Input.trigger?(Input::C)
	Sound.play_ok  
	return
	if @windows_guide.visible
	   @windows_guide.visible = false
	else
	   @windows_guide.visible = true
	end  
 end  
end

#--------------------------------------------------------------------------
# ● Refresh Animation
#--------------------------------------------------------------------------			  
def refresh
 @old_index = @windows_guide.index
 @enemy = @data[@windows_guide.index]
 @windows_status.refresh(@enemy)
 refresh_bgm
 refresh_enemy_sprite
 refresh_batteback
end
 
#--------------------------------------------------------------------------
# ● Refresh Animation
#--------------------------------------------------------------------------			  
def refresh_enemy_sprite
 if @enemy_sprite.bitmap != nil
	@enemy_sprite.bitmap.dispose
	@enemy_sprite.bitmap = nil
 end
 if $game_system.bestiary_defeated[@enemy.id] != nil
	@enemy_sprite.bitmap = Cache.battler(@enemy.battler_name, @enemy.battler_hue)		
	@enemy_sprite_org =  (312/ 2) - (@enemy_sprite.bitmap.width / 2)
	@enemy_sprite.x = -@enemy_sprite.bitmap.width
	@enemy_sprite.y = 272 - @enemy_sprite.bitmap.height
	@enemy_sprite.opacity = 0
 end
end  

#--------------------------------------------------------------------------
# ● BGM Refresh
#--------------------------------------------------------------------------				
def refresh_bgm
 return unless MOG_MONSTER_BOOK::PLAY_MUSIC
 if $game_system.bestiary_music[@enemy.id] != nil and
	(@music[0] != $game_system.bestiary_music[@enemy.id].name or
	 @music[1] != $game_system.bestiary_music[@enemy.id].volume or
	 @music[2] != $game_system.bestiary_music[@enemy.id].pitch)
	 m = $game_system.bestiary_music[@enemy.id]
	 @music = [m.name, m.volume, m.pitch]
	RPG::BGM.stop
	Audio.bgm_play("Audio/BGM/" +  m.name, m.volume, m.pitch)
 end  
end

#--------------------------------------------------------------------------
# ● Refresh Battleback
#--------------------------------------------------------------------------				
def refresh_batteback	
 if $game_system.bestiary_battleback[@enemy.id] != nil and
	(@old_battleback[0] != $game_system.bestiary_battleback[@enemy.id][0] or
	 @old_battleback[1] != $game_system.bestiary_battleback[@enemy.id][1])
	  @old_battleback = [$game_system.bestiary_battleback[@enemy.id][0], $game_system.bestiary_battleback[@enemy.id][1]]
	  dispose_battleback
	  @battleback1.opacity = 0
	  @battleback2.opacity = 0
	if $game_system.bestiary_battleback[@enemy.id][0] != nil
	   @battleback1.bitmap = Cache.battleback1($game_system.bestiary_battleback[@enemy.id][0])
	else
	   @battleback1.bitmap = Cache.battleback1("")
	end
	if $game_system.bestiary_battleback[@enemy.id][1] != nil
	   @battleback2.bitmap = Cache.battleback2($game_system.bestiary_battleback[@enemy.id][1])
	else
	   @battleback2.bitmap = Cache.battleback2("")
	end		  
 end  
end

end

if MOG_MONSTER_BOOK::MENU_COMMAND
#==============================================================================
# ■ Window Menu Command
#==============================================================================
class Window_MenuCommand < Window_Command  

#------------------------------------------------------------------------------
# ● Add Main Commands
#------------------------------------------------------------------------------	
 alias mog_bestiary_add_main_commands add_main_commands
 def add_main_commands
  mog_bestiary_add_main_commands
  add_command(MOG_MONSTER_BOOK::MENU_COMMAND_NAME, :bestiary, main_commands_enabled)
 end
end  

#==============================================================================
# ■ Scene Menu
#==============================================================================
class Scene_Menu < Scene_MenuBase

#------------------------------------------------------------------------------
# ● Create Command Windows
#------------------------------------------------------------------------------	  
  alias mog_bestiary_create_command_window create_command_window
  def create_command_window
   mog_bestiary_create_command_window
   @command_window.set_handler(:bestiary,	 method(:Monster_Book))
  end
 
#------------------------------------------------------------------------------
# ● Monster Book
#------------------------------------------------------------------------------		
  def Monster_Book
   SceneManager.call(Monster_Book)
  end

end  

end

$mog_rgss3_monster_book = true

 

 

 

EDIT:

Ninja'd. Seconda volta in un giorno. Sono depresso.

Edited by clyde
Link to comment
Share on other sites

Luisanl mi spieghi passo passo cosa metti nell'evento? A me funziona una bellezza.

 

Clyde non preoccuparti, passerà ^_^

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

Semplicemente il chiama evento:

SceneManager.call(Monster_Book)

 

e il call detto da te per il primo mostro:

add_enemy_to_bestiary(1)

 

Cosa sbaglio?

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

mmmm metti i comandi in ordine inverso :D

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

da questo errore

http://i42.servimg.com/u/f42/13/12/87/37/errore10.png

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

Spero tu abbia fatto caso che ho inserito due script nel mio post, uno è quello che serve a far funzionare il comando. :D

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

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...