Problema con gli SHOW_MESSAGE()

Hai una curiosità o un problema con Game Maker? Domanda e ti sarà risposto!
Rispondi
Avatar utente
condors94
GMI Guru
Messaggi: 2939
Iscritto il: 07/01/2010, 16:53
Contatta:

Problema con gli SHOW_MESSAGE()

Messaggio da condors94 »

Salve ragazzi,
scrivo perché mi sto perdendo qualcosa nell'uso degli show_message()

Io a seconda della room in cui mi trovo vorrei che i messaggi visualizzati avessero un background differente...
Mettiamo per ipotesi che nella room del menu volessi visualizzare (se viene cliccato qualcosa) uno show message con queste caratteristiche:
EVENTO ROOM START DI UN OGGETTO PRESENTE NEL MENU

Codice: Seleziona tutto

message_background(box_dialoghi2);
message_alpha(0.8);
message_size(386,0);
message_text_font(font_dialogo,10,c_black,1);
Poi magari cambiando room vorrei che i messaggi venissero visualizzate con caratteristiche diverse magari così:

Codice: Seleziona tutto

message_background(box_dialoghi);
message_alpha(0.8);
message_size(386,128);
message_text_font(font_dialogo,10,c_black,0);

Il problema è che appunto la cosa non funziona sempre.. a volte succede che tornando dalla seconda room alla prima i messaggi continuino ad essere visualizzati con le impostazioni riservate alla seconda room.. Cosa mi sto perdendo?

Avatar utente
civic71
GMI Advanced
Messaggi: 2210
Iscritto il: 23/10/2003, 17:31
Specialità: Risotto con zucchine
Uso: GM:Studio 1.4 Pro
Località: Jesolo (venezia)
Contatta:

Re: Problema con gli SHOW_MESSAGE()

Messaggio da civic71 »

Guardando il manuale di GMS ho notato che le funzioni per modificare i message sono obsolete e quindi non dovrebbero più funzionare... o funzionare male ....soprattutto se hai intenzione di esportare il gioco con un modulo in html5 o altro.
Ti conviene quindi crearti un tuo dialogo personale : un object che disegni un rettangolo con il testo ed i relativi bottoni di chiusura dialogo o con la scritta "OK".

Mentre nel caso tu utilizzi gm8 , sarebbe strano quel errore ... potrei capire se tu avessi messo il codice in un object persistente oppure aver messo il codice nel evento GAME START :fapensare:
Potresti provare con un object persistente sempre con il codice nell'evento room start :

Codice: Seleziona tutto


/* Questo codice non l'ho testato quindi potrebbero esserci degli errori */
var myBkg = box_dialoghi;
var myAlpha = 0.8;
var mySizeWidth= 368 ;
var mySizeHeight = 0;
var myFont = font_dialogo;
var myFontSize = 10;
var myFontColor= c_black;
var myFontBo= 1;

switch (room){
               case "roomNome1" : 
                                  myBkg = box_dialoghi;
                                   myAlpha = 0.8;
                                    mySizeWidth= 128 ;
                                     mySizeHeight = 64;
                                      myFont = font_dialogo;
                                       myFontSize = 10;
                                        myFontColor= c_black;
                                         myFontBo= 1;
                                  break;

               case "roomNome2" : 
                                  myBkg = box_dialoghi2;
                                   myAlpha = 0.5;
                                    mySizeWidth= 256 ;
                                     mySizeHeight = 128;
                                      myFont = font_dialogo2;
                                       myFontSize = 10;
                                        myFontColor= c_red;
                                         myFontBo= 1;
                                  break;

               case "roomNome3" : 
                                  myBkg = box_dialoghi3;
                                   myAlpha = 0.5;
                                    mySizeWidth= 512 ;
                                     mySizeHeight = 256;
                                      myFont = font_dialogo3;
                                       myFontSize = 10;
                                        myFontColor= c_black;
                                         myFontBo= 1;
                                  break;

}


message_background(myBkg);
message_alpha(myAlpha);
message_size(mySizeWidth,mySizeHeight);
message_text_font(myFont,myFontSize,myFontColor,myFontBo);

Avatar utente
condors94
GMI Guru
Messaggi: 2939
Iscritto il: 07/01/2010, 16:53
Contatta:

Re: Problema con gli SHOW_MESSAGE()

Messaggio da condors94 »

Grazie per la tua alternativa Civic, lo devo ancora testare ma in ogni caso se non risolvo mi limiterò ad usare un solo tipo di show_message e bona

Rispondi

Chi c’è in linea

Visitano il forum: Google [Bot] e 120 ospiti