Creare Videogiochi - Game Developer

Versione completa: far saltare il personaggio
Al momento stai visualizzando i contenuti in una versione ridotta. Visualizza la versione completa e formattata.
salve a tutti ho da poco abbandonato RPG maker e ho scasricato da un paio di giorni game maker.....ho già capito come muovermi e creare delle mappe.
vorrei creare un gioco di super mario ma non riesco a far saltare il personaggio.....ho provato a usare i comandi di salto ma non riesco a capire come farlo saltare.....aiutatemi per favore
Ciao, ci sono diversi modi per far saltare un personaggio i diversi modi.Il modo più semplice è creare la gravità(nella sezione "move" c'è un quadrato che si chiama "set gravity"),la gravità dovrà essere messa nella parte dello "step" del personaggio.Per far sì che il personaggio cada verso il basso basta che tu metta nella sezione "direction" il valore 270 menrte per il valore gravity puoi scegliere quello che,secondo tè, è più conforme.La seconda cosa da fare è di far si che quando il personaggio cade contro il pavimento si fermi(se non sai come fare chiedi pure).
Terza cosa imposta al tuo personaggio che quando premi un pulsante (che scegli tu) salta.
Ecco come si fà:
Sotto event fai "add event" quindi "keyboard" quindi(se vuoi che sia una lettera ) "Letters" e qui scegli la lettera
Sotto action fai "move free" quindi sotto direction imposta il valore -270 e sotto speed la velocità(più è alto il valore maggiore sarà il salto)

Ecco fatto spero di esserti stato d'aiuto se non hai capitoalcuni passaggi chiedi.
ok...scusa per la mia ignoranza ma potresti spiegarti meglio ? cioè io ho creato la gravità ma non capisco cosa voui dire quando dici di metterla nello step del personaggio....io allora l'ho messa sul pulsante ma una volta che salto non si ferma più...cioè salta all'infinito
Ti spiego meglio.(se per caso hai skipe sarebbe meglio perchè potrei spiegarti il tutto attraverso un tutorial passo passo)
Nel personaggio ci deve essere questo:

1)Uno step event (ovvero un evento "step"[add event >>Step(le due impronte blu)>>Step]) e con "actions" fai il quadretto "Set gravity" (direction = 270 ; gravity = x(quello che vuoi))

2)Un Key event (ovvero un evento "Keyboard"[add event >> keyboard(la tastiera)>>Letters(le lettere)>>(qui scegli la lettera ch vuoi]) e con action metti il quadretto chiamato "move free"(è sotto la sezione "Move")(direction = -270(l'opposto della gravity) ;speed = x(quello che vuoi,più è alto il valore più salterà in alto)

3) se hai l'oggetto del pavimento metti un collision event(ovvero un evento collisione[add event >> collision >>seleziona l'oggetto pavimento]) poi sotto action metti questo script(senza le virgolette):" x = xprevious; y = yprevious"
(consiglio di mettere a capo la righa "y = yprevious")

Ecco fatto se per caso hai altre domande chiedi pure Smile
siiiiiiiiiiiiiiii funziona sei un grande....grazie mille
Sono felice di esserti stato d'aiuto
Ho fatto come hai detto. Ho uno step event-> step->set gravity: 270; 5
Poi ho un keyboard event Keyboard->letters->w->-270;40
Poi ho un collision event collision->pavimento->execute code->
x = xprevious;
y = yprevious
Ho provato anche a creare uno script e poi mettere execute script1 ma poi mi chiede argument 1,2 ecc. e non so ke devo mettere. Quando faccio partire il gioco ilpgrimane un'attimo fermo, poi schizza via sotto il pavimento!
Risolto ma se premo il tasto per far attaccare il personaggio 4 volte poi mi sparisce perkè?

Stessa cosa se premo il tasto per parare il colpo e quando sono a terra il personaggio non si muove più aiuto!!!!!!!!! Devo consegnare il gioco entro domani!
Prova a fare così(a me funziona):
all personaggio(quello che deve saltare)togli tutti gli eventi(*quelli citati da me prima) e metti uno "step event" qui metti questo codice:
"
if(place_meeting(self.x,self.y,object0))
{
gravity = 0
self.y = object0.y-32
}
else
{
gravity = 1.1 and gravity_direction = 270
}
"
dove object0 sta per il pavimento.
Poi aggiungi un Key event scegli la lettera e qui metti "move free" con direction -270.
ora non dovrebbe cadere sotto il pavimento
Va mexxo tutto nella stessa posizione di comelo hai scritto? le virgolette all'inizio e alla fine van messe? devo sostituire object0 con il nome dell'oggetto pavimento?
1)Devi avere (sotto gli eventi):Uno step event e un key event(quello della premuta del tasto)
2)le virgolette NON vanno messe(le ho messe io per evidenziare il codice)
3)Sì devi sostituire object0 con il nome dell' oggetto pavimento
mi dice questo:
FATAL ERROR in
action number 1
of Step Event
for object Luke DX:

COMPILATION ERROR in code action
Error in code at line 1:
if(place_meeting(self.x,self.y,Pavimento Hangar))
^
at position 42: Symbol , or ) expected.
Ho trovato la soluzione :
Game Maker non acetta il nome "Pavimento Hangar" con lo spazio tra Pavimento e Hangar.
Per togliere questo problema basta che cambi il nome dell' oggetto (Pavimento Hangar) e di conseguenza anche nello script
(ad esempio :invece di avere il nome "Pavimento Hangar" gli dai il nome "PavimentoHangar" o meglio ancora gli dai il nome "Pavimento_Hangar"(sì con il trattino in basso))
provo!
Va e salta senza problemi ma quando sono a tera e premo il tasto per attaccare o quello per parare il colpo misparisce!
che script hai usato per parare o attacare?
Ora come ora non saprei il perchè ti scompare.
Semplicemente quando attacca diventa un altra istanza ( change istance) e quell'istanza ha event diversi ma cmnq ha il collision event con il pavimento
stessa cosa per parare. Potrei provare a mettere il nuovo script che mi hai dato anche per l'istanza dell'attacare o parare? Cambia qualcosa tra execute script o execute code?
Quando cambia istanza ( change istance) vuol dire che cambia oggetto(object) molto probabilmente è per quello che scompare
Quindi cosa potrei fare?
Potresti provare(spero che ti funzioni)
Non mi da più i problemi dello scomparire però non salta più

cioè sprofonda in parte nel pavimento, quando premo per saltare sale su ma poi usciro dal pavimento non salta e quando premo per fa un piccolo salto
Assicurati di aver messo (anche nell'istanza) il key event
non era quello il problema, ho tolto lo script che mi avevi dato e ho provato con semplici icone ra non da problemi, grazie di tuto Smile