Accueil Ti-Gen Foire Aux Questions Chat sur le chan #tigcc sur IRC
Liste des membres Rechercher Aide
Bienvenue Invité !   Se connecter             Mes sujets   
Administrer
0 membre(s) et 1 visiteur(s) actif(s) durant les 5 dernières minutes Utilisateurs actifs : Aucun membre + 1 visiteur
Avant de poster sur le forum, il y a des régles de bases à respecter pour une bonne entente et un respect de tous.
Veuillez lire la charte du forum.
  :: Index » GFA-Basic TI68K » Programmation » Tout plein de questions! :) (33 réponse(s))
./POST DE DEPART (post n°0)   Marquer comme non lu.
EJC2810 Ecrit le: Vendredi 18 mars 2005 à 19:15 Déconnecté(e)    Voir le profil de EJC2810 Envoyer un email à EJC2810 Envoyer un message privé à EJC2810  

Voilà, j'ai commencé à me programmer un Tron.
Mais je suis bloqué sur quelques petits points:
- Comment faire une "Pxl_test"?
- Comment dessiner un point ou une ligne blanche?
- Pourquoi le positionnement du texte avec Print At ne se fait pas par pixel?
- Sinon j'ai autre chose à vous dire, c'est que ce genre de code marche:

If *** Then
***
Endif

Et ca ça marche pas:

If ***
***

Le compilateur (ou appelez-le comme vous voulez) ne me dit pas d'erreur mais dans le programme il attends le Endif donc ça me modifie mon fichier texte en me mettant des tabulations partout après, et en plus mes conditions marchent bizarrement, ça fais un peu n'importe quoi.
Donc je voulais savoir... euh, ben pourquoi c'est aussi laid? :D
    
./Post n°1   Marquer comme non lu.
Dari Ecrit le: Vendredi 18 mars 2005 à 20:11 Déconnecté(e)    Voir le profil de Dari Envoyer un email à Dari Visiter le site WEB de Dari Envoyer un message privé à Dari  

Il faut un Endif. L'ommission du Then n'est pas pareille que pour le TI Basic.
En GFA :
If ***
***
***
***
Endif
"iPod, therefore, I am."

http://media.laquadrature.net/Quadrature_black-out_HADOPI_468x60px.gif

    
./Post n°2   Marquer comme non lu.
geogeo Ecrit le: Vendredi 18 mars 2005 à 21:08 Déconnecté(e)    Voir le profil de geogeo Envoyer un email à geogeo Visiter le site WEB de geogeo Envoyer un message privé à geogeo  


EJC2810 :
Voilà, j'ai commencé à me programmer un Tron.
Mais je suis bloqué sur quelques petits points:
- Comment faire une "Pxl_test"?
- Comment dessiner un point ou une ligne blanche?
- Pourquoi le positionnement du texte avec Print At ne se fait pas par pixel?
- Sinon j'ai autre chose à vous dire, c'est que ce genre de code marche:


Pxl_test c'est la fonction Point x,y qui retourne TRUE ou FALSE.
Pour dessiner un point c'est Plot x,y
Une ligne bah Line x0,y0,x1,y1, un rectangle vide, Box x0,y0,x1,y1
Sinon pour Print At bah c'est pas possible d'afficher pixel par pixel faut attendre la fonction Text non implantée encore.



If *** Then
***
Endif

Et ca ça marche pas:

If ***
***



Preuve encore que mon site sert à rien:
http://www.tigen.org/gfabasic/index.php?page=manuel&module=fonctions.php#87

Le compilateur (ou appelez-le comme vous voulez) ne me dit pas d'erreur mais dans le programme il attends le Endif donc ça me modifie mon fichier texte en me mettant des tabulations partout après, et en plus mes conditions marchent bizarrement, ça fais un peu n'importe quoi.
Donc je voulais savoir... euh, ben pourquoi c'est aussi laid? :D


Le compilateur te dit forcément une erreur mais tu ne la voit pas car tout simplement tu caches l'erreur avec la commande gfaexec.

La façon la plus propre d'executer un programme tapé en GFA Basic est de faire ceci, ton programme est dans un fichier texte qui se nomme test.

gfabasic("test") = Scanner.
gfabasic("tokens") = Tokeniseur, détokeniseur.
gfatem("tokenbuf") = Execution.

Maintenant les indentations ne sont faites que dans le fichier untokens pas autre part, ton fichier source n'est pas modifié seule les majuscules... sont mises comme il faut, aucune tabulation... n'est effectuée.

Si tu as des conditions qui font n'importe quoi c'est peut être un bug.
Tu peux donner ton programme qui bug.... Bref voir si ça vient de toi ou alors vraiment de l'interpréteur.
Sinon qu'est ce qui est laid, la syntaxe, le code?
-Edité le Vendredi 18 mars 2005 à 21:10 par geogeo-
Webmaster du site.
Programmeur sur TI68K. Arkanoid, Nebulus, GFA-Basic.

Plus d'informations sur GFA-Basic (un langage Basic pour TI68K).
http://www.tigen.org/gfabasic
    
./Post n°3   Marquer comme non lu.
EJC2810 Ecrit le: Vendredi 18 mars 2005 à 23:56 Déconnecté(e)    Voir le profil de EJC2810 Envoyer un email à EJC2810 Envoyer un message privé à EJC2810  

Sinon qu'est ce qui est laid, la syntaxe, le code?


C'était juste le fait qu'il ne me reconnait pas l'erreur (apparament si en fait), et que ça mette des tabulations partout. Mais effectivement ce n'est que dans le fichier tokens. Et du coup quand on démarre le prog ça fait pas ce que je veut.
    
./Post n°4   Marquer comme non lu.
geogeo Ecrit le: Samedi 19 mars 2005 à 10:34 Déconnecté(e)    Voir le profil de geogeo Envoyer un email à geogeo Visiter le site WEB de geogeo Envoyer un message privé à geogeo  


Je ne comprend toujours pas ton problème, tu peux diffuser ta source?
Webmaster du site.
Programmeur sur TI68K. Arkanoid, Nebulus, GFA-Basic.

Plus d'informations sur GFA-Basic (un langage Basic pour TI68K).
http://www.tigen.org/gfabasic
    
./Post n°5   Marquer comme non lu.
EJC2810 Ecrit le: Samedi 19 mars 2005 à 11:39 Déconnecté(e)    Voir le profil de EJC2810 Envoyer un email à EJC2810 Envoyer un message privé à EJC2810  

Non mais je n'ai aucun problème!
Je trouvais juste bizarre que le if... sans le endif marchait pas. Maintenant si tu me dis que c'est parce que c'est pas programmé, tout vas bien! :)

Par contre, tu viens de me faire penser que j'ai encore des problèmes! :D

1) Tu ne m'as pas dit comment on faisait un point ou une ligne blanche, qui efface quoi!

2) Et je viens de remarquer autre chose, j'ai un problème au niveau du getkey:
- le RR_2ND marche pas (il doit surment pas exister)
- le RR_DIAMOND marche mais if quand on appuie, il le conpte comme =0 et =1 quand on appuie pas! Ce qui fait que dans mon tron, ma touche pour ralentir fais accélérer, car quand j'appuie pas il ralenti tout le temps.
- On ne peut aussi pas appuyer sur 2 touches en même temps, c'est gênant pour ralentir et tourner à la fois, et je n'imagine même pas dans un jeu d'action! :)
- Et puis un dernier truc: C'est pour quand les bitmaps? (avec des PIC) :D Ca serait pratique pour faire des jolis menus, etc...

Edit: 3) J'ai failli oublier, c'est koi la différence entre KEY_ et RR_
4) Y a t-il une liste des touches reconnues par GFA Basic quelque part?
-Edité le Samedi 19 mars 2005 à 11:41 par EJC2810-
    
