Discuss Scratch
- Discussion Forums
- » Help with Scripts
- » A way to find the number of people currently viewing a project
- BeaconStudiosMaster2
-
Scratcher
7 posts
A way to find the number of people currently viewing a project
This is a way to monitor concurrent viewers (the amount of different people viewing the project at that moment)
Note: You can change the when green flag clicked button to something else if you wanted.
and to detect when the project stops:
But if you're using the timer for other purposes, here's an alternative:
The only problem with it is that it can't detect if the user closed the tab.
Note: You can change the when green flag clicked button to something else if you wanted.
when green flag clicked
set [index v] to [0]
repeat (length of [list v] :: list)
change [index v] by (1)
if <not <(item (index) of [list v] :: list) = (username)>> then
add (username) to [list v]
change [☁ concurrent viewers v] by (1)
end
and to detect when the project stops:
when green flag clicked
forever
reset timer
end
when [timer v] > (0)
delete (item # of (username) in [list v]) of [list v]
change [☁ concurrent viewers v] by (-1)
But if you're using the timer for other purposes, here's an alternative:
when green flag clicked
forever
set [Time v] to (timer)
end
when [timer v] > (Time)
delete (item # of (username) in [list v]) of [list v]
change [☁ concurrent viewers v] by (-1)
The only problem with it is that it can't detect if the user closed the tab.
Last edited by BeaconStudiosMaster2 (Yesterday 22:54:53)
- PowPro1502
-
Scratcher
100+ posts
A way to find the number of people currently viewing a project
Make an inactivity timeout. If you're offline for over 15 seconds, you get a warning and have to press a key to go online otherwise the project stops and you need to restart
- BeaconStudiosMaster2
-
Scratcher
7 posts
A way to find the number of people currently viewing a project
to make an inactivity checker, you can do the following:
After that, you can do whatever you want with it. It also works if you go off of the tab, but not if you stop the project or close the tab. You could also use the timer for this, but it's already used for other purposes in most projects.
when green flag clicked
set [inactive? v] to (0)
forever
if <<key [any v] pressed?> or <mouse down?>> then // this checks for inputs and updates a variable to the last time an input was made
set [lastInputTime v] to (days since 2000)
end
if <((days since 2000) - (lastInputTime)) > [0.00018]> then // this checks how much time has passed since an input was made by comparing the variable to the current time, the 0.00018 is roughly 15 seconds
set [inactive? v] to (1)
end
end
After that, you can do whatever you want with it. It also works if you go off of the tab, but not if you stop the project or close the tab. You could also use the timer for this, but it's already used for other purposes in most projects.
Last edited by BeaconStudiosMaster2 (Yesterday 22:58:04)
- purplebunny63
-
Scratcher
100+ posts
A way to find the number of people currently viewing a project
to make an inactivity checker, you can do the following:when green flag clicked
set [inactive? v] to (0)
forever
if <<key [any v] pressed?> or <mouse down?>> then//This conditional checks for inputs and updates a variable to the last time an input was made
set [lastInputTime v] to (days since 2000)
end
if <((days since 2000) - (lastInputTime)) > [0.00018]> then//this checks how much time has passed since an input was made by comparing the variable to the current time, the 0.00018 is roughly 15 seconds
set [inactive? v] to (1)
end
end
After that, you can do whatever you want with it. It also works if you go off of the tab, but not if you stop the project or close the tab. You could also use the timer for this, but it's already used for other purposes in most projects.
Fixed
- BeaconStudiosMaster2
-
Scratcher
7 posts
A way to find the number of people currently viewing a project
whoops (oh yea i also fixed the concurrent players code since it had a bunch of errors)
- Discussion Forums
- » Help with Scripts
-
» A way to find the number of people currently viewing a project
