Frase vip ao logar - fear - 26/12/2021
boa noite. estou tentando colocar a frase de conectou-se ao servidor do vip pois o vip tem o cmd /frase que ele pode digitar uma frase de sua escolha para aparecer quando ele conecta no servidor.. porém quando eu coloco junto com a do servidor global buga..
CMD:
FRASE
Código PHP: CMD:frase(playerid, params[]) { if(ContaPlayer[playerid][VipLevel] < 2) return Msg(playerid, Vermelho, "<!> {FFFFFF}Comando exclusivo para Jogador Sócio!");
if(isnull(params)) return Msg(playerid, Vermelho, "<!> {FFFFFF}Use: {FF0000}/Frase [ Mensagem ]");
if(strlen(params) > 15) return Msg(playerid, Vermelho, "<!> {FFFFFF}Frase muita extensa, diminua os caracteres!");
format(ContaPlayer[playerid][Frase_Vip], 15, "%s", params);
new mensagem[61 + 15];
format(mensagem, sizeof(mensagem), "<!> {FFFFFF}Você alterou sua frase de Login para: {abaeb2}%s!", params);
SendClientMessage(playerid, Verde, mensagem);
return 1; }
Código PHP: OBS: TEM VIP E SÓCIO
ONPLAYERCONNECT - FRASE VIP if(ContaPlayer[playerid][VipLevel] < 2 || ContaPlayer[playerid][VipLevel] > 1 && isnull(ContaPlayer[playerid][Frase_Vip]) ) format(String, sizeof(String), "{FFFFFF}O {abaeb2}%s {FFFFFF}%s {32CD32}Está Online > {FFFFFF}( {A9A9A9}%s {FFFFFF}) ({A9A9A9}%d/60{FFFFFF})", CategoriaVip(playerid), Nome(playerid), ContaPlayer[playerid][Frase_Vip], ConnectedPlayers());
ONPLAYERCONNECT - FRASE GLOBAL format(String, sizeof(String), "{FFFFFF}%s (%d) {7E6FAE}Conectou-se no servidor {FFFFFF}( {7E6FAE}%d/50{FFFFFF} )", Nome(playerid), playerid, ConnectedPlayers()); MsgToAll(cortag, String);
Ou não aparece a frase do vip ao lado de conectou-se ou não aparece ambas as frases de conectou-se... tentei if else e nada..
RE: Frase vip ao logar - xbruno1000x - 26/12/2021
(26/12/2021 00:44)fear Escreveu: boa noite. estou tentando colocar a frase de conectou-se ao servidor do vip pois o vip tem o cmd /frase que ele pode digitar uma frase de sua escolha para aparecer quando ele conecta no servidor.. porém quando eu coloco junto com a do servidor global buga..
CMD:
FRASE
Código PHP: CMD:frase(playerid, params[]) { if(ContaPlayer[playerid][VipLevel] < 2) return Msg(playerid, Vermelho, "<!> {FFFFFF}Comando exclusivo para Jogador Sócio!");
if(isnull(params)) return Msg(playerid, Vermelho, "<!> {FFFFFF}Use: {FF0000}/Frase [ Mensagem ]");
if(strlen(params) > 15) return Msg(playerid, Vermelho, "<!> {FFFFFF}Frase muita extensa, diminua os caracteres!");
format(ContaPlayer[playerid][Frase_Vip], 15, "%s", params);
new mensagem[61 + 15];
format(mensagem, sizeof(mensagem), "<!> {FFFFFF}Você alterou sua frase de Login para: {abaeb2}%s!", params);
SendClientMessage(playerid, Verde, mensagem);
return 1; }
Código PHP: OBS: TEM VIP E SÓCIO
ONPLAYERCONNECT - FRASE VIP if(ContaPlayer[playerid][VipLevel] < 2 || ContaPlayer[playerid][VipLevel] > 1 && isnull(ContaPlayer[playerid][Frase_Vip]) ) format(String, sizeof(String), "{FFFFFF}O {abaeb2}%s {FFFFFF}%s {32CD32}Está Online > {FFFFFF}( {A9A9A9}%s {FFFFFF}) ({A9A9A9}%d/60{FFFFFF})", CategoriaVip(playerid), Nome(playerid), ContaPlayer[playerid][Frase_Vip], ConnectedPlayers());
ONPLAYERCONNECT - FRASE GLOBAL format(String, sizeof(String), "{FFFFFF}%s (%d) {7E6FAE}Conectou-se no servidor {FFFFFF}( {7E6FAE}%d/50{FFFFFF} )", Nome(playerid), playerid, ConnectedPlayers()); MsgToAll(cortag, String);
Ou não aparece a frase do vip ao lado de conectou-se ou não aparece ambas as frases de conectou-se... tentei if else e nada..
Por que não utilizou essa função?
https://open.mp/pt/docs/scripting/functions/SendClientMessageToAll
Segundamente, tente utilizar o código na OnPlayerSpawn, pois na OnPlayerConnect as variáveis não costumam ter sido atribuídas ainda.
Além disso a condicional está incorreta.
RE: Frase vip ao logar - fear - 26/12/2021
(26/12/2021 00:56)xbruno1000x Escreveu: (26/12/2021 00:44)fear Escreveu: boa noite. estou tentando colocar a frase de conectou-se ao servidor do vip pois o vip tem o cmd /frase que ele pode digitar uma frase de sua escolha para aparecer quando ele conecta no servidor.. porém quando eu coloco junto com a do servidor global buga..
CMD:
FRASE
Código PHP: CMD:frase(playerid, params[]) { if(ContaPlayer[playerid][VipLevel] < 2) return Msg(playerid, Vermelho, "<!> {FFFFFF}Comando exclusivo para Jogador Sócio!");
if(isnull(params)) return Msg(playerid, Vermelho, "<!> {FFFFFF}Use: {FF0000}/Frase [ Mensagem ]");
if(strlen(params) > 15) return Msg(playerid, Vermelho, "<!> {FFFFFF}Frase muita extensa, diminua os caracteres!");
format(ContaPlayer[playerid][Frase_Vip], 15, "%s", params);
new mensagem[61 + 15];
format(mensagem, sizeof(mensagem), "<!> {FFFFFF}Você alterou sua frase de Login para: {abaeb2}%s!", params);
SendClientMessage(playerid, Verde, mensagem);
return 1; }
Código PHP: OBS: TEM VIP E SÓCIO
ONPLAYERCONNECT - FRASE VIP if(ContaPlayer[playerid][VipLevel] < 2 || ContaPlayer[playerid][VipLevel] > 1 && isnull(ContaPlayer[playerid][Frase_Vip]) ) format(String, sizeof(String), "{FFFFFF}O {abaeb2}%s {FFFFFF}%s {32CD32}Está Online > {FFFFFF}( {A9A9A9}%s {FFFFFF}) ({A9A9A9}%d/60{FFFFFF})", CategoriaVip(playerid), Nome(playerid), ContaPlayer[playerid][Frase_Vip], ConnectedPlayers());
ONPLAYERCONNECT - FRASE GLOBAL format(String, sizeof(String), "{FFFFFF}%s (%d) {7E6FAE}Conectou-se no servidor {FFFFFF}( {7E6FAE}%d/50{FFFFFF} )", Nome(playerid), playerid, ConnectedPlayers()); MsgToAll(cortag, String);
Ou não aparece a frase do vip ao lado de conectou-se ou não aparece ambas as frases de conectou-se... tentei if else e nada..
Por que não utilizou essa função?
https://open.mp/pt/docs/scripting/functions/SendClientMessageToAll
Segundamente, tente utilizar o código na OnPlayerSpawn, pois na OnPlayerConnect as variáveis não costumam ter sido atribuídas ainda.
Além disso a condicional está incorreta.
Eu fiz no onplayerspawn assim:
Código PHP: if(ContaPlayer[playerid][VipLevel] < 2 || ContaPlayer[playerid][VipLevel] > 1 && isnull(ContaPlayer[playerid][Frase_Vip])) { format(String, sizeof(String), "{FFFFFF}O {abaeb2}%s {FFFFFF}%s {32CD32}Está Online > {FFFFFF}( {A9A9A9}%s {FFFFFF}) ({A9A9A9}%d/50{FFFFFF})", CategoriaVip(playerid), Nome(playerid), ContaPlayer[playerid][Frase_Vip], ConnectedPlayers()); SendClientMessageToAll(0xFF444499, String); } else { format(String, sizeof(String), "{FFFFFF}%s (%d) {7E6FAE}Conectou-se no servidor {FFFFFF}( {7E6FAE}%d/50{FFFFFF} )", Nome(playerid), playerid, ConnectedPlayers()); MsgToAll(cortag, String); }
Agora ele mostra a frase que deveria ser do vip e do sócio pra player que registra e pra player sócio mostra a frase que deveria mostrar pra player normal.
RE: Frase vip ao logar - fear - 27/12/2021
Tentei mudar funcionou uma parte.. eu setei sócio(é o level do vip que tem o /frase)
reloguei e mostrou a frase do vip conectado porém quando eu coloquei a frase e reloguei dnv ele mostrou a frase padrão pra qualquer player que esta depois do else
tb eu queria que quando não tivesse a frase ele mostrasse sem o > () pra não ficar em branco tb.
Código PHP: if(ContaPlayer[playerid][VipLevel] > 1 && isnull(ContaPlayer[playerid][Frase_Vip])) {///FRASE VIP SÓCIO format(String, sizeof(String), "{FFFFFF}O {abaeb2}%s {FFFFFF}%s {32CD32}Está Online > {FFFFFF}( {A9A9A9}%s {FFFFFF}) ({A9A9A9}%d/50{FFFFFF})", CategoriaVip(playerid), Nome(playerid), ContaPlayer[playerid][Frase_Vip], ConnectedPlayers()); SendClientMessageToAll(0xFF444499, String); } else { ///FRASE PADRÃO PLAYER format(String, sizeof(String), "{FFFFFF}%s (%d) {7E6FAE}Conectou-se no servidor {FFFFFF}( {7E6FAE}%d/50{FFFFFF} )", Nome(playerid), playerid, ConnectedPlayers()); MsgToAll(cortag, String); }
RE: Frase vip ao logar - xbruno1000x - 27/12/2021
Código: if(ContaPlayer[playerid][VipLevel] != 0 && !isnull(ContaPlayer[playerid][Frase_Vip])) //FRASE VIP SÓCIO
{
format(String, sizeof(String), "{FFFFFF}O {abaeb2}%s {FFFFFF}%s {32CD32}Está Online > {FFFFFF}( {A9A9A9}%s {FFFFFF}) ({A9A9A9}%d/50{FFFFFF})", CategoriaVip(playerid), Nome(playerid), ContaPlayer[playerid][Frase_Vip], ConnectedPlayers());
SendClientMessageToAll(0xFF444499, String);
} else { //FRASE PADRÃO PLAYER
format(String, sizeof(String), "{FFFFFF}%s (%d) {7E6FAE}Conectou-se no servidor {FFFFFF}( {7E6FAE}%d/50{FFFFFF} )", Nome(playerid), playerid, ConnectedPlayers());
SendClientMessageToAll(0xFF444499, String);
}
Tente dessa forma
RE: Frase vip ao logar - fear - 27/12/2021
(27/12/2021 11:55)xbruno1000x Escreveu: Código: if(ContaPlayer[playerid][VipLevel] != 0 && !isnull(ContaPlayer[playerid][Frase_Vip])) //FRASE VIP SÓCIO
{
format(String, sizeof(String), "{FFFFFF}O {abaeb2}%s {FFFFFF}%s {32CD32}Está Online > {FFFFFF}( {A9A9A9}%s {FFFFFF}) ({A9A9A9}%d/50{FFFFFF})", CategoriaVip(playerid), Nome(playerid), ContaPlayer[playerid][Frase_Vip], ConnectedPlayers());
SendClientMessageToAll(0xFF444499, String);
} else { //FRASE PADRÃO PLAYER
format(String, sizeof(String), "{FFFFFF}%s (%d) {7E6FAE}Conectou-se no servidor {FFFFFF}( {7E6FAE}%d/50{FFFFFF} )", Nome(playerid), playerid, ConnectedPlayers());
SendClientMessageToAll(0xFF444499, String);
}
Tente dessa forma
Pegou certinho agora e deixei no onplayerspawn.. porém.. agora só mostra quando o vip conecta se ele tem a frase.. teria q fazer outra IF pra quando ele não tem a frase mostrar que o vip sócio conectou?
RE: Frase vip ao logar - xbruno1000x - 27/12/2021
Código: if(ContaPlayer[playerid][VipLevel] != 0 && !isnull(ContaPlayer[playerid][Frase_Vip])) //FRASE VIP SÓCIO
{
format(String, sizeof(String), "{FFFFFF}O {abaeb2}%s {FFFFFF}%s {32CD32}Está Online > {FFFFFF}( {A9A9A9}%s {FFFFFF}) ({A9A9A9}%d/50{FFFFFF})", CategoriaVip(playerid), Nome(playerid), ContaPlayer[playerid][Frase_Vip], ConnectedPlayers());
SendClientMessageToAll(0xFF444499, String);
} else if(ContaPlayer[playerid][VipLevel] == 0 || isnull(ContaPlayer[playerid][Frase_Vip])){ //FRASE PADRÃO PLAYER
format(String, sizeof(String), "{FFFFFF}%s (%d) {7E6FAE}Conectou-se no servidor {FFFFFF}( {7E6FAE}%d/50{FFFFFF} )", Nome(playerid), playerid, ConnectedPlayers());
SendClientMessageToAll(0xFF444499, String);
}
qualquer problema de condição pode ser resolvido alterando as if's. basta você compreender o que está sendo escrito.
RE: Frase vip ao logar - fear - 30/12/2021
(27/12/2021 17:01)xbruno1000x Escreveu: Código: if(ContaPlayer[playerid][VipLevel] != 0 && !isnull(ContaPlayer[playerid][Frase_Vip])) //FRASE VIP SÓCIO
{
format(String, sizeof(String), "{FFFFFF}O {abaeb2}%s {FFFFFF}%s {32CD32}Está Online > {FFFFFF}( {A9A9A9}%s {FFFFFF}) ({A9A9A9}%d/50{FFFFFF})", CategoriaVip(playerid), Nome(playerid), ContaPlayer[playerid][Frase_Vip], ConnectedPlayers());
SendClientMessageToAll(0xFF444499, String);
} else if(ContaPlayer[playerid][VipLevel] == 0 || isnull(ContaPlayer[playerid][Frase_Vip])){ //FRASE PADRÃO PLAYER
format(String, sizeof(String), "{FFFFFF}%s (%d) {7E6FAE}Conectou-se no servidor {FFFFFF}( {7E6FAE}%d/50{FFFFFF} )", Nome(playerid), playerid, ConnectedPlayers());
SendClientMessageToAll(0xFF444499, String);
}
qualquer problema de condição pode ser resolvido alterando as if's. basta você compreender o que está sendo escrito.
Esse jeito não funciou.. aparece sempre a mesma frase global de todo player, mesmo o sócio colocando a frase pelo /frase
RE: Frase vip ao logar - xbruno1000x - 30/12/2021
Código: if(ContaPlayer[playerid][VipLevel] != 0 && !isnull(ContaPlayer[playerid][Frase_Vip])) //FRASE VIP SÓCIO
{
format(String, sizeof(String), "{FFFFFF}O {abaeb2}%s {FFFFFF}%s {32CD32}Está Online > {FFFFFF}( {A9A9A9}%s {FFFFFF}) ({A9A9A9}%d/50{FFFFFF})", CategoriaVip(playerid), Nome(playerid), ContaPlayer[playerid][Frase_Vip], ConnectedPlayers());
SendClientMessageToAll(0xFF444499, String);
} else if(ContaPlayer[playerid][VipLevel] == 0) { //FRASE PADRÃO PLAYER
format(String, sizeof(String), "{FFFFFF}%s (%d) {7E6FAE}Conectou-se no servidor {FFFFFF}( {7E6FAE}%d/50{FFFFFF} )", Nome(playerid), playerid, ConnectedPlayers());
SendClientMessageToAll(0xFF444499, String);
} else {
format(String, sizeof(String), "{FFFFFF}O {abaeb2}%s {FFFFFF}%s {32CD32}Está Online ({A9A9A9}%d/50{FFFFFF})", CategoriaVip(playerid), Nome(playerid), ContaPlayer[playerid][Frase_Vip], ConnectedPlayers());
SendClientMessageToAll(0xFF444499, String);
}
caso não funcione, vai tentando por tentativa e erro até achar uma condicional que funcione
RE: Frase vip ao logar - fear - 30/12/2021
(30/12/2021 02:02)xbruno1000x Escreveu: Código: if(ContaPlayer[playerid][VipLevel] != 0 && !isnull(ContaPlayer[playerid][Frase_Vip])) //FRASE VIP SÓCIO
{
format(String, sizeof(String), "{FFFFFF}O {abaeb2}%s {FFFFFF}%s {32CD32}Está Online > {FFFFFF}( {A9A9A9}%s {FFFFFF}) ({A9A9A9}%d/50{FFFFFF})", CategoriaVip(playerid), Nome(playerid), ContaPlayer[playerid][Frase_Vip], ConnectedPlayers());
SendClientMessageToAll(0xFF444499, String);
} else if(ContaPlayer[playerid][VipLevel] == 0) { //FRASE PADRÃO PLAYER
format(String, sizeof(String), "{FFFFFF}%s (%d) {7E6FAE}Conectou-se no servidor {FFFFFF}( {7E6FAE}%d/50{FFFFFF} )", Nome(playerid), playerid, ConnectedPlayers());
SendClientMessageToAll(0xFF444499, String);
} else {
format(String, sizeof(String), "{FFFFFF}O {abaeb2}%s {FFFFFF}%s {32CD32}Está Online ({A9A9A9}%d/50{FFFFFF})", CategoriaVip(playerid), Nome(playerid), ContaPlayer[playerid][Frase_Vip], ConnectedPlayers());
SendClientMessageToAll(0xFF444499, String);
}
caso não funcione, vai tentando por tentativa e erro até achar uma condicional que funcione
Cara fiquei até agora tentando aqui.. e nada coloquei de tudo quanto é jeito.. to quase desistindo desse /frase...
TENTEI ASSIM E SÓ MOSTRA A FRASE PLAYER PADRÃO....
Código PHP: if(ContaPlayer[playerid][VipLevel] != 2 && !isnull(ContaPlayer[playerid][Frase_Vip])) //FRASE VIP SÓCIO { } else if(ContaPlayer[playerid][VipLevel] == 2) { //FRASE PADRÃO PLAYER format(String, sizeof(String), "{FFFFFF}O {abaeb2}%s {FFFFFF}%s {32CD32}Está Online > {FFFFFF}( {A9A9A9}%s {FFFFFF}) ({A9A9A9}%d/50{FFFFFF})", CategoriaVip(playerid), Nome(playerid), ContaPlayer[playerid][Frase_Vip], ConnectedPlayers()); SendClientMessageToAll(0xFF444499, String); } else { format(String, sizeof(String), "{FFFFFF}%s (%d) {90EE90}Conectou-se no servidor {FFFFFF}( {7E6FAE}%d/50{FFFFFF} )", Nome(playerid), playerid, ConnectedPlayers()); SendClientMessageToAll(0xFF444499, String); }
|