Donazione per la maglietta: Click here to lend your support to: Competizione GameMaker Italia and make a donation at pledgie.com !

Saltare e gravità

Hai una curiosità o un problema con Game Maker? Domanda e ti sarà risposto!
Johnny 97
Newbie
Messaggi: 18
Iscritto il: 30/08/2010, 7:49
Specialità: Creo Storie
Contatta:

Saltare e gravità

Messaggioda Johnny 97 » 30/08/2010, 8:25

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...
Webu, prima o poi ti ucciderò!!!

Progetti:
Scavi Archeologici (Tool RPG Maker VX) [spoiler]http://www.rpg2s.net/forum/index.php?showtopic=10993[/spoiler]
Crash Bandicoot: A New Adventure (Tool Game Maker 8)
Yeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee!!!
O voi che avete firme serie non sapete quant'è bello avere firme inutili

Avatar utente
cp94
GMI Guru
Messaggi: 2717
Iscritto il: 04/07/2009, 19:18
Specialità: Quasi tutto
Località: Brescia
Contatta:

Re: Saltare e gravità

Messaggioda cp94 » 30/08/2010, 9:12

Codice: Seleziona tutto

if !place_free(x,y+1)
{
vspeed=-9;
gravity=0.5
}

questo codice lo metti nell' evento keyboard press del tasto che vuoi usare per saltare :)
e nell' evento di collisione col pavimento devi aggiungere

Codice: Seleziona tutto

vspeed=0
gravity=0

Avatar utente
Feschio
Membro d'elite
Messaggi: 1476
Iscritto il: 02/07/2010, 8:19
Contatta:

Re: Saltare e gravità

Messaggioda Feschio » 30/08/2010, 10:01

oppure, in icone
Immagine e con questo impostti la gravita.
poi nell'evento di collisione con il pavimento metti Immagine
e clicki sulla freccina in giù e imposti come velocità 0
per saltare metti Immagine l'oggetto è il muro ed imposti per esempio se il tuo pg ha 32 di altezza imposti x+32 relativo
poi aggiungi di nuovo Immagine e clicki la freccina su con la speed che vuoi
Valta Korpiklaani! Finlandia Rulez

Nix ha scritto:Lego, tu piaccono alle rosse pescie dimezza cotte?

Avatar utente
cp94
GMI Guru
Messaggi: 2717
Iscritto il: 04/07/2009, 19:18
Specialità: Quasi tutto
Località: Brescia
Contatta:

Re: Saltare e gravità

Messaggioda cp94 » 30/08/2010, 10:07

Feschioide ha scritto:oppure, in icone
Immagine e con questo impostti la gravita.
poi nell'evento di collisione con il pavimento metti Immagine
e clicki sulla freccina in giù e imposti come velocità 0
per saltare metti Immagine l'oggetto è il muro ed imposti per esempio se il tuo pg ha 32 di altezza imposti x+32 relativo
poi aggiungi di nuovo Immagine e clicki la freccina su con la speed che vuoi

:NO: non puoi fare un salto con Immagine
devi usare
Immagine var: vspeed; value: -9;
e per stoppare la stessa icona con var: vspeed; value: 0.
per controllare se esiste il pavimento, invece:
Immagine, va bene anche Immagine 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! ;)

Johnny 97
Newbie
Messaggi: 18
Iscritto il: 30/08/2010, 7:49
Specialità: Creo Storie
Contatta:

Re: Saltare e gravità

Messaggioda Johnny 97 » 30/08/2010, 16:31

ok, grazie cp94, credo che userò il tuo "script" :fapensare:
Webu, prima o poi ti ucciderò!!!

Progetti:
Scavi Archeologici (Tool RPG Maker VX) [spoiler]http://www.rpg2s.net/forum/index.php?showtopic=10993[/spoiler]
Crash Bandicoot: A New Adventure (Tool Game Maker 8)
Yeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee!!!
O voi che avete firme serie non sapete quant'è bello avere firme inutili

Avatar utente
Feschio
Membro d'elite
Messaggi: 1476
Iscritto il: 02/07/2010, 8:19
Contatta:

Re: Saltare e gravità

Messaggioda Feschio » 30/08/2010, 16:43

