[FilterScript] Informal Conversation
#1

Informal Conversation

Уla galera , ontem a noite quando me deitei na cama pensei em fazer esta FS. Mas vocк pode se perguntar por que esta FS , e como ela funciona e qual a funзгo dela , entгo vamos a explicaзгo.

Funзгo : Ela tem a funзгo para comeзar uma conversa informal , pois tem servidores que nгo permite vocк ter este tipo de conversa com seu amigo in-game ! Quando vocк esta em uma conversa comseu amigo vocк pode escrever normalmente com ele sem usar qualquer tipo de cmd.

Funcionamento : Ele possui 4(Quatro) comandos sгo ele , para iniciarlizar a conversa , outro para aceitar, para terminar a conversa, e um para o chat global !

Logicamente e uma FS simples mas util para servidores grandes ou de RP.

Printґs



Code:
pawn Код:
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
                           Informal Conversation
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/

#include         a_samp
#include         zcmd
#include         sscanf2

new bool:IniciadoConversa[MAX_PLAYERS] = {false,...},
    bool:Iniciar[MAX_PLAYERS] = {false,...},
    ConversandoCom[MAX_PLAYERS],
    Mandado[MAX_PLAYERS];

public OnFilterScriptInit()
{
    print(" FS - Informal Conversation By Maurнcio Moraes ");
    return 1;
}

public OnFilterScriptExit()
{
    return 1;
}

public OnPlayerConnect(playerid)
{
    IniciadoConversa[playerid] = false;
    Iniciar[playerid] = false;
    ConversandoCom[playerid] = -1;
    Mandado[playerid] = -1;
    return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
    IniciadoConversa[playerid] = false;
    ConversandoCom[playerid] = -1;
    Mandado[playerid] = -1;
    return 1;
}

public OnPlayerText(playerid, text[])
{
    new _var[190];
    if(ConversandoCom[playerid] != -1)
    {
         format(_var,sizeof(_var), "%s : %s", PlayerNome(playerid), text);
         SendClientMessage(ConversandoCom[playerid],0xFF8000FF, _var);
         SendClientMessage(playerid,0xFF8000FF, _var);
         return 0;
    }
    else
    {
         format(_var,sizeof(_var), "%s : %s", PlayerNome(playerid), text);
         SendClientMessageToAll(GetPlayerColor(playerid), _var);
    }
    return 1;
}
command(iniciarconversa, playerid,params[])
{
    new ID, _var[120], _str[160];
    if (IniciadoConversa[playerid] == true)return SendClientMessage(playerid, 0xFF2424FF, " Erro ~> Vocк jб esta em uma conversa !");
    if(sscanf(params, "d", ID)) return SendClientMessage(playerid, 0xFF2424FF, " Erro ~> cmd [ ID/NAME ]");
    if (IniciadoConversa[ID] == true)return SendClientMessage(playerid, 0xFF2424FF, " Erro ~> O Player Ja esta em uma conversa !");
    Mandado[playerid] = ID;
    Mandado[ID] = playerid;
    format(_var,sizeof(_var), "Vocк Convidou %s para uma conversa privada ( Informal )", PlayerNome(ID));
    SendClientMessage(playerid, 0xFF0080FF, _var);
    format(_str,sizeof(_str), "Informal Conversation : O Player %s chamou vocк para conversar ( /aceitar )" , PlayerNome(playerid));
    SendClientMessage(ID, 0xFF0080FF, _str);
    return 1;
}
command(terminarchamada,playerid,params[])
{
    if (IniciadoConversa[playerid] == false)return SendClientMessage(playerid, 0xFF2424FF, " Erro ~> Vocк nгo esta em nenhuma conversa !");
    SendClientMessage(playerid,0xFF2424FF," Erro ~> Chamada finalizada por parte de alguns dos players.");
    SendClientMessage(Mandado[playerid],0xFF2424FF," Erro ~> Chamada finalizada por parte de alguns dos players.");
    IniciadoConversa[playerid] = false;
    IniciadoConversa[Mandado[playerid]] = false;
    Mandado[Mandado[playerid]] = -1;
    Mandado[playerid] = -1;
    return 1;
}
command(aceitar, playerid, params[])
{
    if (IniciadoConversa[playerid] == true)return SendClientMessage(playerid, 0xFF2424FF, " Erro ~> Vocк jб esta em uma conversa !");
    if ( Mandado[playerid] == -1)return SendClientMessage(playerid, 0xFF2424FF, " Erro ~> Nнnguem mandou convite para vocк !");
    ConversandoCom[playerid] = Mandado[playerid];
    ConversandoCom[Mandado[playerid]] = Mandado[Mandado[playerid]];
    SendClientMessage(playerid,0xFF80FFFF,"Vocк aceitou o pedido de conversa de um player ( digite no chat normalmente para conversar com ele )");
    SendClientMessage(Mandado[playerid],0xFF80FFFF,"O player aceitou o pedido de conversa  ( digite no chat normalmente para conversar com ele )");
    return 1;
}
command(g, playerid, params[])
{
    new Text[190], _var[230];
    if (IniciadoConversa[playerid] == true)return SendClientMessage(playerid, 0xFF2424FF, " Erro ~> Vocк jб esta em uma conversa !");
    if(sscanf(params,"s", Text))return SendClientMessage(playerid, 0xFF2424FF, " Erro ~> g [ TEXTO ]");
    format(_var,sizeof(_var), "%s: %s",PlayerNome(playerid), Text);
    SendClientMessageToAll(GetPlayerColor(playerid), _var);
    return 1;
}
stock PlayerNome(playerid)
{
    new Nome[MAX_PLAYER_NAME];
    GetPlayerName(playerid, Nome,sizeof(Nome));
    return Nome;
}
Creditos:
PHP код:
MaurнcioMoraes 'mau_tito' Codar
PT 
Por Ajudar Testar 
Achou algum tipo de bug , Por Favor Reporte A Mim !
Reply
#2

