Sadržaj:
Napominjemo da stav Discord o instalaciji ekstenzija i dodatnih plugina još uvek nije potpuno jasan. Neki korisnici dobijaju automatsku zabranu od strane AI-a ako izaberu pogrešne postavke ekstenzija, koje se doživljavaju kao pokušaj narušavanja funkcionalnosti softvera, stoga koristite uputstvo koje sledi na sopstvenu odgovornost.
Sve daljnje radnje podrazumevaju interakciju sa računarom programom Discord, jer će biti potrebno instalirati plugin i izvršiti podešavanje, što je moguće realizovati samo na PC-u (verzija za pretraživač nije pogodna za to). Pri tome, već promenljivi status će biti vidljiv svuda. Ako još niste instalirali Discord na svoj računar, učinite to koristeći uputstvo na linku ispod.
Više informacija: Kako instalirati Discord
Korak 1: Preuzimanje i instalacija BetterDiscord-a
Za mogućnost instalacije promenljivog statusa u Discord-u odgovara program BetterDiscord.Ona proširuje ukupnu funkcionalnost mesindžera, dodajući nove funkcije, deo kojih ćemo koristiti u nastavku.
Pređite na preuzimanje BetterDiscord sa zvaničnog sajta
- Iskoristite link iznad da pređete na zvanični sajt i započnete preuzimanje programa.
- Otvorite stranicu na GitHub-u, gde preporučujemo da odmah izaberete datoteku formata EXE za preuzimanje instalatera.
- Po završetku preuzimanja otvorite je iz foldera sa preuzimanjima ili direktno kroz pregledač.
- Potvrdite pravila licencnog ugovora za nastavak instalacije.
- U sledećem prozoru izaberite prvu opciju — „Install BandagedBD“.
- Označite kvačicom „Install To Stable“, ako je instalirana obična stabilna verzija Discord-a. Putanja do datoteka se određuje automatski, ali ako to nije učinjeno, moraćete ručno da navedete lokaciju gde se nalazi izvršna datoteka za pokretanje softvera.
- Sačekajte završetak instalacije, nakon čega zatvorite ovaj prozor i restartujte Discord.