cp94 ha scritto:
Feschioide ha scritto:oppure, in icone
Immagine e con questo impostti la gravita.
poi nell'evento di collisione con il pavimento metti Immagine
e clicki sulla freccina in giù e imposti come velocità 0
per saltare metti Immagine l'oggetto è il muro ed imposti per esempio se il tuo pg ha 32 di altezza imposti x+32 relativo
poi aggiungi di nuovo Immagine e clicki la freccina su con la speed che vuoi

:NO: non puoi fare un salto con Immagine
devi usare
Immagine var: vspeed; value: -9;
e per stoppare la stessa icona con var: vspeed; value: 0.
per controllare se esiste il pavimento, invece:
Immagine, va bene anche Immagine 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
Valta Korpiklaani! Finlandia Rulez

Nix ha scritto:Lego, tu piaccono alle rosse pescie dimezza cotte?

Avatar utente
Stavros
GMI Advanced
Messaggi: 1914
Iscritto il: 24/02/2010, 20:03
Specialità: PixelArt - Grafica
Località: QDMA12
Contatta:

Re: Saltare e gravità

Messaggioda Stavros » 30/08/2010, 17:02

Sti utenti nuovi, LEGGETE I TUTORIAL E SEGUITELI... Sti problemi non ci sarebbero

salto (keyboard UP)
Immagine 0, 1, relative
Immagine -6

gravità (step)
Immagine 0, 1, relative
Immagine 0.4
Immagine
Immagine 0

collisione con blocco (collision)
Immagine 0
Immagine 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...

Avatar utente
Fillibis
Newbie
Messaggi: 15
Iscritto il: 04/12/2012, 13:45
Contatta:

Re: Saltare e gravità

Messaggioda Fillibis » 26/01/2013, 19:24

cp94 ha scritto:

Codice: Seleziona tutto

if !place_free(x,y+1)
{
vspeed=-9;
gravity=0.5
}

questo codice lo metti nell' evento keyboard press del tasto che vuoi usare per saltare :)
e nell' evento di collisione col pavimento devi aggiungere

Codice: Seleziona tutto

vspeed=0
gravity=0

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 ;)

Avatar utente
gameplay_extreme
GMI VIP
Messaggi: 3685
Iscritto il: 13/11/2010, 16:23
Contatta:

Re: Saltare e gravità

Messaggioda gameplay_extreme » 27/01/2013, 9:39

per lo spostamento orizzontale (sia mentre stai saltando oppure no) io di solito faccio una cosa del genre:
in create:

Codice: Seleziona tutto

x_sp = 4

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:

Codice: Seleziona tutto

x = xprevious
y = yprevious

quindi se si è partiti con degli oggetti solidi e adesso si vuole togliere la solidità potrebbe essere necessario aggiungere quelle 2 istruzioni...
Immagine
clicca sul logo qui sopra per info e download riguardo ai miei software o per sapere come si crea un videogioco!

iscriviti qui gratuitamente a GMI !

le grandi frasi della storia
- Una curiosità: come mai quell' ordine ?
- Perché formava una scaletta molto carina da vedere.


"ah ah...grazie alla annotazione scientifica ti ho fregato!"
(come disse la calcolatrice al display)

Avatar utente
Fillibis
Newbie
Messaggi: 15
Iscritto il: 04/12/2012, 13:45
Contatta:

Re: Saltare e gravità

Messaggioda Fillibis » 27/01/2013, 13:10

Grazie mille :D

Avatar utente
Fillibis
Newbie
Messaggi: 15
Iscritto il: 04/12/2012, 13:45
Contatta:

Re: Saltare e gravità

Messaggioda Fillibis » 27/01/2013, 13:17

gameplay_extreme ha scritto:per lo spostamento orizzontale (sia mentre stai saltando oppure no) io di solito faccio una cosa del genre:
in create:

Codice: Seleziona tutto

x_sp = 4

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:

Codice: Seleziona tutto

x = xprevious
y = yprevious

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.

Avatar utente
gameplay_extreme
GMI VIP
Messaggi: 3685
Iscritto il: 13/11/2010, 16:23
Contatta:

Re: Saltare e gravità

Messaggioda gameplay_extreme » 27/01/2013, 13:21

