new
gascan[MAX_PLAYERS],
gasdrop[MAX_PLAYERS][4]
;
public OnPlayerDeath(playerid, killerid, reason)
{
GetPlayerPos(playerid, PosX[playerid], PosY[playerid], PosZ[playerid]);
if(gascan[playerid] == 1)
{
gasdrop[playerid][0] = CreateDynamicObject(1650, PosX[playerid], PosY[playerid], PosZ[playerid] - 0.7, 0.0, 0.0, 0.0);
GetObjectPos(gasdrop[playerid][0], dX[playerid][0], dY[playerid][0], dZ[playerid][0]);
}
if(gascan[playerid] == 2)
{
gasdrop[playerid][0] = CreateDynamicObject(1650, PosX[playerid], PosY[playerid], PosZ[playerid] - 0.7, 0.0, 0.0, 0.0);
GetObjectPos(gasdrop[playerid][0], dX[playerid][0], dY[playerid][0], dZ[playerid][0]);
gasdrop[playerid][1] = CreateDynamicObject(1650, PosX[playerid], PosY[playerid], PosZ[playerid] - 0.7, 0.0, 0.0, 0.0);
GetObjectPos(gasdrop[playerid][1], dX[playerid][1], dY[playerid][1], dZ[playerid][1]);
}
if(gascan[playerid] == 3)
{
gasdrop[playerid][0] = CreateDynamicObject(1650, PosX[playerid], PosY[playerid], PosZ[playerid] - 0.7, 0.0, 0.0, 0.0);
GetObjectPos(gasdrop[playerid][0], dX[playerid][0], dY[playerid][0], dZ[playerid][0]);
gasdrop[playerid][1] = CreateDynamicObject(1650, PosX[playerid], PosY[playerid], PosZ[playerid] - 0.7, 0.0, 0.0, 0.0);
GetObjectPos(gasdrop[playerid][1], dX[playerid][1], dY[playerid][1], dZ[playerid][1]);
gasdrop[playerid][2] = CreateDynamicObject(1650, PosX[playerid], PosY[playerid], PosZ[playerid] - 0.7, 0.0, 0.0, 0.0);
GetObjectPos(gasdrop[playerid][2], dX[playerid][2], dY[playerid][2], dZ[playerid][2]);
}
if(gascan[playerid] == 4)
{
gasdrop[playerid][0] = CreateDynamicObject(1650, PosX[playerid], PosY[playerid], PosZ[playerid] - 0.7, 0.0, 0.0, 0.0);
GetObjectPos(gasdrop[playerid][0], dX[playerid][0], dY[playerid][0], dZ[playerid][0]);
gasdrop[playerid][1] = CreateDynamicObject(1650, PosX[playerid], PosY[playerid], PosZ[playerid] - 0.7, 0.0, 0.0, 0.0);
GetObjectPos(gasdrop[playerid][1], dX[playerid][1], dY[playerid][1], dZ[playerid][1]);
gasdrop[playerid][2] = CreateDynamicObject(1650, PosX[playerid], PosY[playerid], PosZ[playerid] - 0.7, 0.0, 0.0, 0.0);
GetObjectPos(gasdrop[playerid][2], dX[playerid][2], dY[playerid][2], dZ[playerid][2]);
gasdrop[playerid][3] = CreateDynamicObject(1650, PosX[playerid], PosY[playerid], PosZ[playerid] - 0.7, 0.0, 0.0, 0.0);
GetObjectPos(gasdrop[playerid][3], dX[playerid][3], dY[playerid][3], dZ[playerid][3]);
}
}
return 1;
}
if (PRESSED( KEY_CROUCH ))
{
if(IsValidDynamicObject(gasdrop[0][0]) && IsPlayerInRangeOfPoint(playerid,1.0,dX[0][0],dY[0][0],dZ[0][0]))
{
gascan[playerid] = gascan[playerid] +1;
SendClientMessage(playerid, -1, "* 1 full gas can has been added to your inventory");
DestroyDynamicObject(gasdrop[0][0]);
}
if(IsValidDynamicObject(gasdrop[0][1]) && IsPlayerInRangeOfPoint(playerid,1.0,dX[0][1],dY[0][1],dZ[0][1]))
{
gascan[playerid] = gascan[playerid] +1;
SendClientMessage(playerid, -1, "* 1 full gas can has been added to your inventory");
DestroyDynamicObject(gasdrop[0][1]);
}
}
return 1;
}
for(new i; i < 10; i ++)
for(new i = 0; i < MAX_PLAYERS; i ++)
{
if(!IsPlayerConnected(i)) continue;
//do your code
}
if (PRESSED( KEY_CROUCH ))
{
for(new i = 0; i < MAX_PLAYERS; i ++)
{
if(!IsPlayerConnected(i)) continue;
for(new a = 0; a < sizeof(gasdrop[]); a ++)
{
if(IsValidDynamicObject(gasdrop[i][a]) && IsPlayerInRangeOfPoint(playerid,1.0,dX[i][a],dY[i][a],dZ[i][a]))
{
gascan[playerid] = gascan[playerid] +1;
SendClientMessage(playerid, -1, "* 1 full gas can has been added to your inventory");
DestroyDynamicObject(gasdrop[i][a]);
}
}
}
}
|
You can use a loop.
Voila, a loop within a loop also works, too, where 'i' are the players and 'a' are the different drops. |
Onplayerdeath(playeridblahblah)
{
if(gascan[playerid] > 1)
{
if(isvaliddynamicobject(gasdrop[playerid])
{
new drop = gasdrop[playerid]+1;
drop=createdynamicobject(blahblah);
}
}
}