Ciao a tutti.
Mi divertivo a programmare in basic "qualche" anno fa (c64 e amiga...). Le poche conoscenze che avevo erano venute provando a programmare qualcosa e risolvendo via via i vari problemi.
Mi è venuta voglia di provarci con il PC dopo molti anni e da qui nascono i problemi... quale programma usare? Il VB mi sembrava semplice ed in grado di gestire la grafica in modo immediato ed intuitivo.
Ho così deciso di provare ed ho scelto come programma "studio" la creazione di un poker (giochino già fatto precedentemente con il c64).
Ci ho lavorato su qualche giorno e ho l'impressione di aver fatto la scelta sbagliata
I problemi sono iniziati subito perchè non capivo come gestire la struttura dela programma, che abitualmente era composta da un unico listato, mentre qui si gestiscono solo sub-routine legate a singoli "eventi" (non conosco bene il linguaggio e non conosco quindi le definizioni esatte, spero di riuscire a farmi capire). Mi sembra di capire che anche gosub e goto funzionano solo all'interno della stessa routine...
Ho comunque continuato la programmazione pensando che andando avanti avrei risolto man mano i vari problemi.
La parte principale del gioco era quindi fatta: la grafica, mescolare/distribuire le carte, far si che il computer riconoscesse le combinazioni ecc... però ad un certo punto, mi sono trovato a delle difficoltà insormontabili.
Non essendo un esperto di programmazione mi è difficile essere chiaro nello spiegare le difficoltà da me incontrate, spero di riuscirci.
Qui ogni pulsante ripropone una subroutine, mentre io avrei bisogno di una struttura unica che utilizzasse i vari pulsanti non sempre allo stesso modo, inoltre ho bisogno di suboutine non legate ad azioni dell'utente, richiamabili da qualsiasi punto del programma.
Per esempio se il giocatore non apre, ho bisogno di far pensare il pc-giocatore, quindi sono costretto ad inserire il codice all'interno di questa routine di apertura del giocatore, ma se non apre nessuno devo ritornare alla routine della puntata iniziale ed a questo punto deve aprire il pc-giocatore... e lo deve fare nella routine in cui si è fatta la puntata. In questo modo devo rifare molte volte le stesse routine.
Con il vecchio basic 2.0 ed un opportuno utilizzo di goto e gosub, la programmazione mi sembrava molto più snella e semplice, con la sua struttura unica e le varie routine/sub-outine.
Non so se riesco a far capire il problema, ma in pratica la struttura del gioco mi risulta legata a pulsanti, immagini, label o quant'altro, mentre a me servirebbe che ci fosse una struttura unica slegata dal dato pulsante/immagine/label, ma che li richiamasse quando servono.
E' perchè conosco ancora troppo poco il linguaggio o invece ho scelto un linguaggio sbagliato? Esiste in alternativa un linguaggio semplice, molto simile al basic, che utilizzi il solito vecchio tipo di programmazione lineare, con un bel listato unico?