[PEDIDO] Comando /Algemar -
[FTC]Scorpion - 14.07.2011
Boa noite.
Bom, pesquisei no fуrum, e achei um comando de /algemar, porйm, o mesmo nгo deu certo.
Alguйm pode me 'emprestar' / ensinar a fazer um comando desse? De preferкncia que o jogador ficasse algemado por 30s, ou que viesse com o comando /desalgemar. :X
Obrigado,
._.
Re: [PEDIDO] Comando /Algemar - [BEP]AcerPilot - 14.07.2011
Se quando vocк diz algemado vocк quer que o player fique congelado, use
TogglePlayerControllable com
SetTimerEx.
Re: [PEDIDO] Comando /Algemar -
Dark.Angel - 14.07.2011
Como que й esse comando /algemar?
O player vai la digita /algemar ai acontece oque?
Re: [PEDIDO] Comando /Algemar -
[FTC]Scorpion - 14.07.2011
Quando o jogador digita /Algemar [ID], ele Algema - congela - o jogador.
O player sу fica congelado. '~'
@EDIT
Detalhe, a parte de fazer o comando /Algemar й fбcil, seguindo o TogglePlayerControllable. O problema, й fazer com que, para algemar, o jogador tenha que estar perto.
Re: [PEDIDO] Comando /Algemar -
Dark.Angel - 14.07.2011
Fiz um bem simples pra vc... sу arrumar do jeito que vocк quiser
PHP код:
if (strcmp(cmd,"/algemar",true) == 0)
{
new player2;
tmp = strtok(cmdtext,idx);
player2 = strval(tmp);
if (!strlen(tmp)) return SendClientMessage(playerid,-1,"Digite: /algemar [ID do Jogador]");
TogglePlayerControllable(player2,false); // vai congelar o player2
return true;
}
if (strcmp(cmd,"/desalgemar",true) == 0)
{
new player2;
tmp = strtok(cmdtext,idx);
player2 = strval(tmp);
if (!strlen(tmp)) return SendClientMessage(playerid,-1,"Digite: /desalgemar [ID do Jogador]");
TogglePlayerControllable(player2,true); // vai descongelar o player2
return true;
}
Re: [PEDIDO] Comando /Algemar -
[FTC]Scorpion - 14.07.2011
Entгo, Dark, eu fiz quase igual a isso, sу que tinha um negуcio de DistanceBetweenPlayers ( eu tinha pego do outro tуpico que eu tinha visto ), e aquele negуcio (DistanceBetweenPlayers) era o ъnico que estava fazendo dar o ЪNICO erro. :S
@EDIT
Olha o cуdigo:
PHP код:
forward Algemar2(playerid);
pawn Код:
if(strcmp(cmd, "/algemar", true) == 0) {
if(PROFISSХES OU ORGANIZAЗХES QUE PODERГO USAR O COMANDO){
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, sizeof(name));
new string[128];
new tmp[256];
new plid;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)){
SendClientMessage(playerid, 0xF52D0AAA, "/algemar [id]");
return 1;
}
plid = strval(tmp);
if(!IsPlayerConnected(plid)){
SendClientMessage(playerid, 0xF52D0AAA, "[ERRO] O jogador nгo estб conectado");
return 1;
} else {
if(GetDistanceBetweenPlayers(plid,playerid) < 21){
SendClientMessage(playerid, 0x5CAE51AA, "[INFO] Algemado com sucesso!");
format(string, sizeof(string), "[INFO] Vocк foi algemado por %s ", name);
SendClientMessage(plid, 0xF8DA07AA, string);
TogglePlayerControllable(playerid,0);
SetTimerEx("Algemar2",15000,false,"i",playerid);
return 1;
} else {
SendClientMessage(playerid,0xF52D0AAA,"[ERRO] Chegue mais perto para poder algemar!");
return 1;
}
}
} else {
SendClientMessage(playerid,0xF52D0AAA,"[ERRO] Vocк nгo tem permissгo!");
return 1;
}
}
PHP код:
public Algemar2(playerid) {
TogglePlayerControllable(playerid,1);
SendClientMessage(playerid,0x5CAE51AA,"[INFO] Liberado, jб pode andar.");
return 1;
}
Re: [PEDIDO] Comando /Algemar -
pr0bscur3 - 14.07.2011
vo usa o do cara ai de cima e passa a func de o jogador perto.
pawn Код:
if (strcmp(cmd,"/algemar",true) == 0)
{
new player2;
tmp = strtok(cmdtext,idx);
player2 = strval(tmp);
if (!strlen(tmp)) return SendClientMessage(playerid,-1,"Digite: /algemar [ID do Jogador]");
else if(!JogadorPerto(playerid, player2, 5.0)) return SendClientMessage(playerid, COR, "Favor se aproxime mais do jogador.");
else
{
TogglePlayerControllable(player2,false); // vai congelar o player2
return true;
}
if (strcmp(cmd,"/desalgemar",true) == 0)
{
new player2;
tmp = strtok(cmdtext,idx);
player2 = strval(tmp);
if (!strlen(tmp)) return SendClientMessage(playerid,-1,"Digite: /desalgemar [ID do Jogador]");
else if(!JogadorPerto(playerid, player2, 5.0)) return SendClientMessage(playerid, COR, "Favor se aproxime mais do jogador.");
TogglePlayerControllable(player2,true); // vai descongelar o player2
return true;
}
no final do seu mode poe:
pawn Код:
stock JogadorPerto(playerid, playerid2, Float:raio)
{
new
Float:x,
Float:y,
Float:z;
GetPlayerPos(playerid2, x, y, z);
return IsPlayerInRangeOfPoint(playerid, raio, x, y, z);
}
Re: [PEDIDO] Comando /Algemar -
Dark.Angel - 14.07.2011
Eu uso assim pra fazer esse tipo de comando...
PHP код:
if (strcmp(cmd,"/algemar",true) == 0)
{
new player2;
tmp = strtok(cmdtext,idx);
player2 = strval(tmp);
if (!strlen(tmp)) return SendClientMessage(playerid,-1,"Digite: /algemar [ID do Jogador]");
new Float:Pos[3];
GetPlayerPos(player2,Pos[0],Pos[1],Pos[2]);
if(IsPlayerInRangeOfPoint(playerid,15.0,Pos[0],Pos[1],Pos[2])) // Altera pro tanto que desejar
{
TogglePlayerControllable(player2,false); // vai congelar o player2
}
else return SendClientMessage(playerid,-1,"Vocк deve estar a menos de 15 metros para usar o comando");
return true;
}
Re: [PEDIDO] Comando /Algemar -
pr0bscur3 - 14.07.2011
й a mesma coisa que eu fiz dark, so que eu fiz em stock pra nao fica muita coisa no comando.
Re: [PEDIDO] Comando /Algemar -
Dark.Angel - 14.07.2011
Pdc

... mais eu nem tinha visto que vocк posto kkk malz