Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Создание и удаление объектов на сервере (без сохранения)

Статус
В этой теме нельзя размещать новые ответы.

Dark Angel

Компетентный
Ко всем new:

PHP:
new nsa[128];
В любое место:

PHP:
CMD:createobject(playerid,params[])
{
    if(PlayerLogged[playerid] == 0) return true;
	if(PlayerInfo[playerid][pAdmin] < 6 || AdminLogged[playerid] == false) return true;
	if(PlayerInfo[playerid][pAdminDuty] == 0) return SendClientMessage(playerid, COLOR_GREY, YouCanNotAdminDuty);
    SPD(playerid,333, DIALOG_STYLE_LIST, "Создание / Изменение объекта","Создать объект\nВыбрать объект","Выбрать","Отмена");
	return true;
}
P.s. Команду делал под себя,у кого другие переменные меняйте на свои

Ко всем case:

PHP:
 case 333:
	    {
	        if(response)
	        {
	            if(listitem == 0) return SPD(playerid, 90, DIALOG_STYLE_INPUT,"Создание объекта","Введите ID объекта","Создать","Отмена");
				if(listitem == 1) return SelectObject(playerid);
	        }
	    }
	    case 90:
	    {
	        if(response)
	        {
	            if(!response) return true;
				if(!strval(inputtext)) return SPD(playerid, 90, DIALOG_STYLE_INPUT,"Создание объекта","Введите ID объекта","Создать","Отмена");
				new Float:X, Float:Y, Float:Z;
				GetPlayerPos(playerid, X, Y, Z);
				new object = CreateObject(strval(inputtext), X+1, Y+1, Z+2, 0.0,0.0,0.0);
				SetPVarInt(playerid, "SelectedObject", object);
				EditObject(playerid, object);
				return true;
	        }
	    }
	    case 91:
	    {
	        if(response) return EditObject(playerid, GetPVarInt(playerid, "SelectedObject"));
	        else
			{
				DestroyObject(GetPVarInt(playerid, "SelectedObject"));
				CancelEdit(playerid);
			}
	        DeletePVar(playerid, "SelectedObject");
	    }
Ко всем пабликам:

PHP:
public OnPlayerSelectObject(playerid, type, objectid, modelid, Float:fX, Float:fY, Float:fZ)
{
	format(nsa, sizeof(nsa),"ID_Object: %d",objectid);
	SCM(playerid,COLOR_LIGHTRED,nsa);
 	SetPVarInt(playerid, "SelectedObject", objectid);
  	SPD(playerid, 91, DIALOG_STYLE_MSGBOX, "Объект выбран","Выберите действие!","Изменить","Удалить");
 	return true;
}
В public OnPlayerEditObject :

PHP:
	if(response == EDIT_RESPONSE_CANCEL)
	{
		DestroyObject(objectid);
		CancelEdit(playerid);
	}
	if(response == EDIT_RESPONSE_FINAL)
	{
		printf("CreateDynamicObject(%i, %.2f, %.2f, %.2f, %.2f, %.2f, %.2f);",objectid,fX, fY, fZ, fRotX, fRotY, fRotZ);
		CancelEdit(playerid);
	}
	if(!IsValidObject(objectid)) return 0;
	MoveObject(objectid, fX, fY, fZ, 10.0, fRotX, fRotY, fRotZ);
	new Float:oldX, Float:oldY, Float:oldZ,
	Float:oldRotX, Float:oldRotY, Float:oldRotZ;
	GetObjectPos(objectid, oldX, oldY, oldZ);
	GetObjectRot(objectid, oldRotX, oldRotY, oldRotZ);
	if(!playerobject)
	{
	    if(!IsValidObject(objectid)) return 0;
	    MoveObject(objectid, fX, fY, fZ, 10.0, fRotX, fRotY, fRotZ);
	}
	if(response == EDIT_RESPONSE_FINAL)
	{
	    SetObjectPos(objectid, fX, fY, fZ);
		SetObjectRot(objectid, fRotX, fRotY, fRotZ);
	}
	if(response == EDIT_RESPONSE_CANCEL)
	{
		if(!playerobject)
		{
			SetObjectPos(objectid, oldX, oldY, oldZ);
			SetObjectRot(objectid, oldRotX, oldRotY, oldRotZ);
		}
		else
		{
			SetPlayerObjectPos(playerid, objectid, oldX, oldY, oldZ);
			SetPlayerObjectRot(playerid, objectid, oldRotX, oldRotY, oldRotZ);
		}
	}
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу