Jump to content
Rpg²S Forum

*Aeon System


Sleeping Leonhart
 Share

Recommended Posts

Altri script installati?

Se si scrivi quali che quando mi lasciano il portatile do un occhiata ;)

 

A parte quelli standard, uso:

 

HealLvlUp: Cura la vita quando si aumenta di livello;

HP Bar: mostra delle barre colorate sotto HP e MP;

 

e poi: Aeon System e Development...:)

Link to comment
Share on other sites

  • Replies 112
  • Created
  • Last Reply

Top Posters In This Topic

Non sono riuscito a provarlo con gli script da te sopra citati comunque penso che non incidano sui miei script. Ti dava errore anche con la demo e con il solo script?

se non ti crea problemi inviami la demo soggetta al problema che la controllo ;)

Link to comment
Share on other sites

Non sono riuscito a provarlo con gli script da te sopra citati comunque penso che non incidano sui miei script. Ti dava errore anche con la demo e con il solo script?

se non ti crea problemi inviami la demo soggetta al problema che la controllo ;)

 

No, niente ho sistemato da solo :) Non so come ho fatto, ma ci sono riuscito :)

Link to comment
Share on other sites

Salve Leonhart. Vorrei chiederti se è possibile che gli eoni,una volta evocati,si trovino al centro della barra (quella dove ci sono i vari battlers dei pg). Non so se mi sono spiegato bene.

Grazie :tongue:

I miei tutorial
BS in tempo reale ad eventi
Tecnica Ruba
Pesca ad eventi
Evocare
Lancio del masso
Minigioco del Negozio

Partecipante al Rpg2s.net Game Contest 2008/2009
http://www.rpg2s.net/contest/GameContest0809/gc0809-bannerino.jpg
Gioco in Sviluppo: Factions

http://img252.imageshack.us/img252/8742/bannerinoteamlrmiu6.png
 

http://img393.imageshack.us/img393/9920/legenrpgmaniamu3.gif
Forum:The legend of making

 

 

26373462 I love you!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Mai Dire Speciale Cinema
L'Uomo che Usciva Tutti
Botte e Risposte / Rapine a mano a mano
Mobbasta
Mobbasta veramente per�
Mani in Alto
Per un pelo
Giammangiato
Anche no / Il buio / Ahia
Burle
Acqua Corrente / Urgenze

LegendRpgMania

Il 70% dei ragazzi pensa che GTA sia il miglior gioco del mondo. Il restante 30% pensa che Kingdom Hearts sia il gioco pi� bello. Se fai parte di questo 30% copia e incolla questa frase nella tua firma/blog.

MITICO OBSIDIAN LORD!!!
The March of The Swordmaster
Holy Thunderforce
Bard's Song

TALES OF MAGIC
Entra nella scuola di magia e diventa il mago pi� grande del mondo!

Tales of Magic � completamente gratuito e senza alcun obbligo! Il manuale ti fornir� informazioni sulle modalit� di funzionamento del gioco.
LINK DEL GIOCO

Bunnies Area
Bunnies Can't Phone
Bunnies Can't play 360
Bunnies Can't play Rugby
Bunnies Can't win races
Bunnies Can't Cook Eggs
Bunnies Can't cook turkey
Bunnies Can't Date
Bunnies Can't Park
Bunnies Can't play with Fireworks


Mi conoscete???
Se s� cliccate qui

 



Epitaffi:
1)E' diventato carne secca...
2)Giocava a buttarsi gi� dal castello...
3)Stava abbracciando una bomba a mano...
4)Gli piaceva bere nitroglicerina...
5)Ha ingoiato un candelotto di dinamite...
6)Ha effettuato il salto in lungo nel cratere di un vulcano...
7)Quando i suoi compagni di classe giocavano a calcio lui era la palla...



________________________________________________________________________________
A prescindere dal colore della pelle e dalla religione siamo tutti uguali e tutti abbiamo ugal diritto di vivere. Credi la scuola sia una seccatura? Un'imposizione dei genitori? Sai quanto darebbero questi bambini per avere un'istruzione? Invece loro ed i loro genitori vengono sfruttati nelle industrie delle pi� note multinazionali americane ed europee: Nike, Nestl�, Kraft...
Se sei anche tu contro il razzismo e contro lo sfruttamento inserisci questa frase nella tua firma.
________________________________________________________________________________
Now Playing:
PS3 : Soul Calibur 4
PS2 : Kingdom Hearts Re Chain of Memories
DS : Final Fantasy IV / Final Fantasy XII : Revenant Wings / Spore Creatures / Dinosaur King
PSP : Ratchet and Clank : Size Matters / Secret Agent Clank / Naruto Ultimate Ninja Heroes 2 / GuitarWay To Heaven 4 Amplified
PC : Frets on Fire con la chitarra!!! O_O

Rpg Maker Xp

I miei progetti:

Per ora nulla...

http://team.ffonline.it/imgpersonaggio/cloud_it.jpg
http://img230.imageshack.us/img230/608/pencehaynerroxasolettejyt1.th.jpg
http://r3.fodey.com/15d01c4c6f2dd4908b320f697f7fbe7bd.1.gif


http://img801.mytextgraphics.com/flamewordmaker/2008/03/28/2554b85201dbda32d87d5873d964a4fd.gif

 

 

Link to comment
Share on other sites

  • 1 month later...
Una domanda:

 

Con il bs in stile minikoff quale dei tanti script devo inserire?

Se dovessi fare in modo che la summon prende il posto solo di chi evoca, cosa dovrei modificare?

 

Help grazie!

 

Credo debba fare così:

Remove_Only_Summoner = {id_skill => true...
Summoner_Rest = {id_skill => false...

"A tre settimane da oggi io mieterò il mio raccolto, immaginate dove vorrete essere perchè così sarà. Serrate i ranghi! Seguitemi! E se vi ritroverete soli a cavalcare su verdi praterie col sole sulla faccia non preoccupatevi troppo perchè sarete nei campi elisi e sarete già morti! Fratelli, ciò che facciamo in vita riecheggia nell'eternità!"

 

"C'era un sogno che era roma sarà realizzato. Questo era il desiderio di Marco Aurelio!"

Link to comment
Share on other sites

Sleeping ho bisogno di un aiutino aiutone. Nel mio progetto ho inserito un BS laterale: il CCOA 3.04 che mi funziona. Poi ho l'aeon system e l'aeon development e ovviamente ho voluto inserire lo script x l'evocazione. Modificati i parametri come servivano mi da un problema: finita l'evocazione dell'eone si blocca il combattimento. Cioè rimane la scritta dell'evocazione in alto e non si può fare niente. Come posso risolvere il problema?? Grazie mille...

 

PS: lo script per l'evocazione ke ho usato è quello per XRXS_BP(anke se nel CCOA ke uso viene usato XRXS_CP)

"A tre settimane da oggi io mieterò il mio raccolto, immaginate dove vorrete essere perchè così sarà. Serrate i ranghi! Seguitemi! E se vi ritroverete soli a cavalcare su verdi praterie col sole sulla faccia non preoccupatevi troppo perchè sarete nei campi elisi e sarete già morti! Fratelli, ciò che facciamo in vita riecheggia nell'eternità!"

 

"C'era un sogno che era roma sarà realizzato. Questo era il desiderio di Marco Aurelio!"

Link to comment
Share on other sites

  • 3 weeks later...

@Silver Element:

Non capisco perchè tutti quanti dicono di usare il BS di Minkoff quando il Minkoff è solo il sistema di animazione e non un BS... cioè tu usi il Minkoff con... il Bs Standard? con l'RTAB?(o qualsiasi altro BS) specifica pls, se hai risolto meglio così xD. Per rimuovere solo l'evocatore la risposta te la data mak.

 

@makgiver:

Uhm, devo testare, poi editerò il messaggio.

Link to comment
Share on other sites

  • 3 months later...
Link to comment
Share on other sites

skusate sono nuovo sono molto interessato a questo script solo ke ho un pikkolo problema con lo script Aeon Development nn so xk ma nn si leggono le scritte ekko un imm x farvi capire meglio^^'

Immagine

 

Edit:ho risolto nn imp^^

Edited by elle92

Progetti in Corso:
 

[spoiler]

The Devil's Sonata
Il mio primo progetto con l'XP,attualmente in pausa per vari motivi,quindi ne approfitto per riorganizzare le idee visto che ad ogni passo avanti nel progetto,mi accorgo dei vari errori che ci sono^^'

Status:
Storia: 70% ->Tutta scritta nella mia testa dall'inizio alla fine,mancano gli ultimi dettagli e ovviamente come realizzarli.
Mapping: 15% -> Essendo poco pratico lascio la costruzione di Città e Dungeon alla fine per ora mi concentro sulle altre cose,inizierò quando ne avrò bisogno per la storia.
Eventi: 30% -> Per eventi intendo anche i vari dialoghi tra i personaggi principali il 30% è per gli eventi di gioco(ciclio giorno/notte,mostri,skill ecc..)
Quest: 1% -> Per "Quest" si intende tutto ciò che è secondario dalla semplici missioni ai dialoghi con gli NPC...
Script: 70% ->Anche se sto pensando di cambiare Battle Systems per vari problemi ciò farebbe scendere la % a 30-40%
Database: 30% -> Ci sono tutti i PG, e quasi tutti gli oggetti,armi e skill, mancano i nemici e alcuni boss.
Completamento: 30-35% -> Più o meno la base c'è,ma manca ancora molto il tutto è reso più difficile a causa della mia inesperienza con gli script,mapping e incompetenza generalexD l'unica cosa in cui sono bravo è la grafica,anche se quella usata nel gioco non mi piace molto infatti anche quella è da rivedere..



Per Maggiori dettagli vi invito a visitare il topic del progetto:
http://www.rpg2s.net/forum/index.php?showtopic=14695

Sono ben accette critiche(costruttivexD) e consigli di ogni genere!^_^

[/spoiler]
 

Link to comment
Share on other sites

  • 3 weeks later...
rieccomi :smile: stavolta volevo sapere se nel Aeon Development era possibile visualizzare o il face o il battler del mostro anzikè del chara^^

Progetti in Corso:
 

[spoiler]

The Devil's Sonata
Il mio primo progetto con l'XP,attualmente in pausa per vari motivi,quindi ne approfitto per riorganizzare le idee visto che ad ogni passo avanti nel progetto,mi accorgo dei vari errori che ci sono^^'

Status:
Storia: 70% ->Tutta scritta nella mia testa dall'inizio alla fine,mancano gli ultimi dettagli e ovviamente come realizzarli.
Mapping: 15% -> Essendo poco pratico lascio la costruzione di Città e Dungeon alla fine per ora mi concentro sulle altre cose,inizierò quando ne avrò bisogno per la storia.
Eventi: 30% -> Per eventi intendo anche i vari dialoghi tra i personaggi principali il 30% è per gli eventi di gioco(ciclio giorno/notte,mostri,skill ecc..)
Quest: 1% -> Per "Quest" si intende tutto ciò che è secondario dalla semplici missioni ai dialoghi con gli NPC...
Script: 70% ->Anche se sto pensando di cambiare Battle Systems per vari problemi ciò farebbe scendere la % a 30-40%
Database: 30% -> Ci sono tutti i PG, e quasi tutti gli oggetti,armi e skill, mancano i nemici e alcuni boss.
Completamento: 30-35% -> Più o meno la base c'è,ma manca ancora molto il tutto è reso più difficile a causa della mia inesperienza con gli script,mapping e incompetenza generalexD l'unica cosa in cui sono bravo è la grafica,anche se quella usata nel gioco non mi piace molto infatti anche quella è da rivedere..



Per Maggiori dettagli vi invito a visitare il topic del progetto:
http://www.rpg2s.net/forum/index.php?showtopic=14695

Sono ben accette critiche(costruttivexD) e consigli di ogni genere!^_^

[/spoiler]
 

Link to comment
Share on other sites

allora metti questo sopra il main:

class Window_Base
 def draw_actor_battler(actor, x, y)
bitmap = RPG::Cache.battler(actor.battler_name, actor.battler_hue)
cw = bitmap.width
ch = bitmap.height
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x - cw / 4, y - ch / 2, bitmap, src_rect)
 end
end

Poi vai nell'aeon development, clicca con il tasto destro del mouse in una qualsiasi parte dello script e seleziona sostituisci,

nel primo campo scrivi:

draw_actor_graphic

e nel secondo scrivi:

draw_actor_battler

poi clicca il 3° pulsante(sostituisci tutto) ed hai finito ;)