cosi su 2 piedi non mi dice niente...
posta uno screen e un show information degli oggetti coinvolti...
Immagine
clicca sul logo qui sopra per info e download riguardo ai miei software o per sapere come si crea un videogioco!

iscriviti qui gratuitamente a GMI !

le grandi frasi della storia

- Una curiosità: come mai quell' ordine ?
- Perché formava una scaletta molto carina da vedere.


"ah ah...grazie alla annotazione scientifica ti ho fregato!"
(come disse la calcolatrice al display)


Avatar utente
Fillibis
Newbie
Messaggi: 15
Iscritto il: 04/12/2012, 13:45
Contatta:

Re: Saltare e gravità

Messaggioda Fillibis » 27/01/2013, 13:31

[spoiler]Immagine[/spoiler]

codice del tasto up:

Codice: Seleziona tutto

if !place_free(x,y+1)
{
vspeed=-9;
gravity=0.5
}

codice collision with:

Codice: Seleziona tutto

vspeed=0
gravity=0

step e create ho messo uguale ai tuoi

Avatar utente
gameplay_extreme
GMI VIP
Messaggi: 3685
Iscritto il: 13/11/2010, 16:23
Contatta:

Re: Saltare e gravità

Messaggioda gameplay_extreme » 27/01/2013, 13:43

dunque suppongo, dal difetto che mi dici, che le pareti siano "solid"

aggiungi in prima riga, in collision con parete

Codice: Seleziona tutto

move_contact_solid(direction,-1)

(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

Codice: Seleziona tutto

if (vspeed > 0)
 {
   move_contact_solid(270,-1)
 }
Immagine
clicca sul logo qui sopra per info e download riguardo ai miei software o per sapere come si crea un videogioco!

iscriviti qui gratuitamente a GMI !

le grandi frasi della storia

- Una curiosità: come mai quell' ordine ?
- Perché formava una scaletta molto carina da vedere.


"ah ah...grazie alla annotazione scientifica ti ho fregato!"
(come disse la calcolatrice al display)


Avatar utente
Fillibis
Newbie
Messaggi: 15
Iscritto il: 04/12/2012, 13:45
Contatta:

Re: Saltare e gravità

Messaggioda Fillibis » 27/01/2013, 13:49

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:)

Avatar utente
Xeryan
GMI Honor
Messaggi: 5363
Iscritto il: 06/05/2009, 9:52
Località: United Earth, 2468
Contatta:

Re: Saltare e gravità

Messaggioda Xeryan » 27/01/2013, 13:57

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)

Avatar utente
Fillibis
Newbie
Messaggi: 15
Iscritto il: 04/12/2012, 13:45
Contatta:

Re: Saltare e gravità

Messaggioda Fillibis » 27/01/2013, 14:02

ho riscontrato un altro problema,ecco cosa succede:
[spoiler]Immagine[/spoiler]

riesco a saltare sull'oggetto ma se dopo mi muovo orizzontalmente l'oggetto vola

Avatar utente
Fillibis
Newbie
Messaggi: 15
Iscritto il: 04/12/2012, 13:45
Contatta:

Re: Saltare e gravità

Messaggioda Fillibis » 27/01/2013, 14:03

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 :)

Avatar utente
gameplay_extreme
GMI VIP
Messaggi: 3685
Iscritto il: 13/11/2010, 16:23
Contatta:

Re: Saltare e gravità

Messaggioda gameplay_extreme » 27/01/2013, 14:11

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
 }
Immagine
clicca sul logo qui sopra per info e download riguardo ai miei software o per sapere come si crea un videogioco!

iscriviti qui gratuitamente a GMI !

le grandi frasi della storia

- Una curiosità: come mai quell' ordine ?
- Perché formava una scaletta molto carina da vedere.


"ah ah...grazie alla annotazione scientifica ti ho fregato!"
(come disse la calcolatrice al display)


Avatar utente
Fillibis
Newbie
Messaggi: 15
Iscritto il: 04/12/2012, 13:45
Contatta:

Re: Saltare e gravità

Messaggioda Fillibis » 27/01/2013, 14:53

grazie ora funziona :)


Torna a “Domande e Risposte”



Chi c’è in linea

Visitano il forum: Caarbo e 2 ospiti