Bombsquad-Ballistica-Modded.../dist/ba_root/mods/tools/logger.py
pranav-1711 d319cae99d features folder integration.
features folder integration.
files using snake case naming style.
2022-02-14 14:43:20 +05:30

86 lines
1.5 KiB
Python

import ba,_ba
import datetime;
import os
import threading
# ct stores current time
import setting
settings = setting.get_settings_data()
if settings['discordbot']["enable"]:
from tools import discordbot
path=_ba.env()['python_directory_user']
serverdata=os.path.join(path,"serverData" + os.sep)
chats=[]
joinlog=[]
cmndlog=[]
misclogs=[]
def log(msg,mtype='sys'):
global chats,joinlog,cmndlog,misclogs
if settings['discordbot']["enable"]:
m=msg.replace('||','|')
discordbot.push_log("***"+mtype+":***"+m)
ct=datetime.datetime.now()
msg=str(ct)+": "+msg +"\n"
if mtype=='chat':
chats.append(msg)
if len(chats) >10:
dumplogs(chats,"chat").start()
chats=[]
elif mtype=="playerjoin":
joinlog.append(msg)
if len(joinlog)>3:
dumplogs(joinlog,"joinlog").start()
joinlog=[]
elif mtype=='chatcmd':
cmndlog.append(msg)
if len(cmndlog)>3:
dumplogs(cmndlog,"cmndlog").start()
cmndlog=[]
else:
misclogs.append(msg)
if len(misclogs)>5:
dumplogs(misclogs,"sys").start()
misclogs=[]
class dumplogs(threading.Thread):
def __init__(self,msg,mtype='sys'):
threading.Thread.__init__(self)
self.msg=msg
self.type=mtype
def run(self):
if self.type=='chat':
f=open(serverdata+"Chat Logs.log","a+")
elif self.type=='joinlog':
f=open(serverdata+"joining.log","a+")
elif self.type=='cmndlog':
f=open(serverdata+"cmndusage.log","a+")
else:
f=open(serverdata+"logs.log","a+")
for m in self.msg:
f.write(m)
f.close()