LordFenerSSJ Posted July 19, 2008 Share Posted July 19, 2008 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 More sharing options...
Sleeping Leonhart Posted July 21, 2008 Author Share Posted July 21, 2008 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 ;) http://img296.imageshack.us/img296/8784/csuserbarew2.pngScarica la Demo!Tutti i miei script(o quasi) li trovi Qui! Link to comment Share on other sites More sharing options...
LordFenerSSJ Posted July 23, 2008 Share Posted July 23, 2008 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 More sharing options...
Dark Sora Posted July 27, 2008 Share Posted July 27, 2008 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 I miei tutorialBS in tempo reale ad eventiTecnica RubaPesca ad eventiEvocareLancio del massoMinigioco del NegozioPartecipante al Rpg2s.net Game Contest 2008/2009http://www.rpg2s.net/contest/GameContest0809/gc0809-bannerino.jpgGioco in Sviluppo: Factionshttp://img252.imageshack.us/img252/8742/bannerinoteamlrmiu6.png http://img393.imageshack.us/img393/9920/legenrpgmaniamu3.gifForum:The legend of making 26373462 I love you!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!Mai Dire Speciale CinemaL'Uomo che Usciva TuttiBotte e Risposte / Rapine a mano a manoMobbastaMobbasta veramente per�Mani in AltoPer un peloGiammangiatoAnche no / Il buio / AhiaBurleAcqua Corrente / UrgenzeLegendRpgManiaIl 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 SwordmasterHoly ThunderforceBard's SongTALES OF MAGICEntra 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 GIOCOBunnies AreaBunnies Can't PhoneBunnies Can't play 360Bunnies Can't play RugbyBunnies Can't win racesBunnies Can't Cook EggsBunnies Can't cook turkeyBunnies Can't DateBunnies Can't ParkBunnies Can't play with FireworksMi 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 4PS2 : Kingdom Hearts Re Chain of MemoriesDS : Final Fantasy IV / Final Fantasy XII : Revenant Wings / Spore Creatures / Dinosaur KingPSP : Ratchet and Clank : Size Matters / Secret Agent Clank / Naruto Ultimate Ninja Heroes 2 / GuitarWay To Heaven 4 AmplifiedPC : Frets on Fire con la chitarra!!! O_ORpg Maker XpI miei progetti:Per ora nulla...http://team.ffonline.it/imgpersonaggio/cloud_it.jpghttp://img230.imageshack.us/img230/608/pencehaynerroxasolettejyt1.th.jpghttp://r3.fodey.com/15d01c4c6f2dd4908b320f697f7fbe7bd.1.gifhttp://img801.mytextgraphics.com/flamewordmaker/2008/03/28/2554b85201dbda32d87d5873d964a4fd.gif Link to comment Share on other sites More sharing options...
Silver Element Posted August 27, 2008 Share Posted August 27, 2008 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! Link to comment Share on other sites More sharing options...
makgyver Posted August 30, 2008 Share Posted August 30, 2008 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 More sharing options...
makgyver Posted August 31, 2008 Share Posted August 31, 2008 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 More sharing options...
Sleeping Leonhart Posted September 20, 2008 Author Share Posted September 20, 2008 @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. http://img296.imageshack.us/img296/8784/csuserbarew2.pngScarica la Demo!Tutti i miei script(o quasi) li trovi Qui! Link to comment Share on other sites More sharing options...
Valentino Posted December 24, 2008 Share Posted December 24, 2008 Può essere che sia incompatibile con L'SDK? A me da errore se lo metto.. Targhette Rpg2s:http://img14.imageshack.us/img14/5421/contestsecondo.png Partecipante al Rpg2s.net Game Contest #3http://www.rpg2s.net/images/gc3/gc3_firma.pngGioco in Sviluppo: DREAMS http://img16.imageshack.us/img16/2121/dreamstitle2.png SKY's CRY!http://www.rpg2s.net...showtopic=12557 Lista di script creati da me: Support System FF9 Multiscope System Advanced Armor System Protection System Trance System FF2 Development System Scene Vittoria Animato Aperion System Elemosina System Valentino's Scene Shop Item Plus System Panorama Acceleration System Conversione da VX a XP, Vehicle System Sentinel System Scene Zoolab Valentino's Random System Oggetti Riutilizzabili Break Pictures Limit Gameover Animato Valentino's Gun Mode Valentino's Ally System Link to comment Share on other sites More sharing options...
Sleeping Leonhart Posted December 25, 2008 Author Share Posted December 25, 2008 Io con il 2.4 di SDK non ho problemi, non so che versione usi tu o se hai altri script http://img296.imageshack.us/img296/8784/csuserbarew2.pngScarica la Demo!Tutti i miei script(o quasi) li trovi Qui! Link to comment Share on other sites More sharing options...
Valentino Posted December 29, 2008 Share Posted December 29, 2008 (edited) Ok ho risolto! avevo solo messo l'sdk nella posizione sbagliata XD Edited December 29, 2008 by Valentino Targhette Rpg2s:http://img14.imageshack.us/img14/5421/contestsecondo.png Partecipante al Rpg2s.net Game Contest #3http://www.rpg2s.net/images/gc3/gc3_firma.pngGioco in Sviluppo: DREAMS http://img16.imageshack.us/img16/2121/dreamstitle2.png SKY's CRY!http://www.rpg2s.net...showtopic=12557 Lista di script creati da me: Support System FF9 Multiscope System Advanced Armor System Protection System Trance System FF2 Development System Scene Vittoria Animato Aperion System Elemosina System Valentino's Scene Shop Item Plus System Panorama Acceleration System Conversione da VX a XP, Vehicle System Sentinel System Scene Zoolab Valentino's Random System Oggetti Riutilizzabili Break Pictures Limit Gameover Animato Valentino's Gun Mode Valentino's Ally System Link to comment Share on other sites More sharing options...
elle92 Posted January 1, 2009 Share Posted January 1, 2009 (edited) 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 January 4, 2009 by elle92 Progetti in Corso: [spoiler] The Devil's SonataIl 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=14695Sono ben accette critiche(costruttivexD) e consigli di ogni genere!^_^[/spoiler] Link to comment Share on other sites More sharing options...
elle92 Posted January 18, 2009 Share Posted January 18, 2009 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 SonataIl 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=14695Sono ben accette critiche(costruttivexD) e consigli di ogni genere!^_^[/spoiler] Link to comment Share on other sites More sharing options...
Sleeping Leonhart Posted January 18, 2009 Author Share Posted January 18, 2009 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 endPoi 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_graphice nel secondo scrivi:draw_actor_battlerpoi clicca il 3° pulsante(sostituisci tutto) ed hai finito ;) http://img296.imageshack.us/img296/8784/csuserbarew2.pngScarica la Demo!Tutti i miei script(o quasi) li trovi Qui! Link to comment Share on other sites More sharing options...
elle92 Posted January 19, 2009 Share Posted January 19, 2009 (edited) :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 January 20, 2009 by elle92 Progetti in Corso: [spoiler] The Devil's SonataIl 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=14695Sono ben accette critiche(costruttivexD) e consigli di ogni genere!^_^[/spoiler] Link to comment Share on other sites More sharing options...
elle92 Posted January 21, 2009 Share Posted January 21, 2009 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 SonataIl 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=14695Sono ben accette critiche(costruttivexD) e consigli di ogni genere!^_^[/spoiler] Link to comment Share on other sites More sharing options...
Sleeping Leonhart Posted January 21, 2009 Author Share Posted January 21, 2009 Passami il tuo Script.rxdata http://img296.imageshack.us/img296/8784/csuserbarew2.pngScarica la Demo!Tutti i miei script(o quasi) li trovi Qui! Link to comment Share on other sites More sharing options...
elle92 Posted January 21, 2009 Share Posted January 21, 2009 fatto ti ho mandato un mp^^ grazie Progetti in Corso: [spoiler] The Devil's SonataIl 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=14695Sono ben accette critiche(costruttivexD) e consigli di ogni genere!^_^[/spoiler] Link to comment Share on other sites More sharing options...
Valentino Posted January 31, 2009 Share Posted January 31, 2009 Si potrebbe fare in modo che il mostro evocato appaia in mezzo allo schermo? Targhette Rpg2s:http://img14.imageshack.us/img14/5421/contestsecondo.png Partecipante al Rpg2s.net Game Contest #3http://www.rpg2s.net/images/gc3/gc3_firma.pngGioco in Sviluppo: DREAMS http://img16.imageshack.us/img16/2121/dreamstitle2.png SKY's CRY!http://www.rpg2s.net...showtopic=12557 Lista di script creati da me: Support System FF9 Multiscope System Advanced Armor System Protection System Trance System FF2 Development System Scene Vittoria Animato Aperion System Elemosina System Valentino's Scene Shop Item Plus System Panorama Acceleration System Conversione da VX a XP, Vehicle System Sentinel System Scene Zoolab Valentino's Random System Oggetti Riutilizzabili Break Pictures Limit Gameover Animato Valentino's Gun Mode Valentino's Ally System Link to comment Share on other sites More sharing options...
MasterSion Posted February 24, 2009 Share Posted February 24, 2009 (edited) Ho un problema di compatibilità con questo scriptEnu SBS Tanketai XPEvoco e funziona tutto, ma alla fine della battaglia se c'è ancora l'evocazione mi da un errorequalcuno 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 February 28, 2009 by MasterSion http://img256.imageshack.us/img256/7639/ihateyou.gifUn uomo senza religione è come un pesce senza bicicletta.http://img18.imageshack.us/img18/3668/decasoft1.pnghttp://rpg2s.net/gif/SCContest1Oct.gifhttp://rpg2s.net/gif/SCContest2Oct.gifhttp://rpg2s.net/gif/SCContest2Oct.gif Link to comment Share on other sites More sharing options...
MasterSion Posted March 2, 2009 Share Posted March 2, 2009 UP nessuno mi calcola... http://img256.imageshack.us/img256/7639/ihateyou.gifUn uomo senza religione è come un pesce senza bicicletta.http://img18.imageshack.us/img18/3668/decasoft1.pnghttp://rpg2s.net/gif/SCContest1Oct.gifhttp://rpg2s.net/gif/SCContest2Oct.gifhttp://rpg2s.net/gif/SCContest2Oct.gif Link to comment Share on other sites More sharing options...
MasterSion Posted March 28, 2009 Share Posted March 28, 2009 UP nessuno mi aiuta http://img256.imageshack.us/img256/7639/ihateyou.gifUn uomo senza religione è come un pesce senza bicicletta.http://img18.imageshack.us/img18/3668/decasoft1.pnghttp://rpg2s.net/gif/SCContest1Oct.gifhttp://rpg2s.net/gif/SCContest2Oct.gifhttp://rpg2s.net/gif/SCContest2Oct.gif Link to comment Share on other sites More sharing options...
Sleeping Leonhart Posted March 28, 2009 Author Share Posted March 28, 2009 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. http://img296.imageshack.us/img296/8784/csuserbarew2.pngScarica la Demo!Tutti i miei script(o quasi) li trovi Qui! Link to comment Share on other sites More sharing options...
Goofy ! Posted April 7, 2009 Share Posted April 7, 2009 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_Xnaturalmente 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 More sharing options...
boko93 Posted April 26, 2009 Share Posted April 26, 2009 Scusate, vorrei chiedere se fosse possibile fare una piccola (spero ) 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.jpghttp://www.rpg2s.net/forum/index.php?showtopic=13689 http://img841.imageshack.us/img841/861/simo696eboko93.pnghttp://www.rpg2s.net/forum/index.php?showtopic=13396 Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now