Question

Здравствуйте, задался вопросом как сделать систему кодовых слов которые стримеры создают на трансляциях.

 

Описание системы: Стример выдает зарплату допустим 5 тысяч он вводит команду /wstream слово кошка и кол-во денег /wstream 5000 кошка после этого у зрителей есть 10 секунд чтобы ввести это кодовое слово. Зрители в свою очередь вводят /stream и в диалог вводят кодовое слово и получают 5 тысяч.

 

У меня есть эта система просто надо сделать так чтобы когда мы создавали кодовое слово оно создавалось на 10 секунд

Команда:

CMD:wstream(playerid, params[])
{
    if(PlayerLogged[playerid] == 0return 1;
    if(PlayerInfo[playerid][pAdmin] < 9return 1;
    if(sscanf(params, "ds[64]", params[0],params[1])) return SendClientMessage(playerid, COLOR_GREY, "/wstream  [cash] [слово]");
    format(totalstring, 100" [A]: %s[%d] создал кодовое слово %s на $%d", sendername(playerid),playerid,params[1],params[0]);
    SendAdminMessage(playerid,COLOR_LIGHTRED,totalstring);
    return 1;
}


 

Share this post


Link to post

6 answers to this question

  • 0

@Mason, может быть где-то не так сделал, давно уже ничего не писал. все же, думаю пример понятен.

Спойлер

#define MAX_WORDS (500)
const MAX_LEGHTH_WORD = 50;

enum e_words {
    eCash,
    eWord[MAX_LEGHTH_WORD]
};
new WordsInfo[MAX_WORDS][e_words];
new TOTALWORDS;

CMD:wstream(playerid, params[])
{
    if(PlayerLogged[playerid] == 0return 1;
    if(PlayerInfo[playerid][pAdmin] < 9return 1;
    if(sscanf(params, "ds[64]", params[0],params[1])) 
        return SendClientMessage(playerid, COLOR_GREY, "/wstream  [cash] [слово]");

    format(totalstring, 100" [A]: %s[%d] создал кодовое слово %s на $%d", sendername(playerid),playerid,params[1],params[0]);
    SendAdminMessage(playerid,COLOR_LIGHTRED,totalstring);
    
    return AddSecretWord(params[0], params[1]);
}

stock AddSecretWord(cash, str[]) {
    new i = TOTALWORDS++;

    WordsInfo[i][eCash] = cash;
    strmid(WordsInfo[i][eWord], str, 0, strlen(WordsInfo[i][eWord]), sizeof(WordsInfo[i][eWord]));
    return 1;
}

 

 

Share this post


Link to post
  • 0

Один из вариантов - энумератор, а на этот энумератор секундный таймер.

Share this post


Link to post
  • 0

SetTimerEx 

Share this post


Link to post
  • 0
11 часов назад, ʟᴀsᴛ ᴇᴍᴘᴇʀᴏʀ. сказал:

Один из вариантов - энумератор, а на этот энумератор секундный таймер.

А можете пожалуйста продемонстрировать мне что допустим в этом энумераторе создавать?

Share this post


Link to post
  • 0
6 часов назад, ʟᴀsᴛ ᴇᴍᴘᴇʀᴏʀ. сказал:

@Mason, может быть где-то не так сделал, давно уже ничего не писал. все же, думаю пример понятен.

  открыть спойлер


#define MAX_WORDS (500)
const MAX_LEGHTH_WORD = 50;

enum e_words {
    eCash,
    eWord[MAX_LEGHTH_WORD]
};
new WordsInfo[MAX_WORDS][e_words];
new TOTALWORDS;

CMD:wstream(playerid, params[])
{
    if(PlayerLogged[playerid] == 0return 1;
    if(PlayerInfo[playerid][pAdmin] < 9return 1;
    if(sscanf(params, "ds[64]", params[0],params[1])) 
        return SendClientMessage(playerid, COLOR_GREY, "/wstream  [cash] [слово]");

    format(totalstring, 100" [A]: %s[%d] создал кодовое слово %s на $%d", sendername(playerid),playerid,params[1],params[0]);
    SendAdminMessage(playerid,COLOR_LIGHTRED,totalstring);
    
    return AddSecretWord(params[0], params[1]);
}

stock AddSecretWord(cash, str[]) {
    new i = TOTALWORDS++;

    WordsInfo[i][eCash] = cash;
    strmid(WordsInfo[i][eWord], str, 0, strlen(WordsInfo[i][eWord]), sizeof(WordsInfo[i][eWord]));
    return 1;
}

 

 

Я вставил код в свой мод

 

C:\Users\Roman\Desktop\ \REVENT JUSTICE\gamemodes\justice.pwn(51584) : error 001: expected token: "]", but found "-identifier-"
C:\Users\Roman\Desktop\ \REVENT JUSTICE\gamemodes\justice.pwn(51584) : warning 215: expression has no effect
C:\Users\Roman\Desktop\ \REVENT JUSTICE\gamemodes\justice.pwn(51584) : error 001: expected token: ";", but found "]"
C:\Users\Roman\Desktop\ \REVENT JUSTICE\gamemodes\justice.pwn(51584) : error 029: invalid expression, assumed zero
C:\Users\Roman\Desktop\ \REVENT JUSTICE\gamemodes\justice.pwn(51584) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664          Copyright (c) 1997-2006, ITB CompuPhase


4 Errors.

 

Жалуется на эту строку: strmid(WordsInfo[i][eWord], str, 0, strlen(WordsInfo[i][eWord]), sizeof(WordsInfo[i][eWord]));

 

Share this post


Link to post
  • 0

@Mason, это пример, а не полная система, ее в мод вставлять не нужно.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content