Перейти к содержанию
Демид

Удаление объектов через include

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

Демид

Мне бы объяснить и ответить на один вопросик:D83DDE02:
Вопросик: Возможно ли удалить весь маппинг с сервера CRMP ( стоковый маппинг ) без лаунчера?
Проблема: я заливаю в include Remove.inc >> удаление объектов
Подключаю его через stock | в OnPlayerConnect пишу RemoveObject();

public OnGameModeInit()
RemoveObject();

stock RemoveObject()
{
	#include"../include/Mapping/Remove.inc"
}

У меня не удаляется маппинг с сервера...
В Remove.inc
 

#if defined _removeobject
#endinput   
#endif  
#define _removeobject
RemoveObject()
{
	MAPPING
return 1;
}

Так-же пробовал без данного кода

#if defined _removeobject
#endinput   
#endif  
#define _removeobject
RemoveObject()
{
return 1;
}

Мне банально выдавал ERROR по типу не существует playerid 
RemoveBuildingForPlayer(playerid, x, y ,z );

Пробовал так же вариацию добавить в stock LoadObject
Мне выдавал ERROR по типу не существует playerid 
RemoveBuildingForPlayer(playerid, x, y ,z );
Убирал playerid выдавал ERROR по типу не существует данного Float
Из за допольнительных координат но это бред их убирать...

Так же пробовал чисто добавить удаление маппинга в мод... OnPlayerConnect и потом пробовал в OnGameModeInt
У меня либо крашило при входе либо банально зависало на авторизаций. И просто 0 реакций от КРМП.. но картинки CRMP двигаются и проявляются..
Я как понял это из за того что много удалено.. но как выше написал в include у меня не получается залить нормально.
 

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


Ссылка на сообщение
Поделиться на другие сайты
16Shadows

Функция RemoveBuildingForPlayer, как несложно догадаться из названия, удаляет объект для конкретного игрока, указанного переменной playerid. Чтобы поместить все вызовы в инклуде, в функцию RemoveObject нужно передавать id игрока, для которого удаляются объекты. Объекты удаляются для подключённых игроков. Вызывать RemoveBuildingForPlayer на пустые слоты бесполезно.

Игра может зависнуть из-за RemoveObjectForPlayer при двух ситуациях:

1) Некоторые объекты нельзя чисто удалить с сервера

2) Вы удаляете уже удалённый объект (т.е. либо RemoveBuildingForPlayer вызывается несколько раз, либо у Вас есть дупликаты этой функции)

Кстати говоря, судя по это строке

20 часов назад, Демид сказал:

RemoveBuildingForPlayer(playerid, x, y ,z );

Вы даже не заглянули в документацию:

RemoveBuildingForPlayer(playerid, modelid, Float:fX, Float:fY, Float:fZ, Float:fRadius)

В которой также указано, что на функцию существует ограничение в 1000 объектов/вызовов.

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


Ссылка на сообщение
Поделиться на другие сайты
Демид
2 часа назад, 16Shadows сказал:

Функция RemoveBuildingForPlayer, как несложно догадаться из названия, удаляет объект для конкретного игрока, указанного переменной playerid. Чтобы поместить все вызовы в инклуде, в функцию RemoveObject нужно передавать id игрока, для которого удаляются объекты. Объекты удаляются для подключённых игроков. Вызывать RemoveBuildingForPlayer на пустые слоты бесполезно.

Игра может зависнуть из-за RemoveObjectForPlayer при двух ситуациях:

1) Некоторые объекты нельзя чисто удалить с сервера

2) Вы удаляете уже удалённый объект (т.е. либо RemoveBuildingForPlayer вызывается несколько раз, либо у Вас есть дупликаты этой функции)

Кстати говоря, судя по это строке

Вы даже не заглянули в документацию:

RemoveBuildingForPlayer(playerid, modelid, Float:fX, Float:fY, Float:fZ, Float:fRadius)

В которой также указано, что на функцию существует ограничение в 1000 объектов/вызовов.

Я читал документацию, а эту строчку написал чисто как пример. 
 

RemoveBuildingForPlayer(playerid, x, y ,z );

По счёт 1000 объектов я как раз и спрашивал, возможно ли обойти это ограничение без лаунчера.
По счёт RemoveObject -  буду знать и попробую через эту функцию выполнить удаления.
По счёт зависания игры, спасибо учту эти моменты перепроверю удаления объектов :D83DDE0A:

Изменено пользователем Демид

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


Ссылка на сообщение
Поделиться на другие сайты
16Shadows

Думаю, ограничение в ~1000 вызовов нельзя обойти. Вы можете удалять объекты сразу по всей карте, но моделей всё-равно больше 1000.

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


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

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

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

    • Quied
      От Quied
      Первый раз задаю тут вопрос, надеюсь с темой не ошибся. Ну вообщем хотел попробовать сервер свой реализовать, пока что для себя просто, но мало знаком с разработкой для CRMP. 
       -Есть бесплатный сервер что бы можно было свой сервер CRMP на нём запускать?
      - Какие есть инструменты для создания карты? (Не с нуля, есть скаченный сервер с этого портала)
      -Нужно ли освоить pawn, или я смогу на С++ делать всю необходимую мне реализацию/систему/прочее
      -Самое важное - Лаунчер, есть уже почти готовый(Дизайн only), реализован на QT, как я полагаю Лаунчер просто должен скачивать файлы с сервера на компьютер? и конектиться по IP который выдаст сервер? 
      (Было бы не плохо если бы кто-то смог написать мне в тг и подробнее рассказать как это происходит - @onlyinc)
    • Crowskick
      От Crowskick
      Помогите когда запускаю сервер он сразу включается как исправить у меня win10
    • OrizonaFp
      От OrizonaFp
      Всем привет! Перешёл с SAMP на CRMP и захотел создать сервер.
      Кто может отправить ссылку на мод без строчек которые входят на CR-MP.RU форум(там кракозябры и непонятно что к чему)
      Мод пожалуйста желательно с регистрацией и версии 0.3.7(в CRMP же есть такая*)
      Помогите Пожалуйста!
    • meL
      От meL
      Нашел на старом компьютере папку с ID всех объектов в CRMP. Когда-то очень давно пытался сделать раздел на сайте, но не получилось.
      Выкладываю для всех.
      Скачать
      Пароль от архива: cr-mp.ru
      Автор: Cudder
×

Важная информация

Мы разместили cookie-файлы на ваше устройство, чтобы помочь сделать этот сайт лучше. Вы можете изменить свои настройки cookie-файлов, или продолжить без изменения настроек.