diff --git a/package-lock.json b/package-lock.json index 7c3a3a3..f461003 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "denim_3001", - "version": "3001.50.2", + "version": "3001.51.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "denim_3001", - "version": "3001.50.2", + "version": "3001.51.0", "license": "ISC", "dependencies": { "@discordjs/voice": "^0.15.0", diff --git a/package.json b/package.json index 9ca7e19..5282da6 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "denim_3001", - "version": "3001.50.2", + "version": "3001.51.0", "description": "Toto je velmi kvalitní bot.", "repository": { "url": "https://github.com/Histmy/Denim-Bot/" diff --git a/src/modules/zbytek.ts b/src/modules/zbytek.ts index c1f338a..5cf9a3a 100644 --- a/src/modules/zbytek.ts +++ b/src/modules/zbytek.ts @@ -13,6 +13,8 @@ const zpravy = new Map>(); const dobaOmezení = 20_000; let client: Client; +let restartPozadavky: { id: string, kdy: number; }[] = []; + const exp: Modul = { more_komandy: { @@ -41,6 +43,30 @@ const exp: Modul = { } }, + restartujsetykurvozasrana: { + als: ["restart"], + run: mes => { + const sudo = mes.channel.id == process.env.adminChannel || mes.author.id == process.env.adminID; + + restartPozadavky = restartPozadavky.filter(pozadavek => { + return pozadavek.kdy > Date.now() - 6e4; + }); + + if (!sudo) { + if (!restartPozadavky.find(el => el.id == mes.author.id)) restartPozadavky.push({ id: mes.id, kdy: Date.now() }); + if (restartPozadavky.length == 1) + return "jelikoz nesi hlava zpravne namazana musi se s tebou zhotnout jeste 2 hajzlaty"; + if (restartPozadavky.length == 2) + return `heste jeden`; + } + + getVoiceConnections().forEach(con => con.destroy()); + client.user?.setStatus("invisible"); + mes.react("👋") + .then(() => process.exit(69)); + } + }, + lastuptime: () => { const index = process.argv.length > 3 ? 3 : 2; const sekundy = Number(process.argv[index]); diff --git a/start.sh b/start.sh index 20cbfc3..8dd4688 100644 --- a/start.sh +++ b/start.sh @@ -1,10 +1,8 @@ declare -a casy i=0 -while true -do +while true; do cas=$(date +"%s") - if node . $posel $posledni - then + if node . $posel $posledni; then echo stahuju update git stash git pull @@ -12,19 +10,23 @@ do tsc >/dev/null unset posel else - echo exit code byl $? - posel=1 - casy[$i]=$(date +"%s") - posledni=$(($((casy[$i]))-$cas)) - - if (($i < 3)) || (($((casy[$(($i - 3))])) < $(($((casy[$i])) - 864000)))) - then - echo Poslo to dostatecne malo, restartuju + kod=$? + echo exit code byl $kod + if (($kod == 69)); then + echo jenom restart else - echo Poslo to moc, seru na to - echo osel$(date +"%s") >> zaznamy.dlog - break + posel=1 + casy[$i]=$(date +"%s") + posledni=$(($((casy[$i])) - $cas)) + + if (($i < 3)) || (($((casy[$(($i - 3))])) < $(($((casy[$i])) - 864000)))); then + echo Poslo to dostatecne malo, restartuju + else + echo Poslo to moc, seru na to + echo osel$(date +"%s") >>zaznamy.dlog + break + fi + i=$(($i + 1)) fi - i=$(($i+1)) fi done