Skip to content

Instantly share code, notes, and snippets.

@Vovanda
Last active January 17, 2021 07:49
Show Gist options
  • Save Vovanda/b47f75287542eb1f62704d5881b3d1d8 to your computer and use it in GitHub Desktop.
Save Vovanda/b47f75287542eb1f62704d5881b3d1d8 to your computer and use it in GitHub Desktop.
Отображение случайного сообщения в виджете VK приложения (VKScript)
// VKScript rand implementation
// VK API random in widget
//Получение случайных числел
//Используем id проверенного человека с большим колличеством друзей
var friends_ids = API.friends.get({ user_id: 3972090, count: 10000 });
var count_of_randoms = 2;
var rnd_ids = API.friends.get({ user_id: 3972090, order:"random", count: count_of_randoms }).items;
var rnd_values = [];
var i = 0;
while(i < count_of_randoms)
{
rnd_values.push(friends_ids.items.indexOf(rnd_ids[i]) / friends_ids.count);
i=i+1;
}
var items = [];
if (rnd_values[0] <= 0.1)
{
items = [{ "text": "Случайный очень редкий текст" }];
}
if (rnd_values[0] > 0.1 && rnd_values[0] <= 0.3)
{
items =
[
{ "text": "Случайный редкий текст №1" },
{ "text": "Случайный редкий текст №2" }
];
}
if (rnd_values[0] > 0.3 && rnd_values[0] <= 0.9)
{
items =
[
{ "text": "Случайный частый текст №1" },
{ "text": "Случайный частый текст №2" },
{ "text": "Случайный частый текст №3" }
];
}
// В 10% случаях виджет отсутсвует.
if (rnd_values[0] > 0.9)
return null;
var item_id = parseInt(rnd_values[1] * items.length + 0.5);
return {
"title": "Это случайный текст:",
"text": items[item_id].text
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment