Rispondi  Scrivi discussione 
Problema passaggio
Autore Messaggio
duecalzini
Novizio



Messaggi: 14
Gruppo: Registered
Registrato: Jan 2008
Stato: Offline
Reputazione: 0
Messaggio: #1
Problema passaggio

Salve a tutti gli amici del forum.Vi chiedo un consiglio per migliorare un giochino di calcio in fase di costruzione.
Quando il Player passa la palla, se in quella parte di campo c'è un compagno ,la palla lo raggiunge altrimenti si sposta in base alla direzione stabilita dal Player.Il riconoscimento del giocatore amico lo posso ottenere attraverso due "logiche":
A:il Player crea dei coni d'ombra(oggetti invisibili)che si muovono insieme al player(direction comuni),se cè collisione ...la palla si muoverà verso il nuovo giocatore che acquisisce l'id.
oppure
B:il player crea delle regioni ellittiche e....stesso discorso.
I risultati ottenuti sono appena sufficienti perchè nei passaggi diagonali avvolte capita che la regione o l'ombra si creino prima giù o sù solo dopo una frazione di secondo in diagonale(2 tasti direzione non li premerai mai proprio contemporaneamente...insieme al tasto passaggio).Quella frazione di sec. ,alcune volte, non fa corrispondere il passaggioHelp.
Cosa mi consigliate?Voi utilizzate altre "logiche"?

Infine come si scrive il secondo oggetto più vicino?
Grazie a tutti e scusatemi per il linguaggio poco tecnico......Biggrin

Questo messaggio è stato modificato: 10-30-2009 11:16 AM da duecalzini.

10-29-2009 02:35 PM
trova tutti i messaggi dell'autore Quota questo messaggio nella risposta
freeflip
Administrator
*******



Messaggi: 623
Gruppo: Administrators
Registrato: Nov 2005
Stato: Offline
Reputazione: 5
Messaggio: #2
RE: Problema passaggio

Per cominciare vedi se ti può piacere questo metodo:

http://gm6guide.altervista.org/php5/tuto...nzati&id=1

Altrimenti vediamo di migliorare il tuo.


Il mio spazio su MySpace
10-31-2009 12:10 AM
trova tutti i messaggi dell'autore Quota questo messaggio nella risposta
duecalzini
Novizio



Messaggi: 14
Gruppo: Registered
Registrato: Jan 2008
Stato: Offline
Reputazione: 0
Messaggio: #3
RE: Problema passaggio

Il sistema di diffusione collaborativa è un capolavoro ma in questo caso non mi aiuta dato che serve a rintracciare oggetti in una griglia seguendo la strada più breve ,persisterebbe infatti il problema del pallone che, "non ascolta" il player quando si sposta rapidamente in diagonale .Rendo più chiaro il problema allegando la parte di interesse:
...prova a muoverti con i vari giocatori facendo una decina di passaggi ravvicinati ,veloci(magari in diagonale)...e capirai !



File allegato(i)
.gmk File  Calcetto_ellipse_pass.gmk (Dimensione: 76.88 KB / Scaricato: 10)

Questo messaggio è stato modificato: 10-31-2009 07:59 PM da duecalzini.

10-31-2009 05:17 PM
trova tutti i messaggi dell'autore Quota questo messaggio nella risposta
freeflip
Administrator
*******



Messaggi: 623
Gruppo: Administrators
Registrato: Nov 2005
Stato: Offline
Reputazione: 5
Messaggio: #4
RE: Problema passaggio

Ho notato che l'id del giocatore prescelto per il passaggio è corretto, però sembra che la direzione del pallone a volte prenda i multipli di 45° come se non ci fosse un giocatore prescelto per il passaggio. Questo porta la palla a passare vicino al giocatore che prova a raggiungerla per un attimo, poi lascia stare visto che la palla lo semina.

L'unico problema per me stà nel codice che da la direzione al pallone.

Per ora non ho trovato una soluzione però possiamo vedere di arrivarci.

Altra cosa, quando con il player col pallone corre addosso ad un altro, spesso se la litigano, dovrebbe bastare una condizione in più per l'assimilazione della palla.


Il mio spazio su MySpace
11-02-2009 02:27 PM
trova tutti i messaggi dell'autore Quota questo messaggio nella risposta
duecalzini
Novizio



Messaggi: 14
Gruppo: Registered
Registrato: Jan 2008
Stato: Offline
Reputazione: 0
Messaggio: #5
RE: Problema passaggio