./Post n°6   Marquer comme non lu.
geogeo Ecrit le: Samedi 19 mars 2005 à 11:58 Déconnecté(e)    Voir le profil de geogeo Envoyer un email à geogeo Visiter le site WEB de geogeo Envoyer un message privé à geogeo  


1) On ne peut pas pour l'instant mais ça va arriver.

2) Je vais voir ça! Tu testes sur TI89?

Les bitmap tu peux en faire maias avec des DATA et en utilisant la fonction Put.
Genre pour un bitmap de 16x2.


Bitmap$=Mki$(16)+Mki$(2)
For I=1 to 2
  Read Ligne
  Bitmap$=Bitmap$+Mki$(Ligne)
Next I
Data 65535,65535


Les fichiers... avec PIC vont arriver! Faut être un peu patient. :)

4) La différence est que KEY_ est une constante utile pour Ngetchx et Getkey, bref genre ESC=264.... Donc KEY_ESC=264. C'est comme PI, TRUE, FALSE, constante statique.
RR_ sont des constantes dynamiques, ça renvoie TRUE ou FALSE suivant si la touche a été pressée ou non!
-Edité le Samedi 19 mars 2005 à 11:59 par geogeo-
Webmaster du site.
Programmeur sur TI68K. Arkanoid, Nebulus, GFA-Basic.

Plus d'informations sur GFA-Basic (un langage Basic pour TI68K).
http://www.tigen.org/gfabasic
    
./Post n°7   Marquer comme non lu.
EJC2810 Ecrit le: Samedi 19 mars 2005 à 12:10 Déconnecté(e)    Voir le profil de EJC2810 Envoyer un email à EJC2810 Envoyer un message privé à EJC2810  

Ok, merci.

Je suppose que appuyer plusieurs touches en même temps n'est pas possible pour l'instant.


Au fait, faudra simplifier les sprites parce que j'y comprends rien! :D :D :D

En tout cas continue comme ça! Il est cool ce GFA Basic! :)
    
./Post n°8   Marquer comme non lu.
geogeo Ecrit le: Samedi 19 mars 2005 à 12:18 Déconnecté(e)    Voir le profil de geogeo Envoyer un email à geogeo Visiter le site WEB de geogeo Envoyer un message privé à geogeo  


Bah si on peux appuyer sur plusieurs touches en même temps!
If RR_A And RR_B
ou
If Getkey=65 And Getkey=66

Pour les sprites c'est simple pourtant mais y a pas de notice donc normal.
-Edité le Samedi 19 mars 2005 à 12:19 par geogeo-
Webmaster du site.
Programmeur sur TI68K. Arkanoid, Nebulus, GFA-Basic.

Plus d'informations sur GFA-Basic (un langage Basic pour TI68K).
http://www.tigen.org/gfabasic
    
./Post n°9   Marquer comme non lu.
EJC2810 Ecrit le: Samedi 19 mars 2005 à 14:05 Déconnecté(e)    Voir le profil de EJC2810 Envoyer un email à EJC2810 Envoyer un message privé à EJC2810  

Ah bon ça marche If RR_A And RR_B?

Parce que moi quand je met ça ça marche pas en même temps:


if KEY_GAUCHE
...
if RR_DIAMOND
...


C'est à cause des KEY et RR qui sont pas compatibles? #confus#
Sinon c'est quoi la commande pour utiliser 2nd? (KEY_2ND marche pas comme RR_2ND)

PS: J'ai une TI-89T.
    
./Post n°10   Marquer comme non lu.
Dari Ecrit le: Samedi 19 mars 2005 à 14:47 Déconnecté(e)    Voir le profil de Dari Envoyer un email à Dari Visiter le site WEB de Dari Envoyer un message privé à Dari  