Link to comment
Share on other sites

:Ok: grazie 1000 Sleeping Leonhart funziona grazie ankora^^skusa ho un problema ora nn ci sono + gli oggetti nel aeon Development ho anke provato a rimettere il vekkio script ma niente come mai? Edited by elle92

Progetti in Corso:
 

[spoiler]

The Devil's Sonata
Il mio primo progetto con l'XP,attualmente in pausa per vari motivi,quindi ne approfitto per riorganizzare le idee visto che ad ogni passo avanti nel progetto,mi accorgo dei vari errori che ci sono^^'

Status:
Storia: 70% ->Tutta scritta nella mia testa dall'inizio alla fine,mancano gli ultimi dettagli e ovviamente come realizzarli.
Mapping: 15% -> Essendo poco pratico lascio la costruzione di Città e Dungeon alla fine per ora mi concentro sulle altre cose,inizierò quando ne avrò bisogno per la storia.
Eventi: 30% -> Per eventi intendo anche i vari dialoghi tra i personaggi principali il 30% è per gli eventi di gioco(ciclio giorno/notte,mostri,skill ecc..)
Quest: 1% -> Per "Quest" si intende tutto ciò che è secondario dalla semplici missioni ai dialoghi con gli NPC...
Script: 70% ->Anche se sto pensando di cambiare Battle Systems per vari problemi ciò farebbe scendere la % a 30-40%
Database: 30% -> Ci sono tutti i PG, e quasi tutti gli oggetti,armi e skill, mancano i nemici e alcuni boss.
Completamento: 30-35% -> Più o meno la base c'è,ma manca ancora molto il tutto è reso più difficile a causa della mia inesperienza con gli script,mapping e incompetenza generalexD l'unica cosa in cui sono bravo è la grafica,anche se quella usata nel gioco non mi piace molto infatti anche quella è da rivedere..



Per Maggiori dettagli vi invito a visitare il topic del progetto:
http://www.rpg2s.net/forum/index.php?showtopic=14695

Sono ben accette critiche(costruttivexD) e consigli di ogni genere!^_^

[/spoiler]
 

Link to comment
Share on other sites

nessuno sa come risolvere?ç_ç ekko anke uno screen in quell'immagine doveva esserci la lista degli oggetti x aumentare le statistiche ç_ç

immagine

Progetti in Corso:
 

[spoiler]

The Devil's Sonata
Il mio primo progetto con l'XP,attualmente in pausa per vari motivi,quindi ne approfitto per riorganizzare le idee visto che ad ogni passo avanti nel progetto,mi accorgo dei vari errori che ci sono^^'

Status:
Storia: 70% ->Tutta scritta nella mia testa dall'inizio alla fine,mancano gli ultimi dettagli e ovviamente come realizzarli.
Mapping: 15% -> Essendo poco pratico lascio la costruzione di Città e Dungeon alla fine per ora mi concentro sulle altre cose,inizierò quando ne avrò bisogno per la storia.
Eventi: 30% -> Per eventi intendo anche i vari dialoghi tra i personaggi principali il 30% è per gli eventi di gioco(ciclio giorno/notte,mostri,skill ecc..)
Quest: 1% -> Per "Quest" si intende tutto ciò che è secondario dalla semplici missioni ai dialoghi con gli NPC...
Script: 70% ->Anche se sto pensando di cambiare Battle Systems per vari problemi ciò farebbe scendere la % a 30-40%
Database: 30% -> Ci sono tutti i PG, e quasi tutti gli oggetti,armi e skill, mancano i nemici e alcuni boss.
Completamento: 30-35% -> Più o meno la base c'è,ma manca ancora molto il tutto è reso più difficile a causa della mia inesperienza con gli script,mapping e incompetenza generalexD l'unica cosa in cui sono bravo è la grafica,anche se quella usata nel gioco non mi piace molto infatti anche quella è da rivedere..



Per Maggiori dettagli vi invito a visitare il topic del progetto:
http://www.rpg2s.net/forum/index.php?showtopic=14695

Sono ben accette critiche(costruttivexD) e consigli di ogni genere!^_^

[/spoiler]
 

Link to comment
Share on other sites

fatto ti ho mandato un mp^^ grazie

Progetti in Corso:
 

[spoiler]

The Devil's Sonata
Il mio primo progetto con l'XP,attualmente in pausa per vari motivi,quindi ne approfitto per riorganizzare le idee visto che ad ogni passo avanti nel progetto,mi accorgo dei vari errori che ci sono^^'

Status:
Storia: 70% ->Tutta scritta nella mia testa dall'inizio alla fine,mancano gli ultimi dettagli e ovviamente come realizzarli.
Mapping: 15% -> Essendo poco pratico lascio la costruzione di Città e Dungeon alla fine per ora mi concentro sulle altre cose,inizierò quando ne avrò bisogno per la storia.
Eventi: 30% -> Per eventi intendo anche i vari dialoghi tra i personaggi principali il 30% è per gli eventi di gioco(ciclio giorno/notte,mostri,skill ecc..)
Quest: 1% -> Per "Quest" si intende tutto ciò che è secondario dalla semplici missioni ai dialoghi con gli NPC...
Script: 70% ->Anche se sto pensando di cambiare Battle Systems per vari problemi ciò farebbe scendere la % a 30-40%
Database: 30% -> Ci sono tutti i PG, e quasi tutti gli oggetti,armi e skill, mancano i nemici e alcuni boss.
Completamento: 30-35% -> Più o meno la base c'è,ma manca ancora molto il tutto è reso più difficile a causa della mia inesperienza con gli script,mapping e incompetenza generalexD l'unica cosa in cui sono bravo è la grafica,anche se quella usata nel gioco non mi piace molto infatti anche quella è da rivedere..



Per Maggiori dettagli vi invito a visitare il topic del progetto:
http://www.rpg2s.net/forum/index.php?showtopic=14695

Sono ben accette critiche(costruttivexD) e consigli di ogni genere!^_^

[/spoiler]
 

Link to comment
Share on other sites

  • 2 weeks later...
  • 4 weeks later...

Ho un problema di compatibilità con questo script

Enu SBS Tanketai XP

Evoco e funziona tutto, ma alla fine della battaglia se c'è ancora l'evocazione mi da un errore

qualcuno può renderlo compatibile con ATB???

 

 

#======================================================================
# Add-ON: AABS Atoa's Active Battle System v 2.0
# by Atoa
# Based on the ABS made by KGC, XRXS and VX's ATB
#==============================================================================
# This Add-ON adds a time bar system to the game
# If you don't want to use this Add-ON, simply delete it
# The configurations are explained below
#==============================================================================

