i have a problem
#1

Hey guys, is there a problem with this?
im wondering.. Why does not want to disappear from the ground?
Код:
dcmd_placeboombox(playerid, params[])
{
	if(PlayerInfo[playerid][pBoomBox] == 0) return SendClientMessage(playerid, COLOR_WHITE, "You don't have a BoomBox");
	if(GetPVarType(playerid, "pDynamicBB")) return SendClientMessage(playerid, COLOR_WHITE, "You already have a boombox out, use /pickupboombox.");

	foreach(Player, i)
	{
 		if(GetPVarType(i, "pDynamicBB"))
   		{
  			if(IsPlayerInRangeOfPoint(playerid, 30.0, GetPVarFloat(i, "pDynamicBBX"), GetPVarFloat(i, "pDynamicBBY"), GetPVarFloat(i, "pDynamicBBZ")))
			{
   				SendClientMessage(playerid, COLOR_WHITE, "You cannot put your boombox in this Radius");
			    return 1;
			}
		}
		new string[128];
		format(string, sizeof(string), "%s has placed a boombox on the floor!", SenderName(playerid));
		SendNearbyMessage(playerid, 15, string, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE);

	    new Float:x, Float:y, Float:z, Float:a;
	    GetPlayerPos(playerid, x, y, z);
	    GetPlayerFacingAngle(playerid, a);
	    ApplyAnimation(playerid,"BOMBER","BOM_Plant_Crouch_In", 4.0, 0, 0, 0, 0, 0, 1);
	    x += (2 * floatsin(-a, degrees));
    	y += (2 * floatcos(-a, degrees));
    	z -= 1.0;

	    SetPVarInt(playerid, "pDynamicBB", CreateDynamicObject(2226, x, y, z, 0.0, 0.0, 0.0, .worldid = GetPlayerVirtualWorld(playerid), .interiorid = GetPlayerInterior(playerid)));
	    SetPVarFloat(playerid, "pDynamicBBX", x); SetPVarFloat(playerid, "pDynamicBBY", y); SetPVarFloat(playerid, "pDynamicBBZ", z);
		format(string, sizeof(string), "{00FF00}Boombox Owner:{FFFFFF}%s\n{FF0000}/turnon{FFFFFF} to set your boombox \n{FFFF00}or\n{FF0000}/pickupboombox", SenderName(playerid));
	    SetPVarInt(playerid, "pDynamicBBLabel", _:CreateDynamic3DTextLabel(string, COLOR_WHITE, x, y, z+0.6, 5.0, .worldid = GetPlayerVirtualWorld(playerid), .interiorid = GetPlayerInterior(playerid)));
		SetPVarInt(playerid, "pDynamicBBArea", CreateDynamicSphere(x, y, z, 30.0, GetPlayerVirtualWorld(playerid), GetPlayerInterior(playerid)));
		SetPVarInt(playerid, "pDynamicBBInt", GetPlayerInterior(playerid));
		SetPVarInt(playerid, "pDynamicBBVW", GetPlayerVirtualWorld(playerid));
	}
	return 1;
}

dcmd_turnon(playerid, params[])
{
	if(GetPVarType(playerid, "pDynamicBB"))
	{
	    if(GetPlayerSpecialAction(playerid) != SPECIAL_ACTION_DUCK) return SendClientMessage(playerid, COLOR_WHITE, " You must be crouched to set your boombox.");
		if(IsPlayerInRangeOfPoint(playerid, 3.0, GetPVarFloat(playerid, "pDynamicBBX"), GetPVarFloat(playerid, "pDynamicBBY"), GetPVarFloat(playerid, "pDynamicBBZ")))
		{
			ShowPlayerDialog(playerid,DIALOG_BOOMBOX,DIALOG_STYLE_LIST,"Radio Menu","Jazz\nPop\nRap\nR&B and Urban\nRock\nPlace a URL\nTurn Off Boombox","Select", "Cancel");
		}
		else
		{
   			return SendClientMessage(playerid, COLOR_WHITE, "You're not near in your BoomBox");
		}
    }
    else
    {
        SendClientMessage(playerid, COLOR_WHITE, " You don't have a boombox place on the floor");
	}
	return 1;
}

