import sys, os, hashlib, time, random, pyautogui, keyboard

ÜĞQ = 2
VNM = "system.dat"
KLY = "luna_logs.txt"

YESIL = "\033[92m"
MAVI = "\033[94m"
RESET = "\033[0m"
KIRMIZI = "\033[91m"

def JKL(msg):
    zaman = time.strftime('%d.%m.%Y %H:%M:%S')
    with open(KLY, "a", encoding="utf-8") as f:
        f.write(f"[{zaman}] {msg}\n")

def XYJ():
    S_HASH = hashlib.sha256("LUNA2026".encode()).hexdigest()
    if not os.path.exists(VNM):
        with open(VNM, "w") as f: f.write(S_HASH)
    with open(VNM, "r") as f: PQR = f.read().strip()
    BVC = input("GİRİŞ: ").strip()
    
    if ÜĞQ == 2 and hashlib.sha256(BVC.encode()).hexdigest() == PQR:
        JKL("GİRİŞ YAPILDI")
        return True
    return False

if XYJ():
    while True:
        os.system('cls' if os.name == 'nt' else 'clear')
        print(f"{YESIL}==========================================")
        print("          L U N A   B İ L İ Ş İ M    HİZMETLERİ      ")
        print("================================================")
        print(f"\n{MAVI}1. [ BAŞLAT ]")
        print("2. [ KAYITLAR ]")
        print("3. [ ÇIKIŞ ]{RESET}\n")
        MNO = input("SEÇİM: ")
        
        if MNO == "1":
            TUS = input("TUŞ: ").lower()
            JKL(f"Makro başlatıldı: {TUS}")
            os.system('cls' if os.name == 'nt' else 'clear')
            print(f"{YESIL}--- {TUS.upper()} MAKRO AKTİF ---{RESET}")
            print("Durdurmak için F10'a basılı tutun.\n")
            
            while True:
                if keyboard.is_pressed('f10'):
                    JKL("Makro durduruldu.")
                    break
                
                SURE = random.randint(100, 150)
                
                while SURE > 0:
                    if keyboard.is_pressed('f10'): break
                    print(f"GERİ SAYIM: {SURE} SANİYE...  ", end='\r')
                    time.sleep(1)
                    SURE -= 1
                
                if keyboard.is_pressed('f10'): break
                
                pyautogui.press(TUS)
                # Buraya ekledim: Panele bastığını yazdırıyor
                print(f"\n{YESIL}[!] {TUS.upper()} TUŞUNA BASTIM.{RESET}")
                JKL(f"Tuşa basıldı: {TUS}")
                time.sleep(0.5)
                
        elif MNO == "2":
            os.system('cls' if os.name == 'nt' else 'clear')
            print(f"{MAVI}--- SON KAYITLAR ---{RESET}\n")
            if os.path.exists(KLY):
                print(open(KLY, "r", encoding="utf-8").read())
            input("\nENTER tuşuna basarak dön...")
            
        elif MNO == "3":
            sys.exit()
else:
    print(f"{KIRMIZI}HATALI GİRİŞ!{RESET}")
    time.sleep(2)
    sys.exit()