module N01  
 
 # Waiting Mode
 WAIT_MODE = 0
 # 0 = On Hold Battle: the bar stops to select actions, skills and itens
 # 1 = Semi On Hold Battle: the bar stop to select itens and skills.
 # 2 = 100% Active Battle Batalha: the bar will never stop.
 
 # Pause the bar when a battler is executing an action?
 WAIT_ACT_END = true
 
 # Show individual time bars for the battlers?
 METERS = true
 
 # Show a single bar that indicates the battler's action order?
 BARS = false
 
 # Battle Speed
 SPEED = 3.0
 
 # Modifier value of the initial value of the bar
 ATB_PRESET_FIXNUM = 0
 
 # Multiplication rate of the initial bar value
 ATB_PRESET_RATIO  = 1.0
 
 # Definition of turn shifting.
 # This definition must be used for the duration of effects and
 # battle event conditions
 CUSTOM_TC = 0
 # 0 = By number of fighters
 # 1 = By number of executed actions
 # 2 = By time (im frames)
 
 # If CUSTOM_TC = 1, define how many actions are equal to 1 turn
 ACTION_TC = 10
 
 # If CUSTOM_TC = 2, define how much time (in frames) are equal to 1 turn
 TIME_TC = 1200 #20 frames is about 1 second
 
 # Activate a timer for the casting of magical skills?
 MAGIC_SKILL_CAST = true
 
 # Activate a timer for the casting of physical skills?
 PHYSICAL_SKILL_CAST = true
 
 # Activate a timer for the casting of itens?
 ITEM_CAST = true
 
 # Define how will be made an escape
 ESCAPE_TYPE = 0
 # 0 = Escape options is shown on the character's action menu?
 # 1 = Keep the Q key pressed to escape, shows a message on the screen
 # 2 = Keep the Q key pressed to escape, shows an escape bar

 #Show the name for the escape option when ESCAPE_TYPE = 0
 ESCAPE_NAME = "Fuga"
 
 # Escape message when ESCAPE_TYPE = 1
 ESCAPE_MESSAGE = "Fuggiti"
 CANT_ESCAPE_MESSAGE = "la fuga è impossibile!"
 
 # Time (in frames) needed to escape when ESCAPE_TYPE > 0 
 # it is affected by the agility of characters and enemies
 ESCAPE_TIME = 600
 
 # Name of the graphic file when ESCAPE_TYPE = 2
 ESCAPE_SKIN = "ESCAPEMeter"
 
 # Position of the Fleeing Bar
 ESCAPE_METER_POS_TYPE = 0
 # 0 = Above the characters
 # 1 = Upper-Mid of the screen
 # 2 = Custom position
 
 # Custom position of the Fleeing Bar when ESCAPE_METER_POS_TYPE = 2
 ESCAPE_METER_POSITION = [240,64]
 
 # Time Bar configurationso
 METER_SKIN  = "ATBMeter" #Graphic file name that represents the bars
                          #must be on the Graphic/Windowskins folder
 
 # Position of the character's Time Bars
 METER_POS_STYLE = 3 
 # 0 = Horizontal Pattern, not centralized
 # 1 = Horizontal Pattern, centralized
 # 2 = Vertical Bars
 # 3 = Under the characters
 # 4 = Custom
 
 # Readjust the Time Bar's position on the battle screen
 # On the right side, the default values fir when the attributes are been shown
 # Verticaly(Vert) and Horizontaly(Horz)
 # Fique a vontade para ajusar estes valores
 X_METER     = 0      #X position of the Bars
 Y_METER     = 120    #Y position of the Bars

 # Custom Time Bar position, only valid when METER_POS_STYLE = 4
 METER_POSITION = [[460,180],[480,210],[500,240],[520,270]]

 # Position of the enemie's Time Bars
 ENEMY_METER = 0  
 # 0 = No time bars for the enemies
 # 1 = Under the enemy
 # 2 = Vertical list on the Side
 
 # Configuration of the Action Bars.
 BAR_SKIN = "ATBBar" #Name of the graphic file that represents the bar, must be
                     #on the Graphics/Windowskins folder
 X_BAR    = 128      #X position of the Bars
 Y_BAR    =  80      #Y position of the Bars
 
 # Name of the default graphic Icon for characters
 DEFAULT_PARTY = "050-Skill07"
 # Individual character's Icons
 # Must be configured on the following way: ID => "Name of the Graphic"
 PARTY_ICON = {
   1=>"Atoa-Icon",
   2=>"FBU-Icon",
   3=>"Herena-Icon",
   4=>"Tunicoelp-Icon"  #Note: the last one doesn't have a coma "," on the end
 }
 
 # Name of the default graphic Icon for enemies
 DEFAULT_ENEMY = "046-Skill03" 
 # Individual icons for enemies
 # must be configured on the following way: ID => "Name of the Graphic"
 ENEMY_ICON = {
   33=>"Ash-Icon",
   34=>"Soldier-Icon" #Note: the last one doesn't have a coma (,) on the end
 }
 
 #Sound effect played when teh character's turn comes.
 COMMAND_UP_SE = "046-Book01"
   
 #ATB's maximum value, only change if you know what you do.
 MAX_ATB = 60000
 
end

#==============================================================================
# ■ RPG::Skill
#==============================================================================
class RPG::Skill
 #----------------------------------------------------------------------------
 # Define here the time to cast each skill, by the default, all the skill not
 # configurated here have casting time = 0.
 # The casting times must be high values, and always be multiplied by an
 # attribute. This attribute will represent the speed of the spell in question.
 # Recommended values range between 1000 and 5000, being that higher values
 # represent higher speeds.
 # Ex.:
 #  return 2000 * battler.int (the skill has its speed based on INT)
 #  return 4000 * battler.agi (the skill has its speed based on AGI)
 #----------------------------------------------------------------------------
 def cast_speed(battler)
   case @id
   when 1,7,10,13,16,19,22,25,28
     return 5000 * battler.int
   when 2,8,11,14,17,20,23,26,29
     return 4000 * battler.int
   when 3,9,12,15,18,21,24,27,30
     return 3000 * battler.int
   when 95
     return 2000 * battler.int
  # You can add as many skills as you wish, if a skill has the same speed as
  # another one, you can add the other's ID using a coma (,)
  # when X,Y,Z... # X,Y,Z = ID of the skills
  #   return Speed * Atrtribute
   end
   return 0
 end
end

#==============================================================================
# ■ RPG::Item
#==============================================================================
class RPG::Item
 #----------------------------------------------------------------------------
 # Define here the time to cast each item, by the default, all the itens not
 # configurated here have casting time = 0.
 # The casting times must be high values, and always be multiplied by an
 # attribute. This attribute will represent the speed of the spell in question.
 # Recommended values range between 1000 and 5000, being that higher values
 # represent higher speeds.
 # Ex.:
 #  return 2000 * battler.int (the skill has its speed based on INT)
 #  return 4000 * battler.agi (the skill has its speed based on AGI)
 #----------------------------------------------------------------------------
 def cast_speed(battler)
   case @id
   when 1,2,3,4,5,6,7,8,9,10,11,12
     return 5000 * battler.int
  # You can add as many itens as you wish, if an item has the same speed as
  # another one, you can add the other's ID using a coma (,)
  # when X,Y,Z... # X,Y,Z = ID of the itens
  #   return Speed * Atrtribute
   end
   return 0
 end
end

#==============================================================================
# ■ Game_Battler
#==============================================================================
class Game_Battler
 #--------------------------------------------------------------------------
 include N01
 #--------------------------------------------------------------------------
 attr_accessor :cast_action
 attr_accessor :cast_target
 attr_accessor :turn_count
 #--------------------------------------------------------------------------
 alias initialize_atb_n01 initialize
 def initialize
   initialize_atb_n01
   @cast_skill = @turn_count = 0
 end
 #--------------------------------------------------------------------------
 def atb_linetype
   return 4 if self.cast_action != nil and self.atb_full?
   return 3 if self.cast_action != nil
   return 2 if self.atb_full?
   return 1
 end
 #--------------------------------------------------------------------------
 def atb_lineamount
   return 0 if self.dead?
   return 100 * self.atb / self.max_atb
 end
 #--------------------------------------------------------------------------
 def max_atb
   return MAX_ATB
 end
 #--------------------------------------------------------------------------
 def atb
   return @atb == nil ? @atb = 0 : @atb
 end
 #--------------------------------------------------------------------------
 def atb=(n)
   @atb = [[n.to_i, 0].max, self.max_atb].min
 end
 #--------------------------------------------------------------------------
 def atb_preset
   percent = self.max_atb * ATB_PRESET_RATIO * (rand(64) + 16) * self.agi / total_agi / 24
   self.atb = ATB_PRESET_FIXNUM + percent
 end
 #--------------------------------------------------------------------------
 def total_agi
   total = 0
   for battler in $game_party.actors + $game_troop.enemies
     total += battler.agi
   end
   return total
 end
 #--------------------------------------------------------------------------
 def atb_full?
   return @atb == self.max_atb
 end
 #--------------------------------------------------------------------------
 def guarding=(n)
   @guarding = n
 end
 #--------------------------------------------------------------------------
 def guarding?
   return @guarding
 end
 #--------------------------------------------------------------------------
 def atb_update
   self.atb += SPEED * 2000 * self.agi / (total_agi * 2) if self.cast_action == nil
   return if self.cast_action == nil
   cast = cast_action.cast_speed(self)
   self.atb += SPEED * cast / (total_agi * 2)
 end
 #--------------------------------------------------------------------------
 def cast_action
   return @cast_action == nil ? @cast_action = nil : @cast_action
 end
 #--------------------------------------------------------------------------
 def cast_action=(n)
   @cast_action = n
 end
end

#==============================================================================
# ■ Game_Actor
#==============================================================================
class Game_Actor < Game_Battler
 #--------------------------------------------------------------------------
 def inputable?
   return (self.atb_full? and super)
 end
end

#==============================================================================
# ■ Game_Enemy
#==============================================================================
class Game_Enemy < Game_Battler
 #--------------------------------------------------------------------------
 def movable?
   return (self.atb_full? and super)
 end
 #--------------------------------------------------------------------------
 def make_action
   self.current_action.clear
   return unless self.movable?
   available_actions = []
   rating_max = 0
   for action in self.actions
     n = @turn_count
     a = action.condition_turn_a
     b = action.condition_turn_b
     next if (b == 0 and n != a) or (b > 0 and (n < 1 or n < a or n % b != a % b))
     next if self.hp * 100.0 / self.maxhp > action.condition_hp
     next if $game_party.max_level < action.condition_level
     switch_id = action.condition_switch_id
     next if switch_id > 0 and $game_switches[switch_id] == false
     available_actions.push(action)
     rating_max = action.rating if action.rating > rating_max
   end
   ratings_total = 0
   for action in available_actions
     ratings_total += action.rating - (rating_max - 3) if action.rating > rating_max - 3
   end
   if ratings_total > 0
     value = rand(ratings_total)
     for action in available_actions
       if action.rating > rating_max - 3
         if value < action.rating - (rating_max - 3)
           self.current_action.kind = action.kind
           self.current_action.basic = action.basic
           self.current_action.skill_id = action.skill_id
           self.current_action.decide_random_target_for_enemy
           return
         else
           value -= action.rating - (rating_max - 3)
         end
       end
     end
   end
 end
end

#==============================================================================
# ■ Game_System
#==============================================================================
class Game_System
 #--------------------------------------------------------------------------
 include N01
 #--------------------------------------------------------------------------
 attr_accessor :wait_mode
 attr_accessor :action_wait
 #--------------------------------------------------------------------------
 alias initialize_atb_n01 initialize
 def initialize
   initialize_atb_n01
   @wait_mode = WAIT_MODE
   @action_wait = WAIT_ACT_END
 end
end

