Discuss Scratch

CMEN1419
New to Scratch
1 post

Problème bloc "si touche ... ?

Bonjour

Voici rapidement le problème que je cherche à résoudre: lorsque mon personnage principal touche un sprite “ennemi” alors j'ajoute “-1” à la variable “Vies”. Cela fonctionne à un détail près: le nombre de vies diminue trop rapidement. Tant que l'ennemi touche mon personnage, le compteur “vies” diminue.résultat, je peux me retrouver à vies = -25 en 2 secondes….
Pour l'ennemi, j'utilise le bloc “glisser en 1 seconde à une position aléatoire” à l'intérieur d'une boucle “répéter indéfiniment”.

Je vous remercie par avance pour votre aide en espérant avoir été clair…

Cmen
Ilwan
Scratcher
100+ posts

Problème bloc "si touche ... ?

il faut que tu t'arrange pour que l'ennemie ne te touche q'une seule fois.sinon tu peut créer une variable attente et quand l'ennemie te touche il met la variable attente à 1 puis se déplace et quand il ne te touche plus tu met la variable attente à 0.ensuite tu met enlever 1 vie si la variable est égale à 0:
quand le drapeau vert pressé
répéter indéfiniment
si <[joueur v] touché?> alors
mettre [attente v] à [1]
envoyer à tous [test v]
glisser en (1) secondes à x: (nombre aléatoire entre (-240) et (240)) y: (nombre aléatoire entre (-180) et (180))
end
end
quand je reçois [test v]
répéter jusqu’à <(attente) = [0]>
si <non <[joueur v] touché?>> alors
mettre [attente v] à [0]
end
end
quand le drapeau vert pressé
répéter indéfiniment
si <<[joueur v] touché?> et <(attente) = [0]>> alors
ajouter à [vies v] (-1)
end
end
j’espère que je t'ai aidé.

mathieu_3883
Scratcher
40 posts

Problème bloc "si touche ... ?

ou alors :
quand le drapeau vert pressé
répéter indéfiniment
si <[joueur v] touché?> alors
ajouter à [vies v] (-1)
attendre jusqu’à <non <[joueur v] touché?>>
end
end

Last edited by mathieu_3883 (Nov. 21, 2019 14:45:38)


si <(Toi) = [Vocabulaire à apprendre]> alors
Dire [Ce projet est fait pour toi !]
>>> Clique ! <<<
Ilwan
Scratcher
100+ posts

Problème bloc "si touche ... ?

mathieu_3883 wrote:

ou alors :
quand le drapeau vert pressé
répéter indéfiniment
si <[joueur v] touché?> alors
ajouter à [vies v] (-1)
attendre jusqu’à <non <[joueur v] touché?>>
end
end
C'est vrai que C'est beaucoup plus simple.j'y avais pas pensé…

Powered by DjangoBB