Broly88 Posted December 16, 2006 Share Posted December 16, 2006 Missioni v3.01. DescrizioneScript che permette la visualizzazione di una scena d'intermezzo ogni qualvolta inizia o termina una missione del vostro gioco. AGGIORNAMENTO: disponibili dei comandi per la personalizzazione del testo mostrato.2. AutoreBroly883. AllegatiTXT con la nuova versione 3.0 Missioni_3_0.txt4.Script #==============================================================================# # ■ Missioni v3.0 -- Broly88 # #==============================================================================# # DESCRIZIONE - Script che permette la visualizzazione di una scena # # d'intermezzo ogni qualvolta inizia o termina una missione di gioco. # # -----------------------------------------------------------------------------# # FUNZIONAMENTO - Per utilizzare questo script, è sufficiente passargli due # # parametri, denominati "n" e "status". Il primo indica il numero della # # missione da processare, mentre il secondo indica se tale missione sta # # iniziando o terminando. Lo script va richiamato con la seguente sintassi: # # - $scene = Missioni.new(n,status) # # Per il corretto funzionamento, è necessario inserire nella cartella # # "Missioni" (posta all'interno di "Graphics/Pictures"), una serie di file # # denominati nel modo seguente (uno per ogni missione): # # - N_<Numero Missione>.png # # Infine, è necessario creare una directory nella stessa cartella # # dell'eseguibile, chiamata "Testi Missioni", e inserirvi i file di testo # # contenenti le istruzioni di ogni missione. Tali file devono rispettare tale # # sintassi: # # - Missione_<Numero Missione>.rxdata # # Tali file di testo possono contenere alcuni comandi indicati in seguito. # # N.B.: Si consiglia di salvare questi ultimi file con codifica Unicode UTF-8, # # per una maggiore compatibilità generale con il resto del gioco. # # # # Infine è possibile utilizzare il pannello di configurazione seguente, per # # abilitare o meno dei file di sfondo alla finestra delle informazioni di # # missione e/o quella dei comandi, utilizzare una picture per mostrare i # # comandi utilizzabili e settare dimensione e nome del font di default. In tal # # proposito, per utilizzare le prime tre opzioni è sufficiente impostare le 3 # # variabili INFO_BCKG, CMDS_BCKG e CMDS_PICT con il nome dei file grafici da # # utilizzare. Tali file devono trovarsi all'interno della già citata cartella # # "Missioni". Per quanto riguarda le 2 opzioni sul font, è necessario # # configurare le due variabili FONT_NAME e FONT_SIZE. # # ---------------------------------------------------------------------------- # # COMANDI SUPPORTATI DAI FILE DI TESTO # # v[i] - Mostra il valore della variabile i; # # n[i] - Mostra il nome dell'eroe i (l'indice i parte da 1); # # c[i] - Cambia il colore del font nel colore di default i (0 ~ 7); # # c[0x<HEX>] - Cambia il colore del font nel colore specificato dal codice # # esadecimale da sostituire a <HEX>; # # b - Attiva/disattiva il grassetto; # # i - Attiva/disattiva l'italico; # # s - Attiva/disattiva l'ombreggiatura; # # font[nome] - Cambia il font in uso (inserire il nome del nuovo font tra le # # parentesi quadrate, o lasciarle vuote per tornare al font di # # default) # # fntsz[n] - Imposta a n la dimensione del font in uso (0 per tornare alla # # dimensione di default); # # oa[i] - Disegna nome e icona dell'armatura i; # # oi[i] - Disegna nome e icona dell'oggetto i; # # os[i] - Disegna nome e icona dell'abilità i; # # ow[i] - Disegna nome e icona dell'arma i; # # tc - Allinea il testo al centro: deve essere il primo comando; # # tl - Allinea il testo a sinistra: deve essere il primo comando; # # tr - Allinea il testo a destra: deve essere il primo comando, # #==============================================================================# #------------------------------------------------------------------------------- # Modulo MSCP - Pannello di configurazione per la schermata delle informazioni # di missioni #------------------------------------------------------------------------------- module MSCP #===========================================================================# # **** PANNELLO DI CONFIGURAZIONE **** # #===========================================================================# #---------------------------------------------------------------------------- # * Settaggio della grafica per le schermata delle istruzioni #---------------------------------------------------------------------------- INFO_BCKG = "Info_Bckg" # File grafico di sfondo alla finestra delle info. CMDS_BCKG = "Ctrl_Bckg" # File grafico di sfondo alla finestra dei comandi CMDS_PICT = "Ctrl_Pict" # File grafico con i comandi utilizzabili #---------------------------------------------------------------------------- # * Settaggio delle impostazioni del font di default #---------------------------------------------------------------------------- FONT_NAME = "Arial" # Nome del font di default FONT_SIZE = 22 # Dimensione di default del font #===========================================================================# # **** NON EDITARE LE SEGUENTI RIGHE **** # #===========================================================================# #---------------------------------------------------------------------------- # * Lista degli scan-codes associati ai comandi dei file di testo #---------------------------------------------------------------------------- USED_CODES = ["000", /001[([0-9]+)]/, /026[([0123456789abcdef]+)]/, "004", "005", "006", /007[(.*?)]/, /010[([0-9]+)]/, /014[([0-9]+)]/, /015[([0-9]+)]/, /016[([0-9]+)]/, /017[([0-9]+)]/, "020", "021", "022"] end #=============== Inizio Classe Missioni ===============# class Missioni < Window_Base def initialize(n,s) super(0,0,640,480) self.opacity = 0 @active = false #Rende inattiva la schermata @n = n #Numero della missione @status = s #Status missione (1=Start,0=End) @botto_pld = false #Flag effetto sonoro @comandi = false #Flag comandi @can_close = false #Flag di chiusura @counter = 0 #Contatore animazione cursore @direction = 0 #Flag direzione cursore @speed = 4 #Velocità animazione cursore #Verifica che i parametri passati siano validi. In #caso contrario, avverte l'utente #Verifica su @n @grafica = "Graphics/Pictures/Missioni/N_"+@n.to_s+".png" if (!FileTest.exist?(@grafica)) print("Errore, grafica di missione inesistente") end #Verifica su @status if (@status<0 or @status>1) print("Errore, status sconosciuto") end end #End Initialize def main #Imposta la mappa corrente come sfondo @spriteset = Spriteset_Map.new #Carica la finestra degli obiettivi @info = Win_Info.new(@n) @info.visible = false #Carica la finestra d'aiuto @ctrl = Win_Ctrl.new @ctrl.visible = false #Carica gli oggetti grafici load_media Graphics.transition loop do Graphics.update Input.update update if $scene != self break end end Graphics.freeze #Elimina lo sfondo @spriteset.dispose #Elimina la scritta "Missione" @missione.dispose #Elimna il numero della missione @numero.dispose #Elimina il cursore @cur.dispose #Elimina la scritta "Continua" @go.dispose if (@status == 1) #Elimina la scritta "Obiettivi" @obj.dispose #Elimina la finestra degli obiettivi @info.dispose #Elimina la finestra d'aiuto @ctrl.dispose else #Elimina la scritta "Completed" @completed.dispose end end #End Main def load_media #Carica il cursore @cur = Sprite.new @cur.bitmap = RPG::Cache.picture("Cursore_Inverso.png") @cur.opacity = 0 #Carica la scritta "Missione" @missione = Sprite.new @missione.bitmap = RPG::Cache.picture("Missioni/Missione.png") @missione.x = 80 @missione.y = 155 @missione.opacity = 0 #Carica il numero della missione @numero = Sprite.new @numero.bitmap = RPG::Cache.picture("Missioni/N_"+@n.to_s+".png") @numero.opacity = 0 #Carica le scritte "Obiettivi" e "Continua" se la missione inzia if (@status == 1) # OBIETTIVI @obj = Sprite.new @obj.bitmap = RPG::Cache.picture("Missioni/Obiettivi.png") @obj.x = @missione.x + 36 @obj.y = @missione.y + 10 + @missione.bitmap.height @obj.opacity = 0 # CONTINUA @go = Sprite.new @go.bitmap = RPG::Cache.picture("Missioni/Continua.png") @go.x = @obj.x @go.y = @obj.y + 30 @go.opacity = 0 @go.tone = Tone.new(0,0,0,255) else #Carica le scritte "Completed" e "Continua" se la missione sta finendo #"COMPLETED" @completed = Sprite.new @completed.bitmap = RPG::Cache.picture("Missioni/Completed.png") @completed.opacity = 0 #"CONTINUA" @go = Sprite.new @go.bitmap = RPG::Cache.picture("Missioni/Continua.png") @go.opacity = 0 end end #End Load_Media def update @info.update if @info.visible if (@active) refresh else Audio.me_play("Audio/ME/DMC3 - Mission Theme") case @status when 1 #Animazione di inizio missione if (@missione.opacity<255) @missione.opacity += 8 end if (@missione.opacity >= 255 and @numero.opacity < 255) @numero.zoom_x = 8 @numero.zoom_y = 8 @numero.opacity = 255 @numero.x = ((640-@missione.x+@missione.bitmap.width)/2)-((@numero.bitmap.width*@numero.zoom_x)/2)+50 @numero.y = 220-(((@numero.bitmap.height*@numero.zoom_y)-@numero.bitmap.height)/2) else if (@botto_pld == false and @numero.opacity == 255) Audio.se_play("Audio/SE/054-Cannon03",80) @botto_pld = true end if (@numero.zoom_x > 1) @numero.zoom_x -= 1 @numero.zoom_y -= 1 @numero.x = ((640-@missione.x+@missione.bitmap.width)/2)-((@numero.bitmap.width*@numero.zoom_x)/2)+50 @numero.y = 220-(((@numero.bitmap.height*@numero.zoom_y)-@numero.bitmap.height)/2) @comandi = true end if (@comandi and @obj.opacity<255) @obj.opacity += 10 @go.opacity += 10 end if (@go.opacity>=255) @active = true @index = 0 @cur.x = @obj.x - 24 @cur.y = @obj.y @cur.opacity = 255 end end when 0 #Animazione di fine missione if (@missione.opacity < 255) @missione.tone = Tone.new(0,0,0,200) @numero.tone = @missione.tone @numero.x = ((640-@missione.x+@missione.bitmap.width)/2)-((@numero.bitmap.width*@numero.zoom_x)/2)+50 @numero.y = 220-(((@numero.bitmap.height*@numero.zoom_y)-@numero.bitmap.height)/2) @missione.opacity += 8 @numero.opacity += 8 end if (@missione.opacity >= 255 and @completed.opacity < 255) @completed.zoom_x = 8 @completed.zoom_y = 8 @completed.opacity = 255 @completed.x = @missione.x-(((@completed.bitmap.width*@completed.zoom_x)/2)-((@completed.bitmap.width)/2)) @appo = @numero.y+@numero.bitmap.height-@completed.bitmap.height-10 @completed.y = @appo-(((@completed.bitmap.height*@completed.zoom_y)-@completed.bitmap.height)/2) else if (@botto_pld == false and @completed.opacity == 255) Audio.se_play("Audio/SE/054-Cannon03",80) @botto_pld = true end if (@completed.zoom_x > 1) @completed.zoom_x -= 1 @completed.zoom_y -= 1 @completed.x = @missione.x-(((@completed.bitmap.width*@completed.zoom_x)/2)-((@completed.bitmap.width)/2)) @appo = @numero.y+@numero.bitmap.height-@completed.bitmap.height-10 @completed.y = @appo-(((@completed.bitmap.height*@completed.zoom_y)-@completed.bitmap.height)/2) @comandi = true end if (@comandi and @go.opacity<255) @go.x = (640 - (@go.bitmap.width))/2 @go.y = @completed.y+@completed.bitmap.height+50 @go.opacity += 10 end if (@go.opacity>=255) self.active = true @active = true @cur.x = @go.x - 24 @cur.y = @go.y @cur.opacity = 255 end end end end end #End Update def refresh if (@counter%@speed == 0) and (self.active) case @direction when 0 @cur.x -= 2 when 1 @cur.x += 2 end elsif (@counter == ((@speed*3)-1)) and (self.active) @direction = 1 elsif (@counter == ((@speed*6)-1)) and (self.active) @direction = 0 @counter = -1 end case @status when 1 #Aggiornamento d'inizio missione if (@can_close) and (self.active) @go.tone = Tone.new(0,0,0,0) end if Input.trigger?(Input::DOWN) and (self.active) if (@index == 0) Audio.se_play("Audio/SE/001-System01") @cur.y = @go.y @index = 1 else $game_system.se_play($data_system.buzzer_se) end end if Input.trigger?(Input::UP) and (self.active) if (@index == 1) Audio.se_play("Audio/SE/001-System01") @cur.y = @obj.y @index = 0 else $game_system.se_play($data_system.buzzer_se) end end #Apre la finestra degli obiettivi if Input.trigger?(Input::C) and (self.active) if (@index == 0) $game_system.se_play($data_system.decision_se) @can_close = true self.active = false @info.visible = true @info.refresh @ctrl.visible = true @info.set_back_visibility @ctrl.set_back_visibility @ctrl.set_pict_visibility else if (@can_close) $game_system.se_play($data_system.decision_se) Audio.me_fade(100) $scene = Scene_Map.new else $game_system.se_play($data_system.buzzer_se) end end end #Chiude la finestra degli obiettivi if Input.trigger?(Input::B) and (!self.active) $game_system.se_play($data_system.cancel_se) self.active = true @info.visible = false @info.set_page(0) @info.set_back_visibility @ctrl.visible = false @ctrl.set_back_visibility @ctrl.set_pict_visibility @counter = 0 @direction = 0 @cur.x = @go.x - 24 end when 0 #Aggiornamento di fine missione if Input.trigger?(Input::UP) or Input.trigger?(Input::DOWN) $game_system.se_play($data_system.buzzer_se) end if Input.trigger?(Input::C) $game_system.se_play($data_system.decision_se) Audio.me_fade(100) $scene = Scene_Map.new end end @counter += 1 end #End Refresh end #End Missioni #================ Fine Classe Missioni ================# #=============== Inizio Classe Win_Info ===============# class Win_Info < Window_Base #-------------------------------------------------------------------------- # - Inizializzazione dell'oggetto #-------------------------------------------------------------------------- def initialize(n) super(32,16,576,384) self.opacity = MSCP::INFO_BCKG == "" ? 160 : 0 self.contents = Bitmap.new(width - 32, height - 32) #Numero della missione @n = n #Calcola il percorso della missione chiamata @path = "Testi Missioni/Missione_"+@n.to_s+".rxdata" #Verifica che il file richiesto esista, altrimenti #informa l'utente dell'errore if FileTest.exist?(@path) #Acquisisce il testo della missione @text = IO.readlines(@path) else print("Errore, la missione scelta non esiste") end #Setta la pagina iniziale @pag = 0 end #End Initialize #-------------------------------------------------------------------------- # - Aggiornamento #-------------------------------------------------------------------------- def refresh # Cancella i contenuti precedenti self.contents.clear # Imposta il font di default self.contents.font.name = MSCP::FONT_NAME self.contents.font.size = MSCP::FONT_SIZE # Disegna lo sfondo, se è stato impostato if MSCP::INFO_BCKG != "" and @back == nil @back = Sprite.new @back.bitmap = RPG::Cache.picture("Missioni/" + MSCP::INFO_BCKG) @back.x = self.x @back.y = self.y end # Imposta le variabili di default @x = @y = 0 @clone = "" # Imposta il flag dell'ombreggiatura @shadow = false #Scrive le righe di testo #Se le righe sono <= di 14 le scrive tutte if (@text.size <= 14) for i in 0...@text.size @riga = @text[i] # Formatta la riga format(@riga) # Scrive la riga @y = i @clone = @riga.clone while (c = @clone.slice!(/./m)) != nil write_char(c) end @x = 0 end else # Altrimenti, scrive il testo separandolo in blocchi di 14 righe @inizio = @pag * 14 if ((@inizio+14) <= @text.size) @fine = @inizio + 14 else @fine = @inizio + (@text.size-@inizio) end k = 0 for i in @inizio...@fine @riga = @text[i] # Formatta la riga format(@riga) # Scrive la riga @y = k @clone = @riga.clone while (c = @clone.slice!(/./m)) != nil write_char(c) end @x = 0 k += 1 end end end #End Refresh #-------------------------------------------------------------------------- # - Formattazione delle righe di testo #-------------------------------------------------------------------------- def format(text) # Control text processing begin last_text = text.clone text.gsub!(/[Vv][([0-9]+)]/) { $game_variables[$1.to_i] } end until text == last_text text.gsub!(/[Nn][([0-9]+)]/) do $game_actors[$1.to_i] != nil ? $game_actors[$1.to_i].name : "" end # Change "" to "000" for convenience text.gsub!(//) { "000" } # Change "C" to "001" and "C[0xHEX]" to "026" text.gsub!(/[Cc][([0-9]+)]/) { "001[#{$1}]" } text.gsub!(/[Cc][0x([0123456789abcdef]+)]/) { "026[#{$1}]" } # bold and italics text.gsub!(/[bb]/) { "004" } text.gsub!(/[ii]/) { "005" } # shadow text.gsub!(/[ss]/) { "006" } # font text.gsub!(/[Ff][Oo][Nn][Tt][(.*?)]/) { "007[#{$1}]" } # font size text.gsub!(/[Ff][Nn][Tt][ss][Zz][([0-9]+)]/) { "010[#{$1}]" } # armor, items, skills, and weapons text.gsub!(/[Oo][Aa][([0-9]+)]/) { item = $data_armors[$1.to_i] "014[#{$1}]" + " " + item.name } text.gsub!(/[Oo][ii][([0-9]+)]/) { item = $data_items[$1.to_i] "015[#{$1}]" + " " + item.name } text.gsub!(/[Oo][ss][([0-9]+)]/) { item = $data_skills[$1.to_i] "016[#{$1}]" + " " + item.name } text.gsub!(/[Oo][Ww][([0-9]+)]/) { item = $data_weapons[$1.to_i] "017[#{$1}]" + " " + item.name } # text justification text.gsub!(/[Tt][Cc]/) { "020" } text.gsub!(/[Tt][Ll]/) { "021" } text.gsub!(/[Tt][Rr]/) { "022" } end #-------------------------------------------------------------------------- # * Process and write the given character #-------------------------------------------------------------------------- def write_char(c) if c == "000" # Return to original text c = "" end # If C[n] if c == "001" # Change text color @clone.sub!(/[([0-9]+)]/, "") color = $1.to_i if color >= 0 and color <= 7 self.contents.font.color = text_color(color) end # go to next text return end # If b if c == "004" # toggle bold self.contents.font.bold = !self.contents.font.bold # go to next text return end # If i if c == "005" # toggle italics self.contents.font.italic = !self.contents.font.italic # go to next text return end # If s if c == "006" # toggle shadow @shadow = !@shadow # go to next text return end # If font if c == "007" # change font @clone.sub!(/[(.*?)]/, "") font = $1.to_s if font == "" self.contents.font.name = MSCP::FONT_NAME else self.contents.font.name = font end # go to next text return end # If fntsz if c == "010" # change font size @clone.sub!(/[([0-9]+)]/, "") size = $1.to_i self.contents.font.size = size if size != 0 self.contents.font.size = MSCP::FONT_SIZE if size == 0 # go to next text return end # If oa[n] if c == "014" @clone.sub!(/[([0-9]+)]/, "") index = $1.to_i @clone.sub!(" ", "") item = $data_armors[index] # draw the icon icon = RPG::Cache.icon(item.icon_name) line = self.contents.text_size("dj").height self.contents.blt(@x + 4, (@y * line) + 4, icon, Rect.new(0, 0, 24, 24)) @x += 24 # go to next text return end # If oi[n] if c == "015" @clone.sub!(/[([0-9]+)]/, "") index = $1.to_i @clone.sub!(" ", "") item = $data_items[index] # draw the icon icon = RPG::Cache.icon(item.icon_name) line = self.contents.text_size("dj").height self.contents.blt(@x + 4, (@y * line) + 4, icon, Rect.new(0, 0, 24, 24)) @x += 24 # go to next text return end # If os[n] if c == "016" @clone.sub!(/[([0-9]+)]/, "") index = $1.to_i @clone.sub!(" ", "") item = $data_skills[index] # draw the icon icon = RPG::Cache.icon(item.icon_name) line = self.contents.text_size("dj").height self.contents.blt(@x + 2, (@y * line) + 4, icon, Rect.new(0, 0, 24, 24)) @x += 24 # go to next text return end # If ow[n] if c == "017" @clone.sub!(/[([0-9]+)]/, "") index = $1.to_i @clone.sub!(" ", "") item = $data_weapons[index] # draw the icon icon = RPG::Cache.icon(item.icon_name) line = self.contents.text_size("dj").height self.contents.blt(@x + 2, (@y * line) + 4, icon, Rect.new(0, 0, 24, 24)) @x += 24 # go to next text return end # If tc if c == "020" # GIUSTIFICAZIONE CENTRATA # Pulisce la riga corrente dai codici dei comandi str = remove_codes(@clone) # Calcola la dimensione della riga "pulita" w = 0 for i in 0...@sizes.size - 1 # Estrapola la sottostringa da esaminare sub_str = str[@sizes[i][0], @sizes[i + 1][0]] next if sub_str == "" # Imposta temporaneamente la nuova dimensione del font old_size = self.contents.font.size self.contents.font.size = @sizes[i][1] # Calcola la dimensione della sottostringa w += self.contents.text_size(sub_str).width end # Reimposta la dimensione originale del font self.contents.font.size = old_size old_size = nil # Calcola la posizione x @x = (self.width - w - 48) / 2 # Prosegue al prossimo carattere return end # If tl if c == "021" # left justify @x = 0 # go to next text return end # If tr if c == "022" # right justify # get the length of the current line w = self.contents.text_size(@clone.split("n")[0]).width @x = self.width - w - 48 # go to next text return end # if c (hex color) if c == "026" # convert hex color to RGB @clone.sub!(/[([0123456789abcdef]+)]/, "") hex_code = $1.to_s red = ("0x" + hex_code.slice(0..1)).hex blue = ("0x" + hex_code.slice(2..3)).hex green = ("0x" + hex_code.slice(4..5)).hex self.contents.font.color = Color.new(red, blue, green) return end # If new line text if c == "n" # Add 1 to y @y += 1 # go to next text return end # Draw text line = self.contents.text_size("dj").height if @shadow old_color = self.contents.font.color.clone self.contents.font.color = Color.new(0, 0, 0, 100) self.contents.draw_text(2 + @x, line * @y + 2, 576, 32, c) self.contents.font.color = old_color end self.contents.draw_text(@x, line * @y, 576, 32, c) # Add x to drawn text width @x += self.contents.text_size(c).width end #-------------------------------------------------------------------------- # - Aggiornamento comandi #-------------------------------------------------------------------------- def update # Scorrimento alla pagina seguente if Input.trigger?(Input::DOWN) or Input.trigger?(Input::RIGHT) if (((@pag + 1)*14) <= @text.size and @text.size != 14) @new_start = ((@pag + 1)*14) if (@text[@new_start] != nil) Audio.se_play("Audio/SE/046-Book01") @pag += 1 refresh else $game_system.se_play($data_system.buzzer_se) end else $game_system.se_play($data_system.buzzer_se) end end # Scorrimento alla pagina precedente if Input.trigger?(Input::UP) or Input.trigger?(Input::LEFT) if ((@pag - 1) >= 0) Audio.se_play("Audio/SE/046-Book01") @pag -= 1 refresh else $game_system.se_play($data_system.buzzer_se) end end end #End Update #-------------------------------------------------------------------------- # - Rimuove temporaneamente i codici di formattazione utilizzati #-------------------------------------------------------------------------- def remove_codes(s) # Clona la riga ottenuta in ingresso ss = s.clone # Svuota/crea un array con le informazioni sulla dimensione del font @sizes = [] # Elimina i codici abbinati ai comandi (tranne quello di fntsz) for i in 0...MSCP::USED_CODES.size next if i == 7 # Esclude la ricerca del comando fntsz while ss.scan(MSCP::USED_CODES[i]) != [] ss.slice!(MSCP::USED_CODES[i]) end end # Elimina il ritorno a capo ss.slice!("n") # Riempie l'array con le informazioni sulla dimensione del font # - Posizione, dimensione # Impostazioni attuali @sizes.push([0, self.contents.font.size]) # Lancia un ciclo per acquisire le informazioni mancanti sss = ss.clone i = 0 while (c = sss.slice!(/./m)) != nil if c == "010" # Acquisisce la dimensione del font sss.sub!(/[([0-9]+)]/, "") size = $1.to_i # Inserisce le informazioni nell'array @sizes.push([i, size]) if size != 0 @sizes.push([i, MSCP::FONT_SIZE]) if size == 0 end i += 1 end # Elimina i comandi fntsz e i paramatri relativi while ss.scan(MSCP::USED_CODES[7]) != [] ss.slice!(MSCP::USED_CODES[7]) end # Cancella le stringhe di lavorazione s = nil sss = nil # Ritorna la stringa "pulita" return ss end #-------------------------------------------------------------------------- # - Imposta una pagina specifica #-------------------------------------------------------------------------- def set_page(n) @pag = n end #-------------------------------------------------------------------------- # - Setta la visibilità dello sfondo #-------------------------------------------------------------------------- def set_back_visibility # Aggiornamento dello sfondo if MSCP::INFO_BCKG != "" and @back != nil @back.visible = self.visible end end #-------------------------------------------------------------------------- # - Cancellazione dello sfondo #-------------------------------------------------------------------------- def dispose @back.dispose if MSCP::INFO_BCKG != "" super end end #End Win_Info #================ Fine Classe Win_Info ================# #=============== Inizio Classe Win_Ctrl ===============# class Win_Ctrl < Window_Base def initialize super(32,399,576,64) self.opacity = MSCP::CMDS_BCKG == "" ? 160 : 0 self.contents = Bitmap.new(width - 32, height - 32) refresh end #End Initialize def refresh self.contents.clear # Disegna lo sfondo se è stato impostato if MSCP::CMDS_BCKG != "" and @back == nil @back = Sprite.new @back.bitmap = RPG::Cache.picture("Missioni/" + MSCP::CMDS_BCKG) @back.x = self.x @back.y = self.y @back.visible = false end # Disegna l'immagine se è stata impostata if MSCP::CMDS_PICT == "" self.contents.font.name = "Arial" self.contents.font.size = 24 @avanti = "Giù/Destra - Avanti" @indietro = "Su/Sinistra - Indietro" @esci = "B - Esci" self.contents.draw_text(0, 0, 576, 32, @avanti) self.contents.draw_text(230, 0, 576, 32, @indietro) self.contents.draw_text(470, 0, 576, 32, @esci) elsif @pict == nil @pict = Sprite.new @pict.bitmap = RPG::Cache.picture("Missioni/" + MSCP::CMDS_PICT) @pict.x = self.x @pict.y = self.y @pict.visible = false end end #End Refresh #-------------------------------------------------------------------------- # - Setta la visibilità dello sfondo #-------------------------------------------------------------------------- def set_back_visibility # Aggiornamento dello sfondo if MSCP::CMDS_BCKG != "" and @back != nil @back.visible = self.visible end end #-------------------------------------------------------------------------- # - Setta la visibilità dell'immagine #-------------------------------------------------------------------------- def set_pict_visibility # Aggiornamento dell'immagine if MSCP::CMDS_PICT != "" and @pict != nil @pict.visible = self.visible end end #-------------------------------------------------------------------------- # - Cancellazione dello sfondo #-------------------------------------------------------------------------- def dispose @back.dispose if MSCP::CMDS_BCKG != "" super end end #End Win_Ctrl #================ Fine Classe Win_Ctrl ================# 5. Istruzioni per l'usoScritte nel commento all'interno dello script Il mondo è il cancro... Io la cura... Il mio sport preferito:Gli altri --> (T_T#)O==(^_^Q) <-- IO I miei alias:http://www.naruto-kun.com/images/narutotest/shikamaru.jpg-----------------------------------------------------http://www.naruto-kun.com/images/narutotest/rocklee.jpg-----------------------------------------------------http://www.ff-fan.com/chartest/banners/auron.jpg Broly88'shttp://pokejungle.net/other/pokepet/trainers/e4k2.png http://pokejungle.net/other/pokepet/Charizard.gifFlame Dancer the level 99 Charizard! http://img259.imageshack.us/img259/7446/rockleeoj1.gif http://img233.imageshack.us/img233/7449/sorajm1.gif Link to comment Share on other sites More sharing options...
DaD Posted December 17, 2006 Share Posted December 17, 2006 Si però non usate megaupload ...C'è altervista, netsons, rapidshare il sistema di allegati del nostro forum ... ma non megaupload vi prego ;_; TPC Radio Site | Blog | Big-Bughttp://img102.imageshack.us/img102/4332/slackware2userbarok0.gifhttp://img141.imageshack.us/img141/1571/nokappams1cf8.png http://i29.tinypic.com/2vijdlh.jpg Link to comment Share on other sites More sharing options...
Yazus Posted December 20, 2006 Share Posted December 20, 2006 Si però non usate megaupload ...C'è altervista, netsons, rapidshare il sistema di allegati del nostro forum ... ma non megaupload vi prego ;_;si broly fatti n bell account su altervista per metterci tutti i tuoi bellissimi script ^^ Progetti in corsoMaura 2 Wars - La vendetta di Tefix[Rpg Maker XP]Demo = 100% Scaricala! Fare "Salva Oggetto con Nome"Gioco = 40%GRAFICA -Chara = 25%-Battelers = 20%-Battle Baks = 10%-Title Set = 50-Title = 100%SCRIPT -Battle System = 99%-Altri Script = 100% (Se ne trovo altri ancora meglio) MUSICA -BMG = 80%-BGS = 100%-ME = 60%-SE = 30%http://www.ff-fan.com/chartest/banners/tifa.jpgWhich Final Fantasy Character Are You?Final Fantasy 7 Link to comment Share on other sites More sharing options...
Broly88 Posted December 20, 2006 Author Share Posted December 20, 2006 Ok gente! Ne terrò conto^^ Il mondo è il cancro... Io la cura... Il mio sport preferito:Gli altri --> (T_T#)O==(^_^Q) <-- IO I miei alias:http://www.naruto-kun.com/images/narutotest/shikamaru.jpg-----------------------------------------------------http://www.naruto-kun.com/images/narutotest/rocklee.jpg-----------------------------------------------------http://www.ff-fan.com/chartest/banners/auron.jpg Broly88'shttp://pokejungle.net/other/pokepet/trainers/e4k2.png http://pokejungle.net/other/pokepet/Charizard.gifFlame Dancer the level 99 Charizard! http://img259.imageshack.us/img259/7446/rockleeoj1.gif http://img233.imageshack.us/img233/7449/sorajm1.gif Link to comment Share on other sites More sharing options...
marigno Posted January 14, 2007 Share Posted January 14, 2007 Riuppa usando altervista please ^______^ Link to comment Share on other sites More sharing options...
Broly88 Posted January 15, 2007 Author Share Posted January 15, 2007 Missioni.rar Così va bene? Il mondo è il cancro... Io la cura... Il mio sport preferito:Gli altri --> (T_T#)O==(^_^Q) <-- IO I miei alias:http://www.naruto-kun.com/images/narutotest/shikamaru.jpg-----------------------------------------------------http://www.naruto-kun.com/images/narutotest/rocklee.jpg-----------------------------------------------------http://www.ff-fan.com/chartest/banners/auron.jpg Broly88'shttp://pokejungle.net/other/pokepet/trainers/e4k2.png http://pokejungle.net/other/pokepet/Charizard.gifFlame Dancer the level 99 Charizard! http://img259.imageshack.us/img259/7446/rockleeoj1.gif http://img233.imageshack.us/img233/7449/sorajm1.gif Link to comment Share on other sites More sharing options...
marigno Posted January 15, 2007 Share Posted January 15, 2007 Ok, grazie mille e scusa per il disturbo ;) Link to comment Share on other sites More sharing options...
Broly88 Posted January 18, 2007 Author Share Posted January 18, 2007 Figurati Il mondo è il cancro... Io la cura... Il mio sport preferito:Gli altri --> (T_T#)O==(^_^Q) <-- IO I miei alias:http://www.naruto-kun.com/images/narutotest/shikamaru.jpg-----------------------------------------------------http://www.naruto-kun.com/images/narutotest/rocklee.jpg-----------------------------------------------------http://www.ff-fan.com/chartest/banners/auron.jpg Broly88'shttp://pokejungle.net/other/pokepet/trainers/e4k2.png http://pokejungle.net/other/pokepet/Charizard.gifFlame Dancer the level 99 Charizard! http://img259.imageshack.us/img259/7446/rockleeoj1.gif http://img233.imageshack.us/img233/7449/sorajm1.gif Link to comment Share on other sites More sharing options...
aragonita Posted June 24, 2007 Share Posted June 24, 2007 Bello script solo c'è un errore e io non so come risolverlo non so un bravo programmatore in pratica quando metto la fine missione viene scritto missione completata ..... c'è la scritta continua con il cursore sopra ma pigio invio e non va come posso fare? Titolo: The AdventureGrafica: 20%Script: 30%Sonoro: 70%Maping: 5%Demo: 4%Totale: 5%Partecipante al Rpg2s.net Game Contest 2007/2008http://www.rpg2s.net/contest/GameContest0708/userbar_r2sgc.gifGioco in Sviluppo: The AdventureSpoiler Il Manifesto del Making ItalianoSALVIAMO IL MAKING ITALIANO!!Dopo un test dei nostri esperti (Alato, Blake e havana24) abbiamo scoperto che ad interesse risponde interesse: cioè se voi dimostrate di essere interessati a ciò che creano gli altri, questi saranno stimolati a continuare a creare! E' un concetto semplice ma estremamente sottovalutato, basta vedere quanti topic di bei giochi sono caduti nel dimenticatoio e sono stati cagati solo da poche persone (prendiamo per esempio il fantastico gioco di Vech che vi invito a vedere nella sezione RM2k).Perciò quello che dobbiamo fare è: leggere, leggere, leggere, postare, postare, postare! E questo non significa postare a caso, ma leggere per bene il progetto di qualcuno, le domande poste, le creazioni grafiche e musicali, e fare dei post in cui si propongano miglioramenti, si critichino le brutture, si esaltino le bellezze, si aiutino gli oppressi etc etcBASTA AL MAKING ITALIANO CHE VA A ROTOLI! DIAMOCI UNA SVEGLIATA!!Per dimostrarvi ciò che sto esponendo vi riporto che la volta in cui abbiamo provato (Alato, Blake e havana24) a fare una cosa di questo genere, c'è costata un pomeriggio ma il giorno dopo abbiamo ottenuto il numero massimo di utenti online mai raggiunto!!! Ma soprattutto ciò significa che l'interesse riguardo al making era stato, almeno momentaneamente, risvegliato!!Voi pensate che eravamo solo in 3 a cercare tutti i topic e ravvivarli (con sincerità e senza i soliti falsi "Oh che bello.", ma anche con critiche per lavori incompleti o assurdi) e abbiamo ottenuto quel grande risultato: se lo facessimo tutti non sarebbe una cosa potentissima?!?BASTA ALLE SOLITE BANALI DISCUSSIONI SULLA DECADENZA DEI GIOCHI!! FACCIAMOLI STI GIOCHI!!!Chi è contrario a questa cosa, può pure continuare così ma è una persona che col making non ha nulla a che fare, ma chi crede nel making inizi ora, immediatamente a seguire questa linea di pensiero!Ma chi è d'accordo, chi davvero ci tiene al making, incolli questo Manifesto nella propria firma!! Mettete anche voi questa firma!! Link to comment Share on other sites More sharing options...
Der Weiss Raben Posted June 26, 2007 Share Posted June 26, 2007 Devi aspettare che finisca la musichetta scrausa per poter cliccare Link to comment Share on other sites More sharing options...
aragonita Posted June 26, 2007 Share Posted June 26, 2007 non funziona :( Titolo: The AdventureGrafica: 20%Script: 30%Sonoro: 70%Maping: 5%Demo: 4%Totale: 5%Partecipante al Rpg2s.net Game Contest 2007/2008http://www.rpg2s.net/contest/GameContest0708/userbar_r2sgc.gifGioco in Sviluppo: The AdventureSpoiler Il Manifesto del Making ItalianoSALVIAMO IL MAKING ITALIANO!!Dopo un test dei nostri esperti (Alato, Blake e havana24) abbiamo scoperto che ad interesse risponde interesse: cioè se voi dimostrate di essere interessati a ciò che creano gli altri, questi saranno stimolati a continuare a creare! E' un concetto semplice ma estremamente sottovalutato, basta vedere quanti topic di bei giochi sono caduti nel dimenticatoio e sono stati cagati solo da poche persone (prendiamo per esempio il fantastico gioco di Vech che vi invito a vedere nella sezione RM2k).Perciò quello che dobbiamo fare è: leggere, leggere, leggere, postare, postare, postare! E questo non significa postare a caso, ma leggere per bene il progetto di qualcuno, le domande poste, le creazioni grafiche e musicali, e fare dei post in cui si propongano miglioramenti, si critichino le brutture, si esaltino le bellezze, si aiutino gli oppressi etc etcBASTA AL MAKING ITALIANO CHE VA A ROTOLI! DIAMOCI UNA SVEGLIATA!!Per dimostrarvi ciò che sto esponendo vi riporto che la volta in cui abbiamo provato (Alato, Blake e havana24) a fare una cosa di questo genere, c'è costata un pomeriggio ma il giorno dopo abbiamo ottenuto il numero massimo di utenti online mai raggiunto!!! Ma soprattutto ciò significa che l'interesse riguardo al making era stato, almeno momentaneamente, risvegliato!!Voi pensate che eravamo solo in 3 a cercare tutti i topic e ravvivarli (con sincerità e senza i soliti falsi "Oh che bello.", ma anche con critiche per lavori incompleti o assurdi) e abbiamo ottenuto quel grande risultato: se lo facessimo tutti non sarebbe una cosa potentissima?!?BASTA ALLE SOLITE BANALI DISCUSSIONI SULLA DECADENZA DEI GIOCHI!! FACCIAMOLI STI GIOCHI!!!Chi è contrario a questa cosa, può pure continuare così ma è una persona che col making non ha nulla a che fare, ma chi crede nel making inizi ora, immediatamente a seguire questa linea di pensiero!Ma chi è d'accordo, chi davvero ci tiene al making, incolli questo Manifesto nella propria firma!! Mettete anche voi questa firma!! Link to comment Share on other sites More sharing options...
Broly88 Posted July 2, 2007 Author Share Posted July 2, 2007 (edited) Musichetta scrausa? A parte che la puoi cambiare se non ti sta bene: nessuno ti obbliga a tenerla. E poi... mmm... ma si!!! Ecco da dove l'ho rippata!!! La "musichetta scrausa" è la musica del menù delle missioni di DMC3. Ammazza oh. Sti tizi della Capcom fanno proprio cagare. Fanno Devil May Cry e ti ci mettono sta merda di sottofondo... Brutta vero? Aspettavano proprio un genio come te per cambiarla. Meno male che gliel'hai suggerito, sennò su PS3 magari ci mettevano i midi!! Perchè non lanci anche una bella campagna di sensibilizzazione su quanto fa schifo la "musichetta scrausa" di 'sto script? Così poi ti intitolano un nuovo ministero: Ministero della Pubblica Ignoranza. Edited July 2, 2007 by Broly88 Il mondo è il cancro... Io la cura... Il mio sport preferito:Gli altri --> (T_T#)O==(^_^Q) <-- IO I miei alias:http://www.naruto-kun.com/images/narutotest/shikamaru.jpg-----------------------------------------------------http://www.naruto-kun.com/images/narutotest/rocklee.jpg-----------------------------------------------------http://www.ff-fan.com/chartest/banners/auron.jpg Broly88'shttp://pokejungle.net/other/pokepet/trainers/e4k2.png http://pokejungle.net/other/pokepet/Charizard.gifFlame Dancer the level 99 Charizard! http://img259.imageshack.us/img259/7446/rockleeoj1.gif http://img233.imageshack.us/img233/7449/sorajm1.gif Link to comment Share on other sites More sharing options...
Der Weiss Raben Posted July 4, 2007 Share Posted July 4, 2007 Ma cosa vuoi da me? Dobbiamo fare il MinCulPop su ogni parola che passa? Attenzione, sta passando Broly88! Tutti zitti! Nessuna critica! Ma tu stai a sparare sentenze a caso o riesci a capire che per musichetta scrausa intendo quella classica (scrausa, appunto) che c'è alla fine delle missioni, quando trovi un oggetto o eccetera e non quella in particolare? Ma scusa, è vero, eri troppo impegnato a scrivere quella flammata (che tra l'altro, se non mi piacesse davvero quella musica, se ritenessi che fa schifo, cosa mi faresti? Mi faresti fucilare?). Link to comment Share on other sites More sharing options...
marigno Posted July 4, 2007 Share Posted July 4, 2007 Evitate il flame. ;_;Comunque Broly, aiuta aragonita che ha chiesto aiuto. xD Link to comment Share on other sites More sharing options...
Der Weiss Raben Posted July 4, 2007 Share Posted July 4, 2007 Certo, io evito il flame; e Broly fa altrettanto, che non ho flammato a caso. Comunque...a me fa premere dopo che finisce la musica...sinceramente non mi da questo problema... Link to comment Share on other sites More sharing options...
Broly88 Posted July 4, 2007 Author Share Posted July 4, 2007 (edited) Ritengo la questione troppo scadente per poter rispondere. Anche perchè è inutile tirare in ballo il regime fascista e il Ministero della Cultura Popolare sperando che io non capisca. Ad Aragonita ho già risolto il problema via pm: basta aggiungere alla riga 225 questo@active = trueIl suo problema stava proprio nel fatto che era costretto ad aspettare la fine del brano di sottofondo. P.S. : per me questo topic si può anche chiudere (magari ne rifaccio uno nuovo con la versione corretta). Casomai faccio pure una modifica allo script così ognuno può mettersi la musica che vuole. io non offendo mai per primo... Edited July 4, 2007 by Broly88 Il mondo è il cancro... Io la cura... Il mio sport preferito:Gli altri --> (T_T#)O==(^_^Q) <-- IO I miei alias:http://www.naruto-kun.com/images/narutotest/shikamaru.jpg-----------------------------------------------------http://www.naruto-kun.com/images/narutotest/rocklee.jpg-----------------------------------------------------http://www.ff-fan.com/chartest/banners/auron.jpg Broly88'shttp://pokejungle.net/other/pokepet/trainers/e4k2.png http://pokejungle.net/other/pokepet/Charizard.gifFlame Dancer the level 99 Charizard! http://img259.imageshack.us/img259/7446/rockleeoj1.gif http://img233.imageshack.us/img233/7449/sorajm1.gif Link to comment Share on other sites More sharing options...
Der Weiss Raben Posted July 4, 2007 Share Posted July 4, 2007 (edited) Io non volevo offendere nessuno nè giudicare.Ciononostante, se con quello "scrausa" avessi voluto esprimere un giudizio, sarebbe stato nei miei diritti, come sarebbe stato nei tuoi rispondere in maniera CIVILE: che fatica costava replicare alla mia frase senza offendere?Ognuno la pensa come gli pare e ha il diritto di esprimere la sua idea: si chiama libertà di opinione e libertà di parola.Nel momento in cui tu hai usato un flame per rispondermi, ti sei messo dalla parte del torto (anche se, pensandoci a posteriori, io non avrei dovuto rispondere così solo perchè tu lo avevi già fatto...). Cerchiamo comunque di chiuderla qui, non mi pare proprio il caso di andare avanti a flame. Edited July 4, 2007 by Der Weiss Raben Link to comment Share on other sites More sharing options...
Broly88 Posted July 6, 2007 Author Share Posted July 6, 2007 No infatti. Consideriamola chiusa sta faccenda: è solo noiosa sia per noi che per gli altri utenti del forum. Mettiamola così: tu hai sbagliato parola ed io ho sbroccato. Capita. Punto. Viva il forum. Che non c'entra nulla... XD Il mondo è il cancro... Io la cura... Il mio sport preferito:Gli altri --> (T_T#)O==(^_^Q) <-- IO I miei alias:http://www.naruto-kun.com/images/narutotest/shikamaru.jpg-----------------------------------------------------http://www.naruto-kun.com/images/narutotest/rocklee.jpg-----------------------------------------------------http://www.ff-fan.com/chartest/banners/auron.jpg Broly88'shttp://pokejungle.net/other/pokepet/trainers/e4k2.png http://pokejungle.net/other/pokepet/Charizard.gifFlame Dancer the level 99 Charizard! http://img259.imageshack.us/img259/7446/rockleeoj1.gif http://img233.imageshack.us/img233/7449/sorajm1.gif Link to comment Share on other sites More sharing options...
aragonita Posted July 7, 2007 Share Posted July 7, 2007 scusate ma avevo il pc guasto in questi giorno e ora che il pc mi è ritornato mi so subito conesso e ho visto le risposte e mi spiace se vi ho fatto fare discussioni cmq rigranzio broly per l'aiuto che mi ha dato :D funziona alla meraviglia :D e grazie a tutti per la pazienza :dry: Titolo: The AdventureGrafica: 20%Script: 30%Sonoro: 70%Maping: 5%Demo: 4%Totale: 5%Partecipante al Rpg2s.net Game Contest 2007/2008http://www.rpg2s.net/contest/GameContest0708/userbar_r2sgc.gifGioco in Sviluppo: The AdventureSpoiler Il Manifesto del Making ItalianoSALVIAMO IL MAKING ITALIANO!!Dopo un test dei nostri esperti (Alato, Blake e havana24) abbiamo scoperto che ad interesse risponde interesse: cioè se voi dimostrate di essere interessati a ciò che creano gli altri, questi saranno stimolati a continuare a creare! E' un concetto semplice ma estremamente sottovalutato, basta vedere quanti topic di bei giochi sono caduti nel dimenticatoio e sono stati cagati solo da poche persone (prendiamo per esempio il fantastico gioco di Vech che vi invito a vedere nella sezione RM2k).Perciò quello che dobbiamo fare è: leggere, leggere, leggere, postare, postare, postare! E questo non significa postare a caso, ma leggere per bene il progetto di qualcuno, le domande poste, le creazioni grafiche e musicali, e fare dei post in cui si propongano miglioramenti, si critichino le brutture, si esaltino le bellezze, si aiutino gli oppressi etc etcBASTA AL MAKING ITALIANO CHE VA A ROTOLI! DIAMOCI UNA SVEGLIATA!!Per dimostrarvi ciò che sto esponendo vi riporto che la volta in cui abbiamo provato (Alato, Blake e havana24) a fare una cosa di questo genere, c'è costata un pomeriggio ma il giorno dopo abbiamo ottenuto il numero massimo di utenti online mai raggiunto!!! Ma soprattutto ciò significa che l'interesse riguardo al making era stato, almeno momentaneamente, risvegliato!!Voi pensate che eravamo solo in 3 a cercare tutti i topic e ravvivarli (con sincerità e senza i soliti falsi "Oh che bello.", ma anche con critiche per lavori incompleti o assurdi) e abbiamo ottenuto quel grande risultato: se lo facessimo tutti non sarebbe una cosa potentissima?!?BASTA ALLE SOLITE BANALI DISCUSSIONI SULLA DECADENZA DEI GIOCHI!! FACCIAMOLI STI GIOCHI!!!Chi è contrario a questa cosa, può pure continuare così ma è una persona che col making non ha nulla a che fare, ma chi crede nel making inizi ora, immediatamente a seguire questa linea di pensiero!Ma chi è d'accordo, chi davvero ci tiene al making, incolli questo Manifesto nella propria firma!! Mettete anche voi questa firma!! Link to comment Share on other sites More sharing options...
marigno Posted July 7, 2007 Share Posted July 7, 2007 Ok, facciamo così, appena uno dei due posta di nuovo per rispondere all'altro ("Anche per chiedere scusa") chiudo. >: |Continuate via MP. E amatevi come i teletubbies. :* Link to comment Share on other sites More sharing options...
Broly88 Posted August 27, 2007 Author Share Posted August 27, 2007 Aggiornato il primo post e il nome del topic alla nuova versione 3.0... se interessa a qualcuno XD Il mondo è il cancro... Io la cura... Il mio sport preferito:Gli altri --> (T_T#)O==(^_^Q) <-- IO I miei alias:http://www.naruto-kun.com/images/narutotest/shikamaru.jpg-----------------------------------------------------http://www.naruto-kun.com/images/narutotest/rocklee.jpg-----------------------------------------------------http://www.ff-fan.com/chartest/banners/auron.jpg Broly88'shttp://pokejungle.net/other/pokepet/trainers/e4k2.png http://pokejungle.net/other/pokepet/Charizard.gifFlame Dancer the level 99 Charizard! http://img259.imageshack.us/img259/7446/rockleeoj1.gif http://img233.imageshack.us/img233/7449/sorajm1.gif 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