Code ne fonctionne pas sur tablette

Fonctionne parfaitement sur PC

L'auteur de ce sujet a trouvé une solution à son problème.
Auteur du sujet

Zestjour zestoyens…(ça c'est fait)

Je suis pas du genre à demander de l'aide mais cas de force majeur…

Donc j'ai fait un algorithme pour Clash of Clans qui permet d'optimiser le temps de création de troupe pour chaque caserne en fonction de la requête.

Je l'ai fait en Python(3), puis en Javascript pour qu'il soit utilisable sur téléphone/tablette.

En gros, une unité est défini par un nom et un temps de création et il faut que le nombre d'unité soit répartie sur le nombre de caserne tel que le temps de création dans chaque caserne se rapproche le plus de la moyenne du temps total divisé par le nombre de caserne, en gros le temps de chaque caserne doit être proche…

Mais le problème c'est pas ça (enfin j'espère), enfaite le JS fonctionne parfaitement sur mon PC (en tout cas il affiche un truc) contrairement à l'utilisation sur ma tablette (samsung donc android) où, quand j'appuie sur "calculate", rien ne se passe.

J'ai beau changer ce qui se passe dans l'event du clique, rien.

Après plusieurs tests, le problème ne vient pas de l'OO mais vient tout de même, apparemment, de mon objet "barrack" car quand je le laisse (sans l'utiliser/en l'utilisant), ça marche pas.

Si je l'enlève ça fonctionne…

Quelque chose qui ne fonctionne pas sur navigateur mobile?

Pour le code, que j'ai commenté vite fait, je vous invite à aller ici et faire afficher le code source car l'affichage de code à l'air d'avoir du mal… x)

Merci d'avance, je part pour quelques jours donc surement pas de connexion internet, désolé si je répond pas :/

Édité par Nemeric

Aime si toi aussi toi aussi

+0 -0

Cette réponse a aidé l'auteur du sujet

Alors le plus simple déjà serait de récupérer l'erreur que tu as sur ta tablette dans la console javascript :) .

Ensuite je vais te dire les petits trucs qui me sautent aux yeux:

Critique:

  • function(html = false) nop, on ne fait pas ça en javascript ;) .

Non critique:

  • Balise <script> sans type="text/javascript" (je ne sais pas si ça peut impacter sur les tablettes, il est vrai que normalement ça n'est pas obligatoire) ;
  • Déclarations de variables sans ; à la fin .

Édité par Nek

+1 -0
Auteur du sujet

Merci t'es un dieu,

effectivement ça ne se fait pas en JS donc j'ai changé la fonction avec ce que j'ai trouvé sur le net et ça marche, j'ai mis la nouvelle version en ligne.

Désolé le JS c'est pas là où je suis le meilleur …x)

Sinon, l'attribut type n'est pas obligatoire (du moins sur ma tablette), elle supporte le HTML5.

Où as tu vu des ; manquant ? que je corrige.

En tout cas merci.

Aime si toi aussi toi aussi

+0 -0

De rien, pour les points virgules:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
            //temps de chaque troupes
            var troopsTime = {barbarian: 20,
                archer: 25,
                goblin: 30,
                giant: 120,
                wallb: 120,
                balloon: 480,
                wizard: 480}
            //nom des troupes dans l'ordre
            var troopsOrder = ["barbarian",
                "archer",
                "goblin",
                "giant",
                "wallb",
                "balloon",
                "wizard"]
            //dans le désordre
            var troopsDisorder = ["wizard",
                "balloon",
                "wallb",
                "giant",
                "goblin",
                "archer",
                "barbarian"]

Édité par Nek

+1 -0
Auteur du sujet

Effectivement, je l'avais directement copié de mon code python xD

Merci beaucoup

Edit: je viens de comprendre ce que tu me disais dans ton premier message, effectivement c'est pas con, j'y penserai la prochaine fois x)

Édité par Nemeric

Aime si toi aussi toi aussi

+0 -0
Vous devez être connecté pour pouvoir poster un message.
Connexion

Pas encore inscrit ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte