Omnimaga

Calculator Community => [FR] Section Francophone => [FR] Programmation Axe Parser => Topic started by: kindermoumoute on May 20, 2010, 04:18:51 pm

Title: [Axe parser] aide
Post by: kindermoumoute on May 20, 2010, 04:18:51 pm
J'ai beau lire et relire les commands en anglais, je ne pige que les 3/4 et j'aimerais particulièrement comprendre comment on manipule un programme, plus précisément comment on écrit dans un programme, je m'explique :
Je veux sauvegarder un screenshot de la calculatrice, et l'enregistrer dans un programme puis l'archiver (si ce n'est pas possible expliquez moi le screenshot et comment enregistrer dans une image?)
Title: Re: Axe parser : aide pour manipuler des programmes
Post by: DJ Omnimaga on May 20, 2010, 08:56:47 pm
Salut,

présentement, je crois qu'il est impossible de créér des nouveaux programmes à partir d'Axe, seulement des APPVARS, mais dans le futur il sera possible de le faire. Pour faire un screenshot, il faut présentement que tu fasse un programme ou tu crée une variable d'application (APPVAR) et tu t'arrange pour qu'elle soit 768 octets de large (96x64 pixels c'est 6144 pixels, mais 8 pixels ça prends 1 octet, donc 768). Ensuite, tu copie l'écran dans le "Buffer", puis ensuite le buffer dans la variable d'application.

Mais ensuite ça te prends un programme Axe pour ouvrir l'image, donc si le screenshot était destiné à un usage sur PC, vaut mieux utiliser TI-Connect screen capture. Mais je vais voir si je ne pourrais pas trouver du code pour faire tout ça.

Ce serait bien que quelqu'un traduise les commandes en français. Peut-être Silver Shadow? Reste que il faut savoir l'équivalent français des termes ASM  (comme pointers, SafeRAM, buffer, etc) pour une telle traduction.

Bon j'ai trouvé comment stocker la capture d'écran, mais pour la rappeler, c'est une autre histoire, et ça a tendance à crasher :/

EDIT: Bon j'ai trouvé un peu comment, mais je crois que je fait qqch de pas correct, car il y a du gribouillis sur l'écran en rapellant l'image :/

Dès que j'aurai le temps, je vais demander dans le forum anglo
Title: Re: Axe parser : aide pour manipuler des programmes
Post by: kindermoumoute on May 21, 2010, 11:55:25 am
ok, merci pour ta recherche, je vais chercher de mon coté.
Title: Re: Axe parser : aide pour manipuler des programmes
Post by: DJ Omnimaga on May 21, 2010, 05:18:48 pm
Au fait voici mon topic en question (anglais): http://ourl.ca/4886/90941;topicseen#new

Aussi, comme tu est nouveau sur Axe Parser, et que tu ne parles pas beaucoup anglais, je tiens à attirer ton attention sur quelque chose de très très important à propos de toute programmation Axe ou BASIC étendu (xLIB, CelticIII, Omnicalc, etc.): Fais toujours des copies de sauvegarde de tes projets et programmes avant chaque test. En TI-BASIC, le TI-OS va vérifier pour toute erreur possible, mais pas les programmes Axe compilés. C'est comme quand tu execute un prog en ASM: si un erreur se produit, il y a des grandes chances que ton système devienne instable et que ça plante. Résultat: RAM Cleared
Title: Re: Axe parser : aide pour manipuler des programmes
Post by: kindermoumoute on May 21, 2010, 06:30:08 pm
J'ai trouvé le problème! (ou presque)

L'erreur n'est pas dans cette partie la :
Code: [Select]
.SCRNSHOT
StoreGDB
"vPIC"->Str1
GetCalc(Str1)
GetCalc(Str1,768)
conj(L6,Str1,768)
DispGraph



Mais ici :
Code: [Select]
[code].SCRNVIEW
"vPIC"->Str1    // plus précisément ici
GetCalc(Str1)->M
If M
conj(Str1,L6,768)
DispGraph
End

Et oui, étant une version bétà c'est compréhensible de trouver ce genre d'erreur je pense ^^ il faut mettre le vrai nom de vPIC qui apparait soit "PIC".
Et peut être un det(12) à rajouter?

le problème est que je me retrouve avec une image dans le mauvais sens.. je pense que cela vient du premier programme.. mais comment savoir ou :/

PS : J'en suis au 3ème ram cleared de la journée ;) même pas peur :p

EDIT : pourquoi j'ai ça qui se met automatiquement à la fin de mon message? ==> [/code]
Title: Re: Axe parser : aide pour manipuler des programmes
Post by: DJ Omnimaga on May 21, 2010, 06:49:24 pm
étrange, dans le readme ils disent que ça prends absolument le v au début. Il y a surement une erreur dedans.

Je crois que Quigibo devrait soit réviser la commande GetCalc ou bien quelqu'un devrait écrir un tuto en détails comment utiliser GetCalc() parce que là plus que le monde essaie de m'aider plus je deviens confus. la commande est vraiment compliqué comparé au reste
Title: Re: Axe parser : aide pour manipuler des programmes
Post by: kindermoumoute on May 21, 2010, 06:54:46 pm
Bon.. j'arrive à un résultat.. l'image apparaît mais avec un petit défaut (sans compter le done bien sur ;) ), le haut de l'image n'est pas bon.
Title: Re: Axe parser : aide pour manipuler des programmes
Post by: DJ Omnimaga on May 21, 2010, 06:57:50 pm
tu veux dire les trucs bizzare en haut? Car j'ai eu le même problème.

Je commence à me demander s'il n'y a pas un bug avec la commande Conj() (pour copier des données d'un pointeur à un autre) qui cause de la corruption en copiant beaucoup de données à la fois.
Title: Re: Axe parser : aide pour manipuler des programmes
Post by: kindermoumoute on May 21, 2010, 07:02:42 pm
J'ai oublié de mettre l'original ^^

Sur cette exemple la l'image est même passé de l'autre coté O_o? je ne pige rien du tout :p


EDIT ici il est 1h du mat.. je vais me coucher =)
Title: Re: Axe parser : aide pour manipuler des programmes
Post by: Silver Shadow on May 21, 2010, 07:09:32 pm
@DJ Omnimaga: merci de m'avoir rappelé que je devais faire la traduction. Je pense que je vais commencer à faire ça ce week-end, et qu'une 1ère version sera disponible lundi. Je vais aussi demander à Quigibo s'il serait possible d'inclure mes traductions dans le .zip de Axe Parser.
Title: Re: Axe parser : aide pour manipuler des programmes
Post by: DJ Omnimaga on May 21, 2010, 07:13:32 pm
mhmm en regardant l'image, il me semblerait qu'elle soit rappelé à partir de quelques octets trop en avance, bizzare x.x

@Silver pas de probleme ^^
Title: Re: Axe parser : aide pour manipuler des programmes
Post by: DJ Omnimaga on May 22, 2010, 07:28:29 am
Ok bon j'ai trouvé le problème: ma RAM était corrompu, ce qui explique pourquoi ça ne marchait pas, même après correction du code.

Le code, c'est

Quote
.SCRNSHOT
"vPIC"->Str1
StoreGDB
GetCalc(Str1,768)->A
Return!If
conj(L6,A,768)

Quote
.SCRNVIEW
"vPIC"->Str1
Unarchive Str1
Return!If GetCalc(Str1)->A
A->DispGraph

Note: le "v" n'est pas le v en mode ALPHA minuscule mais bien le v que tu écrit avec 2nd+8

Le premier prog store l'écran dans l'APPVAR nommé PIC. Le 2eme rapelle l'image.
Title: Re: Axe parser : aide pour manipuler des programmes
Post by: kindermoumoute on May 22, 2010, 08:25:41 am
Ouai!! merci beaucoup ;)
En faite je suis en train de faire un programme de dessin et c'est incroyable les nouvelles possibilités avec axe parser, seulement enregistrer l'image n'était pas aussi facile, mais la ça gère trop!

EDIT : j'ai un nouveau problème :/ je fait :A=> dispgraph et puis plus loins :pxl-on(X,Y) :dispgraph et donc l'image rappelée disparais :/ impossible de la modifier.
Title: Re: Axe parser : aide pour manipuler des programmes
Post by: kindermoumoute on May 22, 2010, 03:47:47 pm
En faite c'est très bizarre.. je dessine, j'enregistre, je regarde l'image pendant une pause de 2s, et quand je retourne pour dessiner l'image est encore la et je peut finalement la modifier.. faut que j'étudie tout ça   ;)

EDIT : en fait il faut mettre un clrhome entre les 2 dispgraph, ou sinon il ne garde pas l'image dans le buffer (j'ai l'impression).
Title: Re: Axe parser : aide pour manipuler des programmes
Post by: DJ Omnimaga on May 22, 2010, 05:47:17 pm
C'est typique des prog en ASM d'avoir des problèmes d'affichage lors du retour dans le TI-OS (ou en BASIC). Par exemple, avec xLIB, avant d'utiliser une commande de dessin xLIB la première fois dans le programme, si tu a fait un ClrDraw, il faut faire un DispGraph. Sinon, l'écran disparait.
Title: Re: Axe parser : aide
Post by: kindermoumoute on May 23, 2010, 04:36:22 pm
Cette fois je demande à tout hasard si il y a moyen de mettre un image plus petit que 8x8, comme par exemple 3x3 ou 4x4 voir 2x9... etc
Title: Re: Axe parser : aide
Post by: DJ Omnimaga on May 23, 2010, 06:36:45 pm
malheureusement non. Les sprites sont seulement 8x8. Le truc pour 7x7 ou moins est d'utiliser un bloc 8x8 mais les afficher a des intervalles moins grand. Le hic c'est que ça gaspille un peu de mémoire mais bon. Pour plus grand que 8x8 il faut utiliser plusieurs sprites collés ensemble
Title: Re: Axe parser : aide
Post by: kindermoumoute on May 24, 2010, 05:37:06 am
ok, au pire j'utilise la pxl-on() mais c'est un peu bourrin :p

EDIT : quand est ce que l'on aura une traduction des règles du forum?
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on May 24, 2010, 12:17:52 pm
Elles sont déja traduite. ;) Simplement cliquer le topic des règles listé dans la section francaise de discussions TI (qui contient un lien vers la charte) ou bien sur la page "RULES" ici http://www.omnimaga.org/index.php?action=ezportal;sa=page;p=2 il y a un lien pour aller vers les règles en français et néerlandais
Title: Re: [Axe parser] aide
Post by: kindermoumoute on May 24, 2010, 12:58:00 pm
Merci pour l'info, et les règles de ce forum (http://ourl.ca/4867) sont différentes? ou c'est une erreur?
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on May 24, 2010, 01:00:22 pm
Le lien dans le post redirige vers la page des règles en français accessible depuis celle en anglais
Title: Re: [Axe parser] aide
Post by: kindermoumoute on May 24, 2010, 01:23:42 pm
Ok, autant pour moi :p
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on May 24, 2010, 02:10:48 pm
En résumé le forum d'Omnimaga est un peu plus strict envers ce qui s'apelle un troll ou la politesse envers les nouveaux posant des questions (disons que j'en ai vu des vertes et des pas mûres sur d'autre forums TI anglais depuis 9 ans) mais coté flood, on l'est un peu moins (tout en rapellant que la modération a bien meilleur goût et qu'il est possible de flooder en restant sur le sujet ;D).
Title: Re: [Axe parser] aide
Post by: kindermoumoute on May 26, 2010, 03:37:01 pm
Est ce qu'il y a un moyen de déplacer une sprite dans une autre?
j'ai essayé:
 Pic1=>Pic0
 conj(Pic1,Pic0,768)
 Pic1=>Ans
Aucun ne marche :(
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on May 26, 2010, 04:05:06 pm
Oh, pour ce qui est des pointeurs dans le style de Pic1, Str1, GDB1, ce sont des pointeurs statiques. Ce qui veut dire qu'une fois leur valeur déclarée, il est impossible de les changer. Pour les données qui change constament, il faut les copier temporairement dans un truc comme L1. Je ne sais pas si c'est possible d'utiliser la commande det() pour ça. Sinon, je crois qu'il faut les stocker dans une APPVAR, mais là ça devient pénible d'ajouter des nouveaux sprites à ton prog.
Title: Re: [Axe parser] aide
Post by: kindermoumoute on May 26, 2010, 04:11:21 pm
Autre chose encore.. lorsque je fait un clrdraw, l'écran n'est pas censé être effacé?
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on May 26, 2010, 04:15:26 pm
Il faut faire un DispGraph après. En faisant ClrDraw, c'est le buffer qui est effacé, pas l'écran. Toutes les autres fonctions de dessin fonctionnes comme ça sauf Text( qui par défaut MAJ l'écran automatiquement (il est possible de changer ça avec FIX, sans oublier de le remettre par défaut en sortant du prog) et Output/Disp (que je déconseille pour les jeux car le résultat n'est pas toujours joli :P)
Title: Re: [Axe parser] aide
Post by: kindermoumoute on May 26, 2010, 04:18:37 pm
En gros si j'ai comprit ce que tu vient de me dire il faut faire :
pt-on(
clrdraw
dispgraph

Cela ne me paraît pas logique ^^
Ce que je cherche c'est un moyen de faire apparaître sans clignoter le stripe.
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on May 26, 2010, 04:30:04 pm
Mhmm dans ce cas là il faut faire un truc comme

clrdraw
Pt-On(
dispgraph

Clrdraw va effacer le buffer/mémoire d'écran tampon, Pt-On va y afficher ton sprite et dispgraph va copier les changements sur l'écran de la calculatrice.
Title: Re: [Axe parser] aide
Post by: meishe91 on May 26, 2010, 04:34:20 pm
Eh bien ce que le programme que vous venez de dire ne fait qu'afficher l'efface alors ce que vous venez de mettre sur le tampon (dans ce cas, le sprite) et puis plus rien affiche. Je suis de toute façon à peu près sûr. Je suis désolé si c'est inexact.

Qu'est-ce que c'est exactement que vous essayez de faire? Je ne comprends pas très bien.

Post-scriptum Désolé si c'est une mauvaise traduction, le blâme Google :P

Edit:
DJ semble m'ont battu.
Title: Re: [Axe parser] aide
Post by: kindermoumoute on May 27, 2010, 11:37:03 am
théoriquement, quand on fait dans une boucle :
clrdraw
pt-on
dispgraph
l'image est censé apparaître tout le temps et le clrdraw passer inaperçu
seulement voilà, l'image clignote quand le pt-on est toujours le même
Title: Re: [Axe parser] aide
Post by: SirCmpwn on May 27, 2010, 11:42:05 am
Hmm, c'est assez bizarre. Pourriez-vous poster le code source complet?
Essayez aussi DiagnosticOff au début de votre programme.

[Traduit de l'anglais, je m'excuse pour les erreurs]
Title: Re: [Axe parser] aide
Post by: kindermoumoute on May 27, 2010, 12:00:56 pm
Voilà le code, pour l'instant c'est vraiment pas beau a voir, mais n'hésitez pas à me donner des conseil ;)

Spoiler For Spoiler:
Code: [Select]
:.AXEWA
:[0000000000000000→Pic0
:[788CD4D4864B613E→Pic1
:.IMAGE NORMAL GAUCHE
:[1E312B2B61D2867C→Pic4
:.IMAGE NORMAL DROITE
:[78DCD484CA62211F→Pic2
:.IMAGE HAUT GAUCHE
:[1E3B2B21534684F8→Pic5
:.IMAGE HAUT DROITE
:[00788CD4D785493E→Pic3
:.IMAGE BAS GAUCHE
:[001E312BEBA1927C→Pic6
:.IMAGE BAS DROITE
:0→D→S+1→I+39→X+16→Y
:Repeat getKey(15)
: ClrDraw
: 1+I→I
: If I=5
: 1→I
:End
:If I=1 or (I=3
: Pt-Off(A,B,Pic0
:If S
: Pt-On(X,Y,Pic1)
:Else
:Pt-On(X,Y,Pic4
:End
:End
:If getKey(2) or getKey(3)
:If I=2
:If S
: Pt-On(X,Y,Pic2
:Else
:Pt-On(X,Y,Pic5
:End
:End
:If I=4
:If S
: Pt-On(X,Y,Pic3
:Else
:Pt-On(X,Y,Pic6
:End
:End
:End
:DispGraph
:Pause 100
:X→A
:Y→B
:If getKey(2) and (X>0
: X-1→X
:1→S
:End
:If getKey(3) and (X<88
: X+1→X
:0→S
:End
:End
Title: Re: [Axe parser] aide
Post by: SirCmpwn on May 27, 2010, 12:05:40 pm
Je pense que votre problème est ici:
Code: [Select]
:If I=1 or (I=3
: Pt-Off(A,B,Pic0
Pourquoi utilisez-vous Pt-Off (?

[Traduit de l'anglais, je m'excuse pour les erreurs]
Title: Re: [Axe parser] aide
Post by: kindermoumoute on May 27, 2010, 12:36:31 pm
Je l'ai enlevé (j'essayais de faire un pt-off à la place de clrdraw) et cela rend le même résultat :/
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on May 27, 2010, 01:32:37 pm
Je vais loader ça dans SourceCoder et puis Wabbitemu pour voir d'ou vient le problème

EDIT: Bon je vois le problème (je crois):

J'ignore comment le corriger, mais ton animation de sprite continue même quand tu ne bouges pas, ce qui fait que quand ça arrive sur l'image haut/bas, rien n'est affiché parce que la touche gauche ou droite doit être enfoncé pour que le sprite haut et bas s'affiche. En gros, quand la flèche gauche et droite ne sont pas pressées, le worm s'affiche seulement quand I=1 ou I=3, ce qui explique le clignotement.
Title: Re: [Axe parser] aide
Post by: kindermoumoute on May 27, 2010, 03:17:00 pm
Bon, j'ai résolu le problème, mais la j'en ai un nouveau :p, c'est pas tellement un problème.. mais j'aimerais que l'on m'explique :
Quand je fait marcher mon worm vers le coté droit et le coté gauche, il est bloqué par le mur, quand je saute vers le coté droit, il est bloqué par le mur, quand je saute vers le coté droit, il ressort de l'autre coté!
Est ce que en dessous de 0 (pixel parlant) il compte +XXX (grand nombre positif)?
Spoiler For Spoiler:
Code: [Select]
:.AXEWA
:[0000000000000000→Pic0
:[788CD4D4864B613E→Pic1
:.IMAGE NORMALGAUCHE
:[1E312B2B61D2867C→Pic4
:.IMAGE NORMALDROITE
:[78DCD484CA62211F→Pic2
:.IMAGE HAUTGAUCHE
:[1E3B2B21534684F8→Pic5
:.IMAGE HAUTDROITE
:[00788CD4D785493E→Pic3
:.IMAGE BASGAUCHE
:[001E312BEBA1927C→Pic6
:.IMAGE BASDROITE
:0→D
:0→S
:1→I
:2→T
:18→E
:44→X
:56→Y
:Repeat getKey(15)
: If E≥0 and (E≤17
: sub(J
:Else
: 1+I→I
: If I=5
: 1→I
:End
:End
:If I=1 or (I=3
:If S
: Pt-On(X,Y,Pic1)
:Else
:Pt-On(X,Y,Pic4
:End
:End
:If D=1
:If I=2
:If S
: Pt-On(X,Y,Pic2
:Else
:Pt-On(X,Y,Pic5
:End
:End
:If I=4
:If S
: Pt-On(X,Y,Pic3
:Else
:Pt-On(X,Y,Pic6
:End
:End
:0→D
:End
:DispGraph
:Pause 150
:If getKey
: sub(G
:End
:If T=0 or (T=1
: ClrDraw
:T+1→T
:End
:End
:
:Lbl J
:If E=0
: 4→I
:End
:If E=1
: 1→I
:End
:If E=2
: 2→I
:End
:If E≥3 and (E≤7
: Y-1→Y
:If S
: X-1→X
:Else
:X+1→X
:End
:End
:If E=8 or (E=9
:If S
: X-1→X
:Else
:X+1→X
:End
:End
:If E≥10 and (E≤14
: Y+1→Y
:If S
: X-1→X
:Else
:X+1→X
:End
:End
:If E=15
: 2→I
:End
:If E=16
: 1→I
:End
:If E=17
: 4→I
:End
:E+1→E
:Return
:
:Lbl G
:Return!If getKey(2) or getKey(3) or getKey(9)
:If getKey(2) or getKey(3)
: 1→D
:If getKey(2)
: X-1→X
:1→S
:End
:If getKey(3)
: X+1→X
:0→S
:End
:End
:If getKey(9)
: 0→E
:End
:If X=0
: 1→X
:End
:If X>88
: 88→X
:End
:0→T
:Return
Title: Re: [Axe parser] aide
Post by: ztrumpet on May 27, 2010, 04:33:11 pm
That's really nice!  Great job! ;D

C'est vraiment gentil! Beau travail! ;D
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on May 27, 2010, 11:03:15 pm
en dessous de 0, c'est 65535, 65534, 65533. Les nombres peuvent être entre 0 et 65535. Mais quand tu dépasse 65535 ça retourne à 0 et di tu vas en dessous de 0 ça retourne à 65535.

Si tu veux vérifier si ton worm essaie de sortir de l'écran par la gauche, il faut faire If X=65535:0->X au lieu de If X<0:0->X
Title: Re: [Axe parser] aide
Post by: kindermoumoute on May 28, 2010, 08:07:05 am
merci pour l'astuce x)

EDIT : est ce que l'on peut stocker plus de 10 images 8x8? (par exemple en utilisant GDB (j'ai rien comprit en faite à quoi cela servait))
et est ce que c'est possible de faire tourner une image? (par cran de 45° par exemple?)
Title: Re: [Axe parser] aide
Post by: kindermoumoute on May 28, 2010, 11:19:37 am
Nouveau problème!
J'ai lut et relut mon code.. à aucun endroit je n'ai manqué ou rajouté un End, et il me sort une erreur Block 98%
Spoiler For Spoiler:
Code: [Select]
:.AXEWA
:[0000000000000000→Pic0
:[788CD4D4864B613E→Pic1
:.IMAGE NORMALGAUCHE
:[1E312B2B61D2867C→Pic4
:.IMAGE NORMALDROITE
:[78DCD484CA62211F→Pic2
:.IMAGE HAUTGAUCHE
:[1E3B2B21534684F8→Pic5
:.IMAGE HAUTDROITE
:[00788CD4D785493E→Pic3
:.IMAGE BASGAUCHE
:[001E312BEBA1927C→Pic6
:.IMAGE BASDROITE
:0→S→Θ
:1→I→D
:2→T
:18→E
:20→F
:44→X
:56→Y
:Repeat getKey(15)
: If (E≥0 and (E≤17)) or (F≥0 and (F≤19))
: If F≥0 and (F≤19
: sub(K
:Else
: sub(J
:End
:Else
:sub(I
:End
:If I=1 or (I=3
:If S
: Pt-On(X,Y,Pic1)
:Else
:Pt-On(X,Y,Pic4
:End
:End
:!If D
: sub(D
:End
:DispGraph
:Pause 150
:If getKey
: sub(G
:End
:If T=0 or (T=1
: ClrDraw
:T+1→T
:End
:End
:
:Lbl I
:1+I→I
:If I=5
: 1→I
:Return
:
:Lbl D
:If I=2
:If S
: Pt-On(X,Y,Pic2
:Else
:Pt-On(X,Y,Pic5
:End
:End
:If I=4
:If S
: Pt-On(X,Y,Pic3
:Else
:Pt-On(X,Y,Pic6
:End
:End
:1→D
:Return
:
:Lbl J
:If E=0 or (E=17
: 4→I
:End
:If E=1 or (E=16
: 1→I
:End
:If E=2 or (E=15
: 2→I
:End
:If E≥3 and (E≤14
:If S
: X-1→X
:Else
:X+1→X
:End
:End
:If E≥3 and (E≤7
: Y-1→Y
:End
:If E≥10 and (E≤14
: Y+1→Y
:End
:E+1→E
:sub(V
:Return
:
:Lbl K
:If F=0 or (F=19
: 4→I
:End
:If F=1 or (F=18
: 1→I
:End
:If F=2 or (F=17
: 2→I
:End
:If F=4 or (F=6) or (F=8) or (F=10) or (F=12) or (F=14) or (F=16)
:If S
: X+1→X
:Else
:X-1→X
:End
:End
:If F≥3 and (F≤9
: Y-1→Y
:End
:If F≥10 and (F≤16
: Y+1→Y
:End
:F+1→F
:sub(V
:Return
:
:Lbl G
:Return!If getKey(2) or getKey(3) or getKey(9)
:If E=18 or (F=20
:If getKey(2) or getKey(3)
:If getKey(2)
: X-1→X
:1→S
:End
:If getKey(3)
: X+1→X
:0→S
:End
:End
:If getKey(9)
: Repeat Θ≥1
: If getKey(9)
: 2→Θ
:End
:Z+1→Z
:Pause 10
:If Z=50
: 1→Θ
:End
:End
:If Θ=2
: 0→F
:Else
:If E=18
: 0→E
:End
:0→Θ
:End
:End
:End
:sub(V
:Return
:
:Lbl V                                 .Il
:If X≤65535 and (X>65000               .l'indique
: 0→X                          .dans
:End                                  .cette                    .O_o
:If X>88 and (X<100                   .zone
: 88→X                         .environ
:End                                   .(jusqu'ici :p)
:0→T
:0→D
:Return


Ai-je trop de End??
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on May 28, 2010, 02:08:56 pm
Je ne sais pas si c'est le problème, mais manqueraut-il un End ici?

Code: [Select]
:
:Lbl I
:1+I→I
:If I=5
: 1→I
:Return
:
Pour répondre à ton autre question, il est impossible de faire tourner des sprites à présent, surtout pas autre chose que 90°. Et il est possible de stocker un nombre infini d'images tant que tu as de la mémoire pour faire tourner le jeu:

[0000000000000000->Pic1
[00000FFFFFF00000
FFFFFFFFFFFFFFFF
F0F0F0F0F0F0F0F0]

(bon c'est pas très joli comme sprite mais c'est juste une exemple ;D)

Pour afficher le Sprite 2, tu ferais Pt-On(X,Y,Pic1+8), pour le sprite 3, Pt-On(X,Y,Pic1+16), etc

Tu peux en mettre autant que tu veux en bas.

Il est même possible d'afficher une partie du premier sprite et une partie du 2eme sprite en même temps par exemple en faisant Pt-On(X,Y,Pic1+3).
Title: Re: [Axe parser] aide
Post by: kindermoumoute on May 28, 2010, 02:24:09 pm
Je ne sais pas si c'est le problème, mais manqueraut-il un End ici?

Code: [Select]
:
:Lbl I
:1+I→I
:If I=5
: 1→I
:Return
:
:o pas facile à voir (la fatigue surement  ??? )


Ou sinon pour les stripe je ne savait pas, c'était surement indiqué dans l'aide ^^.
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on May 28, 2010, 02:38:55 pm
C'est compréhensible car le code est très long ^^. Disons que des fois j'avais des prog de 15 Ko en BASIC et c'était assez pénible quand j'oubliait un End dans le milieu ;D

Pour les sprites, je ne sais pas si c'est dans la liste de commandes, mais je crois que c'est expliqué dans les pointeurs/addresses et la liste d'optimisation dans la doc. Pour la version finale d'Axe il serait bien que la communauté se mette ensemble pour faire des exemples d'utilisation de chaque commandes Axe pour les inclure avec la doc
Title: Re: [Axe parser] aide
Post by: kindermoumoute on May 31, 2010, 03:32:04 am
Juste une petite question.. est ce que pour les image au lieu de mettre pic1+8, Pic1+16..etc on pourrait mettre Pic1+X?
Title: Re: [Axe parser] aide
Post by: Silver Shadow on May 31, 2010, 08:12:29 am
Oui, c'est même recommendé pour que le programme soit plus petit. Par contre, comme tu utilises une variable à la place des constantes, le programme devient un peu plus lent, ce qui ne se remarque pratiquement pas, sauf pour du grayscale, et la encore, tout dépend de la quantité de calculs à faire pour afficher qqch sur l'écran.
Title: Re: [Axe parser] aide
Post by: kindermoumoute on June 02, 2010, 01:05:59 pm
plop, me revoilà avec un nouveau problème.. je voudrais créer un terrain pour mon worms, et la je me pose 2 questions :
- Est ce que il vaut mieux utiliser un pxl-test pour repérer le terrain pour le worms ou il y a d'autres possibilités (que je ne connaîtrais pas)
- Est ce que le système des pic1+X marcherait pour une image 95x63? et est ce que c'est possible d'insérer un code à peut près comme cela :
Spoiler For Spoiler:
Code: [Select]
:[151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554000000000000000000000000→Pic1
:[01010101010101
:Pic1→dispgraph
:pause 100
:Pic1+X→dispgraph
Ou encore :
Code: [Select]
:Asm(21369311298E010003EDB0CD6451C9151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554000000000000000000000000
End
0000
End)→Pic1
:Pic1→dispgraph
Ou c'est obligé de faire :
Code: [Select]
:[1515151515151515]→Pic1
:[15151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554000000000000000000000000
:pt-on(0,0,Pic1+0
:pt-on(8,0,Pic1+8
:pt-on(etc..
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on June 02, 2010, 01:19:40 pm
Est-ce que ton terrain a des pentes? Si c'est le cas, je crois qu'il faut utiliser le Pxl-Test. Sinon il y a un example quelque part pour les terrains carrés. Je vais essayer de le trouver et le modifier car je crois qu'il est pour des tilemaps compressés (16 tiles possibles max par carte) et non les tilemaps réguliers (256)
Title: Re: [Axe parser] aide
Post by: kindermoumoute on June 02, 2010, 01:22:41 pm
Oui c'est sur qu'il y aura des pentes sur mes terrain, mais il y aura aussi des terrains carrés, d'ailleurs si je veut enregistrer mes terrains dans des programmes tierce (map.8xp), comment je fait pour lire ce qu'il y a dedans en axe parser?
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on June 02, 2010, 01:31:44 pm
ok alors il faudra utiliser Pxl-test. Pour le stockage de maps, je ne connais pas les autres moyens à part stocker les maps directement dans des variables d'application. Peut-être que Silver Shadow ou bien quelqu'un sur le forum anglais (comme Builderboy) pourrait aider
Title: Re: [Axe parser] aide
Post by: kindermoumoute on June 03, 2010, 10:38:35 am
Bon, j'ai fait quelques recherches, et je suis arrivée à un résultat permettant de faire défiler un terrain de haut en bas.. seulement, je suis encore en train de chercher pour aller de droite à gauche :/

Code: [Select]
:.TEST2
:[151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA151515151515151515151514AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554AAAAAAAAAAAAAAAAAAAAAAAA515151515151515151515150AAAAAAAAAAAAAAAAAAAAAAAA555555555555555555555554000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF→Pic1
:0→X
:Repeat getKey(15)
:Pic1+X→DispGraph
:If getKey(4) and (X≠0
:X-12→X
:End
:If getKey(1)
:X+12→X
:End
:End
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on June 03, 2010, 05:22:09 pm
Mhmm, quelle est la taille de tes maps? (largeur * hauteur)

Malheureusement je ne comprends pas beaucoup le code :(
Title: Re: [Axe parser] aide
Post by: kindermoumoute on June 04, 2010, 09:07:04 am
Toute la deuxième ligne est tu code hexadecimal.
à la 5ème ligne (Pic1+X→DispGraph) le dispgraph va afficher l'héxadécimal en ligne de 12*8 pixel (Exemple : 15 15 15 15 15 15 15 15 15 15 15 14)
En faite je peut délimiter la hauteur (en rajoutant If getKey(1) and (X≠(nombreDeLigne*12)), mais pas la largeur :/ (c'est 95*infini :p)


EDIT : mon image que j'ai écrite en héxadecimal s'arrête à la fin des ligne noirs, la suite (ce qu'il y a en dessous) est en faite des reste de screen ou buffer tombé dans les oubliette (mais encore la) et qui revient à mon image au bout d'un moment.
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on June 04, 2010, 09:53:08 am
désolé je ne sais pas vraiment de solution à ton problème :(

je n'ai jamais utilisé des images comme ça pour les maps, juste des tilemaps fait de carreaux 8x8
Title: Re: [Axe parser] aide
Post by: kindermoumoute on June 04, 2010, 09:57:06 am
Justement en parlant des tilemaps de ça.. je ne pige que dalle au tuto (en anglais :/)
http://ourl.ca/4550
Est ce que quelqu'un peut me faire un rapide résumé.. en français =)
Title: Re: [Axe parser] aide
Post by: kindermoumoute on June 17, 2010, 01:00:47 pm
Ahhh je comprend rien à ce qu'il se passe.. plus de forum Axe Parser????
please help!
Title: Re: [Axe parser] aide
Post by: SirCmpwn on June 17, 2010, 01:15:35 pm
DJ Omnimaga voulait la version 0.3.0 de ne pas avoir les nouveaux jetons, alors il a supprimé le sous-forum Axe Parser. Traduit en français, son poste a écrit:
* Tous les sujets Axe deleeted jusqu'au commande jetons modifié pour revenir aux originaux *
Tous les sujets Axe supprimés jusqu'à ce que les jetons de commande modifié pour revenir aux originaux. Je ne veux pas un tel changement se produise. S'il n'est pas retiré dans 0.3.1 je suis supprimant l'ensemble du projet Axe sous-forum

Si quand je reviens ce soir, il n'ya pas de mises à jour ceci est mon dernier poste sur Omnimaga.

[Je ne parle pas français, j'ai utilisé Google Translate]
Title: Re: [Axe parser] aide
Post by: kindermoumoute on June 17, 2010, 04:26:01 pm
Ok.. je n'ai rien compris ^^, DJ omnimaga pourrait tu expliquer se qu'il s'est passé?
Title: Re: [Axe parser] aide
Post by: kindermoumoute on July 04, 2010, 06:03:29 am
Me revoilà pour de nouvelles questions.
La fonction commande Bitmap sert à quoi?
Title: Re: [Axe parser] aide
Post by: Quigibo on July 04, 2010, 06:07:13 am
Bitmap() est utilisé pour afficher des sprites qui ne sont pas 8x8. Il utilise la même technique que Pt-Off() mais il faut aussi spécifier la taille de l'image dans le cadre de ces données.
Title: Re: [Axe parser] aide
Post by: kindermoumoute on July 04, 2010, 06:11:53 am
mais il faut aussi spécifier la taille de l'image dans le cadre de ces données.
La je suit plus ^^, comment ça?
Title: Re: [Axe parser] aide
Post by: Silver Shadow on July 04, 2010, 06:25:53 am
En gros, il faut que tu spécifies la taille de l'image dans les paramètres de la commande Bitmap.
Title: Re: [Axe parser] aide
Post by: kindermoumoute on July 04, 2010, 06:27:51 am
Tu pourrait donner un exemple pour que je comprenne mieux?
Title: Re: [Axe parser] aide
Post by: Silver Shadow on July 04, 2010, 07:20:48 am
OK, dès que j'aurais la documentation sous la main...

En attendant, sache que c'est un truc du genre
Code: [Select]
Bitmap(adresse de l'image, largeur (en bytes), hauteur (en pixels)Bref, un truc qui ressemble à xLIB, si ça peut t'aider.
Title: Re: [Axe parser] aide
Post by: kindermoumoute on July 04, 2010, 09:16:34 am
Je n'utilise jamais xLib (je ne sais même pas en quoi ça consiste) :/
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on July 04, 2010, 06:49:21 pm
xLIB est un lib pour améliorer le language basic. Tu peux faire des trucs comme Reuben Quest (qui utilise Omnicalc) mais un peu plus rapide qu'Omnicalc.
Title: Re: [Axe parser] aide
Post by: kindermoumoute on July 05, 2010, 08:38:38 am
OK, mais ça ne m'aide pas à comprendre la commande "bitmap("  :/
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on July 05, 2010, 04:34:06 pm
désolé je n'ai jamais utilisé la commande Bitmap( :( (étant donné que c'est plus lent que afficher avec Pt-On un paquet de sprites 8x8 séparés pour en former un gros
Title: Re: [Axe parser] aide
Post by: Silver Shadow on July 06, 2010, 02:42:19 am
Là je suis vraiment occupé, je n'ai pratiquement pas de temps même pour aller sur Internet car je bosse dans un centre de loisirs pendant 2 semaines. Mais je vais essayer de t'aider ce weekend.
Title: Re: [Axe parser] aide
Post by: Quigibo on July 06, 2010, 03:23:34 am
Code: [Select]
.BITMAP

.Data(hauteur,largeur)→Pic
.[Sprite]

Data(8,8)→Pic1
[3C7EDBFFBDDB663C]

Bitmap(20,10,Pic1)
Title: Re: [Axe parser] aide
Post by: kindermoumoute on July 06, 2010, 04:44:51 am
OK! je croit avoir comprit =)

PS : j'ai jamais vu ma calculatrice vivre comme ça.. l'écran s'est animé au bout de quelques mouvements.. je vous laisse admirer c'est impressionnant :o

EDIT :
Quote
Data(hauteur,largeur)→Pic
Hauteur et largeur c'est en pixel?
Quote
Bitmap(20,10,Pic1)
20 et 10 c'est en pixel?
Title: Re: [Axe parser] aide
Post by: Quigibo on July 06, 2010, 05:31:55 am
De Google Translate:

J'ai oublié de mentionner, vous ne pouvez pas avoir l'image complètement en dehors de l'écran ou encore la calculatrice meurt. Je n'ai pas fait cette routine. C'est la faute des TI.

EDIT: Oui, en pixel.
Title: Re: [Axe parser] aide
Post by: kindermoumoute on July 06, 2010, 06:12:39 am
ok ^^ (pourtant ça marche presque :p)

EDIT : bon, je suis arrivé à un résultat, je vous détaille l'image :
C'est une image 100*100, au milieu apparaît les points X et Y (la bande en noir en bas fait partie de l'image)
Spoiler For Spoiler:
:.BITM
:∆List(100,100)→Pic1
:[575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575757575757575757557575757575757575757575755757575757575757575757575575757575FFFFFFFFFFFFFFFFFFFFFFFFFFFF]
:0→X→Y
:Repeat getKey(15)
:Text(30,20,X►Dec
:Text(30,30,Y►Dec
:Tangent(X,Y,Pic1)
:If getKey(3) and (X≠65532
:X-2→X
:End
:If getKey(2) and (X≠0
:X+2→X
:End
:If getKey(1) and (Y≠65504
:Y-2→Y
:End
:If getKey(4) and (Y≠0
:Y+2→Y
:End
:End
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on July 06, 2010, 12:26:45 pm
En d'autre mots, Casio c'est meilleur que TI ;D

Je plaisante, la routine a été fait par TI. En gros, si tes sprites vont souvent en dehors de l'écran, il faut vérifier avec des conditions If et ne pas les afficher lorsque en dehors (ou bien se conenter de Pt-Off/On/Change)

En passant, il y a un truc pour ne pas que les sprites s'affiche automatiquement à l'écran, mais seulement lorsqu'on fait un DispGraph: Fix 9. Par contre, ne pas oublier de faire Fix 8 avant de quitter le programme.
Title: Re: [Axe parser] aide
Post by: kindermoumoute on August 31, 2010, 08:50:50 am
Plop world,
Si j'ai bien compris, on peut enregistrer dans toutes les variables de la calculatrice, sauf dans une Pic?
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on August 31, 2010, 03:16:07 pm
Je ne me rapelle plus pour les pics. Il est possible par contre, maintenant, de stocker des trucs dans les variables TI-BASIC A à Z et Theta, Str0 a Str9, etc. Par contre je crois que pout A à Z, il y a un format spécial à utiliser, si je me rapelle bien.
Title: Re: [Axe parser] aide
Post by: kindermoumoute on August 31, 2010, 06:13:22 pm
C'est bien dommage.. car je voudrais créer une image à partir de mon programme Axe (ça je sais faire) et ensuite l'enregistrer dans une pic (peu pas faire) et à partir d'un autre programme Axe l'absorber (ça on peut faire).
Je m'oriente donc vers les autres variables, j'imagine qu'elles s'enregistrent tous comme on le fait avec une appsvar.
Title: Re: [Axe parser] aide
Post by: kindermoumoute on September 14, 2010, 03:42:47 pm
Petite demande, j'ai lut le tuto sur les tile map en anglais, puis j'ai traduit la page en entier, et le tout plusieurs fois, bon bref, je n'ai rien pigé ^^.
Est ce que quelqu'un pourrait me faire un bref résumé sur le tile mapping (et après je croit que j'aurais fait le tour des plus choses les plus compliqués).

Merci d'avance =)
Title: Re: [Axe parser] aide
Post by: kindermoumoute on September 15, 2010, 01:37:50 pm
autre chose, ne peut on pas modifier la valeur d'une pause avec une variable (sans freeze) :Pause X ?
Encore autre chose, comment utiliser la fonction input (donnez moi juste un exemple, car j'en suis au 10ème crash)?
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on September 22, 2010, 11:58:42 pm
Pour la commande Input, quelqu'un a posté dans le forum anglo comment l'utiliser. Il semblerait que la syntaxe soit input->VARIABLE. Par exemple: Input->A. Par contre, j'ignore si c'est exact. http://ourl.ca/7148/120324;topicseen#new
Title: Re: [Axe parser] aide
Post by: kindermoumoute on September 24, 2010, 02:26:10 am
j'ai vu, ça marche, mais le programme crash toujours à la fin.
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on September 24, 2010, 09:35:56 am
Bizzare, je me demande si le problème ne serait pas plutôt ailleurs dans le code?
Title: Re: [Axe parser] aide
Post by: kindermoumoute on September 24, 2010, 12:58:44 pm
Bizarre? pourtant il suffit de faire un programme avec marqué dedans "input" et ça crash à la fin.

Pour sinon pas d'idée pour :pause X?
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on September 24, 2010, 05:17:36 pm
Pause suivi d'un chiffre entre 0 et 65535 ça ajoute un délai au programme. Par exemple, Pause 20000 stoppera le programme pendant quelque secondes.

Pour input il va falloir que to post ton code source dans Bug Reports et dire que ça crash, pour que Quigibo puisse examiner le code.
Title: Re: [Axe parser] aide
Post by: kindermoumoute on September 25, 2010, 03:37:25 am
Pause suivi d'un chiffre entre 0 et 65535 ça ajoute un délai au programme. Par exemple, Pause 20000 stoppera le programme pendant quelque secondes.

Ça je sais mais n'est il pas possible de faire pause X en modifiant X dans le code?
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on September 25, 2010, 03:38:25 am
Oui c'est possible.

1000->X
Pause X

Title: Re: [Axe parser] aide
Post by: kindermoumoute on September 25, 2010, 06:46:56 am
Oui c'est possible.

1000->X
Pause X



Moi ça crash tout le temps.. d'ou la question ^^'
Tu y arrive vraiment?
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on September 25, 2010, 02:16:30 pm
Je m'inquiète pour ta TI, personellement. Ce n'est pas normal que ça fasse ça. As tu essayé juste avec ce code et rien d'autre? Si c'est le cas, fait un reset de toute la mémoire, supprime l'OS et renvoie-en une copie, et ensuite Axe Parser. Si ça ne marche pas, alors ta calculatrices est défectueuse :(

Sur ma TI-83 Plus ça marche parfaitement. Une pause d'environ 2 secondes
Title: Re: [Axe parser] aide
Post by: kindermoumoute on September 25, 2010, 03:16:52 pm
Hm.. j'ai bien regardé, et en faite c'est quand on met 0 à X pour Pause X que ça plante.
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on September 25, 2010, 03:43:32 pm
Oh... en fait le hic c'est que Pause 1000, par exemple, ça veut dire Pause 999. Axe est bizzare comme ça pour la commande pause. En gros, ça veux dire que si tu fais Pause 0, ça va faire Pause 65535. Une très longue pause x.x
Title: Re: [Axe parser] aide
Post by: kindermoumoute on September 25, 2010, 03:46:45 pm
:o autant pour moi! merci pour cette info ^^
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on September 25, 2010, 04:11:08 pm
Pas de problème ^^
Title: Re: [Axe parser] aide
Post by: alexvire on October 04, 2010, 11:25:32 am
Français:
Bonjour, je début avec l'Axe Parser depuis ce week-end. Mais ce langage est assez similaire au TI-BASIC donc je m'y rerouve un peux. Cependant je suis en train de programmer un jeu et j'ai quelques questions:

- Comment faire pour rappeler une image de dimension 95x63 (Pas un sprite.) sur le tampons, par exemple pour le menu du jeu ?
- Comment désactivé l'effet du Fix 3 qui inverse la couleur du texte de l'écran ?
- Comment ajouter des niveaux de gris ?
- Comment faire un nombre aléatoire ? (J'ai vu un truc avec rand^15 pour un nombre entre 0 et 15 mais je ne suis pas sûr.)
- Comment créer une Appvar ?

Merci d'avance.


English: (By Reverso.)
Hello, me at the beginning with the Axe Parser since this weekend. But this language is rather similar to the TI-BASIC thus I rerouve me to it one can. However I am scheduling(programming) a game(set,play) and I have some questions:

- How to call back(remind) an image of dimension 95x63 (no sprite.) on plugs, for example for the menu of the game(set,play)?
- How deactivated the effect of Fix 3 which inverts the color of the text of the screen?
- How to add levels of grey?
- How to make a random(unpredictable) number? (I saw a thing(trick) with rand^15 for a number between 0 and 15 but I am not safe(sure).)
- How to create Appvar?

Thank you in advance.
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on October 04, 2010, 02:24:37 pm
Salut et bienvenue sur le forum :)

-Pour appeler une image 96x64 sur le tampon, il faut au préalable qu'elle ait été stocké dans une image Pic (8xi) et que tu l'inclues dans ton programme lors de la compilation. Il est possible de juste mettre le code hexadécimal aussi mais c'est très pénible à lire. Pour inclure ton image, il faut que tu fasse [PICVAR]->PTR. Par exemple, si ton image est stocké dans Pic5 et que tu veux la stocker au pointeur GDB4, tu dois faire [Pic5]->GDB4. Dans ton code Axe, quand tu as de besoin de rappeler l'image dans la mémoire tampon, tu dois faire

Copy(GDB4,L6,768)

-Pour désactiver Fix 3, utilise Fix 2, qui fait l'inverse.
-Pour les niveaux de gris, il faut que dans tes sprites, le gris soit séparé de ton sprite et placé dans un nouveau, comme noir. En gros tu te retrouves avec 2 sprites. SI par exemple tu as un sprite avec une barre noire en haut et en bas et le reste en gris, le code hex pour le noir/blanc serait FF000000000000FF et celui du gris serait 00FFFFFFFFFFFF00. Comme tu as du constater il y a deux mémoires tampon pour l'écran: le buffer (L6) et le back-buffer (L3). Le sprite qui représente le noir et blanc va sur le buffer et celui qui représente le gris va sur le back-buffer. Pour afficher le tout à l'écran il faut faire DispGraphr au lieu de DispGraph. À noter que pour une bonne qualité de gris, il faut que DispGraphr soit exécuté au moins 25 fois par seconde.
-Pour la fonction Rand, tout simplement faire Rand->A, par exemple. Ça stocke une valeur de -32768 à 32767 dans la variable A.
-Par contre, pour les variables d'application je crois que je vais laisser quelqu'un d'autre répondre car j'ai eu beaucoup de misère avec ça (comme beaucoup de monde d'ailleurs incluant Kindermoumoute) ;D. Il semble que ce soit l'une des parties les plus compliquées d'Axe x.x
Title: Re: [Axe parser] aide
Post by: kindermoumoute on October 04, 2010, 02:37:01 pm
Moi aussi j'ai une question, mais purement théorique :
Est ce que les chaîne de caractères sont comptés comme des Datas?

EDIT : est ce qu'il y a une différence entre variable et pointeur, ou est ce que l'on peut faire :0=>Pic1 :Disp Pic1>Dec

PS : DJ, tu regarde tes messages privés, ou le mien a été perdu parmi d'autres (=D)?
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on October 04, 2010, 03:47:13 pm
Oh je n'avais pas vu le tien. J'en ai environ 3-4 par jour, des fois 20-25 x.x

Et les chaines sont comptés comme des datas. Chaque caractère prends un octet
Title: Re: [Axe parser] aide
Post by: alexvire on October 05, 2010, 11:23:33 am
Merci beaucoup pour tes réponses.
Title: Re: [Axe parser] aide
Post by: Kiligolo on October 11, 2010, 12:46:05 pm
Bonjour tout le monde!
Moi aussi je suis nouveau sur omnimaga. Je voudrais juste savoir quand la fonction input marchera parce que quand je l'utilise elle m'enregistre des symboles incompréhensibles...
Merci pour vos réponses! :)
Title: Re: [Axe parser] aide
Post by: kindermoumoute on October 11, 2010, 02:50:54 pm
tata, un coup de data et de getkey et le tour est joué, au début le code sera moche, mais au fur et à mesure ta fonction d'input s'améliorera et tu comprendra l'utilité de l'Axe Parser en plus ^^.

PS : moi ma fonction d'input elle fonctionnait =), c'est juste que j'obtenais un ram cleared après chaque utilisations.

PS2 : Au secours, kiligolo sur omnimaga!



Moi aussi j'ai une question sur l'Axe Parser, quel est le moyen le plus simple de jouer à un jeu/programme Axe Parser sur une TI-82stats (ou ti83), étant donné que cette calculatrice est la plus répandu en France, j'aimerais exporter un peu mes programmes (et tout les autres qui sont en Axe Parser sur ce forum).
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on October 11, 2010, 04:30:08 pm
Bienvenu sur le forum :D

J'ignore quand la fonction Input sera fonctionelle mais je crois que Quigibo la remplacera dans 1.00.

Pour porter un jeu Axe sur TI-82 Stats il faut le désassembler (j'ignore comment par contre ;D) et ensuite porter le code vers la TI-83/82 Stats à l'aide d'outils de programmation TI-83 ASM. Ce document (en anglais par contre) pourrait être utile http://www.ticalc.org/archives/files/fileinfo/369/36923.html
Title: Re: [Axe parser] aide
Post by: Kiligolo on October 12, 2010, 11:49:17 am
... heu... c'est gentil ;D
C'est quand que tu sort ton tuto sur l'axe kindermoumoute? Et si il est déjà sorti tu peux m'envoyer l'adresse stp?
(j'aimerais voir, comme par hasard, ton tuto sur la partie Data)
Title: Re: [Axe parser] aide
Post by: kindermoumoute on October 12, 2010, 11:50:21 am
A quand une solution concrète et facile? Est ce que ça a déjà été demandé ou je peut le demander dans les feature?
Title: Re: [Axe parser] aide
Post by: Kiligolo on October 12, 2010, 12:52:08 pm
Si tu as fini la partie sur les datas ça me va.
Tout de façon c'est bénef pour toi aussi puisque tu dis que tu veux une version de Calcul Mental 4.0 en axe. ;D
Title: Re: [Axe parser] aide
Post by: kindermoumoute on October 12, 2010, 01:43:35 pm
Je n'ai pas commencé les datas, mais je pense que ça vas être le plus long chapitre du tuto (car je doit expliquer le binaires et l’hexadécimal aussi), cependant, il faut que je me penche un peu plus sur les listes et les datas avant de pouvoir écrire leur fonctionnement.
Title: Re: [Axe parser] aide
Post by: Kiligolo on October 12, 2010, 01:46:04 pm
Je n'ai pas commencé les datas, mais je pense que ça vas être le plus long chapitre du tuto (car je doit expliquer le binaires et l’hexadécimal aussi), cependant, il faut que je me penche un peu plus sur les listes et les datas avant de pouvoir écrire leur fonctionnement.
Bon. Cela attendra alors.
Si tu as besoin de mon aide ou de mon témoignage pour quoi que se soit, dit le moi. ;)
Title: Re: [Axe parser] aide
Post by: kindermoumoute on October 12, 2010, 02:36:25 pm
Je suis en train de faire les conditions, boucles, getkey et j'imagine mettre un bonne exercice après ça. Les data ne sont pas pour aujourd'hui =)
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on October 12, 2010, 10:15:22 pm
Des exercices ce serait bien, ou même faire des paralelles avec des trucs de la vie de tous les jours pour expliquer certains trucs compliqués de 2 façons. Certaines personnes sont plus visuelles et apprennent mieux de cette façon.
Title: Re: [Axe parser] aide
Post by: Kiligolo on October 13, 2010, 02:27:44 pm
Des exercices ce serait bien, ou même faire des paralelles avec des trucs de la vie de tous les jours pour expliquer certains trucs compliqués de 2 façons. Certaines personnes sont plus visuelles et apprennent mieux de cette façon.
Oui mais en programmation...
Ah ça y est j'ai trouvé:
line(numéro de rue de départ, rue de départ,numéro de rue d'arrivée, rue d'arrivée
Title: Re: [Axe parser] aide
Post by: kindermoumoute on October 13, 2010, 03:13:34 pm
Non, mais par exemple pour les conditions, j'utilise un schéma de cercle qui s'entrecroisent.
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on October 13, 2010, 03:37:00 pm
Des exercices ce serait bien, ou même faire des paralelles avec des trucs de la vie de tous les jours pour expliquer certains trucs compliqués de 2 façons. Certaines personnes sont plus visuelles et apprennent mieux de cette façon.
Oui mais en programmation...
Ah ça y est j'ai trouvé:
line(numéro de rue de départ, rue de départ,numéro de rue d'arrivée, rue d'arrivée
Je veux dire quelque chose comme Hot Dog's z80 assembly for the absolute beginner guide, mais pour Axe
Title: Re: [Axe parser] aide
Post by: kindermoumoute on October 15, 2010, 04:03:17 pm
J'ai un petit problème pour l'affichage du texte en même temps que du grayscale, je m'explique : quand j'affiche du texte et que je veut afficher des tiles en 3 niveaux de gris en même temps, je fait à peut près ce code :
Text(X,Y,MONTEXTE)
repeat getKey(9)
Pt....
DispGraphr
End

le texte n'apparaît qu'un cours instant. :/
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on October 15, 2010, 05:40:07 pm
Oh le texte apparait instantanément par défault. Au début de ton prog, fait un Fix 5. MAIS n'oublie pas de faire Fix 4 avant de sortir de ton programme. Le même problème se produit avec xLIB, Omnicalc, Celtic III et tous ces trucs en BASIC.
Title: Re: [Axe parser] aide
Post by: kindermoumoute on October 16, 2010, 05:50:42 pm
ça marche, merci ^^

EDIT : une autre question, est ce qu'il y a moyen de savoir combien prend chaque commande de l'axe parser dans l’exécutable d'un programme?
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on October 17, 2010, 04:06:18 am
Malheureusement non. Il faudrait que Quigibo fasse une liste, mais il serait obligé d'attendre à la fin car la taille des commandes peut changer d'ici là.
Title: Re: [Axe parser] aide
Post by: alexvire on October 17, 2010, 09:23:34 am
Bonjour, me revoilà.
J'ai assez avancé dans mon programme Axe Parser, je bloque maintenant à la création de l'application. En source j'ai ce code là:

Code: [Select]
.Appvar
"vAlexHS"{->}Str1
UnArchive Str1
!If GetCalc(Str1){->}A
 GetCalc(Str1,1){->}A
 0{->}{A}r
End

Je mets bien le "v" en faisant [2nde] + [8], et pourtant quand je compile l'application Axe Parser plante à la fin quand la première et la deuxième phase sont terminées. (Je dois enlever une pile puis la remettre et j'ai un "RAM cleared"...)

Pourtant quand je le fais sur un émulateur ça fonctionne, qu'est ce qui se passe, comment créer l'application ?
Title: Re: [Axe parser] aide
Post by: kindermoumoute on October 17, 2010, 09:33:48 am
Change l'application d'Axe Parser qui est sur ta calculatrice, si tu n'a pas de message d'erreur, regarde si d'autres on eu le même problème, si ton problème persiste, il y a une section bug report (il faut reporter le bug en anglais).
Title: Re: [Axe parser] aide
Post by: alexvire on October 17, 2010, 09:36:11 am
Ok, je vais la remplacer.

Edit: C'est bon ça marche, merci.
Title: Re: [Axe parser] aide
Post by: alexvire on October 17, 2010, 01:47:28 pm
Bon maintenant qu'elle est crée tu sais comment entrer une valeur dedans et l'afficher ?
Et aussi comment ajouter du texte sur le tampon ?
Title: Re: [Axe parser] aide
Post by: kindermoumoute on October 17, 2010, 02:10:02 pm
http://ourl.ca/7374

Regarde en bas il y a un lien pour le tuto hors ligne (partie mon premier programme ).
Title: Re: [Axe parser] aide
Post by: alexvire on October 18, 2010, 02:01:17 pm
C'est précisé où dans ton tutoriel les appvars ?

Car en fait j'arrive à la créer, ensuite les records ça fonctionne bien, quand je quitte et que je reviens ils sont encores là mais quand je lance un programme ASM ils sont changeaient par d'autres valeurs. J'imagine donc qu'ils ne sont pas stokés dans l'appvar mais dans la RAM que d'autres programmes ASM utilisent.
Title: Re: [Axe parser] aide
Post by: kindermoumoute on October 18, 2010, 02:09:17 pm
Je n'est pas commencé le chapitre sur les appvars, mais tu comment afficher du texte, et dans le tampon c'est via un Fix 5.
Title: Re: [Axe parser] aide
Post by: alexvire on October 23, 2010, 09:41:48 am
Salut j'ai un problème, j'ai compilé mon programme sous forme d'une application, je l'envoi sur mon ordinateur via Ti Connect mais quand d'autres personnes l'envois sur leur calculatrice elle n'apparaît pas dans le menu ni dans la mémoire, une idée ?
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on October 23, 2010, 01:19:50 pm
Il faut signer l'application. Dans les dossiers inclus avec Axe, il y a un outil pour le faire. Il se nomme Rabbitsign. Par contre c'est via la console de commande windows, donc bonne chance x.x.

Au fait, c'est quoi tes jeux en question? Est-ce que tu vas les montrer ici aussi? :D
Title: Re: [Axe parser] aide
Post by: alexvire on October 23, 2010, 02:06:29 pm
Merci, j'ai résolu le problème.

J'ai présenté mon application ici (http://espace-ti.forumactif.com/applications-f16/alexpack-pack-de-deux-mini-jeux-t124.htm).
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on October 23, 2010, 02:15:46 pm
Ah ok ^^. Le programme m'a l'air très cool, je vais probablement l'essayer dans pas long :D
Title: Re: [Axe parser] aide
Post by: kindermoumoute on November 01, 2010, 01:09:20 pm
Combien de caractères peut-on mettre dans un label :Lbl XXXXX?

How much letter can we put in a label :Lbl XXXXX ?
Title: Re: [Axe parser] aide
Post by: Kiligolo on November 01, 2010, 03:55:49 pm
Pour une fonction? C'est 3 maximum.
Title: Re: [Axe parser] aide
Post by: kindermoumoute on November 01, 2010, 04:14:42 pm
Pour une fonction? C'est 3 maximum.

C'est ce que je pensais, mais je n'étais pas sur.

EDIT : mon petit doigt me dit que tu viens de rentrer de vacance Kiligolo  ;D
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on November 01, 2010, 04:21:08 pm
J'avais remarqué que vous deux étaient moins souvent sur les forums depuis une semaine. ;D C'est vrai que c'était un peu la même chose avec d'autres ici depuis quelque temps par contre, étant donné les examens X.x

Title: Re: [Axe parser] aide
Post by: kindermoumoute on November 01, 2010, 04:56:41 pm
Moi absent ? J'étais juste en train d'avancer mon tutoriel :P (presque fini la première partie !).

PS : Aujourd'hui j'étais pas trop présent... j'avais un DM de math à faire  :D
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on November 01, 2010, 06:24:13 pm
Aah ok ^^
Title: Re: [Axe parser] aide
Post by: Kiligolo on November 02, 2010, 12:16:06 pm
EDIT : mon petit doigt me dit que tu viens de rentrer de vacance Kiligolo  ;D
Et le mien dit que tu as raison. ;D
A Berlin: et voici une photo des deux seules photos que j'ai prise.
(http://img210.imageshack.us/img210/3623/301020101040.th.jpg) (http://img210.imageshack.us/i/301020101040.jpg/)
Title: Re: [Axe parser] aide
Post by: Kiligolo on November 02, 2010, 12:57:23 pm
C'est quoi l'erreur duplicate?
URGENT: Mon père arrive dans 10 minutes! %)

EDIT: Non c'est bon. Mais on ne peut pas utiliser des chaines?
Title: Re: [Axe parser] aide
Post by: Kiligolo on November 02, 2010, 03:51:46 pm
Est-ce que l'on peux faire quelque chose comme ça?:
Code: [Select]
Text(X,Y,"MON TEXTE 1",A,"MON TEXTE 2")
Spoiler For English:
Can I do something like that?:
Code: [Select]
Text(X,Y,"MON TEXTE 1",A,"MON TEXTE 2")
Title: Re: [Axe parser] aide
Post by: kindermoumoute on November 02, 2010, 05:29:11 pm
Oui, tu n'a qu'à essayer.
Title: Re: [Axe parser] aide
Post by: Kiligolo on November 03, 2010, 03:34:53 am
Vague de questions: ;D
Est-ce que l'on peut utiliser les listes genre :
Code: [Select]
L6(2)→A
Les pixels de l'écran ça commence à 0 ou à 1?

Comment fait-on pour avoir un écriture à 8 pixels de haut avec la fonction texte? (J'ai entendu parler du fix mais je ne sais pas lequel :P)

Les pixels de output ça commence où (0 ou 1)?
Title: Re: [Axe parser] aide
Post by: kindermoumoute on November 03, 2010, 11:35:56 am
Est-ce que l'on peut utiliser les listes genre :
Code: [Select]
L6(2)→A

Nope, c'est {L6+X}→A pour la syntaxe.
Les pixels de l'écran ça commence à 0 ou à 1?

0, tu n'a qu'à essayer.

Comment fait-on pour avoir un écriture à 8 pixels de haut avec la fonction texte? (J'ai entendu parler du fix mais je ne sais pas lequel :P)
Fix 1, mais avant de quitter ton programme, n'oublie pas de remettre Fix 0.

Les pixels de output ça commence où (0 ou 1)?
0, tu n'a qu'à essayer.
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on November 03, 2010, 11:52:06 am
À noter que les listes en Axe n'existent pas vraiment en tant que liste. Il s'agit d'une série de chiffres/nombres que tu stocke dans la mémoire de la RAM à un endroit spécifique (pointeur ou addresse de mémoire). Mais ça ressemble à des liste et il est possible de les utiliser un peu comme on fait en BASIC avec une syntaxe différente. Ta mémoire RAM est un peu comme une liste de 32768 nombres de 0 à 255. :P

Et effectivement c'est à 0,0 que le texte commence. À noter que contrairement au BASIC, c'est Text(X,Y,"Texte") et non Text(Y,X,"Texte").
Title: Re: [Axe parser] aide
Post by: kindermoumoute on November 03, 2010, 12:03:35 pm
À noter que contrairement au BASIC, c'est Text(X,Y,"Texte") et non Text(Y,X,"Texte").
Je n'avais pas remarqué, mais c'est beaucoup plus logique ;D
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on November 03, 2010, 12:08:05 pm
Effectivement. En BASIC on se mélange avec les coordonés qui sont inversées dans certaines commandes mais pas dans d'autres. Tant qu'à en inverser juste une partie, aussi bien de rien n'inverser ou d'inverser le tout. De toute façon dans la plupart des langages, c'est X,Y, même en Casio-BASIC.
Title: Re: [Axe parser] aide
Post by: kindermoumoute on November 03, 2010, 03:36:54 pm
Je voulais être sûr d'un truc :
Quand on a une chaîne de caractère qui est pointé, le pointeur indique le début de la chaîne et le nombre de caractère qu'elle contient ?

PS for english : I wanted to be sure of a thing:
When you have a string that is pointed, the pointer indicates the beginning of the chain and the number of characters in it?
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on November 04, 2010, 02:51:15 am
Seulement le début. Pour savoir la longueur je crois qu'il faut vérifier où est le zéro après la chaine et soustraire la position du 0, qui est un délimiteur, et le début de la chaine, et ça te donne la longeur.
Title: Re: [Axe parser] aide
Post by: Kiligolo on November 04, 2010, 04:04:08 am
Est-ce que l'on peut utiliser les listes genre :
Code: [Select]
L6(2)→A

Nope, c'est {L6+X}→A pour la syntaxe.
Les pixels de l'écran ça commence à 0 ou à 1?

0, tu n'a qu'à essayer.

Comment fait-on pour avoir un écriture à 8 pixels de haut avec la fonction texte? (J'ai entendu parler du fix mais je ne sais pas lequel :P)
Fix 1, mais avant de quitter ton programme, n'oublie pas de remettre Fix 0.

Les pixels de output ça commence où (0 ou 1)?
0, tu n'a qu'à essayer.
Merci.
Title: Re: [Axe parser] aide
Post by: kindermoumoute on November 04, 2010, 02:02:37 pm
Seulement le début. Pour savoir la longueur je crois qu'il faut vérifier où est le zéro après la chaine et soustraire la position du 0, qui est un délimiteur, et le début de la chaine, et ça te donne la longeur.
Ce que je cherche à savoir, c'est quand on a notre chaîne "hello world"=>Str1, dans notre mémoire on aura à peut près cela :

Puis on fait Str1+6 :
Le 0 est-t-il déplacé ? et est ce qu'il a vraiment un octet à lui tout seul ?

EDIT : Deuxième possibilité, Str1 va pointer le début des adresses (voir toutes) puis va ensuite indiqué que c'est la fin (dans les information du pointeur) :
Title: Re: [Axe parser] aide
Post by: Kiligolo on November 04, 2010, 02:25:02 pm
Je suis désolé de t'interrompre kinder mais comment la calculatrice reconnait une sprite noir/blanc et une sprite avec des niveaux de gris? Parce que c'est le même hexadécimal... :P
Title: Re: [Axe parser] aide
Post by: kindermoumoute on November 04, 2010, 03:51:02 pm
Une sprite avec 3 niveaux de gris est composé de 2 sprites 8*8 en hexadecimal. Une sera affiché dans le buffer (en noir), l'autre dans le back-buffer (en gris), et tout pixel non défini dans les deux sprites sera par conséquence en blanc.
Title: Re: [Axe parser] aide
Post by: Kiligolo on November 04, 2010, 04:19:21 pm
Un truc dans ce genre?:
Code: [Select]
[LE NOIR ET BLANC][LE GRIS]->Pic1
.ou
[LE NOIR ET BLANC]
[LE GRIS]->Pic1
Et ça marche pour les 16*16 pixels?

Et comment je fais pour afficher des sprites de 16*16 pixels? Parce que moi je ne peux qu'afficher les 8*8 pixels en haut à gauche de la sprite 16*16...

Merci beaucoup pour tes réponses. Au lieu de refaire la version BASIC actuelle, je fais une autre version en Axe. Qui se développera par elle même. ;)
Title: Re: [Axe parser] aide
Post by: kindermoumoute on November 04, 2010, 05:17:32 pm
[LA NOIR]=>Pic1
[LA GRISE]=>Pic2

pour faire une tile 16*16, bas tu n'a pas d'autre choix que de prendre 4 tiles 8*8 (fait un peu de recherche en essayant sur ta calto, je suis sûr que tu peux y arriver sans aide à partir de là ;) ).
Title: Re: [Axe parser] aide
Post by: Kiligolo on November 05, 2010, 06:30:35 am
Donc:
Code: (Axe) [Select]
.MONPROG
[LENOIR1]=>Pic1
[LENOIR2]=>Pic2
[LENOIR3]=>Pic3
[LENOIR4]=>Pic4
[LEGRIS1]=>Pic5
[LEGRIS2]=>Pic6
[LEGRIS3]=>Pic7
[LEGRIS4]=>Pic8
Pt-On(X1,Y1,Pic1)
Pt-On(X2,Y2,Pic2)
Pt-On(X3,Y3,Pic3)
Pt-On(X4,Y4,Pic4)
DispGraph
Pt-On(X1,Y1,Pic5)
Pt-On(X2,Y2,Pic6)
Pt-On(X3,Y3,Pic7)
Pt-On(X4,Y4,Pic8)
DispGraphr
Title: Re: [Axe parser] aide
Post by: Kiligolo on November 05, 2010, 07:06:54 am
Ou j'ai testé:
Code: (Axe) [Select]
.MONPROG
[LENOIR1]=>Pic1
[LENOIR2]=>Pic2
[LENOIR3]=>Pic3
[LENOIR4]=>Pic4
[LEGRIS1]=>Pic5
[LEGRIS2]=>Pic6
[LEGRIS3]=>Pic7
[LEGRIS4]=>Pic8
Pt-On(X1,Y1,Pic1)
Pt-On(X2,Y2,Pic2)
Pt-On(X3,Y3,Pic3)
Pt-On(X4,Y4,Pic4)
Pt-On(X1,Y1,Pic5)r
Pt-On(X2,Y2,Pic6)r
Pt-On(X3,Y3,Pic7)r
Pt-On(X4,Y4,Pic8)r
DispGraph
DispGraphr
Mais ça ne marche pas :(
Title: Re: [Axe parser] aide
Post by: kindermoumoute on November 05, 2010, 11:25:29 am
En faite ton erreur est juste au niveau du dispGraph.
Le DispGraph classique va afficher le buffer. Le DispGraphr va afficher le buffer et le backbuffer successivement (d'ou l'apparition à l'oeil nu de plusieurs niveaux de gris).

Tu n'a besoin que d'un Dispgraph, ici le DispGraphr.
Title: Re: [Axe parser] aide
Post by: Kiligolo on November 05, 2010, 02:28:47 pm
Ok merci. :D
Title: Re: [Axe parser] aide
Post by: Kiligolo on November 05, 2010, 03:26:00 pm
Mais comment fait-on pour mettre une sprite dans le back buffer?
Tu m'avais dis storePic mais... ^^' voilà.
J'ai entendu parler (ou j'ai vu écrit... ;D) de:
Code: (Axe) [Select]
Pt-On(X,Y,Pic12)rJe ne sais pas si il y a un inconvénient par rapport à StorePic ou ce que cela fait vraiment :P . Merci.

EDIT: Mais c'est bon si j'utilise ça?
Code: (Axe) [Select]
Pt-On(64,0,Pic11)
Pt-On(72,0,Pic12)
Pt-On(64,8,Pic13)
Pt-On(72,8,Pic14)
StorePic
Pt-On(80,0,Pic08)
Pt-On(80,8,Pic09)
Pt-On(88,8,Pic10)
StorePic
...
DispGraphr
Title: Re: [Axe parser] aide
Post by: kindermoumoute on November 05, 2010, 06:31:59 pm
--' le petit r se trouve de mémoire dans le menu angle : 2nd+apps.
C'est la commande qu'il faut utiliser pour mettre la sprite dans le back-buffer.

PS : Kiligolo, stop un peu le flood s'il te plaît (c'est à dire ne répond pas à ce message si c'est pour me dire "OK, j'arrête le flood"), je vais devoir up mon post parce qu'il est sur la page précédent, et j'ai vraiment besoin de savoir ces aspect théorique (DJ si tu pouvais jeter un coup d'oeil).
Donc le up :
Spoiler For up:
Seulement le début. Pour savoir la longueur je crois qu'il faut vérifier où est le zéro après la chaine et soustraire la position du 0, qui est un délimiteur, et le début de la chaine, et ça te donne la longeur.
Ce que je cherche à savoir, c'est quand on a notre chaîne "hello world"=>Str1, dans notre mémoire on aura à peut près cela :
  • H
  • e
  • l
  • l
  • o
  • w
  • o
  • r
  • l
  • d
  • 0

Puis on fait Str1+6 :
  • w
  • o
  • r
  • l
  • d
  • X
  • X
  • X
  • X
  • X
  • X
  • 0
Le 0 est-t-il déplacé ? et est ce qu'il a vraiment un octet à lui tout seul ?

EDIT : Deuxième possibilité, Str1 va pointer le début des adresses (voir toutes) puis va ensuite indiqué que c'est la fin (dans les information du pointeur) :
  • Str1=>H
  • Str1=>e
  • Str1=>l
  • Str1=>l
  • Str1=>o
  • Str1=>
  • Str1=>w
  • Str1=>o
  • Str1=>r
  • Str1=>l
  • Str1=>d
  • 0
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on November 05, 2010, 06:38:04 pm
(en passant, sur Omnimaga il est interdit de poster 2 fois de suite dans le même topic en dessous de 6 heures (sauf les projets) si personne n'a répondu entre les 2 messages. Il faut éditer le 1er message ;) )

Pour ta question, le 0 reste à Str1+11.
Title: Re: [Axe parser] aide
Post by: kindermoumoute on November 05, 2010, 06:43:47 pm
OK, je vient de tester, et j'ai comprit !
Le code :
Code: [Select]
"plop "
"world"=>Str1
Disp Str-5

affiche "plop world"

Merci et bonne nuit.
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on November 05, 2010, 08:48:33 pm
Cool :D
Title: Re: [Axe parser] aide
Post by: alexvire on November 06, 2010, 06:57:04 am
Salut, est-il possible de créer une liste ou une matrice ? Si oui comment ?
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on November 07, 2010, 12:56:15 am
Salut, est-il possible de créer une liste ou une matrice ? Si oui comment ?
http://ourl.ca/4881/136146
Title: Re: [Axe parser] aide
Post by: kindermoumoute on November 07, 2010, 02:16:49 pm
Est ce que c'est normal que maintenant (dans la version 0.4.5 seulement), lors de la compilation le code suivant ne soit pas compilé (plante) :
Code: [Select]
:!If EXP1
:.Code
:ElseIf EXP2
:.Code
:End

Je suis obligé de faire :
Code: [Select]
:If EXP1=0
:.Code
:ElseIf EXP2
:.Code
:End

???
Title: Re: [Axe parser] aide
Post by: Kiligolo on November 07, 2010, 03:15:40 pm
Est ce que c'est normal que maintenant (dans la version 0.4.5 seulement), lors de la compilation le code suivant ne soit pas compilé (plante) :
Code: [Select]
:!If EXP1
:.Code
:ElseIf EXP2
:.Code
:End

Je suis obligé de faire :
Code: [Select]
:If EXP1=0
:.Code
:ElseIf EXP2
:.Code
:End

???
Utilise la 4.4 ! %)
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on November 07, 2010, 04:32:33 pm
Je crois que ce n'est pas normal, mais il faudrait rapporter ce bug à Quigibo dans le topic Bug Reports.
Title: Re: [Axe parser] aide
Post by: Metallica on November 09, 2010, 12:14:42 pm
Hello tout le monde !

Voilà mon code:
Code: [Select]
:.PERSO
:
:.DATA
:[{sprite du perso}]→Pic1
:[{sprite du mur}]→Pic2
:
:Lbl A
1→M+31→Y+15→X
:Repeat getKey(15)
:If getKey(2)
:sub(COG)
:ClrDraw
:End
:If getKey(3)
:sub(COD)
:ClrDraw
:End
:If getKey(1)
:sub(COB)
:ClrDraw
:End
:If getKey(4)
:sub(COH)
:ClrDraw
:End
:sub(MAP)
:Pt-On(X,Y,Pic1+(E*8))
:DispGraphr
:End
:Goto Z
:Lbl MAP
:If M=1
:For(A,0,11)
:Pt-On(A*8,0,Pic2)
:If (A≠4) and (A≠5)
:Pt-On(A*8,56,Pic2)
:End
:End
:For(A,1,7)
:Pt-On(0,A*8,Pic2)
:Pt-On(88,A*8,Pic2)
:End
:End
:Return
:Lbl COG
:0→B
:For(A,0,7)
:!If Pxl-Test(X-1,Y+A)
:B+1→B
:If B=8
:X-1→X
:End
:End
:End
:Return
:Lbl COD
:0→B
:For(A,0,7)
:!If Pxl-Test(X+9,Y+A)
:B+1→B
:If B=8
:X+1→X
:End
:End
:End
:Return
:Lbl COB
:0→B
:For(A,0,7)
:!If Pxl-Test(X+A,Y+9)
:B+1→B
:If B=8
:Y+1→Y
:End
:End
:End
:Return
:Lbl COH
:0→B
:For(A,0,7)
:!If Pxl-Test(X+A,Y-1)
:B+1→B
:If B=8
:Y-1→Y
:End
:End
:End
:Return
:Lbl Z
:ClrDraw
:ClrDrawr
:DispGraph

Le problème c'est que le personnage passe à travers les sprites malgré les pxl-test lorsque je déplace le personnage en diagonale (uniquement par en haut et en bas). Comment corriger ce problème ?
Title: Re: [Axe parser] aide
Post by: kindermoumoute on November 09, 2010, 01:07:54 pm
 ??? Perso je n'ai pas le courage de lire un code comme ça  :-\.
Si ton programme cherche à déplacer un personnage en fonction d'une map, je suis déjà en train d'expliquer cela à Kiligolo ici (http://tibank.forumactif.com/programmation-f8/aideprogrammes-en-axe-parser-t6045-30.htm). (Cette fois c'est lui qui pourrait t'expliquer  ;D)

Je suis en train de commencer la rédaction sur les chapitres Data (il y en aura 2) dans mon tutoriel. Au mieux ce sera en ligne avant la fin de l'année. Au pire jamais. :P
Le problème c'est le temps, je ne trouve pas beaucoup de temps pour faire tout ce que j'ai envie, donc j'essaye de consacrer une grande partie au turoriel, en espérant ne pas trop vous faire attendre  :P.
Title: Re: [Axe parser] aide
Post by: Metallica on November 09, 2010, 01:28:43 pm
J'arrive à déplacer le personnage mais le problème vient des collisions. Dans le code que j'ai posté, il faut regarder vers Lbl COG jusqu'au Lbl COH. J'aimerais savoir ce qui ne va pas et qu'il faut changer.
Title: Re: [Axe parser] aide
Post by: Kiligolo on November 09, 2010, 01:50:24 pm
Conseil: aère tes codes.
Title: Re: [Axe parser] aide
Post by: kindermoumoute on November 09, 2010, 02:32:17 pm
Juste pour te prévenir : les code dans un spoiler c'est incompatible chrome et chromium.

Pour ton code je vais faire en plusieurs étapes, d'abord on aère et on commente :
Code: [Select]
:.PERSO
:
:.DATA
:[{sprite du perso}]→Pic1
:[{sprite du mur}]→Pic2
:
:Lbl A
:.M=1, Y=32, X=47, E=?
:1→M+31→Y+15→X
:
:.Boucle principale
:Repeat getKey(15)
:If getKey(2)
:sub(COG)
:ClrDraw
:End
:
:If getKey(3)
:sub(COD)
:ClrDraw
:End
:
:If getKey(1)
:sub(COB)
:ClrDraw
:End
:
:If getKey(4)
:sub(COH)
:ClrDraw
:End
:
:sub(MAP)
:
:Pt-On(X,Y,E*8+Pic1)
:
:.On affiche 3 niveaux de gris ?
:DispGraphr
:
:End
:Goto Z
:
:Lbl MAP
:If M=1
:For(A,0,11)
:Pt-On(A*8,0,Pic2)
:If (A≠4) and (A≠5)
:Pt-On(A*8,56,Pic2)
:End
:End
:For(A,1,7)
:Pt-On(0,A*8,Pic2)
:Pt-On(88,A*8,Pic2)
:End
:End
:Return
:
:.Déplacement à gauche ?
:Lbl COG
:0→B
:For(A,0,7)
:!If Pxl-Test(X-1,Y+A)
:B+1→B
:If B=8
:X-1→X
:End
:End
:End
:Return
:
:.Déplacement à droite ?
:Lbl COD
:0→B
:For(A,0,7)
:!If Pxl-Test(X+9,Y+A)
:B+1→B
:If B=8
:X+1→X
:End
:End
:End
:Return
:
:.Déplacement en bas ?
:Lbl COB
:0→B
:For(A,0,7)
:!If Pxl-Test(X+A,Y+9)
:B+1→B
:If B=8
:Y+1→Y
:End
:End
:End
:Return
:
:.Déplacement en haut ?
:Lbl COH
:0→B
:For(A,0,7)
:!If Pxl-Test(X+A,Y-1)
:B+1→B
:If B=8
:Y-1→Y
:End
:End
:End
:Return
:
:.La fin du programme
:Lbl Z
:ClrDraw
:ClrDrawr
:DispGraph
:.Pourquoi DispGraph ici ?

Je te laisse m'expliquer les endroits ou il y a des points d'interrogations.

Je simplifie ton code pour une meilleur lecture :
Code: [Select]
:.PERSO
:
:.DATA
:[{sprite du perso}]→Pic1
:[{sprite du mur}]→Pic2
:
:Lbl A
:.M=1, Y=32, X=47
:1→M+31→Y+15→X
:
:.Boucle principale
:Repeat getKey(15)
:If getKey(2)
:sub(COG)
:sub(CLR)
:ElseIf getKey(3)
:sub(COD)
:sub(CLR)
:ElseIf getKey(1)
:sub(COB)
:sub(CLR)
:ElseIf getKey(4)
:sub(COH)
:sub(CLR)
:End
:
:sub(MAP)
:
:Pt-On(X,Y,Pic1)
:.Tu n'a qu'une sprite perso, alors je ne comprend pas le "+(E*8)"
:
:DispGraph
:
:End
:.La fin du programme
:ClrDraw
:Return
:
:Lbl CLR
:ClrDraw
:Return
:
:Lbl MAP
:If M=1
:For(A,0,11)
:Pt-On(A*8,0,Pic2)
:If (A≠4) and (A≠5)
:Pt-On(A*8,56,Pic2)
:End
:End
:For(A,1,7)
:Pt-On(0,A*8,Pic2)
:Pt-On(88,A*8,Pic2)
:End
:End
:Return
:
:.Déplacement à gauche ?
:Lbl COG
:sub(CO,X,-1,A,-1)
:Return
:
:.Déplacement à droite ?
:Lbl COD
:sub(CO,X,9,A,1)
:Return
:
:.Déplacement en bas ?
:Lbl COB
:sub(CO,Y,A,9,1)
:Return
:
:.Déplacement en haut ?
:Lbl COH
:sub(CO,Y,A,-1,-1)
:Return
:
:Lbl CO
:0→B
:For(A,0,7)
:!If Pxl-Test(X+r2,Y+r3)
:B+1→B
:If B=8
:r1+r4→r1
:End
:End
:End

Et c'est seulement maintenant que je vois "la chose" :o

Donc ton programme affiche des murs sur les bord, tu veux déplacer ton joueur de façon à ce qu'il s'arrête devant un mur (c'est un peu ça en gros, mais si tu avait caché des fonctions dans ton code, tu trouvera surement comment l'adapter).

Je te proposerai ce code qui va être plus facile à comprendre pour toi :
Code: [Select]
:.PERSO
:
:.DATA
:[{sprite du perso}]→Pic1
:[{sprite du mur}]→Pic2
:
:Lbl A
:1→M→Y→X
:
:.Boucle principale
:Repeat getKey(15)
:(getKey(3) and (X<11))-(getKey(2) and (X>1))+X→X
:(getKey(4) and (Y<7)-(getKey(1) and (Y>1))+Y→Y
:sub(MAP)
:Pt-On(X*8,Y*8,Pic1)
:DispGraph
:End
:Return
:
:
:Lbl MAP
:ClrDraw
:For(A,0,11)
:sub(ON,A*8,0)
:sub(ON,A*8,56)
:End
:For(A,0,7)
:sub(ON,0,A*8)
:sub(ON,88,A*8)
:End
:End
:Return
:
:Lbl ON
:Pt-On(r1,r2,Pic2)

Et encore la je reste gentil  ::)
Car le code le plus adapté ici est une map Data (voir lien plus haut).
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on November 09, 2010, 03:44:40 pm
En passant bienvenue sur le forum Metallica. ;D
Title: Re: [Axe parser] aide
Post by: kindermoumoute on November 10, 2010, 01:42:21 am
Il est du forum espace TI lui aussi ;D
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on November 10, 2010, 02:39:47 am
Ah je vois. Je vais surement aller m'inscrire là bas bientot, mais je ne sais pas si je serai super actif, à part dans les forums de projets et généraux, ayant abandonné la prog TI l'été passé et surtout avec l'approche des fêtes, je commence à avoir de la misère à trouver des trous dans la journée pour poster sur Omni tout en pouvant jouer à Starcraft :P
Title: Re: [Axe parser] aide
Post by: Metallica on November 10, 2010, 06:45:16 am
Merci pour le code Kindermoumoute mais si je désire rajouté des objets sur la map, il me semble que ça ne les prend pas en compte. J'irai peut être voir pour les datas si j'ai le temps.
Title: Re: [Axe parser] aide
Post by: kindermoumoute on November 10, 2010, 06:58:25 am
Ah je vois. Je vais surement aller m'inscrire là bas bientot, mais je ne sais pas si je serai super actif, à part dans les forums de projets et généraux, ayant abandonné la prog TI l'été passé et surtout avec l'approche des fêtes, je commence à avoir de la misère à trouver des trous dans la journée pour poster sur Omni tout en pouvant jouer à Starcraft :P
Je te rassure tout de suite : il n'y a que 15 membres x).
Title: Re: [Axe parser] aide
Post by: Metallica on November 10, 2010, 08:32:43 am
Tu n'as pas compris certaine chose dans mon programme car j'ai essayé de le réduire à l'essentiel, là où pouvait se trouvait le problème.

Code: [Select]
:.PERSO
:
:.DATA
:[{sprite du perso}]→Pic1
:[{sprite du mur}]→Pic2
:
:Lbl A
:.M=1, Y=32, X=47, E=? /// E c'était pour dire si le perso était tourné gauche, droite, haut, bas.  A la base il était à 0
:1→M+31→Y+15→X
:
:.Boucle principale
:Repeat getKey(15)
:If getKey(2)
:sub(COG)
:ClrDraw
:End
:
:If getKey(3)
:sub(COD)
:ClrDraw
:End
:
:If getKey(1)
:sub(COB)
:ClrDraw
:End
:
:If getKey(4)
:sub(COH)
:ClrDraw
:End
:
:sub(MAP)
:
:Pt-On(X,Y,E*8+Pic1)
:
:.On affiche 3 niveaux de gris ? //// Je mettais de l'herbe en gris dans le décor
:DispGraphr
:
:End
:Goto Z
:
:Lbl MAP
:If M=1
:For(A,0,11)
:Pt-On(A*8,0,Pic2)
:If (A≠4) and (A≠5)
:Pt-On(A*8,56,Pic2)
:End
:End
:For(A,1,7)
:Pt-On(0,A*8,Pic2)
:Pt-On(88,A*8,Pic2)
:End
:End
:Return
:
:.Déplacement à gauche ? /// oui
:Lbl COG
:0→B
:For(A,0,7)
:!If Pxl-Test(X-1,Y+A)
:B+1→B
:If B=8
:X-1→X
:End
:End
:End
:Return
:
:.Déplacement à droite ? /// oui
:Lbl COD
:0→B
:For(A,0,7)
:!If Pxl-Test(X+9,Y+A)
:B+1→B
:If B=8
:X+1→X
:End
:End
:End
:Return
:
:.Déplacement en bas ?  /// oui
:Lbl COB
:0→B
:For(A,0,7)
:!If Pxl-Test(X+A,Y+9)
:B+1→B
:If B=8
:Y+1→Y
:End
:End
:End
:Return
:
:.Déplacement en haut ?  ///oui
:Lbl COH
:0→B
:For(A,0,7)
:!If Pxl-Test(X+A,Y-1)
:B+1→B
:If B=8
:Y-1→Y
:End
:End
:End
:Return
:
:.La fin du programme
:Lbl Z
:ClrDraw
:ClrDrawr
:DispGraph
:.Pourquoi DispGraph ici ? /// parce que sinon ça donne l'impression que le programme lag lorsque j'archive l'appvar
Title: Re: [Axe parser] aide
Post by: kindermoumoute on November 10, 2010, 01:03:31 pm
Je cherche une solution depuis tout à l'heure pour simplifier ce code :
Code: [Select]
:If getKey(20)
:8→I
:ElseIf getKey(28)
:7→I
:ElseIf getKey(36)
:6→I
:ElseIf getKey(19)
:5→I
:ElseIf getKey(27)
:4→I
:ElseIf getKey(35)
:3→I
:ElseIf getKey(18)
:2→I
:ElseIf getKey(26)
:1→I
:ElseIf getKey(34)
:0→I
:End

Pas d'idées ? ???
Title: Re: [Axe parser] aide
Post by: Kiligolo on December 05, 2010, 04:30:03 am
Petite question: Combien peut-on faire de GDB dans un programme sans qu'il y ai une ERR:DUPLICATE?
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on December 05, 2010, 05:06:23 am
Tu peux les nommer GDB0, GDB1, GDB2 et même GCB1A, GDB1B, etc. Sinon tu peux utiliser Str1, Pic1, etc. C'est la même chose en Axe.
Title: Re: [Axe parser] aide
Post by: Kiligolo on December 05, 2010, 06:43:54 am
Ok merci.

Cool: moi je me croyais limité à 10 GDB... ;D
Title: Re: [Axe parser] aide
Post by: kindermoumoute on December 05, 2010, 07:14:56 am
De GDB0 à GDB9FF.

Edit : voir tuto partie pointeurs.
Title: Re: [Axe parser] aide
Post by: Kiligolo on December 05, 2010, 08:00:13 am
Ok merci!


Je fais un nouveau projet, mais il faut que j'en parle à personne d'accord?
Title: Re: [Axe parser] aide
Post by: kindermoumoute on December 05, 2010, 08:23:09 am
Je fais un nouveau projet, mais il faut que j'en parle à personne d'accord?
Hm... antiphrase ?
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on December 05, 2010, 05:26:50 pm
Un projet secret? %)
Title: Re: [Axe parser] aide
Post by: Kiligolo on December 06, 2010, 05:29:52 am
OUI! J'ai réussit à faire ma première appVar! ;D
Title: Re: [Axe parser] aide
Post by: kindermoumoute on December 06, 2010, 10:14:41 am
Cool, c'était un projet ?
Title: Re: [Axe parser] aide
Post by: Kiligolo on December 06, 2010, 11:57:13 am
Cool, c'était un projet ?
Non: ça faisait parti de mon projet. ;D

(faut quand même pas abuser... Ton truc était faut: quand on veut mettre une appVar dans une variable, il faut faire:
Code: (Axe) [Select]
GetCalc("vPLOP",X)
.X étant le nombre d'octets de l'appVar

.Et pas:
GetCalc("vPLOP")
Mais bon je te pardonne. ;D
J'ai du aller prendre le code de alexvire (AlexPack) pour l'appVar et voir mon erreur mais j'espère qu'il me pardonnera... :-X )
Title: Re: [Axe parser] aide
Post by: kindermoumoute on December 06, 2010, 12:21:04 pm
Dans certains cas il n'est pas obligé de préciser le nombre d'octets à copier. ;)
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on December 06, 2010, 12:28:09 pm
OUI! J'ai réussit à faire ma première appVar! ;D
Bravo! Ça paraît facile les appvars, mais en fait ça peut être très pénible. Je n'ai jamais compris pourquoi. Si jamais il y a un Axe 2.0 un jour, je crois que la syntaxe devrait être changé pour que ça soit plus facile.

Ça faisait 9 ans que je programmais (en TI-BASIC) avant que Axe arrive et je n'ai jamais réussi à maîtriser les appvars parfaitement. À chaque fois je me retrouvais à demander de l'aide...
Title: Re: [Axe parser] aide
Post by: Kiligolo on December 06, 2010, 12:57:11 pm
OUI! J'ai réussit à faire ma première appVar! ;D
Bravo! Ça paraît facile les appvars, mais en fait ça peut être très pénible. Je n'ai jamais compris pourquoi. Si jamais il y a un Axe 2.0 un jour, je crois que la syntaxe devrait être changé pour que ça soit plus facile.

Ça faisait 9 ans que je programmais (en TI-BASIC) avant que Axe arrive et je n'ai jamais réussi à maîtriser les appvars parfaitement. À chaque fois je me retrouvais à demander de l'aide...
Mais maintenant t'y arrive j'espère!(http://www.trudi.ch/smileys/fume_2.gif)
Bon en tout cas: il faut la 1.0 pour la fonction input ;D !
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on December 06, 2010, 01:04:13 pm
Normallement oui, mais j'oublie tout le temps la procédure à suivre (souvent j'inverse getcalc(pointer,octets) avec getcalc(pointer) et j'oublie tout le temps s'il faut faire getcalc(pointer,octet)->Variable au lieu de getcalc(pointer,octet) ;D
Title: Re: [Axe parser] aide
Post by: Kiligolo on December 07, 2010, 10:35:49 am
Pour une tile, on peut pas faire plus de 16 pics?

C'est un peu embêtant... :(
Title: Re: [Axe parser] aide
Post by: Metallica on December 07, 2010, 12:01:12 pm
Tu peux en faire 256, 16*16=256 car le pointeur vise 2 caractères.
Title: Re: [Axe parser] aide
Post by: kindermoumoute on December 07, 2010, 12:12:51 pm
Oui, il ne faudra donc pas extraire l'octet et le conserver intégralement.
Title: Re: [Axe parser] aide
Post by: Metallica on December 07, 2010, 12:34:20 pm
Pour mettre du gris dans ma tilemap, dois-je faire ceci ?

Code: [Select]
.SPRITE 1
[0000000000000000->Pic1
[FFFFFFFFFFFFFFFF

.MAP
[000000000000000000000000->GDB1

For(A,0,11
Pt-On(A*8,0,{A+GDB1}*8+Pic1
Pt-On(A*8,0,{A+GDB1}*8+8+Pic1
End
DispGraphr
Title: Re: [Axe parser] aide
Post by: Kiligolo on December 07, 2010, 12:49:53 pm
Donc:
Code: [Select]
[000000000000]->GDB0
[000000000000]
[000000000000]
[000000000000]
[000000000000]
[000000000000]
[FFFFFFFFFFFF]
[FFFFFFFFFFFF]

[0000000000000000]->Pic1
[FFFFFFFFFFFFFFFF]

sub(DS)
...

Lbl DS
ClrDraw
For(X,0,11)
For(Y,0,7)
Pt-On(X*8,Y*8,{X+GBD0}*8+Pic1
End
DispGraph
C'est ça?
Title: Re: [Axe parser] aide
Post by: Metallica on December 07, 2010, 12:52:30 pm
Non, il manque:
Code: [Select]
Pt-On(X*8,Y*8,{Y*12+X+GDB1}*8+Pic1 dans le pointeur.


Pour mettre du gris dans ma tilemap, dois-je faire ceci ?

Code: [Select]
.SPRITE 1
[0000000000000000->Pic1
[FFFFFFFFFFFFFFFF

.MAP
[000000000000000000000000->GDB1

For(A,0,11
Pt-On(A*8,0,{A+GDB1}*8+Pic1
Pt-On(A*8,0,{A+GDB1}*8+8+Pic1
End
DispGraphr
Title: Re: [Axe parser] aide
Post by: Kiligolo on December 07, 2010, 01:06:41 pm
Oui mais si je veux faire une tile de plusieurs lignes?

EDIT: Il faut mettre le r à la fin de la pic que tu veux mettre en gris et mettre le DispGraphr dans une boucle.
Tu peux aussi mettre rr pour faire du gris clair et mettre le DispGraphrr dans une boucle.
Title: Re: [Axe parser] aide
Post by: Metallica on December 07, 2010, 01:09:39 pm
C'est ce que j'ai écrit. (ce que j'ai citais ne concerne pas ta question mais c'est une autre question que je pose)
Dans le pointeur tu as oublié le Y*[le nombre de tiles en largeur]
Title: Re: [Axe parser] aide
Post by: Kiligolo on December 07, 2010, 01:16:21 pm
Le problème c'est que je ne sais pas ranger les [hex] de façon à avoir un bon tile... :(
Title: Re: [Axe parser] aide
Post by: kindermoumoute on December 07, 2010, 01:21:56 pm
Pour mettre du gris dans ma tilemap, dois-je faire ceci ?

Code: [Select]
.SPRITE 1
[0000000000000000->Pic1
[FFFFFFFFFFFFFFFF

.MAP
[000000000000000000000000->GDB1

For(A,0,11
Pt-On(A*8,0,{A+GDB1}*8+Pic1
Pt-On(A*8,0,{A+GDB1}*8+8+Pic1
End
DispGraphr
Moi je créé 2 pointeurs :
Code: [Select]
.SPRITE 1
[0000000000000000=>Pic1
[5146546512386762
...
[FFFFFFFFFFFFFFFF=>Pic2
[A0A0A0A0A0A0A0A
...
.MAP
[000000000000000000000000->GDB1

For(A,0,11
Pt-On(A*8,0,{A+GDB1}*8+Pic1
Pt-On(A*8,0,{A+GDB1}*8+Pic2)r
End
DispGraphr

Au passage je te conseil de te mettre au 4 niveaux de gris.
Title: Re: [Axe parser] aide
Post by: Metallica on December 07, 2010, 01:23:18 pm
T'as qu'a utiliser les "tilemap editor" genre:

http://www.omnimaga.org/index.php?action=downloads;sa=view;down=171
ou
http://www.omnimaga.org/index.php?action=downloads;sa=view;down=518
et il y en a surement d'autre.
Title: Re: [Axe parser] aide
Post by: kindermoumoute on December 07, 2010, 01:26:20 pm
Le problème c'est que je ne sais pas ranger les [hex] de façon à avoir un bon tile... :(

Jette un coup d'oeil au tuto chapitre "Data 2/2" j'ai déjà commencé l'explication. Mais lit le chapitre Data 1/2 avant.
Title: Re: [Axe parser] aide
Post by: Metallica on December 07, 2010, 01:31:35 pm
On fait comment pour avoir 4 niveaux de gris ?
Title: Re: [Axe parser] aide
Post by: kindermoumoute on December 07, 2010, 02:35:47 pm
C'est très simple, lorsque tu créé tes sprites 8*8 en 4 niveaux de gris, tu mes dans le buffer ce qui va être en gris 75% et ce qui va être en noir. Tu met dans le back buffer ce qui va être en gris 25% et ce qui va être noir. Le reste sera blanc. Et il suffit de faire dispGraphrr.
Title: Re: [Axe parser] aide
Post by: Kiligolo on December 07, 2010, 03:14:34 pm
Le problème c'est que je ne sais pas ranger les [hex] de façon à avoir un bon tile... :(

Jette un coup d'oeil au tuto chapitre "Data 2/2" j'ai déjà commencé l'explication. Mais lit le chapitre Data 1/2 avant.
Il n'y a pas le tile mapping... -_-'
Title: Re: [Axe parser] aide
Post by: Metallica on December 08, 2010, 08:37:08 am
C'est très simple, lorsque tu créé tes sprites 8*8 en 4 niveaux de gris, tu mes dans le buffer ce qui va être en gris 75% et ce qui va être en noir. Tu met dans le back buffer ce qui va être en gris 25% et ce qui va être noir. Le reste sera blanc. Et il suffit de faire dispGraphrr.

Ok merci du renseignement ;)
Title: Re: [Axe parser] aide
Post by: kindermoumoute on December 08, 2010, 08:46:33 am
Et regarde, il y a même un sujet pour 8 grayscales (perso je ne vois pas la difference).
Title: Re: [Axe parser] aide
Post by: Metallica on December 08, 2010, 08:50:42 am
Ouais mais je pense que je vais déjà faire du 4 grayscales.
Title: Re: [Axe parser] aide
Post by: Kiligolo on December 08, 2010, 01:32:54 pm
Comment on peut faire 256 sprites différentes dans une tile? %)
Title: Re: [Axe parser] aide
Post by: Metallica on December 08, 2010, 02:07:09 pm
Non, tu peux faire 256 tiles qui représente un sprite.
Title: Re: [Axe parser] aide
Post by: Kiligolo on December 08, 2010, 02:18:16 pm
Quel dommage ...  :(
Title: Re: [Axe parser] aide
Post by: kindermoumoute on December 08, 2010, 02:27:13 pm
Hm… tile = sprite

PS : c'est dans la bêta du tuto !


Edit : http://www.siteduzero.com/tutoriel-3-352304-1-les-datas-2-2.html#ss_part_1
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on December 08, 2010, 02:42:53 pm
Je déconseille 8 niveaux de gris. 3 ou 4 c'est assez. À 8 c'est trop lent et ça devient affreux. On ne peut même pas distinguer des niveaux de gris des autres.
Title: Re: [Axe parser] aide
Post by: Metallica on December 08, 2010, 02:47:37 pm
OK, de toute façon je n'essaierai pas de compliquer le programme pour le ralentir.
Title: Re: [Axe parser] aide
Post by: Kiligolo on December 09, 2010, 02:28:08 am
Hm… tile = sprite

PS : c'est dans la bêta du tuto !


Edit : http://www.siteduzero.com/tutoriel-3-352304-1-les-datas-2-2.html#ss_part_1
Bon. Il y a un petit malentendu...

Ce que je veux faire c'est ça:
Code: [Select]
[0000000]->GDB0
[0000000]
...
[0000000]

[1234565789ABCDEF]->Pic1
...
Avec plus de 16 sprites différentes.
Title: Re: [Axe parser] aide
Post by: Metallica on December 09, 2010, 11:33:08 am
Si tu compresse pas, t'en as 256.
Title: Re: [Axe parser] aide
Post by: Metallica on December 12, 2010, 05:48:05 am
Désolé pour le double-post, mais j'aimerais savoir comment optimiser:
Code: [Select]
:If GetKey(1)
:0->E
:End
:If Getkey(2)
:1->E
:End
:If Getkey(3)
:2->E
:End
:If Getkey(4)
:3->E
:End
Title: Re: [Axe parser] aide
Post by: kindermoumoute on December 13, 2010, 04:56:04 pm
Code: [Select]
:getKey-1=>E
Non ?
Title: Re: [Axe parser] aide
Post by: Kiligolo on December 14, 2010, 07:34:34 am
Oui ça devrais marcher car getKey se remplace par le chiffre de la touche pressée donc ça ferais un truc comme
Code: [Select]
4-1->E  //E=3
Sinon je viens de trouver une façon de faire plus de 16 sprites différentes avec un GDB!(http://r15.imgfast.net/users/1512/12/82/84/smiles/123.gif)
Title: Re: [Axe parser] aide
Post by: Metallica on December 14, 2010, 11:46:09 am
Ouais mais le problème c'est que si j'appuie sur une touche différente que les touches directionnelles, la variable E ne doit changer de valeur or c'est le cas ici.
Title: Re: [Axe parser] aide
Post by: kindermoumoute on December 14, 2010, 11:54:59 am
Tu peux toujours tout combiner.
Title: Re: [Axe parser] aide
Post by: Metallica on December 14, 2010, 11:56:51 am
C'est à dire ?
Title: Re: [Axe parser] aide
Post by: Kiligolo on December 15, 2010, 01:07:42 pm
Faire:
Code: [Select]
If getKey<5 and (getKey>0
getKey-1->E
End
...
C'est ce que je crois comprendre.
Title: Re: [Axe parser] aide
Post by: Metallica on December 16, 2010, 11:46:54 am
Ok je vais essayer.
Title: Re: [Axe parser] aide
Post by: kindermoumoute on December 16, 2010, 05:13:46 pm
Code: [Select]
!If getKey-1=>E<5 and (E>0
0=>E
End
Par exemple.
Title: Re: [Axe parser] aide
Post by: Metallica on December 17, 2010, 04:34:55 am
J'ai essayer vos solutions.
Killigo, ça marche pas car E fait toujours 0.
Quant à la tienne, Kindermoumoute, elle ne fonctionne pas parfaitement car E représente le sens du perso et dès que je maintiens la touche, le sprite du perso varie très rapidement entre de face (E=0) et le sens dirigée par les flèches directionnels donc ça ressemble à rien jusqu'à un moment où le sens se stabilise en direction de là où l'on déplace le perso.
Title: Re: [Axe parser] aide
Post by: kindermoumoute on December 17, 2010, 11:40:36 am
Code: [Select]
If getKey-1=>F<5 and (F>0
F=>E
End
Par exemple.
Title: Re: [Axe parser] aide
Post by: Metallica on December 17, 2010, 12:12:08 pm
Et maintenant, pour la gestion des pas du personnage: il faut que E fasse Getkey-1(1er Pas) Puis E fasse Getkey+3 s'il est inférieur à 4(2ème pas).
Title: Re: [Axe parser] aide
Post by: kindermoumoute on December 17, 2010, 05:55:00 pm
Je ne vais pas te faire du bout de code par bout de code, mais j'ai trouvé une méthode pas trop mal pour le déplacement de mes worms par exemple :
Code: [Select]
:If getKey(2)
:.Si il y a un déplacement, alors on inverse A
:1-A=>A
:Pt-On(X,Y,A*8+Pic1
:.Quand A vaut 0, c'est le pied gauche en avant, et quand il vaut 1, c'est le pied droit en avant (par exemple)
:Else
:Pt-On(X,Y,Pic2
:.Les deux pieds collés
:End

C'est juste pour donner des idées, mais cherche par toi même le meilleur algo adapté à la situation.
Title: Re: [Axe parser] aide
Post by: NeoCrisis on December 18, 2010, 10:21:33 am
Et maintenant, pour la gestion des pas du personnage: il faut que E fasse Getkey-1(1er Pas) Puis E fasse Getkey+3 s'il est inférieur à 4(2ème pas).

[OFFTOPIC] t'es français aussi ?! (ou francophone du moins ;D ) [/OFFTOPIC]
Title: Re: [Axe parser] aide
Post by: kindermoumoute on December 18, 2010, 04:00:59 pm
Ouaip il est du forum d'espace TI.
Title: Re: [Axe parser] aide
Post by: Kiligolo on January 06, 2011, 03:55:45 am
J'ai déjà essayé de créer une appVar et d'enregistrer certaines choses dessus mais après redémarrage du programme, l'appVar est réinitialisée...
Title: Re: [Axe parser] aide
Post by: Metallica on January 06, 2011, 11:27:25 am
Regarde ici (http://espace-ti.forumactif.com/t125-axe-pong#1282).
Title: Re: [Axe parser] aide
Post by: Kiligolo on January 06, 2011, 11:47:40 am
Merci.
Title: Re: [Axe parser] aide
Post by: persalteas on January 10, 2011, 03:36:21 pm
Hello les anglais, je suis aussi d'espace TI, et je viens sur omnimaga pour signaler une erreur notée UNKNOWN ERR.

je vous explique:

voilà mon code:
Code: [Select]
:.ESSAI
:[3828EEABAB81817E]→Pic1
:20→X→Y
:ClrDraw
:ClrHome
:Repeat getkey(15)
:X-((X=/=4) and getkey(2))+(getkey(3) and (X=/=84))→X
:Y-((Y=/=1) and getkey(4))+(getkey(1) and (Y=/=47))→X
:sub(CHG
:DispGraph
:sub(CHG
:End
:Lbl CHG
:Pt-Change(X,Y,Pic1
:Text(X-4,Y+9,"FUCK!"

excusez moi si mon programme est vulgaire...

enfin voilà, et quand je le compile (Axe parser version 0.4.5), j'obtiens:

Code: [Select]
COMPILING...
1st Pass:        100%
2nd Pass:        100%
Writing App...
         628 Byt    76%
ERR:  UNKNOWN ERR
Code    4535555
Est-ce que c'est une erreur déjà connue ?  (ma version d'Axe parser n'est pas la dernière).


2e question:
est-ce normal que lorsque j'affiche un nombre sur l'écran, l'affichage prenne 5 caractères obligatoirement ?
exemple:

Code: [Select]
:.ESSAI
:3→A
:ClrHome
:Output(0,0,A>Dec
:Pause 1000

j'obtiens:
Code: [Select]
------------------
|    3            |     
|                 |   
|                 |       
|                 |         
|                 |           
 ------------------                           

merci de vos réponses.
Title: Re: [Axe parser] aide
Post by: kindermoumoute on January 10, 2011, 03:40:29 pm
Dernière version : 0.4.8
Vérifie que ton bug est toujours d'actualité.
Si c'est le cas, reporte ton bug, en anglais ici (http://ourl.ca/4072020).
Title: Re: [Axe parser] aide
Post by: persalteas on January 10, 2011, 03:54:34 pm
uhuh, ça fait un moment que je cherche sur le forum, je ne trouve pas ou on peut télécharger la dernière version... pas dans downloads en tout cas.

tu peux me dire stp.

et est-ce que tu sais quelque chose pour l'affichage de valeurs ?
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on January 10, 2011, 04:56:49 pm
Salut et bienvenu sur le forum :)

Toutes les versions d'Axe Parser (sauf la première) sont disponible dans ce topic: http://ourl.ca/4060/162096

Elle est aussi disponible dans la section downloads, mais le lien redirige vers le topic.
Title: Re: [Axe parser] aide
Post by: persalteas on January 12, 2011, 09:56:07 am
merci beaucoup, je télécharge et je vérifie ça.

EDIT: fausse alerte, ça marche très bien avec la "nouvelle" version.
Title: Question sur les fonctions
Post by: Kiligolo on January 12, 2011, 02:36:58 pm
Je voudrais savoir si on peut faire un quelque chose dans ce genre:
Code: [Select]
.TBPOTW
...
sub(TBF)
...
Return
...
Lbl TBF
...
=>If ...
=>...
=>Return
=>End
=>...
=>Return
...
Title: Re: [Axe parser] aide
Post by: Metallica on January 13, 2011, 11:24:42 am
Ouais surement sinon utilise un Else
Title: Re: [Axe parser] aide
Post by: kindermoumoute on January 13, 2011, 01:01:09 pm
Bien évidemment que ce code marche, c'est comme en C.
Title: Re: [Axe parser] aide
Post by: Gawil on January 29, 2011, 09:04:37 am
Bonjour, j'aurais besoin d'aide pour l'utilisation de la fonction round(
D'après ce que j'ai vu sur certains programmes, j'ai pensé que son fonctionnement était :
Code: [Select]
round(nombre à arrondir,nombre de chiffres après la virgule)A moins que la fonction round( ne serve pas du tout à arrondir, car j'ai vu aussi que l'Axe ne prenait pas les virgules en compte...

Mon problème est que je souhaite faire une jauge d'énergie allant de 0 à 200 points (que des nombres entiers bien sûr),
et je voudrais l'afficher sur l'écran sous forme de barre de 15 pixels.
Voici le code que j'ai fait :
Code: [Select]
:
:line(1,1,16,1)
:line(1,1,1,4)
:line(1,4,16,4)   // Normalement j'affiche ma barre avec deux sprites,
:line(16,1,16,4) // mais là c'est juste pour que vous voyiez à peu près comment elle est...
:
:.W est l'énergie
:round(W*(3/40),0)->V // Je met W sur 15 et je l'arrondis
:
:.Puis je représente l'énergie par une ligne de 2 pixels de hauteur
:line(2,2,V,2)
:line(2,3,V,3)

Si round est bien la fonction pour arrondir, alors voyez-vous où est mon erreur ?
Et si round n'a rien à voir avec ce que je croyais, avez-vous une autre solution pour mon problème ?  ???
Title: Re: [Axe parser] aide
Post by: kindermoumoute on January 29, 2011, 09:36:20 am
Les nombres en Axe sont toujours entier, et compris entre 0 et 65355.
La commande round( n'existe pas en axe, car la division effectué d'un nombre par un autre est euclidienne (voir mon tutoriel).

Note : si tu a une erreur de compilation, rend toi sur l'annexe (http://www.siteduzero.com/tutoriel-3-333234-1-tableau-des-erreurs-et-emulation.html#ss_part_1) de mon tutoriel consacrée.
Title: Re: [Axe parser] aide
Post by: Gawil on January 29, 2011, 10:31:21 am
D'accord... C'est bien ce que je pensais...
Mais aurais-tu une solution pour mon problème ?
Car j'ai bien essayé de faire ça sans round, mais le programme me met
V=0... alors West initialisé à 100.
Or W*3/40=7,5 donc 7 si c'est par division euclidienne, et je devrais avoir un ligne qui part
du pixel 2 au pixel 7  :((d'ailleurs, il faudra que je mette 2+V, si je veux que ça arrive à la moitié...  ;D)
Tu vois où peut-être mon erreur ?
Si tu veux je peux te mettre tout le code, là je n'ai mis que ce qui concernait V.
Title: Re: [Axe parser] aide
Post by: kindermoumoute on January 29, 2011, 10:36:47 am
TU n'aurais as laissé une parenthèse ?
300*3/40 est bien égale à 7, reste 2.
Mais 300*(3/40)=22

Si W*3/40=>V ne marche pas, alors W est mal initialisé.
Title: Re: [Axe parser] aide
Post by: Gawil on January 29, 2011, 10:39:31 am
Ah oui tiens, l'erreur doit venir de là. Je teste ça tout de suite.  ;D

Edit: C'est bon ça marche ! Merci :)
Enfin ça a entraîné un autre problème qui n'a rien à voir, mais je pense pouvoir le régler celui là  ;D
Title: Re: [Axe parser] aide
Post by: kindermoumoute on January 29, 2011, 10:53:48 am
Cool, n'hésite pas à t'appuyer sur le tutoriel avant de poser une question. ;)
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on January 30, 2011, 03:36:54 am
Aussi si tu comprends bien l'anglais, il y a aussi les sujets dans le forum officiel d'Axe, mais de plus en plus sont traités dans le tuto à Kindermoumoute ainsi que la doc officielle. :)
Title: Re: [Axe parser] aide
Post by: Gawil on February 03, 2011, 10:43:46 am
Oui je me balade souvent sur les forums anglais, mais c'est qu'il y en a beaucoup  ;D
Je suis en train de lire les questions sur axe parser, mais je tombe souvent sur des réponses qui parlent d'une nouvelle fonction que je ne connais pas, alors il faut que je la cherche, puis je tombe en cours de route sur un nouveau problème, etc...  :w00t:
Enfin bref, je progresse lentement, mais plus je connais de fonctions, plus j'avancerai vite dans mon apprentissage  :)
Title: Re: [Axe parser] aide
Post by: kindermoumoute on February 03, 2011, 03:03:20 pm
La deuxième partie devrait mettre en ordre certaine chose, je suis en train de finaliser le TPn°2, et puis il me restera qu'une annexe, et une grande relecture à faire. ;)
Title: Re: [Axe parser] aide
Post by: DJ Omnimaga on February 04, 2011, 02:08:04 am
Oui je me balade souvent sur les forums anglais, mais c'est qu'il y en a beaucoup  ;D
Je suis en train de lire les questions sur axe parser, mais je tombe souvent sur des réponses qui parlent d'une nouvelle fonction que je ne connais pas, alors il faut que je la cherche, puis je tombe en cours de route sur un nouveau problème, etc...  :w00t:
Enfin bref, je progresse lentement, mais plus je connais de fonctions, plus j'avancerai vite dans mon apprentissage  :)
Ah ok je comprends. C'est vrai aussi qu'il y a beaucoup de sujets dans la section Axe. Lorsque la version 1.0 va sortir le forum d'Axe va probablement être divisé en section aide et section pour le projet d'Axe.
Title: Re: [Axe parser] aide
Post by: Kiligolo on February 04, 2011, 01:10:11 pm
Oui je me balade souvent sur les forums anglais, mais c'est qu'il y en a beaucoup  ;D
Je suis en train de lire les questions sur axe parser, mais je tombe souvent sur des réponses qui parlent d'une nouvelle fonction que je ne connais pas, alors il faut que je la cherche, puis je tombe en cours de route sur un nouveau problème, etc...  :w00t:
Enfin bref, je progresse lentement, mais plus je connais de fonctions, plus j'avancerai vite dans mon apprentissage  :)
Ah ok je comprends. C'est vrai aussi qu'il y a beaucoup de sujets dans la section Axe. Lorsque la version 1.0 va sortir le forum d'Axe va probablement être divisé en section aide et section pour le projet d'Axe.
J'espère en tout cas.
Title: Re: [Axe parser] aide
Post by: Gawil on February 08, 2011, 02:38:51 pm
Oui je me balade souvent sur les forums anglais, mais c'est qu'il y en a beaucoup  ;D
Je suis en train de lire les questions sur axe parser, mais je tombe souvent sur des réponses qui parlent d'une nouvelle fonction que je ne connais pas, alors il faut que je la cherche, puis je tombe en cours de route sur un nouveau problème, etc...  :w00t:
Enfin bref, je progresse lentement, mais plus je connais de fonctions, plus j'avancerai vite dans mon apprentissage  :)
Ah ok je comprends. C'est vrai aussi qu'il y a beaucoup de sujets dans la section Axe. Lorsque la version 1.0 va sortir le forum d'Axe va probablement être divisé en section aide et section pour le projet d'Axe.

Ok :)

La deuxième partie devrait mettre en ordre certaine chose, je suis en train de finaliser le TPn°2, et puis il me restera qu'une annexe, et une grande relecture à faire. ;)

Génial, j'ai vraiment hâte que tu l'aies fini !
Title: Re: [Axe parser] aide
Post by: kindermoumoute on February 08, 2011, 03:31:36 pm
J'ai demandé la mise en ligne vendredi dernier, je relance les validateurs.
Title: Re: [Axe parser] aide
Post by: Kiligolo on February 09, 2011, 07:52:39 am
Oh Yeah! ;D
Title: Re: [Axe parser] aide
Post by: Metallica on February 09, 2011, 09:29:35 am
Cool, je l'attendais cette partie :)
Title: Re: [Axe parser] aide
Post by: Gawil on February 10, 2011, 09:42:52 am
Tu es génial Kindermoumoute ;D
Title: Re: [Axe parser] aide
Post by: kindermoumoute on February 10, 2011, 04:04:06 pm
Tu es génial Kindermoumoute ;D
Pas tout le temps je te rassure. ;D
Title: Re: [Axe parser] aide
Post by: Gawil on February 11, 2011, 10:04:06 am
Et bien je ne te vois pas tout le temps, donc ça me va :)
Soit génial au bon moment ;D
Title: Re: [Axe parser] aide
Post by: Gawil on March 17, 2011, 12:04:03 pm
J'aurais besoin d'aide concernant une chose simple mais que je ne trouve pas (et ça m'énerve  :banghead: )  ;D
Est-il possible en Axe de demander à l'utilisateur d'entrer une valeur ou une chaîne (l'équivalent de input, ou prompt en Ti-Basic) ?
Je n'arrive pas à comprendre à quoi sert input en Axe, donc si c'est ça, je ne sais pas comment elle marche.
Pourriez-vous me donner la fonction nécessaire pour cela, et surtout comment l'utiliser (syntaxe, etc...) ?
Merci d'avance :angel:
Title: Re: [Axe parser] aide
Post by: kindermoumoute on March 17, 2011, 03:46:34 pm
Code: [Select]
:input=>A
:Disp A
A pointe sur une chaîne de token.
Title: Re: [Axe parser] aide
Post by: Gawil on March 17, 2011, 04:06:34 pm
ah c'est aussi simple que cela... Honte de moi   :o
Et pour les chaînes de caractères ça marche aussi ?
On pourrait faire :
Code: [Select]
:input->Str1 (ou un autre pointeur bien sûr)
Sinon merci pour ta réponse rapide  :)
Title: Re: [Axe parser] aide
Post by: kindermoumoute on March 17, 2011, 04:16:35 pm
Non, Str1 est un pointeur statique, et A est un pointeur modifiable. Ici on ne peut que utiliser A comme pointeur car la Data n'est pas dans le programme. Heureusement, les lettres de l'alphabet et les numéros correspondent entre les tokens et les ascii.
Title: Re: [Axe parser] aide
Post by: Gawil on March 18, 2011, 08:19:10 am
D'accord, merci d'avoir éclairci ce point :)