Muito bom.
+REP
Reply
#3

Muito Bom

Parabйns

Reply
#4

Good.

Nao vi o code inteiro. Bem util.
Reply
#5

Muito bom , уtima idйia .

+Rep
Reply
#6

Gostei do seu fs e de sua lуgica porem acho que esta parte esta incorreta:
pawn Код:
public OnPlayerText(playerid, text[])
{
    new _var[190];
    if(ConversandoCom[playerid] != -1)
    {
         format(_var,sizeof(_var), "%s : %s", PlayerNome(playerid), text);
         SendClientMessage(ConversandoCom[playerid],0xFF8000FF, _var);
         SendClientMessage(playerid,0xFF8000FF, _var);
         return 1;
    }
    return 0;
}

Correto:
pawn Код:
public OnPlayerText(playerid, text[])
{
    new _var[190];
    if(ConversandoCom[playerid] != -1) {
         format(_var,sizeof(_var), "PVT-Chat: %s : %s", PlayerNome(playerid), text);
         SendClientMessage(ConversandoCom[playerid],0xFF8000FF, _var);
         SendClientMessage(playerid,0xFF8000FF, _var);
         //Private message
         return 0;
    }
    else {
         format(_var,sizeof(_var), "Global-Chat:%s : %s", PlayerNome(playerid), text);
         SendClientMessage(ConversandoCom[playerid],0xFF8000FF, _var);
         SendClientMessage(playerid,0xFF8000FF, _var);
         //Global message
   }
    return 1;
}
E este erro de portugues:
Код:
 servidores grander ou de RP.
Bom trabalho
pawn Код:
++reputation;
else
print ґґYou must spread some Reputation around before giving it to mau.tito again.ґґ
Reply
#7

Vlw a Todos.

Quote:
Originally Posted by Schocc
Посмотреть сообщение
pawn Код:
else {
         format(_var,sizeof(_var), "Global-Chat:%s : %s", PlayerNome(playerid), text);
         SendClientMessage(ConversandoCom[playerid],0xFF8000FF, _var);
         SendClientMessage(playerid,0xFF8000FF, _var);
         //Global message
   }
    return 1;
}
Errado Mano Se E Global e ToAll
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)