Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Need help?

    Create a topic in the appropriate section
    Don't write everything in the chat!
  • Take a look at the marketplace

    There you can buy
    everything related to game servers
  • Don't want a ban?

    Please read our rules
    Don't disturb the order!
  • Sell or buy?

    Use services of the guarantor
    We will make your deal safe
  • 0
stspartak

Групповой Менеджер (Right Klick)

Суть проблемы - в инвентаре не работает правый клик по радио.

Ставил по этой инструкции DayZ Group Management.

Так же ставил и на голый серв, там все отлично работает.

Единственное отличие которое нашел между серверами это пунк 7 из мануала выше.

На голом серваке нет RscTitles class в description.ext, а на другом есть.

Часть кода из моего description.ext

 

 

		{
			idc = 101;
			x = 0.05;
			y = 0.029412;
			w = 0.9;
			h = 0.04902;
			text = "";
			sizeEx = 0.05;
			colorText[] = {0.543,0.5742,0.4102,1.0};
		};		
	};
};

// DayZ Watermark
#include "dzgm\defines.hpp"
class RscTitles {
#include "dzgm\icons.hpp"
class wm_disp {
idd = -1;
onLoad = "uiNamespace setVariable ['wm_disp', _this select 0]";
fadein = 0;
fadeout = 0;
duration = 10e10;
controlsBackground[] = {};
objects[] = {};
class controls {
class wm_text2 {
idc = 1;
x = safeZoneX+0.027;//safeZoneW*0.01;
y = safeZoneY+safeZoneH-0.16;
w = 1.151*safeZoneH;
h = 0.057*safeZoneH;
shadow = 2;
class Attributes
{
font = "EtelkaNarrowMediumPro";
color = "#24FFFFFF";
align = "left"; // put "center" here if you want some background
valign = "middle";
shadow = 2;
};
colorBackground[] = { 1, 0.3, 0, 0 };  // uncomment and increase 4th number to have a background
font = "EtelkaNarrowMediumPro";
size = 0.06*safeZoneH;
type = 13;
style = 0;
text="";
};
};
};
};

 

 

 

Может из-за этого не работать правый клик по радио в инвентаре?

Share this post


Link to post
Share on other sites

5 answers to this question

Recommended Posts

  • 0

Вроде разобрался...

В скрипте DEPLOYABLE BIKE 2.8.0 используется кастомный  ui_selectslot.sqf с немного измененным кодом, код выделен комментариями

 

 

//### BEGIN MODIFIED CODE: extra click actions
    {
        private["_classname","_text","_execute","_condition"];
        _classname   = _x select 0;
        _text        = _x select 1;
        _execute     = _x select 2;
        _condition   = _x select 3;
        // if the clicked item matches, then assign the script call and display text
        if(_item == _classname && (call compile _condition)) then {
            _menu = _parent displayCtrl (1600 + _numActions);
            _menu ctrlShow true;
            _height = _height + (0.025 * safezoneH);
            uiNamespace setVariable ['uiControl', _control];
            _menu ctrlSetText _text;
            _menu ctrlSetEventHandler ["ButtonClick",_execute];
            _numActions = _numActions + 1;
        };
    } forEach DZE_CLICK_ACTIONS;
    //### END MODIFIED CODE: extra click actions 

 

 

В папке overwrites\click_actions\ удалил ui_selectslot.sqf, предварительно вырезав из него код выше, и вставил его в кастомный ui_selectslot.sqf из скрипта DayZ Group Management.

В overwrites\click_actions\init.sqf заменил это

player_selectSlot = compile preprocessFileLineNumbers "overwrites\click_actions\ui_selectSlot.sqf";

на это

player_selectSlot = compile preprocessFileLineNumbers "custom\ui_selectSlot.sqf"; 

 

Получилось так custom\ui_selectslot.sqf

 

 

private ["_control","_button","_parent","_group","_pos","_item","_conf","_name","_cfgActions","_numActions","_height","_menu","_config","_type","_script","_outputOriented","_compile","_array","_outputClass","_outputType"];
disableSerialization;
_control = 	_this select 0;
_button =	_this select 1;
_parent = 	findDisplay 106;

//if ((time - dayzClickTime) < 1) exitWith {};
if (!DZE_SelfTransfuse && ((gearSlotData _control) == "ItemBloodBag")) exitWith {};
if (_button == 1) then {
	//dayzClickTime = time;
	_group = _parent displayCtrl 6902;
	
	_pos = 		ctrlPosition _group;
	_pos set [0,((_this select 2) + 0.48)];
	_pos set [1,((_this select 3) + 0.07)];
	
	_item = gearSlotData _control;
	
	_conf = configFile >> "cfgMagazines" >> _item;
	if (!isClass _conf) then {
		_conf = configFile >> "cfgWeapons" >> _item;
	};
	_name = getText(_conf >> "displayName");
	
	_cfgActions = _conf >> "ItemActions";
	_numActions = (count _cfgActions);
	_height = 0;
	
	//Populate Menu
	for "_i" from 0 to (_numActions - 1) do 
	{
		_menu = 	_parent displayCtrl (1600 + _i);
		_menu ctrlShow true;
		_config = 	(_cfgActions select _i);
		_type = 	getText	(_config >> "text");
		_script = 	getText	(_config >> "script");
		_outputOriented = 	getNumber	(_config >> "outputOriented") == 1;
		_height = _height + (0.025 * safezoneH);
		_compile =  format["_id = '%2' %1;",_script,_item];
		uiNamespace setVariable ['uiControl', _control];
		if (_outputOriented) then {
			/*
				This flag means that the action is output oriented
				the output class will then be transferred to the script
				&& the type used for the name
			*/			
			_array = 	getArray	(_config >> "output");
			_outputClass = _array select 0;
			_outputType = _array select 1;
			_name = getText (configFile >> _outputType >> _outputClass >> "displayName");
			_compile =  format["_id = ['%2',%3] %1;",_script,_item,_array];
		};
		
		_menu ctrlSetText format[_type,_name];
		_menu ctrlSetEventHandler ["ButtonClick",_compile];
	};
	
	//### BEGIN MODIFIED CODE: extra click actions
    {
        private["_classname","_text","_execute","_condition"];
        _classname   = _x select 0;
        _text        = _x select 1;
        _execute     = _x select 2;
        _condition   = _x select 3;
        // if the clicked item matches, then assign the script call and display text
        if(_item == _classname && (call compile _condition)) then {
            _menu = _parent displayCtrl (1600 + _numActions);
            _menu ctrlShow true;
            _height = _height + (0.025 * safezoneH);
            uiNamespace setVariable ['uiControl', _control];
            _menu ctrlSetText _text;
            _menu ctrlSetEventHandler ["ButtonClick",_execute];
            _numActions = _numActions + 1;
        };
    } forEach DZE_CLICK_ACTIONS;
    //### END MODIFIED CODE: extra click actions
	
	//### DayZ Group Management
	_erc_cfgActions = (missionConfigFile >> "ExtraRc" >> _item);
	_erc_numActions = (count _erc_cfgActions);
	if (isClass _erc_cfgActions) then {
		for "_j" from 0 to (_erc_numActions - 1) do
		{
		_menu =  _parent displayCtrl (1600 + _j + _numActions);
		_menu ctrlShow true;
		_config =  (_erc_cfgActions select _j);
		_text =  getText (_config >> "text");
		_script =  getText (_config >> "script");
		_height = _height + (0.025 * safezoneH);
		uiNamespace setVariable ['uiControl', _control];
		_menu ctrlSetText _text;
		_menu ctrlSetEventHandler ["ButtonClick",_script];
		};
	};
	//### END DayZ Group Management
	
	_pos set [3,_height];
	//hint format["Obj: %1 \nHeight: %2\nPos: %3",_item,_height,_grpPos];		

	_group ctrlShow true;
	ctrlSetFocus _group;
	_group ctrlSetPosition _pos;
	_group ctrlCommit 0;
}; 

 

 

 

 

