Is it possible to create pickup in command -
Blademaster680 - 23.07.2014
Is it possible to create a 3dtextlabel and a pickup with a command?
I am busy making a doorsystem and it is not creating the pickup and 3dtextlabel when I need it to.
I have to restart my server before it shows everything.
Could someone help please
Code:
Код:
CMD:dooredit(playerid, params[])
{
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, COLOR_RED, "You are not admin!");
new string[128], choice[32], doorid, Query[500], amount;
new Float: pX, Float: pY, Float: pZ;
if(sscanf(params, "s[32]dD(1)", choice, doorid, amount))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /dooredit [name] [doorid] [amount]");
SendClientMessage(playerid, COLOR_GREY, "Names: Exterior | Interior | Pickup");
return 1;
}
if(strcmp(choice, "exterior", true) == 0)
{
GetPlayerPos(playerid, pX, pY, pZ);
mysql_format(dbHandle,Query, sizeof(Query), "UPDATE `doors` SET `ExtX` = '%f', `ExtY` = '%f', `ExtZ` = '%f' WHERE `ID` = '%d'",
pX,
pY,
pZ,
doorid);
mysql_query(dbHandle,Query,false);
format(string, sizeof(string), "You have changed the exterior of door ID: %d", doorid);
SendClientMessage(playerid, COLOR_GREY, string);
Load_DynamicDoors();
return 1;
}
if(strcmp(choice, "interior", true) == 0)
{
GetPlayerPos(playerid, pX, pY, pZ);
new Int = GetPlayerInterior(playerid);
new VW = GetPlayerVirtualWorld(playerid);
mysql_format(dbHandle,Query, sizeof(Query), "UPDATE `doors` SET `IntX` = '%f', `IntY` = '%f', `IntZ` = '%f', `Interior` = '%d', `VW` = '%d' WHERE `ID` = '%d'",
pX,
pY,
pZ,
Int,
VW,
doorid);
mysql_query(dbHandle,Query,false);
format(string, sizeof(string), "You have changed the interior of door ID: %d", doorid);
SendClientMessage(playerid, COLOR_GREY, string);
Load_DynamicDoors();
return 1;
}
if(strcmp(choice, "pickup", true) == 0)
{
mysql_format(dbHandle,Query, sizeof(Query), "UPDATE `doors` SET `PickupID` '%d' WHERE `ID` = '%d'",
amount,
doorid);
mysql_query(dbHandle,Query,false);
format(string, sizeof(string), "You have changed the pickup id of door ID: %d", doorid);
SendClientMessage(playerid, COLOR_GREY, string);
Load_DynamicDoors();
}
return 1;
}
Код:
stock Load_DynamicDoors()
{
new Query[512], savestr[25], savestr2[32], rows, fields;
for(new i = 1; i < MAX_DOORS; i++)
{
mysql_format(dbHandle,Query, sizeof(Query), "SELECT * FROM `Doors` WHERE `ID` = '%d'", i);
mysql_query(dbHandle,Query);
cache_get_data(rows, fields);
if(rows)
{
cache_get_field_content(0, "ID", savestr); dInfo[i][dID] = strval(savestr);
cache_get_field_content(0, "Name", savestr2); dInfo[i][dName] = savestr2;
cache_get_field_content(0, "PickupID", savestr); dInfo[i][dPickupID] = strval(savestr);
cache_get_field_content(0, "ExtX", savestr); dInfo[i][dEPos][0] = floatstr(savestr);
cache_get_field_content(0, "ExtY", savestr); dInfo[i][dEPos][1] = floatstr(savestr);
cache_get_field_content(0, "ExtZ", savestr); dInfo[i][dEPos][2] = floatstr(savestr);
cache_get_field_content(0, "IntX", savestr); dInfo[i][dIPos][0] = floatstr(savestr);
cache_get_field_content(0, "IntY", savestr); dInfo[i][dIPos][1] = floatstr(savestr);
cache_get_field_content(0, "IntZ", savestr); dInfo[i][dIPos][2] = floatstr(savestr);
cache_get_field_content(0, "Interior", savestr); dInfo[i][dInt] = strval(savestr);
cache_get_field_content(0, "EInterior", savestr); dInfo[i][dEInt] = strval(savestr);
cache_get_field_content(0, "VW", savestr); dInfo[i][dVW] = strval(savestr);
cache_get_field_content(0, "EVW", savestr); dInfo[i][dEVW] = strval(savestr);
cache_get_field_content(0, "Locked", savestr); dInfo[i][dLocked] = strval(savestr);
if(DoorCreate[i] == 0)
{
Create_DynamicDoors(i);
DoorCreate[i] = 1;
}
}
}
return 1;
}
stock Create_DynamicDoors(doorid)
{
new string[128];
format(string, sizeof(string), "%s", dInfo[doorid][dName]);
dInfo[doorid][dTextID] = CreateDynamic3DTextLabel(string, COLOR_YELLOW, dInfo[doorid][dEPos][0], dInfo[doorid][dEPos][1], dInfo[doorid][dEPos][2]+0.7,10.0, INVALID_PLAYER_ID, INVALID_VEHICLE_ID, 1, dInfo[doorid][dEVW], dInfo[doorid][dEInt], -1);
CreateDynamicPickup(dInfo[doorid][dPickupID], 23, dInfo[doorid][dEPos][0], dInfo[doorid][dEPos][1], dInfo[doorid][dEPos][2], 0);
CreateDynamic3DTextLabel("Exit", COLOR_YELLOW, dInfo[doorid][dIPos][0], dInfo[doorid][dIPos][1], dInfo[doorid][dIPos][2]+0.7,10.0, INVALID_PLAYER_ID, INVALID_VEHICLE_ID, 1, dInfo[doorid][dVW], dInfo[doorid][dInt], -1);
CreatePickup(1318, 23, dInfo[doorid][dIPos][0], dInfo[doorid][dIPos][1], dInfo[doorid][dIPos][2], 0);
return 1;
}
Re: Is it possible to create pickup in command -
Blademaster680 - 24.07.2014
Bump