Mets plutôt :
If RR_Gauche
?
Endif
If RR_Droite
?
Endif
If RR_Diamond
?
Endif

Comme ça tu détectes tout tranquille, quitte à vérifier si les deux touches opposées sont pas appuyées (If RR_Gauche AND Not RR_Droite)
"iPod, therefore, I am."

http://media.laquadrature.net/Quadrature_black-out_HADOPI_468x60px.gif

    
./Post n°11   Marquer comme non lu.
EJC2810 Ecrit le: Samedi 19 mars 2005 à 15:29 Déconnecté(e)    Voir le profil de EJC2810 Envoyer un email à EJC2810 Envoyer un message privé à EJC2810  

Merci, tu m'apprends quelque chose! Je savais pas que on pouvait mettre RR à toutes les touches qui ont KEY. C'est quand même bizarre... Il me semblait avoir essayé de mettre RR_DIAMOND en KEY_DIAMOND et il me semblait que ça marchait pas. J'ai surement du me planter.

Personne sait utiliser 2nd? :)
    
./Post n°12   Marquer comme non lu.
Dari Ecrit le: Samedi 19 mars 2005 à 18:14 Déconnecté(e)    Voir le profil de Dari Envoyer un email à Dari Visiter le site WEB de Dari Envoyer un message privé à Dari  

Ben RR_2ND marche, va voir mon jeu (copter).
"iPod, therefore, I am."

http://media.laquadrature.net/Quadrature_black-out_HADOPI_468x60px.gif

    
./Post n°13   Marquer comme non lu.
geogeo Ecrit le: Samedi 19 mars 2005 à 20:00 Déconnecté(e)    Voir le profil de geogeo Envoyer un email à geogeo Visiter le site WEB de geogeo Envoyer un message privé à geogeo  


Je vois ton pb EJC2810.
Les KEY_ sont des constantes et ça correpsond à un numéro de touche, genre getkey est ngetch te renvoient une valeur, genre 264 pour ESC.... Bah KEY_ESC est une constante et vaut 264, c'est un nombre point barre, au même titre que PI, TRUE, FALSE....
Mais RR_ESC c'est autre chose, elle te donne en temps réel l'état de la touche ESC et te renvoie TRUE pour appuyée et FALSE pour non appuyée.

Donc RR_ renvoie l'état de la touche en temps réel.
Et KEY_ à utiliser avec Getkey et Ngetchx et correspond à une valeur de touche, voir ton manuel pour voir à quelle valeur correspond telle touche renvoyée avec Ngetchx ou Getkey.

Il faut bien voir ici que RR_ sont des constantes dynamiques au même titre que LCD_WIDTH, LCD_HEIGHT... qui varient suivante le modèle de TI ou un état de la machine, ici les touches.
Et KEY_ sont des constantes statiques au même titre que PI....
Webmaster du site.
Programmeur sur TI68K. Arkanoid, Nebulus, GFA-Basic.

Plus d'informations sur GFA-Basic (un langage Basic pour TI68K).
http://www.tigen.org/gfabasic
    
./Post n°14   Marquer comme non lu.
EJC2810 Ecrit le: Samedi 19 mars 2005 à 20:30 Déconnecté(e)    Voir le profil de EJC2810 Envoyer un email à EJC2810 Envoyer un message privé à EJC2810  

J'ai compriiiiis!

Merci geogeo, je comprends maintenant pourquoi K%=RR_2ND marche pas! :)
Les RR marchent sans K% (euh,... K% c'est ma variable pour getkey! Ca serait bien de préciser! :D )
Donc si j'ai bien compris c'est ou "getkey+KEY_", ou "RR_".
Bon ben je vais pouvoir avancer mon jeu maintenant! :)
    
./Post n°15   Marquer comme non lu.
geogeo Ecrit le: Dimanche 20 mars 2005 à 10:53 Déconnecté(e)    Voir le profil de geogeo Envoyer un email à geogeo Visiter le site WEB de geogeo Envoyer un message privé à geogeo  


