[FilterScript] Sistema de IRC
#1

Olб, venho aqui postar um sistema de IRC que fiz rapidinho aqui Ele й bem simples!

Vantagens:
  • Feito em ZCMD e SSCANF2.
  • Rбpido e simples
  • Nгo hб riscos de incompatibilidade
  • Funciona em 0.3c e 0.3d
Descriзгo:
Utilize este FS para fazer um sistema de chats exclusivos.

Comandos:
  • /setirc - Seta seu IRC para um canal [ 0 - 5 ] 0 - Padrгo
  • /i - Fala no IRC setado.
Downloads:

Pastebin

Cуdigo:

pawn Код:
#include    <a_samp>
#include    <zcmd>
#include    <sscanf2>

#define     SCM     SendClientMessage
forward MensagemParaChat(color,const string[], irc);

new IRC[MAX_PLAYERS];

public MensagemParaChat(color,const string[], irc)
{
    for(new i, p = GetMaxPlayers(); i < p; i++)
        if(IRC[i] == irc) SCM(i, color, string);
    return 1;
}

CMD:setirc(playerid, params[])
{
    new irc, string[ 200 ];
    if(sscanf(params, "d", irc)) return SCM(playerid, -1, "USE: {00FFFF}/setirc {00E5FF}[Chat]");
    if(irc > 5) return SCM(playerid, -1, "USE: {00FFFF}/setirc {00E5FF}0 - 5");
    IRC[playerid] = irc;
    new nome[MAX_PLAYER_NAME];
    GetPlayerName(playerid, nome, sizeof(nome));
    format(string, sizeof(string), "Vocк se conectou no IRC {FFFF00}%d!", irc);
    SCM(playerid, -1, string);
    return 1;
}

CMD:i(playerid, params[])
{
    if(IRC[playerid] == 0) return SCM(playerid, -1, "Utilize {00FFFF}/setirc {00E5FF}[Chat] {FFFFFF} para entrar em um IRC.");
    new string[ 200 ], nome[MAX_PLAYER_NAME];
    GetPlayerName(playerid, nome, sizeof(nome));
    format(string, sizeof(string), "{FFFF00}[IRC %d] {FF00FF}(%d)%s diz: {FFFFFF}%s", IRC[playerid], playerid, nome, params);
    MensagemParaChat(-1, string, IRC[playerid]);
    return 1;
}
E Attachment.
Reply
#2

Nice job, mas seria mais facil usar um comando /i pois se vocк falar no I irб falar no chat normal tambem ._.
Reply
#3

Quote:
Originally Posted by BlueX
Посмотреть сообщение
Nice job, mas seria mais facil usar um comando /i pois se vocк falar no I irб falar no chat normal tambem ._.
Nгo tinha pensado dessa forma Obrigado, atualizado! Vou durmir agora, trabalho amanhг |:
Reply
#4

Em breve estarei postando minha include, tambem se trata disto.
Reply
#5

De acordo com este codigo, se vocк for membro de um dos IRCs e mandar uma mensagem em qualquer um deles, tal mensagem poderб ser vista pelos outros membros do seu proprio canal e atй de outros. E somente o jogador de menor ID que estiver num IRC receberб a mensagem.

Codigo correto:

PHP код:
#include    <a_samp>
#include    <zcmd>
#include    <sscanf2>
#define     SCM     SendClientMessage
forward MensagemParaChat(color,const string[], irc);
new 
IRC[MAX_PLAYERS];
public 
MensagemParaChat(color,const string[], irc)
{
    for(new 
iGetMaxPlayers(); pi++)
        if(
IRC[i] == irc && IsPlayerConnected(i)) SCM(icolorstring);
    return 
1;
}
CMD:setirc(playeridparams[])
{
    new 
ircstring200 ];
    if(
sscanf(params"d"irc)) return SCM(playerid, -1"USE: {00FFFF}/setirc {00E5FF}[Chat]");
    if(
irc 5) return SCM(playerid, -1"USE: {00FFFF}/setirc {00E5FF}0 - 5");
    
IRC[playerid] = irc;
    new 
nome[MAX_PLAYER_NAME];
    
GetPlayerName(playeridnomesizeof(nome));
    
format(stringsizeof(string), "Vocк se conectou no IRC {FFFF00}%d!"irc);
    
SCM(playerid, -1string);
    return 
1;
}
CMD:i(playeridparams[])
{
    if(
IRC[playerid] == 0) return SCM(playerid, -1"Utilize {00FFFF}/setirc {00E5FF}[Chat] {FFFFFF} para entrar em um IRC.");
    new 
string200 ], nome[MAX_PLAYER_NAME];
    
GetPlayerName(playeridnomesizeof(nome));
    
format(stringsizeof(string), "{FFFF00}[IRC %d] {FF00FF}(%d)%s diz: {FFFFFF}%s"IRC[playerid], playeridnomeparams);
    
MensagemParaChat(-1stringIRC[playerid]);
    return 
1;

Reply
#6

Bom trabalho parabens
Reply
#7

Muito bom
Reply
#8

Quote:
Originally Posted by Shadoww5
Посмотреть сообщение
De acordo com este codigo, se vocк for membro de um dos IRCs e mandar uma mensagem em qualquer um deles, tal mensagem poderб ser vista pelos outros membros do seu proprio canal e atй de outros. E somente o jogador de menor ID que estiver num IRC receberб a mensagem.

Codigo correto:

PHP код:
#include    <a_samp>
#include    <zcmd>
#include    <sscanf2>
#define     SCM     SendClientMessage
forward MensagemParaChat(color,const string[], irc);
new 
IRC[MAX_PLAYERS];
public 
MensagemParaChat(color,const string[], irc)
{
    for(new 
iGetMaxPlayers(); pi++)
        if(
IRC[i] == ircSCM(icolorstring);
    return 
1;
}
CMD:setirc(playeridparams[])
{
    new 
ircstring200 ];
    if(
sscanf(params"d"irc)) return SCM(playerid, -1"USE: {00FFFF}/setirc {00E5FF}[Chat]");
    if(
irc 5) return SCM(playerid, -1"USE: {00FFFF}/setirc {00E5FF}0 - 5");
    
IRC[playerid] = irc;
    new 
nome[MAX_PLAYER_NAME];
    
GetPlayerName(playeridnomesizeof(nome));
    
format(stringsizeof(string), "Vocк se conectou no IRC {FFFF00}%d!"irc);
    
SCM(playerid, -1string);
    return 
1;
}
CMD:i(playeridparams[])
{
    if(
IRC[playerid] == 0) return SCM(playerid, -1"Utilize {00FFFF}/setirc {00E5FF}[Chat] {FFFFFF} para entrar em um IRC.");
    new 
string200 ], nome[MAX_PLAYER_NAME];
    
GetPlayerName(playeridnomesizeof(nome));
    
format(stringsizeof(string), "{FFFF00}[IRC %d] {FF00FF}(%d)%s diz: {FFFFFF}%s"IRC[playerid], playeridnomeparams);
    
MensagemParaChat(-1stringIRC[playerid]);
    return 
1;

WOW, tambйm nгo tinha pensado dessa forma, e quando testei tava sozinho, obrigado Shadoww
Reply
#9

hm, vlw ! vou precisar de um pra por no meu RP ! ;;
Reply
#10

Bom trabalho!,
quando vi o tнtulo pensei que era mIRC, rs.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)