Jump to content
Rpg²S Forum

Valentino

Utenti
  • Posts

    463
  • Joined

  • Last visited

Everything posted by Valentino

  1. Valentino

    Domanda

    Si basta creare uno sprite nella Scene_Menu negli script... Vai nell def main e aggiungi PRIMA di Graphics.transition @sottofondo = Sprite.new @sottofondo.bitmap = RPG::Cache.title("Sfondo_Menu") @sottofondo.x = 0 @sottofondo.y = 0 @sottofondo.z = -1 poi vai sotto Graphics.freeze e aggiungi @sottofondo.dispose @sottofondo.bitmap.dispose Per modificare le cordinate dell'immagine modifica i valori @sottofondo.x e @sottofondo.y L'immagine che verrà presa sarà quella col nome Sfondo_Menu nella cartella Graphics/Titles
  2. Spiegati meglio... intendi l'immagine di background dei titoli? E ti si muove solo quando accedi ad essi? o anche dopo? Lo script attinge varie pictures, dimmi quali sono quelle che vuoi che non si muovano XD
  3. Si tutti gli attacchi hanno un limite di danno impostato dal LIMIT_DAMAGE che verrà rotto equipaggiando un arma con danni aperion e quindi portando il limite massimo al MAX_DAMAGE, ma si sta poco a modificare lo script e creare delle abilità che avvallano questo limite... Dammi conferma e te lo faccio. :D
  4. Ho creato questo script: Aperion System http://www.rpg2s.net/forum/index.php?showt...t=0#entry167633 FATTO
  5. Aperion_System Descrizione Lo script in pratica impone dei limiti ai danni agli Hp e agli Sp massimi. Avendo determinati equipaggiamenti si possono rompere questi limiti. Autore Avon Valentino (Io) Allegati Demo Link: http://www.mediafire.com/download.php?399gc3nn3631u0w Script: Istruzioni per l'uso Trovate tutto all'interno dello script, se lo usate creditatemi per favore Bugs e Conflitti Noti N/A
  6. Lo script non sovvrascrive molto della Scene_Battle, quindi non dovrebbe creare problemi, e se ne crea renderlo compatibile rimane comunque semplice. :D Chiedimi se vuoi questa modifica.
  7. Ho creato questo script: Scene_Vittoria Animata http://www.rpg2s.net/forum/index.php?showt...mp;#entry166738 (Lo spoiler mi funziona solo se le righe di script sono veramente poche, non ne so il motivo!) FATTO
  8. Infatti XD Si riesce a saltare soltanto se si preme ripetutamente sennò non fa niente XD Era quello il senso Grazie comunque!
  9. Scene_Vittoria Descrizione Questo script crea una schermata dopo le battaglie vinte che mostra exp, soldi e tesori ottenuti in battaglia. Mostra eventuali Lv Up. Autore Avon Valentino (Io) Allegati ScreenShots: Purtroppo con delle immagini le animazioni non si riescono a vedere. Script: #-------------------------Scene_Vittoria-------------------------#Script creato da Valentino Avon, se usate questo script, creditatemi ;) #Sistema di wait via script preso dallo script Tankentai di Enu.#Questo script crea una schermata dopo ogni battaglia vinta mostrando#exp, soldi e tesori e eventuali lv up. #------------------------CONFIGURAZIONE------------------------------- #pictures di sotto fondo.SFONDO = "Sfondo_Battaglia" #pictures di level upLV = "Livello" #testo visualizzato per i tesoriTESTO_TESORI = "Tesori Ricevuti:" #esegue una canzone con il loop se trueBGM_VITTORIA = true #nome del bgm riprodotto (se BGM_VITTORIA = true ) da inserire in audio/bgmBGM = "Bgm_Vittoria" #nome del suono riprodotto dall'esperienza che saleSE = "032-Switch01" #nome del suono riprodotto quando si sale di livelloSE_LEVEL = "056-Right02" #icona visualizzata per i soldi nei tesori da inserire in Graphics/IconsSOLDI_ICONA = "Monete" MAX_LEVEL = 99 #livello massimo raggiunto dai personaggi #==============================================================================# ** Window_Help_Vittoria#------------------------------------------------------------------------------# This window shows skill and item explanations along with actor status.#============================================================================== class Window_Help_Vittoria < Window_Base #-------------------------------------------------------------------------- # * Object Initialization #-------------------------------------------------------------------------- def initialize super(0, 0, 320, 64) self.contents = Bitmap.new(width - 32, height - 32) end #-------------------------------------------------------------------------- # * Set Text # text : text string displayed in window # align : alignment (0..flush left, 1..center, 2..flush right) #-------------------------------------------------------------------------- def set_text(text, align = 0) # If at least one part of text and alignment differ from last time if text != @text or align != @align # Redraw text self.contents.clear self.contents.font.color = normal_color self.contents.draw_text(4, 0, self.width - 40, 32, text, align) @text = text @align = align @actor = nil end self.visible = true endend #==============================================================================# ** Window_Vittoria#------------------------------------------------------------------------------# This window displays amount of gold and EXP acquired at the end of a battle.#============================================================================== class Window_Vittoria < Window_Base #-------------------------------------------------------------------------- # * Object Initialization # exp : EXP # gold : amount of gold # treasures : treasures #-------------------------------------------------------------------------- attr_accessor :exp def initialize(actor, exp) @exp = exp @actor = actor super(0, 0, 210, 128) self.contents = Bitmap.new(width - 32, height - 32) self.back_opacity = 160 self.z = 1000 self.visible = true refresh end def update_basic Graphics.update Input.update $game_system.update $game_screen.update end #-------------------------------------------------------------------------- def wait(duration) for i in 0...duration update_basic end end #-------------------------------------------------------------------------- # * Refresh #-------------------------------------------------------------------------- def refresh self.contents.clear if @actor != nil self.contents.font.size = 17 ac = contents.text_size(@actor.name).width draw_actor_level(@actor, 34+ac, 0) self.contents.draw_text(4, 0, ac, 32, @actor.name) if @actor.level != MAX_LEVEL x = 4 self.contents.font.color = system_color if @actor.cant_get_exp? == false cx = contents.text_size("EXP:").width self.contents.draw_text(4, 32, cx, 32,"EXP:") x += cx + 4 self.contents.font.color = normal_color self.contents.draw_text(20 + cx, 32, 64, 32, @exp.to_s) else self.contents.font.color = normal_color self.contents.draw_text(4, 32, 210, 32,"Impossibile ottenere EXP!" ) endelseself.contents.draw_text(4, 32, 210, 32,"Impossibile ottenere EXP!" )endx = 4cx = contents.text_size("EXP:").widthx += cx + 4 y = 32 if @actor.cant_get_exp? == false self.contents.font.color = system_color cx = contents.text_size("PER LV UP:").width self.contents.draw_text(4, 64, 160, 32, "PER LV UP:") x += cx + 4 self.contents.font.color = normal_color self.contents.draw_text(20 + cx, 64, 64, 32, @actor.next_rest_exp_s) end end endend #==============================================================================# ** Window_BattleResult#------------------------------------------------------------------------------# This window displays amount of gold and EXP acquired at the end of a battle.#============================================================================== class Window_BattleResult < Window_Base #-------------------------------------------------------------------------- # * Object Initialization # exp : EXP # gold : amount of gold # treasures : treasures #-------------------------------------------------------------------------- def initialize(gold) @gold = gold super(160, 120, 320, 240) self.contents = Bitmap.new(width - 32, height - 32) self.back_opacity = 160 self.z = 1000 self.visible = false refresh end #-------------------------------------------------------------------------- # * Refresh #-------------------------------------------------------------------------- def refresh self.contents.clear x = 4 self.contents.font.color = normal_color bitmap = RPG::Cache.icon(SOLDI_ICONA) self.contents.blt(x,0 + 4, bitmap, Rect.new(0, 0, 24, 24)) cx = contents.text_size(@gold.to_s).width self.contents.draw_text(30, 0, cx, 32, @gold.to_s) x += cx + 30 self.contents.font.color = system_color self.contents.draw_text(x, 0, 128, 32, $data_system.words.gold) y = 32 for item in $treasures draw_item_name(item, 4, y) y += 32 end endend #==============================================================================# ** Scene_Vittoria#------------------------------------------------------------------------------# This class performs menu screen processing.#============================================================================== class Scene_Vittoria def update_basic Graphics.update Input.update $game_system.update $game_screen.update end #-------------------------------------------------------------------------- def wait(duration) for i in 0...duration update_basic end end #-------------------------------------------------------------------------- # * Object Initialization # menu_index : command cursor's initial position #-------------------------------------------------------------------------- def initialize(exp,gold) @gold = gold @exp = exp end #-------------------------------------------------------------------------- # * Main Processing #-------------------------------------------------------------------------- def main @fase = 0 # Make command window # If save is forbidden # Make play time window @sfondo = Sprite.new @sfondo.bitmap = RPG::Cache.picture(SFONDO) @sprite1 = Sprite.new @sprite1.bitmap = RPG::Cache.picture(LV) @sprite1.x = 210 @sprite1.y = 62 @sprite1.z = 1500 @sprite2 = Sprite.new @sprite2.bitmap = RPG::Cache.picture(LV) @sprite2.x = 210 @sprite2.y = 274 @sprite2.z = 1500 @sprite3 = Sprite.new @sprite3.bitmap = RPG::Cache.picture(LV) @sprite3.z = 1500 @sprite3.x = 512 @sprite3.y = 62 @sprite4 = Sprite.new @sprite4.bitmap = RPG::Cache.picture(LV) @sprite4.z = 1500 @sprite4.x = 512 @sprite4.y = 274 @sprite1.opacity = 0 @sprite2.opacity = 0 @sprite3.opacity = 0 @sprite4.opacity = 0 @sfondo.z = -1 @vittoria1 = Window_Vittoria.new($game_party.actors[0], @exp) @vittoria1.x = 64 @vittoria1.y = -274#64 @vittoria2 = Window_Vittoria.new($game_party.actors[1], @exp) @vittoria2.x = 64 @vittoria2.y = 498#288 @vittoria3 = Window_Vittoria.new($game_party.actors[2], @exp) @vittoria3.x = 366 @vittoria3.y = -274#64 @vittoria4 = Window_Vittoria.new($game_party.actors[3], @exp) @vittoria4.x = 366 @vittoria4.y = 498#288 @help_window = Window_Help_Vittoria.new @help_window.x = 160 @help_window.y = 56 @help_window.visible = false # Execute transition Graphics.transition # Main loop loop do # Update game screen Graphics.update # Update input information Input.update # Frame update @vittoria1.update @vittoria2.update @vittoria3.update @vittoria4.update @help_window.update case @fase when 0 update when 1 if Input.trigger?(Input::C) premi_c else update_2 end when 2 update_3 when 3 update_4 end # Abort loop if screen is changed if $scene != self break end end # Prepare for transition Graphics.freeze # Dispose of windows @vittoria1.dispose @vittoria2.dispose @vittoria3.dispose @vittoria4.dispose @sfondo.bitmap.dispose @sfondo.dispose @sprite1.dispose @sprite2.dispose @sprite3.dispose @sprite4.dispose @sprite1.bitmap.dispose @sprite2.bitmap.dispose @sprite3.bitmap.dispose @sprite4.bitmap.dispose @help_window.dispose end #-------------------------------------------------------------------------- # * Frame Update (when command window is active) #-------------------------------------------------------------------------- def premi_c if $exp > 0 for actor in $game_party.actors if actor.cant_get_exp? == false last_level = actor.level actor.exp += $exp @vittoria1.exp -= $exp if actor == $game_party.actors[0] @vittoria2.exp -= $exp if actor == $game_party.actors[1] @vittoria3.exp -= $exp if actor == $game_party.actors[2] @vittoria4.exp -= $exp if actor == $game_party.actors[3] @vittoria1.refresh @vittoria2.refresh @vittoria3.refresh @vittoria4.refresh if actor.level > last_level Audio.se_play("Audio/SE/"+ SE_LEVEL,100,100) if actor == $game_party.actors[0] @sprite1.opacity = 255 end if actor == $game_party.actors[1] @sprite2.opacity = 255 end if actor == $game_party.actors[2] @sprite3.opacity = 255 end if actor == $game_party.actors[3] @sprite4.opacity = 255 end end end end $exp = 0 wait(1) end end def update unless @vittoria1.y > 64 loop do @vittoria1.y += 10 @vittoria3.y += 10 wait(1) break if @vittoria1.y > 64 end end unless @vittoria2.y < 288 loop do @vittoria2.y -= 10 @vittoria4.y -= 10 wait(1) break if @vittoria2.y < 288 end end @fase = 1 end def update_2 @sprite1.opacity -= 15 if @sprite1.opacity != 0 @sprite2.opacity -= 15 if @sprite2.opacity != 0 @sprite3.opacity -= 15 if @sprite3.opacity != 0 @sprite4.opacity -= 15 if @sprite4.opacity != 0 if $exp > 0 Audio.se_play("Audio/SE/"+ SE,100,100) $exp -= 1 for actor in $game_party.actors #aumento di 1 l'esperienza per ogni ciclo if actor.cant_get_exp? == false and actor.level != MAX_LEVEL last_level = actor.level actor.exp += 1 @vittoria1.exp -= 1 if actor == $game_party.actors[0] @vittoria2.exp -= 1 if actor == $game_party.actors[1] @vittoria3.exp -= 1 if actor == $game_party.actors[2] @vittoria4.exp -= 1 if actor == $game_party.actors[3] if actor.level > last_level Audio.se_play("Audio/SE/"+ SE_LEVEL,100,100) if actor == $game_party.actors[0] @sprite1.opacity = 255 end if actor == $game_party.actors[1] @sprite2.opacity = 255 end if actor == $game_party.actors[2] @sprite3.opacity = 255 end if actor == $game_party.actors[3] @sprite4.opacity = 255 end end end end end @sprite1.opacity -= 15 if @sprite1.opacity != 0 @sprite2.opacity -= 15 if @sprite2.opacity != 0 @sprite3.opacity -= 15 if @sprite3.opacity != 0 @sprite4.opacity -= 15 if @sprite4.opacity != 0 @vittoria1.refresh @vittoria2.refresh @vittoria3.refresh @vittoria4.refresh wait(2) @fase = 2 if $exp <= 0 end def update_3 # If C button was pressed if Input.trigger?(Input::C) #rendo i lv up invisibili @sprite1.visible = false @sprite2.visible = false @sprite3.visible = false @sprite4.visible = false $game_system.se_play($data_system.decision_se) #sposto le window loop do @vittoria1.x -= 7.5 @vittoria1.y -= 10 @vittoria2.x -= 7.5 @vittoria2.y += 10 @vittoria3.x += 7.5 @vittoria3.y -= 10 @vittoria4.x += 7.5 @vittoria4.y += 10 @vittoria1.opacity -= 16 @vittoria2.opacity -= 16 @vittoria3.opacity -= 16 @vittoria4.opacity -= 16 @vittoria1.contents_opacity -= 16 @vittoria2.contents_opacity -= 16 @vittoria3.contents_opacity -= 16 @vittoria4.contents_opacity -= 16 wait(1) break if @vittoria1.y < -274 end #rendo le window invisibili @vittoria1.visible = false @vittoria2.visible = false @vittoria3.visible = false @vittoria4.visible = false #creo la window per i soldi e i tesori @result_window = Window_BattleResult.new(@gold) @result_window.opacity = 0 @result_window.contents_opacity = 0 @help_window.opacity = 0 @help_window.contents_opacity = 0 @result_window.visible = true @help_window.visible = true loop do @help_window.opacity += 10 @help_window.contents_opacity += 10 @help_window.back_opacity = 160 #Testo della window_help @help_window.set_text(TESTO_TESORI,1) @result_window.opacity += 10 @result_window.contents_opacity += 10 wait(1) break if @result_window.opacity == 250 end @fase = 3 wait(1) endend def update_4 # If C button was pressed if Input.trigger?(Input::C) $game_system.se_play($data_system.decision_se) loop do @result_window.opacity -= 10 @result_window.contents_opacity -= 10 @help_window.opacity -= 10 @help_window.contents_opacity -= 10 wait(1) break if @result_window.opacity == 0 end @result_window.dispose $game_system.bgm_play($game_temp.map_bgm) wait(20) $scene = Scene_Map.new unless $BTEST $scene = nil if $BTEST endendend #==============================================================================# ** Scene_Battle#------------------------------------------------------------------------------# This class performs battle screen processing.#============================================================================== class Scene_Battle #-------------------------------------------------------------------------- # * Start After Battle Phase #-------------------------------------------------------------------------- def start_phase5 # Shift to phase 5 @phase = 5 # Play battle end ME $game_system.me_play($game_system.battle_end_me) unless BGM_VITTORIA Audio.bgm_play("Audio/BGM/"+ BGM,100,100) if BGM_VITTORIA # Return to BGM before battle started # Initialize EXP, amount of gold, and treasure exp = 0 gold = 0 $exp = 0 $gold = 0 $treasures = [] # Loop for enemy in $game_troop.enemies # If enemy is not hidden unless enemy.hidden # Add EXP and amount of gold obtained exp += enemy.exp gold += enemy.gold $exp += enemy.exp $gold += enemy.gold # Determine if treasure appears if rand(100) < enemy.treasure_prob if enemy.item_id > 0 $treasures.push($data_items[enemy.item_id]) end if enemy.weapon_id > 0 $treasures.push($data_weapons[enemy.weapon_id]) end if enemy.armor_id > 0 $treasures.push($data_armors[enemy.armor_id]) end end end end # Treasure is limited to a maximum of 6 items $treasures = $treasures[0..5] # Obtaining EXP # Obtaining gold $game_party.gain_gold(gold) # Obtaining treasure for item in $treasures case item when RPG::Item $game_party.gain_item(item.id, 1) when RPG::Weapon $game_party.gain_weapon(item.id, 1) when RPG::Armor $game_party.gain_armor(item.id, 1) end end @phase5_wait_count = 100 end #-------------------------------------------------------------------------- # * Frame Update (after battle phase) #-------------------------------------------------------------------------- def update_phase5 if @phase5_wait_count > 0 # Decrease wait count @phase5_wait_count -= 1 # If wait count reaches 0 if @phase5_wait_count == 0 # Show result window # Clear main phase flag $game_temp.battle_main_phase = false # Refresh status window @status_window.refresh end return end # If C button was pressed #if Input.trigger?(Input::C) # Battle ends battle_end(0) #end end def battle_end(result) # Clear in battle flag $game_temp.in_battle = false # Clear entire party actions flag $game_party.clear_actions # Remove battle states for actor in $game_party.actors actor.remove_states_battle end # Clear enemies $game_troop.enemies.clear # Call battle callback if $game_temp.battle_proc != nil $game_temp.battle_proc.call(result) $game_temp.battle_proc = nil end # Switch to map screen if result == 0 $scene = Scene_Vittoria.new($exp,$gold) else $scene = Scene_Map.new end endend Demo Link: http://www.mediafire.com/download.php?5dpm29ulsq02s6l Istruzioni per l'uso Trovate tutto all'interno dello script, se lo usate creditatemi per favore Bugs e Conflitti Noti Non riesco a sistemare il fatto che premendo il tasto C si salta lo scalare lento dell esperienza solo in certi periodi di tempo, se qualcuno sa come fare può scriverlo qui e sistemerò lo script! Comunque funziona lo stesso perfettamente.
  10. La Bottega di Valentino Eventi, mapping e script. http://img88.imageshack.us/img88/1113/bottegheps6.png Presentazione: Le Mie Abilità: gli eventi non dovrebbero più avere segreti per me, poi credo di saper cavarmela abbastanza con gli script e col mapping mm giudicate voi XD. I Miei Lavori: Degli screen del mio progetto: Script creati da me: [*]Servizi Offerti: Posso creare Eventi di qualsiasi genere, creare mappe, e creare script non eccessivamente complessi. [*]Listino Prezzi: Per eventi semplici 1 ren per quelli complessi da 2 a 5 rens a seconda della difficoltà. Per il mapping dipende dalla grandezza della mappa e dal luogo che si vuole creare, i prezzi li stabilirò per ogni lavoro. Per quanto riguarda gli script, anche il costo di questi dipende dalla complessità e dal tempo che mi richiederanno diciamo che potranno variare tra gli 1 ren e i 10 rens (ma non credo che creerò uno script così complesso da farlo pagare così tanto...) I prezzi possono subire variazioni a seconda del tipo di lavoro... [*]Lavori Completati: -Modifica al mio Sentinel System per Tidus26 -Trasformazione mediante oggetti per PrinceEndymion88 -Danno senz'arma al crescere del livello per PrinceEndymion88 -Modifica al battle System di Ccoa per PrinceEndymion88 -Modifica al Compact Menu di Sleeping Leonheart per Tidus26 -New Scene Skill per Tidus26 -Fama System per Tidus26 -Modifica allo Script del Diario di Sylaer per Tidus26 By Valentino
  11. Se hai altre richieste come riserva haste ecc... potrei provare a vedere se riesco a crearle. :rovatfl:
  12. Ho creato un altro script: FF 2 Development System: http://www.rpg2s.net/forum/index.php?showtopic=11184 FATTO
  13. FF2 Development System Descrizione Questo script emula il sistema di sviluppo di FF 2, cioè i personaggi non si potenziano più tramite i livelli ma in base a cosa fanno durante le battaglie. Se usano magie potenzieranno il lato magico ecc.... Autore Avon Valentino (Io) Allegati Demo Link: http://www.mediafire.com/download.php?bl2o7igjyyz83fv Script EDIT: Nuova versione più leggera e compatibile: Istruzioni per l'uso Trovate tutto all'interno dello script, se lo usate creditatemi per favore Bugs e Conflitti Noti N/A
  14. Sì non dovrebbe essere un problema! Anzi penso di sapere già come fare... Mi metto al lavoro!! Fatto: http://www.mediafire.com/download.php?uu57mz7gxff1r52 Inserito anche nel primo post.
  15. Grazie per i consigli, però devo dire che quasi tutte queste abilità credo che renderebbero le battaglie troppo semplici non credi?
  16. I miei script non valgono neanche un rens? Comunque ho creato anche questo adesso... -Trance System http://www.rpg2s.net/forum/index.php?showtopic=11170 FATTO
  17. Ok fatto. Ho scoperto anche un mini bug del sistema e l'ho risolto. Ora posto la nuova versione perima che il bug si diffonda XD
  18. Quella l'ho gia messa XD Però ho settato solo la possibilità di assorbire Hp.
  19. Intendi dire che ogni volta l'attacco sale e poi a fine battaglia viene resettato a normale? mm Non è difficile da fare... almeno non dovrebbe.. se a qualcuno servisse mi dica che lo faccio!
  20. Trance System Descrizione Questo script emula la Trance di FF9, cioè subiti abbastanza colpi ci si trasforma automaticamente in Trance con lo sblocco di nuove abilità. Autore Avon Valentino (Io) Allegati Script: EDIT Reso più leggero e compatibile lo script. Demo Link: http://www.mediafire.com/download.php?b5z91nygxnk9ikc Istruzioni per l'uso Trovate tutto all'interno dello script, se lo usate creditatemi per favore Bugs e Conflitti Noti N/A Altri Dettagli La grafica non è il massimo, ma il concetto è quello :)
  21. Con i bs modificati probabilmente qualcosa andrà in conflitto ma si tratta semplicemente di editare lo script per renderlo compatibile! Chiamami se ne hai bisogno :D Vedrò cosa posso fare.
  22. Ecco fatto: Dovrebbe andare Modifica i valori X,Y,MAP, e DIREZIONE per personalizzare le cordinate, la mappa e la direzione quando viene teletrasportato il personaggio.
  23. Aggiunta una nuova versione: include nuove abilità passive, animazioni migliori e la risoluzione di alcuni bug.
  24. Grazie mille! Ora provo :ahsi:
  25. Ciao a tutti! Avrei un mini quesito di RGSS... Mi serve il comando per rendere una variabile un numero intero, cioè ad esempio, se una variabile ha un valore di 5,4, prende il valore di 5... Da quanto so dovrebbe esistere un comando tipo quello che la converte in stringa (.to_s)... Grazie in anticipo!
×
×
  • Create New...