Ouai c'est ça :)
Webmaster du site.
Programmeur sur TI68K. Arkanoid, Nebulus, GFA-Basic.

Plus d'informations sur GFA-Basic (un langage Basic pour TI68K).
http://www.tigen.org/gfabasic
    
./Post n°16   Marquer comme non lu.
Dari Ecrit le: Dimanche 20 mars 2005 à 13:27 Déconnecté(e)    Voir le profil de Dari Envoyer un email à Dari Visiter le site WEB de Dari Envoyer un message privé à Dari  

Envoie ton code, qu'on teste !
"iPod, therefore, I am."

http://media.laquadrature.net/Quadrature_black-out_HADOPI_468x60px.gif

    
./Post n°17   Marquer comme non lu.
EJC2810 Ecrit le: Dimanche 20 mars 2005 à 14:45 Déconnecté(e)    Voir le profil de EJC2810 Envoyer un email à EJC2810 Envoyer un message privé à EJC2810  

Euh, en fait y atoujours des problèmes!

RR_2ND et RR_DIAMOND fonctionnent en même temps mais RR_DIAMOND et RR_GAUCHE par exemple ne fonctionnent pas en même temps! #confus#
Ca marche pas terrible ce système pour les touches appuyées en même temps.

(je vous enverai le code plus tard si ça vous intéresse vraiment)
    
./Post n°18   Marquer comme non lu.
Dari Ecrit le: Dimanche 20 mars 2005 à 16:18 Déconnecté(e)    Voir le profil de Dari Envoyer un email à Dari Visiter le site WEB de Dari Envoyer un message privé à Dari  

Ben il y a un forum projets dans la catégorie gfa basic où j'ai posté mon jeu. Tu pourrais mettre ton code là, et on te dira ce qu'on en pense.
"iPod, therefore, I am."

http://media.laquadrature.net/Quadrature_black-out_HADOPI_468x60px.gif

    
./Post n°19   Marquer comme non lu.
geogeo Ecrit le: Dimanche 20 mars 2005 à 20:23 Déconnecté(e)    Voir le profil de geogeo Envoyer un email à geogeo Visiter le site WEB de geogeo Envoyer un message privé à geogeo  


EJC2810 :
Euh, en fait y atoujours des problèmes!

RR_2ND et RR_DIAMOND fonctionnent en même temps mais RR_DIAMOND et RR_GAUCHE par exemple ne fonctionnent pas en même temps! #confus#
Ca marche pas terrible ce système pour les touches appuyées en même temps.

(je vous enverai le code plus tard si ça vous intéresse vraiment)


Je ne pourrai jamais débugguer GFA Basic ou t'aider si j'ai pas la source qui pose problème!
Webmaster du site.
Programmeur sur TI68K. Arkanoid, Nebulus, GFA-Basic.

Plus d'informations sur GFA-Basic (un langage Basic pour TI68K).
http://www.tigen.org/gfabasic
    
  :: Index » GFA-Basic TI68K » Programmation » Tout plein de questions! :) (33 réponse(s))
Pages : 1/2     « [1] 2 » »|

.Répondre à ce sujet
Les boutons de code
[B]old[I]talic[U]nderline[S]trikethrough[L]ine Flip Hori[Z]ontallyFlip [V]erticallySha[D]ow[G]low[S]poilerCode [G][C]ite
Bullet [L]istList Item [K] Link [H][E]mail[P]icture SmileysHelp
Couleurs :
Saisissez votre message
Activer les smileys
     

Forum de Ti-Gen v3.0 Copyright ©2004 by Geoffrey ANNEHEIM
Webmaster: Kevin KOFLER, Content Admins: list, Server Admins: Tyler CASSIDY and Kevin KOFLER, DNS Admin: squalyl
Page générée en 49.85ms avec 18 requetes