Time je dodavanje proširene funkcionalnosti u program završeno. U ovom članku ćemo govoriti samo o dostupnim plugin-ima, a ako želite da saznate šta još nudi BetterDiscord, upoznajte se sa opisom na zvaničnom sajtu ili samostalno proverite svaku stavku u samom Discord-u.
Korak 2: Kreiranje plugina za promenljivi status
Kreiraćemo plugin koji će kasnije biti učitan u BetterDiscord i omogućiti podešavanje promenljivog statusa. Već je napisan pomoću jezika JavaScript — kod je dostupan javnosti.Ostaće samo da se formira fajl i učita za korišćenje u programu.
- Za to otvorite Discord i kliknite na ikonu sa zupčanikom, čime prelazite u opšte postavke.
- Videćete novi odeljak — «Bandaged BD», gde kliknite na stavku «Plugins».
- Kliknite na dugme «Open Plugin Folder», da biste prešli u folder gde se čuvaju svi povezani dodaci.
- Za sada je prazan, pošto nijedno proširenje još nije instalirano, što ćemo sada ispraviti.
- Kliknite desnim tasterom miša na prazno mesto u direktorijumu, pređite mišem na «Kreirati» i izaberite opciju «Tekstualni dokument».
- Možete ne menjati naziv i dvaput kliknuti za uređivanje putem «Notepad».
- Nalepite sledeći kod:
//META{"name":"AnimatedStatus"}*//
class AnimatedStatus {
/* BD funkcije */
getName () {
return "AnimatedStatus";
}getVersion () {
return "0.8.4";
}getAuthor () {
return "toluschr";
}getDescription () {
return "Animirajte svoj Discord status";
}setData (key, value) {
BdApi.setData(this.getName(), key, value);
}getData (key) {
return BdApi.getData(this.getName(), key);
}/* Kod vezan za animacije */
load () {
this.animation = this.getData("animation");
this.timeout = this.getData("timeout");
Status.authToken = this.getData("token");
}start () {
if (this.animation == undefined || this.timeout == undefined || Status.authToken == undefined) return;
this.Status_Animate();
}stop () {
clearTimeout(this.loop);
Status.unset();
}Status_Animate (index = 0) {
if (index >= this.animation.length) index = 0;Status.set(this.animation[index]);
this.loop = setTimeout(() => { this.Status_Animate(index + 1); }, this.timeout);
}/* Funkcije vezane za postavke */
strToAnimation (str) {
let lines = str.split("n");
let out = [];
for (let i = 0; i < lines.length; i++) {
if (lines[i].length == 0) continue;out.push(JSON.parse("[" + lines[i] + "]"));
}
return out;
}{{t_3animationToStr (animation) {
if (animation == undefined) return ""let out = "";
for (let i = 0; i < animation.length; i++) {
out += JSON.stringify(animation[i]).substr(1).slice(0, -1) + "n";
}
return out;
}getSettingsPanel () {
let settings = document.createElement("div");
settings.style.padding = "10px";// Auth token
settings.appendChild(GUI.newLabel("AuthToken (https://discordhelp.net/discord-token)"));
let token = GUI.newInput();
token.value = this.getData("token");
settings.appendChild(token);settings.appendChild(GUI.newDivider());
// timeout
settings.appendChild(GUI.newLabel("Vreme po ključnom frejmu"));
let timeout = GUI.newInput();
timeout.value = this.getData("timeout");
settings.appendChild(timeout);settings.appendChild(GUI.newDivider());
// Animacija
settings.appendChild(GUI.newLabel('Animacija ("" za bez Emoji)'));
let animation = GUI.newTextarea();
animation.style.fontFamily = "SourceCodePro,Consolas,Liberation Mono,Menlo,Courier,monospace";
animation.placeholder = '"Poruka 1", "Emoji 1"n"Poruka 2", ""n...';
animation.value = this.animationToStr(this.getData("animation"));
settings.appendChild(animation);// Dugme za čuvanje
settings.appendChild(GUI.newDivider());
let save = GUI.newButton("Sačuvaj");
save.onclick = () => {
// Postavi Auth token
this.setData("token", token.value);// Postavi timeout
this.setData("timeout", timeout.value);// Postavi Animaciju
this.setData("animation", this.strToAnimation(animation.value));this.stop();
this.load();
this.start();
};
settings.appendChild(save);// Kraj
return settings;
}
}/* Status API */
const Status = {
authToken: "",request: () => {
let req = new XMLHttpRequest();
req.open("PATCH", "/api/v6/users/@me/settings", true);
req.setRequestHeader("authorization", Status.authToken);
req.setRequestHeader("content-type", "application/json");
return req;
},set: (status) => {
Status.request().send('{"custom_status":{"text":"' + status[0] + '", "emoji_name": "' + status[1] + '"}}');
},unset: () => {
Status.request().send('{"custom_status":null}');
}
};/* GUI Wrapper */
const GUI = {
newInput: () => {
let input =
document.createElement("input");
input.className = "inputDefault-_djjkz input-cIJ7To";
return input;
},newLabel: (text) => {
let label = document.createElement("h5");
label.className = "h5-18_1nd";
label.innerText = text;
return label;
},newDivider: () => {
let divider = document.createElement("div");
divider.style.paddingTop = "15px";
return divider;
},newTextarea: () => {
let textarea = document.createElement("textarea");
textarea.className = "input-cIJ7To scrollbarGhostHairline-1mSOM1";
textarea.style.resize = "vertical";
textarea.rows = 4;
return textarea;
},newButton: (text) => {
let button = document.createElement("button");
button.className = "button-38aScr lookFilled-1Gx00P colorBrand-3pXr91 sizeSmall-2cSMqn";
button.innerText = text;
return button;
}
};
- Nakon toga kliknite na meni «Fajl» i iz pojavljenog spiska izaberite «Sačuvaj kao».
- U prozoru «Sačuvanje» otvoriće se ispravno mesto, tako da ga ne treba menjati.U polju «Tip fajla» navedite «Svi fajlovi *.*».
- Kao naziv fajla upišite «animated-status.plugin.js» i potvrdite čuvanje.
- Vratite se u prethodni direktorijum, uverite se da tamo postoji JavaScript fajl, a tekstualni dokument možete obrisati, pošto je ostao prazan.
- Otvorite meni «Plugins» i proverite da li je upravo kreirani plugin prisutan. Pomaknite klizač za njegovu aktivaciju.
- Sve ostale radnje se obavljaju preko «Settings», o čemu će biti reči u sledećem koraku.













Korak 3: Podešavanje promenljivog statusa
Poslednji korak — podešavanje promenljivog statusa pomoću dodatog plugina. Sada je potrebno podesiti sam plugin, navodeći samo jedan parametar. Njegovo dobijanje se vrši u nekoliko koraka, pa ćemo ga razraditi posebno.
Dobijanje autorizacionog tokena
Autorizacioni token je potreban pluginu da bi izvršavao automatske radnje promene statusa. Za njegovo dobijanje biće potrebna konzola za programere i već postavljen običan status.
- Kliknite na svoju avataru da otvorite meni radnji sa statusima.
- Izaberite poslednju opciju — «Postavi korisnički status».
- Upišite bilo koju poruku i sačuvajte promene.
- Ponovo otvorite meni sa statusima i pritisnite Ctrl + Shift + I da prikažete konzolu za programere.
- U njoj pređite na karticu «Network».
- Iz liste imena izdvojite «science» i otvorite karticu «Headers».
- Spustite se skoro do kraja spiska parametara, gde pronađite red «authorization» i kopirajte njegovu vrednost.
- Pređite u «Plugins», otvorite podešavanja potrebnog plugina i nalepite token u predviđeno polje.








Dodavanje statusa za promenu
Preostaje samo da izaberete vreme nakon kojeg će se statusi menjati i upišete njihovo potrebno broj, što se dešava na sledeći način:
- U meniju podešavanja plugina postavite kašnjenje u milisekundama.Unesite kašnjenje od najmanje 3000 kako biste izbegli moguće blokiranje naloga.
- Ako želite da dodate emotikone u status, prvo pronađite bilo koji sajt gde su prikazane njihove slike i kopirajte ih.
- Koristite dvostruke navodnike —
""
, unutar kojih umetnite statuse u posebnim redovima. Podržani su i ćirilica i latinica, a o emotikonima već znate. Kliknite na «Sačuvaj» da biste sačuvali promenjeni status. - Vratite se na svoju stranicu i proverite promene.
- Potrebno je sačekati navedeni broj sekundi da bi se status automatski promenio.