Сохранил, запустил, проверил, все работате!

Думаю все правильно сделал. Если что поправьте меня.

Edited by stspartak (see edit history)

Share this post


Link to post
Share on other sites







  • 0

Вы ставили кастомный ui_selectslot.sqf ?  Он нужен для работы ПКМ

Конечно!

Share this post


Link to post
Share on other sites
  • 0

На голом серваке нет RscTitles class в description.ext, а на другом есть.

Сейчас попробовал на голый серв добавить Водяной знак в котором есть  RscTitles class. Правый клик работает, значит проблема не в этом.

Есть у кого какие соображения еще?

 

Мой init.sqf для полноты картины

 

 

/*	
	For DayZ Epoch
	Addons Credits: Jetski Yanahui by Kol9yN, Zakat, Gerasimow9, YuraPetrov, zGuba, A.Karagod, IceBreakr, Sahbazz
*/
startLoadingScreen ["","RscDisplayLoadCustom"];
cutText ["","BLACK OUT"];
enableSaving [false, false];

//REALLY IMPORTANT VALUES
dayZ_instance =	11;					//The instance
dayzHiveRequest = [];
initialized = false;
dayz_previousID = 0;
server_name = "Servername";

//disable greeting menu 
player setVariable ["BIS_noCoreConversations", true];
//disable radio messages to be heard and shown in the left lower corner of the screen
enableRadio true;
// May prevent "how are you civillian?" messages from NPC
enableSentences false;

// DayZ Epoch config
spawnShoremode = 0; // Default = 1 (on shore)
spawnArea= 1500; // Default = 1500
DZE_StaticConstructionCount = 1; 
dayz_spawnselection = 1; // DayZ Spawnselection / 1 = enabled // 0 = disabled, No current spawn limits.
MaxVehicleLimit = 120; // Default = 50
MaxDynamicDebris = 500; // Default = 100
dayz_MapArea = 14000; // Default = 10000
dayz_maxLocalZombies = 5; // Default = 30 

dayz_paraSpawn = false;

dayz_minpos = -1; 
dayz_maxpos = 16000;

dayz_sellDistance_vehicle = 10;
dayz_sellDistance_boat = 30;
dayz_sellDistance_air = 40;

dayz_maxAnimals = 8; // Default: 8
dayz_tameDogs = true;
DynamicVehicleDamageLow = 0; // Default: 0
DynamicVehicleDamageHigh = 100; // Default: 100

DZE_BuildOnRoads = false; // Default: False

/*
Revamped instructions by Ree
select 0 =  Locked vehicles Will not drop Loot ("Default: True") 
select 1 = The Amount of Loot Piles around destroyed vehicles ("Default: 2") out of Max amount ___?  "Max Safe Amount" 
select 2 =  Max additional loot piles On top of select 1 loot Piles  ("Default: 5")  out of Max amount ___?  "Max Safe Amount" 
select 3 =  Radius around crash site to drop loot ("Default: 5")m out of Max amount ___?  "Max Safe Amount" 
select 4 = Chance of gear being destroyed (Between 0-1, Ex: 0 = Never lost, 0.5 = Half lost, 1 = All lost)
Default: DZE_crashLootConfig = [true,2,5,5,0];
*/
DZE_crashLootConfig = [true,2,5,5,0]; 

EpochEvents = [["any","any","any","any",30,"crash_spawner"],["any","any","any","any",0,"crash_spawner"],["any","any","any","any",15,"supply_drop"]];
dayz_fullMoonNights = true;

