Mindegy, hogy ez discord.js kód tömörebb?

szavazat
0

Létrehozása bot segítségével discord.js úgynevezett „xok bot” Im használ ez a kódnak a véletlen számot, és a kép rendelt szám megjelenik, azonban a 30 jelet, a kód lesz egy hosszú, megerőltető összeget, amikor im biztos lehet rövidíteni,

exports.run = async (client, message, args, level) => {  
xokNum = Math.round(Math.random()*53)

switch(xokNum){
    case(1):
        message.channel.send({
        files:['D:/XokBotApp/xokBot/xokVariations/resized/xokAngryR.png']
         })
        break
    case(2):
        message.channel.send({
        files:['D:/XokBotApp/xokBot/xokVariations/resized/xokCreepyR.png']
         })
        break;

    case (3):
        message.channel.send({
        files:['D:/XokBotApp/xokBot/xokVariations/resized/xokCursed.png']
         })
         break;
    case (4):
        message.channel.send({
        files:['D:/XokBotApp/xokBot/xokVariations/resized/xokinator.gif']
         })
         break;
    case (5):
        message.channel.send({
        files:['D:/XokBotApp/xokBot/xokVariations/resized/xokLink.png']
         })
        break;
    case (6):
        message.channel.send({
        files:['D:/XokBotApp/xokBot/xokVariations/resized/xokMinion.png']
         })            
        break;

ECT

A kérdést 13/01/2020 22:05
a forrás felhasználó
Más nyelveken...                            


2 válasz

szavazat
0

Ha átnevezi a képeket egy lehetőség jól jönne húr interpoláció:

message.channel.send({
   files:[`D:/XokBotApp/xokBot/xokVariations/resized/${xokNum}.png`]
})

Amennyiben az ön képei fogják elnevezni 1.png, 2.png, 3.png stb figyeljen a befoglaló húr karaktereket, a `karakter van szükség.

Válaszolt 13/01/2020 22:12
a forrás felhasználó

szavazat
4

Szeretném csinálni, mint ez:

exports.run = async (client, message, args, level) => {  
const xokNum = Math.round(Math.random()*53);
const messages = {
    1: 'D:/XokBotApp/xokBot/xokVariations/resized/xokAngryR.png',
    2: 'D:/XokBotApp/xokBot/xokVariations/resized/xokAngryR.png',
    3: 'D:/XokBotApp/xokBot/xokVariations/resized/xokCursed.png'
};

message.channel.send({ files: messages[xokNum] });

Alternatívaként használhatja tömb helyett egy objektumot, és használja az indexet, hanem a kulcsot.
EDIT Ha a használni kívánt tömb, akkor csökkenteni kell az index egy ilyen:messages[xokNum-1]

Válaszolt 13/01/2020 22:14
a forrás felhasználó

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more