02.04.2009, 23:04
Hi! this code just moves the player up when it supposed to drag behind another player how would i fix this?
srry for the crappy indentation...
pawn Код:
public Dragging(playerid,giveplayerid){
new Float:X1, Float:Y1, Float:Z1, Float:A1;
GetPlayerFacingAngle(playerid,A1);
GetPlayerPos(playerid,X1,Y1,Z1);
SetPlayerInterior(giveplayerid,GetPlayerInterior(playerid));
SetPlayerFacingAngle(giveplayerid,A1+180);
SetPlayerPos(giveplayerid,X1,Y1,Z1+3);
TogglePlayerControllable(giveplayerid,0);
return 1;
}
pawn Код:
if (!strcmp(cmd, "/drag", true)){
if(gTeam[playerid] == TEAM_LSPD-Cop || gTeam[playerid] == TEAM_LSPD_Cop2 || gTeam[playerid] == TEAM_SFPD-Cop || gTeam[playerid] == TEAM_LVPD-Cop || gTeam[playerid] == TEAM_ElQuebrados-Cop || gTeam[playerid] == TEAM_Swat || gTeam[playerid] == TEAM_FBI || gTeam[playerid] == TEAM_Army || gTeam[playerid] == TEAM_Army2 || gTeam[playerid] == TEAM_GirlCop || gTeam[playerid] == TEAM_Undercover1 || gTeam[playerid] == TEAM_Undercover2 || gTeam[playerid] == TEAM_Undercover3 || gTeam[playerid] == TEAM_Undercover4)
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, 0xFF0000AA, "/drag [playerid]");
return 1;
}
giveplayerid = ReturnUser(tmp);
if(!IsNumeric(tmp)) {
SendClientMessage(playerid,COLOR_RED, "/drag [playerid] Playerid must be a number!");
return 1;
}
if(IsPlayerConnected(giveplayerid))
{
if(GetDistanceBetweenPlayers(playerid,giveplayerid) > 3)
{
SendClientMessage(playerid, 0xFF0000AA, "You are too far away from that player.");
return 1;
}
if(giveplayerid == playerid) { SendClientMessage(playerid, COLOR_RED, "You cannot drag yourself!"); return 1; }
if(Dragged[giveplayerid] == 0){
if(Tazed[giveplayerid] == 1){
format(string, sizeof(string), "Officer %s is dragging %s", PlayerName(playerid),PlayerName(giveplayerid));
SendCopMessage(0xFFFFFFFF, string);
format(string, sizeof(string), "Officer %s is dragging you!", PlayerName(playerid));
SendClientMessage(giveplayerid, 0xFFFFFFFF, string);
TogglePlayerControllable(giveplayerid,1);
Dragged[giveplayerid] = 1;
ResetPlayerWeapons(giveplayerid);
SendClientMessage(playerid, COLOR_RED, "The suspect is being dragged! good job!");
IsDragged[playerid] = SetTimerEx("Dragging", 1000, true, "i", giveplayerid);
}
else
{
SendClientMessage(playerid, 0xFF0000AA, "Player needs to be tazed first!");
}
}
else
{
SendClientMessage(playerid, 0xFF0000AA, "This player is already being dragged");
}
}
else
{
format(string, sizeof(string), "%d is not an active player.", giveplayerid);
SendClientMessage(playerid,0xFF0000AA, string);
}
}
else
{
SendClientMessage(playerid, 0xFF0000AA, "You are not a officer!");
}
return 1;
}