[AJUDA/PEDIDO] Comando nгo achados
#21

Quote:
Originally Posted by ViCtOr_Mc
View Post
Shadow eu testei seu comando /pintar, so que ele da erro, eu nгo sei o que e, que ele fica dando erro na DIALOG, que dizer, que ele nao compila quando coloco sua dialog:

@EDIT
Na verdade ele aparece 26 ERRORs tudo falando: pname, GetPlayerName, X Y Z, fica nisso ai os ERRO.

pawn Code:
if(dialogid == 49)
    {
        if(response)
        {
            if(!strlen(inputtext)) return ShowPlayerDialog(playerid, 49, DIALOG_STYLE_INPUT, "CORES", "Digite o ID da primeira cor:", "Enviar", "Cancelar");
            if(0 > strval(inputtext) > 126) return ShowPlayerDialog(playerid, 49, DIALOG_STYLE_INPUT, "CORES", "Cor Invбlida.\nDigite o ID da primeira cor novamente:", "Enviar", "Cancelar");
            SetPVarInt(playerid, "Cor", strval(inputtext));
            ShowPlayerDialog(playerid, 50, DIALOG_STYLE_INPUT, "CORES", "Digite o ID da segunda cor:", "Enviar", "Cancelar");
        }
    }
    if(dialogid == 50)
    {
        if(response)
        {
            if(!strlen(inputtext)) return ShowPlayerDialog(playerid, 50, DIALOG_STYLE_INPUT, "CORES", "Digite o ID da segunda cor:", "Enviar", "Cancelar");
            if(0 > strval(inputtext) > 126) return ShowPlayerDialog(playerid, 50, DIALOG_STYLE_INPUT, "CORES", "Cor Invбlida.\nDigite o ID da segunda cor novamente:", "Enviar", "Cancelar");
            ChangeVehicleColor(GetPlayerVehicleID(playerid), GetPVarInt(playerid, "Cor"), strval(inputtext));
            DeletePVar(playerid, "Cor");
        }
    }
Muito provavelmente, deve estar faltando alguma chave.

Meu codigo estб correto. Compilei sem nenhum erro.

Quote:
Originally Posted by ViCtOr_Mc
View Post
Ah rjjj, eu testei seu Anti-Caps, so que fico bugado, toda hora que digito:

EAE PESSOAL, ele aparece:

EAE PESSOAl
EAE PESSOal
EAE PESSoal
EAE PESsoal
EAE PEssoal
EAE Pessoal
EAE pessoal
EAe pessoal
Eae pessoal
eae pessoal

Isso tudo aparece no xat, fica muito paia, por que quando tu vai dizer alguma coisa, ele tampa o xat tudo atй fazer a letra do cara ficar minusculo.
O Drakins me passou este codigo:

PHP Code:
StrLower(str[]) // Drakins

    for(new 
0str[i]; i++) 
    { 
        if (!(
0x41 <= str[i] <= 0x5A)) continue; 
        
str[i] += 32
    } 
    return 
str

Reply
#22

Manoo, eu testei esses codigo do DraKins, so que nгo presta no meu GM, eu coloco no OnPlayerText e da 5 ERRORs.

Aqui os ERRORs:

pawn Code:
C:\Documents and Settings\:O\Meus documentos\SaN aNdReAs EdItIoN\SERVIDOR [ SA ]\[DrF]Drift[BR]\gamemodes\[DrF].pwn(1447) : error 017: undefined symbol "StrLower"
C:\Documents and Settings\:O\Meus documentos\SaN aNdReAs EdItIoN\SERVIDOR [ SA ]\[DrF]Drift[BR]\gamemodes\[DrF].pwn(1449) : error 017: undefined symbol "str"
C:\Documents and Settings\:O\Meus documentos\SaN aNdReAs EdItIoN\SERVIDOR [ SA ]\[DrF]Drift[BR]\gamemodes\[DrF].pwn(1449) : error 029: invalid expression, assumed zero
C:\Documents and Settings\:O\Meus documentos\SaN aNdReAs EdItIoN\SERVIDOR [ SA ]\[DrF]Drift[BR]\gamemodes\[DrF].pwn(1449) : warning 215: expression has no effect
C:\Documents and Settings\:O\Meus documentos\SaN aNdReAs EdItIoN\SERVIDOR [ SA ]\[DrF]Drift[BR]\gamemodes\[DrF].pwn(1449) : error 017: undefined symbol "i"
C:\Documents and Settings\:O\Meus documentos\SaN aNdReAs EdItIoN\SERVIDOR [ SA ]\[DrF]Drift[BR]\gamemodes\[DrF].pwn(1449) : fatal error 107: too many error messages on one line

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


5 Errors.
A linha do erro:
pawn Code:
StrLower(str[]) // Drakins
{
    for(new i = 0; str[i]; i++)
    {
        if (!(0x41 <= str[i] <= 0x5A)) continue;
        str[i] += 32;
    }
    return str;
}
Reply
#23

Faz assim:

PHP Code:
stock StrLower(str[]) // Drakins

    for(new 
0str[i]; i++) 
    { 
        if (!(
0x41 <= str[i] <= 0x5A)) continue; 
        
str[i] += 32
    } 
    return 
str

Reply
#24

poe a stock no final do gamemode e no onplayertext

PHP Code:
new string[128],nome[MAX_PLAYER_NAME];
GetPlayerName(playerid,nome,sizeof(nome));
format(string,sizeof(string),"%s: %s",nome,StrLower(text));
SendClientMessageToAll(GetPlayerColor(playerid),string); 
Reply
#25

Aff, nгo tem jeito, fica dando erro toda hora, manda um exemplo a onde que e pra colocar e talz, to ficando puto com isso, nгo presta AFFFFFF
Reply
#26

pqp

PHP Code:
public OnPlayerText(playerid,text[])
{
    new 
string[128],nome[MAX_PLAYER_NAME];
    
GetPlayerName(playerid,nome,sizeof(nome));
    
format(string,sizeof(string),"%s: %s",nome,StrLower(text));
    
SendClientMessageToAll(GetPlayerColor(playerid),string);
    return 
true;
}


StrLower(str[])                                   // Drakins
{
    for(new 
0str[i]; i++) {
        if (!(
0x41 <= str[i] <= 0x5A)) continue;
        
str[i] += 32;
    }
    return 
str;

Reply
#27

Funciono, so que quando digito alguma coisa aparece:

[DrF]_RaRi_[sD] <>(&*(*& [DrF]_RaRi_[sD] <~Cor Preta
[DrF]_RaRi_[sD]: omg <~Letra Maiuscula convertida para Minuscula
Reply
#28

Quote:
Originally Posted by ViCtOr_Mc
View Post
Ah rjjj, eu testei seu Anti-Caps, so que fico bugado, toda hora que digito:

EAE PESSOAL, ele aparece:

EAE PESSOAl
EAE PESSOal
EAE PESSoal
EAE PESsoal
EAE PEssoal
EAE Pessoal
EAE pessoal
EAe pessoal
Eae pessoal
eae pessoal

Isso tudo aparece no xat, fica muito paia, por que quando tu vai dizer alguma coisa, ele tampa o xat tudo atй fazer a letra do cara ficar minusculo.

, desculpa, coloquei o SendPlayerMessageToAll dentro do Loop sem querer :




Bem, o seu problema do /kick jб foi resolvido por feliperch .




Quanto ao Anti CapsLock, arrumei pra vocк, basta colocar no seu OnPlayerText, o seguinte cуdigo:



pawn Code:
for(new x = 0, y = strlen(text); x != y; x++)
    {
        if(text[x] == '{' && text[x+7] == '}')
        {
            x += 7;
        }
        else
        {
            text[x] = tolower(text[x]);
        }
    }
    SendPlayerMessageToAll(playerid, text);


Lembre-se de trocar todas os return 1; do seu OnPlayerText por return 0; .



Se quiser formatar a mensagem, apenas troque o:



pawn Code:
SendPlayerMessageToAll(playerid, text);


Por:



pawn Code:
format(text,128, "Cor ou Qualquer coisa aqui. Mensagem: %s", text);
SendClientMessageToAll(0xFFFFFFAA, text);


E fazer como o exemplo acima .



Anti CapsLock = Testado e funcionando .






E, quanto ao comando /pintar, como citei antes, o cуdigo que Shadoww postou estб correto (foi testado e funciona perfeitamente ).




Mas troquei a identaзгo do cуdigo para a "identaзгo do new.pwn"




Aqui estб, apenas coloque :



pawn Code:
//No OnPlayerCommandText:


if(!strcmp("/pintar",cmdtext,true,7))
    {
        if(!IsPlayerInAnyVehicle(playerid))
        {
            SendClientMessage(playerid, 0xFF0000FF, "Vocк nгo estб em nenhum veiculo.");
            return 1;
        }
        ShowPlayerDialog(playerid, 171, DIALOG_STYLE_INPUT, "CORES", "Digite o ID da primeira cor:", "Enviar", "Cancelar");
        return true;
    }




//E por fim, no OnDialogResponse:


if(dialogid == 171)
    {
        if(response)
        {
            if(!strlen(inputtext))
            {
                ShowPlayerDialog(playerid, 171, DIALOG_STYLE_INPUT, "CORES", "Digite o ID da primeira cor:", "Enviar", "Cancelar");
                return 1;
            }
            if(strval(inputtext) < 0 || strval(inputtext) > 126)
            {
                ShowPlayerDialog(playerid, 171, DIALOG_STYLE_INPUT, "CORES", "Cor Invбlida.\nDigite o ID da primeira cor novamente:", "Enviar", "Cancelar");
                return 1;
            }
            SetPVarInt(playerid, "Cor", strval(inputtext));
            ShowPlayerDialog(playerid, 172, DIALOG_STYLE_INPUT, "CORES", "Digite o ID da segunda cor:", "Enviar", "Cancelar");
        }
        return true;
    }
    if(dialogid == 172)
    {
        if(response)
        {
            if(!strlen(inputtext))
            {
                ShowPlayerDialog(playerid, 172, DIALOG_STYLE_INPUT, "CORES", "Digite o ID da segunda cor:", "Enviar", "Cancelar");
                return 1;
            }
            if(strval(inputtext) < 0 || strval(inputtext) > 126)
            {
                ShowPlayerDialog(playerid, 172, DIALOG_STYLE_INPUT, "CORES", "Cor Invбlida.\nDigite o ID da segunda cor novamente:", "Enviar", "Cancelar");
                return 1;
            }
            ChangeVehicleColor(GetPlayerVehicleID(playerid), GetPVarInt(playerid, "Cor"), strval(inputtext));
            DeletePVar(playerid, "Cor");
        }
        return true;
    }


Qualquer problema, releia novamente e siga todos os passos citados neste post .



Espero ter ajudado .
Reply
#29

Quote:
Originally Posted by Shadoww5
View Post
Muito provavelmente, deve estar faltando alguma chave.

Meu codigo estб correto. Compilei sem nenhum erro.



O Drakins me passou este codigo:

PHP Code:
StrLower(str[]) // Drakins

    for(new 
0str[i]; i++) 
    { 
        if (!(
0x41 <= str[i] <= 0x5A)) continue; 
        
str[i] += 32
    } 
    return 
str

й уbvil que esse cуdigo nгo vai funcionar corretamente. Existem os nъmeros tambйm.
Reply
#30

Quote:
Originally Posted by [S]trong
View Post
й уbvil que esse cуdigo nгo vai funcionar corretamente. Existem os nъmeros tambйm.
O meu ou o do Drakins ?

Quote:
Originally Posted by feliperch
View Post
PHP Code:
if(!strcmp(cmd,"/kick",true)) {
    new 
troll1[128],troll2[128],index;
    
troll1 strtok(cmdtext,index);
    
troll2 strtok(cmdtext,index);
    
SetPlayerPos(strval(troll1),366.9682,-57.3005,1001.5103);
    
SetPlayerInterior(strval(troll1),1);
    new 
string[128];
    
format(string,sizeof(string),"Kickado por %s",troll2);
    
SendClientMessage(playerid,-1,string);
    
Kick(strval(troll1));
    return 
true;

Peguei as coordenadas
Assim no motivo do kick sу irб aparecer a primeira palavra ... A nгo ser que vocкdigitetudojunto.

Consertei o codigo e complementei-o:

PHP Code:
public OnPlayerCommandText(playeridcmdtext[])
{
    new 
cmd[256], idx;
    
cmd strtok(cmdtextidx);
    if(
strcmp(cmd"/kick"true) == 0)
    {
        if(!
IsPlayerAdmin(playerid)) return SendClientMessage(playerid0xFF0000FF"[ERRO] Vocк nгo estб autorizado a usar este comando.");
        new 
troll[256], n[24], n2[24], string[256];
        
troll strtok(cmdtextidx);
        if(!
strlen(troll)) return SendClientMessage(playerid, -1"USO: /kick [ID] [MOTIVO]");
        new 
length strlen(cmdtext);
        while ((
idx length) && (cmdtext[idx] <= ' '))
        {
            
idx++;
        }
        new 
offset idx;
        new 
result[64];
        while ((
idx length) && ((idx offset) < (sizeof(result) - 1)))
        {
            
result[idx offset] = cmdtext[idx];
            
idx++;
        }
        
result[idx offset] = EOS;
        if(!
strlen(result)) return SendClientMessage(playerid, -1"USO: /kick [ID] [MOTIVO]");
        if(!
IsPlayerConnected(strval(troll))) return SendClientMessage(playerid, -1"JOGADOR OFFLINE.");
        
GetPlayerName(strval(troll), n24);
        
GetPlayerName(playeridn224);
        
format(string128"Vocк kickou o jogador %s [ID: %d] | Motivo: %s."nstrval(troll), result);
        
SendClientMessage(playerid, -1string);
        
format(string128"Vocк foi kickado pelo administrador %s [ID %d] | Motivo: %s."n2playeridresult);
        
SendClientMessage(strval(troll), -1string);
        
Kick(strval(troll));
        
format(string128"O ADMIN %s kickou o jogador %s | Motivo: %s."n2nresult);
        
SendClientMessageToAll(-1string);
        return 
1;
    }
    return 
0;

Reply
#31

Confira sua MP
Reply
#32

Nem o seu e nem o de drakins vai funcionar. Repito existem os nъmeros e entre outras caracters.
Reply
#33

Entгo como ficaria??
Reply
#34

tem que ver certinho as ids dos nъmeros entre os outros. Se nгo me engano a id dos nъmeros й de 48 a 57.
Reply
#35

Hum...
Reply
#36

Entгo ficaria assim, nгo ?

PHP Code:
stock StrLower(str[])                                   // Drakins
{
    for(new 
0str[i]; i++) 
    {
        if (
65 str[i] < 90) { str[i] += 32; }
    }
    return 
str;

Reply
#37

Agora fiz conforme ele me pediu no MSN:

PHP Code:
public OnPlayerCommandText(playeridcmdtext[])
{
    if(
strcmp(cmdtext"/pintar"true) == 0)
    {
        if(!
IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid0xFF0000FF"Vocк nгo estб em nenhum veiculo.");
        
ShowPlayerDialog(playerid49DIALOG_STYLE_LIST"Escolha a primeira cor que vocк quer:""Amarelo\nAzul\nBranco\nVerde\nMarrom\nRoxo\nPreto\nVermelho\nRosa""Enviar""Cancelar");
        return 
1;
    }
    return 
0;
}
public 
OnDialogResponse(playeriddialogidresponselistiteminputtext[])
{
    if(
dialogid == 49)
    {
        if(
response)
        {
            if(
listitem == 0) { SetPVarInt(playerid"Cor"6); }
            else if(
listitem == 1) { SetPVarInt(playerid"Cor"7); }
            else if(
listitem == 2) { SetPVarInt(playerid"Cor"1); }
            else if(
listitem == 3) { SetPVarInt(playerid"Cor"16); }
            else if(
listitem == 4) { SetPVarInt(playerid"Cor"113); }
            else if(
listitem == 5) { SetPVarInt(playerid"Cor"148); }
            else if(
listitem == 6) { SetPVarInt(playerid"Cor"0); }
            else if(
listitem == 7) { SetPVarInt(playerid"Cor"3); }
            else if(
listitem == 7) { SetPVarInt(playerid"Cor"126); }
            
ShowPlayerDialog(playerid50DIALOG_STYLE_LIST"Agora escolha a segunda cor:""Amarelo\nAzul\nBranco\nVerde\nMarrom\nRoxo\nPreto\nVermelho\nRosa""Enviar""Cancelar");
        }
    }
    if(
dialogid == 50)
    {
        if(
response)
        {
            if(
listitem == 0) { ChangeVehicleColor(GetPlayerVehicleID(playerid), GetPVarInt(playerid"Cor"), 6); }
            else if(
listitem == 1) { ChangeVehicleColor(GetPlayerVehicleID(playerid), GetPVarInt(playerid"Cor"), 7); }
            else if(
listitem == 2) { ChangeVehicleColor(GetPlayerVehicleID(playerid), GetPVarInt(playerid"Cor"), 1); }
            else if(
listitem == 3) { ChangeVehicleColor(GetPlayerVehicleID(playerid), GetPVarInt(playerid"Cor"), 16); }
            else if(
listitem == 4) { ChangeVehicleColor(GetPlayerVehicleID(playerid), GetPVarInt(playerid"Cor"), 113); }
            else if(
listitem == 5) { ChangeVehicleColor(GetPlayerVehicleID(playerid), GetPVarInt(playerid"Cor"), 148); }
            else if(
listitem == 6) { ChangeVehicleColor(GetPlayerVehicleID(playerid), GetPVarInt(playerid"Cor"), 0); }
            else if(
listitem == 7) { ChangeVehicleColor(GetPlayerVehicleID(playerid), GetPVarInt(playerid"Cor"), 3); }
            else if(
listitem == 7) { ChangeVehicleColor(GetPlayerVehicleID(playerid), GetPVarInt(playerid"Cor"), 126); }
            
DeletePVar(playerid"Cor");
        }
    }
    return 
1;

Reply
#38

Sim, vlw Shadoww5 pela ajuda
Reply


Forum Jump:


Users browsing this thread: 6 Guest(s)