Перейти к содержимому


Фотография

Выполнение init.sqf


Лучший Ответ Dispite , 19 October 2020 - 04:39

Нашёл причину, извините за идиотизм. Не обратил внимание на строчку (IsDedicated)

Перейти к сообщению


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 2

#1 OFFLINE   Dispite

Dispite

    Ефрейтор

  • Пользователи
  • 94 сообщений
  • Откуда:Не помню

Отправлено 19 October 2020 - 00:45

Здравствуйте! Возникла проблема с выполнением кода в init.sqf. В init прописал:

fnc_startSpawn = {
sleep 0.001;
target = StartTarget;
Camera_Spawn = "camera" camcreate [2136.21,1886.85,2.23928];
Camera_Spawn cameraeffect ["internal", "back"];
showCinemaBorder false;
Camera_Spawn camCommit 0;
Camera_Spawn camsetTarget target;
Camera_Spawn camCommit 0;
sleep 0.001;
disableSerialization;
CreateDialog "spawnPlayer";
_index = lbAdd [1500, "Стрельбище"];
_index = lbAdd [1500, "Гавань"];
_index = lbAdd [1500, "Аэропорт"];
};
 
call fnc_startSpawn;

Если клиент подключается до начала миссии всё работает нормально, но если подключение осуществляется во время игры, то на клиенте код выполняется до создания камеры (CamCreate). 

Сообщение отредактировал Dispite: 19 October 2020 - 00:46

  • 0

#2 OFFLINE   Dispite

Dispite

    Ефрейтор

  • Пользователи
  • 94 сообщений
  • Откуда:Не помню

Отправлено 19 October 2020 - 04:28

Решил проблему, выставив задержку исполнения до окончания загрузки клиента. Но появилась другая проблема: имеется диалог, через который можно повреждать части техники и редактировать её топливо. Нашёл на форуме тему про локальность и использовал предложенный скрипт. 
На клиенте всё исполняется без ошибок, а вот на хосте не работает.
 

fnc_editFuelAll = {
_veh = _this select 0;
_fuel = _this select 1;
if (local _veh) then {
_veh setFuel _fuel;
} else {
PVsetfuel = _this;
if (isDedicated) then{
(owner _veh) publicVariableClient "PVsetFuel";
} else {
publicVariableServer "PVsetFuel";
};
};
};
"PVsetFuel" addPublicVariableEventhandler {
(_this select 1) call fnc_editFuelAll;
};


Если я пытаюсь изменить топливо в транспорте, в котором сидит клиент , ничего не происходит. При этом открытие диалогов тоже барахлит только на хосте 

  • 0

#3 OFFLINE   Dispite

Dispite

    Ефрейтор

  • Пользователи
  • 94 сообщений
  • Откуда:Не помню

Отправлено 19 October 2020 - 04:39   Лучший Ответ

Нашёл причину, извините за идиотизм. Не обратил внимание на строчку (IsDedicated)


  • 0




Яндекс.Метрика