Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • 0
Sign in to follow this  
ka3ant1p

передача глобальных переменных с сервера - клиенту и обратно

Подскажите как передавать из сервера клиенту глоабльную переменную и потом изменять ее значение на клиенте и передавать огбратно на сервер?
Суть вот в чем, спауню на сервере объекты в цикле for "_i" from 1 to 100 по рандомным позициям.
Мне нужно что бы на каждую устанавливалась глобальная переменная которую будут получать игроки. При определнных действиях игрока эта глобальная переменная должна меняться. 
на ум приходит только _object setVariable ["active", true]; только вот как ее клиенту передать?
Пробовал и так:
_object setVariable ["active", true];
publicVariable "active";

 

 
и так:
active = true;
publicVariable "active";

 

 
на клиенте когда нахожу такой объект через nearObjects переменную по средством _active = _x getvariable "active"; не выходит =(((
 
Что бы было проще накидаю код:
server_functions:
spawn_objects = {
private ["_qty ","_i","_position ","_object "];
_qty = (round(random 100)) max 50;
for "_i" from 1 to _qty do {
_position = [getMarkerPos "center",0,5500,10,0,2000,0] call BIS_fnc_findSafePos;
_object = "my_object" createvehicle _position;
if (random 1 < 0.2) then {
_object setvariable ["active", true;] \\тут нужно установить переменную и предать клиенту
publicvariable "active";
};
};
};

 

 
вызывается это дело в server_monitor []spawn spawn_objects
 
у игрока скрипт запускается из инита так [player]execVM "activate.sqf";
 
activate.sqf
while {true} do {
_isObjects = (position player) nearObjects ["my_object", 150];
{
_active = _x getvariable "active";
if (isnil "_active") then {_active = false;};
if (_active) then {[_x]execVM "script.sqf"; _x setariable ["active", false];}; \\вот тут нужно сделать фолс и передать на сервер
}foreach _isObjects;
};

 

 

Share this post


Link to post
Share on other sites

2 answers to this question

Recommended Posts

  • 0

 

Подскажите как передавать из сервера клиенту глоабльную переменную и потом изменять ее значение на клиенте и передавать огбратно на сервер?
Суть вот в чем, спауню на сервере объекты в цикле for "_i" from 1 to 100 по рандомным позициям.
Мне нужно что бы на каждую устанавливалась глобальная переменная которую будут получать игроки. При определнных действиях игрока эта глобальная переменная должна меняться. 
на ум приходит только _object setVariable ["active", true]; только вот как ее клиенту передать?
Пробовал и так:

_object setVariable ["active", true];
publicVariable "active";

 

 
и так:

active = true;
publicVariable "active";

 

 
на клиенте когда нахожу такой объект через nearObjects переменную по средством _active = _x getvariable "active"; не выходит =(((
 
Что бы было проще накидаю код:
server_functions:

spawn_objects = {
private ["_qty ","_i","_position ","_object "];
_qty = (round(random 100)) max 50;
for "_i" from 1 to _qty do {
_position = [getMarkerPos "center",0,5500,10,0,2000,0] call BIS_fnc_findSafePos;
_object = "my_object" createvehicle _position;
if (random 1 < 0.2) then {
_object setvariable ["active", true;] \\тут нужно установить переменную и предать клиенту
publicvariable "active";
};
};
};

 

 
вызывается это дело в server_monitor []spawn spawn_objects
 
у игрока скрипт запускается из инита так [player]execVM "activate.sqf";
 
activate.sqf

while {true} do {
_isObjects = (position player) nearObjects ["my_object", 150];
{
_active = _x getvariable "active";
if (isnil "_active") then {_active = false;};
if (_active) then {[_x]execVM "script.sqf"; _x setariable ["active", false];}; \\вот тут нужно сделать фолс и передать на сервер
}foreach _isObjects;
};

 

если не секрет, это ты хочешь автоматизировать донат? могу чтото подсказать gr_frost скайп

Edited by Frost (see edit history)

Share this post


Link to post
Share on other sites



  • 0

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

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site, you automaticly agree to our Guidelines and Privacy Policy.
We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.