-
Posts
241 -
Joined
-
Last visited
-
Days Won
1
Content Type
Profiles
Forums
Calendar
Posts posted by EmanueleSpeed
-
-
Ho cambiato la trama perchè faceva capire gli argomenti della storia in sè ( in qualche modo ).
Entro qualche giorno vi posto la demo e mi dite meglio cosa c'e da sistemare ^_^
-
Modifica al post
Cambiata la trama
Modifiche al gioco
Ricostruzione della città iniziale
Ricollegamento degli eventi
Modifica Holders Protagonista (capelli corti in battle)
-
Grazie Holy :) sistemo subito
Guardian per capire meglio la battaglia ho girato un video
ecco a te :
-
ho cambiato con questo script
-
a breve inserisco un video, grazie per i vostri commenti mi saranno di aiuto nel migliorare ^_^
Il topic l'ho aperto perchè vi aggiornerò spesso,
sto lavorando al progetto ogni giorno..
un po di pazienza spero di non commettere piu gli stessi errori...
sbagliando si impara :)
Modifiche al gioco
Completamento Storia da 5% --> 6%
Orario di gioco attuale da 1h 20m --> 1h 40m
Modifica grafica vari Holders
Vi posto uno screen della battaglia iniziale:
http://imageshack.us/a/img19/5223/fqq5.jpg
http://imageshack.us/a/img13/4963/w4wf.jpg
-
http://imageshack.com/a/img716/9492/foln.png
http://imageshack.com/a/img691/8909/eam2.png
presenta
http://imageshack.com/a/img822/3961/2v6t.pngTrailer Beta Demo
https://www.youtube.com/watch?v=11hGsZ8gTJI
Pre-Alpha Demo Battle System.
(Cattura e Richiamo - mostri, alleati in battaglia).https://www.youtube.com/watch?v=wQwxXnqm87A&feature=youtu.be
1. Introduzione
Il progetto e nato nell'idea che di giochi jprg stile a turni come i vecchi ff non c'e ne sono più, quindi ho deciso di crearne uno, sperando che piaccia.
2. Storia
Pianeta Erlyna, pianeta prosperoso, la cui prosperità è stata legata ad un libro magico per diversi secoli. Ogni 100 anni il libro veniva utilizzato per rinnovare la fertilità del pianeta. Come ogni secolo, anche questo stava giungendo alla fine. Per questo il re ha convocato i suoi cavalieri per affidargli un compito...Rinnovo totale del gioco, solo la storia già scritta rimarrà uguale.
Aggiornamenti.
Cambiato completamente il sistema di battaglia graficamente.
Pian pianino cambierò anche tutto il resto un rinnovo totale del gioco ^^ .
Mapping
Nuovo video del Mapping
Beta V0.01
https://www.youtube.com/watch?v=eRDovsTchGE
Battaglia
Ecco a voi Screen e Video:
http://imageshack.com/a/img843/2913/lk6g.jpg
http://imageshack.com/a/img191/6357/zve1.jpg
http://imageshack.com/a/img842/4411/ofwa.jpg
http://imageshack.com/a/img835/6271/lvlk.jpg
Menù
Menù Principale V 0.00
http://imageshack.com/a/img197/2128/25ga.jpg
http://imageshack.com/a/img703/9756/g6cv.jpg
http://imageshack.com/a/img841/7681/mh47.jpg
Altri Screen & Video
http://imageshack.com/a/img706/9680/649a.jpghttp://imageshack.com/a/img835/8679/ht4d.jpghttp://imageshack.com/a/img853/5871/awfb.jpghttp://imageshack.com/a/img198/6408/6omb.jpg
______________________________________________________________________________________________________
______________________________________________________________________________________________________
Video & Screen Precedenti
Vecchio Progetto (Non centra nnt con il nuovo)
3. Personaggi
http://imageshack.us/a/img801/6691/qn0a.png
Cheran: Un ragazzo serio di buon cuore, un principiante cavaliere del re, mette in pericolo la sua vita per svolgere le missioni affidate dal re.
http://imageshack.us/a/img22/9818/db24.png
Pixie: Uno Spirito Curatrice, si unisce a Cheran per il suo buon cuore. Ha il compito di aiutarlo nelle situazioni più critiche.
4. Disegni/Fan Art
lavori in corso...
5. Caratteristiche Tecniche/Gameplay
Jrpg a turni
Battle Symphony
Grafica Personaggi : Holders
script presi in giro per il web
lavori in corso...
6. Screenshot
Dialoghi:
http://img9.imageshack.us/img9/7281/vp4o.jpg
http://imageshack.us/a/img18/4085/rsvj.jpg
Battaglia:
http://imageshack.us/a/img594/842/7pja.jpg
http://imageshack.us/a/img513/756/8k8h.jpg
Menù:
http://imageshack.us/a/img818/3746/9dv7.jpg
Video
http://img59.imageshack.us/img59/6370/4vq.gif
7. Demo/Link alla versione giocabile
Per funzionare la demo sono necessari gli RTP installati sul pc
1. Installa gli RTP.
2. Estrai e avvia il gioco.
Qui gli RTP: http://www.rpgmakerweb.com/download/additional/run-time-packages/thankyou-rtp-vx-ace
Qui la demo: http://www.mediafire.com/?zahjwvp51048263 http://imageshack.us/a/img513/6808/v341.gifhttp://imageshack.us/a/img843/873/pkg.gif
8. Crediti Varilavori in corso...
1° Progetto
Completamento Storia 6%
Orario di gioco attuale 1h 40m
__________
Demo Precedenti
Demo/Link alla versione giocabile
Per funzionare la demo sono necessari gli RTP installati sul pc
1. Installa gli RTP.
2. Estrai e avvia il gioco.
Qui gli RTP: http://www.rpgmakerweb.com/download/additional/run-time-packages/thankyou-rtp-vx-ace
Qui la demo: http://www.mediafire.com/download/o62hm8bmz4u997m/Cheran+e+il+libro+magico+Demo+Buona2.exe -
Lo script non era compatibile con battle symphony che utilizzavo,
Risolto diversamente si può chiudere.
-
Ho risolto , cambiando script.
-
Ho controllato , cancellato e rifatto in diversi modi ma non funziona , sono alquanto inesperto non so cosa tocco :(
cmq grz mille ^_^
-
ho provato ma nnt non funziona
-
Ciao ciò che ho trovato io e questa barra http://www.atelier-rgss.com/RGSS/Battle/ACE_BAT16.html
da quel che so funziona in generale su tutti i membri aumentando exp attacco ecc...
non so se sia modificabile.....
Puoi provarla e vedere se nello script si possa modificare..
-
Ho bisogno di un'enorme aiuto, dovrei modificare questo script
#==============================================================================
# +++ MOG - Battle Result (1.4) +++
#==============================================================================
# By Moghunter
# http://www.atelier-rgss.com
#==============================================================================
# Apresentação animada do resultado da batalha.
#==============================================================================
# Arquivos necessários. (Graphics/System)
#
# Result.png
# Result_Layout.png
# Result_Levelup.png
# Result_Levelword.png
# Result_Number_1.png
# Result_Number_2.png
#
#==============================================================================
# Histórico (Version History)
#==============================================================================
# 1.4 - Compatibilidade com o script de pause.
# 1.3 - Melhoria do código e compatibilidade.
# 1.2 - Melhoria do código e compatibilidade.
# - Adição de sons.
# 1.1 - Corrigido o erro de apresentar o Resultado ao fugir ou perder a batalha.
#==============================================================================
module MOG_BATLE_RESULT
#Posição do EXP.
RESULT_EXP_POSITION = [440,80]
#Posição do GOLD.
RESULT_GOLD_POSITION = [476,125]
#Posição da palavra LeveL UP.
RESULT_LEVELWORD_POSITION = [0,0]
#Posição do Level.
RESULT_LEVEL_POSITION = [230,-7]
#Posição dos parâmetros
RESULT_PARAMETER_POSITION = [70,70]
#Posição da janela de skill.
RESULT_NEW_SKILL_POSITION = [240,230]
#Definição da animação de Level UP.
RESULT_LEVELUP_ANIMATION_ID = 37
end
#==============================================================================
# ? Game Temp
#==============================================================================
class Game_Temp
attr_accessor :level_parameter
attr_accessor :level_parameter_old
attr_accessor :result
attr_accessor :battle_end
#--------------------------------------------------------------------------
# ? Initialize
#--------------------------------------------------------------------------
alias mog_result_initialize initialize
def initialize
@level_parameter = []
@level_parameter_old = []
@result = false
@battle_end = false
mog_result_initialize
end
end
#==============================================================================
# ? Game Actor
#==============================================================================
class Game_Actor < Game_Battler
#--------------------------------------------------------------------------
# ? Display_level_up
#--------------------------------------------------------------------------
alias mog_result_display_level_up display_level_up
def display_level_up(new_skills)
if $game_temp.result
$game_temp.level_parameter = [@level,new_skills]
return
end
mog_result_display_level_up(new_skills)
end
end
#==============================================================================
# ? BattleManager
#==============================================================================
module BattleManager
#--------------------------------------------------------------------------
# ? Process Victory
#--------------------------------------------------------------------------
def self.process_victory
play_battle_end_me
replay_bgm_and_bgs
if $mog_rgss3_battle_cry != nil
execute_battle_cry(1, nil, nil)
end
battle_end(0)
SceneManager.return
return true
end
end
#==============================================================================
# ? Spriteset Battle
#==============================================================================
class Scene_Battle < Scene_Base
#--------------------------------------------------------------------------
# ? Dispose
#--------------------------------------------------------------------------
alias mog_battle_result_pre_terminate pre_terminate
def pre_terminate
execute_result if can_enable_battle_result?
mog_battle_result_pre_terminate
end
#--------------------------------------------------------------------------
# ? Can Enable Battle Result?
#--------------------------------------------------------------------------
def can_enable_battle_result?
return false if !$game_troop.all_dead?
return false if $game_party.members.empty?
return false if $game_party.all_dead?
return true
end
#--------------------------------------------------------------------------
# ? Execute Result
#--------------------------------------------------------------------------
def execute_result
@result = Battle_Result.new
if $mog_rgss3_combo_count != nil
$game_temp.combo_time = 0 rescue nil
end
loop do
@result.update
@spriteset.update
Graphics.update
Input.update
break if @result.victory_phase == 10
end
@result.dispose
end
end
#==============================================================================
# ? Battle Result
#==============================================================================
class Battle_Result
include MOG_BATLE_RESULT
attr_accessor :victory_phase
#--------------------------------------------------------------------------
# ? Initialize
#--------------------------------------------------------------------------
def initialize
$game_temp.battle_end = true
$game_temp.result = true
@victory_phase = 0
@victory_wait_duration = 0
@fade_result_window = false
create_victory_sprites
end
#--------------------------------------------------------------------------
# ? Create Victory Sprites
#--------------------------------------------------------------------------
def create_victory_sprites
@result_number = Cache.system("Result_Number_1")
@result_number2 = Cache.system("Result_Number_2")
@result_cw = @result_number.width / 10
@result_ch = @result_number.height / 2
@result2_cw = @result_number2.width / 10
@result2_ch = @result_number2.height / 2
create_victory_text
create_victory_layout
create_victory_exp
create_victory_gold
create_window_treasure
end
#--------------------------------------------------------------------------
# ? Victory Wait ?
#--------------------------------------------------------------------------
def victory_wait?
return false if @victory_wait_duration <= 0
@victory_wait_duration -= 1
return true
end
#--------------------------------------------------------------------------
# ? End Victory
#--------------------------------------------------------------------------
def end_victory
@victory_wait_duration = 10
dispose
end
#--------------------------------------------------------------------------
# ? Create Victory Layout
#--------------------------------------------------------------------------
def create_victory_layout
return if @victory_layout_sprite != nil
@victory_layout_sprite = Sprite.new
@victory_layout_sprite.z = 1001
@victory_layout_sprite.bitmap = Cache.system("Result_Layout")
@victory_layout_sprite.zoom_x = 2.0
@victory_layout_sprite.opacity = 0
end
#--------------------------------------------------------------------------
# ? Create Victory Text
#--------------------------------------------------------------------------
def create_victory_text
return if @victory_sprite != nil
@victory_sprite = Sprite.new
@victory_sprite.z = 1000
@victory_sprite.bitmap = Cache.system("Result")
@victory_sprite.ox = @victory_sprite.width / 2
@victory_sprite.oy = @victory_sprite.height / 2
@victory_sprite.x = @victory_sprite.ox
@victory_sprite.y = @victory_sprite.oy
@victory_sprite.zoom_x = 1.5
@victory_sprite.zoom_y = 1.5
@victory_sprite.opacity = 0
end
end
#==============================================================================
# ? Battle Result
#==============================================================================
class Battle_Result
#--------------------------------------------------------------------------
# ? Dispose
#--------------------------------------------------------------------------
def dispose
$game_temp.result = false
$game_temp.battle_end = false
@victory_sprite.bitmap.dispose
@victory_sprite.dispose
@victory_layout_sprite.bitmap.dispose
@victory_layout_sprite.dispose
@exp_number.bitmap.dispose
@exp_number.dispose
@gold_number.bitmap.dispose
@gold_number.dispose
@result_number.dispose
@window_treasure.dispose
dispose_level_up
@result_number.dispose
@result_number2.dispose
@tr_viewport.dispose
end
#--------------------------------------------------------------------------
# ? Dispose Result Actor Bitmap
#--------------------------------------------------------------------------
def dispose_result_actor_bitmap
return if @result_actor_sprite == nil
return if @result_actor_sprite.bitmap == nil
@result_actor_sprite.bitmap.dispose
end
#--------------------------------------------------------------------------
# ? Dispose Level UP
#--------------------------------------------------------------------------
def dispose_level_up
return if @levelup_layout == nil
@levelup_layout.bitmap.dispose
@levelup_layout.dispose
@levelup_word.bitmap.dispose
@levelup_word.dispose
@result_actor_sprite.bitmap.dispose
@result_actor_sprite.dispose
@parameter_sprite.bitmap.dispose
@parameter_sprite.dispose
@level_sprite.bitmap.dispose
@level_sprite.dispose
if @new_skill_window != nil
@new_skill_window.dispose
end
end
end
#==============================================================================
# ? Battle Result
#==============================================================================
class Battle_Result
#--------------------------------------------------------------------------
# ? Update
#--------------------------------------------------------------------------
def update
if $mog_rgss3_pause != nil
update_pause if MOG_PAUSE::PAUSE_SCENE_BATTLE
end
return if @victory_phase == nil
update_victory_fade if @fade_result_window
return if victory_wait?
case @victory_phase
when 0; update_victory_initial
when 1; update_victory_initial2
when 2; update_victory_initial3
when 3; update_victory_exp
when 4; update_victory_gold
when 5; update_victory_item
when 6; update_victory_levelup
when 9; update_skip_result
end
if Input.trigger?(:C)
if @victory_phase == 10
end_victory
elsif @victory_phase.between?(1,5)
Sound.play_cursor
@victory_phase = 9
end
end
end
#--------------------------------------------------------------------------
# ? Skip Result
#--------------------------------------------------------------------------
def update_skip_result
@victory_sprite.opacity -= 10
@victory_sprite.visible = false
@victory_layout_sprite.opacity += 10
@victory_layout_sprite.zoom_x = 1.00
@gold_number.opacity += 10
@gold_number.zoom_x = 1.00
@gold_number.zoom_y = 1.00
@exp_number.opacity += 10
@exp_number.zoom_x = 1.00
@exp_number.zoom_y = 1.00
@window_treasure.contents_opacity += 10
if @exp_old != @exp_total
@exp_old = @exp_total
refresh_exp_number
end
if @gold_old = @gold_total
@gold_old = @gold_total
refresh_gold_number
end
@window_treasure.x = 0
update_victory_item if @window_treasure.contents_opacity == 255
end
#--------------------------------------------------------------------------
# ? Update Victory Fade
#--------------------------------------------------------------------------
def update_victory_fade
fade_speed = 10
@victory_sprite.opacity -= fade_speed
@victory_layout_sprite.opacity -= fade_speed
@gold_number.opacity -= fade_speed
@exp_number.opacity -= fade_speed
@window_treasure.contents_opacity -= fade_speed
end
#--------------------------------------------------------------------------
# ? Update Victory Initial
#--------------------------------------------------------------------------
def update_victory_initial
@victory_sprite.zoom_x -= 0.01
@victory_sprite.zoom_y -= 0.01
@victory_sprite.opacity += 10
if @victory_sprite.zoom_x <= 1.00
@victory_sprite.zoom_x = 1
@victory_sprite.zoom_y = 1
@victory_sprite.opacity = 255
@victory_phase = 1
@victory_wait_duration = 20
end
end
#--------------------------------------------------------------------------
# ? Update Victory Initial 2
#--------------------------------------------------------------------------
def update_victory_initial2
@victory_sprite.zoom_x += 0.01
@victory_sprite.zoom_y += 0.01
@victory_sprite.opacity -= 10
if @victory_sprite.opacity <= 0
@victory_sprite.zoom_x = 1
@victory_sprite.zoom_y = 1
@victory_sprite.opacity = 0
@victory_phase = 2
end
end
#--------------------------------------------------------------------------
# ? Update Victory Initial 3
#--------------------------------------------------------------------------
def update_victory_initial3
@victory_layout_sprite.zoom_x -= 0.02
@victory_layout_sprite.opacity += 10
if @victory_layout_sprite.zoom_x <= 1.00
@victory_layout_sprite.zoom_x = 1
@victory_layout_sprite.opacity = 255
@victory_phase = 3
end
end
end
#==============================================================================
# ? Battle Result
#==============================================================================
class Battle_Result
#--------------------------------------------------------------------------
# ? Create Victory Exp
#--------------------------------------------------------------------------
def create_victory_exp
@exp_number = Sprite.new
@exp_number.bitmap = Bitmap.new(@result_number.width,@result_ch)
@exp_number.z = 1002
@exp_number.y = RESULT_EXP_POSITION[1]
@exp_number.zoom_x = 2
@exp_number.zoom_y = 2
@exp_total = $game_troop.exp_total
@exp_number.opacity = 0
@exp_old = 0
@exp_ref = ((1 * @exp_total) / 111).truncate rescue nil
@exp_ref = 1 if @exp_ref < 1 or @exp_ref == nil
@exp_ref = 0 if @exp_total == 0
refresh_exp_number
end
#--------------------------------------------------------------------------
# ? Update Victory Exp
#--------------------------------------------------------------------------
def update_victory_exp
update_exp_sprite
update_exp_number
end
#--------------------------------------------------------------------------
# ? Update EXP Sprite
#--------------------------------------------------------------------------
def update_exp_sprite
@exp_number.opacity += 15
if @exp_number.zoom_x > 1.00
@exp_number.zoom_x -= 0.03
@exp_number.zoom_x = 1.00 if @exp_number.zoom_x <= 1.00
end
@exp_number.zoom_y = @exp_number.zoom_x
if (@exp_old >= @exp_total) and @exp_number.zoom_x == 1.00
@victory_phase = 4
Sound.play_cursor
end
end
#--------------------------------------------------------------------------
# ? Refresh Exp Number
#--------------------------------------------------------------------------
def refresh_exp_number
@exp_number.bitmap.clear
draw_result_exp(@exp_old, 0,0)
end
#--------------------------------------------------------------------------
# ? Update Exp_number
#--------------------------------------------------------------------------
def update_exp_number
return if @exp_old == @exp_total
@exp_old += @exp_ref
@exp_old = @exp_total if @exp_old > @exp_total
refresh_exp_number
end
#--------------------------------------------------------------------------
# ? Draw Result EXP
#--------------------------------------------------------------------------
def draw_result_exp(value,x,y)
ncw = @result_cw
nch = @result_ch
number = value.abs.to_s.split(//)
x2 = x - (number.size * ncw)
@exp_number.ox = (number.size * ncw) / 2
@exp_number.oy = @result_ch / 2
@exp_number.x = (RESULT_EXP_POSITION[0] + @result_cw + @exp_number.ox) - (number.size * ncw)
for r in 0..number.size - 1
number_abs = number[r].to_i
nsrc_rect = Rect.new(ncw * number_abs, 0, ncw, nch)
@exp_number.bitmap.blt(x + (ncw * r), y, @result_number, nsrc_rect)
end
end
end
#==============================================================================
# ? Battle Result
#==============================================================================
class Battle_Result
#--------------------------------------------------------------------------
# ? Create Victory Gold
#--------------------------------------------------------------------------
def create_victory_gold
@gold_number = Sprite.new
@gold_number.bitmap = Bitmap.new(@result_number.width,@result_ch)
@gold_number.z = 1002
@gold_number.y = RESULT_GOLD_POSITION[1]
@gold_number.opacity = 0
@gold_number.zoom_x = 2
@gold_number.zoom_y = 2
@gold_total = $game_troop.gold_total
@gold_old = 0
@gold_ref = ((1 * @gold_total) / 111).truncate rescue nil
@gold_ref = 1 if @gold_ref < 1 or @gold_ref == nil
@gold_ref = 0 if @gold_total == 0
$game_party.gain_gold($game_troop.gold_total)
refresh_gold_number
end
#--------------------------------------------------------------------------
# ? Update Victory Gold
#--------------------------------------------------------------------------
def update_victory_gold
update_gold_sprite
update_gold_number
end
#--------------------------------------------------------------------------
# ? Update GOLD Sprite
#--------------------------------------------------------------------------
def update_gold_sprite
@gold_number.opacity += 15
if @gold_number.zoom_x > 1.00
@gold_number.zoom_x -= 0.03
@gold_number.zoom_x = 1.00 if @gold_number.zoom_x <= 1.00
end
@gold_number.zoom_y = @gold_number.zoom_x
if @gold_old >= @gold_total and @gold_number.zoom_x == 1.00
@victory_phase = 5
Sound.play_cursor
end
end
#--------------------------------------------------------------------------
# ? Refresh gold Number
#--------------------------------------------------------------------------
def refresh_gold_number
@gold_number.bitmap.clear
draw_result_gold(@gold_old, 0,0)
end
#--------------------------------------------------------------------------
# ? Update Gold Number
#--------------------------------------------------------------------------
def update_gold_number
return if @gold_old == @gold_total
@gold_old += @gold_ref
@gold_old = @gold_total if @gold_old > @gold_total
refresh_gold_number
end
#--------------------------------------------------------------------------
# ? Draw Result Gold
#--------------------------------------------------------------------------
def draw_result_gold(value,x,y)
ncw = @result_cw
nch = @result_ch
number = value.abs.to_s.split(//)
x2 = x - (number.size * ncw)
@gold_number.ox = (number.size * ncw) / 2
@gold_number.oy = @result_ch / 2
@gold_number.x = (RESULT_GOLD_POSITION[0] + @result_cw + @gold_number.ox) - (number.size * ncw)
for r in 0..number.size - 1
number_abs = number[r].to_i
nsrc_rect = Rect.new(ncw * number_abs, @result_ch, ncw, nch)
@gold_number.bitmap.blt(x + (ncw * r), y, @result_number, nsrc_rect)
end
end
end
#==============================================================================
# ? Battle Result
#==============================================================================
class Battle_Result
#--------------------------------------------------------------------------
# ? Create Window Treasure
#--------------------------------------------------------------------------
def create_window_treasure
@tr_viewport = Viewport.new(-8, 164, 576, 118)
@tr_viewport.z = 1003
@window_treasure = Window_Treasure.new
@window_treasure.viewport = @tr_viewport
end
#--------------------------------------------------------------------------
# ? Update Victory Item
#--------------------------------------------------------------------------
def update_victory_item
@window_treasure.update
@actor_level = []
return if @window_treasure.x != 0 and @victory_phase >= 6
@victory_phase = 6
@result_member_max = $game_party.battle_members.size
@result_member_id = 0
end
end
#==============================================================================
# ? Window Treasure
#==============================================================================
class Window_Treasure < Window_Base
#--------------------------------------------------------------------------
# ? Initialize
#--------------------------------------------------------------------------
def initialize
super(-544,-10, 576, 256)
self.opacity = 0
self.contents_opacity = 0
self.contents.font.size = 24
self.contents.font.bold = true
self.z = 1003
@range_max = 256
@wait_time = 30
@scroll = false
draw_treasure
end
#--------------------------------------------------------------------------
# ? Draw_Treasure
#--------------------------------------------------------------------------
def draw_treasure
contents.clear
t_index = 0
space_x = 540 / 3
$game_troop.make_drop_items.each do |item|
xi = (t_index * space_x) - ((t_index / 3) * (space_x * 3))
yi = (t_index / 3) * 32
$game_party.gain_item(item, 1)
draw_item_name(item,xi, yi, true, 140)
t_index += 1
end
@range_max = (t_index / 3) * 32
@scroll = true if t_index > 12
end
#--------------------------------------------------------------------------
# ? Update
#--------------------------------------------------------------------------
def update
super
self.contents_opacity += 10
if self.x < 0
self.x += 15
if self.x >= 0
self.x = 0
Sound.play_cursor
end
end
if @scroll and self.contents_opacity == 255 and self.x == 0
@wait_time -= 1 if @wait_time > 0
return if @wait_time > 0
self.y -= 1
self.y = 128 if self.y < -@range_max
@wait_time = 30 if self.y == -10
end
end
end
#==============================================================================
# ? Battle Result
#==============================================================================
class Battle_Result
#--------------------------------------------------------------------------
# ? Create Levelup
#--------------------------------------------------------------------------
def create_levelup
if @levelup_layout == nil
@levelup_layout = Sprite.new
@levelup_layout.z = 1000
@levelup_layout.bitmap = Cache.system("Result_Levelup")
end
if @levelup_word == nil
@levelup_word = Sprite.new
@levelup_word.z = 1001
@levelup_word.bitmap = Cache.system("Result_Levelword")
@levelup_word.ox = @levelup_word.bitmap.width / 2
@levelup_word.oy = @levelup_word.bitmap.height / 2
@levelup_word.x = @levelup_word.ox + RESULT_LEVELWORD_POSITION[0]
@levelup_word.y = @levelup_word.oy + RESULT_LEVELWORD_POSITION[1]
end
@levelup_word.blend_type = 1
@levelup_word.zoom_x = 2
@levelup_word.zoom_y = 2
end
#--------------------------------------------------------------------------
# ? Create Parameter Number
#--------------------------------------------------------------------------
def create_parameter_number
if @parameter_sprite == nil
@parameter_sprite = Sprite.new
@parameter_sprite.bitmap = Bitmap.new(250,220)
@parameter_sprite.z = 1001
@parameter_sprite.x = RESULT_PARAMETER_POSITION[0]
@parameter_sprite.y = RESULT_PARAMETER_POSITION[1]
@parameter_sprite.bitmap.font.size = 16
@parameter_sprite.bitmap.font.bold = true
end
refresh_parameter
end
#--------------------------------------------------------------------------
# ? Refresh Parameter
#--------------------------------------------------------------------------
def refresh_parameter
@parameter_animation = 0
@parameter_sprite.bitmap.clear
@parameter_sprite.opacity = 0
@parameter_sprite.x = RESULT_PARAMETER_POSITION[0] - 200
actor_old = $game_temp.level_parameter_old
draw_result_parameter(@actor_result.mhp,actor_old[1],0,28 * 0)
draw_result_parameter(@actor_result.mmp,actor_old[2],0,28 * 1)
draw_result_parameter(@actor_result.atk,actor_old[3],0,28 * 2)
draw_result_parameter(@actor_result.def,actor_old[4],0,28 * 3)
draw_result_parameter(@actor_result.mat,actor_old[5],0,28 * 4)
draw_result_parameter(@actor_result.mdf,actor_old[6],0,28 * 5)
draw_result_parameter(@actor_result.agi,actor_old[7],0,28 * 6)
draw_result_parameter(@actor_result.luk,actor_old[8],0,28 * 7)
end
#--------------------------------------------------------------------------
# ? Draw Result EXP
#--------------------------------------------------------------------------
def draw_result_parameter(value,value2,x,y)
ncw = @result2_cw
nch = @result2_ch
number = value.abs.to_s.split(//)
x2 = x + (number.size * ncw) + 16
for r in 0..number.size - 1
number_abs = number[r].to_i
nsrc_rect = Rect.new(ncw * number_abs, 0, ncw, nch)
@parameter_sprite.bitmap.blt(x + (ncw * r), y, @result_number2, nsrc_rect)
end
value3 = value - value2
par = ""
if value > value2
par = "+"
@parameter_sprite.bitmap.font.color = Color.new(50,255,255)
elsif value < value2
par = ""
@parameter_sprite.bitmap.font.color = Color.new(255,155,100)
end
return if value == value2
@parameter_sprite.bitmap.draw_text(x2,y - 8,100,32,par.to_s + value3.to_s,0)
end
#--------------------------------------------------------------------------
# ? Create Result Actor
#--------------------------------------------------------------------------
def create_result_actor
if @result_actor_sprite == nil
@result_actor_sprite = Sprite.new
@result_actor_sprite.z = 999
end
dispose_result_actor_bitmap
@result_actor_sprite.bitmap = Cache.picture("Actor" + @actor_result.id.to_s)
@result_actor_org = [380 - (@result_actor_sprite.bitmap.width / 2), Graphics.height - @result_actor_sprite.bitmap.height]
@result_actor_sprite.x = @result_actor_org[0] + 200
@result_actor_sprite.y = @result_actor_org[1]
@result_actor_sprite.opacity = 0
end
#--------------------------------------------------------------------------
# ? Check New Skill
#--------------------------------------------------------------------------
def check_new_skill
@new_skills = $game_temp.level_parameter[1]
@new_skills_index = 0
end
#--------------------------------------------------------------------------
# ? Show New Skill
#--------------------------------------------------------------------------
def show_new_skill(start = false)
Sound.play_recovery unless start
@new_skill_window.draw_new_skill(@new_skills[@new_skills_index])
@new_skills_index += 1
if @new_skills_index == @new_skills.size or
@new_skills[@new_skills_index] == nil
@new_skills = nil
end
end
#--------------------------------------------------------------------------
# ? Check Level UP
#--------------------------------------------------------------------------
def check_level_up
if @new_skills != nil and !@new_skills.empty?
show_new_skill
return
end
for battler_id in @result_member_id..@result_member_max
actor_result = $game_party.members[@result_member_id]
$game_temp.level_parameter = [] if $game_temp.level_parameter == nil
$game_temp.level_parameter_old = [] if $game_temp.level_parameter_old == nil
$game_temp.level_parameter.clear
$game_temp.level_parameter_old.clear
$game_temp.level_parameter_old = [actor_result.level,actor_result.mhp,actor_result.mmp,
actor_result.atk, actor_result.def, actor_result.mat, actor_result.mdf, actor_result.agi, actor_result.luk] rescue nil
actor_result.gain_exp($game_troop.exp_total) rescue nil
@result_member_id += 1
@new_skills = nil
@new_skills_index = 0
if $game_temp.level_parameter != nil and !$game_temp.level_parameter.empty?
show_level_result
break
end
end
return if !$game_temp.level_parameter.empty?
@victory_phase = 10 if @result_member_id >= @result_member_max
end
#--------------------------------------------------------------------------
# ? Create Level
#--------------------------------------------------------------------------
def create_level
if @level_sprite == nil
@level_sprite = Sprite.new
@level_sprite.bitmap = Bitmap.new(200,64)
@level_sprite.z = 1002
end
@level_sprite.bitmap.font.size = 48
@level_sprite.bitmap.font.bold = true
@level_sprite.x = RESULT_LEVEL_POSITION[0]
@level_sprite.y = RESULT_LEVEL_POSITION[1]
@level_sprite.bitmap.clear
@level_sprite.bitmap.font.color = Color.new(255,255,255)
@level_sprite.bitmap.draw_text(0,0,100,64,@actor_result.level,1)
levelup = @actor_result.level - $game_temp.level_parameter_old[0]
@level_sprite.bitmap.font.color = Color.new(50,255,255)
@level_sprite.bitmap.font.size = 18
@level_sprite.bitmap.draw_text(80,0,100,64,"+" + levelup.to_s ,0)
end
#--------------------------------------------------------------------------
# ? Create New Skill Windos
#--------------------------------------------------------------------------
def create_new_skill_window
if @new_skill_window == nil
@new_skill_window = Window_Result_Skill.new
end
@new_skill_window.x = RESULT_NEW_SKILL_POSITION[0]
@new_skill_window.y = RESULT_NEW_SKILL_POSITION[1]
check_new_skill
if @new_skills != nil and !@new_skills.empty?
show_new_skill
else
@new_skill_window.x = -544
end
end
#--------------------------------------------------------------------------
# ? Show Level Result
#--------------------------------------------------------------------------
def show_level_result
Sound.play_cursor
@actor_result = $game_party.members[@result_member_id - 1] rescue nil
return if @actor_result == nil
@actor_result.animation_id = RESULT_LEVELUP_ANIMATION_ID
@fade_result_window = true
create_levelup
create_level
create_parameter_number
create_result_actor
create_new_skill_window
end
end
#==============================================================================
# ? Battle Result
#==============================================================================
class Battle_Result
#--------------------------------------------------------------------------
# ? Update Victory Item
#--------------------------------------------------------------------------
def update_victory_levelup
check_level_up if Input.trigger?(:C)
update_show_levelup
if @levelup_layout == nil
@window_treasure.update
else
@window_treasure.contents_opacity -= 15
end
end
#--------------------------------------------------------------------------
# ? Update Show Level UP
#--------------------------------------------------------------------------
def update_show_levelup
return if @levelup_layout == nil
return if @result_actor_sprite == nil
@new_skill_window.update
if @result_actor_sprite.x > @result_actor_org[0]
@result_actor_sprite.x -= 5
@result_actor_sprite.opacity += 7
if @result_actor_sprite.x <= @result_actor_org[0]
@result_actor_sprite.x = @result_actor_org[0]
@result_actor_sprite.opacity = 255
end
end
if @levelup_word.zoom_x > 1.00
@levelup_word.zoom_x -= 0.03
if @levelup_word.zoom_x < 1.00
@levelup_word.zoom_x = 1.00
@levelup_word.blend_type = 0
end
end
@levelup_word.zoom_y = @levelup_word.zoom_x
if @parameter_sprite.x < RESULT_PARAMETER_POSITION[0]
@parameter_sprite.opacity += 13
@parameter_sprite.x += 5
if @parameter_sprite.x >= RESULT_PARAMETER_POSITION[0]
@parameter_sprite.opacity = 255
@parameter_sprite.x = RESULT_PARAMETER_POSITION[0]
end
end
end
end
#==============================================================================
# ? Window Result Skill
#==============================================================================
class Window_Result_Skill < Window_Base
#--------------------------------------------------------------------------
# ? Initialize
#--------------------------------------------------------------------------
def initialize
super(0,0, 270, 58)
self.opacity = 160
self.contents_opacity = 255
self.contents.font.name = "Arial"
self.contents.font.bold = true
self.z = 1003
@animation_time = 999
@org = [MOG_BATLE_RESULT::RESULT_NEW_SKILL_POSITION[0],MOG_BATLE_RESULT::RESULT_NEW_SKILL_POSITION[1]]
end
#--------------------------------------------------------------------------
# ? DrawNew Skill
#--------------------------------------------------------------------------
def draw_new_skill(skill)
contents.clear
self.contents.font.size = 16
self.contents.font.color = Color.new(100,200,100)
contents.draw_text(0,0,100,32, "New Skill",0)
self.contents.font.color = Color.new(255,255,255)
draw_item_name_skill(skill,70,0, true, 170)
self.x = @org[0]
self.y = @org[1]
@animation_time = 0
self.opacity = 0
self.contents_opacity = 0
end
#--------------------------------------------------------------------------
# ? Draw Item Name
#--------------------------------------------------------------------------
def draw_item_name_skill(item, x, y, enabled = true, width = 172)
return unless item
draw_icon(item.icon_index, x, y, enabled)
change_color(normal_color, enabled)
draw_text(x + 24, y + 4, width, line_height, item.name)
end
#--------------------------------------------------------------------------
# ? Update
#--------------------------------------------------------------------------
def update
super
return if @animation_time == 999
@animation_time += 1 if @animation_time != 999
case @animation_time
when 0..30
self.y -= 1
self.opacity += 5
self.contents_opacity += 5
when 31..60
self.y += 1
self.opacity += 5
self.contents_opacity += 5
else
self.y = @org[1]
self.opacity = 255
self.contents_opacity = 255
@animation_time = 999
end
end
end
$mog_battle_result = truelink script originale :
Praticamente vorrei eliminare tutto e lasciare solamente il lv up a fine battaglia , si puo fare? help me pls
-
Ciao a tutti allora ho un problema cn lo script Battle Summon di Tsukihime questo http://www.rpgmakervxace.net/topic/3934-battle-summon/
Praticamente creo la skill summon(nel database) nello script inserisco il numero della skill
Tramite evento dono al main l'evocazione add_actor_summon(actor_id)
in battaglia utilizzo la skill summon si apre evoco la summon ma non appare in battaglia
come posso risolvere? :(
Ho provato ad evocarlo tramite skill inserendo evento summon_battler(summon_id)
L'evocazione appare però a fine battaglia non me la ritrovo piu.
ho provato in diversi modi ma non riesco :(
Help me pls
-
Ciao
io per adesso ho trovato 2 bestiari
1. Bisba94#===============================================================================
# Titolo: B94 - Bestiario
# Versione: 1.0
# Autore: Bisba94
#-------------------------------------------------------------------------------
# Riepilogo versioni:
# - 1.0 (23/07/13) Realase iniziale
#-------------------------------------------------------------------------------
# Condizioni d'uso:
# - Siete liberi di utilizzare questo script in qualunque progetto commerciale o
# non commerciale, chiedo solo di essere citato fra i Crediti.
# - Siete liberi di pubblicare questo script su qualunque community a patto che
# vengano citati l'autore e la provenienza
# - Lo Script può essere modificato per utilizzo personale e pubblicato nella
# nuova versione a patto che vengano citati l'autore del lavoro originale e la provenienza
#-------------------------------------------------------------------------------
# Istruzioni:
# - Incollare sotto Materials prima di Main
# - Apparirà una nuova voce nel menù per accedere al Bestiario (è possibile rimuoverla)
# - Modificate le impostazioni fin dove è segnato, non modificate nulla dello
# script se non sapete cosa state facendo.
#-------------------------------------------------------------------------------
# Contatti:
# - Per qualunque informazione, segnalazione, richiesta o altro scrivete a:
# bisba1994@live.it
#===============================================================================
$imported = {} if $imported.nil? # Non modificare queste linee
$imported["B94-Bestiario"] = true # Non modificare queste linee
module Bestiario
# PARTE MODIFICABILE
MENU_COMMAND = "Bestiario" # Nome del Comando che apparirà nel menù
SWITCH_MENU_ATTIVATO = 0 # Switch per attivare il comando nel menù
# (se si imposta 0 è sempre attivo)
ESCLUSI = [1] # Lista dei mostri esclusi dal Bestiario
# Liste dei mostri appartenenti a categorie speciali
MOSTRI_SPECIALI = {:rari => [10,20,24,27],
:boss => [19,23,25,29],
:speciali => [30]
} # NON CANCELLARE
# Numero di cifre della lista di mostri divisi per categorie
CIFRE_MAX = { :comuni => 2,
:rari => 2,
:boss => 1,
:speciali => 1
} # NON CANCELLARE
# Nomi delle categorie
NOME_CATEGORIA = { :comuni => "Comuni",
:rari => "Rari",
:boss => "Boss",
:speciali => "Speciali"
} # NON CANCELLARE
SCONOSCIUTO = "?????????" # Nome visualizzato per i mostri non ancora sconfitti
# Icone degli elementi da visualizzare nel bestiario
ICONE_ELEMENTI = {3 => 96,
4 => 97,
5 => 98,
6 => 99,
7 => 100,
8 => 101,
9 => 102,
10 => 103
} # NON CANCELLARE
CONFRONTO_STAT = true # true: mostra una barra che si riempie al crescere delle statistiche
#Colore barre delle statistiche.
# 'Statistica' => id colore
# 0: PV 1: PM 2: ATT 3: DIF 4: ATTM 5: DIFM 6: AGI 7: FORT
COLORE_STATISTICHE = { 0=>0, 1=> 1, 2=>2, 3=>3, 4=>4, 5=>5, 6=>6, 7=>7}
COLORE_RESISTENZA = 10 # Colore attribuito alle resistenze del mostro
COLORE_DEBOLEZZA = 11 # Colore attribuito alle debolezze del mostro
COLORE_NULLO = 7 # Colore attribuito agli elementi che provocano danni nulli
COLORE_CAP = 11 # Colore numero mostri sconfitti massimo
COLORE_BARRA1 = 4 # Colore iniziale barra di completamento
COLORE_BARRA2 = 12 # Colore finale barra di completamento
SWITCH_COMPLETAMENTO = 1 # Switch che quando è ON attiva la visualizzazione delle
# statistiche di completamento del Bestiario (Lista di tutti
# i mostri e percentuale di completamento). Se impostata su 0
# la visualizzazione sarà sempre attiva.
NOME_SPRITE = "" # Testo aggiuntivo per inidicare gli sprite dei nemici che
# appariranno nel bestiario.
# ES: inserendo "_B" il programma cercherà nella cartella battlers
# il file "Mostro_B" invece di "Mostro" usato dal database
MOSTRA_INCONTRI = true # true: mostra il numero di nemici sconfitti
# Limite dei nemici sconfitti visualizzati
# se è 0 il numero sarà illimitato
CAP_SCONFITTI = { :comuni => 5,
:rari => 3,
:boss => 1,
:speciali => 1
} # NON CANCELLARE
SCONFITTI = "Sconfitti" # Testo per i nemici sconfitti
EXP_NAME = "Esperienza" # Testo per il nome dei punti esperienza
TOT_INCONTRATI = "Mostri Incontrati"
TOT_SCONFITTI = "Mostri Sconfitti"
TOT_DANNI = "Danni Inflitti"
# Lista dei titolo ottenibili
# no. % col titolo
TITOLI = { 1 => [ 0, 1, "Principiante"],
2 => [ 20, 2, "Intermedio"],
3 => [ 50, 3, "Esperto"],
4 => [ 80, 4, "Maestro"],
5 => [100, 5, "IL Cacciatore"]
} # NON CANCELLARE
# FINE PARTE MODIFICABILE!!
def self.create_enemies_array
mostri = []
for i in 1...$data_enemies.length
if ESCLUSI.include?(i)
mostri = nil
else
mostri.push($data_enemies.id)
end
end
return mostri
end
end
#===============================================================================
# Window_Bestairy_Category (Nuova Classe)
#===============================================================================
class Window_Bestiary_Category < Window_HorzCommand
def initialize
super(0,0)
end #initialize
def window_width
Graphics.width
end #window_width
def update
super
@list_window.category = current_symbol if @list_window
end #update
def make_command_list
add_command(Bestiario::NOME_CATEGORIA[:comuni], :comuni)
add_command(Bestiario::NOME_CATEGORIA[:rari], :rari)
add_command(Bestiario::NOME_CATEGORIA[:boss], :boss)
add_command(Bestiario::NOME_CATEGORIA[:speciali], :speciali)
end #make_command_list
def list_window=(list_window)
@list_window = list_window
update
end #list_window=
end #Window_Bestiary_Category
#===============================================================================
# Window_Bestiary_List (Nuova Classe)
#===============================================================================
class Window_Bestiary_List < Window_Command
include Bestiario
def initialize(symbol)
@symbol = symbol
super(0,48)
end #initialize
def window_width
return Graphics.width / 2
end #window_width
def window_height
return Graphics.height - 48
end #window_height
def category=(symbol)
return if @symbol == symbol
@symbol = symbol
refresh
self.index = 0
end #category=
def enemy_name(index)
enemy = $data_enemies[index]
return enemy.name
end #enemy_name
def id_for_list(index)
return @enemies[index]
end #id_for_list
def select_symbol
if @symbol == :comuni
no_common = MOSTRI_SPECIALI[:rari] + MOSTRI_SPECIALI[:boss] + MOSTRI_SPECIALI[:speciali]
remove_enemies(no_common)
else
mantain_enemies
end #if
end #select_symbol
def remove_enemies(no_common)
@enemies.each_index do |i|
@enemies = nil if no_common.include?(i)
end #do
end #remove_enemies
def mantain_enemies
@enemies.each_index do |i|
@enemies = nil if !(MOSTRI_SPECIALI[@symbol].include?(i))
end #do
end #mantain_enemies
def make_command_list
@enemies = Bestiario.create_enemies_array
select_symbol
@enemies.compact!
n = 0
@enemies.each_index do |i|
@enemies = nil if !$game_party.incontrato?(@enemies) and !$game_switches[sWITCH_COMPLETAMENTO] and SWITCH_COMPLETAMENTO != 0
next if @enemies == nil
n += 1
num = zeri(n)
enabled = $game_party.sconfitto?(@enemies)
$game_party.incontrato?(@enemies) ? name = enemy_name(@enemies) : name = SCONOSCIUTO
add_command(num + ": " + name, :mostro, enabled)
end #do
@enemies.compact!
end #make_command_list
def zeri(i)
istr = i.to_s
until istr.size >= CIFRE_MAX[@symbol]
istr = "0" + istr
end #until
return istr
end #zeri
end #Window_Bestiary_List
#===============================================================================
# Window_Bestiary_Progress (Nuova Classe)
#===============================================================================
class Window_Bestiary_Progress < Window_Base
include Bestiario
def initialize
@sconfitti = 0
@tot_sconfitti = 0
@percentuale = 0
# @danni = 0
@incontrati = 0
@tot_incontrati = 0
super(window_width, 48, window_width, window_height)
totale_mostri_sconfitti
draw_completamento
draw_horz_line(0,line_height*3, window_width - 24)
draw_info_inutili(0, line_height*4)
draw_horz_line(0,line_height*9, window_width - 24)
draw_titolo(0,line_height*10)
end #initialize
def draw_completamento
change_color(system_color)
draw_text(0,0,window_width - 24, line_height, "Completamento")
change_color(normal_color)
contents.fill_rect(0,(line_height*2) + 2, window_width - 24, line_height - 4, Color.new(0,0,0,200))
contents.fill_rect(2,(line_height*2) + 4, window_width - 28, line_height - 8, Color.new(0,0,0,80))
if $game_switches[sWITCH_COMPLETAMENTO] or SWITCH_COMPLETAMENTO == 0
draw_text(0,0,window_width - 24, line_height, sprintf("%.2f%", @percentuale), 2)
bar_w = ((@percentuale / 100) * (window_width - 28)).to_i
contents.gradient_fill_rect(2, (line_height*2) + 4, bar_w, line_height - 8, text_color(COLORE_BARRA1), text_color(COLORE_BARRA2))
draw_text(0,line_height*1,window_width - 24, line_height, @sconfitti.to_s + "/" + @max.to_s, 2)
else
draw_text(0,0,window_width - 24, line_height, "??? %", 2)
draw_text(0,line_height*1,window_width - 24, line_height, @sconfitti.to_s + "/" + @incontrati.to_s, 2)
end #if
end #draw_completamento
def draw_info_inutili(x, y)
change_color(system_color)
draw_text(x,y,window_width - 24, line_height, TOT_INCONTRATI)
draw_text(x,y + (line_height)*2,window_width - 24, line_height, TOT_SCONFITTI)
# draw_text(x,y + (line_height)*4,window_width - 24, line_height, TOT_DANNI)
change_color(normal_color)
draw_text(x,y + line_height,window_width - 24, line_height, @tot_incontrati,2)
draw_text(x,y + (line_height)*3,window_width - 24, line_height, @tot_sconfitti,2)
# draw_text(x,y + (line_height)*5,window_width - 24, line_height, @danni,2)
end #draw_info_inutili
def draw_titolo(x,y)
change_color(system_color)
draw_text(x,y,window_width - 24, line_height, "Titolo:")
TITOLI.each_key do |i|
next if @percentuale < TITOLI[0]
change_color(text_color(TITOLI[1]))
@tit = TITOLI[2]
end
draw_text(x,y + (line_height*1.5),window_width - 24, line_height, @tit, 1)
end #draw_titolo
def totale_mostri_sconfitti
mostri = Bestiario.create_enemies_array
mostri.compact!
@max = mostri.size
mostri.each do |i|
@sconfitti += 1 if $game_party.sconfitto?(i)
@incontrati += 1 if $game_party.incontrato?(i)
@tot_sconfitti += $game_party.conta_sconfitti(i) if $game_party.sconfitto?(i)
@tot_incontrati += $game_party.conta_incontrati(i) if $game_party.incontrato?(i)
end #do
@percentuale = (@sconfitti.to_f * 100) / @max
end #totale_mostri_sconfitti
def draw_horz_line(x, y, length)
line_y = y + line_height / 2 - 1
contents.fill_rect(x, line_y, length, 2, line_color)
end #draw_horz_line
def line_color
color = text_color(0)
color.alpha = 80
return color
end #line_color
def window_width
Graphics.width / 2
end #window_width
def window_height
Graphics.height - 48
end #window_height
end #Window_Bestiary_Progress
#===============================================================================
# Window_Monster_Page (Nuova Classe)
#===============================================================================
class Window_Monster_Page < Window_Selectable
include Bestiario
def initialize(id, symbol)
super(window_x,window_y, window_width, window_height)
create_enemy_array
@id = id
@symbol = symbol
draw_block1(0,0)
draw_horz_line(0, line_height, line_width)
draw_horz_line(0, line_height * 9.5, window_width - 24)
draw_block2(0, line_height)
end #initialize
def create_enemy_array
@enemies = []
for i in 0...$data_enemies.length
@enemies.push($data_enemies)
end #for
end #create_enemy_array
def draw_block1(x, y)
draw_name(x, y)
draw_stat(x, y + (line_height*1.5))
draw_sprite(x + line_width + 12, y)
end #draw_block1
def draw_block2(x, y)
draw_elements(x, y*10)
draw_loot(x, y*11)
end #draw_block2
def draw_name(x, y)
contents.fill_rect(x, y, line_width, line_height, Color.new(0,0,0,60))
change_color(normal_color)
draw_text(x, y, line_width, line_height, @enemies[@id].name)
end #draw_name
def draw_stat(x,y)
for i in 0..7
draw_param(x, y + (line_height*i), i)
end #for
end #draw_stat
def draw_param(x, y, param_id)
contents.fill_rect(x, y, line_width, line_height - 4, Color.new(0,0,0,60))
if CONFRONTO_STAT
contents.fill_rect(x, y + line_height - 6, line_width, 2, Color.new(0,0,0,180)) if param_id > 1
media = calcola_media
percentage = (@enemies[@id].params[param_id] * (line_width*0.67)) / media
percentage = line_width if percentage > line_width
contents.fill_rect(x, y + line_height - 6, percentage, 2, text_color(param_id + 2)) if param_id > 1
contents.fill_rect(x, y + line_height - 6, line_width, 2, text_color(param_id + 2)) if param_id <= 1
end #if
change_color(system_color)
draw_text(x, y, line_width, line_height, Vocab::param(param_id))
change_color(normal_color)
draw_text(x, y, line_width, line_height, @enemies[@id].params[param_id], 2)
end #draw_param
def calcola_media
media = 0
for i in 2..7
media += @enemies[@id].params
end #for
media = media / 6
return media
end #calcola_media
def draw_sprite(x,y)
contents.fill_rect(x, y, line_width, line_height * 9.5, Color.new(0,0,0,60))
view_x = x + window_x + 12
view_y = y + window_y + 12
viewport = Viewport.new(view_x,view_y,line_width, line_height * 9.5)
viewport.z = 150
@battler = Sprite.new(viewport)
@battler.bitmap = Cache.battler(@enemies[@id].battler_name + NOME_SPRITE, @enemies[@id].battler_hue)
@battler.ox = @battler.width/ 2
@battler.x = line_width / 2
@battler.oy = @battler.height / 2
@battler.y = (line_height * 9.5) / 2
(@battler.zoom_x -= 0.05 and @battler.zoom_y -= 0.05) until (@battler.width*@battler.zoom_x) <= line_width and (@battler.height*@battler.zoom_y) <= line_height * 9.5
draw_incontri(x) if MOSTRA_INCONTRI
end #draw_sprite
def close
@battler.dispose
super
end #close
def draw_incontri(x)
change_color(system_color)
draw_text(window_width - 24 - line_width, line_height*8.5, line_width, line_height, SCONFITTI)
if calcola_sconfitti >= CAP_SCONFITTI[@symbol] and CAP_SCONFITTI[@symbol] != 0
change_color(text_color(COLORE_CAP))
draw_text(window_width - 24 - line_width, line_height*8.5, line_width, line_height, CAP_SCONFITTI[@symbol], 2)
else
change_color(normal_color)
draw_text(window_width - 24 - line_width, line_height*8.5, line_width, line_height, calcola_sconfitti.to_s + "/" + calcola_incontrati.to_s, 2)
end #if
end #draw_incontri
def calcola_sconfitti
return $game_party.conta_sconfitti(@id)
end #calcola_sconfitti
def calcola_incontrati
return $game_party.conta_incontrati(@id)
end #calcola_incontrati
def draw_elements(x,y)
width = (window_width - 24) / ICONE_ELEMENTI.length
ICONE_ELEMENTI.each_key do |i|
current_x = 1 + x + (width * (i-3))
contents.fill_rect(current_x, y, width - 2, line_height - 2, Color.new(0,0,0,60))
draw_icon(ICONE_ELEMENTI, current_x, y)
value = element_rate(i)
change_color(normal_color)
change_color(text_color(COLORE_RESISTENZA)) if value < 1.0
change_color(text_color(COLORE_NULLO)) if value == 0.0
change_color(text_color(COLORE_DEBOLEZZA)) if value > 1.0
draw_text(current_x, y, width, line_height, sprintf("%d%", value*100), 2)
end #do
end #draw_elements
def draw_loot(x,y)
width = (window_width - 24) / max_loot
contents.fill_rect(x + 1, y, width - 2, line_height - 2, Color.new(0,0,0,60))
change_color(system_color)
draw_text(x + 1, y, width - 2, line_height - 2, EXP_NAME + ":")
change_color(normal_color)
draw_text(x + 1, y, width - 2, line_height - 2, @enemies[@id].exp, 2)
contents.fill_rect(x + 1 + width, y, width - 2, line_height - 2, Color.new(0,0,0,60))
change_color(system_color)
draw_text(x + 1 + width, y, width - 2, line_height - 2, Vocab.currency_unit + ":")
change_color(normal_color)
draw_text(x + 1 + width, y, width - 2, line_height - 2, @enemies[@id].gold, 2)
end #draw_loot
def max_loot
return 2
end #max_loot
def element_rate(i)
element = 1.0
@enemies[@id].features.each do |f|
if f.code == 11
element = f.value if f.data_id == i
end #if
end #do
return element
end #element_rate
def draw_horz_line(x, y, length)
line_y = y + line_height / 4 - 1
contents.fill_rect(x, line_y, length, 2, line_color)
end #draw_horz_line
def line_color
color = text_color(0)
color.alpha = 80
return color
end #line_color
def line_width
(window_width - 36) / 2
end #line_width
def window_width
Graphics.width - 32
end #window_width
def window_height
return 24 + (line_height * 12)
end #window_height
def window_y
(Graphics.height - window_height) / 2
end #window_y
def window_x
(Graphics.width - window_width) / 2
end #window_x
end #Window_Monster_Page
#===============================================================================
# Scene_Bestiary (Nuova Classe)
#===============================================================================
class Scene_Bestiary < Scene_Base
def initialize
super
@category = :comuni
@id = 0
create_bestiary_list
create_bestiary_progress
create_bestiary_category
end #initialize
def create_bestiary_list
@list_window = Window_Bestiary_List.new(@category)
@list_window.activate
@list_window.set_handler(:mostro, method(:disegna_mostro))
@list_window.set_handler(:cancel, method(:return_scene))
end #create_bestiary_list
def create_bestiary_category
@category_window = Window_Bestiary_Category.new
@category_window.activate
@category_window.list_window = @list_window
end #create_bestiary_category
def disegna_mostro
@category = @category_window.current_symbol
@id = @list_window.index
@category_window.deactivate
@list_window.deactivate
index = @list_window.id_for_list(@id)
crea_pagina_mostro(index)
end #disegna_mostro
def crea_pagina_mostro(index)
@monster_window = Window_Monster_Page.new(index, @category)
@monster_window.back_opacity = 255
@monster_window.activate
@monster_window.set_handler(:ok, method(:return_list))
@monster_window.set_handler(:cancel, method(:return_list))
end #crea_pagina_mostro
def return_list
@monster_window.close
@category_window.activate
@list_window.activate
end #return_list
def create_bestiary_progress
@progress_window = Window_Bestiary_Progress.new
end #create_bestiary_progress
end #Scene_Bestiary
#===============================================================================
# Game_Party
#-------------------------------------------------------------------------------
# alias: initialize
# new method: sconfitto?
# new method: conta_sconfitti
# new method: mostro_sconfitto
#===============================================================================
class Game_Party < Game_Unit
alias initialize_bestiario initialize
def initialize
@sconfitto = []
@contatore_kill = []
@incontrato = []
@contatore_incontri = []
@kill_totali = 0
@incontri_totali = 0
initialize_bestiario
end #initialize
def sconfitto?(i)
return true if @sconfitto == true
return false
end #sconfitto?
def incontrato?(i)
return true if @incontrato == true
return false
end #incontrato?
def conta_sconfitti(i)
contatore = @contatore_kill
contatore = 0 if contatore.nil?
return contatore
end #conta_sconfitti
def conta_incontrati(i)
contatore = @contatore_incontri
contatore = 0 if contatore.nil?
return contatore
end #conta_incontrati
def mostro_sconfitto(i)
@contatore_kill = 0 if @contatore_kill.nil?
@contatore_kill += 1
@kill_totali += 1
@sconfitto = true
end #mostro_sconfitto
def mostro_incontrato(i)
@contatore_incontri = 0 if @contatore_incontri.nil?
@contatore_incontri += 1
@incontri_totali += 1
@incontrato = true
end #mostro_incontrato
end #Game_Party
#===============================================================================
# BattleManager
#-------------------------------------------------------------------------------
# alias: battle_end
#===============================================================================
class << BattleManager
alias setup_bestiario setup
def setup(troop_id, can_escape = true, can_lose = false)
setup_bestiario(troop_id, can_escape, can_lose)
$game_troop.members.each {|i| $game_party.mostro_incontrato(i.enemy_id)}
end #setup
alias battle_end_bestiario battle_end
def battle_end(result)
$game_troop.dead_members.each {|i| $game_party.mostro_sconfitto(i.enemy_id)}
battle_end_bestiario(result)
end #battle_end
end #BattleManager
class Game_ActionResult
alias initialize_bestiario initialize
def initialize(battler)
initialize_bestiario(battler)
@total_damage = 0
end
alias make_damage_bestiario make_damage
def make_damage(value, item)
make_damage_bestiario(value, item)
@total_damage += @hp_damage
end
def total_damage
return @total_damage
end
end
#===============================================================================
# Window_MenuCommand
#-------------------------------------------------------------------------------
# alias: add_original_commands
#===============================================================================
class Window_MenuCommand < Window_Command
alias add_original_commands_bestiario add_original_commands
def add_original_commands
add_original_commands_bestiario
add_command(Bestiario::MENU_COMMAND, :bestiary) if $game_switches[bestiario::SWITCH_MENU_ATTIVATO] or Bestiario::SWITCH_MENU_ATTIVATO == 0
end #add_original_commands
end #Window_MenuCommand
#===============================================================================
# Scene_Menu
#-------------------------------------------------------------------------------
# alias: create_command_window
# new method: command_bestiary
#===============================================================================
class Scene_Menu < Scene_MenuBase
alias create_command_window_bestiary create_command_window
def create_command_window
create_command_window_bestiary
@command_window.set_handler(:bestiary, method(:command_bestiary))
end #create_command_window
def command_bestiary
SceneManager.call(Scene_Bestiary)
end #command_bestiary
end #Scene_Menu2.Moghunter
#==============================================================================
# +++ MOG - MONSTER BOOK (v1.4) +++
#==============================================================================
# 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.4 - Correção do Crash quando não há definição de música de batalha.
# v 1.3 - Correção do Crash aleatório.
# v 1.2 - Melhoria no sistema de dispose.
# 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 != 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
execute_dispose
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
return if @windows_guide == nil
Graphics.freeze
@windows_guide.dispose
@windows_guide = nil
@windows_status.dispose
if @enemy_sprite.bitmap != nil
@enemy_sprite.bitmap.dispose
end
@enemy_sprite.dispose
dispose_battleback
@battleback1.dispose
@battleback2.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
@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
if @enemy_sprite.x >= @enemy_sprite_org
@enemy_sprite.x = @enemy_sprite_org
end
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) or Input.press?(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) rescue nil
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 -
oh che sbadato :( .. dire che ci sn passato piu volte.. i miei occhi andavano solo sui suoni xd cmq grazie mille
Però adesso vorrei togliere i bordi bianchi in battaglia.. come faccio?
(nei dialoghi spariscono mettendo dim background)
-
Scusami sono inesperto..
Allora quel sistema di battaglia dovrebbe usare lo skin standard mi sono fatto un giro tra gli script, ma non trovo la sezione per cambiare colore :(
-
Ciao a tutti , scusate sono nuovo un po di pazienza xd
Allora ho inserito nel mio game il Battle Symphony adesso vorrei cambiare il colore delle finestre in battaglia (vorrei farle diventare nere)
Come posso fare? ty :smile:
-
Ciao a tutti , sono arrivato solo adesso :(
ho scoperto da poco rpg maker purtroppo, adesso mi son fiondato subito nella creazione di game ^_^
sono un pivello attualmente ma in 2 giorni che ho iniziato.. vedo progressi.. spero bene xd
cmq piacere Emanuele 21 anni
good luck!! :P

Sportello aiuti veloci VX-Ace
in Supporto VX e VX-Ace
Posted
Hi Guys , ho un problema.Nel database quando voglio dare dei comandi di battaglia tipo Speciale o Magia c'e Addizional ability e Sealed Ability, ma se voglio aggiungere quel comando tramite evento non esiste :( .
Praticamente, voglio che il personaggio apprenda quel comando tramite evento, qualche soluzione? grz :)