#==============================================================================
# ■ Scene_Battle
#==============================================================================
class Scene_Battle
 #--------------------------------------------------------------------------
 include N01
 #--------------------------------------------------------------------------
 alias main_atb_n01 main
 def main
   turn_count_speed  
   for battler in $game_party.actors + $game_troop.enemies
     battler.turn_count = 0
     battler.atb = 0
   end
   $game_temp.escape_count = 0
   @escape_type, @escape_name = ESCAPE_TYPE, ESCAPE_NAME
   @input_battlers, @action_battlers = [], []
   @input_battler, @action_battler = nil, nil
   @escaped = false
   @atb_meters = ATB_Meters.new
   @atb_bars = ATB_Bars.new
   main_atb_n01
   @atb_meters.dispose
   @atb_meters.dispose2 if ENEMY_METER != 0
   @atb_bars.dispose
 end
 #--------------------------------------------------------------------------
 alias update_atb_n01 update
 def update
   if @phase == 1
     $game_temp.battle_main_phase = true
     @actor_command_window.opacity = 0
     @phase = 0
   elsif @phase != 5
     @phase = 0
   end
   @event_running = true if $game_system.battle_interpreter.running?
   update_atb_n01
   if $game_system.battle_interpreter.running?
     return
   elsif @event_running
     @status_window.refresh
     @event_running = false
   end
   return $scene = Scene_Gameover.new if $game_temp.gameover
   if @phase == 5
     update_phase5
     return
   end
   if $game_system.battle_interpreter.running?
     @event_running = true
   end
   if Input.press?(Input::A) and @escape_type > 0 
     if $game_temp.battle_can_escape
       $game_temp.max_escape_count = update_phase2_escape_rate
       $game_temp.escape_count += 2 unless @wait_on
       @escaping = true
       if !@help_window.visible and @escape_type == 1
         @help_window.set_text("")
         @help_window.set_text(ESCAPE_MESSAGE, 1)
       end
       if @escape_type == 2
         if @escape_atb_meters == nil
           @escape_atb_meters = ESCAPE_Meters.new
           @escape_meter_opacity = 0
         else @atb_meters != nil
           @escape_atb_meters.opacity = 15 * @escape_meter_opacity
           @escape_meter_opacity = [@escape_meter_opacity + 1, 17].min
           @escape_atb_meters.refresh
         end
       end
       if $game_temp.escape_count >= $game_temp.max_escape_count
         $game_temp.escape_count = 0
         update_phase2_escape unless $game_party.all_dead?
       end
     else
       @help_window.set_text(CANT_ESCAPE_MESSAGE, 1) if @escape_type == 1        
       if @escape_type == 2       
         if @escape_atb_meters == nil
           @escape_atb_meters = ESCAPE_Meters.new
           @escape_meter_opacity = 0
         else @atb_meters != nil
           @escape_atb_meters.opacity = 15 * @escape_meter_opacity
           @escape_meter_opacity = [@escape_meter_opacity + 1, 17].min
           @escape_atb_meters.refresh
         end
       end
     end
   elsif @escape_type > 0
     if @escaping
       @escaping = false
       @help_window.visible = false
     end
     $game_temp.escape_count = [$game_temp.escape_count - 1, 0].max unless @wait_on
     if @escape_atb_meters != nil and $game_temp.escape_count == 0
       @escape_atb_meters.opacity = 15 * @escape_meter_opacity
       @escape_meter_opacity = [@escape_meter_opacity - 1, 0].max
       if @escape_meter_opacity == 0
         @escape_atb_meters.dispose 
         @escape_atb_meters = nil
       end
     end
     @escape_atb_meters.refresh if @escape_atb_meters != nil
   end
   return if @escaped
   atb_update
   for battler in $game_party.actors + $game_troop.enemies
     if battler.atb_full?  
       battler.turn_count += 1
       if battler.is_a?(Game_Actor)
         if battler.inputable? and battler.cast_action == nil
           @input_battlers.push(battler) unless @input_battlers.include?(battler)
         else
           if battler.restriction == 2 || battler.restriction == 3
             battler.current_action.kind = 0
             battler.current_action.basic = 0
           end
           @action_battlers.push(battler) unless @action_battlers.include?(battler)
         end
       else
         battler.make_action
         @action_battlers.push(battler) unless @action_battlers.include?(battler)
       end
     end
   end
   if @input_battlers[0] != nil && @input_battler == nil && !@wait_on
     @input_battler = @input_battlers[0]
     if @input_battler.current_action.forcing ||
         @input_battler.restriction == 2 || @input_battler.restriction == 3
       if @input_battler.restriction == 2 || @input_battler.restriction == 3
         @input_battler.current_action.kind = 0
         @input_battler.current_action.basic = 0
       end
       @action_battlers.push(@input_battler)
       @input_battlers.delete(@input_battler)
       @input_battler = nil
     elsif @input_battler.inputable?
       @actor_index = $game_party.actors.index(@input_battler)
       @input_battler.current_action.clear
       @input_battler.blink = true
     else
       @input_battler.atb_update
       @input_battlers.delete(@input_battler) 
       @input_battler = nil
     end
   end
   if @input_battler != nil
     @now_battler = @active_battler
     @active_battler = @input_battler
     if @actor_command_window.opacity == 0
       phase3_setup_command_window
     end
     update_phase3
     @active_battler = @now_battler
   end
   if @action_battlers[0] != nil && @action_battler == nil
     @action_battler = @action_battlers[0]
     if @action_battler.dead? || !@action_battler.atb_full?
       @action_battler.atb = 0
       @action_battlers.delete(@action_battler)
       @action_battler = nil
     else
       start_phase4
     end
   end
   if @action_battler != nil && !@spriteset.effect?
     @active_battler = @action_battler
     update_phase4
   end
 end  
 #--------------------------------------------------------------------------
 alias update_basic_atb_n01 update_basic
 def update_basic
   update_basic_atb_n01
   if @input_battler != nil
     @input_action = true
     @now_battler = @active_battler
     @active_battler = @input_battler
     if @actor_command_window.opacity == 0
       phase3_setup_command_window
     end
     update_phase3
     @active_battler = @now_battler
     @input_action = false
   end
   atb_update
 end  
 #--------------------------------------------------------------------------
 alias judge_atb_n01 judge
 def judge
   @battle_end = true
   for enemy in $game_troop.enemies
     @battle_end = false if enemy.exist?
   end    
   @battle_end = true if $game_party.all_dead? or $game_party.actors.size == 0 
   judge_atb_n01
 end
 #--------------------------------------------------------------------------
 def atb_preset_party
   for actor in $game_party.actors
     actor.atb_preset
   end
 end
 #--------------------------------------------------------------------------
 def atb_preset_troop
   for enemy in $game_troop.enemies
     enemy.atb_preset
   end
 end
 #--------------------------------------------------------------------------
 def atb_update
   if $game_system.wait_mode == 1 and (@skill_window != nil or @item_window != nil)
     @wait_on = true
   elsif $game_system.wait_mode == 0 and @input_battler != nil
     @wait_on = true
   elsif $game_system.action_wait and @action_battler != nil
     @wait_on = true
   elsif @force_wait or @battle_end
     @wait_on = true
   else
     @wait_on = false
   end 
   return if @wait_on
   @atb_turn_count += 1 if CUSTOM_TC == 2
   if @atb_turn_count >= @abt_turn_speed
     $game_temp.battle_turn += 1
     turn_count_speed
     for battler in $game_party.actors + $game_troop.enemies
       battler.remove_states_auto if battler != nil
     end
     @status_window.refresh if @action_battler == nil
     setup_battle_event
   end
   for battler in $game_party.actors + $game_troop.enemies
     battler.atb_update unless battler == @action_battler
   end
   update_meters
 end
 #--------------------------------------------------------------------------
 def update_meters
   @atb_meters.refresh
   for i in 0...$game_troop.enemies.size
     enemy = $game_troop.enemies[i]
     @atb_meters.enemy_meters[i].opacity = 0 if enemy.dead? and ENEMY_METER != 0
   end
   @atb_bars.refresh
 end
 #--------------------------------------------------------------------------
 def turn_count_speed
   @atb_turn_count = @abt_turn_speed = 0
   case CUSTOM_TC
   when 0
     for battler in $game_party.actors + $game_troop.enemies
       @abt_turn_speed += 1 if battler.exist?
     end
   when 1
     @abt_turn_speed = ACTION_TC
   when 2
     @abt_turn_speed = TIME_TC
   end
 end
 #--------------------------------------------------------------------------
 def pop_help(obj)
   @help_window.set_text(obj, 1)
   loop do
     update_basic
     break @help_window.visible = @force_wait = false if Input.trigger?(Input::C)
   end
 end
 #--------------------------------------------------------------------------
 def start_phase1 
   atb_preset_party
   atb_preset_troop
   for actor in $game_party.actors
     actor.atb = MAX_ATB - 1 if $preemptive
     actor.atb = 0 if $back_attack 
   end
   for enemy in $game_troop.enemies
     enemy.atb = 0 if $preemptive
     enemy.atb = MAX_ATB - 1 if $back_attack 
   end
   update_meters
   for member in $game_party.actors + $game_troop.enemies
     @spriteset.set_stand_by_action(member.is_a?(Game_Actor), member.index)
   end
   @phase = 1
   @force_wait = true if $preemptive or $back_attack
   $game_party.clear_actions
   setup_battle_event
   $clear_enemies_actions = false
   update_meters
   if $preemptive
     pop_help(PREEMPTIVE_ALERT)
     $clear_enemies_actions = true
   end
   return unless $back_attack 
   pop_help(BACK_ATTACK_ALERT)
 end
 #--------------------------------------------------------------------------
 def update_phase2_escape
   windows_dispose    
   update_phase2_escape_type1 if @escape_type == 0 
   update_phase2_escape_type2 if @escape_type > 0
 end
 #--------------------------------------------------------------------------
 alias turn_end_atb_n01 turn_end
 def update_phase2_escape_type1
   enemies_agi = enemies_number = 0
   for enemy in $game_troop.enemies
     if enemy.exist?
       enemies_agi += enemy.agi
       enemies_number += 1
     end
   end
   enemies_agi /= [enemies_number, 1].max
   actors_agi = actors_number = 0
   for actor in $game_party.actors
     if actor.exist?
       actors_agi += actor.agi
       actors_number += 1
     end
   end
   actors_agi /= [actors_number, 1].max
   @success = rand(100) < @escape_ratio * actors_agi / enemies_agi
   @party_command_window.visible = false
   @party_command_window.active = false
   wait(2)
   if @success
     @battle_end = true
     $game_system.se_play($data_system.escape_se)
     for actor in $game_party.actors
       unless actor.dead?
         @spriteset.set_action(true, actor.index, actor.run_success)
       end
     end
     pop_help(ESCAPE_SUCCESS)
     $game_system.bgm_play($game_temp.map_bgm)
     battle_end(1)
   else
     @force_wait = true
     @escape_ratio += 5
     $game_party.clear_actions
     $game_system.se_play($data_system.escape_se)
     for actor in $game_party.actors
       unless actor.dead?
         @spriteset.set_action(true, actor.index,actor.run_ng)
       end
     end
     pop_help(ESCAPE_FAIL)
     turn_end_atb_n01
     start_phase4
   end
 end
 #--------------------------------------------------------------------------
 def update_phase2_escape_type2
   @escaped = true
   @party_command_window.visible = false
   @party_command_window.active = false
   @actor_command_window.visible = false if @actor_command_window != nil
   @actor_command_window.active = false if @actor_command_window != nil
   @active_battler_window.visible = false if @active_battler_window != nil
   wait(1)
   @battle_end = true
   $game_system.se_play($data_system.escape_se)
   for actor in $game_party.actors
     unless actor.dead?
       @spriteset.set_action(true, actor.index, actor.run_success)
     end
   end
   pop_help(ESCAPE_SUCCESS)
   $game_system.bgm_play($game_temp.map_bgm)
   if @escape_atb_meters != nil
     @escape_atb_meters.dispose 
     @escape_atb_meters = nil
   end
   battle_end(1)
 end
 #--------------------------------------------------------------------------
 def update_phase2_escape_rate
   enemies_agi = enemies_number = 0
   for enemy in $game_troop.enemies
     if enemy.exist?
       enemies_agi += enemy.agi
       enemies_number += 1
     end
   end
   enemies_agi /= [enemies_number, 1].max
   actors_agi = actors_number = 0
   for actor in $game_party.actors
     if actor.exist?
       actors_agi += actor.agi
       actors_number += 1
     end
   end
   actors_agi /= [actors_number, 1].max
   escape_rate = ESCAPE_TIME * enemies_agi / (actors_agi * SPEED)
   return escape_rate
 end
 #--------------------------------------------------------------------------
 alias start_phase5_atb_n01 start_phase5
 def start_phase5
   if @input_battler != nil
     @help_window.visible = false if @help_window != nil
     windows_dispose
     @input_battler.blink = false if @input_battler != nil
   end
   @atb_meters.opacity = 0 if METER_POS_STYLE == 3
   update_meters
   start_phase5_atb_n01
 end
 #--------------------------------------------------------------------------
 def phase3_setup_command_window
   return if @escaped
   if @active_battler != nil && @active_battler.cast_action != nil
     @active_battler.blink = false
     return    
   end
   Audio.se_play("Audio/SE/" + COMMAND_UP_SE)    
   @party_command_window.active = false
   @party_command_window.visible = false
   @actor_command_window.dispose if @actor_command_window != nil
   s1 = $data_system.words.attack
   s2 = $data_system.words.skill
   s3 = $data_system.words.guard
   s4 = $data_system.words.item
   s5 = @escape_name
   if @escape_type == 0
     @actor_command_window = Window_Command.new(160, [s1, s2, s3, s4, s5])  
     @actor_command_window.y = 0
   else
     @actor_command_window = Window_Command.new(160, [s1, s2, s3, s4])  
     @actor_command_window.y = 0
   end
   @actor_command_window.x = 440
   @actor_command_window.z = 2000
   @actor_command_window.index = 0
   @actor_command_window.back_opacity = COMMAND_OPACITY
   @active_battler_window.refresh(@active_battler)
   @active_battler_window.visible = true
   @active_battler_window.y = 0 if @escape_type != 0
 end
 #--------------------------------------------------------------------------
 alias start_enemy_select_atb_n01 start_enemy_select
 def start_enemy_select
   start_enemy_select_atb_n01
   @atb_meters.opacity = 255 if METERS
   update_meters
 end
 #--------------------------------------------------------------------------
 alias update_phase3_skill_select_atb_n01 update_phase3_skill_select
 def update_phase3_skill_select
   @atb_meters.opacity = 0 if METERS and METER_POS_STYLE < 3
   update_phase3_skill_select_atb_n01
   update_meters
 end
 #--------------------------------------------------------------------------
 alias update_phase3_item_select_atb_n01 update_phase3_item_select
 def update_phase3_item_select
   @atb_meters.opacity = 0 if METERS and METER_POS_STYLE < 3
   update_phase3_item_select_atb_n01
   update_meters
 end
 #--------------------------------------------------------------------------
 alias start_actor_select_atb_n01 start_actor_select
 def start_actor_select
   start_actor_select_atb_n01
   @atb_meters.opacity = 255 if METERS
   update_meters
 end
 #--------------------------------------------------------------------------
 alias start_skill_select_atb_n01 start_skill_select
 def start_skill_select
   start_skill_select_atb_n01
   @atb_meters.opacity = 0 if METERS and METER_POS_STYLE < 3
   update_meters
 end
 #--------------------------------------------------------------------------
 alias end_skill_select_atb_n01 end_skill_select
 def end_skill_select
   end_skill_select_atb_n01
   @atb_meters.opacity = 255 if METERS
   update_meters
 end
 #--------------------------------------------------------------------------
 alias start_item_select_atb_n01 start_item_select
 def start_item_select
   start_item_select_atb_n01
   @atb_meters.opacity = 0 if METERS and METER_POS_STYLE < 3
   update_meters
 end
 #--------------------------------------------------------------------------
 alias end_item_select_atb_n01 end_item_select
 def end_item_select
   end_item_select_atb_n01
   @atb_meters.opacity = 255 if METERS
   update_meters
 end
 #--------------------------------------------------------------------------
 def phase3_next_actor
   @input_battler.blink = false
   @actor_command_window.active = false
   @actor_command_window.visible = false
   @active_battler_window.visible = false
   @actor_command_window.opacity = 0
   @action_battlers.push(@input_battler)
   @input_battlers.delete(@input_battler)
   @input_battler = nil
   @actor_index = nil
   @active_battler = nil
 end
 #--------------------------------------------------------------------------
 def phase3_prior_actor
   @input_battler.current_action.kind = 0
   @input_battler.current_action.basic = 3
   @input_battler.blink = false
   @actor_command_window.active = false
   @actor_command_window.visible = false
   @active_battler_window.visible = false
   @actor_command_window.opacity = 0
   @action_battlers.push(@input_battler)
   @input_battlers.delete(@input_battler)
   @input_battler = nil
   @actor_index = nil
   @active_battler = nil
 end
 #--------------------------------------------------------------------------
 alias update_phase3_atb_n01 update_phase3
 def update_phase3
   if @active_battler.current_action.forcing ||
       !@active_battler.inputable? ||
       @active_battler.restriction == 2 ||
       @active_battler.restriction == 3 ||
       !$game_party.actors.include?(@active_battler) ||
       (@input_battler != nil && @input_battler.dead?)
     if @active_battler.current_action.forcing ||
         @active_battler.restriction == 2 ||
         @active_battler.restriction == 3
       if @active_battler.restriction == 2 || @active_battler.restriction == 3
         @active_battler.current_action.kind = 0
         @active_battler.current_action.basic = 0
       end
       @action_battlers.push(@active_battler)
     end
     command_input_cancel 
     return
   end
   update_phase3_atb_n01
 end
 #--------------------------------------------------------------------------
 alias update_phase3_basic_command_atb_n01 update_phase3_basic_command

 def update_phase3_basic_command
   if Input.trigger?(Input::UP) and @input_action
     $game_system.se_play($data_system.cursor_se)
     @actor_command_window.index -= 1
     @actor_command_window.index = @actor_command_window.commands_size - 1 if @actor_command_window.index <= -1
     return
   end
   if Input.trigger?(Input::DOWN) and @input_action
     $game_system.se_play($data_system.cursor_se)
     @actor_command_window.index += 1
     @actor_command_window.index = 0 if @actor_command_window.index >= @actor_command_window.commands_size - 1
     return
   end
   if Input.trigger?(Input::X)
     $game_system.se_play($data_system.decision_se)
     @input_battlers.push(@active_battler) unless @input_battlers.include?(@active_battler)
     @active_battler.blink = false
     if @actor_command_window != nil
       @actor_command_window.active = false
       @actor_command_window.visible = false
       @active_battler_window.visible = false
       @actor_command_window.opacity = 0
     end
     @input_battlers.delete(@input_battler)
     @input_battler = nil
     @actor_index = nil
     @active_battler = nil
     return
   end
   if Input.trigger?(Input::C) and @escape_type == 0
     case @actor_command_window.index
     when 4  
       if $game_temp.battle_can_escape == false
         $game_system.se_play($data_system.buzzer_se)
         return
       end
       @active_battler_window.visible = false
       @actor_command_window.visible = false
       @active_battler_window.visible = false
       for actor in $game_party.actors
         actor.atb = 0
         actor.cast_action = nil
       end
       wait(3)
       $game_system.se_play($data_system.decision_se)
       update_phase2_escape
       return
     end
   end
   update_phase3_basic_command_atb_n01 
 end
 #--------------------------------------------------------------------------
 def command_input_cancel
   windows_dispose
   @input_battler.blink = false
   @input_battlers.delete(@input_battler)
   @input_battler = nil
 end
 #--------------------------------------------------------------------------
 def windows_dispose
   @help_window.visible = false if !@escaping
   if @enemy_arrow != nil
     @enemy_arrow.dispose
     @enemy_arrow = nil
   end
   if @actor_arrow != nil
     @actor_arrow.dispose
     @actor_arrow = nil
   end
   if @actor_arrow != nil
     @actor_arrow.dispose
     @actor_arrow = nil
   end
   if @skill_window != nil
     @skill_window.dispose
     @skill_window = nil
   end
   if @item_window != nil
     @item_window.dispose
     @item_window = nil
   end
   if @enemy_arrow_all != nil
     @enemy_arrow_all.dispose
     @enemy_arrow_all = nil
   end
   if @actor_arrow_all != nil
     @actor_arrow_all.dispose
     @actor_arrow_all = nil
   end
   if @battler_arrow_all != nil
     @enemy_arrow_all.dispose
     @enemy_arrow_all = nil
   end
   if @actor_command_window != nil
     @actor_command_window.active = false
     @actor_command_window.visible = false
     @active_battler_window.visible = false
     @actor_command_window.opacity = 0
   end
   @status_window.visible = true
 end
 #--------------------------------------------------------------------------
 alias update_phase4_step2_atb_n01 update_phase4_step2
 def update_phase4_step2
   if @active_battler.cast_action != nil
     active_cast = @active_battler.cast_action
     if active_cast.scope == 1 or active_cast.scope == 3 or active_cast.scope == 5
       @active_battler.current_action.target_index = @active_battler.cast_target
     end
     if active_cast.is_a?(RPG::Skill)
       @active_battler.current_action.kind = 1 
       @active_battler.current_action.skill_id = @active_battler.cast_action.id
     elsif active_cast.is_a?(RPG::Item)  
       @active_battler.current_action.kind = 2 
       @active_battler.current_action.item_id = @active_battler.cast_action.id
     end
   end
   for state in @active_battler.battler_states
     @active_battler.remove_state(state.id) if state.extension.include?("ZEROTURNLIFT")
   end
   update_phase4_step2_atb_n01
 end
 #--------------------------------------------------------------------------
 def make_basic_action_result
   if @active_battler.current_action.basic == 0
     execute_action_attack
     return
   end
   if @active_battler.current_action.basic == 1
     @help_window.set_text("#{@active_battler.name} se defende", 1)
     @help_window.visible = true
     @active_battler.active = false
     wait(20)
     @help_window.visible = false if !@escaping
     return
   end
   if @active_battler.is_a?(Game_Enemy) and @active_battler.current_action.basic == 2
     @spriteset.set_action(false, @active_battler.index, @active_battler.run_success)
     $game_system.se_play($data_system.escape_se)
     @active_battler.escape
     pop_help("#{@active_battler.name} Fugiu...")
     return
   end
   if @active_battler.current_action.basic == 3
     @active_battler.active = false
     $game_temp.forcing_battler = nil
     @phase4_step = 1
     return
   end
 end
 #--------------------------------------------------------------------------
 alias make_skill_action_result_atb_n01 make_skill_action_result
 def make_skill_action_result
   skill = $data_skills[@action_battler.current_action.skill_id]
   if @action_battler.cast_action == nil
     if (skill.atk_f > 0 and PHYSICAL_SKILL_CAST) or (skill.int_f > 0 and MAGIC_SKILL_CAST)
       @action_battler.cast_action = skill
       @action_battler.cast_target = @active_battler.current_action.target_index
       @cast_speed = skill.cast_speed(@active_battler)
       @active_battler.cast_action = nil if @cast_speed == 0
       return unless @cast_speed == 0
     end
   end
   make_skill_action_result_atb_n01
   @active_battler.cast_action = nil
   update_meters
 end
 #--------------------------------------------------------------------------
 alias make_item_action_result_atb_n01 make_item_action_result
 def make_item_action_result
   item = $data_items[@action_battler.current_action.item_id]
   if @action_battler.cast_action == nil
     if ITEM_CAST
       @active_battler.cast_action = item
       @active_battler.cast_target = @active_battler.current_action.target_index
       @cast_speed = item.cast_speed(@active_battler)
       return unless @cast_speed == 0
     end
   end
   make_item_action_result_atb_n01
   @active_battler.cast_action = nil
   update_meters
 end 
 #--------------------------------------------------------------------------
 def start_phase4
   @phase4_step = 1
 end
 #--------------------------------------------------------------------------
 def action_end
   @individual_target = nil
   @help_window.visible = false if @help_window != nil && @help_window.visible && !@escaping
   @active_battler.active = false
   unimmortaling
   for member in $game_troop.enemies
     member.non_dead = false if member.non_dead
   end  
   if @active_battler.reflex != nil
     if @active_battler.current_action.kind == 1
       obj = $data_skills[@active_battler.current_action.skill_id]
       @active_battler.perfect_skill_effect(@active_battler, obj)
     elsif @active_battler.current_action.kind == 2
       obj = $data_items[@active_battler.current_action.item_id]
       @active_battler.item_effect(@active_battler, obj)
     else
       @active_battler.perfect_attack_effect(@active_battler)
     end
     pop_damage(@active_battler, obj, @active_battler.reflex)
     @active_battler.perform_collapse
     @active_battler.reflex = nil
     wait(COLLAPSE_WAIT)
   end
   if @active_battler.derivation != 0
     @active_battler.current_action.skill_id = @active_battler.derivation
     @active_battler.current_action.kind = 1
     @active_battler.derivation = 0
     @action_battlers.unshift(@active_battler)
   else
     wait(ACTION_WAIT)
     for member in $game_party.actors + $game_troop.enemies
       @spriteset.set_stand_by_action(member.is_a?(Game_Actor), member.index)
     end
   end
   if @action_battler != nil
     @action_battler.atb = 0
     @action_battlers.delete(@action_battler) 
     @action_battler = nil
   end
 end
 #--------------------------------------------------------------------------
 alias update_phase4_step6_atb_n01 update_phase4_step6
 def update_phase4_step6
   update_phase4_step6_atb_n01
   @atb_turn_count += 1 unless CUSTOM_TC == 2
   if @action_battler != nil
     @active_battler.atb = 0
     @action_battlers.delete(@action_battler) 
     @action_battler = nil
   end
   judge
   turn_end
 end
 #--------------------------------------------------------------------------
 def turn_end
   return if @active_battler == nil
   return if @active_battler.cast_action != nil
   if @active_battler != nil
     @active_battler.second_attack = false
     @active_battler.current_action.clear
     next if @active_battler == nil
     @active_battler.slip_damage = false
     actor = @active_battler.is_a?(Game_Actor)
     damage = 0
     for state in @active_battler.battler_states
       next unless state.extension.include?("SLIPDAMAGE")
       for ext in state.slip_extension
         if ext[0] == "hp"
           base_damage = ext[1] + @active_battler.maxhp * ext[2] / 100
           damage += base_damage + base_damage * (rand(5) - rand(5)) / 100
           slip_pop = ext[3]
           slip_dead = ext[4]
           slip_damage_flug = true
           @active_battler.slip_damage = true
         end
       end  
     end
     if @active_battler.slip_damage? && @active_battler.exist? && !slip_damage_flug
       damage += @active_battler.apply_variance(@active_battler.maxhp / 10, 10)
       slip_dead = false
       slip_pop = true
       slip_damage_flug = true
       @active_battler.slip_damage = true
     end

     damage = @active_battler.hp - 1 if damage >= @active_battler.hp && slip_dead = false
     @active_battler.hp -= damage
     @active_battler.damage = damage if damage > 0
     @spriteset.set_stand_by_action(@active_battler.is_a?(Game_Actor), @active_battler.index)
     @active_battler.perform_collapse if @active_battler.dead? && @active_battler.slip_damage
     @spriteset.set_damage_pop(actor, @active_battler.index, damage) if slip_pop
   end
   @status_window.refresh
   wait(DMG_DURATION / 3) if slip_damage_flug
   slip_damage_flug = false
   if @active_battler != nil
     next if @active_battler == nil
     actor = @active_battler.is_a?(Game_Actor)
     damage = 0
     for state in @active_battler.battler_states
       next unless state.extension.include?("SLIPDAMAGE")
       for ext in state.slip_extension
         if ext[0] == "mp"
           base_damage = ext[1] + @active_battler.maxsp * ext[2] / 100
           damage += base_damage + base_damage * (rand(5) - rand(5)) / 100
           slip_pop = ext[3]
           slip_damage_flug = true
         end
       end
       @active_battler.sp_damage = true
       @active_battler.sp -= damage
       @active_battler.damage = damage if damage > 0
       @spriteset.set_damage_pop(actor, @active_battler.index, damage) if slip_pop
     end
   end
   @status_window.refresh
   wait(DMG_DURATION / 3) if slip_damage_flug
   if @active_battler != nil
     next if @active_battler == nil
     actor = @active_battler.is_a?(Game_Actor)
     damage = 0
     for state in @active_battler.battler_states
       next unless state.extension.include?("REGENERATION")
       for ext in state.slip_extension
         if ext[0] == "hp"
           base_damage = ext[1] + @active_battler.maxhp * ext[2] / 100
           damage += base_damage + base_damage * (rand(5) - rand(5)) / 100
           slip_pop = ext[3]
           slip_damage_flug = true
         end
       end
       @active_battler.hp -= damage
       @active_battler.damage = damage if damage < 0
       @spriteset.set_damage_pop(actor, @active_battler.index, damage) if slip_pop
     end   
   end
   @status_window.refresh
   wait(DMG_DURATION / 3) if slip_damage_flug
   if @active_battler != nil
     next if @active_battler == nil
     actor = @active_battler.is_a?(Game_Actor)
     damage = 0
     for state in @active_battler.battler_states
       next unless state.extension.include?("REGENERATION")
       for ext in state.slip_extension
         if ext[0] == "mp"
           base_damage = ext[1] + @active_battler.maxhp * ext[2] / 100
           damage += base_damage + base_damage * (rand(5) - rand(5)) / 100
           slip_pop = ext[3]
           slip_damage_flug = true
         end
       end
       @active_battler.sp_damage = true
       @active_battler.sp -= damage  
       @active_battler.damage = damage if damage < 0
       @spriteset.set_damage_pop(actor, @active_battler.index, damage) if slip_pop
     end
   end
   @status_window.refresh
   wait(DMG_DURATION / 3) if slip_damage_flug
 end
