23.07.2014, 15:45
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![Smiley](images/smilies/smile.png)
Code:
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
![Smiley](images/smilies/smile.png)
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; }