[Ajuda] Bloq/Lib
#1

Tenho um script aqui padrгo de chat privado, gostaria de saber como faзo para colocar um comando onde o player (adm) possa ativar/desativar para ler ou nгo ler / escrever nгo escrever, mensagens nesse chat privado.
# [mensagem] <- Usado desse modo para falar.
Reply
#2

Use booleana para fazer esse tipo de coisa. Ex:

PHP код:
new bool:Bloquear[MAX_PLAYERS]; // Variбvel global para cada ID logado

Mйtodo de uso:
if(
Bloquear[playerid] == true), significa que estб bloqueadoe logo nгo poderб visualizar.
if(
Bloquear[playerid] == false), significa que poderб visualizar.

Para setar valor booleanoBloquear[playerid] = true ou false
Reply
#3

Bom, estб bloqueando porйm, sу bloqueia o acesso e a mensagem do player que usou o comando, e quando outro player usa o chat o player que usou o comando para bloquear continuar recebendo as mensagens.
Estou usando assim:
PHP код:
if(text[0] == '@')
{
    if((
Info[playerid][V1] >= 1) || Info[playerid][v2] >= 2)
    {
        if(
BchatV1[playerid] == false)
        {
            new 
string[256];
            
format(string,sizeof(string)," ~ Chat: %s: %s",pName(playerid),text[1]);
            for(new 
0MAX_PLAYERS++)
            {
                if(
IsPlayerConnected(I))
                {
                    if(
IsPlayerAdmin(I) || Account[I][V1] || Account[I][V2] >= 2SendClientMessage(I, ~1string);
                }
            }
        }
    }
    return 
0;

Quero que ele bloqueie o acesso ( como estб fazendo ) e tambйm as mensagens das outras pessoas que enviarem algo nesse chat. poderia ajuda?
Reply
#4

@XandyMello, usei dessa segunda forma que vocк disse ali, e quando uma pessoa usa o comando para bloquear ele estб bloqueando para todos, queria que seria bloqueado apenas para quem usou/usar o comando, bloquear o acesso e recebimento das mensagens dos outros players.
Reply
#5

Quote:
Originally Posted by Dishz
Посмотреть сообщение
@XandyMello, usei dessa segunda forma que vocк disse ali, e quando uma pessoa usa o comando para bloquear ele estб bloqueando para todos, queria que seria bloqueado apenas para quem usou/usar o comando, bloquear o acesso e recebimento das mensagens dos outros players.
Para todos:
Код:
if(strcmp(cmd, "/desativarchat", true) == 0)
{
	for(new i = 0; i < MAX_PLAYERS; ++i)
	{
	    BchatV1[i] = false;
	}
{

if(strcmp(cmd, "/ativarchat", true) == 0)
{
	for(new i = 0; i < MAX_PLAYERS; ++i)
	{
	    BchatV1[i] = true;
	}
{
Para um player:
Код:
if(strcmp(cmd, "/desativarchat", true) == 0)
{
    BchatV1[playerid] = false;
{

if(strcmp(cmd, "/ativarchat", true) == 0)
{
    BchatV1[playerid] = true;
{
Reply
#6

@F1N4L, Segue
Код:
new bool:BchatV1[MAX_PLAYERS];
Код:
CMD:onx(playerid) 
{
    BchatV1[playerid] = false;
	return 1;
}

CMD:offx(playerid) 

    BchatV1[playerid] = true;
	return 1;
}
Код:
if(text[0] == '@')
{


	if((V1[playerid][Mod] >= 1) || V2[playerid][Level] >= 2)
	{



		if(BchatV1[playerid] == false)
		{


			new string[256];
			format(string,sizeof(string)," ~ Chat: %s: %s",pName(playerid),text[1]);
			for(new I = 0; I < MAX_PLAYERS; I ++)
			{




				if(IsPlayerConnected(I))
				{




					if(IsPlayerAdmin(I) || V1[I][Mod] || V2[I][Level] >= 2) SendClientMessage(I, ~1, string);
				}
			}
		}
	}
	return 0;
}
Ao usar /offx ele bloqueia o @ [mensagem] nгo envia, porйm continua recebendo mensagens dos outros.
vejo que nгo й possнvel fazer o que desejo, certo?
Jб tentei colocar assim tbm:

Код:
if(IsPlayerAdmin(I) || Account[I][Mod] || Account[I][Level] >= 2 || BchatV1[I] == true) SendClientMessage(I, 0x63AFF00A, string);
Assim:
Код:
if(IsPlayerAdmin(I) || Account[I][Mod] || Account[I][Level] >= 2 || BchatV1[playerid] == true) SendClientMessage(I, 0x63AFF00A, string);
E continua recebendo as mensagens quando estб bloqueado.
Reply
#7

@edit
Entendi errado, agora acho que tб certo.

Comando /a(Chat dos admins), usa ele de base.
Код:
new pDisableADM;

CMD:a(playerid, params[])
{
	if (PlayerData[playerid][pDisableADM]) // NOSSA FUNЗГO!
	    return SendErrorMessage(playerid, "Vocк tem que ativar o chat admin primeiro.");

	if (!PlayerData[playerid][pAdmin])
	    return SendErrorMessage(playerid, "Vocк nгo possui permissгo para usar esse comando.");

	if (isnull(params))
	    return SendSyntaxMessage(playerid, "/a [admin text]");

	if (strlen(params) > 64) {
	    SendAdminAlert(COLOR_GREY, "** %d Admin %s(%s): %.64s", PlayerData[playerid][pAdmin], ReturnName(playerid, 0), PlayerData[playerid][pAdmNome], params);
	    SendAdminAlert(COLOR_GREY, "...%s **", params[64]);
	}
	else {
	    SendAdminAlert(COLOR_GREY, "** %d Admin %s(%s): %s **", PlayerData[playerid][pAdmin], ReturnName(playerid, 0), PlayerData[playerid][pAdmNome], params);
	}
	return 1;
}
Comando para bloquear:
Код:
CMD:bloquear(playerid, params[])
{
    if (PlayerData[playerid][pAdmin] < 1)
	    return SendErrorMessage(playerid, "Vocк nгo estб autorizado a utilizar este comando.");

		if (!PlayerData[playerid][pDisableADM])
	    {
	        PlayerData[playerid][pDisableADM] = 1;
         	SendServerMessage(playerid, "Vocк desativou o chat admin.");
		}
		else
		{
  			PlayerData[playerid][pDisableADM] = 0;
  			SendServerMessage(playerid, "Vocк ativou o chat admin.");
		}
		return 1;
}
Reply
#8

@Derritee1001, nгo testei, mas pelo que vi do seu cod ele bloquea o chat para todos que possui o acesso, coisa que nгo quero, se estiver errado me diga que testarei mais tarde.
-
Quero um modo que bloqueie o acesso do playerID e o recebimento das mensagens de terceiros.
Bloquear o acesso do playerid eu consigo, mas ele nгo bloqueia a mensagem das outras pessoas.
Reply
#9

Quote:
Originally Posted by Dishz
Посмотреть сообщение
@Derritee1001, nгo testei, mas pelo que vi do seu cod ele bloquea o chat para todos que possui o acesso, coisa que nгo quero, se estiver errado me diga que testarei mais tarde.
-
Quero um modo que bloqueie o acesso do playerID e o recebimento das mensagens de terceiros.
Bloquear o acesso do playerid eu consigo, mas ele nгo bloqueia a mensagem das outras pessoas.
Ah.. saquei agora, entгo tб errado o cуdigo que eu postei, amanhг eu posto que possa resolver teu problema.
Reply
#10

@Derritee1001, se puder, agradeзo.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)