20.12.2014, 00:59
It says the object is droped on the floor and everything, but it doesnt not create the object for it to be pickup able.
Код:
stock DropWeapons(gunID,gunAmmo,Float:X,Float:Y,Float:Z,world,owner[],print[]) { new string[128]; if(gunID != 0 && gunAmmo != 0 && ValidDropGunID(gunID)) { for(new i = 0; i < sizeof(DropInfo); i++) { if(DropInfo[i][dX] == 0.0 && DropInfo[i][dY] == 0.0 && DropInfo[i][dZ] == 0.0) { strmid(DropInfo[i][dOwner], owner, 0, strlen(owner), 255); strmid(DropInfo[i][dPrint], print, 0, strlen(print), 255); DropInfo[i][dWeapon] = gunID; DropInfo[i][dAmmo] = gunAmmo; DropInfo[i][dX] = X; DropInfo[i][dY] = Y; DropInfo[i][dZ] = Z; DropInfo[i][dWorld] = world; DropInfo[i][dType] = 1; // CreateDynamicObjectEx(GetGunObjectID(gunID), X, Y, Z-1, 80.00, 0.0, 0.0, Float:drawdistance = 100.0, Float:streamdistance = 200.0, worlds[] = { -1 }, interiors[] = { -1 }, players[] = { -1 }, maxworlds = sizeof worlds, maxinteriors = sizeof interiors, maxplayers = sizeof players); DropInfo[i][dObject] = CreateObject(GetGunObjectID(gunID), X, Y, Z-1, 80.0, 0.0, 0.0, world); format(string, sizeof(string),"[DEBUG]: Gun Object: %d spawned using Weapon-ID: %d | Ammo-ID: %d | World %d",i,DropInfo[i][dWeapon],DropInfo[i][dAmmo],DropInfo[i][dWorld]); printf(string); return 1; } } }
Код:
if(strcmp(type, "gun", true) == 0) { if (GetPVarInt(playerid, "PlayerLogged") == 0) return SendClientMessage(playerid, COLOR_WHITE, "You need to login before you use this."); if(GetPlayerWeapon(playerid) == 0) return SendClientMessage(playerid, COLOR_WHITE, "This is not a valid weapon."); if (PlayerWeapons[playerid][GetPlayerWeapon(playerid)] == 0) return SendClientMessage(playerid, COLOR_LIGHTRED, "The weapon you currently have in your hand is labeld a Hacked Weapon, You are either SA-MP Bugged or Cheating !"); if(GetPlayerAmmo(playerid) == 0) return SendClientMessage(playerid, COLOR_WHITE, "You do not have enough ammo to drop this weapon."); if (IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, COLOR_LIGHTRED, "You can't be in a vehicle while you use this !"); //if(GetPVarInt(playerid, "GunLic") == 1 && ResWeapon(GetPlayerWeapon(playerid))) return SendClientMessage(playerid, COLOR_GREY ,"Ammunation weapons can not be distributed."); new gunname[128], gunid = GetPlayerWeapon(playerid), gunammo = GetPlayerAmmo(playerid); GetWeaponName(GetPlayerWeapon(playerid), gunname, sizeof(gunname)); format(string, sizeof(string), "*** %s drops %s %s on the ground.", sendername, CheckSex(playerid),gunname); ProxDetector(30.0, playerid, string, COLOR_PURPLE); GetPlayerPos(playerid,X,Y,Z); RemovePlayerWeaponEx(playerid, GetPlayerWeapon(playerid)); if(GetPVarInt(playerid, "Gloves") == 1) sendername="Unknown"; if(GetPVarInt(playerid, "Member") != 1 && GetPVarInt(playerid, "Member") != 7) { new amount2 = 0; for(new i = 0; i < sizeof(DropInfo); i++) { if(strcmp(PlayerName(playerid), DropInfo[i][dOwner], true) == 0) { amount2++; } } if(amount2 <= 1) DropWeapons(gunid,gunammo,X,Y,Z,GetPlayerVirtualWorld(playerid),PlayerName(playerid),sendername); } }