Skip to content

Instantly share code, notes, and snippets.

@MasterGroosha
Last active November 8, 2023 20:35
Show Gist options
  • Save MasterGroosha/963c0a82df348419788065ab229094ac to your computer and use it in GitHub Desktop.
Save MasterGroosha/963c0a82df348419788065ab229094ac to your computer and use it in GitHub Desktop.
###
# Telegram-казино
# Этот код позволяет понять, какие именно значения выпали в дайсе "казино" по тому, что вернул Bot API
# Авторы: @Groosha, @svinerus | 2020 год
###
from typing import List
# 0 1 2 3
casino = ["BAR", "виноград", "лимон", "семь"]
def get_casino_values(dice_value) -> List:
"""
Возвращает то, что было на конкретном дайсе-казино
:param dice_value: Число, которое вернул Bot API
:return: строку, содержащую все выпавшие элементы
Альтернативный вариант (ещё раз спасибо t.me/svinerus):
return [casino[(dice_value - 1) // i % 4]for i in (1, 4, 16)]
"""
dice_value -= 1
result = []
for _ in range(3):
result.append(casino[dice_value % 4])
dice_value //= 4
return result
if __name__ == "__main__":
for i in range(1, 65):
print(i, get_casino_values(i))
@SevaShpun
Copy link

Спасибо 👍

@MasterGroosha
Copy link
Author

Спасибо https://t.me/svinerus за укороченный вариант в одну функцию!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment