Page 3 sur 4
Publié : ven. 27/juin/2008 3:00
par chikun

mais si!!! enleve le "input()" que g glissé en trop apres la boucle , il fo juste que je me penche sur l'effacement du "o" ,qui a mon avis ne dois pas etre bien compliqué.
parcontre effectivement ça change tout si ta boucle devait faire deplacer toutes les autres lettres. merci de m'avoir expliqué que je pouvais programmer en assembleur et comme à tes habitudes d'avoir été clair...g egalement parcouru tes tutos plutot culturels... tu ne veux decidement pas que je prenne du repos!
je dois aller bosser..... a+ tard
Publié : ven. 27/juin/2008 8:33
par Backup
chikun a écrit :g egalement parcouru tes tutos
Pour info :
les Tuto sont le Fruit de la collaboration de beaucoup d'anciens membre
il ne sont pas tous de moi , loin de la
chikun a écrit : il fo juste que je me penche sur l'effacement du "o" ,qui a mon avis ne dois pas etre bien compliqué.
bien sur il suffit de faire une petite memoire sur le dernier caractere (ou vide) que le "O" a ecrasé n pour le remettre une fois le O parti
mais la tu va te rendre compte que la Console, n'est quand meme pas le lieu ideal pour fabriquer un jeu, parce que ce genre de chose, n'est pas effectué automatiquement , contrairement au "Double Buffering" du mode Ecran !!
il te faudrai passer au mode Ecran et au Sprites !!
je t'assure, que c'est vraiment Facile !!
Bien plus facile qu'en GFA !!
Le pureBasic est plus Proche du STOS pour ce qui concerne le travail avec les Sprites que du GFA !! , les Bank Memoires en moins...Mais en Pure, on en a pas besoin

Publié : ven. 27/juin/2008 9:39
par Backup
....
Publié : ven. 27/juin/2008 13:17
par chikun
GOOOOODD!!!!!!!!!!!!!!!!!!
ok je vais spriter, je pense pas etre trop perdu car ça existait sur mon atari 520 ste...
par contre, week end a l'eau car je veux lettre apres lettre comprendre ton programme qui va dans le sens de mon idée...(t'eloigne pas de trop

)
merci monsieur
Publié : ven. 27/juin/2008 13:22
par chikun
ben tu vois , d'un coup je repense a ton casse brique et je me dis que si la balle rencontre tel ou tel "entité" que celle ci tomberai , qu'il faudrait la ratraper le plus tard possible pour avoir un max de point (coordonnée y) ...(enfin on est plus trop limité dans les idées) ...
Publié : ven. 27/juin/2008 14:11
par chikun
mince , je ne sais plus ou trouver ça dans la doc:
quand tu codes
Code : Tout sélectionner
Structure balle
x.w
y.w
identite.s
sensx.l
sensy.l
EndStructure
le "w", "s","l" c koi...me semble ke c la taille que prendront les variables
non !!?
je vais chercher mais ou

Publié : ven. 27/juin/2008 14:17
par Ouaf-Ouaf
yep.
"Variables, types et operateurs" dans "thèmes generaux" à gauche :p
Publié : ven. 27/juin/2008 14:21
par chikun

c partie....!! merci
Publié : ven. 27/juin/2008 14:38
par Backup
chikun a écrit :
le "w", "s","l" c koi...me semble ke c la taille que prendront les variables
non !!?
je vais chercher mais ou

a ce propos pour coller avec les Anciens Basic, qui considerai un Octet allant de 0 a 255 alors que le purebasic considere qu'un octet va de -127 a 127
une petite astuce permet de se retrouver avec les "anciens" octet (0-255) des basics d'antant ..
c'est de faire
ae.l=a.b&255
exemple
Code : Tout sélectionner
a.b=129
Debug a.b ; la ça depasse la capacité de la variable
ae.l=a.b&255
Debug ae.l ; voila c'est retabli mais c'est plus un Byte c'est un long
Publié : ven. 27/juin/2008 14:43
par chikun
ok
tient au fait , vu qu'il n'y a pas de sortie d'ecran et que les sprites sont relativement gros , j'y ai mi le turbo comme ça
Code : Tout sélectionner
;-les deplacements
; Au clavier
If KeyboardPushed ( #PB_Key_Up ) ; fleche haut
balle( #nous )\y =balle( #nous )\y-8
EndIf
If KeyboardPushed ( #PB_Key_Down ) ; fleche bas
balle( #nous )\y =balle( #nous )\y+8
EndIf
If KeyboardPushed ( #PB_Key_Left ) ; fleche gauche
balle( #nous )\x =balle( #nous )\x-8
EndIf
If KeyboardPushed ( #PB_Key_Right ) ; fleche droite
balle( #nous )\x =balle( #nous )\x+8
EndIf
; au Joystick
If JoystickAxisX ()<0
balle( #nous )\x =balle( #nous )\x-8
EndIf
If JoystickAxisX ()>0
balle( #nous )\x =balle( #nous )\x+8
EndIf
If JoystickAxisY () <0
balle( #nous )\y =balle( #nous )\y-8
EndIf
If JoystickAxisY () >0
balle( #nous )\y =balle( #nous )\y+8
EndIf
Publié : ven. 27/juin/2008 14:44
par Ouaf-Ouaf
Par exemple heumm.. Dans une condition ça reviendrait à
If ( a.b &255 ) = 215
Moi j'ai laissé l'encodage ascii et j'utilise les .c :p
Chikun le code que tu montres m'a l'air de bien se preter à l'utilisation d'un "Select". Je sais pas si c'est plus rapide mais question syntaxe ça rends mieux

et c'est pas negligeable quand on est pas super au clair avec un programme.
D'ailleur je me demandais ..
Select permet d'opérer des choix rapides. Le programme exécute <expression1> et retient la valeur en mémoire. Cette valeur est ensuite comparée à chacune des valeurs "Case <expression>" et s'il y a égalité, le code du bloc Case est exécuté pour quitter ensuite la structure Select. Case supporte les valeurs multiples ainsi que les intervalles à l'aide du mot-clef To. Si aucune des valeurs Case n'est vraie, alors le code du bloc Default, (s'il est spécifié) est exécuté.
Cette façon de proceder est elle vraaaaiment plus rapide ? Ca doit pas se jouer sur grand chose.. Heuuu.. J'vais tester

Publié : ven. 27/juin/2008 14:47
par Backup
Ouaf-Ouaf a écrit :Par exemple heumm.. Dans une condition ça reviendrait à
If ( a.b &255 ) = 215

@Ouaf-Ouaf : oui !
@Chikun, normal tu augmente le Pas de deplacement
si tu met 32<-- la taille des Sprites, ça va carrément etre Speed !!
en général, on évite de dépasser la taille d'un Sprite, parce qu'après, il y a risque que le déplacement perde en fluidité a cause du "Saut" effectué sur l'écran , L'oeil va commencer a voir que le Sprite se déplace par Bonds !!

Publié : ven. 27/juin/2008 14:51
par chikun
dobro, je sais , j'augmente le pas mais juste de maniere à ne pas rater les sprites
Publié : ven. 27/juin/2008 14:53
par Backup
chikun a écrit :dobro, je sais , j'augmente le pas mais juste de maniere à ne pas rater les sprites
la commande de collision réagi si 2 sprites se touchent
mais tu as raison, en général on peut déplacer jusqu'à la moitié de la taille d'un Sprite sans risquer de passer par dessus !! ici 16 !

Publié : ven. 27/juin/2008 14:56
par chikun
ok , je regarde comment tu tests la collision...
....et c mortel de simplicité...