end

#==============================================================================
# ■ Window_Command
#==============================================================================
class Window_Command < Window_Selectable
 #--------------------------------------------------------------------------
 attr_accessor :commands
 #--------------------------------------------------------------------------
 def commands_size
   return @item_max
 end
end

#==============================================================================
# ■ ATB_Meters
#==============================================================================
class ATB_Meters
 #--------------------------------------------------------------------------
 attr_accessor :meters
 attr_reader   :meters
 attr_accessor :enemy_meters
 attr_reader   :enemy_meters
 #--------------------------------------------------------------------------
 include N01
 #--------------------------------------------------------------------------
 def initialize
   @meters = []
   @enemy_meters = [] if ENEMY_METER != 0
   @skin = RPG::Cache.windowskin(METER_SKIN)
   for i in 0...$game_party.actors.size
     @meter = MeterSprite.new(@skin, 5)
     refresh_meter(i)
   end
   for i in 0...$game_troop.enemies.size
     @enemy_meter = MeterSprite.new(@skin, 5)
     refresh_enemy_meter(i)
   end
   refresh
 end
 #--------------------------------------------------------------------------
 def refresh
   return if !METERS
   for i in @meters.size...$game_party.actors.size
     refresh_meter(i)
   end
   for i in $game_party.actors.size...@meters.size
     @meters[i].dispose
     @meters[i] = nil
   end
   @meters.compact!    
   for i in 0...$game_party.actors.size
     actor = $game_party.actors[i]
     @meters[i].line   = actor.atb_linetype
     @meters[i].amount = actor.atb_lineamount
   end
   if ENEMY_METER != 0
     for i in @enemy_meters.size...$game_troop.enemies.size
       refresh_enemy_meter(i)
     end
     for i in $game_troop.enemies.size...@enemy_meters.size
       @enemy_meters[i].dispose2
       @enemy_meters[i] = nil
     end
     @enemy_meters.compact!    
     for i in 0...$game_troop.enemies.size
       actor = $game_troop.enemies[i]
       @enemy_meters[i].line   = actor.atb_linetype
       @enemy_meters[i].amount = actor.atb_lineamount
     end
   end
 end
 #--------------------------------------------------------------------------
 def refresh_meter(i)
   case METER_POS_STYLE
   when 0
     @meter.x = i * (624 / MAX_MEMBER) + 4 + X_METER
     @meter.y = Y_METER
   when 1
     @meter.x = X_METER + ((624 / MAX_MEMBER) * ((MAX_MEMBER - $game_party.actors.size)/2.0 + i)).floor
     @meter.y = Y_METER
   when 2
     @meter.x = X_METER
     @meter.y = i * 32 + Y_METER
   when 3
     base = ACTOR_POSITION[i]
     @meter.x = base[0] - @skin.width / 3
     @meter.x = 620 - @skin.width / 2 - base[0] if $back_attack
     @meter.y = base[1] + 12
   when 4
     base = METER_POSITION[i]
     @meter.x = base[0]
     @meter.y = base[1]
   end
   @meters[i] = @meter
 end
 #--------------------------------------------------------------------------
 def refresh_enemy_meter(i)
   enemy = $game_troop.enemies[i]
   return @enemy_meters[i] = nil if enemy.dead?
   case ENEMY_METER
   when 1
     @enemy_meter.x = enemy.base_position_x - @skin.width / 3
     @enemy_meter.y = enemy.base_position_y + 16
     @enemy_meter.z = 100
   when 2
     @enemy_meter.x = 32
     @enemy_meter.x = 640 - 32 - skin.width if $back_attack
     @enemy_meter.y = 80 + i * 32
     @enemy_meter.z = 1000
   end
   @enemy_meters[i] = @enemy_meter
 end
 #--------------------------------------------------------------------------
 def visible=(b)
   @meters.each{|sprite| sprite.visible = b }
 end
 #--------------------------------------------------------------------------
 def opacity=(b)
   @meters.each{|sprite| sprite.opacity = b }
 end
 #--------------------------------------------------------------------------
 def dispose
   @meters.each{|sprite| sprite.dispose }
 end
 #--------------------------------------------------------------------------
 def dispose2
   @enemy_meters.each{|sprite| sprite.dispose }
 end
