Рекомендованные сообщения



Не найдено.

8 posts in this topic

С возвращением.

Возник вопрос по моду Perfomans (Вроде так аля Radmir hz)

 

В нем глобальный баг с установкой позиции игроку , хотел бы поинтересоваться , возможно есть решение..

 

Спойлер

При любой установке позиции игроку (Будь то телепорт через пикап , телепорт по метке , телепорт по диалогу , и т.д) , игрока телепортирует на его координаты.. 

 

Спойлер

stock SetPlayerPosEx(playerid, Float: x, Float: y, Float: z, Float: angle, interior = -1, virtual_world = -1, freeze = true)
{
	if(interior > 0)
		PlayerTeleportInit(playerid, x, y,  z, angle);

	SetPlayerPos(playerid, x, y, z);

	SetPlayerFacingAngle(playerid, angle);
	SetCameraBehindPlayer(playerid);
	
	if(interior != -1 && GetPlayerInterior(playerid) != interior)
	{
		SetPlayerInterior(playerid, interior);
	}
	if(virtual_world != -1 && GetPlayerVirtualWorld(playerid) != virtual_world)
	{
		SetPlayerVirtualWorld(playerid, virtual_world);
	}
	if(GetPlayerData(playerid, P_LAST_PICKUP) != -1)
	{
		SetPlayerData(playerid, P_LAST_PICKUP, -1);
	}
	if(freeze)
	{
		TeleportFreeze(playerid, 1200);
	}
	return 1;
}

 

 

Вполне возможно , что проблема где - то тут :0

Edited by Aurum

Share this post


Link to post
Share on other sites

При выполнении стандартной версии функции такой же баг? Может быть вычисляется позиция не какой-то метки или како-то человека, а именно позиция игрока, она записывается в переменные, например x, y, z. Их ты используешь в качестве координат для телепорта. Дай любой пример функции.

Share this post


Link to post
Share on other sites
Спойлер

CMD:goto(playerid, params[])
{
	if(GetPlayerAdminEx(playerid) < 3) return 1;
	
	extract params -> new to_player; else return SendClientMessage(playerid, 0xCECECEFF, "Используйте: /goto [id игрока]");

	if(!IsPlayerConnected(to_player) || !IsPlayerLogged(to_player)) 
		return SendClientMessage(playerid, 0x999999FF, "Такого игрока нет");
	
	new Float: x, Float: y, Float: z, interior, virtual_world;
	GetPlayerPos(to_player, x, y, z);
	interior = GetPlayerInterior(to_player);
	virtual_world = GetPlayerVirtualWorld(to_player);
	
	SetPlayerPosEx(playerid, x + 1, y + 1, z, 0.0, interior, virtual_world, false);
	
	SetPlayerInHouse(playerid, GetPlayerInHouse(to_player));
	SetPlayerInBiz(playerid, GetPlayerInBiz(to_player));
	
	SendClientMessage(playerid, -1, "Вы были телепортированы");

	new fmt_msg[105];

	if(GetPlayerAdminEx(playerid) <= 5)
	{
		format(fmt_msg, sizeof fmt_msg, "[A] Администратор %s[%d] телепортировался к %s[%d]", GetPlayerNameEx(playerid), playerid, GetPlayerNameEx(to_player), to_player);
		SendMessageToAdmins(fmt_msg, 0x999999FF);
	}

	format(fmt_msg, sizeof fmt_msg, "Телепортировался к %s[acc:%d]", GetPlayerNameEx(to_player), GetPlayerAccountID(to_player));
	SendLog(playerid, LOG_TYPE_ADMIN_ACTION, fmt_msg);

	return 1;
}-

 

Про стандартную функцию скажу позже.

Edited by Aurum

Share this post


Link to post
Share on other sites

@Aurum попробуй-ка так

GetPlayerPos(playerid, x, y, z);
	interior = GetPlayerInterior(playerid);
	virtual_world = GetPlayerVirtualWorld(playerid);

 

Share this post


Link to post
Share on other sites
17 часов назад, SCRIPTMAN сказал:

@Aurum попробуй-ка так


GetPlayerPos(playerid, x, y, z);
	interior = GetPlayerInterior(playerid);
	virtual_world = GetPlayerVirtualWorld(playerid);

 

Есть сомнения по работоспособности.

 

1. Все же параметр у команды один , и это to_player.. Не вижу смысла юзать свой id..

 

2. Абсолютно со всеми телепортации эта проблема , исходя из этого можно предположить , что проблема именно в функции SetPlayerPosEx

 

Я попробую , когда буду дома , но что - то сомневаюсь)

 

Позже попробую юзануть стандартную функцию в данной команде , отпишу. Возможно проблема вообще не в коде.. :/

Edited by Aurum

Share this post


Link to post
Share on other sites

@Aurum если стоит "to_player", но координаты вычисляет игрока, которого ты хочешь тп, отсюда и получается, что будет телепорт на его же координаты. А ты хочешь его к себе тп, значит нужно узнавать твои координаты, соответственно "playerid"

Share this post


Link to post
Share on other sites
1 час назад, SCRIPTMAN сказал:

@Aurum если стоит "to_player", но координаты вычисляет игрока, которого ты хочешь тп, отсюда и получается, что будет телепорт на его же координаты. А ты хочешь его к себе тп, значит нужно узнавать твои координаты, соответственно "playerid

Вы не поняли) Я хочу к игроку телепортироваться))

Share this post


Link to post
Share on other sites

@Aurum правда)

Попробуй юзать стандартную функцию.

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  
Followers 0

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • danya_white
      By danya_white


      Просмотр файла Игровой мод Renaissance RolePlay
      Доброго времени суток, хочу выставить на продажу игровой мод проекта Renaissance RP.
       
      Данный мод является не последний актуальный версии проекта, а версия ниже, многие актуальные систему отсутствуют, но они будут дополняться, со временем. Основные функции на проекте Renaissance RP присутствую в данном моде, это первая версия проекта, поэтому буду дополнять тему своими доработками, также есть TEST IP, реальному покупателю в личные сообщение на форуме, дам данные.
       
      Информация о моде:
      Версия MYSQL - R39-6
      Античит - Встроенный + SAMP-AC
      Стример - Streamer Plugin v2.9.4 by Incognito
      Командный процессор - Pawn CMD
      Основа мода - Brilliant RP
      Остальное Все плагины обновлены до последней версии
       
       
      Основные системы которые присутствуют в данном моде:
      - Система промокодов для семей (/family) - Система выборов - Динамичная система (/lmenu), возможность назначать транспорт, форму сотрудников - Система подразделений в гос.организациях - Система КАЗИНО - Система акксесуаров - Оптимизация игрового мода. - Риелторское агенство. - Квестовая линия (НАЧАЛО) p.s И еще многие другие системы, более подробно на тестовом сервере.
      Добавил danya_white Добавлено 26.10.2021 Категория Моды Автор danya  
    • danya_white
      By danya_white
      Доброго времени суток, хочу выставить на продажу игровой мод проекта Renaissance RP.
       
      Данный мод является не последний актуальный версии проекта, а версия ниже, многие актуальные систему отсутствуют, но они будут дополняться, со временем. Основные функции на проекте Renaissance RP присутствую в данном моде, это первая версия проекта, поэтому буду дополнять тему своими доработками, также есть TEST IP, реальному покупателю в личные сообщение на форуме, дам данные.
       
      Информация о моде:
      Версия MYSQL - R39-6
      Античит - Встроенный + SAMP-AC
      Стример - Streamer Plugin v2.9.4 by Incognito
      Командный процессор - Pawn CMD
      Основа мода - Brilliant RP
      Остальное Все плагины обновлены до последней версии
       
       
      Основные системы которые присутствуют в данном моде:
      - Система промокодов для семей (/family) - Система выборов - Динамичная система (/lmenu), возможность назначать транспорт, форму сотрудников - Система подразделений в гос.организациях - Система КАЗИНО - Система акксесуаров - Оптимизация игрового мода. - Риелторское агенство. - Квестовая линия (НАЧАЛО) p.s И еще многие другие системы, более подробно на тестовом сервере.
    • ViwFay
      By ViwFay
      C:\Users\Пользователь\Desktop\евгений\мод\mod.crmp.mobile.deus\mod.crmp.mobile.deus\gamemodes\new.pwn(34666) : error 001: expected token: "-string end-", but found "-identifier-"
      C:\Users\Пользователь\Desktop\евгений\мод\mod.crmp.mobile.deus\mod.crmp.mobile.deus\gamemodes\new.pwn(34666) : error 017: undefined symbol "Fruit"
      C:\Users\Пользователь\Desktop\евгений\мод\mod.crmp.mobile.deus\mod.crmp.mobile.deus\gamemodes\new.pwn(34666) : warning 215: expression has no effect
      C:\Users\Пользователь\Desktop\евгений\мод\mod.crmp.mobile.deus\mod.crmp.mobile.deus\gamemodes\new.pwn(34666) : error 001: expected token: ";", but found ")"
      C:\Users\Пользователь\Desktop\евгений\мод\mod.crmp.mobile.deus\mod.crmp.mobile.deus\gamemodes\new.pwn(34666) : fatal error 107: too many error messages on one line
      Помогите пожалуйста разобраться.