19.07.2016, 20:59
Код:
CMD:camera(playerid) { SetCameraBehindPlayer(playerid); return 1; }
CMD:camera(playerid) { SetCameraBehindPlayer(playerid); return 1; }
Код:
CMD:camera(playerid) { SetCameraBehindPlayer(playerid); return 1; } |
CMD:camera(playerid,params[])
{
InterpolateCameraPos(playerid, 187.600982, -1791.727050, 119.087432, 193.731567, -1789.235473, 118.845245, 5000);
InterpolateCameraLookAt(playerid, 189.006942, -1790.279785, 114.512641, 195.057144, -1788.512817, 114.078620, 5000);
SetCameraBehindPlayer(playerid);
return 1;
}
Nгo,nгo assim , bro.
Digo tipo pawn Код:
|
Pra comeзar vc nгo estб usando parвmetros, entгo remova.
Outro detalhe й que vc nгo raciocinou no que seu cуdigo estб fazendo, olhe: InterpolateCameraPos -> primeira aзгo InterpolateCameraLookAt -> segunda aзгo SetCameraBehindPlayer -> terceira aзгo O comando vai executar as trкs funзхes uma apуs a outra seguindo a ordem colocada por vc. Acredito que criar um timer sem repetiзгo e dentro deste colocar a funзгo SetCameraBehindPlayer, mas claro que deve calcular o tempo necessбrio para execuзгo do movimento da cвmera atй o final. |
Alguйm poderia fazer o um cуdigo em zcmd o seguinte:
/admins ae aparecia o lista de admins online. |
CMD:admins(playerid, params[])
{
new string[64], name[24];
for(new i; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(PlayerInfo[i][admin] == 1 || PlayerInfo[i][admin] == 2 || PlayerInfo[i][admin] == 3)
{
GetPlayerName(i, name, 24);
format(string, 64, "%s\n", name);
ShowPlayerDialog(playerid, dialog_admins, DIALOG_STYLE_MSGBOX, "{FFA500}Administradores Online: {FFFFFF}", string, "OK","");
}
else
{
ShowPlayerDialog(playerid, dialog_admins, DIALOG_STYLE_MSGBOX, "{FFA500}Administradores Online: {FFFFFF}","{FF0000}Nao tem Administradores Online!{FFFFFF}", "OK","");
}
}
}
return 1;
}
altere as variaveis para a sua.
PHP код:
|
CMD:admins(playerid, params[]) { new string[400], // responsavel por armazenar os nomes concatenados dos admins name[24], // responsavel por armazenar o nome dos admins AdminCount // responsavel por contar os admins online ; for(new i; i < MAX_PLAYERS; i++) // loop { if(IsPlayerConnected(i)) // dб continuidade somente nos que estгo online { if(PlayerInfo[i][admin] > 0 && !IsPlayerAdmin(i)) // Verifica se й admin e nгo RCON { GetPlayerName(i, name, 24); // geta o nome strcat(string, "[ADMIN] %s\n", name); // faz a concatenaзгo ++ AdminCount; // Conta os admins online } else if(IsPlayerAdmin(i)) // Verifica se й RCON independente se for admin ou nгo. { GetPlayerName(i, name, 24); // geta o nome strcat(string, "[RCON] %s\n", name); // faz a concatenaзгo ++ AdminCount; // Conta os admins online } } } if(AdminCount > 0) ShowPlayerDialog(playerid, dialog_admins, DIALOG_STYLE_MSGBOX, "{FFA500}Administradores Online: {FFFFFF}", string, "OK",""); // se houver admins on else ShowPlayerDialog(playerid, dialog_admins, DIALOG_STYLE_MSGBOX, "{FFA500}Administradores Online: {FFFFFF}", "Nгo hб admins online no momento!", "OK",""); // se nгo houver admins on return 1; }
Fiquei muito tempo sem programar Pawn, cerca de 2 anos. Porйm agora estou voltando e queria saber quais estгo sendo os processadores de comandos mais rбpidos atualmente? (antigamente eu usava o y_cmd)
E qual tб sendo a melhor include de salvamento para banco de dados, mudou alguma coisa na sscanf? Vou criar uma gamemode do 0 e quero saber dos mais atuais. |
new TabelaItens[][2][64] = { {355, "AK-47"} }; public OnGameModeInit() { new Texto[32]; format(Texto,sizeof(Texto),"%i\n%s", TabelaItens[0][0], TabelaItens[0][1]); Create3DTextLabel(Texto, -1, 0.0, 0.0, 0.0, 25.0, 0 ,0); CreatePickup(TabelaItens[0][0], 1, 0.0, 0.0, 0.0, 0); return 1; }
error 035: argument type mismatch (argument 1)
Estou com erro neste cуdigo. A tabela de itens que crio parece estar certa.
Code:
new TabelaItens[][2][64] = { {355, "AK-47"} }; public OnGameModeInit() { new Texto[32]; format(Texto,sizeof(Texto),"%i\n%s", TabelaItens[0][0], TabelaItens[0][1]); Create3DTextLabel(Texto, -1, 0.0, 0.0, 0.0, 25.0, 0 ,0); CreatePickup(TabelaItens[0][0], 1, 0.0, 0.0, 0.0, 0); return 1; } Resultando nesse erro. Code:
error 035: argument type mismatch (argument 1) |
new TabelaItens[][2][64] =
{
{355, "AK-47"}
};
enum e{
numero,
string[64]
}
new TabelaItens[][e] =
{
{355, "AK-47"}
};
//Exemplo
printf("%d : %s", TabelaItens[0][numero], TabelaItens[0][string]);
//Saнda: 355 : AK-47
enum e{
numero,
string[64]
}
new TabelaItens[][e] =
{
{355, "AK-47"}
};
new TabelaItens2[][2][64] =
{
{355, "AK-47"}
};
main(){
printf("%d %c%c", TabelaItens[0][e:0], TabelaItens[0][e:1], TabelaItens[0][e:2]);
}
+rep MultiKill
A confusгo era realmente no "esqueleto" da array. Entendi perfeitamente e jб corrigi o problema, obrigado pela explicaзгo detalhada. Agora tenho outra pequena duvida: retornar 0 para um jogador Admin em OnPlayerUpdate farб ele ver todos mas ninguйm ver ele? Isso seria ъtil para o Admin "andar invisivel" pelo mapa no mesmo Virtual World. |
+rep MultiKill
A confusгo era realmente no "esqueleto" da array. Entendi perfeitamente e jб corrigi o problema, obrigado pela explicaзгo detalhada. Agora tenho outra pequena duvida: retornar 0 para um jogador Admin em OnPlayerUpdate farб ele ver todos mas ninguйm ver ele? Isso seria ъtil para o Admin "andar invisivel" pelo mapa no mesmo Virtual World. |