Question de newbie sur les sprites

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Torp
Messages : 360
Inscription : lun. 22/nov./2004 13:05

Question de newbie sur les sprites

Message par Torp »

Salut,

Je voudrais faire un petit jeu de carte style Solitaire. J'ai réussi à afficher mes cartes en tant que sprite, mais je n'arrive à trouver comment détecter le passage du curseur de la souris au dessus d'un sprite, puis qu'on lui clique dessus en vue de la déplacer... :?:

Merci
lionel_om
Messages : 1500
Inscription : jeu. 25/mars/2004 11:23
Localisation : Sophia Antipolis (Nice)
Contact :

Message par lionel_om »

Je suis aussi newbee ke toi en 2D dc je ne peux pas t'aider.
Sauf pe etre en mettant un sprite au nivo de la souris et apres de voir si ya collision des sprites. Mais ca j'en sui pas sur (c'est ce que je fesai en DarkBasic).

Mais moi aussi j'ai une question :
Ya t-il un moyen d'afficher le curseur de la souris lorsque que l'on est en mode plein écran (avec InitSprite() et tt le tralala...) ???
J'ai rechercher une fonction sur pureArea.net, mais je n'ai rien trouvé ! :cry:
Webmestre de Basic-univers
Participez à son extension: ajouter vos programmes et partagez vos codes !
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Message par Backup »

Mais moi aussi j'ai une question :
Ya t-il un moyen d'afficher le curseur de la souris lorsque que l'on est en mode plein écran (avec InitSprite() et tt le tralala...) ???
J'ai rechercher une fonction sur pureArea.net, mais je n'ai rien trouvé !
en plein ecran ou pas il y a moyen de connaitre les coordonées du pointeur de souris avec "Resultat = MouseX() " et sa soeur

donc libre a toi de faire coincider la position d'un sprite a cette coordonéé
voir la librairie Mouse dans l'aide du pure !! :D
Avatar de l’utilisateur
Polux
Messages : 440
Inscription : mer. 21/janv./2004 11:17
Localisation : france
Contact :

Message par Polux »

tu cree un sprite en forme de pointeur qui sera dirigé gràce à la souris.
tu utilise ensuite

examinemouse()
pointeurx+mousedeltax()
pointeury+mousedeltay()
displaytransparentsprite(pointeur,pointeurx,pointeury)

vala, dans le principe cela doit être ça, pis après tu peux trankilou tester les collisions entre ton pointeur(sprite) et les sprites des cartes avec Spritepixelcollsion..
lionel_om
Messages : 1500
Inscription : jeu. 25/mars/2004 11:23
Localisation : Sophia Antipolis (Nice)
Contact :

Message par lionel_om »

Oui j'avais vu que l'on peut optenir els cordonnées de la souris, mais par contre je ne connais pas les pointeurs de la souris. Or je voudrais affiché la souris en plein écran (si vraiment il n'y a pas moyen, j'afficherai un sprite à cet endroit), mais je voudrai d'abord faire le plus normalement possible, avec le moins de média possible...

En tt cas, merci pour vos réponses aussi rapides !!! :D
Webmestre de Basic-univers
Participez à son extension: ajouter vos programmes et partagez vos codes !
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Message par Backup »

examinemouse()
pointeurx+mousedeltax()
pointeury+mousedeltay()
displaytransparentsprite(pointeur,pointeurx,pointeury)
c'est pas un peu compliqué ton truc ? :D

ça ça marche pas ?

Code : Tout sélectionner

examinemouse()
displaytransparentsprite(pointeur,MouseX() ,MouseY() )

:D
Le Soldat Inconnu
Messages : 4312
Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :

Message par Le Soldat Inconnu »

Le problèmes de la collision de sprite, à mon avis, c'est que l'on peut avoir 2 sprites du fond en collision avec le sprite de la souris si celui en sur l'intersection des 2 sprites du fond ... vous suivez :lol:

le meileur principe pour moi reste le test de la position

Code : Tout sélectionner

If PointeurX > SpriteX And PointerX < SpriteX + SpriteLargeur And PointeurY > SpriteY And PointerY < SpriteY + SpriteLargeur
Et il faut faire ce test avec chaque sprite, c'est pas plus dur qu'avec un spritecollision mais éviteras certains désagrément.
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?

[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
Avatar de l’utilisateur
Polux
Messages : 440
Inscription : mer. 21/janv./2004 11:17
Localisation : france
Contact :

Message par Polux »

Dobro a écrit :
examinemouse()
pointeurx+mousedeltax()
pointeury+mousedeltay()
displaytransparentsprite(pointeur,pointeurx,pointeury)
c'est pas un peu compliqué ton truc ? :D

ça ça marche pas ?

Code : Tout sélectionner

examinemouse()
displaytransparentsprite(pointeur,MouseX() ,MouseY() )
:D
désolén j'ai répondu en 3 minutes, je pensais pas que c'etait un concours d'optimisation... c'etait juste pour le principe

( d'ailleurs j'ai entendu dire qu'un concours se préparait... y participerait bien moi :) )
Avatar de l’utilisateur
Chris
Messages : 3731
Inscription : sam. 24/janv./2004 14:54
Contact :

Message par Chris »

Polux a écrit :( d'ailleurs j'ai entendu dire qu'un concours se préparait... y participerait bien moi )
Ben non, tu peux pas....!
Faut savoir faire des jeux ! :roll: :wink:

:jesors:
Avatar de l’utilisateur
Polux
Messages : 440
Inscription : mer. 21/janv./2004 11:17
Localisation : france
Contact :

Message par Polux »

:cry: j'en ferais plus pour la peine :D
Avatar de l’utilisateur
Crystal Noir
Messages : 892
Inscription : mar. 27/janv./2004 10:07

Message par Crystal Noir »

meuh non on va en faire un libre c ce que tout le monde voulait, alors pas de pb :) Je vais organiser ca je regarde un peu qui est intéressé déjà :) si on est 3 c pas la peine :p

mais voui concours libre vala ca serait ca :) libre de présenter ce qu'on veut en purebasic, fini ou pas :) Seule chose c qu'on le lancera sur une période mais une longue période pour permettre les participants de prendre le temps de coder (plusieurs mois genre 3 mois par ex :)
Torp
Messages : 360
Inscription : lun. 22/nov./2004 13:05

Message par Torp »

Merci pour vos réponses... Euh... même les hors-sujet... :roll:
Le problèmes de la collision de sprite, à mon avis, c'est que l'on peut avoir 2 sprites du fond en collision avec le sprite de la souris si celui en sur l'intersection des 2 sprites du fond ... vous suivez
J'avais pas pensé au problème de la double collision...(double effet kisscool?), mais si le problème se pose merci pour la soluce.
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Message par Backup »

je peut pas participer a ton concourt , je suis trop fort ! :lol:
lionel_om
Messages : 1500
Inscription : jeu. 25/mars/2004 11:23
Localisation : Sophia Antipolis (Nice)
Contact :

Message par lionel_om »

Dobro a écrit :
examinemouse()
pointeurx+mousedeltax()
pointeury+mousedeltay()
displaytransparentsprite(pointeur,pointeurx,pointeury)
c'est pas un peu compliqué ton truc ? :D

ça ça marche pas ?

Code : Tout sélectionner

examinemouse()
displaytransparentsprite(pointeur,MouseX() ,MouseY() )
:D
Ca c'est dans le cas où l'on a créé un sprite en forme de souris (ou pointeur). Donc faut avoir une image pour la substituée à la souris. mais moi je voulai savoir si on pouvait récupérer le pointeur réel de la souris pour afficher la vrai image de la souris, sans avoir a passer par un média (une image bmp par exemple). C'est Dri qui m'a dit que ca devait être possible.

pointeurx+mousedeltax()
pointeury+mousedeltay()
C'est normal ce code ???
on additionne qqchose, mais le résultat est stocké nul par ( à moins que c'est par ce que je suis un newbee en PB, mais mm en C++ ca ne veut rien dire ! :( )
Webmestre de Basic-univers
Participez à son extension: ajouter vos programmes et partagez vos codes !
Lukky
Messages : 340
Inscription : dim. 25/janv./2004 12:22
Localisation : Morbihan

Message par Lukky »

Juste un mot pour dire que je suis d'accord avec le soldat sur le principe de la gestion du curseur.

Avec cette technique y'a aucun problème de détection et la fiabilité est sans faille, pourquoi prendre des risque avec des trucs plus aléatoires style collision.

JL
Quand on me gonfle trop j'éclate, sinon ça va !
Répondre