dcmd_pickupboombox(playerid, params[])
{
	if(GetPVarType(playerid, "pDynamicBB"))
	{
	    if(GetPlayerSpecialAction(playerid) != SPECIAL_ACTION_DUCK) return SendClientMessage(playerid, COLOR_WHITE, " You must be crouched to pick a the boombox.");
	    if(!IsPlayerInRangeOfPoint(playerid, 3.0, GetPVarFloat(playerid, "pDynamicBBX"), GetPVarFloat(playerid, "pDynamicBBY"), GetPVarFloat(playerid, "pDynamicBBZ"))) return SendClientMessage(playerid, COLOR_WHITE, "You're not near in your BoomBox");
	    DestroyDynamicObject(GetPVarInt(playerid, "pDynamicBB"));
	    DestroyDynamic3DTextLabel(Text3D:GetPVarInt(playerid, "pDynamicBBLabel"));
	    DeletePVar(playerid, "pDynamicBB"); DeletePVar(playerid, "pDynamicBBStation"); DeletePVar(playerid, "pDynamicBBLabel");
	    DeletePVar(playerid, "pDynamicBBX"); DeletePVar(playerid, "pDynamicBBY"); DeletePVar(playerid, "pDynamicBBZ");
	    if(GetPVarType(playerid, "pDynamicBBArea"))
	    {
	        new string[128];
			format(string, sizeof(string), "* %s has pickedup their boombox.", SenderName(playerid));
			SendNearbyMessage(playerid, 15, string, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE, COLOR_PURPLE);
	        foreach(Player, i)
			{
	            if(IsPlayerInDynamicArea(i, GetPVarInt(playerid, "pDynamicBBArea")))
	            {
	                StopAudioEx(i);
	                SendClientMessage(i, COLOR_PURPLE, string);
				}
			}
	        DeletePVar(playerid, "pDynamicBBArea");
		}
		SendClientMessage(playerid, COLOR_WHITE, "You've pickedup your boombox!");
	}
	else
	{
	    foreach(Player, i)
		{
	        if(GetPVarType(i, "pDynamicBB"))
	        {
				if(GetPVarInt(i, "pDynamicBBVW") == GetPlayerVirtualWorld(playerid) && GetPVarInt(i, "pDynamicBBInt") == GetPlayerInterior(playerid) && IsPlayerInRangeOfPoint(playerid, 5.0, GetPVarFloat(i, "pDynamicBBX"), GetPVarFloat(i, "pDynamicBBY"), GetPVarFloat(i, "pDynamicBBZ")))
				{
				    if(GetPlayerSpecialAction(playerid) != SPECIAL_ACTION_DUCK) return SendClientMessage(playerid, COLOR_WHITE, " You must be crouched to pick a the boombox.");
				    if(!IsPlayerInRangeOfPoint(playerid, 3.0, GetPVarFloat(playerid, "pDynamicBBX"), GetPVarFloat(playerid, "pDynamicBBY"), GetPVarFloat(playerid, "pDynamicBBZ"))) return SendClientMessage(playerid, COLOR_WHITE, "You're not near in your BoomBox");
				    DestroyDynamicObject(GetPVarInt(i, "pDynamicBB"));
				    DestroyDynamic3DTextLabel(Text3D:GetPVarInt(i, "pDynamicBBLabel"));

				    DeletePVar(i, "pDynamicBB");
					DeletePVar(i, "pDynamicBBStation");
					DeletePVar(i, "pDynamicBBLabel");
				    DeletePVar(i, "pDynamicBBX");
					DeletePVar(i, "pDynamicBBY");
					DeletePVar(i, "pDynamicBBZ");
					DeletePVar(i, "pDynamicBBInt");
					DeletePVar(i, "pDynamicBBVW");

				    new string[128];
				    if(GetPVarType(i, "pDynamicBBArea"))
				    {
				        for(new x=0; x<MAX_PLAYERS; x++)
						{
				            if(IsPlayerInDynamicArea(x, GetPVarInt(x, "pDynamicBBArea")))
				            {
				                StopAudioEx(x);
				                SendClientMessage(x, COLOR_PURPLE, string);
							}
						}
				        DeletePVar(i, "pDynamicBBArea");
					}
					return 1;
				}
			}
	    }
	    SendClientMessage(playerid, COLOR_WHITE, "You don't have a boombox or you are not near one to be pickup");
	}
	return 1;
}
Reply


Messages In This Thread
i have a problem - by Antoniohl - 29.12.2013, 14:22
Re: i have a problem - by Antoniohl - 29.12.2013, 14:51
Re: i have a problem - by Antoniohl - 29.12.2013, 16:08

Forum Jump:


Users browsing this thread: 3 Guest(s)