end

#==============================================================================
# ■ ATB_Bars
#==============================================================================
class ATB_Bars
 #--------------------------------------------------------------------------
 include N01
 #--------------------------------------------------------------------------
 def initialize
   @base = Sprite.new
   @base.bitmap = RPG::Cache.windowskin(BAR_SKIN).dup
   @base.x = X_BAR
   @base.y = Y_BAR
   @base.z = 1000
   @width  = @base.bitmap.width
   @height = @base.bitmap.height
   @icon_set = []
   @base.opacity = self.opacity = 0
   refresh
 end
 #--------------------------------------------------------------------------
 def refresh
   @base.opacity = self.opacity = 255 if BARS
   return @base.opacity = self.opacity = 0 if !BARS
   need_initializes = []
   for battler in $game_party.actors + $game_troop.enemies
     exist = false
     for set in @icon_set
       exist |= (set[1] == battler)
     end
     need_initializes.push(battler) unless exist
   end
   for battler in need_initializes
     iconname = nil
     if battler.is_a?(Game_Actor)
       iconname = PARTY_ICON[battler.id]
     else
       iconname = ENEMY_ICON[battler.id]
     end
     if iconname == nil
       if battler.is_a?(Game_Actor)
         iconname = DEFAULT_PARTY
       else
         iconname = DEFAULT_ENEMY
       end
     end
     sprite = Sprite.new
     sprite.bitmap = RPG::Cache.icon(iconname).dup
     sprite.y = Y_BAR + @height / 2 - 12
     @icon_set.push([sprite, battler])
   end
   for set in @icon_set
     set[0].x = X_BAR + @width * set[1].atb / set[1].max_atb - 12
     set[0].z = 1001
     set[0].visible = (!set[1].dead? and set[1].exist?)
   end
 end
 #--------------------------------------------------------------------------
 def visible=(b)
   @base.visible = b
   @icon_set.each{|set| set[0].visible = b }
 end
 #--------------------------------------------------------------------------
 def opacity=(b)
   @base.opacity = b
   @icon_set.each{|set| set[0].opacity = b }
 end
 #--------------------------------------------------------------------------
 def dispose
   @base.dispose
   @icon_set.each{|set| set[0].dispose }
 end
