|
|
|
|
Strumenti |
25-11-2003, 15:36 | #81 |
Senior Member
Iscritto dal: May 2003
Messaggi: 1113
|
ho quasi finito....OVVIAMENTE UOMO contro UOMO.....ma non mi effettua bene i controlli sulla vittoria in diagonale.....vedi un po tu dove sto sbagliando....
ti posto il codice Private Function controllo() As Integer ' Verifica se la partita è giunta a termine e chi ne è il vincitore ' Saranno gli indici di righe e colonne della matrice Dim i, j As Integer Dim parita As Integer Dim riga1 As Integer Dim colonna1 As Integer Dim diagonale1 As Integer Dim riga2 As Integer Dim colonna2 As Integer Dim diagonale2 As Integer Dim win As Boolean 'Imposta nessun vincitore win = False 'Controlla se sono state esaurite le mosse For i = 1 To 3 For j = 1 To 3 If (matrice(i, j) = 1) Or (matrice(i, j) = 2) Then parita = parita + 1 End If Next Next 'Controlla se qualcuno ha vinto diagonale1 = 0 diagonale2 = 0 For j = 1 To 3 riga1 = 0 riga2 = 0 colonna1 = 0 colonna2 = 0 If (matrice(j, j) = 1) And Not win Then diagonale1 = diagonale1 + 1 If diagonale1 = 3 Then win = True End If End If If (matrice(4 - j, 4 - j) = 1) And Not win Then diagonale2 = diagonale2 + 1 If diagonale2 = 3 Then win = True End If End If For i = 1 To 3 If (matrice(j, i) = 1) And Not win Then riga1 = riga1 + 1 If riga1 = 3 Then win = True End If End If If (matrice(j, i) = 2) And Not win Then riga2 = riga2 + 1 If riga2 = 3 Then win = True End If End If If (matrice(i, j) = 1) And Not win Then colonna1 = colonna1 + 1 If colonna1 = 3 Then win = True End If End If If (matrice(i, j) = 2) And Not win Then colonna2 = colonna2 + 1 If colonna2 = 3 Then win = True End If End If Next Next 'Se sono piene tutte le caselle e non si è trovato un vincitore 'la partita viene dichiarata pari If (parita = 9) And Not win Then MsgBox "PARTITA PARI!!!! Nessun Vincitore", , "PAREGGIO" controllo = 1 End If 'Se c'è un vincitore, a seconda di chi sarà il turno 'vede chi è il vincitore e lo stampa a video If win Then If stato Then MsgBox "Ha vinto il Giocatore numero 2, COMPLIMENTI!!!", , "VITTORIA GIOCATORE 2" Else MsgBox "Ha vinto il Giocatore numero 1, COMPLIMENTI!!!", , "VITTORIA GIOCATORE 1" End If controllo = 2 End If End Function e ti posto anche l'eseguibile
__________________
| Athlon XP Barton 3000+ | CoolerMaster HAC-V81 | ASUS A7N8X DELUXE v2.0 | 2*256 PC3200 + 1*512 PC3200 = 1GB DDR400| ATI Radeon 9250 | HD 80Gb Maxtor SATA | Ali Q-TEC 550W Dual Fan GOLD PFC |
25-11-2003, 15:37 | #82 |
Senior Member
Iscritto dal: May 2003
Messaggi: 1113
|
...ops che casino....scusa forse il codice è più leggibile cose:
__________________
| Athlon XP Barton 3000+ | CoolerMaster HAC-V81 | ASUS A7N8X DELUXE v2.0 | 2*256 PC3200 + 1*512 PC3200 = 1GB DDR400| ATI Radeon 9250 | HD 80Gb Maxtor SATA | Ali Q-TEC 550W Dual Fan GOLD PFC |
25-11-2003, 17:03 | #83 |
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Meglio che mi posti sempre il progetto...è un po' + facile controllare il tutto!!
Si cmq appena arrivo a casa te lo controllo Il programma vorrei che fosse UOMO vs UOMO, UOMO vs PC, UOMO vs UOMO in rete GL
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
25-11-2003, 20:59 | #84 |
Senior Member
Iscritto dal: May 2003
Messaggi: 1113
|
questo è tutto il codice in VB + le immagini + l'eseguibile
è completo UOMO contro UOMO
__________________
| Athlon XP Barton 3000+ | CoolerMaster HAC-V81 | ASUS A7N8X DELUXE v2.0 | 2*256 PC3200 + 1*512 PC3200 = 1GB DDR400| ATI Radeon 9250 | HD 80Gb Maxtor SATA | Ali Q-TEC 550W Dual Fan GOLD PFC |
26-11-2003, 02:50 | #85 | |
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Quote:
Altra cosa, chiama i bottoni con un nome unico e metti nella proprietà Index un numeretto, questo numeretto è l'indice del comando. Così facendo anzichè creare 9 precedure per ogni Command basta che ne crei una e come parametro lui passerà Index, che sarà proprio il bottone che hai premuto. Esempio per quello che tu usi per svuotare il tutto è così: Codice:
'riporta allo stato iniziale le figure del campo Command1.Picture = LoadPicture() Command2.Picture = LoadPicture() Command3.Picture = LoadPicture() Command4.Picture = LoadPicture() Command5.Picture = LoadPicture() Command6.Picture = LoadPicture() Command7.Picture = LoadPicture() Command8.Picture = LoadPicture() Command9.Picture = LoadPicture() Codice:
For nI=1 to 9 cmdCaselle(nI).Picture = LoadPicture() Next PS: ti riposto il codice...guarda quello che ho modificato....naturalmente inerente agli indici, i resto nn l'ho toccato
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
|
26-11-2003, 10:31 | #86 |
Senior Member
Iscritto dal: May 2003
Messaggi: 1113
|
è un ottimo consiglio quello che mi hai dato........ma mi scombussola un po tutto adesso..........
Cmq non c'è un modo per fare in modo che gli ARRAY comincino a contare da 1 e non da 0???? Ah ho anche risolto il problema del vincitore in diagonale, era una cazzata e che non c'avevo proprio pensato........cmq PASSIAMO AL GIOCO IN RETE che mi attizza un casino.............solo che..........................NON SO NEANCHE DA DOVE SI COMINCIA HELP.....
__________________
| Athlon XP Barton 3000+ | CoolerMaster HAC-V81 | ASUS A7N8X DELUXE v2.0 | 2*256 PC3200 + 1*512 PC3200 = 1GB DDR400| ATI Radeon 9250 | HD 80Gb Maxtor SATA | Ali Q-TEC 550W Dual Fan GOLD PFC |
26-11-2003, 15:20 | #87 |
Senior Member
Iscritto dal: May 2003
Messaggi: 1113
|
ok ho risolto tutto, ho anche implementato i tuoi consigli senza stravolgere niente!!!
Ho inserito la possibilità di scegliere la modalità di gioco!! Ora devo "solo" implementare le varie modalità!!! Per quella contro il computer è ok faccio benissimo da solo, ma per quella tramite rete....eh..mmm...beh come t'ho già detto NON SO NULLA di come si fa........mi serve il tuo aiuto...
__________________
| Athlon XP Barton 3000+ | CoolerMaster HAC-V81 | ASUS A7N8X DELUXE v2.0 | 2*256 PC3200 + 1*512 PC3200 = 1GB DDR400| ATI Radeon 9250 | HD 80Gb Maxtor SATA | Ali Q-TEC 550W Dual Fan GOLD PFC |
26-11-2003, 15:36 | #88 | |
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Quote:
Cmq vediamo, gli indici puoi farli partire da 0, i vettori in VB a differenza del pascall o di C/C++ per esempio...quando tu inizializzi un vettore del tipo Vet(10) hai a disposizione 11 posizioni da 0 a 10, poi fallo partire ed arrivare come vuoi to, o da 0 a 9 o da 1 a 10, è indifferente...dipende da cosa stai facendo!! Per il gioco in rete nn è difficilissimo, infatti secondo me ti consiglio di fare il gioco contro il computer...che a prima vista nn sembra difficile, ma qui devi mettere tutto il tuo impegno e ingegno per far si che il computer capisco il gioco e controbatta al meglio la tua idea umana... ...cioè, siccome il gioco del tris è veramente assurdo, cioè solo grazie a una disattenzione si può perdere (lasciamo stare della regola di chi comincia prima) lo scopo del tuo tris sarà di pareggiare sempre, quando il tuo tris pareggierà con tutti i giocatori e addirittura con quelli meno attenti vincerà allora questa modalità sarà finita PS: siccome qui nn c'è d conoscere il linguaggio, io nn ti darò una mano per questa parte, se nn conosci qlc funzione o qlc parte di VB io ti aiuto, per l'algoritmo di attacco/difesa è tutto in mano tua Una valta ultimana questa parte, molto divertente...passiamo alla aprte di gioco in rete, che sinseramente devo dirti la verità è molto ma molto + facile di quella che stai per affrontare, perchè nelle cose in rete il trucco è solo mandare e ricevere informazioni da un pc all'altro formattati in maniera tale che tu sai cosa devi affrontare
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
|
26-11-2003, 15:52 | #89 |
Senior Member
Iscritto dal: May 2003
Messaggi: 1113
|
alla fine l'index dei pulsanti l'ho fatto partire da uno, e tutto funziona bene adesso!!!
Ora comincio a lavorare sul gioco contro il computer.........che ho già notato che è un casino..... hai qualche consiglio??
__________________
| Athlon XP Barton 3000+ | CoolerMaster HAC-V81 | ASUS A7N8X DELUXE v2.0 | 2*256 PC3200 + 1*512 PC3200 = 1GB DDR400| ATI Radeon 9250 | HD 80Gb Maxtor SATA | Ali Q-TEC 550W Dual Fan GOLD PFC |
26-11-2003, 16:21 | #90 | |
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Quote:
Per il resto divertiti un po', altrimenti scusa....DOV'E' IL BELLO DI PROGRAMMARE!!!!!!!
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
|
26-11-2003, 17:43 | #91 |
Senior Member
Iscritto dal: May 2003
Messaggi: 1113
|
...........sono due ore che sto dietro sto coso.......mi sto iniziando ad esaurire.......mai possibile che non riesco ad elaborare NE MENTALMENTE ne SU CARTA un algoritmo che sia degno di un gioco intelligente?!!?!
Per il fatto dei turni stavo pensando di mettere delle specie di spie luminose in alto a tutto che a seconda di chi tocca si accendono o diventano invisibili!! E' semplice......per il gioco col computer E' UN CASINO......tu vuoi vedermi morto lo so.......speriamo bene
__________________
| Athlon XP Barton 3000+ | CoolerMaster HAC-V81 | ASUS A7N8X DELUXE v2.0 | 2*256 PC3200 + 1*512 PC3200 = 1GB DDR400| ATI Radeon 9250 | HD 80Gb Maxtor SATA | Ali Q-TEC 550W Dual Fan GOLD PFC |
26-11-2003, 18:43 | #92 | |
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Quote:
Dai dai che quando l'hai finito il sei iper soddisfatto PS: io avevo iniziato in C++ questo programma, ma poi per cause esterne...vedi una visitina in ospedale inaspettata nn l'ho mai completato, perchè al ritorno c'era già altro da fare Per cui sinceramente anche volessi dovrei anche io pensare a qlc se voglio darti una mano, ma siccom io sono veramente cattivissimo...fai da solo l'algoritmo, come ti ho giò detto ti aiuto solo per le cose del linguaggio
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
|
26-11-2003, 20:46 | #93 |
Senior Member
Iscritto dal: May 2003
Messaggi: 1113
|
questo è il codice completo del mio programma
ti aggiornerò costantemente sugli sviluppi......hola
__________________
| Athlon XP Barton 3000+ | CoolerMaster HAC-V81 | ASUS A7N8X DELUXE v2.0 | 2*256 PC3200 + 1*512 PC3200 = 1GB DDR400| ATI Radeon 9250 | HD 80Gb Maxtor SATA | Ali Q-TEC 550W Dual Fan GOLD PFC |
26-11-2003, 21:19 | #94 |
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
26-11-2003, 22:18 | #95 |
Senior Member
Iscritto dal: May 2003
Messaggi: 1113
|
non capisco come sia potuto capitare......cmq guarda un po??
__________________
| Athlon XP Barton 3000+ | CoolerMaster HAC-V81 | ASUS A7N8X DELUXE v2.0 | 2*256 PC3200 + 1*512 PC3200 = 1GB DDR400| ATI Radeon 9250 | HD 80Gb Maxtor SATA | Ali Q-TEC 550W Dual Fan GOLD PFC |
26-11-2003, 23:45 | #96 | |
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Quote:
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
|
27-11-2003, 22:22 | #97 |
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Ti volevo solo avvertire che per il week end nn ci sono...torno domenica sera!!
Buon Lavoro
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
28-11-2003, 11:58 | #98 |
Senior Member
Iscritto dal: May 2003
Messaggi: 1113
|
non ci sto capendo più niente, ho provato a darli un'intelligenza STUPIDA, praticamente si metteva nella prima casella vuoto.........MA poi non riuscivo ad implementarlo nel gioco..................................come faccio!??!?!?!?! AIUTO
__________________
| Athlon XP Barton 3000+ | CoolerMaster HAC-V81 | ASUS A7N8X DELUXE v2.0 | 2*256 PC3200 + 1*512 PC3200 = 1GB DDR400| ATI Radeon 9250 | HD 80Gb Maxtor SATA | Ali Q-TEC 550W Dual Fan GOLD PFC |
28-11-2003, 12:43 | #99 |
Bannato
Iscritto dal: Jan 2001
Messaggi: 1976
|
devi usare la stessa logica che fa muovere l'uccello verso la patata !
(e non è uno scherzo) |
28-11-2003, 12:53 | #100 |
Senior Member
Iscritto dal: Mar 2002
Città: Italy/Usa
Messaggi: 2815
|
[OT]
a2000 sto cercando di mandarti un pvt ma hai la mailbox piena fine [OT]
__________________
"Utilizzando atomi pentavalenti drogheremo il silicio di tipo n; Utilizzando atomi trivalenti drogheremo il silicio di tipo p; Utilizzando della cannabis ci drogheremo noi e vedremo il silicio fare cose impossibili" - DSDT-HowTo |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 08:19.