Credo che il motivo per il quale la direzione del pallone  prenda multipli di 45°sia dovuto al fatto che quando passi in diagonale l'ellisse si crea prima in basso e solo dopo diagonalmente quando ormai la palla è già partita verso la direzione sbagliata.E' come se invece di premere  TASTO GIU'+TASTO SX+S premessi TASTO GIU'+S e dopo TASTO SX.
Mi piacerebbe vedere un esempio che simula il passaggio di PES o FIFA:
il player passa in un area del campo,se li vicino c'è un compagno il pallone lo raggiunge altrimenti segue il normale percorso fermandosi dopo un pò.
Per quel che riguarda gli altri problemi sono già risolti ...per facilitare la lettura del giochino ho postato solo una piccola parte.
Ti ringrazio per la disponibilità.

Infine se instance_naerest mi trova l'oggetto più vicino come posso dare un comando per individuare il secondo più vicino?Se quest'ultima domanda devo farla in un altra sezione ditemelo subito che cancello e provveddo immediatamente.

Questo messaggio è stato modificato: 11-03-2009 12:35 AM da duecalzini.

11-02-2009 04:52 PM
trova tutti i messaggi dell'autore Quota questo messaggio nella risposta
freeflip
Administrator
*******



Messaggi: 623
Gruppo: Administrators
Registrato: Nov 2005
Stato: Offline
Reputazione: 5
Messaggio: #6
RE: Problema passaggio

Non ho fatto prove ma secondo me ti ho risolto il problema, ti faccio un esempio solo con questo pezzo di codice ma tanto il ragionamento è sempre quello:

Codice:
  if ( keyboard_check(vk_up))
   {xv=view_xview[0]+220;
    yv=view_yview[0]-300;
    endx = pallone.x+100;
    endy = pallone.y;}


questo codice è attivo ogni qual volta si prema la freccetta in alto, che sia "su"-"su/dx"-"su/sx".
Premesso ciò bisogna limitare questo codice in modo che venga letto SOLO con la pressione del tasto "su" mentre le altre frecciette NON devono essere premute.

Codice:
  if keyboard_check(vk_up) && !keyboard_check(vk_left) && !keyboard_check(vk_right) && !keyboard_check(vk_down)
   {xv=view_xview[0]+220;
    yv=view_yview[0]-300;
    endx = pallone.x+100;
    endy = pallone.y;}


Per la domanda della seconda istanza più vicina, così al volo non mi viene una soluzione, non mi sono mai imbattuto nel problema...ci penserò, nel mentre se ti vengono spunti scrivili pure.


Il mio spazio su MySpace

Questo messaggio è stato modificato: 11-03-2009 02:46 PM da freeflip.

11-03-2009 02:42 PM
trova tutti i messaggi dell'autore Quota questo messaggio nella risposta
duecalzini
Novizio



Messaggi: 14
Gruppo: Registered
Registrato: Jan 2008
Stato: Offline
Reputazione: 0
Messaggio: #7
RE: Problema passaggio

Nienta da fare...miglioramento modesto!
Però ho notato che release S-key in pallone è inutile e ,sostituendo press-S key con release-S key il player non sbaglia un colpo...tuttavia si ha un effetto di risposta rallentata...ma per ora va bene cosi'.
Ultimo quesito :come mai se due compagni sono dentro l'ellisse il player passa sempre verso il più lontano ? come posso ottenere il contrario?Grazie ancora Freeflip.

Questo messaggio è stato modificato: 11-03-2009 04:05 PM da duecalzini.

11-03-2009 03:55 PM
trova tutti i messaggi dell'autore Quota questo messaggio nella risposta
freeflip
Administrator
*******



Messaggi: 623
Gruppo: Administrators
Registrato: Nov 2005
Stato: Offline
Reputazione: 5
Messaggio: #8
RE: Problema passaggio

Per la seconda istanza più vicina ho trovato questo:

http://studioeres.com/games/category/tags/game-maker

leggi il punto 3.

Ho fatto delle prove con 2 giocatori dentro l'elisse, ma a me la da quasi sempre al più vicino.


Il mio spazio su MySpace
11-05-2009 07:12 PM
trova tutti i messaggi dell'autore Quota questo messaggio nella risposta
freeflip
Administrator
*******



Messaggi: 623
Gruppo: Administrators
Registrato: Nov 2005
Stato: Offline
Reputazione: 5
Messaggio: #9
RE: Problema passaggio

Se non hai ancora risolto la faccenda della seconda istanza più vicina, guarda un mio messaggio in questo topic:

http://gm6guide.altervista.org/forum/adm...2021d765cc


Il mio spazio su MySpace
11-24-2009 12:57 AM
trova tutti i messaggi dell'autore Quota questo messaggio nella risposta
Rispondi  Scrivi discussione 

Guarda in versione stampabile
Invia la discussione a un amico
Sottoscrivi la discussione | Aggiungi discussione alle favorite

Salta al Forum: