2021-01-21 14:00:58 +02:00
# -*- coding: utf-8 -*-
2021-01-15 23:01:23 +02:00
import sys
import webbrowser
import os
2021-01-21 14:00:58 +02:00
import time
2021-01-15 23:01:23 +02:00
import platform
import subprocess
from pathlib import Path
2021-01-21 14:00:58 +02:00
from functions import *
os . system ( " title " )
from daemon import main , editor , settings , clear
import rpc
if getConfig ( " use_colors " ) :
from colors import *
else :
RESET = ' '
BLACK = RED = GREEN = YELLOW = BLUE = MAGENTA = CYAN = WHITE = ' '
BBLACK = BRED = BGREEN = BYELLOW = BBLUE = BMAGENTA = BCYAN = BWHITE = ' '
ULINE = REVERSE = ' '
import libinstaller
2021-01-15 23:01:23 +02:00
import wget
import requests
2021-01-21 14:00:58 +02:00
import keyboard
2021-01-15 23:01:23 +02:00
from zipfile import ZipFile
2021-01-22 15:03:17 +02:00
version = 1.6
2021-01-15 23:01:23 +02:00
path = Path ( __file__ ) . resolve ( ) . parent
def mainMenu ( ) :
try :
2021-01-21 14:00:58 +02:00
os . system ( " title AutoZoom (Главная) " )
2021-01-15 23:01:23 +02:00
global version
global path
2021-01-21 14:00:58 +02:00
rpc . inMenu ( )
2021-01-15 23:01:23 +02:00
while True :
2021-01-21 14:00:58 +02:00
print ( f ' { RESET } Загрузка данных о последней версии... ' )
try :
os . system ( " title Загрузка данных... " )
serv_ver = requests . get ( " https://www.end-play.xyz/AutoZoomVersion.txt " ) . text
os . system ( " title AutoZoom (Главная) " )
clear ( )
except :
os . system ( " title Ошибка загрузки данных " )
print ( f ' Н е удалось загрузить данные о последней версии.\n Проверьте подключение к сети и повторите попытку. \n \n Статус сервера центра обновлений: \n { BRED } https://status.end-play.xyz/786373747 { RESET } ' )
none = input ( ' \n > ' )
rpc . disconnect ( )
sys . exit ( )
2021-01-15 23:01:23 +02:00
if float ( serv_ver ) > float ( version ) :
2021-01-21 14:00:58 +02:00
show_version = f ' ( { BRED } ! { RESET } ) '
2021-01-15 23:01:23 +02:00
else :
show_version = ' '
2021-01-21 14:00:58 +02:00
print ( f ' { BBLACK } » { RESET } Главное меню \n ' )
print ( f ' { BRED } 1. { RESET } Запуск ' )
print ( f ' { BRED } 2. { RESET } Редактор ' )
print ( f ' { BRED } 3. { RESET } Настройки ' )
print ( f ' { BRED } 4. { RESET } Обновление { show_version } ' )
print ( f ' { BRED } 5. { RESET } Помощь и связь ' )
print ( f ' { BRED } 6. { RESET } Закрыть приложение ' )
menu_choose = input ( f ' \n > { BRED } ' )
2021-01-22 14:53:33 +02:00
print ( RESET )
2021-01-15 23:01:23 +02:00
if menu_choose == ' 1 ' :
main ( ' menu ' )
elif menu_choose == ' 2 ' :
2021-01-21 14:00:58 +02:00
rpc . inEditor ( )
2021-01-15 23:01:23 +02:00
editor ( )
elif menu_choose == ' 3 ' :
2021-01-21 14:00:58 +02:00
rpc . inSettings ( )
2021-01-15 23:01:23 +02:00
settings ( )
elif menu_choose == ' 4 ' :
2021-01-21 14:00:58 +02:00
rpc . inUpdater ( )
2021-01-15 23:01:23 +02:00
updater ( serv_ver , version )
elif menu_choose == ' 5 ' :
2021-01-21 14:00:58 +02:00
rpc . inHelp ( )
2021-01-15 23:01:23 +02:00
helpMenu ( )
elif menu_choose == ' 6 ' :
2021-01-21 14:00:58 +02:00
rpc . disconnect ( )
2021-01-15 23:01:23 +02:00
clear ( )
sys . exit ( )
else :
clear ( )
continue
2021-01-21 14:00:58 +02:00
except KeyboardInterrupt :
rpc . disconnect ( )
2021-01-15 23:01:23 +02:00
clear ( )
2021-01-21 14:00:58 +02:00
print ( f ' Закрываем приложение { BGREEN } AutoZoom { RESET } ... ' )
sys . exit ( )
2021-01-15 23:01:23 +02:00
def os_arch ( ) :
is_64bits = sys . maxsize > 2 * * 32
if is_64bits :
return ' 64bit '
else :
return ' 32bit '
def helpMenu ( ) :
try :
while True :
2021-01-21 14:00:58 +02:00
os . system ( " title AutoZoom (Помощь) " )
2021-01-15 23:01:23 +02:00
clear ( )
global version
global path
2021-01-21 14:00:58 +02:00
print ( f ' { BBLACK } » { RESET } Меню помощи \n ' )
print ( f ' { BRED } 1. { RESET } Документация ' )
print ( f ' { BRED } 2. { RESET } Telegram проекта ' )
print ( f ' { BRED } 3. { RESET } Связаться с автором ' )
print ( f ' { BRED } 4. { RESET } Сводка информации ' )
print ( f ' { BRED } 5. { RESET } В главное меню ' )
help_choose = input ( f ' \n > { BRED } ' )
2021-01-15 23:01:23 +02:00
if help_choose == ' 1 ' :
try :
clear ( )
webbrowser . open ( " https://github.com/profitrollgame/autozoom/wiki " )
except :
clear ( )
2021-01-21 14:00:58 +02:00
none = input ( f ' { RESET } Н е удалось открыть страницу вашего браузера.\n Вы можете открыть адрес самостоятельно: { BRED } https://github.com/profitrollgame/autozoom/wiki { RESET } \n \n > ' )
2021-01-15 23:01:23 +02:00
clear ( )
elif help_choose == ' 2 ' :
try :
clear ( )
webbrowser . open ( " https://t.me/auto_zoom " )
except :
clear ( )
2021-01-21 14:00:58 +02:00
none = input ( f ' { RESET } Н е удалось открыть страницу вашего браузера.\n Вы можете открыть адрес самостоятельно: { BRED } https://t.me/auto_zoom { RESET } \n \n > ' )
2021-01-15 23:01:23 +02:00
clear ( )
elif help_choose == ' 3 ' :
try :
clear ( )
webbrowser . open ( " https://t.me/profitroll " )
except :
clear ( )
2021-01-21 14:00:58 +02:00
none = input ( f ' { RESET } Н е удалось открыть страницу вашего браузера.\n Вы можете открыть адрес самостоятельно: { BRED } https://t.me/profitroll { RESET } \n \n > ' )
2021-01-15 23:01:23 +02:00
clear ( )
if help_choose == ' 4 ' :
clear ( )
2021-01-21 14:00:58 +02:00
print ( f ' { BBLACK } » { RESET } Информация о системе \n ' )
print ( ' Система: ' )
print ( f ' { BBLACK } • { RESET } О С : { YELLOW } { platform . system ( ) } { RESET } ' )
print ( f ' { BBLACK } • { RESET } Релиз: { YELLOW } { platform . release ( ) } { RESET } ' )
print ( f ' { BBLACK } • { RESET } Разрядность: { YELLOW } { os_arch ( ) } { RESET } ' )
print ( ' \n Python: ' )
print ( f ' { BBLACK } • { RESET } Версия: { YELLOW } { platform . python_version ( ) } { RESET } ' )
print ( f ' { BBLACK } • { RESET } Вариант: { YELLOW } { platform . python_implementation ( ) } { RESET } ' )
print ( f ' { BBLACK } • { RESET } Ревизия: { YELLOW } { platform . python_revision ( ) } { RESET } ' )
print ( f ' { BBLACK } • { RESET } Расположение: { BRED } { sys . path [ 4 ] } { RESET } ' )
print ( ' \n AutoZoom: ' )
print ( f ' { BBLACK } • { RESET } Версия: { YELLOW } { version } { RESET } ' )
print ( f ' { BBLACK } • { RESET } Расположение: { BRED } { path } { RESET } ' )
2021-01-15 23:01:23 +02:00
none = input ( ' \n > ' )
clear ( )
elif help_choose == ' 5 ' :
2021-01-21 14:00:58 +02:00
rpc . inMenu ( )
2021-01-15 23:01:23 +02:00
clear ( )
2021-01-21 14:00:58 +02:00
os . system ( " title AutoZoom (Главная) " )
2021-01-15 23:01:23 +02:00
return
else :
clear ( )
continue
except KeyboardInterrupt :
2021-01-21 14:00:58 +02:00
rpc . inMenu ( )
2021-01-15 23:01:23 +02:00
clear ( )
return
def updater ( serv_ver , version ) :
try :
while True :
2021-01-21 14:00:58 +02:00
os . system ( " title AutoZoom (Обновления) " )
2021-01-15 23:01:23 +02:00
clear ( )
if float ( serv_ver ) > float ( version ) :
2021-01-21 14:00:58 +02:00
show_version = f ' ( { BRED } ! { RESET } ) '
2021-01-15 23:01:23 +02:00
serv_ver = serv_ver . rstrip ( ' \n ' )
2021-01-21 14:00:58 +02:00
show_action = f ' Обновить до { BGREEN } { serv_ver } { RESET } '
changelog_text = f ' Изменения в версии { BGREEN } { serv_ver } { RESET } : '
2021-01-15 23:01:23 +02:00
changelog_footer = ' \n Обновитесь чтобы вышеуказанное работало. '
else :
show_version = ' '
show_action = f ' Переустановить '
changelog_text = f ' Изменения в вашей версии: '
changelog_footer = ' '
2021-01-21 14:00:58 +02:00
print ( f ' { BBLACK } » { RESET } Меню обновлений \n ' )
print ( f ' { BRED } 1. { RESET } { show_action } ' )
print ( f ' { BRED } 2. { RESET } Список изменений ' )
print ( f ' { BRED } 3. { RESET } В главное меню ' )
updater_choose = input ( f ' \n > { BRED } ' )
2021-01-15 23:01:23 +02:00
if updater_choose == ' 1 ' :
while True :
clear ( )
2021-01-21 14:00:58 +02:00
print ( f ' { RESET } Подтвердите действие: \n ' )
print ( f ' { BRED } 1. { RESET } Установить ' )
print ( f ' { BRED } 2. { RESET } Отменить ' )
updater_decide = input ( ' \n > ' )
2021-01-15 23:01:23 +02:00
if updater_decide == ' 1 ' :
clear ( )
2021-01-21 14:00:58 +02:00
try :
wget . download ( ' https://www.end-play.xyz/AutoZoomLatest.zip ' , out = ' AutoZoomLatest.zip ' )
except :
print ( f ' Н е удалось загрузить архив с последней версией.\n Проверьте подключение к сети и повторите попытку. \n \n Статус сервера центра обновлений: \n { BRED } https://status.end-play.xyz/786373747 { RESET } ' )
none = input ( ' \n > ' )
continue
2021-01-15 23:01:23 +02:00
with ZipFile ( ' AutoZoomLatest.zip ' , ' r ' ) as zipObj :
zipObj . extractall ( )
print ( ' В с е файлы были успешно загружены' )
if os . path . exists ( " AutoZoomLatest.zip " ) :
os . remove ( " AutoZoomLatest.zip " )
clear ( )
none = input ( ' Обновление завершено, перезапустите AutoZoom. \n \n > ' )
2021-01-21 14:00:58 +02:00
rpc . disconnect ( )
clear ( )
print ( f ' Закрываем приложение { BGREEN } AutoZoom { RESET } ... ' )
2021-01-15 23:01:23 +02:00
sys . exit ( )
elif updater_decide == ' 2 ' :
clear ( )
break
else :
continue
elif updater_choose == ' 2 ' :
2021-01-21 14:00:58 +02:00
try :
changelog = requests . get ( " https://www.end-play.xyz/AutoZoomChangelog.txt " )
changelog . encoding = None
clear ( )
print ( f ' { RESET } { changelog_text } \n ' )
print ( changelog . text )
print ( changelog_footer )
none = input ( ' \n > ' )
continue
except :
print ( f ' { RESET } Н е удалось загрузить чейнджлог.\n Проверьте подключение к сети и повторите попытку. \n \n Статус сервера центра обновлений: \n { BRED } https://status.end-play.xyz/786373747 { RESET } ' )
none = input ( ' \n > ' )
continue
2021-01-15 23:01:23 +02:00
elif updater_choose == ' 3 ' :
2021-01-21 14:00:58 +02:00
rpc . inMenu ( )
2021-01-15 23:01:23 +02:00
clear ( )
2021-01-21 14:00:58 +02:00
os . system ( " title AutoZoom (Главная) " )
2021-01-15 23:01:23 +02:00
return
else :
continue
2021-01-21 14:00:58 +02:00
except KeyboardInterrupt :
rpc . inMenu ( )
2021-01-15 23:01:23 +02:00
clear ( )
return
if __name__ == ' __main__ ' :
2021-01-21 14:00:58 +02:00
os . system ( " title Загрузка main... " )
from functions import getConfig
2021-01-15 23:01:23 +02:00
from daemon import clear
2021-01-21 14:00:58 +02:00
import time
2021-01-15 23:01:23 +02:00
clear ( )
2021-01-21 14:00:58 +02:00
if getConfig ( " run_fullscreen " ) :
keyboard . press ( ' alt, enter ' )
time . sleep ( .25 )
keyboard . release ( ' alt, enter ' )
os . system ( " title AutoZoom (Главная) " )
mainMenu ( )
sys . exit ( )