Jump to content
Rpg²S Forum

Alexotter

Utenti
  • Posts

    65
  • Joined

  • Last visited

Posts posted by Alexotter

  1. alex... l'idea era carina, è piaciuto molto anche a me, e se fosse stato organizzato meglio e con maggior cura l'avrei votato, ma è stato realizzata male e alla rinfusa :\

     

    vabbè dai non importa riproverò la prossima volta :D :D :D non è mai semplice organizzare al meglio lo spazio quando si fanno banner :P

  2. Adesso va! :) Ho cambiato il nome della variabile :)

    Ho tolto il ciclo for e istanziata separatamente ciascuna sprite, ho allungato un po' di più il codice ma ora gira :)

    Grazie, se ti dovesse servire un aiuto per contraccambiare basta chiedere ;) Magari no RGSS che ancora devo mandarlo giù bene :P

  3. ok ci sono riuscito, però delle 5 pic solo l'ultima resta sullo schermo le altre scompaiono dopo poco (mi succedeva anche invocando la creazione della finestra da un evento che si avvia tramite azione, mentre lasciando l'evento in parallelo le img restavano ma con un lag generale)...mmm mi sa che allora sullo schermo non possono esserci più pic contemporaneamente istanziate da script.

    Adesso provo a ragionarci ancora, in ogni caso ti ringrazio perchè ho capito molte cosette :D

  4. ok grazie :) il ruby ha una sintassi molto semplice ma l'RGSS applicato al gioco in un primo momento risulta un po' ostico, alla fine è il primo progetto a cui sto modificando gli script, prima lavoravo solo ad eventi :)

     

    ho scritto

       @finestra=Window2.new	@finestra.visible=false	if $game_switches[0001] == true	  @finestra.visible=true	end	if $game_switches[0001] == false	  @finestra.visible=false	end

     

    dove va inserito, all'interno del main o in un nuovo metodo?

  5. Adesso che me lo hai fatto notare avevo richiamato tramite evento in parallelo solo la window. Dava le 5 picture in basso come volevo io e il movimento dell'eroe non era più fluido. Però l'eroe riuscivo a muoverlo

    #===================================================# - CLASS My_Scene Begins#===================================================class My_Scene  #---------------------------------------------------------------------------------  def initialize  end#--------------------------------------------------------------------------------- def main	@window1 = Window2.new	@window1.x =0	@window1.y =0	@window1.height = 100	@window1.width = 100   #@window1.z = 200	 Graphics.transition	loop do	  Graphics.update	  Input.update	 #update	  if $scene != self		break	  end	end 	Graphics.freeze	@window1.dispose   end#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------  def update  end#--------------------------------------------------------------------------------- end#===================================================# - CLASS Your_Scene Ends#===================================================    #===================================================# - CLASS Window1 Begins#=================================================== class Window2 < Window_Baseattr_accessor:id#---------------------------------------------------------------------------------	   def initialize 	super(0, 0, 252,100)	self.contents = Bitmap.new(width - 32, height - 32)	self.visible= false	ins_sprite  end#---------------------------------------------------------------------------------      def ins_sprite #metodo di supporto per inserire lo spirte nella scena	for i in 0...5 do#iteratore 	@cias=$MazzoG1[i].getId	@sprite = Sprite.new	@sprite.bitmap = Bitmap.new("Graphics/Pictures/#{@cias}")	@sprite.x = i*100 #Qui inserire le coordinate preferite	@sprite.y = 300 #Qui inserire le coordinate preferite	@sprite.update   end  end#----------------------------------------------------- end #===================================================# - CLASS Window2 Ends#==============================================

     

    Adesso ho provato a richiamare invece la scena dalla Scene_Map.

    Ho messo in game_temp un attr_accessor:scena_calling e @scena_calling=false

    e l'ho richamato nella Scene_Map più o meno all'altezza della linea 150. Solo che così facendo compare solo la scena con le 5 pictures ma ho i comandi bloccati :) Sicuramente avrò fatto un qualche errore stupido :P

     

    	  elsif $game_temp.shop_calling		call_shop	  elsif $game_temp.name_calling		call_name	  elsif $game_temp.menu_calling		call_menu	  elsif $game_temp.save_calling		call_save	  elsif $game_temp.debug_calling		call_debug	  elsif $game_temp.scena_calling		chiama_scena	  end	end  end  #--------------------------------------------------------------------------  # ● バトルの呼び出し  #--------------------------------------------------------------------------  def chiama_scena	$game_temp.scena_calling=false	$scene=My_Scene.new  end

     

    Io potrei anche richiamare le 5 pictures tramite eventi ma essendo le 5 carte scelte in modo randomico tra le altre 52 del mazzo diventerei pazzo! Così invece tramite quella decina di righe di for riesco ad avere tutti i casi e non avere gorssi problemi qualora volessi apportare modifiche al codice

  6. Ciao ragazzi, ho una domanda da farvi. Come mostrare una figura attraverso script RGSS? Un po' stile "Mostra Figura" e Cancella figura che lavorino in eventi settati su parallelo. La figura deve esserci per tutto il tempo in cui le dico io e cancellarsi quando lo voglio io. Come ho scritto io l'img fa di testa sua :rovatfl:

     

    Ho scritto questa classe, però quando la invoco l'immagine compare solo qualche secondo

     

    class My_img  def initialize  @mysprite = Sprite.new  @mysprite.bitmap = Bitmap.new("Graphics/Pictures/2")  @mysprite.x = 320 - (@mysprite.bitmap.width / 2)  @mysprite.y = 240 - (@mysprite.bitmap.height / 2)  @mysprite.bitmapend end

     

    Vedendo da un tutorial ho scritto anche questo:

     

    class Img   def initialize   # Creazione di uno sprite	@sprite = Sprite.new	@sprite.bitmap = Bitmap.new("Graphics/Pictures/2")	@sprite.x = 100 #Qui inserire le coordinate preferite	@sprite.y = 100 #Qui inserire le coordinate preferite	Graphics.transition	loop do	  Graphics.update	  Input.update	  if $scene != self		break	  end	 end	 Graphics.freeze   # "Congelare" lo sprite alla fine della scena	 @sprite.bitmap.dispose		  @sprite.dispose  endend

     

    L'immagine adesso resta fissa ma è in automatico (l'eore non si muove più) e se provo a mettere l'evento invece a parallelo la memoria è talmente usata che il gioco va incredibilmente a scatti!!!

     

    Ah dato che ci siamo, cosa vuol dire congelare una sprite? :)

    Grazie

  7. Della serie: meglio tardi che mai :rolleyes:

     

    5) Creare un array globale vuoto.

    Aggiungere all'array i tre numeri 1, 2 e 8 utilizzando un ciclo a scelta.

    Impostare un ciclo che continui finchè i tre valori contenuti nell'array sono diversi (quindi che smette quando sono uguali).

    Fate in modo che il programma non si blocchi e come ho fatto in questo passo, mettete in ogni riga un commento che ne spiega la funzione.

     

     

    $ a=[] #creo a un array globale inizialmente vuoto

    lunghezza = 0 # creo la variabile di tipo int per la lunghezza dell'array e la inizializzo a 0

     

     

    while lunghezza && uguali==false < 3 # cicla se la lunghezza dell'array è minore di 3 e se gli elementi dell'array sono diversi

    case lunghezza

    when 0 #se lunghezza=0 aggiungo 1

    a.push(1)

    when 1 #se lunghezza=1 aggiungo 2

    a.push(2)

    uguali = a[0]==a[1] #verifica l'uguaglianza tra i valori dell'array

    when 2

    a.push(8) #se lunghezza=2 aggiungo 8

    uguali = a[1]==a[2] || a[0]==a[2] #verifica l'uguaglianza tra i valori dell'array

    end

    lunghezza += 1 #incremento di 1 la lunghezza

    end

     

  8. purtroppo è da due settimane che sto sotto esami e questa storia continua fino a fine novembre, mi scuso con tutti voi se vi ho rallentato (anche se non credo di averlo fatto) ma non riesco a seguire queste "lezioni". Vi prometto che dal 1 dicembre mi rimetto in paro con tutto, anche perchè, facendo ingegneria informatica, sono argomenti che mi interessano molto :)
  9. hai ragione losco, scusate per il ritardo ma ho avuto una settimana impegnata, purtroppo all'università è così, ci sono settimane in cui non fai nulla e altre in cui ti tocca studiare seriamente o non dai l'esame e se questo si aggiungono tutti i casini che di questo periodo ci sono a Roma, bhè puoi capire benissimo quanto tempo ho passato al pc...in ogni caso non sono l'ultimo ad aver postato e cmq l'ho fatto prima che mik avesse scritto la successiva lezione ;) mik io consiglio di fare una lezione a settimana e chi c'è c'è, non puo' recupera successivamente

     

    tornando all'esercizio ho avuto problemi al secondo punto, potrebbe andare così?

    creare una condizione che incrementi a di 2 se '(' b è diverso da 5 e la grandezza dell'array c è 1 ')' oppure anche se la grandezza dell'array c è 0 (vuoto). Dopodichè aggiungere tanti elementi all'array c quanto è il valore di a, sempre tramite condizione.

     

     

     

    a = 1

    b = 5

    c = []

    if (b!=5 and c.size == 1) or c.size == 0

    a=a+2

    end

     

    case a

    when 1

    c[0].push(a)

    when 2

    c[0].push(a)

    when 3

    c[0].push(a)

    else

    c[0].push(a)

    end

     

     

     

    edit: ho aggiunto lo spoiler

  10. Un amico che lavora in proprio per la sua società che si occupa di installazione software, sistemi operativi, montaggio hardware ecc ecc ha avuto un problema: un cliente gli ha chiesto di creare dei piccoli programmini che possano aiutarlo nella gestione del suo centro benessere e il mio amico intelligentemente ha accettato pur non conoscendo nulla di programmazione xD Così disperato mi ha chiesto di aiutarlo e in quattro e quattr'otto gli ho realizzato questi programmini in visual basic: una rubrica-database in cui poter inserire i dati anagrafici dei propri clienti, consultarli, modificarli ecc ecc

    e un inventario di magazzino, sempre correlato di database access...

     

    Il mio problema è questo: a quanto dovremmo metterglieli questi programmini? Alcuni mi avevano consigliato sui 200 euro + iva, voi che ne pensate? Io purtroppo visual basic non l'ho mai usato per fini commerciali e non so proprio quale prezzo sia onesto :sisi:

  11. 3) Creare un array contenente: un numero, una stringa, e un altro array con un altro numero (sempre dentro il primo).

    Creare un secondo array che contenga: l'addizione dei due numeri inseriti nel primo array, la sottrazione, la moltiplicazione (la divisione no).

    Aggiungere al primo array il secondo.

    Inserire nel terzo valore del primo array (che è un altro array) la lunghezza del primo array.

     

    serie=[1,"+1 fa",[2]]

    operazioni=[serie[0]+serie[2][0],serie[0]-serie[2][0],serie[0]*serie[2][0]]

    serie=serie+operazioni

    serie[2].push(serie.size)

     

     

×
×
  • Create New...