Jump to content
Rpg²S Forum

ivan1987

Utenti
  • Posts

    8
  • Joined

  • Last visited

Everything posted by ivan1987

  1. Ciao a tutti ho aggiunto delle nuove immagini del gioco novità: - tramite una magia che crea una bolla d'aria intorno alla testa, si potrà immergersi in acqua - nuovo menu di compra/vendita - modifiche varie in modalita battaglia Ciao alla prossima
  2. ciao, la gara dei chocobo non è ad eventi ma c'è uno scipt,il minigioco è veneto fuori abbastanza bene ma bisogna ritoccarlo ancora un pò
  3. ma vi state anche inventando le cose???? Io non ho prese le grafiche dalla sua demo, tutti i tileset delle mappe case, caverne ecc. le ha rilasciati lui in un suo topic dove tutti possono prenderle, mettendo i cretiti, cosa che io ho fatto nel gioco. quindi se io uso i suoi tileset usando i crediti per creare le mappe di gioco credo di poterlo fare. se ho sbagliato chiedo scusa. per quanto riguarda il menu, non voglio discuterne + di tanto perchè non lo creato io, ma non lo ha rubato o cose del genere, ha preso spunto dal suo gioco, ma lo scipt lo ha scritto da zero aggiungendoci quello che voleva, ad esempio i trofei, il sistema di spostamento ecc è simile graficamente ma rifatto, se gli avesse preso lo scipt e modificato a suo piacimento ti darei ragione ma in questo caso no. edit: l'unica casa è che ha usato lo stesso sfondo del creatore hanzo, ma che ha rilasciato lui stesso e quindi lo poteva utilizzare, sempre mettendo i cretiti Ps. Ho aggiunto delle immagini di un minigioco - La corsa dei chocobo
  4. ciao per quanto riguarda il menu non lo creato io ma lo ha creato andrea ma lo ha creato da zero prendendo spunto da un gioco in rete, per quanto riguarda la grafica della mappa ho usato tileset trovati in rete, volevo farti notare che tutti i tileset usati nel gioco del video che hai messo il creatore li ha diffusi in un suo topic perciò li può usare chiunque, ovviamente usando i crediti dell'autore
  5. Ciao a tutti il progetto lo sto creando insieme a un amico conosciuto in rete "Andrea90", io mi occupo tutto quello che riguarda la mappa di gioco, perchè so solo fare quello e me la cavo abbastanza bene, per tutto il resto tra script, eventi ecc, ci pensa Andrea. Il logo e il titolo di gioco sono provvisori, il logo lo avevamo trovato in rete e lo abbiamo usato solo provvisoriamente poi lo cambieremo. Per trama e altre informazioni i sul progetto le metteremo a breve, ho creato il topic per mettere un po di immagini per presentare il gioco. Ciaooo
  6. ivan1987

    Ciaooooo

    Ciao a tutti, sono nuovo sul forum spero di trovarmi bene ciaoooooooooooo
  7. Ciao a tutti volevo sapere se si riusciva a modificare questo scipt (che sarebbe Quello del pentolone alchemico per fondere gli oggetti) In pratica come sfondo al posto di avere la Windos di base vorrei mttere un'immagine, più precisamente usare solo u'immagine che prenda tutto lo sfondo e far sparire i bordi e lo sfondo della Windos Grazie a tutti ciaooooo #============================================================================== # ** Alchemy Pot #------------------------------------------------------------------------------ # Autore: The Sleeping Leonhart # Versione: 1.4 # Data di rilascio: 10/07/2001 #------------------------------------------------------------------------------ # Descrizione: # Questo script simula il pentolone alchemico di Dragon Quest VIII. # Per chi non lo conoscesse il pentolone alchemico permette di "buttare" # nel pentolone oggetti per crearne uno nuovo. #------------------------------------------------------------------------------ # Version: # 1.0 (07/10/2008): Versione Base. # 1.1 (06/12/2008): Aggiunta l'opzione Failure Item. # 1.2 (08/12/2008): Ora si possono vedere immediatamente i risultati. # 1.3 (09/12/2008): Aggiunto un time meter. # Aggiunto un filtro per gli oggetti inusabili. # 1.4 (10/07/2010): Bugfix. #------------------------------------------------------------------------------ # Istruzioni: # Per chiamare il pentolone usate il comando script degli eventi ed inserite: # $scene = Scene_AlchemyPot.new # Premere A per passare dalla finestra di conferma a quella degli oggetti e viceversa. # Per personalizzare lo script andate nella sezione Configurazione e Vocabolario. #============================================================================== #============================================================================== # Configuration #============================================================================= module AlchemyPot #=====NON TOCCARE========================================================= i = load_data("Data/Items.rvdata") w = load_data("Data/Weapons.rvdata") a = load_data("Data/Armors.rvdata") #========================================================================= #========================================================================= # Formula: Imposta le formule del pentolone. #------------------------------------------------------------------------- # Sintassi: # Formula[iId1, ...] = [iId2, time] # Parametri: # iId1: id degli ingredienti, usate i[id] per gli oggetti, w[id] per le armi, # a[id] per le armature. id è il numero dell'oggetto nel database. # iId2: id dell'oggetto ottenuto, usate i[id] per gli oggetti, w[id] per le armi, # a[id] per le armature. id è il numero dell'oggetto nel database. # time: numero di minuti richiesti per la ricetta. #========================================================================= Formula = {} Formula[[i[1], i[1]]] = [i[2], 1] Formula[[i[1], w[1]]] = [w[2], 2] Formula[[a[1], w[2]]] = [a[2], 4] #========================================================================= # UnusableItem: Definisce gli oggetti che non possono essere messi nel pentolone #------------------------------------------------------------------------- # Sintax: # UnusableItem = [iId, ...] # Parameter: # iId: id degli ingredienti, usate i[id] per gli oggetti, w[id] per le armi, # a[id] per le armature. id è il numero dell'oggetto nel database. #========================================================================= UnusableItem = [i[3], w[5], a[4]] #========================================================================= # MaxItem: Numero massimo di oggetti inserbili nel pentolone. #------------------------------------------------------------------------- # Sintassi: # MaxItem = n # Parametri: # n: Numero massimo di oggetti inserbili nel pentolone. #========================================================================= MaxItem = 5 #========================================================================= # FailureItem: Imposta gli ogetti ottenuti se si sbaglia formula #------------------------------------------------------------------------- # Sintassi: # FailureItem = [iId, ...] # Parametri: # iId: id dell'oggetto ottenuto, usate i[id] per gli oggetti, w[id] per le armi, # a[id] per le armature. id è il numero dell'oggetto nel database. #========================================================================= FailureItem = [i[1], w[4], a[5]] #========================================================================= # FailureTime: Imposta il tempo per creare l'oggetto sbagliato #------------------------------------------------------------------------- # Sintassi: # FailureItem = time # Parametri: # time: numero di minuti richiesti per la ricetta. #========================================================================= FailureTime = 1 #========================================================================= # TimeMeter: Imposta le immagini per la barra del tempo #------------------------------------------------------------------------- # Sintassi: # TimeMeter = [emptymeter, fullmeter] o nil # Parametri: # emptymeter = picture che rappresenta la barra del tempo vuota # fullmeter = picture che rappresenta la barra del tempo piena # nil = mettere nil per non visualizzare la barra del tempo #========================================================================= TimeMeter = nil end #============================================================================== # Vocabolario #============================================================================= module Vocab #Pulsante di Conferma AlchemyPotGo = "Avvia" #Pulsante di uscita AlchemyPotExit = "Esci" #Formula Corretta AlchemyPotRightFormula = "Credo che possa funzionare!" #Formula Inesistente AlchemyPotWrongFormula = "Non credo che possa funzionare!" #Ricetta Terminata AlchemyPotFormulaFinished = "La ricetta è pronta!" #Ricetta non Terminata AlchemyPotFormulaNotFinished = "La ricetta non è ancora pronta!" #Oggetto ottenuto AlchemyPotObtained = "Hai ottenuto:" end class Game_Party attr_accessor :alchemy_pot alias tslalchemypot_gameparty_initialize initialize def initialize tslalchemypot_gameparty_initialize @alchemy_pot = [] end end class Window_Base def draw_graphical_bar(x, y, barravuota, barrapiena, corrente, max) barra_vuota = Bitmap.new("Graphics/Pictures/"+barravuota) barra_piena = Bitmap.new("Graphics/Pictures/"+barrapiena) taglio = corrente.to_f / max.to_f cwp = barra_piena.width cwv = barra_vuota.width chp = barra_piena.height chv = barra_vuota.height taglio = taglio*cwp src_rect = Rect.new(0, 0, taglio, chp) self.contents.blt(32+x-cwp/4, 18+y-chp/2, barra_piena, src_rect) src_rect = Rect.new(taglio, 0, cwv-taglio, chv) self.contents.blt(32+x-cwv/4+taglio, 18+y-chv/2, barra_vuota, src_rect) end end class Window_AlchemyPotItem < Window_Selectable def initialize super(32, 80, 292, 292) @column_max = 10 self.index = 0 refresh end def item return @data[self.index] end def include?(item) return false if item == nil if $game_temp.in_battle return false unless item.is_a?(RPG::Item) end return true end def item_rect(index) rect = Rect.new(0, 0, 0, 0) rect.width = 24 rect.height = 24 rect.x = index % @column_max * 26 rect.y = index / @column_max * 26 return rect end def enable?(item) return $game_party.item_can_use?(item) end def refresh @data = [] for item in $game_party.items next unless include?(item) @data.push(item) if check(item) end @data.push(nil) if include?(nil) @item_max = @data.size create_contents for i in 0...@item_max draw_item(i) end end def draw_item(index) rect = item_rect(index) self.contents.clear_rect(rect) item = @data[index] if item != nil number = $game_party.item_number(item) x = index % @column_max * 26 y = index / @column_max * 26 draw_icon(item.icon_index, x, y) self.contents.font.size = 12 self.contents.draw_text(10 + x, 6 + y, 24, 24, number.to_s) end end def update_help @help_window.set_text(item == nil ? "" : item.name) end def check(item) for i in AlchemyPot::UnusableItem if i.id == item.id and i.class == item.class return false end end return true end end class Window_AlchemyPotPot < Window_Base def initialize super(454, 80, 26 + 32, 26 * AlchemyPot::MaxItem + 32) refresh end def refresh(pot = []) self.contents.clear @data = pot.clone @data.push(nil) if @data == [] @item_max = @data.size create_contents for i in 0...@item_max draw_item(i) end end def draw_item(index) item = @data[index] if item != nil y = index * 26 draw_icon(item.icon_index, 0, y) end end end class Window_AlchemyPotResult < Window_Base def initialize super(0, 180, 272, WLH + 32) self.width = [self.contents.text_size(Vocab::AlchemyPotObtained).width + 192, 544].min self.x = 272 - self.width / 2 create_contents refresh end def refresh(item = nil) self.contents.clear self.contents.font.color = normal_color self.contents.draw_text(0, 0, self.width - 40, WLH, Vocab::AlchemyPotObtained) draw_item_name(item, self.contents.text_size(Vocab::AlchemyPotObtained).width + 2, 0) end end class Window_PotTimeMeter < Window_Base def initialize(a = 0) super(180, 360, 192, 64) self.contents = Bitmap.new(width - 32, height - 32) self.opacity = 0 refresh(a) end def refresh(a) if AlchemyPot::TimeMeter != nil self.contents.clear a = 0 if a == nil b = $game_party.alchemy_pot[2] b = (Graphics.frame_count - a) * 100 if b == nil draw_graphical_bar(0, 0, AlchemyPot::TimeMeter[0], AlchemyPot::TimeMeter[1], Graphics.frame_count-a, b) end end end class Scene_AlchemyPot < Scene_Base def start super create_menu_background create_command_window @help_window = Window_Help.new @item_window = Window_AlchemyPotItem.new @item_window.help_window = @help_window @pot_window = Window_AlchemyPotPot.new @result_window = Window_AlchemyPotResult.new @result_window.visible = false @meter = Window_PotTimeMeter.new($game_party.alchemy_pot[1]) @ready = false if $game_party.alchemy_pot != [] if $game_party.alchemy_pot[0][0] == "Wrong" @ingredients = $game_party.alchemy_pot[0][1].clone item = AlchemyPot::FailureItem[rand(AlchemyPot::FailureItem.size)] else @ingredients = $game_party.alchemy_pot[0].clone item = AlchemyPot::Formula[find_recipe(@ingredients)][0] end @pot_window.refresh(@ingredients) @item_window.active = false if Graphics.frame_count - $game_party.alchemy_pot[1] >= $game_party.alchemy_pot[2] @help_window.set_text(Vocab::AlchemyPotFormulaFinished) $game_party.gain_item(item, 1) @result_window.refresh(item) $game_party.alchemy_pot = [] @ready = true else @help_window.set_text(Vocab::AlchemyPotFormulaNotFinished) end else @ingredients = [] end end def terminate super dispose_menu_background dispose_command_window @help_window.dispose @item_window.dispose @pot_window.dispose @meter.dispose end def update super update_menu_background @help_window.update @command_window.update @item_window.update @pot_window.update @meter.update if @command_window.active update_command_selection elsif @item_window.active update_item_selection elsif @ready and @result_window.visible == false if Input.trigger?(Input::C) Sound.play_decision @result_window.visible = true return end elsif @result_window.visible if Input.trigger?(Input::C) Sound.play_decision @ingredients = [] @ready = false @result_window.visible = false @item_window.active = true @item_window.refresh @pot_window.refresh return end else if Input.trigger?(Input::C) Sound.play_decision $scene = Scene_Map.new end end if $game_party.alchemy_pot[1] != nil @meter.refresh($game_party.alchemy_pot[1]) if Graphics.frame_count - $game_party.alchemy_pot[1] >= $game_party.alchemy_pot[2] $scene = Scene_AlchemyPot.new end end end def create_command_window s1 = Vocab::AlchemyPotGo s2 = Vocab::AlchemyPotExit @command_window = Window_Command.new(96, [s1, s2]) @command_window.active = false @command_window.x = 430 @command_window.y = 304 end def dispose_command_window @command_window.dispose end def update_item_selection if Input.trigger?(Input::B) Sound.play_cancel if @ingredients == [] $scene = Scene_Map.new else $game_party.gain_item(@ingredients.pop, 1) @item_window.refresh @pot_window.refresh(@ingredients) end elsif Input.trigger?(Input::C) if @ingredients.size < AlchemyPot::MaxItem and @item_window.item != nil Sound.play_decision item = @item_window.item @ingredients.push(item) $game_party.gain_item(item, -1) @item_window.refresh @pot_window.refresh(@ingredients) else Sound.play_buzzer end elsif Input.trigger?(Input::A) Sound.play_decision @item_window.active = false @command_window.active = true end end def update_command_selection if Input.trigger?(Input::B) Sound.play_cancel exit elsif Input.trigger?(Input::C) case @command_window.index when 0 if @ingredients.size > 1 Sound.play_decision start_alchemy else Sound.play_buzzer end when 1 Sound.play_decision exit end elsif Input.trigger?(Input::A) Sound.play_decision @item_window.active = true @command_window.active = false end end def exit for item in @ingredients $game_party.gain_item(item, 1) end $scene = Scene_Map.new end def start_alchemy rec = find_recipe(@ingredients) if rec != nil && AlchemyPot::Formula[rec] != nil @help_window.set_text(Vocab::AlchemyPotRightFormula) $game_party.alchemy_pot[0] = rec.clone $game_party.alchemy_pot[1] = Graphics.frame_count $game_party.alchemy_pot[2] = AlchemyPot::Formula[rec][1] * Graphics.frame_rate * 60 @command_window.active = false return end @help_window.set_text(Vocab::AlchemyPotWrongFormula) if AlchemyPot::FailureItem.size > 0 $game_party.alchemy_pot[0] = ["Wrong", @ingredients.clone] $game_party.alchemy_pot[1] = Graphics.frame_count $game_party.alchemy_pot[2] = AlchemyPot::FailureTime * Graphics.frame_rate * 60 @command_window.active = false return else for item in @ingredients $game_party.gain_item(item, 1) end @ingredients = [] @item_window.refresh @pot_window.refresh(@ingredients) end end def find_recipe(items) for i in AlchemyPot::Formula.keys formula = item_sort(i) ingredients = item_sort(items) if formula == ingredients return i end end end def item_sort(formula) i = []; w = []; a = [] for item in 0...formula.size case formula[item] when RPG::Item i.push(formula[item].id) i.sort! when RPG::Weapon w.push(formula[item].id) w.sort! when RPG::Armor a.push(formula[item].id) a.sort! end end formula = [] for item in i formula.push($data_items[item]) end for item in w formula.push($data_weapons[item]) end for item in a formula.push($data_armors[item]) end return formula end end
×
×
  • Create New...