sloreann
Ученик
Всем доброго времени суток, я к вам с проблемой.
Создал команду для гос органов, ее задача ставить объекты.
При повторном вводе команды, должен пропадать объект и 3д текст, но как я создам первый раз и захочу удалить его, 3д текст пропадает, а он сам нет.
Но если создаю новый объект и удалю его, то все нормально.
Переменные:
Команда:
Case
Создал команду для гос органов, ее задача ставить объекты.
При повторном вводе команды, должен пропадать объект и 3д текст, но как я создам первый раз и захочу удалить его, 3д текст пропадает, а он сам нет.
Но если создаю новый объект и удалю его, то все нормально.
Переменные:
Код:
new Ships[MAX_PLAYERS];
new objectcreate[MAX_PLAYERS];
PHP:
CMD:break(playerid, params[])
{
if(!IsACop(playerid)) return true;
else if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, c_ARGON, "Нельзя использовать в машине.");
else if(GetPVarInt(playerid, "BREAK") > 0) return SendClientMessage(playerid, c_ARGON, "Вы уже устанавливаете объект.");
else if(objectcreate[playerid] == 1)
{
DestroyObject(objectcreate[playerid]);
Delete3DTextLabel(ObjectText[playerid]);
if(Ships[playerid]) DestroyDynamicArea(Ships[playerid]);
objectcreate[playerid] = 0;
SendClientMessage(playerid, c_ORANGE, "Вы убрали установленный Вами объект.");
return true;
}
ShowPlayerDialog(playerid, 6949, DIALOG_STYLE_LIST, "Установка объекта", "Шипы\nОграждение №1\nОграждение №2\nОграждение №3\nОграждение №4\nОграждение №5\nОграждение №6", "Выбрать", "Мне пора");
return 1;
}
Код:
case 6949:
{
if(!response) return true;
new Float:X, Float:Y, Float:Z, Float:YZ;
GetPlayerPos(playerid, X, Y, Z);
GetPlayerFacingAngle(playerid, YZ);
if(floatabs(Z) > 300 || GetPlayerInterior(playerid) != 0 || GetPlayerVirtualWorld(playerid) != 0) return SendClientMessage(playerid, c_ORANGE, "Невозможно установить объект в данном месте.");
switch(listitem)
{
case 0:
{
objectcreate[playerid] = CreateObject(2899, X, Y, Z-0.8, 0, 0, YZ);
Ships[playerid] = CreateDynamicSphere(X, Y, Z, 3.0, -1, -1, -1);
}
case 1: objectcreate[playerid] = CreateObject(1427, X+1, Y, Z, 0, 0, YZ);
case 2: objectcreate[playerid] = CreateObject(1237, X+1, Y, Z, 0, 0, YZ);
case 3: objectcreate[playerid] = CreateObject(1422, X+1, Y, Z, 0, 0, YZ);
case 4: objectcreate[playerid] = CreateObject(997, X+1, Y, Z, 0, 0, YZ);
case 5: objectcreate[playerid] = CreateObject(1459, X+1, Y, Z, 0, 0, YZ);
case 6: objectcreate[playerid] = CreateObject(1424, X+1, Y, Z, 0, 0, YZ);
}
SetPVarInt(playerid, "BREAK", objectcreate[playerid]);
EditObject(playerid, objectcreate[playerid]);
return true;
}
