Вопросы

У меня сам код есть уже он даже вставлен в мод, НО надо переделать что бы меня спавнило на томже месте где я слежу 

Заметка от DEST , создано

Не нужно основной текст темы брать под спойлер.

Поделиться сообщением


Ссылка на сообщение

17 ответов на этот вопрос

  • 0
Спойлер

cmd:afly(playerid,params[])
{
    if(PI[playerid][pAdmin] < ADM_MODER) return 1;
       else if(AdminLogged[playerid] == false) return SendClientMessage(playerid, COLOR_GREY, YouAreNotLoggedInAsAdmin);
    SetPVarInt(playerid,"spawn_ac",1);

    new inter, world, Float:X, Float:Y, Float:Z, Float:FA;
    GetPlayerPos(playerid, X, Y, Z);
    GetPlayerFacingAngle(playerid, FA);
    inter = GetPlayerInterior(playerid);
    world = GetPlayerVirtualWorld(playerid);

    if(GetPVarType(playerid, "FlyMode"))
    {
        CancelFlyMode(playerid);
    }
    else
    {
        SetPVarInt(playerid, "SpecBool", 1);
        SetPVarFloat(playerid, "SpecX", X);
        SetPVarFloat(playerid, "SpecY", Y);
        SetPVarFloat(playerid, "SpecZ", Z);
        SetPVarFloat(playerid, "SpecFA", FA);
        SetPVarInt(playerid, "SpecInt", inter);
        SetPVarInt(playerid, "SpecWorld", world);
        FlyMode(playerid);
        SendClientMessage(playerid, COLOR_GREY, ""cPS"×òîáû îòêëþ÷èòü ðåæèì ïîëåòà, ââåäèòå åùå ðàç êîìàíäó /afly");
    }
    return true;
}

 

Спойлер

 SetPlayerPos(playerid, GetPVarFloat(playerid, "SpecX"), GetPVarFloat(playerid, "SpecY"), GetPVarFloat(playerid, "SpecZ"));
        SetPlayerFacingAngle(playerid, GetPVarFloat(playerid, "SpecA"));
        SetPlayerVirtualWorld(playerid, GetPVarInt(playerid, "SpecVw"));
        SetPlayerInterior(playerid, GetPVarInt(playerid, "SpecInt"));
        DeletePVar(playerid, "SpecInt");
        DeletePVar(playerid, "SpecVw");
        DeletePVar(playerid, "SpecX");
        DeletePVar(playerid, "SpecY");
        DeletePVar(playerid, "SpecZ");
        DeletePVar(playerid, "SpecA");
        PI[playerid][Spectating][0] = INVALID_PLAYER_ID;
        PI[playerid][Spectating][1] = INVALID_PLAYER_ID;
        SetPlayerColorEx(playerid, TeamColors[GetTeamID(playerid)]);
        SetPlayerScore(playerid, PI[playerid][pLevel]);
        if(PI[playerid][pWanted]) SetPlayerWantedLevel(playerid, PI[playerid][pWanted]);
        if(PI[playerid][pMember]) SetPlayerSkin(playerid, PI[playerid][pMemberSkin]);
        else if(Oldskin2[playerid] > 0) SetPlayerSkin(playerid, Oldskin2[playerid]);
        else SetPlayerSkin(playerid, PI[playerid][pModel]);
        return 1;
    }

 

Поделиться сообщением


Ссылка на сообщение
  • 0

Скидывайте команду окончания слежки. 

Поделиться сообщением


Ссылка на сообщение
  • 0

@Nekit_Krut18 stock CancelFlyMode скиньте. Код берите еще и под тег код и спойлер. Как это сделать --

 

 

Поделиться сообщением


Ссылка на сообщение
  • 0
Спойлер

stock CancelFlyMode(playerid)
{
	DeletePVar(playerid, "FlyMode");
	CancelEdit(playerid);
	//TogglePlayerSpectating(playerid, false);
	TogglePlayerSpectating(playerid, 0);

	DestroyPlayerObject(playerid, noclipdata[playerid][flyobject]);
	noclipdata[playerid][cameramode] = CAMERA_MODE_NONE;
	return 1;
}

 

 

Поделиться сообщением


Ссылка на сообщение
  • 0

@Nekit_Krut18 свой сток заменить этим: 

Спойлер

stock CancelFlyMode(playerid)
{
	DeletePVar(playerid, "FlyMode");
	CancelEdit(playerid);
	//TogglePlayerSpectating(playerid, false);
	TogglePlayerSpectating(playerid, 0);
  	SetPlayerPos(playerid, GetPVarFloat(playerid, "SpecX"), GetPVarFloat(playerid, "SpecY"), GetPVarFloat(playerid, "SpecZ"));

	DestroyPlayerObject(playerid, noclipdata[playerid][flyobject]);
	noclipdata[playerid][cameramode] = CAMERA_MODE_NONE;
	return 1;
}

 

 

Поделиться сообщением


Ссылка на сообщение
  • 0

Не работает

11 минут назад, DEST сказал:

@Nekit_Krut18 свой сток заменить этим: 

  Код (открыть спойлер)


stock CancelFlyMode(playerid)
{
	DeletePVar(playerid, "FlyMode");
	CancelEdit(playerid);
	//TogglePlayerSpectating(playerid, false);
	TogglePlayerSpectating(playerid, 0);
  	SetPlayerPos(playerid, GetPVarFloat(playerid, "SpecX"), GetPVarFloat(playerid, "SpecY"), GetPVarFloat(playerid, "SpecZ"));

	DestroyPlayerObject(playerid, noclipdata[playerid][flyobject]);
	noclipdata[playerid][cameramode] = CAMERA_MODE_NONE;
	return 1;
}

 

 

Снова спавнит  на спавне

Поделиться сообщением


Ссылка на сообщение
  • 0

@Nekit_Krut18 Значит,  у вас функция телепорта кастомная. Скиньте команду для телепорта например игрока администратором. 

Поделиться сообщением


Ссылка на сообщение
  • 0
Спойлер

cmd:gethere(playerid, params[])
{
	if(PI[playerid][pAdmin] < ADM_ADMIN) return 1;
	else if(AdminLogged[playerid] == false) return SendClientMessage(playerid, COLOR_GREY, YouAreNotLoggedInAsAdmin);
	else if(sscanf(params, "u", params[0])) return SendClientMessage(playerid, COLOR_WHITE, ""cPS"{9ACD32}Ââåäèòå: {FFFFFF} /gethere [id èãðîêà]");
	else if(!IsPlayerConnected(params[0])) return SendClientMessage(playerid, COLOR_GREY, PlayerIsNotOnline);
	else if(PlayerLogged[params[0]] == false) return SendClientMessage(playerid, COLOR_GREY, PlayerIsNotAuthorized);
	else if(PI[playerid][pAdmin] < ADM_GRAND_ADMIN && AdminInfo[params[0]][admGethere]) return SendClientMessage(playerid, COLOR_GREY, ""cER"Òåëåïîðò ýòîãî àäìèíèñòðàòîðà çàïðåù¸í");
    //else if(GetString(GetName(playerid), NGA1)) return SendClientMessage(playerid, COLOR_GREY, ""cER"Òåëåïîðò ýòîãî àäìèíèñòðàòîðà çàïðåù¸í");
	new Float:plocx, Float:plocy, Float:plocz;
	GetPlayerPos(playerid, plocx, plocy, plocz);
	if(GetPlayerState(params[0]) == 2) SetVehiclePos(GetPlayerVehicleID(params[0]), plocx, plocy, plocz);
	else SetPlayerPos(params[0], plocx, plocy, plocz);
	SetPVarInt(params[0], "AntiBreik", 3);
	SetPlayerVirtualWorld(params[0], GetPlayerVirtualWorld(playerid));
	SetPlayerInterior(params[0], GetPlayerInterior(playerid));
	if(InHospital[params[0]]) InHospital[params[0]] = false;
	new string[128];
	format(string, sizeof(string), "Àäìèíèñòðàòîð %s[%d] òåëåïîðòèðîâàë Âàñ ê ñåáå", GetName(playerid), playerid);
	SendClientMessage(params[0], COLOR_WHITE, string);
	format(string, sizeof(string), ""aAC"%s[%d] òåëåïîðòèðîâàë èãðîêà %s[%d] ê ñåáå", GetName(playerid), playerid, GetName(params[0]), params[0]);
	SendAdminMessage(COLOR_GREY, string);
	return 1;
}

 

 

Спойлер

	if(noclipdata[playerid][cameramode] == CAMERA_MODE_FLY) CancelFlyMode(playerid);
    if(GetPVarInt(playerid, "DeathTime") > GetTickCount()) return CheatKick(playerid, 2179);
	else SetPVarInt(playerid, "DeathTime", GetTickCount()+230);
	new string[128];
	PlayerEnterTime[playerid] += 221;
	ResetPlayerWeaponsAC(playerid);
	if(GetPVarInt(playerid, "Animation"))
	{
	    DeletePVar(playerid, "Animation");
	    TextDrawHideForPlayer(playerid, AnimDraw);

 

 

Поделиться сообщением


Ссылка на сообщение
  • 0

@Nekit_Krut18 Хм.. должно все работать. Значит, вы что-то делаете не так. Или вставляете не туда, или не компилируете, или мод не перезапускаете. 

Поделиться сообщением


Ссылка на сообщение
  • 0
Спойлер

stock GetNextCameraPosition(move_mode, Float:CP[3], Float:FV[3], &Float:X, &Float:Y, &Float:Z)
{
    #define OFFSET_X (FV[0]*6000.0)
	#define OFFSET_Y (FV[1]*6000.0)
	#define OFFSET_Z (FV[2]*6000.0)
	switch(move_mode)
	{
		case MOVE_FORWARD:
		{
			X = CP[0]+OFFSET_X;
			Y = CP[1]+OFFSET_Y;
			Z = CP[2]+OFFSET_Z;
		}
		case MOVE_BACK:
		{
			X = CP[0]-OFFSET_X;
			Y = CP[1]-OFFSET_Y;
			Z = CP[2]-OFFSET_Z;
		}
		case MOVE_LEFT:
		{
			X = CP[0]-OFFSET_Y;
			Y = CP[1]+OFFSET_X;
			Z = CP[2];
		}
		case MOVE_RIGHT:
		{
			X = CP[0]+OFFSET_Y;
			Y = CP[1]-OFFSET_X;
			Z = CP[2];
		}
		case MOVE_BACK_LEFT:
		{
			X = CP[0]+(-OFFSET_X - OFFSET_Y);
 			Y = CP[1]+(-OFFSET_Y + OFFSET_X);
		 	Z = CP[2]-OFFSET_Z;
		}
		case MOVE_BACK_RIGHT:
		{
			X = CP[0]+(-OFFSET_X + OFFSET_Y);
 			Y = CP[1]+(-OFFSET_Y - OFFSET_X);
		 	Z = CP[2]-OFFSET_Z;
		}
		case MOVE_FORWARD_LEFT:
		{
			X = CP[0]+(OFFSET_X  - OFFSET_Y);
			Y = CP[1]+(OFFSET_Y  + OFFSET_X);
			Z = CP[2]+OFFSET_Z;
		}
		case MOVE_FORWARD_RIGHT:
		{
			X = CP[0]+(OFFSET_X  + OFFSET_Y);
			Y = CP[1]+(OFFSET_Y  - OFFSET_X);
			Z = CP[2]+OFFSET_Z;
		}
	}
}

stock CancelFlyMode(playerid)
{
	DeletePVar(playerid, "FlyMode");
	CancelEdit(playerid);
	//TogglePlayerSpectating(playerid, false);
	TogglePlayerSpectating(playerid, 0);
  	SetPlayerPos(playerid, GetPVarFloat(playerid, "SpecX"), GetPVarFloat(playerid, "SpecY"), GetPVarFloat(playerid, "SpecZ"));

	DestroyPlayerObject(playerid, noclipdata[playerid][flyobject]);
	noclipdata[playerid][cameramode] = CAMERA_MODE_NONE;
	return 1;
}

stock FlyMode(playerid)
{
	new Float:X, Float:Y, Float:Z;
	GetPlayerPos(playerid, X, Y, Z);
	noclipdata[playerid][flyobject] = CreatePlayerObject(playerid, 19300, X, Y, Z, 0.0, 0.0, 0.0);

	TogglePlayerSpectating(playerid, true);
	AttachCameraToPlayerObject(playerid, noclipdata[playerid][flyobject]);

	SetPVarInt(playerid, "FlyMode", 1);
	noclipdata[playerid][cameramode] = CAMERA_MODE_FLY;
	return 1;
}

 

 

7 минут назад, DEST сказал:

@Nekit_Krut18 Хм.. должно все работать. Значит, вы что-то делаете не так. Или вставляете не туда, или не компилируете, или мод не перезапускаете. 

Нет делаю я все нормально

Поделиться сообщением


Ссылка на сообщение
  • 0

@Nekit_Krut18 если у вас мод на хостинге, то перед тем сказать что не работает, вам надо: заменить, скомпелировать, залить на хостинг, перезагрузить и проверить

Поделиться сообщением


Ссылка на сообщение
  • 0
Только что, Daniil Roslyakov сказал:

@Nekit_Krut18 если у вас мод на хостинге, то перед тем сказать что не работает, вам надо: заменить, скомпелировать, залить на хостинг, перезагрузить и проверить

я так и сделал

Поделиться сообщением


Ссылка на сообщение
  • 0

 

1 минуту назад, Daniil Roslyakov сказал:

@Nekit_Krut18 у вас есть копия мода? (В отдельной папке тот же мод)

да

Поделиться сообщением


Ссылка на сообщение
  • 0
Только что, Daniil Roslyakov сказал:

@Nekit_Krut18 тогда проверите, открыта папка точно та где вы компилировали или делали определенные действия

Открыта

Только что, Nekit_Krut18 сказал:

Открыта

Давайте я все скину что относится к команде /afly ?

Поделиться сообщением


Ссылка на сообщение
  • 0
Спойлер

cmd:afly(playerid,params[])
{
    if(PI[playerid][pAdmin] < ADM_MODER) return 1;
   	else if(AdminLogged[playerid] == false) return SendClientMessage(playerid, COLOR_GREY, YouAreNotLoggedInAsAdmin);
    SetPVarInt(playerid,"spawn_ac",1);

    new inter, world, Float:X, Float:Y, Float:Z, Float:FA;
	GetPlayerPos(playerid, X, Y, Z);
	GetPlayerFacingAngle(playerid, FA);
	inter = GetPlayerInterior(playerid);
	world = GetPlayerVirtualWorld(playerid);

	if(GetPVarType(playerid, "FlyMode"))
	{
		CancelFlyMode(playerid);
	}
	else
	{
		SetPVarInt(playerid, "SpecBool", 1);
		SetPVarFloat(playerid, "SpecX", X);
		SetPVarFloat(playerid, "SpecY", Y);
		SetPVarFloat(playerid, "SpecZ", Z);
		SetPVarFloat(playerid, "SpecFA", FA);
		SetPVarInt(playerid, "SpecInt", inter);
		SetPVarInt(playerid, "SpecWorld", world);
		FlyMode(playerid);
		SendClientMessage(playerid, COLOR_GREY, ""cPS"Что-бы закрыть режим полета введите еще раз /afly");
	}
	return true;
}

 

Спойлер

	if(noclipdata[playerid][cameramode] == CAMERA_MODE_FLY) CancelFlyMode(playerid);
    if(GetPVarInt(playerid, "DeathTime") > GetTickCount()) return CheatKick(playerid, 2179);
	else SetPVarInt(playerid, "DeathTime", GetTickCount()+230);
	new string[128];
	PlayerEnterTime[playerid] += 221;
	ResetPlayerWeaponsAC(playerid);
	if(GetPVarInt(playerid, "Animation"))
	{
	    DeletePVar(playerid, "Animation");
	    TextDrawHideForPlayer(playerid, AnimDraw);
	}

 

Спойлер

stock GetNextCameraPosition(move_mode, Float:CP[3], Float:FV[3], &Float:X, &Float:Y, &Float:Z)
{
    #define OFFSET_X (FV[0]*6000.0)
	#define OFFSET_Y (FV[1]*6000.0)
	#define OFFSET_Z (FV[2]*6000.0)
	switch(move_mode)
	{
		case MOVE_FORWARD:
		{
			X = CP[0]+OFFSET_X;
			Y = CP[1]+OFFSET_Y;
			Z = CP[2]+OFFSET_Z;
		}
		case MOVE_BACK:
		{
			X = CP[0]-OFFSET_X;
			Y = CP[1]-OFFSET_Y;
			Z = CP[2]-OFFSET_Z;
		}
		case MOVE_LEFT:
		{
			X = CP[0]-OFFSET_Y;
			Y = CP[1]+OFFSET_X;
			Z = CP[2];
		}
		case MOVE_RIGHT:
		{
			X = CP[0]+OFFSET_Y;
			Y = CP[1]-OFFSET_X;
			Z = CP[2];
		}
		case MOVE_BACK_LEFT:
		{
			X = CP[0]+(-OFFSET_X - OFFSET_Y);
 			Y = CP[1]+(-OFFSET_Y + OFFSET_X);
		 	Z = CP[2]-OFFSET_Z;
		}
		case MOVE_BACK_RIGHT:
		{
			X = CP[0]+(-OFFSET_X + OFFSET_Y);
 			Y = CP[1]+(-OFFSET_Y - OFFSET_X);
		 	Z = CP[2]-OFFSET_Z;
		}
		case MOVE_FORWARD_LEFT:
		{
			X = CP[0]+(OFFSET_X  - OFFSET_Y);
			Y = CP[1]+(OFFSET_Y  + OFFSET_X);
			Z = CP[2]+OFFSET_Z;
		}
		case MOVE_FORWARD_RIGHT:
		{
			X = CP[0]+(OFFSET_X  + OFFSET_Y);
			Y = CP[1]+(OFFSET_Y  - OFFSET_X);
			Z = CP[2]+OFFSET_Z;
		}
	}
}

stock CancelFlyMode(playerid)
{
	DeletePVar(playerid, "FlyMode");
	CancelEdit(playerid);
	//TogglePlayerSpectating(playerid, false);
	TogglePlayerSpectating(playerid, 0);
  	SetPlayerPos(playerid, GetPVarFloat(playerid, "SpecX"), GetPVarFloat(playerid, "SpecY"), GetPVarFloat(playerid, "SpecZ"));

	DestroyPlayerObject(playerid, noclipdata[playerid][flyobject]);
	noclipdata[playerid][cameramode] = CAMERA_MODE_NONE;
	return 1;
}

stock FlyMode(playerid)
{
	new Float:X, Float:Y, Float:Z;
	GetPlayerPos(playerid, X, Y, Z);
	noclipdata[playerid][flyobject] = CreatePlayerObject(playerid, 19300, X, Y, Z, 0.0, 0.0, 0.0);

	TogglePlayerSpectating(playerid, true);
	AttachCameraToPlayerObject(playerid, noclipdata[playerid][flyobject]);

	SetPVarInt(playerid, "FlyMode", 1);
	noclipdata[playerid][cameramode] = CAMERA_MODE_FLY;
	return 1;
}
Спойлер


	{
	    SetPlayerPos(playerid, GetPVarFloat(playerid, "SpecX"), GetPVarFloat(playerid, "SpecY"), GetPVarFloat(playerid, "SpecZ"));
	    SetPlayerFacingAngle(playerid, GetPVarFloat(playerid, "SpecA"));
		SetPlayerVirtualWorld(playerid, GetPVarInt(playerid, "SpecVw"));
		SetPlayerInterior(playerid, GetPVarInt(playerid, "SpecInt"));
		DeletePVar(playerid, "SpecInt");
		DeletePVar(playerid, "SpecVw");
		DeletePVar(playerid, "SpecX");
		DeletePVar(playerid, "SpecY");
		DeletePVar(playerid, "SpecZ");
		DeletePVar(playerid, "SpecA");
		PI[playerid][Spectating][0] = INVALID_PLAYER_ID;
		PI[playerid][Spectating][1] = INVALID_PLAYER_ID;
		SetPlayerColorEx(playerid, TeamColors[GetTeamID(playerid)]);
		SetPlayerScore(playerid, PI[playerid][pLevel]);
		if(PI[playerid][pWanted]) SetPlayerWantedLevel(playerid, PI[playerid][pWanted]);
		if(PI[playerid][pMember]) SetPlayerSkin(playerid, PI[playerid][pMemberSkin]);
		else if(Oldskin2[playerid] > 0) SetPlayerSkin(playerid, Oldskin2[playerid]);
		else SetPlayerSkin(playerid, PI[playerid][pModel]);
		return 1;
	}

 

 

 

Спойлер

 

 

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • Mister Odin
      От Mister Odin
       
      new
       g_teleport_list[39][E_TELEPORT_LIST] = {  {"Спавн пгт.Батырево", 1802.3612, 2508.4824, 15.8887},  {"Спавн г.Арзамас", -113.5887, 977.7222, 12.0346},     {"Спавн г.Южный", 2744.2770, -2446.7246, 21.8988},     {"Центральный банк", 1852.020385,2040.791381,15.892713},  {"Рублёвка", -837.7783, 888.6161, 12.7232},  {"Казино", 1332.4252, 2358.7014, 17.6641},  {"Битва за контейнеры", 614.5167, 1722.3566, 12.0709},  {"Автосалон низкого класса", 2493.9616, -722.9544, 12.3315},  {"Автосалон среднего класса", 1407.7449, 455.4801, 13.1630},  {"Автосалон высокого класса", -14.0637, 2614.5664, 10.9892},   {"Мотосалон Harley Davidson", 785.720153, 750.465087, 12.000024},  {"Автошкола", 1909.174438,2227.679687,15.708162},  {"Военкомат", 1916.778564,2302.411376,15.574637},  {"Правительство области", -139.140975,593.789611,12.145712},  {"Отдел полиции №1 (ГИБДД)", 1906.805786,-2234.382812,11.257631},  {"Отдел полиции №2 (УМВД)", 2581.309326,-2416.139892,21.960090},  {"Отдел ФСБ", 1823.904663,2095.636718,15.848405},  {"Городская больница г.Арзамас", -285.797210,581.851562,12.120290},   {"СМИ", -317.708038,821.221679,13.051450},  {"Воинская часть", 1703.197265,1678.025878,15.279437},  {"Арзамасская ОПГ", 438.705322,1046.505126,12.002637},  {"Батыревская ОПГ", 1941.203857,2161.006591,15.705187},  {"Лыткаринская ОПГ", -2346.002441,75.257041,21.002962},  {"Шахта", 2381.5727, 1726.4451, -2.1506},  {"Завод", -1062.6697, 2204.1894, 38.0964},  {"Инкосация", 1864.1374, 2011.7136, 15.8546},  {"Транспортная Компания", 2362.1115, 1972.5627, 15.5530},  {"База механиков", 1840.918090,-118.025146,15.695312},  {"Курьерская служба доставки", 2764.509765,-2396.882568,21.890625},  {"Аренда автобуса(Южный)", 2771.041992,-2454.780761,21.845964},  {"Аренда автобуса(Арзамас)", -127.487670,943.652648,12.142824},   {"Аренда автобуса(Батырево)", 1798.986328,2529.591552,15.664262},  {"Гоночная трасса", -1568.7784, 1611.8305, 36.3971},  {"Дом на горе", -789.5397, -456.7479, 741.1422},  {"СТО и тюнинг-ателье", 1856.1375, -122.3266, 15.6888},  {"Аренда транспорта пгт.Батырево", 1763.641723,2255.673339,15.865348},  {"Аренда транспорта г.Арзамас", -36.923530,1360.673583,12.002090},  {"Аренда транспорта г.Южный", 1966.599975,-2603.943603,10.820312},  {"Тайный интерьер в Лыткарино", -2424.5818, 2846.3291, 40.7908} };