//Load in compiled functions
//call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\variables.sqf";
call compile preprocessFileLineNumbers "custom\variables.sqf";				//Initilize the Variables (IMPORTANT: Must happen very early)
progressLoadingScreen 0.1;
call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\publicEH.sqf";				//Initilize the publicVariable event handlers
progressLoadingScreen 0.2;
call compile preprocessFileLineNumbers "\z\addons\dayz_code\medical\setup_functions_med.sqf";	//Functions used by CLIENT for medical
progressLoadingScreen 0.4;
call compile preprocessFileLineNumbers "custom\compiles.sqf";				//Compile regular functions
call compile preprocessFileLineNumbers "custom\snap_build\compiles.sqf";
call compile preprocessFileLineNumbers "addons\bike\init.sqf";				//DEPLOYABLE BIKE 2.8
progressLoadingScreen 0.5;
fnc_usec_selfActions = compile preprocessFileLineNumbers "scripts\fn_selfActions.sqf";
call compile preprocessFileLineNumbers "logistic\init.sqf";					//LOGISTIC - TOW / LIFT
call compile preprocessFileLineNumbers "server_traders.sqf";				//Compile trader configs
progressLoadingScreen 1.0;

"filmic" setToneMappingParams [0.153, 0.357, 0.231, 0.1573, 0.011, 3.750, 6, 4]; setToneMapping "Filmic";

if (isServer) then {
	call compile preprocessFileLineNumbers "\z\addons\dayz_server\missions\DayZ_Epoch_11.Chernarus\dynamic_vehicle.sqf";
	//Compile vehicle configs
	
	// Add trader citys
	_nil = [] execVM "\z\addons\dayz_server\missions\DayZ_Epoch_11.Chernarus\mission.sqf";
	_serverMonitor = 	[] execVM "\z\addons\dayz_code\system\server_monitor.sqf";
};

if (!isDedicated) then {
	[] execVM "custom\Server_WelcomeCredits.sqf";
		
	//Conduct map operations
	0 fadeSound 0;
	waitUntil {!isNil "dayz_loadScreenMsg"};
	dayz_loadScreenMsg = (localize "STR_AUTHENTICATING");
	
	// Стартовый лут
	[] execVM "custom\start_inventory.sqf";
	
	//Run the player monitor
	_id = player addEventHandler ["Respawn", {_id = [] spawn player_death;}];
	_playerMonitor =     [] execVM "dayz_code\system\player_monitor.sqf";
	execVM "dzgm\init.sqf";
	
	//anti Hack
	//[] execVM "\z\addons\dayz_code\system\antihack.sqf";

	//Lights
	//[false,12] execVM "\z\addons\dayz_code\compile\local_lights_init.sqf";
	
	execVM "service_point\service_point.sqf";
	
};

//#include "\z\addons\dayz_code\system\REsec.sqf"

//Start Dynamic Weather
execVM "\z\addons\dayz_code\external\DynamicWeatherEffects.sqf";

#include "\z\addons\dayz_code\system\BIS_Effects\init.sqf"

execVM "custom\GG_MapMarker.sqf";

[] execVM "custom\infistar_safezone.sqf";

//DayZ Watermark
if (!isNil "server_name") then {
	[] spawn {
		waitUntil {(!isNull Player) and (alive Player) and (player == player)};
		waituntil {!(isNull (findDisplay 46))};
		5 cutRsc ["wm_disp","PLAIN"];
	((uiNamespace getVariable "wm_disp") displayCtrl 1) ctrlSetText server_name;
			};
};

//preview trader loot
execVM "custom\preview.sqf";

//Питье воды из водовемов и колодцев. Наполнение фляг.
[] execVM "custom\drink_water.sqf"; 

 

 

 

Edited by stspartak (see edit history)

Share this post


Link to post
Share on other sites
  • 0

Нашел из-за чего не работает правый клик. Из-за этого скрипта DEPLOYABLE BIKE 2.8.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

×
×
  • 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.