end

#==============================================================================
# ■ ESCAPE_Meters
#==============================================================================
class ESCAPE_Meters
 #--------------------------------------------------------------------------
 attr_accessor :meters
 attr_reader   :meters
 attr_accessor :enemy_meters
 attr_reader   :enemy_meters
 #--------------------------------------------------------------------------
 include N01
 #--------------------------------------------------------------------------
 def initialize
   @skin = RPG::Cache.windowskin(ESCAPE_SKIN)
   @escape_meter = MeterSprite.new(@skin, 3)
   refresh_meter
   refresh
 end
 #--------------------------------------------------------------------------
 def refresh
   @escape_meter.line   = $game_temp.escape_atb_linetype
   @escape_meter.amount = $game_temp.escape_atb_lineamount
 end
 #--------------------------------------------------------------------------
 def refresh_meter
   case ESCAPE_METER_POS_TYPE
   when 0
     @escape_meter.x = 640 - 32 - @skin.width
     @escape_meter.x = 32 if $back_attack
     @escape_meter.y = 80
   when 1
     @escape_meter.x = 320 - skin.width
     @escape_meter.y = 64
   when 2
     @escape_meter.x = ESCAPE_METER_POSITION[0]
     @escape_meter.y = ESCAPE_METER_POSITION[1]
   end
 end
 #--------------------------------------------------------------------------
 def visible=(b)
   @escape_meter.visible = b 
 end
 #--------------------------------------------------------------------------
 def opacity=(b)
   @escape_meter.opacity = b 
 end
 #--------------------------------------------------------------------------
 def dispose
   @escape_meter.dispose
 end
end

#==============================================================================
# ■ Game_Temp
#==============================================================================
class Game_Temp
 #--------------------------------------------------------------------------
 attr_accessor :max_escape_count
 attr_accessor :escape_count
 attr_reader   :max_escape_count
 attr_reader   :escape_count
 #--------------------------------------------------------------------------
 def escape_atb_linetype
   return 2 unless @battle_can_escape
   return 1 if @battle_can_escape
 end
 #--------------------------------------------------------------------------
 def escape_atb_lineamount
   return 100 * @escape_count / @max_escape_count if @battle_can_escape
   return 100 unless @battle_can_escape
 end
 #--------------------------------------------------------------------------
 def max_escape_count
   return @max_escape_count == nil ? @max_escape_count = 0 : @max_escape_count
 end
 #--------------------------------------------------------------------------
 def escape_count
   return @escape_count == nil ? @escape_count = 0 : @escape_count
 end
 #--------------------------------------------------------------------------
 def max_escape_count=(n)
   @max_escape_count = n
 end
 #--------------------------------------------------------------------------
 def escape_count=(n)
   @escape_count = n
 end
end

#==============================================================================
# ■ MeterSprite
#==============================================================================
class MeterSprite < Sprite
 #--------------------------------------------------------------------------
 include N01
 #--------------------------------------------------------------------------
 def initialize(skin, line_height)
   @line_height = line_height
   @skin   = skin
   @width  = @skin.width
   @height = @skin.height / @line_height
   @line   = 1
   @amount = 0
   @base_sprite.dispose if @base_sprite != nil
   @base_sprite = Sprite.new
   @base_sprite.bitmap = @skin
   @base_sprite.src_rect.set(0, 0, @width, @height)
   @base_sprite.z = 450 * line_height
   @base_sprite.z = 60 if METER_POS_STYLE == 3 and @line_height == 5
   @base_sprite.opacity = 0
   super()
   self.z = @base_sprite.z + 1
   self.bitmap = @skin
   self.line = 1
   self.opacity = @base_sprite.opacity = 0 if !METERS or @line_height == 3
 end
 #--------------------------------------------------------------------------
 def line=(n)
   @line = n
   refresh
 end
 #--------------------------------------------------------------------------
 def amount=(n)
   @amount = n
   refresh
 end
 #--------------------------------------------------------------------------
 def refresh
   @base_sprite.opacity = self.opacity
   @base_sprite.z =  self.z - 1
   self.opacity = @base_sprite.opacity = 0 if !METERS and @line_height == 5
   self.src_rect.set(0, @line * @height, @width * @amount / 100, @height)
 end
 #--------------------------------------------------------------------------
 def x=(n)
   super
   @base_sprite.x = n
 end
 #--------------------------------------------------------------------------
 def y=(n)
   super
   @base_sprite.y = n
 end
 #--------------------------------------------------------------------------
 def dispose
   @base_sprite.dispose
   super
 end
end

#==============================================================================
# ■ Window_BattleStatus
#==============================================================================
class Window_BattleStatus < Window_Base
 #--------------------------------------------------------------------------
 alias refresh_atb_n01 refresh
 #--------------------------------------------------------------------------
 def refresh
   if METER_POS_STYLE == 1
     self.contents.clear
     @item_max = $game_party.actors.size
     for i in 0...$game_party.actors.size
       actor = $game_party.actors[i]
       actor_x = ((480 / MAX_MEMBER) * ((MAX_MEMBER - $game_party.actors.size)/2.0 + i)).floor
       draw_actor_name(actor, actor_x, 0)
       draw_actor_hp(actor, actor_x, 32, 120)
       draw_actor_sp(actor, actor_x, 64, 120)
       if @level_up_flags[i]
         self.contents.font.color = normal_color
         self.contents.draw_text(actor_x, 96, 120, 32, "Subiu de Nível!")
       else
         draw_actor_state(actor, actor_x, 96)
       end
     end
     return
   end
   refresh_atb_n01
 end
end

 

 

Se qualcuno può risolvere grazie

Edited by MasterSion

http://img256.imageshack.us/img256/7639/ihateyou.gif

Un uomo senza religione è come un pesce senza bicicletta.

http://img18.imageshack.us/img18/3668/decasoft1.png

http://rpg2s.net/gif/SCContest1Oct.gifhttp://rpg2s.net/gif/SCContest2Oct.gifhttp://rpg2s.net/gif/SCContest2Oct.gif

Link to comment
Share on other sites

UP nessuno mi calcola...

http://img256.imageshack.us/img256/7639/ihateyou.gif

Un uomo senza religione è come un pesce senza bicicletta.

http://img18.imageshack.us/img18/3668/decasoft1.png

http://rpg2s.net/gif/SCContest1Oct.gifhttp://rpg2s.net/gif/SCContest2Oct.gifhttp://rpg2s.net/gif/SCContest2Oct.gif

Link to comment
Share on other sites

  • 4 weeks later...
UP nessuno mi aiuta

http://img256.imageshack.us/img256/7639/ihateyou.gif

Un uomo senza religione è come un pesce senza bicicletta.

http://img18.imageshack.us/img18/3668/decasoft1.png

http://rpg2s.net/gif/SCContest1Oct.gifhttp://rpg2s.net/gif/SCContest2Oct.gifhttp://rpg2s.net/gif/SCContest2Oct.gif

Link to comment
Share on other sites

Con calma xD non sto mica sempre davanti al pc.

Ho preso la demo del Takentai XP e ci ho fatto sopra questa versione, vedi se funziona:

 

#==============================================================================
# ** Aeon System SBS Takentai Version
#------------------------------------------------------------------------------
# Autore: The Sleeping Leonhart
# Versione: 3.0
# Data di rilascio: 28/03/2009
#------------------------------------------------------------------------------
# Descrizione:
# Questo script permette di evocare degli Eoni che sostituiscono il party per tutta
# la loro permanenza. Se gli Eoni muoiono il Party torna in battaglia.
#------------------------------------------------------------------------------
# Istruzioni:
# Create delle Skill che serviranno per richiamare gli Eoni.
# Per personalizzare lo script andate nella sezione Configurazione.
#==============================================================================

#==============================================================================
# Configurazione
#==============================================================================

