Pagina 1 di 1

Creare un nemico che spari automaticamente un colpo?

Inviato: 25/03/2014, 16:03
da DJ_Grabber
Salve!
Oggi voglio chiedervi una cosa.
1) Ho trovato vari tutorial per far sparare il personaggio iniziale. La cosa brutta è che spara solo a destra,se sono girato a sinistra spara lo stesso a destra. Come posso fare per farlo sparare anche dall'altro lato?
2) Vorrei creare un nuovo nemico,piu' forte degli altri che spari nello stesso modo del Pg (non necessariamente da entrambi i lati.) Sapete aiutarmi?
Spoiler
Per chi odiasse i Dj,non odiatemi,non sono un dj,mi piacciono e basta,tutto qui. :asd:

Re: Creare un nemico che spari automaticamente un colpo?

Inviato: 25/03/2014, 16:39
da Slime
1) Ti ringrazio per averci linkato il fantomatico "tutorial" o comunque il codice che utilizzi.
Comunque potresti controllare da che lato è girato il giocatore e poi far sparare di conseguenza da quella parte.
Qua dipende molto da come hai strutturato i tuoi movimenti, però:
Usi la variabile image_xscale?
Usi 2 sprite per destra e sinistra?
Usi una variabile tua per sapere la direzione?
In generale controlla il valore della determinata variabile, se è sinistra spara a sinistra, se è destra spara a destra
es.

Codice: Seleziona tutto

if (sprite_index == GiocatoreDx_s)//Controlla se lo sprite è GiocatoreDx_s {
    //Spara a destra
}
if (sprite_index == GiocatoreSx_s)//Controlla se lo sprite è GiocatoreSx_s {
    //Spara a sinistra
}
La soluzione migliore poi sarebbe usare uno switch, che ha questa struttura

Codice: Seleziona tutto

switch(<espressione>) {
case <valore di espressione>: //azioni; break;
case <valore di espressione>: //azioni; break;
[...]
}
Poi se hai dubbi controlla sul manuale :manual:

2) Io piango :piagne:
Non ci hai detto cosa hai fatto e, sopratutto, cosa vuoi ottenere.
"Vorrei creare un nuovo nemico, più forte degli altri che spari nello stesso modo del Pg" vuol dire poco o niente.
Per favore specificate TUTTE le informazioni.

Re: Creare un nemico che spari automaticamente un colpo?

Inviato: 25/03/2014, 17:20
da DJ_Grabber
Scusami forse non sono stato molto chiaro :?
Allora,per fare in modo che il personaggio sparasse ho usato questo tutorial
http://www.youtube.com/watch?v=_uSvQPj_bU0
Ovviamente,visto che il mio Pg guarda a destra ho modificato i parametri x e y...
Comunquesia uso 2 sprite diversi,uso il Change Sprite per farlo girare. Spero di essere stato chiaro su questo :)


Per il fatto del nemico:
Non ho ancora fatto nulla,non so cosa fare. Ciò che voglio ottenere è che il nemico spari delle sfere come il personaggio iniziale,solo che deve farlo in automatico,vorrei sapere come posso fare :)

Mi scuso se non riesco a farvi capire bene,sono nuovo....

Re: Creare un nemico che spari automaticamente un colpo?

Inviato: 25/03/2014, 18:10
da Homunculus
Se usi due sprite diversi puoi basarti su quello per far andare il proiettile nella direzione giusta. Controlli con una condizione se il tuo sprite é quello a sinistra o quello a destra, e a seconda del caso imposti la direzione (e l'orientamento dello sprite) del proiettile. Va fatto con un po' di codice comunque, non ci sono icone apposite:

Nell'evento in cui viene sparato il proiettile:

Codice: Seleziona tutto

var proiettile = instance_create(x,y,OGGETTO_PROIETTILE);
proiettile.speed = VELOCITÀ_PROIETTILE;
if(sprite_index = SPRITE_SINISTRA) {proiettile.direction = 180;}
Tutte le parti maiuscole vanno inserite da te. Nel proiettile non ti serve nessun codice di movimento particolare, puoi inserire in step image_angle = direction; in modo che se lo sprite del proiettile ha una direzione questo sia girato correttamente. Nota che nel codice sopra impostiamo la direzione solo nel caso in cui deve muoversi verso sinistra, perché di default la direzione di un oggetto é 0 (destra) e quindi possiamo anche non specificarlo.

Per il nemico, ti consiglio innanzitutto di leggere nel manuale gli alarm. Il procedimento é lo stesso del giocatore, solo che il nemico spara a scadenze regolari invece che alla pressione di un tasto, e gli alarm ti permettono di gestire il tempo. Leggi e fai qualche prova, poi eventualmente ripassa e chiedi se qualcosa non é chiaro.

Re: Creare un nemico che spari automaticamente un colpo?

Inviato: 25/03/2014, 18:44
da DJ_Grabber
Grazie mille ora funziona. Per l'altro problema (quello del CPU che spara),ho trovato un video nelle viscere di YouTube spagnolo...Vedi uno che deve fare per creare un bel gioco :P

Re: Creare un nemico che spari automaticamente un colpo?

Inviato: 25/03/2014, 18:50
da pacmino
in realtà basterebbe leggere il manuale e utilizzare un po' l'inventiva

Re: Creare un nemico che spari automaticamente un colpo?

Inviato: 25/03/2014, 19:02
da Homunculus
pacmino ha scritto:in realtà basterebbe leggere il manuale e utilizzare un po' l'inventiva
In questo caso assolutamente si, perché per far sparare il nemico basta applicare esattamente quello che é stato fatto per il personaggio introducendo un alarm (che é ben spiegato nel manuale). Se invece si continua a cercare tutorial per ogni minima cosa non si fanno molti progressi...

Re: Creare un nemico che spari automaticamente un colpo?

Inviato: 25/03/2014, 19:47
da DJ_Grabber
Non preouccupatevi,tanto ciò che vedo nei tutorial cerco di rifarlo senza guardarli di nuovo :)
Ma,visto che non vorrei aprire un altro topic,nel manuale non l'ho trovato (o forse non ho cercato bene,in tal caso chiedo umilmente scusa :oops: ),come faccio a creare un nemico che per essere sconfitto necessita di due colpi dal pg?

