05.09.2017, 13:28
(
Последний раз редактировалось Puff; 06.09.2017 в 00:01.
)
Hey, whenever i create a furniture or walltag.. I cant edit it.. it tells me to click on object but I'm constantly clicking but it isnt working..
Код:
public onWallTagCreate(playerid, text[]) {
if(strlen(text) < 1 || strlen(text) >= MAX_WALLTAG_TITLE) {
SendClientMessage(playerid, X11_TOMATO_2, "The text you're trying to enter is either too short or too long!");
wallTagCreate(playerid);
return 1;
}
new sqlfamilyid = GetPVarInt(playerid,"Family");
new Float:X,Float:Y,Float:Z,Float:RotZ,VW,Interior;
GetPlayerPos(playerid, X, Y, Z);
GetPlayerFacingAngle(playerid, RotZ);
Interior = GetPlayerInterior(playerid);
VW = GetPlayerVirtualWorld(playerid);
new color = GetPVarInt(playerid, "WallTagColorIndex");
CreateTag(sqlfamilyid, X, Y, Z, 0,0,RotZ+90.0, Interior, VW, text, color, playerid);
SetTimerEx("UpdatePlayerObjectsAtPos",1000, false, "d", playerid);
movePlayerBack(playerid, 2.0);
wallTagEdit(playerid);
SendClientMessage(playerid, COLOR_LIGHTGREEN, "[INFO]: Select the object to edit it.");
return 1;
}
Код:
walltagsOnPlayerEditObject(playerid, objectid, response, Float:x, Float:y, Float:z, Float:rx, Float:ry, Float:rz) {
query[0] = 0;//[128];
if(response != EDIT_RESPONSE_FINAL) {
return 0;
}
new sqlid = findWallTagSQLIDByObjID(objectid);
new index = findWallTagByObjID(objectid);
if(index != -1) {
WallTagInfo[index][pWallTagX] = x;
WallTagInfo[index][pWallTagY] = y;
WallTagInfo[index][pWallTagZ] = z;
WallTagInfo[index][pWallTagRotX] = rx;
WallTagInfo[index][pWallTagRotY] = ry;
WallTagInfo[index][pWallTagRotZ] = rz;
SendClientMessage(playerid, X11_TOMATO_2, "Tag position saved!");
format(query, sizeof(query), "UPDATE `walltags` SET `X` = %f, `Y` = %f, `Z` = %f, `rotx` = %f, `roty` = %f, `rotz` = %f WHERE `id` = %d",x,y,z,rx,ry,rz,sqlid);
SetDynamicObjectPos(objectid, x, y, z);
SetDynamicObjectRot(objectid, rx, ry, rz);
mysql_function_query(g_mysql_handle, query, true, "EmptyCallback","");
}
return 1;
}
Код:
public wallTagEdit(playerid) {
SetPVarInt(playerid, "MovingTag", 1);
SelectObject(playerid);
return 1;
}
public wallTagDelete(playerid) {
SetPVarInt(playerid, "MovingTag", 2);
SelectObject(playerid);
return 1;
}
public chooseTagColor(playerid) {
dialogstr[0] = 0;
new temptxt[256];
for(new i=1;i<sizeof(FamilyColours);i++) {
format(temptxt, sizeof(temptxt), "{%s}Sample %d\n",getColourString(FamilyColours[i]),i);
strcat(dialogstr,temptxt,sizeof(dialogstr));
}
ShowPlayerDialog(playerid, EWallTags_ChooseTagColor, DIALOG_STYLE_LIST, "{00BFFF}Choose a Tag Colour",dialogstr, "Ok", "Cancel");
}
public onChooseTagColor(playerid, index) {
SendClientMessage(playerid, COLOR_LIGHTGREEN, "[INFO]: You've chosen a tag color!");
SetPVarInt(playerid, "WallTagColorIndex", index+1);
wallTagCreate(playerid);
return 1;
}