module Aeon_System
 #=========================================================================
 # Aeon_Skill: Imposta le skill che evocano gli Eoni.
 #-------------------------------------------------------------------------
 # Sintassi:
 # Aeon_Skill = {Skill_ID => [[Actor_ID, ...], Turn, Type],...}
 # Parametri:
 # Skill_ID: Id della skill nel database
 # Actor_ID: Id dell'eroe nel database
 # Turn: Numeri di turni in cui l'eone resta in battaglia, se 0 resta fino al ritiro.
 # Type: 1:Evoca solo l'Eone;
 # 2:Evoca l'eone e l'invocatore;
 # 3:Sostituisce l'evocatore con l'eone.
 #=========================================================================
 Aeon_Skill = {47=>[[3,4],2,1],61=>[[3,4],2,1]}
 #=========================================================================
 # Return_Skill: Imposta la skill che richiama gli Eoni.
 #-------------------------------------------------------------------------
 # Sintassi:
 # Return_Skill= Skill_ID
 # Parametri:
 # Skill_ID: Id della skill nel database
 #=========================================================================
 Return_Skill = 81
 #=========================================================================
 # Transition: Imposta la transizione visualizzata durante l'evocazione.
 #-------------------------------------------------------------------------
 # Sintassi:
 # Transition = String
 # Parametri:
 # String: Nome della Transizione
 #=========================================================================
 Transition = "001-Blind01"
 #=========================================================================
 # BGM: Imposta la musica eseguita durante i truni dell'evocazione.
 #-------------------------------------------------------------------------
 # Sintassi:
 # BGM = {Skill_ID => String}
 # Parametri:
 # Skill_ID: Id della skill nel database che richiama l'eone
 # String: Nome della musica presente nella cartella BGM, se nil la musica non cambia
 #=========================================================================
 BGM = {57 => "005-Boss01"}
 #=========================================================================
 # BGM.default: Imposta la musica per gli Eoni non dichiarati in BGM.
 #-------------------------------------------------------------------------
 # Sintassi:
 # BGM.default = String
 # Parametri:
 # String: Nome della musica presente nella cartella BGM, se nil la musica non cambia
 #=========================================================================
 BGM.default = nil
 #=========================================================================
 # Experience: Imposta se gli Eoni prendono esperienza
 #-------------------------------------------------------------------------
 # Sintassi:
 # Experience = Boolean
 # Parametri:
 # Boolean: Se true gli Eoni prendono esperienza, altrimenti no
 #=========================================================================
 Experience = true
end

$tsl_script = [] if $tsl_script == nil
$tsl_script.push("Aeon System")

class Scene_Battle
 #--------------------------------------------------------------------------
 # * Main Processing
 #--------------------------------------------------------------------------
 alias tslaeons_scenebattle_main main
 def main
@old_party = []
@aeon_turn = 0
@turn_passed = 0
@evocated = false
tslaeons_scenebattle_main
 end
 #--------------------------------------------------------------------------
 # * Determine Battle Win/Loss Results
 #--------------------------------------------------------------------------
 alias tslaeons_scene_battle_judge judge
 def judge
if $game_party.all_dead? and @evocated
  call_old_party
end
# Call old Method
tslaeons_scene_battle_judge
 end
 #--------------------------------------------------------------------------
 # * Action End
 #--------------------------------------------------------------------------
 alias tslaeons_scenebattle_action_end action_end
 def action_end
tslaeons_scenebattle_action_end
skill_id = @action_battler.current_action.skill_id
if @aeon_turn != 0
  if ($game_temp.battle_turn - @turn_called) == @aeon_turn and @evocated
	call_old_party
  end
end
if @action_battler.current_action.kind == 1
  a = true
  for enemy in $game_troop.enemies
	if enemy.exist?
	  a = false
	end
  end
  call_aeon(skill_id) if Aeon_System::Aeon_Skill.include?(skill_id) and a == false and !@evocated
  call_old_party if Aeon_System::Return_Skill == skill_id and @evocated
end
 end
 #--------------------------------------------------------------------------
 # * Call an Aeon
 #--------------------------------------------------------------------------
 def call_aeon(skill_id)
@atb_meters.dispose if METERS
@atb_bars.dispose if BARS
@old_party = $game_party.actors.dup
new_party = []
aeon = Aeon_System::Aeon_Skill[skill_id]
for i in aeon[0]
  new_party.push($game_actors[i])
  $game_actors[i].evocated = true
end
case aeon[2]
when 2
  new_party.push($game_actors[@active_battlers.id])
when 3
  for actor in $game_party.actors
	new_party.push($game_actors[actor.id])
  end
  new_party.delete($game_actors[@active_battlers.id])
end
if Aeon_System::Transition != nil
  Graphics.freeze
  $game_temp.transition_processing = true
  $game_temp.transition_name = Aeon_System::Transition
end
$game_party.actors = new_party.dup
@aeon_escape = $game_temp.battle_can_escape
$game_temp.battle_can_escape = false
@aeon_turn = aeon[1]
@turn_called = $game_temp.battle_turn
@evocated = true
bgm = Aeon_System::BGM
Audio.bgm_play("Audio/BGM/" + bgm[skill_id], 100, 100) if bgm.include?(skill_id) and bgm[skill_id] != nil
@old_current_battler = []
for battler in @current_battler
  if battler.is_a?(Game_Actor)
	@old_current_battler.push(battler)
	@current_battler.delete(battler)
  end
end
@spriteset.refresh_actor_sprites
@status_window.refresh
@atb_meters = Atb_Meters.new if N01::METERS
@atb_bars = Atb_Bars.new if N01::BARS
 end
 #--------------------------------------------------------------------------
 # * Call the old Party
 #--------------------------------------------------------------------------
 def call_old_party
if Aeon_System::Transition != nil
  Graphics.freeze
  $game_temp.transition_processing = true
  $game_temp.transition_name = Aeon_System::Transition
end
@atb_meters.dispose if METERS
@atb_bars.dispose if BARS
$game_party.actors = @old_party.dup
$game_system.bgm_play($game_system.battle_bgm)
$game_temp.battle_can_escape = @aeon_escape
for battler in @current_battler
  @current_battler.delete(battler) if battler.is_a?(Game_Actor)
end
for battler in @old_current_battler
  @current_battler.push(battler)
end
@spriteset.refresh_actor_sprites
@status_window.refresh
@atb_meters = Atb_Meters.new if N01::METERS
@atb_bars = Atb_Bars.new if N01::BARS
@evocated = false
 end
 #--------------------------------------------------------------------------
 # * Start After Battle Phase
 #--------------------------------------------------------------------------
 alias tslaeons_scenebattle_start_phase5 start_phase5
 def start_phase5
if @evocated
  call_old_party
end
if Aeon_System::Experience
  exp = 0
  for enemy in $game_troop.enemies
	unless enemy.hidden
	  exp += enemy.exp
	end
  end
  for i in 1...$data_actors.size
	actor = $game_actors[i]
	if actor.cant_get_exp? == false
	  if actor.evocated == true
		last_level = actor.level
		actor.exp += exp
		actor.evocated = false
	  end
	end
  end
end
# Call old Method
tslaeons_scenebattle_start_phase5
 end
end

class Spriteset_Battle
 def refresh_actor_sprites
for sprite in @actor_sprites
  sprite.dispose
end
@actor_sprites.clear
for i in 0...$game_party.actors.size
  @actor_sprites.push(Sprite_Battler.new(@viewport2, $game_party.actors[i]))
end
 end
 
 alias tslaeon_sprtstbttl_st_stnd_b_ctn set_stand_by_action
 def set_stand_by_action(actor, index)
return if actor && @actor_sprites[index] == nil
return if !actor && @enemy_sprites[index] == nil
tslaeon_sprtstbttl_st_stnd_b_ctn(actor, index)
 end
end

class Game_Actor < Game_Battler
 #--------------------------------------------------------------------------
 # * Public Instance Variables
 #--------------------------------------------------------------------------
 attr_accessor :evocated
 #--------------------------------------------------------------------------
 # * Object Initialization
 # actor_id : actor ID
 #--------------------------------------------------------------------------
 alias tslaeons_game_actor_initialize initialize
 def initialize(actor_id)
super()
@evocated = false
# Call old Method
tslaeons_game_actor_initialize(actor_id)
 end
end

class Game_Party
 #--------------------------------------------------------------------------
 # * Public Instance Variables
 #--------------------------------------------------------------------------
 attr_accessor :actors # actors
end

 

Va messo sotto lo script dell'ATB, non l'ho testato con gli overdrive e tutti quegli altri ammenicoli, non mi andava, troppa roba.

Link to comment
Share on other sites

  • 2 weeks later...

Accidenti però è davvero pieno di bug ò.ò

per esempio (uso la versione per il BS standard) quando l'evocazione termina attacca la musica che ho settato per la battaglia di default (invece uso uno script che rende la musica di battaglia uguale e contigua a quella della mappa, quando la switch X è attiva); poi non capisco perché e ci sto' impazzendo, settando l'eone come evocazione che sostituisce tutto il party (resta solo l'eone) mi appare insieme a lui un personaggio del database che addirittura non uso O.ò.

Poi avevo assegnato all'Eone la magia Fire e Firara-dopo ho deciso di sostituire Firara con un'altra e quella nuova non mi appare, resta Firara!

Una cosa molto scomoda: quando l'evocazione termina, metti caso che è rimasta con un'esigua quantità di Hp, non puoi farglieli recuperare! Io uso un sistema di salvataggio ad eventi che ricarica il gruppo automaticamente al tocco dell'evento di salvataggio, ma essendo l'eone fuori dal gruppo lui non si ricarica X_X

naturalmente posso ovviare mettendo un ricarica totale per tutti e 12 i miei eoni, ma praticamente devo rifare mezzo progetto XD.

La seccatura più grande comunque è quando setto nello script di far apparire un eone che sostituisce tutto il party e insieme a lui mi appaiono altri 1-2 che non si sa da dove li ha presi.

 

 

Una richiesta: potresti fare in modo che la magia per richiamare l'eone dalla battaglia sia più di una? Perché volevo fare che se l'eone usava la sua tecnica speciale, automaticamente sparisse dalla battaglia facendo terminare l'evocazione.

Io ci ho provato, mettendo delle virgole accanto l'ID e aggiunge gli ID delle altre skills di richiamo, ma non succede nulla (anzi mi aspettavo che desse errore).

Link to comment
Share on other sites

  • 3 weeks later...

Scusate, vorrei chiedere se fosse possibile fare una piccola (spero :sisi: ) modifica allo script: praticamente, avete presente il menù dove puoi selezionare status, alleva, addestra? Mi chiedevo se si potesse aggiungere un'opzione nella quale puoi scegliere quali evocazioni portare con te, perchè io nel mio gioco vorrei metterne veramente tante, ma vorrei fosse possibile portarne con sè solo sei, un po' come nei pokèmon.. Si può fare?

 

Se volete qualcosa in cambio basta chiedere..

http://img823.imageshack.us/img823/7646/logofzl.jpg

http://www.rpg2s.net/forum/index.php?showtopic=13689

 

http://img841.imageshack.us/img841/861/simo696eboko93.png

http://www.rpg2s.net/forum/index.php?showtopic=13396

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