public PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z) { if(IsPlayerConnected(playerid)) { new Float:oldposx, Float:oldposy, Float:oldposz; new Float:tempposx, Float:tempposy, Float:tempposz; GetPlayerPos(playerid, oldposx, oldposy, oldposz); tempposx = (oldposx -x); tempposy = (oldposy -y); tempposz = (oldposz -z); //printf("DEBUG: X:%f Y:%f Z:%f",posx,posy,posz); if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi))) { return 1; } } return 0; }
Got it to work, but no I have other problems with attaching objects to vehicles and such :S
|
if(strcmp(cmd, "/siren", true) == 0) { if(IsPlayerConnected(playerid)) { if(PlayerInfo[playerid][pMember] == 1 || PlayerInfo[playerid][pLeader] == 1 || PlayerInfo[playerid][pMember] == 2 || PlayerInfo[playerid][pLeader] == 2) { new x_nr[256]; x_nr = strtok(cmdtext, idx); if(!strlen(x_nr)) { SendClientMessage(playerid, COLOR_GREY, "USAGE: /siren [inside, roof, nothing]"); SendClientMessage(playerid, COLOR_GREY, "[INFO]: 'nothing' will remove the item from your vehicle!"); return 1; } if(strcmp(x_nr,"inside",true) == 0) { if( Siren[playerid] != INVALID_OBJECT_ID ) { new VID; VID = GetPlayerVehicleID(playerid); GetPlayerName(playerid, sendername, sizeof(sendername)); Siren[playerid] = CreateObject(18646, 10.0, 10.0, 10.0, 0, 0, 0); AttachObjectToVehicle(Siren[playerid], VID, 0.0, 0.75, 0.275, 0.0, 0.1, 0.0); // Inside - Premier format(string, sizeof(string), "* %s puts the siren on the dashboard.", sendername); ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE); } else { SendClientMessage(playerid, COLOR_GREY, "[INFO]: You do already have a siren..."); } } else if(strcmp(x_nr,"roof",true) == 0) { if( Siren[playerid] != INVALID_OBJECT_ID ) { new VID; VID = GetPlayerVehicleID(playerid); GetPlayerName(playerid, sendername, sizeof(sendername)); Siren[playerid] = CreateObject(18646, 10.0, 10.0, 10.0, 0, 0, 0); AttachObjectToVehicle(Siren[playerid], VID, -0.43, 0.0, 0.785, 0.0, 0.1, 0.0); // tak - Premier format(string, sizeof(string), "* %s puts the siren on the roof.", sendername); ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE); } else { SendClientMessage(playerid, COLOR_GREY, "[INFO]: You do already have a siren..."); } } else if(strcmp(x_nr,"nothing",true) == 0) { GetPlayerName(playerid, sendername, sizeof(sendername)); DestroyObject(Siren[playerid]); format(string, sizeof(string), "* %s takes down the siren.", sendername); ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE); } } else { SendClientMessage(playerid, COLOR_GREY, "[INFO]: Are you a cop?"); } } return 1; }