Re: Creare un nemico che spari automaticamente un colpo?

Inviato: 25/03/2014, 20:01
da gameplay_extreme
suggerimento: evidentemente devi creare un nemico in grado di "tenere a mente" quanti colpi ha ricevuto (o viceversa, quanta "energia" gli è rimasta).
Spoiler
La soluzione è creare, all'interno del nemico, una variabile locale personalizzata "my_health"

alla creazione del nemico

Codice: Seleziona tutto

- poni my_health = 2
quando il nemico riceve il colpo

Codice: Seleziona tutto

- diminusci my_health di 1
- se my_health è uguale o minore a zero il nemico deve ditruggersi

Re: Creare un nemico che spari automaticamente un colpo?

Inviato: 26/03/2014, 19:00
da DJ_Grabber
gameplay_extreme ho provato ma non va...Il nemico è sempre li' per quante volte io lo colpisca :(

Re: Creare un nemico che spari automaticamente un colpo?

Inviato: 26/03/2014, 19:42
da Vallo92
Il suggerimento di gameplay è perfetto per una situazione del genere. Stai sbagliando sicuramente qualcosa tu.
Puoi postare il codice che stai utilizzando in modo da trovare e correggere l'errore?

Re: Creare un nemico che spari automaticamente un colpo?

Inviato: 26/03/2014, 20:11
da DJ_Grabber
Certo!
Allora premetto che non ho capito tanto bene come si faccia..
Allora:
Io vado nell'object del nemico e creo un evento step,qui inserisco set health (per quanto ho capito) e poi una variabile che ho chiamato heatlh (my_heatlh non ho capito,era il nome da mettere?Perchè quando ho provato mi ha dato errore GM).
Dopo creo un evento di collisione (quando il nemico viene colpito) e faccio set health -10.Poi metto test variable e metto il nome health e faccio in modo che,se è minore o uguale a 0 l'oggetto si distrugga. Questo ho fatto...In effetti non avevo capito bene,non perchè non l'ha spiegato chiaro,ma perchè io non avevo capito:scusatemi :oops:

Re: Creare un nemico che spari automaticamente un colpo?

Inviato: 26/03/2014, 20:26
da Vallo92
Ecco, il codice non ti funzionava perché era stato inserito completamente a casaccio... Prima di fare le cose a caso prova a documentarti un po' con l'aiuto del manuale.

Comunque il suggerimento di gameplay andrebbe applicato in questo modo:
Create:

Codice: Seleziona tutto

energia = 2;
Step:

Codice: Seleziona tutto

if (energia <= 0)
{instance_destroy();}
Collision con oggetto proiettile (o comunque con l'oggetto che fa danno):

Codice: Seleziona tutto

energia -= 1;
Prova a studiarci un po' su... Non è complicato. ;)

Re: Creare un nemico che spari automaticamente un colpo?

Inviato: 26/03/2014, 20:28
da DJ_Grabber
Lo so lo so :( non so fare proprio niente uff...
Però ora provo :D

Re: Creare un nemico che spari automaticamente un colpo?

Inviato: 28/03/2014, 16:20
da DJ_Grabber
Chiedo scusa,stavolta ho fatto tutto senza problemi come sarebbe dovuto andare,ma con un colpo distruggo il nemico,cosa ho sbagliato?
Perchè ho controllato e ricontrollato se fosse uguale a quello postato da te ma non funziona lo stesso :oops:

Re: Creare un nemico che spari automaticamente un colpo?

Inviato: 28/03/2014, 16:24
da Slime
Probabilmente l'evento collisione avviene più volte e quindi viene sottratto più volte uno a "energia".
Una soluzione può essere quella di eliminare il proiettile alla collisione, quindi sostituisci il codice di collisione con questo:

Codice: Seleziona tutto

energia -= 1;
with(other) {instance_destroy();}

Re: Creare un nemico che spari automaticamente un colpo?

Inviato: 28/03/2014, 16:25
da Cash
DJ_Grabber ha scritto:Chiedo scusa,stavolta ho fatto tutto senza problemi come sarebbe dovuto andare,ma con un colpo distruggo il nemico,cosa ho sbagliato?
Perchè ho controllato e ricontrollato se fosse uguale a quello postato da te ma non funziona lo stesso :oops:
Il colpo viene distrutto quando colpisce il nemico?Se no allora fallo distruggere

Re: Creare un nemico che spari automaticamente un colpo?

Inviato: 28/03/2014, 16:31
da DJ_Grabber
Grazie mille ad entrambi! Funziona!!!
Grazie mille ancora! :cappa: