Le topic de la programmation

27 Février 2010
20
4
1 074
Nivolas-Vermelle
J'ai besoin d'aide en Java / Jquery si quelqu'un peut me sauver la vie !

J'ai fait un petit jeu tout simple, sauf qu'une des conditions de collision ne veut pas marcher ... aidez moi svp :fleur:
 
5 Juin 2012
1 826
3 824
5 944
lau-rie;4689835 a dit :
J'ai besoin d'aide en Java / Jquery si quelqu'un peut me sauver la vie !

J'ai fait un petit jeu tout simple, sauf qu'une des conditions de collision ne veut pas marcher ... aidez moi svp :fleur:
Je connais Java mais pas jQuery. Par contre tu devrais peut-être directement poster ton problème non ? En le mettant en spoiler pour que ça fasse pas trop long.
Comme ça éventuellement plusieurs Madz peuvent te répondre :fleur:
 
27 Février 2010
20
4
1 074
Nivolas-Vermelle
gunnm;4689844 a dit :
lau-rie;4689835 a dit :
J'ai besoin d'aide en Java / Jquery si quelqu'un peut me sauver la vie !

J'ai fait un petit jeu tout simple, sauf qu'une des conditions de collision ne veut pas marcher ... aidez moi svp :fleur:
Je connais Java mais pas jQuery. Par contre tu devrais peut-être directement poster ton problème non ? En le mettant en spoiler pour que ça fasse pas trop long.
Comme ça éventuellement plusieurs Madz peuvent te répondre :fleur:
J'ai mis mon jeu en ligne : http://lau-portfolio.fr/

Le problème se trouve avec la collision entre la banane rouge et le singe... et je ne sais absolument pas comment faire.

Je dois rendre ce projet avant Dimanche soir minuit. J'y ai passé au moins 5 heures sans trouver de réponses...
 

KBi

21 Février 2012
990
748
1 284
Le Kremlin Bicêtre
lau-rie;4689863 a dit :
gunnm;4689844 a dit :
lau-rie;4689835 a dit :
J'ai besoin d'aide en Java / Jquery si quelqu'un peut me sauver la vie !

J'ai fait un petit jeu tout simple, sauf qu'une des conditions de collision ne veut pas marcher ... aidez moi svp :fleur:
Je connais Java mais pas jQuery. Par contre tu devrais peut-être directement poster ton problème non ? En le mettant en spoiler pour que ça fasse pas trop long.
Comme ça éventuellement plusieurs Madz peuvent te répondre :fleur:
J'ai mis mon jeu en ligne : http://lau-portfolio.fr/

Le problème se trouve avec la collision entre la banane rouge et le singe... et je ne sais absolument pas comment faire.

Je dois rendre ce projet avant Dimanche soir minuit. J'y ai passé au moins 5 heures sans trouver de réponses...

Tu fais pareil que quand le signe tombe sur une banane jaune et après tu déroule ton code spécifique à la banane rouge.

Avec le peu d'informations que tu as donné, on peut pas t'aider plus. Il y a 1001 façons de coder un programme...
 
3 Novembre 2011
54
33
684
lau-rie;4689863 a dit :
J'ai mis mon jeu en ligne : http://lau-portfolio.fr/

Le problème se trouve avec la collision entre la banane rouge et le singe... et je ne sais absolument pas comment faire.

Je dois rendre ce projet avant Dimanche soir minuit. J'y ai passé au moins 5 heures sans trouver de réponses...

Quel est le probleme: As tu essayé d'écrire le code de collision (a) ou est-ce que tu veux des conseils / idées pour commencer à coder (b)?

a) Peux-tu poster le code de detection de collision en spoiler ?  Sans code, difficile de t'aider !

b) Pour détecter la collision entre la banane et le singe, tu as 2 solutions. Sois tu prends le code de detection de collision avec la banane jaune comme point de départ, sois tu commence à zéro (voir point c).

c) Voilà à quoi le code de collision pourrait ressembler (celui de la banane jaune ou celui que tu ecris toi meme). Le principe, c'est d'avoir une fonction qui te renvoie "vrai" ou "faux" pour répondre à la question: le singe a-t-il touché la banane ? Une facon super simple de le faire est de calculer la distance entre le "centre" de la banane et le "centre" du singe. Par exemple, tu peux décider que si le singe et la banane sont à moins de 5cm l'un de l'autre, tu considère que le singe touche la banane. Si la distance > 5cm, alors il ne touche pas.
Ensuite tu appelle ta fonction "collision" en boucle (par ex. toutes les 1 seconde), et quand elle te renvoie "vrai", tu supprimes la banane !
 
5 Juin 2013
67
30
169
Quelques jours sans venir sur le forum et c'est pleiiins de message en plus :)

@Youfuu :  je croise les doigts pour ton concours :fleur: Je pense que c'est pratique  et bien d'entendre ton retour : ça change de l'idée générale qu'on peut trouver un boulot d'un claquement de doigts ; et ça nous renvoie bien à la réalité des choses !
 
27 Janvier 2011
380
974
4 024
33
Brive-la-Gaillarde
laaz;4690477 a dit :
a) Peux-tu poster le code de detection de collision en spoiler ?  Sans code, difficile de t'aider !

Pour voir le code :
f12 sous chrome ou firefox pour ouvrir le débugguer, onglet script / voir carrément cliquer sur le nom du script (script.js)

Pas besoin de poster son code sur le forum ^^ en plus c'est souvent directement éditable dans le débugguer.

@Lau-rie
Java != JQuery encore une fois ;) JQuery = Javascript.
Je jette un ptit coup d'oeil.

------------

C'est normal que tu fasses jamais appel à collision2() ?

------------

Alors plusieurs choses :

- Apprends à utiliser le débugueur présent dans les navigateurs ! D'abord parce qu'il t'affiche les erreurs dans le code JS (et donc tu aurais pu peut être avancer), et aussi que dans ton code tu peux utiliser "console.log(variable)" pour t'afficher en console le contenu d'une variable. (Touche f12 pour ouvrir le débugueur)

- Donc tu as un souci à l'intérieur même de collision2() : tu fais des tests sur les variables xPosition2 et yPosition2 alors qu'elles ont été définies dans collision(). Du coup à la fin de collision(), ces variables sont détruites et tu ne peux plus les utiliser ! Il faut que tu les déclare en global, où que tu les redéclares dans collision2().

- Ensuite comme dans le code fourni tu n'as pas mis ta manière d'appeler collision2(), je pars du principe que tu as voulu l'appeler juste après collision(), c'est à dire à la fin de MoveMonkey(). Seulement le souci, c'est que de faire ton test de collision avec la banane jaune à la fin du déplacement, ça va fonctionner puisque la banane jaune ne bouge pas. Quand le singe vient de terminer son déplacement, la banane est soit en collision, soit pas du tout. Sauf qu'avec la banane rouge, quand le singe vient de terminer son déplacement, la banane peut être carrément ailleurs, et au moment où la banane entre en collision visuellement avec le singe, ton test est déjà terminé depuis longtemps. Pour régler ça, tu dois faire un setInterval sur collision2, pour l'obliger à tester toutes les x ms si une collision a lieu, de cette manière :

setInterval(collision2,100);

- Et enfin, en parlant de setInterval, je pense que tu n'avais pas compris son fonctionnement.
Avec ce code :
xBananeR = setInterval(parseInt($("#bananerouge").css("left")),10);
Je suppose que tu as voulu faire en sorte de mettre à jour la position de la variable xBananeR (et aussi yBananeR), automatiquement toutes les 10ms. Sauf que setInterval ne te retourne pas du tout le résultat de parseInt(..).

D'après la doc w3school :
setInterval return an integer with the ID value of the timer that is set. Use this value with the clearInterval() method to cancel the timer.

Donc tu vois, rien à voir ;)

Comme solution, je te propose d'utiliser cette portion de code suivante :

setInterval(updatePositionRedBanana,10);
function updatePositionRedBanana() {
    xBananeR = parseInt($("#bananerouge").css("left"));
    yBananeR = parseInt($("#bananerouge").css("top"));

    xBananeR2 = xBananeR + 80;
    yBananeR2 = yBananeR + 75;
}

Pour garder à jour tes variables nécessaires à ton test de collision.

- Un tout dernier point, par rapport à ta façon d'utiliser animate() et ta fonction déplacer(). Ta façon de boucler en appelant déplacer() dans ton callback de animate (le callback = la fonction que tu passes en dernier argument de animate() qui sera appelée à la fin de l'animation) est assez mauvaise et pourrait provoquer des erreurs de "Maximum stack call". Je te en remplacement de ta fonction deplacer le code suivant :

setInterval(animateRedBanana,2000);
function animateRedBanana() {
    $('#bananerouge').animate({top: "+=690"}, 1500, 'linear', resetPositionRedBanana);
}
function resetPositionRedBanana() {
    xBananeR = 0; // ou Math.random ..etc
    yBananeR = "-75px";
    $("#bananerouge").css("top", yBananeR);
    $("#bananerouge").css("left", xBananeR);
}

qui d'un point de vue de logique a plus de sens, et qui se résume en :
-Toutes les deux secondes, on relance l'animation de la banane rouge
-A la fin de chaque animation, on reset la position de la banane.

Voilà, normalement tu as toutes les informations pour modifier ton code. Tiens nous au courant de si tu y arrives ou pas, je pourrais être dispo cette nuit et demain dans l'après-midi :)
 
Dernière édition :
5 Juin 2012
1 826
3 824
5 944
nehli;4694754 a dit :
J'ai fait peur à tout le monde je crois ç_ç.
:fear:



Non moi je suis toujours là, mais j'avais pas mieux à proposer, et rien pour relancer la conversation.

Mais j'aurais bien aimé savoir si @Lau-rie avait résolu son problème grâce à ton aide du coup :erf:
 
5 Juin 2013
67
30
169
Moi non plus je n'avais pas d'éléments de réponse ni de quoi relancer le code ^^

Sinon rien à voir mais demain j'ai une réunion pour mon mémoire et je pense que je vais me faire mettre les points sur les i parce que j'ai pas donné de nouvelles, car j'ai stagné longtemps dans mon travail :halp:
 
26 Juillet 2011
68
25
679
Moeurs
Bonjour à toutes !

Je suis étudiante en langues, mais j'ai un cours de création de sites web en UE libre. J'aimerai savoir si une/des âme(s) charitable(s) pourrai(en)t me corriger les différents exercices que j'ai à rendre pour dans une quinzaine de jours ? :fleur:  Je précise qu'il s'agit seulement de HTML/CSS/Javascript (et de niveau très basique aha).
 

Les Immanquables du forum

Participe au magazine !
Une info qu'on devrait traiter sur madmoiZelle ?
 
Nouvelle ou perdue ?
Pas de panique, on t'aime déjà !

La charte de respect du forum
Le guide technique &
le guide culturel du forum
Viens te présenter !
Un problème technique ?
Topic d'entraide sur l'orthographe et la grammaire
 
La chefferie vous informe
Les annonces de l'équipe concernant le forum et madmoiZelle
Rendre visite à madmoiZelle
Le médiateur du forum
Soutiens madmoiZelle financièrement
Topic dédié à la pub sur mad
Si vous aimez madmoiZelle, désactivez AdBlock !

Les immanquables
Les topics de blabla
En ce moment... !

Mode - Beauté - Ciné - Musique - Séries - Littérature - Jeux Vidéo - Etudes - Ecriture - Cuisine - People - Télévision

Envie de rencontrer des MadZ ?
Viens trouver le forum de ta ville !

Mode
Le pire de la mode
Ces vêtements qui te font envie
Ta tenue du jour
La tenue qui plaît
Tes derniers achats de fringues

Beauté
Astuces,bons plans économies & dupes
Le topic des vernis
Questions beauté en tout genre
 
Culture
Le meilleur des images du net
L'aide aux devoirs
Tu écoutes quoi ?
Quelle est ta série du moment ?
Quel livre lisez-vous en ce moment ?
Le dernier film que vous avez vu à la maison
Le topic philosophique
 
Société
Topic des gens qui cherchent du travail
Voyager seule : conseils et témoignages
Trucs nuls de la vie d'adulte : CAF, Banque, Mutuelle, Logement etc...
 
Les topics universels
Je ne supporte pas
Je ne comprends pas
Ca me perturbe
Je me demande
J'adore...
Je m'en veux de penser ça mais...

Cupidon
Le topic des amoureuses
Le topic des polyamoureuses
Les Célibattantes