Pagina 1 di 1
Saltare e gravità
Inviato: 30/08/2010, 8:25
da Johnny 97
Vorrei far saltare il mio personaggio, ma non so come fare...
e dovrei anche impostare la gravità in modo che quando salta cade e quando tocca un oggetto solido si ferma la caduta e può continuare a camminare...
Re: Saltare e gravità
Inviato: 30/08/2010, 9:12
da cp94
questo codice lo metti nell' evento keyboard press del tasto che vuoi usare per saltare
e nell' evento di collisione col pavimento devi aggiungere
Re: Saltare e gravità
Inviato: 30/08/2010, 10:01
da Feschio
oppure, in icone
e con questo impostti la gravita.
poi nell'evento di collisione con il pavimento metti
e clicki sulla freccina in giù e imposti come velocità 0
per saltare metti
l'oggetto è il muro ed imposti per esempio se il tuo pg ha 32 di altezza imposti x+32 relativo
poi aggiungi di nuovo
e clicki la freccina su con la speed che vuoi
Re: Saltare e gravità
Inviato: 30/08/2010, 10:07
da cp94
Feschioide ha scritto:oppure, in icone
e con questo impostti la gravita.
poi nell'evento di collisione con il pavimento metti
e clicki sulla freccina in giù e imposti come velocità 0
per saltare metti
l'oggetto è il muro ed imposti per esempio se il tuo pg ha 32 di altezza imposti x+32 relativo
poi aggiungi di nuovo
e clicki la freccina su con la speed che vuoi
non puoi fare un salto con
devi usare
var: vspeed; value: -9;
e per stoppare la stessa icona con var: vspeed; value: 0.
per controllare se esiste il pavimento, invece:
, va bene anche
ma la prima funziona anche se sei su qualcosa d'altro che il pavimento, tipo una piattaforma.
ps: e poi è y+32, non x+32, e se scrivi x+ o y+ non serve relative perchè scrivendo y+ è gia un relative!
Re: Saltare e gravità
Inviato: 30/08/2010, 16:31
da Johnny 97
ok, grazie cp94, credo che userò il tuo "script"
Re: Saltare e gravità
Inviato: 30/08/2010, 16:43
da Feschio
cp94 ha scritto:Feschioide ha scritto:oppure, in icone
e con questo impostti la gravita.
poi nell'evento di collisione con il pavimento metti
e clicki sulla freccina in giù e imposti come velocità 0
per saltare metti
l'oggetto è il muro ed imposti per esempio se il tuo pg ha 32 di altezza imposti x+32 relativo
poi aggiungi di nuovo
e clicki la freccina su con la speed che vuoi
non puoi fare un salto con
devi usare
var: vspeed; value: -9;
e per stoppare la stessa icona con var: vspeed; value: 0.
per controllare se esiste il pavimento, invece:
, va bene anche
ma la prima funziona anche se sei su qualcosa d'altro che il pavimento, tipo una piattaforma.
ps: e poi è y+32, non x+32, e se scrivi x+ o y+ non serve relative perchè scrivendo y+ è gia un relative!
io il salto l'ho sempre fatto con l'icona, per l'altro problema così sarebbe possibile saltare anche su cose sulle quali forse non si dovrebbe saltare, per l'ultimo problema, colpa mia xD
Re: Saltare e gravità
Inviato: 30/08/2010, 17:02
da Stavros
Sti utenti nuovi, LEGGETE I TUTORIAL E SEGUITELI... Sti problemi non ci sarebbero
salto (keyboard UP)
0, 1, relative
-6
gravità (step)
0, 1, relative
0.4
0
collisione con blocco (collision)
0
direction, -1, only solid
Ti ho descritto con le icone come dovrebbe essere il tuo Personaggio: potresti aggiungere il controllo sulla velocità di caduta, onde evitare fastidiosi bug, il controllo sulle sprite per il salto...
Re: Saltare e gravità
Inviato: 26/01/2013, 19:24
da Fillibis
cp94 ha scritto:
questo codice lo metti nell' evento keyboard press del tasto che vuoi usare per saltare
e nell' evento di collisione col pavimento devi aggiungere
Scusate se riprendo questo post vecchio ma volevo ringraziarti per il codice dato che mi è stato davvero utile
poi volevo chiederti: come faccio a potermi muovere mentre salto usando i codici?
grazie in anticipo
Re: Saltare e gravità
Inviato: 27/01/2013, 9:39
da gameplay_extreme
per lo spostamento orizzontale (sia mentre stai saltando oppure no) io di solito faccio una cosa del genre:
in create:
in step:
Codice: Seleziona tutto
if (keyboard_check(vk_right) && place_free(x+x_sp,y))
{
x += x_sp
}
if (keyboard_check(vk_left) && place_free(x-x_sp,y))
{
x -= x_sp
}
questo funziona se l'oggetto parete è solid
se non si vuole usare solid bisogna fare:
Codice: Seleziona tutto
if (keyboard_check(vk_right) && !place_meeting(x+x_sp,y,parete))
{
x += x_sp
}
if (keyboard_check(vk_left) && !place_meeting(x-x_sp,y,parete))
{
x -= x_sp
}
PS: si ricorda che quando c'è una collisione con un oggetto solid viene eseguito automaticamente:
quindi se si è partiti con degli oggetti solidi e adesso si vuole togliere la solidità potrebbe essere necessario aggiungere quelle 2 istruzioni...
Re: Saltare e gravità
Inviato: 27/01/2013, 13:10
da Fillibis
Grazie mille
Re: Saltare e gravità
Inviato: 27/01/2013, 13:17
da Fillibis
gameplay_extreme ha scritto:per lo spostamento orizzontale (sia mentre stai saltando oppure no) io di solito faccio una cosa del genre:
in create:
in step:
Codice: Seleziona tutto
if (keyboard_check(vk_right) && place_free(x+x_sp,y))
{
x += x_sp
}
if (keyboard_check(vk_left) && place_free(x-x_sp,y))
{
x -= x_sp
}
questo funziona se l'oggetto parete è solid
se non si vuole usare solid bisogna fare:
Codice: Seleziona tutto
if (keyboard_check(vk_right) && !place_meeting(x+x_sp,y,parete))
{
x += x_sp
}
if (keyboard_check(vk_left) && !place_meeting(x-x_sp,y,parete))
{
x -= x_sp
}
PS: si ricorda che quando c'è una collisione con un oggetto solid viene eseguito automaticamente:
quindi se si è partiti con degli oggetti solidi e adesso si vuole togliere la solidità potrebbe essere necessario aggiungere quelle 2 istruzioni...
Ho un problema,quando salto e atterro su un oggetto che si trova più in alto dell'oggetto da cui ho iniziato il salto,l'oggetto che dovrebbe saltare mi si blocca in aria
come posso fare? se mi sono spiegato male posso inviarti anche uno screen.
Re: Saltare e gravità
Inviato: 27/01/2013, 13:21
da gameplay_extreme
cosi su 2 piedi non mi dice niente...
posta uno screen e un show information degli oggetti coinvolti...
Re: Saltare e gravità
Inviato: 27/01/2013, 13:31
da Fillibis
Spoiler
codice del tasto up:
codice collision with:
step e create ho messo uguale ai tuoi
Re: Saltare e gravità
Inviato: 27/01/2013, 13:43
da gameplay_extreme
dunque suppongo, dal difetto che mi dici, che le pareti siano "solid"
aggiungi in prima riga, in collision con parete
(se per lo spostamento orizzonatale utilizzi il mio metodo, quello con x += x_sp ecc.)
(se invece per il movimento orizzontale utilizzi hspeed)
aggiungi in prima riga, in collision con parete
Re: Saltare e gravità
Inviato: 27/01/2013, 13:49
da Fillibis
ok grazie ora funziona,e dato che mi sono stancato di dover chiedere ogni volta chiarimenti sui codici, sai se esiste una guida che spiega il linguaggio dei codici e altre cose?
perché per ora conosco solo alcune basi e mi piacerebbe imparare:)
Re: Saltare e gravità
Inviato: 27/01/2013, 14:02
da Fillibis
ho riscontrato un altro problema,ecco cosa succede:
Spoiler
riesco a saltare sull'oggetto ma se dopo mi muovo orizzontalmente l'oggetto vola
Re: Saltare e gravità
Inviato: 27/01/2013, 14:03
da Fillibis
Xeryan ha scritto:Fillibis ha scritto:ok grazie ora funziona,e dato che mi sono stancato di dover chiedere ogni volta chiarimenti sui codici, sai se esiste una guida che spiega il linguaggio dei codici e altre cose?
perché per ora conosco solo alcune basi e mi piacerebbe imparare:)
Santo Manuale (F1 in gamemaker)
grazie
Re: Saltare e gravità
Inviato: 27/01/2013, 14:11
da gameplay_extreme
io risolverei così:
devi controllare continuamente sotto di te: se c'è il pavimento la gravità deve essere 0 se non c'è la gravità deve attivarsi (di solito io metto 0.5)
lascia perdere la gestione della gravita che avevi messo prima (= cancella o commenta le istruzioni che compongono la gestione della gravita che avevi precedentemente messo)
poi step del pg inserisci:
Codice: Seleziona tutto
if place_free(x,y+1)
{
gravity = 0.5
}
else
{
gravity = 0
}
Re: Saltare e gravità
Inviato: 27/01/2013, 14:53
da Fillibis
grazie ora funziona