-
Posts
1,352 -
Joined
-
Last visited
-
Days Won
2
Content Type
Profiles
Forums
Calendar
Posts posted by Squall_Leonheart
-
-
Never per transportare lo script delle licenze senza copiarlo dalla conv,apri la demo hostata da sleep e copia la classe license board dall'editor degli script
-
Ottimo script kmq volevo chiederti se si potesse far si che alcune abilita' e magie potesse essere apprese solo da alcuni personaggi.
Vedi che nella demo c'è il grid editor apposta per creare una scacchiera per ogni personaggio,basta che nn inserisci la stessa magia nei personaggi che nn devono averla.
scustae il milionesimo ripost ma è troppo importyante questo script x ultimare il mio giocovi pego potete rimettere lo script nella solita casella poiler verde invece ce in quella attuale bianca, perchè come già detto, mi si copia su un unica linea invece che nelle varie righe ed è l unico script che fa così
prego qualcuno di ripostarlo o riscriverlo grazie
never_land Inviato il Ieri, 02:30 PM
scusate il ripost ma devo avere assolutamente questo script, solamente che come ho già detto, mi si copiatutto su una riga, qualcuno può dirmi come copiarlo (seconde me è per colpa della casella dove vi è inserito lo scipt, che è diversa dalle altre...........boo..........)
Delle volte mi è capitato,nn so da cosa dipende ma prova a copiarlo prima nel txt oppure nella demo postata da Sleeping copia lo script per intero.
-
Cavolo 53 visite ma nessuno ha commentato ASDXD almeno per sapere se vi funzionavaxD
-
Questo script permette la camminata diagonale,nella demo ci sono anche altre funzioni derivanti da altri script..Necessita dell'SDK.
-
Dunque premetto che non sono un esperto con il ruby,però da quanto leggo l'errore che ti dà dipende da come richiami lo script...
Nella demo se vedi per richiamarlo utilizzano dei commenti con scritto light e dei numeri,i numeri stanno per il grado d'angolazione che vuoi imporre,oer attivare o disattivare la scena ti consiglio di usare gli switch locali sull'evento.
Prova a creare un evento con un commento nel quale devi scivere:
Light
60|120|150|1|6
Fammi sapere...(Metti animazione on all'evento impostato con azione.)
P.S. Può anke derivare dall'SDK.
-
ASD possibile che questo script non esista?
Io avevo una demo in cui c'erano inseriti sia la camminatam diagonale che le 9 poseO,O
-
Dovresti mostrare un chara d'esempio per far capire agli utenti se è quello che cercanoxD
-
Dunque scusate per il doppio post ma in attesa di una risposta volevo segnalarvi che su rmpx.org ho trovato uno script delle limit break compatibile con l'RTAB,però non ci capisco molto e non so come usarlo,purtroppo non sono riuscito a capire l'autore,però dalla mia traduzione ne ho ricavato che non è nient'altro che una modifica del KGC_Overdrive...Qualcuno puoi aiutarmi ad usarlo?
#============================================================================== # ** KGC_Overdrive #------------------------------------------------------------------------------ # When the privately drawn gauge becomes filled, the skill attached to it is # enabled. #Edited by MistTribe to make it more FF7 like. I used the KGC_Ringer script placed way at #the bottom so if you edit the OD_GAUGE_MAX(line 17) then you have make #OD_GAUGE_MAX(line 377) the same value. I set it to 500 as so it gains a little faster. #============================================================================== #============================================================================== # * Customization Section * #============================================================================== module KGC # Overdrive gauge maximum. OD_GAUGE_MAX = 500 # Overdrive gauge gain rate. # The order (index) and conditions are as follows: # Order(index) and conditions are as follows: # 0 = Attack 1 = Damage # 2 = Victory 3 = Escape # 4 = Alone 5 = Action # 6 = Fatal # # The accumulation speed of '0'(Attack) and '1'(Damage) changes based on the # amount of damage. The higher the rate, the faster the overdrive gauge fills. OD_GAIN_RATE = [100, 100, 200, 100, 160, 100, 160] end $imported = {} if $imported == nil $imported["LimitBreak"] = true if $game_special_elements == nil $game_special_elements = {} $data_system = load_data("Data/System.rxdata") end # OverDrive Attribute $game_special_elements["limitbreak"] = $data_system.elements.index("LimitBreak") #============================================================================== # ** Game_Battler (Part 3) #============================================================================== class Game_Battler attr_accessor :base_damage #-------------------------------------------------------------------------- # * Applying Normal Attack Effects (Edited) # attacker : battler #-------------------------------------------------------------------------- alias attack_effect_KGC_OverDrive attack_effect def attack_effect(attacker) @base_damage = nil # Execute the original process result = attack_effect_KGC_OverDrive(attacker) if @base_damage == nil # Retaining basic damage value @base_damage = [attacker.atk - self.pdef / 2, 0].max * (20 + attacker.str) / 20 end # When the damage is received if result && self.damage[attacker].is_a?(Numeric) # When attacking increase decision if attacker.is_a?(Game_Actor) && self.is_a?(Game_Enemy) && attacker.overdrive_type == 0 && self.base_damage > 0 # OD gauge growth calculation od_up = [[self.damage[attacker] * KGC::OD_GAIN_RATE[0] * 10 / self.base_damage, 1].max, 160].min # OD gauge increase attacker.overdrive += od_up # At the time of suffering damage increase decision elsif attacker.is_a?(Game_Enemy) && self.is_a?(Game_Actor) && self.overdrive_type == 1 && self.base_damage > 0 od_up = [self.damage[attacker] * KGC::OD_GAIN_RATE[1] * 10 / self.maxhp, 1].max self.overdrive += od_up end end return result end #-------------------------------------------------------------------------- # * Apply Skill Effects (Edited) # user : the one using skills (battler) # skill : skill #-------------------------------------------------------------------------- alias skill_effect_KGC_OverDrive skill_effect def skill_effect(user, skill) @base_damage = nil # Execute the original process result = skill_effect_KGC_OverDrive(user, skill) if @base_damage == nil #Calculating power power = skill.power + user.atk * skill.atk_f / 100 if power > 0 power -= self.pdef * skill.pdef_f / 200 power -= self.mdef * skill.mdef_f / 200 power = [power, 0].max end # Calculating magnification ratio rate = 20 rate += (user.str * skill.str_f / 100) rate += (user.dex * skill.dex_f / 100) rate += (user.agi * skill.agi_f / 100) rate += (user.int * skill.int_f / 100) # Retaining the basic damage @base_damage = power * rate / 20 end #When the damage is received if result && self.damage[user].is_a?(Numeric) # When attacking increase decision if user.is_a?(Game_Actor) && self.is_a?(Game_Enemy) && user.overdrive_type == 0 && self.base_damage > 0 # OD gauge growth calculation od_up = [[self.damage[user] * KGC::OD_GAIN_RATE[0] * 10 / self.base_damage, 1].max, 160].min # OD gauge increase user.overdrive += od_up # At the time of suffering damage increase decision elsif user.is_a?(Game_Enemy) && self.is_a?(Game_Actor) && self.overdrive_type == 1 && self.base_damage > 0 od_up = [self.damage[user] * KGC::OD_GAIN_RATE[1] * 10 / self.maxhp, 1].max self.overdrive += od_up end end # When overdrive skill is used if user.is_a?(Game_Actor) && skill.element_set.include?($game_special_elements["limitbreak"]) user.overdrive = 0 end return result end end #============================================================================== # ** Game_Actor #============================================================================== KGC_Game_Actor_first = "LimitBreak" unless defined?(KGC_Game_Actor) module KGC_Game_Actor #-------------------------------------------------------------------------- # * Active decision of skill #-------------------------------------------------------------------------- if defined?(skill_can_use?) && !@_skill_can_use_overdrive alias skill_can_use_KGC_OverDrive skill_can_use? else @_skill_can_use_overdrive = true end def skill_can_use?(skill_id) result = true skill = $data_skills[skill_id] if skill != nil && skill.element_set.include?($game_special_elements["limitbreak"]) result = self.overdrive == KGC::OD_GAUGE_MAX end if defined?(skill_can_use_KGC_OverDrive) return result & skill_can_use_KGC_OverDrive(skill_id) else return result & super end end module_function :skill_can_use? public :skill_can_use? end class Game_Actor < Game_Battler include KGC_Game_Actor attr_writer :overdrive_type #-------------------------------------------------------------------------- # * Setup #-------------------------------------------------------------------------- alias setup_KGC_OverDrive setup def setup(actor_id) # Executing the processing of the origin setup_KGC_OverDrive(actor_id) @overdrive, @overdrive_type = 0, 1 end #-------------------------------------------------------------------------- # * Acquisition of OverDrive gauge #-------------------------------------------------------------------------- def overdrive @overdrive = 0 if @overdrive == nil return @overdrive end #-------------------------------------------------------------------------- # * Operation of OverDrive gauge #-------------------------------------------------------------------------- def overdrive=(value) @overdrive = [[value, 0].max, KGC::OD_GAUGE_MAX].min end #-------------------------------------------------------------------------- # * Acquisition of OverDrive type #-------------------------------------------------------------------------- def overdrive_type @overdrive_type = 0 if @overdrive_type == nil return @overdrive_type end end #========================================================================== ==== # ** Scene_Battle (Part 1) #========================================================================== ==== class Scene_Battle #-------------------------------------------------------------------------- # * Battle Ends # result : results (0:win 1:lose 2:escape) #-------------------------------------------------------------------------- alias battle_end_KGC_OverDrive battle_end def battle_end(result) case result when 0 # Victory $game_party.actors.each { |actor| next unless actor.exist? #When drive type "victory" is, addition if actor.overdrive_type == 2 actor.overdrive += KGC::OD_GAIN_RATE[2] end } when 1 # Flight $game_party.actors.each { |actor| next unless actor.exist? # When drive type "flight" is, addition if actor.overdrive_type == 3 actor.overdrive += KGC::OD_GAIN_RATE[3] end } end # Defeat battle_end_KGC_OverDrive(result) end end #============================================================================== # ** Scene_Battle (Part 4) #============================================================================== class Scene_Battle #-------------------------------------------------------------------------- # * Frame Update (main phase step 2 : start action) (Edited) #-------------------------------------------------------------------------- alias update_phase4_step2_KGC_OverDrive update_phase4_step2 def update_phase4_step2(battler) if battler.is_a?(Game_Actor) # Gauge increase decision case battler.overdrive_type when 4 # Lonely battle alone = true $game_party.actors.each { |actor| next if actor == battler # When the survivor is, it is not lonely if actor.exist? alone = false break end } od_up = alone ? KGC::OD_GAIN_RATE[4] : 0 when 5 # When acting od_up = KGC::OD_GAIN_RATE[5] when 6 # Dying od_up = (battler.hp <= battler.maxhp / 4) ? KGC::OD_GAIN_RATE[6] : 0 else od_up = 0 end battler.overdrive += od_up end # Executing the processing of the origin update_phase4_step2_KGC_OverDrive(battler) end #-------------------------------------------------------------------------- # * Frame Update (main phase step 4 : animation for target) (Meter Edited) #-------------------------------------------------------------------------- alias update_phase4_step4_KGC_OverDrive update_phase4_step4 def update_phase4_step4(battler) @status_window.refresh update_phase4_step4_KGC_OverDrive(battler) end end #============================================================================== # ** Window_BattleStatus #============================================================================== class Window_BattleStatus < Window_Base #-------------------------------------------------------------------------- # * Add Overdrive Meters #-------------------------------------------------------------------------- alias refresh_KGC_OverDrive refresh def refresh(number = 0) if self.contents == nil self.contents = Bitmap.new(width - 32, height - 32) end if number == 0 for i in 0...$game_party.actors.size draw_actor_od($game_party.actors[i], i * 160 + 4, 88, 120) end else if $game_party.actors[number].is_a?(Game_Actor) draw_actor_od($game_party.actors[number], number * 160 + 4, 88, 120) end end refresh_KGC_OverDrive(number) end #-------------------------------------------------------------------------- # * Opacity Fix #-------------------------------------------------------------------------- alias update_KGC_OverDrive update def update if $game_temp.battle_main_phase self.contents_opacity -= 4 if self.contents_opacity > 191 else self.contents_opacity += 4 if self.contents_opacity < 255 end end #-------------------------------------------------------------------------- # * Draw Overdrive Meter #-------------------------------------------------------------------------- def draw_actor_od(actor, x, y, width = 144) rate = actor.overdrive.to_f / KGC::OD_GAUGE_MAX plus_x = 0 rate_x = 0 plus_y = 25 plus_width = 0 rate_width = 100 height = 10 align1 = 1 align2 = 2 align3 = 0 grade1 = 1 grade2 = 0 color1 = Color.new(0, 0, 0, 192) color2 = Color.new(255, 255, 192, 192) color3 = Color.new(0, 0, 0, 192) color4 = Color.new(64, 0, 0, 192) color5 = Color.new(80 - 24 * rate, 80 * rate, 14 * rate, 192) color6 = Color.new(240 - 72 * rate, 240 * rate, 62 * rate, 192) od = (width + plus_width) * actor.overdrive * rate_width / 100 / KGC::OD_GAUGE_MAX gauge_rect(x + plus_x + width * rate_x / 100, y + plus_y, width, plus_width + width * rate_width / 100, height, od, align1, align2, align3, color1, color2, color3, color4, color5, color6, grade1, grade2) end end #============================================================================== # ** KGC_Overdrive Ringer (09-05-2006) #------------------------------------------------------------------------------ # by DerVVulfman # #------------------------------------------------------------------------------- # A requested feature, this script checks whenever the overdrive bar is filled # and plays a pre-set sound effect accordingly. There isn't much to the script # and was fairly easy to write. It will work with both versions 1 and 2 of the # KGC_Overdrive script that I've posted, and will probably work with the ori- # ginal version of KGC_Overdrive before it was edited by Minkoff. # #============================================================================== #============================================================================== # ** Scene_Battle #------------------------------------------------------------------------------ # This class performs battle screen processing. #============================================================================== class Scene_Battle # Overdrive gauge maximum (same value as in KGC_OverDrive Script). OD_GAUGE_MAX = 500 #-------------------------------------------------------------------------- # * Full OD Gauge SE #-------------------------------------------------------------------------- def fullod_se Audio.se_play("Audio/SE/015-jump01", 100, 100) end #-------------------------------------------------------------------------- # * Frame renewal (OD gauge renewal phase) #-------------------------------------------------------------------------- alias update_phase0_overring update_phase0 def update_phase0 # Call the original def from RTAB update_phase0_overring # Go through the Actors $game_party.actors.each { |actor| # Only perform if the actor exists next unless actor.exist? # When the Overdrive bar is set to zero, # Reset the Overdrive Ringer to false if actor.overdrive == 0 actor.overdrive_ring = false end # When the Overdrive Ringer hasn't rung if actor.overdrive_ring == false # But the Overdrive Bar is filled if actor.overdrive == OD_GAUGE_MAX # Play the Overdrive Sound Effect fullod_se # And Set the Overdrive Ringer to true actor.overdrive_ring = true end end } end end #============================================================================== # ** Game_Actor #------------------------------------------------------------------------------ # This class handles the actor. It's used within the Game_Actors class # ($game_actors) and refers to the Game_Party class ($game_party). #============================================================================== class Game_Actor < Game_Battler #-------------------------------------------------------------------------- # * Public Instance Variables #-------------------------------------------------------------------------- attr_accessor :overdrive_ring #-------------------------------------------------------------------------- # * Setup #-------------------------------------------------------------------------- alias setup_KGC_OverRing setup def setup(actor_id) # Executing the processing of the origin setup_KGC_OverRing(actor_id) @overdrive_ring = false end end -
Dunque,grazie per avermi risposto,però ho riscontrato dei problemi,le limit funzionano ma con il sistema di battaglia normale e non con l'RATB.come risolvo?
Secondo non so dove prendere l'ultimo SDK per far funzionare lo script di Sephiroth Spawn e terzo riguardo la camminata diagonale ho trovato solo quella di Dad.
Come devo fare?
-
Dunque siccome con il tasto cerca non ho trovato niente,vi porgo qui la richiesta di questi 3 script(ammesso che esistanoxD)
1)Camminata diagonale
Descrizione:Una volta avevo una demo in cui era inserita a camminata diagonale con il rispettivo frame + la camminata fluida,per farla breve c'era un'animazione a 9 frame per tutti e 8 i lati
2)Limit Break
Descrizione:Sistema di tecniche speciale alla FFVII,non so se sia stato creato però provoXDPossibilmente compatibile con l'RTAB
3)In pratica vorrei che per esempio in un panorama dover c'è una prateria in primo piano e una casa in secondo,più l'eroe si allontani più si rimpiccioliscie il chara,potrei farlo ad eventi ma credo che gli script evitano dei rallentamenti.
Scusate se sono seccante ma credo che il forum serva a questo^^
-
Innanzitutto complimenti all'autore che ha fatto un bel lavoro^^
Poi volevo chiedere se in questa versione c'è abilitata la funzione che fa si che alcune licenze si attivino solo ad un punto del gioco,tipo per gli esper in FFXII(A me precisamente servirebbe che dopo un determinato evento sia apprendibile una skill)
-
SCENE CARICAMENTO
Autore:Io
Descrizione:Dunque vedendo le varie scene intro postate per i forum,ci ho iniziato a capire qualcosa e ho deciso di fare il mio primo scriptXD
Dunque questa scene in pratica permette all'utente di far si che una successione di immagini portino a mostrare un caricamento professionaleXD
In parole povere,quando volete,magari prima di una scena,fate caricare il gioco per dargli un tocco in più.
Allegati:Nessuno
Istruzioni per l'uso:
Innanzitutto create una nuova classe sopra main e chiamatela "Scene_Loading" poi incollateci questo dentro:#===================================================== # ■ Scene_Loading #------------------------------------------------------------------------------- # Questo è uno script che simula il caricamento di gioco # By Squall Leonheart # Aggiornato il 8/11/2010 #------------------------------------------------------------------------------- class Scene_Loading #-------------------------------------------------------------------------- # ● Main #-------------------------------------------------------------------------- def main # Annulla l'esecuzione del bgm e del bgs della mappa. $game_system.bgm_play(nil) $game_system.bgs_play(nil) @sprite = Sprite.new # Ogni display mostra un'immagine, mettete tra parantesi # Il numero di frame e il nome dell'immagine(Picture) tra virgolette. display (100, "Caricamento.Png") # Dispone le immagini. @sprite.dispose # Prepara la transizione. Graphics.transition(120) # Consente l'autoplay dei bgm e dei bgs della mappa. $game_map.autoplay $scene = Scene_Map.new end #------------------------------------------------------------------------------ # Def display #------------------------------------------------------------------------------ def display (frame, name_pic) @sprite.bitmap = RPG::Cache.picture(name_pic) Graphics.transition(50) loop do frame -=1 Graphics.update Input.update if (frame == 0) break end end Graphics.freeze end end
Ora per utilizzarlo scrivete in un evento con la funzione script "$scene = Scene_Loading.new"
Vi ricordo che il nome delle immagini è a piacere,basta scriverlo nello script come ho fatto io nell'esempio,ovvero nome dell'immagine più il formato;) A i numeri di fianco sono la durata della visione della picture:)
Ringrazio tutti gli autori delle scene pre title per avermi ispirato:P Inizio a capirci qualcosaXD
Ma ora a voi la parola
ENJOY!!!:)
Edit : Aggiunta una versione migliore. -
Per favore ri uppalo che il link è scaduto
-
Ottimo,bravissimo.
Però ti segnalo un piccolo bug,se ho equipaggiato nel jhp 100 goccia,essi aumentano del 100% ed è ok,però quando si va in battaglia e si utilizza quella magie l'hp totale non diminuisce,in FFVIII se utilizzavi la magia calava anke il parametro evidenziato^^
Comunque complimenti lo stesso,magari se aggiusti questa cosa farei un ulteriore abbellimento a questo grande script^^
-
Si ma normalmente ad eventi non si può mettere + 32 alla variabile(Poi se sbaglio spiegami comeXD)
oppure tu lai scritto come codice script?
Cmq vorrei che colpisse solo dalla casella davanti
-
Da molti errori di sintassi anke se credo dipende da come li copia dentro a maker...
Per esempio a me dava molti errori perkè divideva i codici in righi etc,a chi accadesse consiglio di cancellare lo spazio e cosi facendo di unire il codice della riga segnalata dal maker a quella del rigo precedente...Cosi facendo mi parte e devo dire niente male;)
-
Io non ho photoshop...Per questo chiedevo di postarli...
-
Salve gente avrei bisogno di vari riflessi di luce che provoca il sole...
Tipo quelli sui vetri oppure tipo quando uno sta guardando attraverso una lente
-
Possibile che nn ci sia modo di fare questa cosa?
Nemmeno con gli script?
-
Non c'è modo di far cambiare grafica all'eroe e al nemico quando attaccano e subiscono?
Inoltre vorrei poter richiamare a piacimento gli hudXD
-
Scusami ma non ho capito...
Adesso per essere + chiaro copio come ho programmato l'evento comune che richiamo
Variabile eroex = eroe x schermo
Variabile eroey = eroe y schermo
Variabile nemico1x = nemico x schermo
Variabile nemico1y = nemico y schermo
If se tasto B premuto
Se variabile eroe girato = 0
Cambia grafica eroe in pugno verso destra
se variabile eroe x <= variabile nemico x
se variabile eroe y== variabile nemico y
suona se pugno
variabile hp nemico - 1
aspetta 5 frames
cambia grafica eroe cammina dx
Poi ho fatto lo stesso procedimento nell'altrimenti perkè in pratica utilizzo una variabile in cui se è 0 l'eroe è girato verso destra e quindi ovunque esso vada è girato in quella direzione e se la variabile è 1 essi è girato verso sinsitra;
Quindi in pratica al posto di mette<= o messo >= e poi la grafica diversa...
Ora mi accade che l'eroe colpisce ma da qualsiasi distanza,basta che sia sulla stessa asse y;
Io vorrei che l'eroe quando è girato verso destra colpisse il nemico solo da sinistra e quindi bisognerebbe settare la variabile che analizzi la casella davanti al nemico da sinistra...Idem per la destra...
Ora credo di essere stato più chiaro,per favore aiutatemi che sono bloccato da giorni col progetto solo per questa maledetta variabileXD
-
Salve,stavo cercando di fare un bs in tempo reale ad eventi,però mi sono inceppato ad un punto.
In pratica creando un attacco calcio o pugno non riesco a far si che se le x e y dell'eroe e del nemico coincidano la variabile hp nemico diminuisca.
Io utilizzo gli eventi comuni che si attivano quando lo switch del combattimento è on,ne ho 2 una per il pugno che in pratica è una condizione if che cambia la grafica dell'eroe per 5 secondi mostrando il pugno e poi torna quella della camminata,lo stesso vale per il calcio.
Ora non riesco ad impostare che se la variabile eroe x e y coincidano a quella del nemico x e y al momento della pressione di questi tasti permettano la recessione della variabile hp nemico.Come posso fare(Sempre se mi sono spiegato benexD)?
-
Il link nn funge
-
Il link nn funge

-Megaman EXE Battle
in Scripts RGSS (XP)
Posted