Discuss Scratch
- plasmaticatt
-
14 posts
Button cooldowns
So, I'm trying to make a game where when you tap space while, say, examplesprite1 is touching examplesprite2, you get a point. If you press the button at any other time, you lose a point, and if you miss you also lose a point. The thing I'm worried about is, you can just hold down space; and even if you don't mean to, missing the spacebar key will result you in losing 7 points because it technically counted as holding it down. So, you lose a couple million points by holding down space bar. How do I set a cooldown? And while you're at it, can you guys tell me how to make a cooldown for clicking, too? Thanks.
- blablablahello
-
1000+ posts
Button cooldowns
add a So, I'm trying to make a game where when you tap space while, say, examplesprite1 is touching examplesprite2, you get a point. If you press the button at any other time, you lose a point, and if you miss you also lose a point. The thing I'm worried about is, you can just hold down space; and even if you don't mean to, missing the spacebar key will result you in losing 7 points because it technically counted as holding it down. So, you lose a couple million points by holding down space bar. How do I set a cooldown? And while you're at it, can you guys tell me how to make a cooldown for clicking, too? Thanks.
wait until <not <key [space v] pressed?>>
- skywalker858347
-
100+ posts
Button cooldowns
Yes, you could also do theseadd a So, I'm trying to make a game where when you tap space while, say, examplesprite1 is touching examplesprite2, you get a point. If you press the button at any other time, you lose a point, and if you miss you also lose a point. The thing I'm worried about is, you can just hold down space; and even if you don't mean to, missing the spacebar key will result you in losing 7 points because it technically counted as holding it down. So, you lose a couple million points by holding down space bar. How do I set a cooldown? And while you're at it, can you guys tell me how to make a cooldown for clicking, too? Thanks.wait until <not <key [space v] pressed?>>
when [space v] key pressedbecause this isn't in a forever loop, it isn't as sensitive and acts as if you were typing, so there is a moment for you to take you finger off before it takes away a lot of points.
change [points v] by (0)
Same thing with clicking:
when this sprite clicked
do stuff
- plasmaticatt
-
14 posts
Button cooldowns
Unfortunately, the “wait until” script freezes the entire game while space is held. The “when space key pressed” also has no effect on the issue.
- DeveloperTools
-
100+ posts
Button cooldowns
Unfortunately, the “wait until” script freezes the entire game while space is held. The “when space key pressed” also has no effect on the issue.
forever
if <key [key v] pressed?> then
set [lastpress v] to ((days since 2000) * [86400])
wait until <<not <key [key v] pressed?>> or <(((days since 2000) * [86400]) - (lastpress)) < [Change this to how quick the cooldown should be]>>
if <key [key v] pressed?> then
Punish the player for holding down the key!
end
- plasmaticatt
-
14 posts
Button cooldowns
Unfortunately, I really can't seem to get it; I think maybe sharing the project will help give you guys a better idea? https://scratch.mit.edu/projects/732538167/
- DeveloperTools
-
100+ posts
Button cooldowns
https://scratch.mit.edu/projects/732538167/Which example did you use?? Unfortunately, I really can't seem to get it; I think maybe sharing the project will help give you guys a better idea?
- plasmaticatt
-
14 posts
Button cooldowns
Tried using yours, but the message got cut off and I couldn't see much of it. Also got lost a bit of the way there
- plasmaticatt
-
14 posts
Button cooldowns
Also just tried to do what you said, the only thing thats happening is the value of “lastpress” increasing 

- DeveloperTools
-
100+ posts
Button cooldowns
I cant find anything that looks like my code inside the project so idk what ur doing wrong Also just tried to do what you said, the only thing thats happening is the value of “lastpress” increasing

Edit: Nevermind
Last edited by DeveloperTools (Sept. 20, 2022 15:44:07)
- plasmaticatt
-
14 posts
Button cooldowns
Aight, it's my passing period, I'll b back in a bit
- DeveloperTools
-
100+ posts
Button cooldowns
You put Also just tried to do what you said, the only thing thats happening is the value of “lastpress” increasing
<<not <key [space v] pressed?>> or <((days since 2000) * (86400)) < (lastpress)>>Instead of:
<<not <key [space v] pressed?>> or <(((days since 2000) * (86400)) - (lastpress)) > [Cooldown]>>
- DeveloperTools
-
100+ posts
Button cooldowns
Since the blocks spawn every second, I would recommend a value less than 1You put Also just tried to do what you said, the only thing thats happening is the value of “lastpress” increasing<<not <key [space v] pressed?>> or <((days since 2000) * (86400)) < (lastpress)>>Instead of:<<not <key [space v] pressed?>> or <(((days since 2000) * (86400)) - (lastpress)) > [Cooldown]>>
- plasmaticatt
-
14 posts
Button cooldowns
Still isn't working.. I assume I have to define “lastpress,” but what exactly is it in the way you intend?
- DeveloperTools
-
100+ posts
Button cooldowns
“lastpress” doesn't need to be set as anything it already sets itself when u press space Still isn't working.. I assume I have to define “lastpress,” but what exactly is it in the way you intend?
- msztr
-
100+ posts
Button cooldowns
when green flag clicked
forever
go to x: (0) y: (200)
repeat until <<key [space v] pressed>or<out of bounds>>
falling script
end
if <touching [detector]> then
change [score v] by (1)
else
change [score v] by (-1)
end
repeat until <out of bounds>
falling script
end
wait (cooldown) secs
Last edited by msztr (Sept. 20, 2022 21:03:15)
- DeveloperTools
-
100+ posts
Button cooldowns
You still have the operators incorrect.. You have to subtract “lastpress” from “days since 2000” Still isn't working.. I assume I have to define “lastpress,” but what exactly is it in the way you intend?
<(((days since 2000) * [86400]) - (lastpress)) > [cooldown]> // HAS TO BE >, NOT < (my original reply had the wrong inequality)
Last edited by DeveloperTools (Sept. 20, 2022 20:59:29)
- DeveloperTools
-
100+ posts
Button cooldowns
Here's how it looks like in Scratch 3.0:

(Ignore the mouse down blocks, I'm currently writing this on mobile.)

(Ignore the mouse down blocks, I'm currently writing this on mobile.)