Added Mod Checker
This commit is contained in:
parent
f88b2f3e63
commit
ee62922df0
@ -810,6 +810,7 @@ allowedIDDs[] =
|
||||
5501,5502,5503,5504,5505,5506,5507, // BRAma Cookbook
|
||||
-1339,-1340, // custom infiSTAR dialogs (some editor & a private chat menu)
|
||||
86000, // xsSpawn above the last number 46
|
||||
999999, //modChecker
|
||||
|
||||
/* main idd - never delete it */
|
||||
46
|
||||
|
Binary file not shown.
Binary file not shown.
@ -0,0 +1,35 @@
|
||||
/*
|
||||
onLoad.sqf
|
||||
|
||||
Copyright 2016 Jan Babor
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
*/
|
||||
params["_display","_slide","_idc"];
|
||||
|
||||
_pW = 0.025;
|
||||
_pH = 0.04;
|
||||
_leftCol = 0;
|
||||
_leftColW = 12.8;
|
||||
_rightCol = _leftCol + _leftColW + 2;
|
||||
_rightColW = _leftColW + 3;
|
||||
_margin = 0.2;
|
||||
|
||||
_slideClass = "ExAd_ModChecker";
|
||||
|
||||
[_display,_slide,([_slideClass,"backButton"] call ExAd_fnc_getNextIDC),[27 * _pW, 17 * _pH, 6 * _pW, 1 * _pH],'["extraApps", 1] call ExileClient_gui_xm8_slide;',"Go Back"] call ExAd_fnc_createButton;
|
||||
|
||||
_newParent = [_display,_slide,([_slideClass,"ctrlGrp"] call ExAd_fnc_getNextIDC),[_leftCol * _pW, 1 * _pH, (_leftColW + _rightCol + 6) * _pW, 16 * _pH]] call ExAd_fnc_createCtrlGrp;
|
||||
[_display,_newParent,([_slideClass,"strTxt"] call ExAd_fnc_getNextIDC),[_leftCol * _pW, 1.5 * _pH, (_leftColW + _rightCol + 5) * _pW, 15 * _pH],"","PuristaMedium",1,"#ffffff","right",1] call ExAd_fnc_createStructuredText;
|
||||
|
||||
true
|
@ -0,0 +1,54 @@
|
||||
// **********************************************************************************************************
|
||||
// * This project is licensed under Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)
|
||||
// * https://creativecommons.org/licenses/by-sa/4.0/
|
||||
// **********************************************************************************************************
|
||||
// @file Name: xm8modChecker.sqf
|
||||
// @file Author: jmayr2000 (from exilemod.com)
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// DO NOT TOUCH UNDER THIS LINE IF DON'T KNOW WHAT ARE YOU DOING
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
private["_display","_message","_strTxt","_pos"];
|
||||
|
||||
try
|
||||
{
|
||||
_message = preprocessFileLineNumbers "ExAdClient\XM8\Apps\ModChecker\xm8modChecker.sqf";
|
||||
_message = _message select [(_message find "ExAdClient") + (count "ExAdClient\XM8\Apps\ModChecker\xm8modChecker.sqf") + 1];
|
||||
|
||||
if(count _message == 0)exitWith{
|
||||
throw "No server info provided";
|
||||
};
|
||||
|
||||
disableSerialization;
|
||||
[
|
||||
"",
|
||||
0,
|
||||
0.2,
|
||||
10,
|
||||
0,
|
||||
0,
|
||||
8
|
||||
] spawn BIS_fnc_dynamicText;
|
||||
|
||||
#include "..\..\..\..\addons\modChecker\displayConfig.hpp"
|
||||
|
||||
_display = uiNameSpace getVariable ["RscExileXM8", displayNull];
|
||||
if(isNull _display)exitWith{
|
||||
throw "XM8 not loaded!";
|
||||
};
|
||||
|
||||
_strTxt = [_display,"ExAd_ModChecker","strTxt"] call ExAd_fnc_getAppCtrl;
|
||||
_strTxt ctrlSetStructuredText parseText format[_message];
|
||||
|
||||
_pos = ctrlPosition _strTxt;
|
||||
_strTxt ctrlSetPosition [_pos select 0, _pos select 1, _pos select 2, ctrlTextHeight _strTxt];
|
||||
_strTxt ctrlcommit 0;
|
||||
([_display,"ExAd_ModChecker","strTxt"] call ExAd_fnc_getAppCtrl) ctrlEnable true;
|
||||
}
|
||||
catch
|
||||
{
|
||||
["ErrorTitleAndText", ["ExAd - Mod Checker", _exception]] call ExileClient_gui_toaster_addTemplateToast;
|
||||
["extraApps", 1] call ExileClient_gui_xm8_slide
|
||||
}
|
||||
|
@ -0,0 +1,20 @@
|
||||
// **********************************************************************************************************
|
||||
// * This project is licensed under Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)
|
||||
// * https://creativecommons.org/licenses/by-sa/4.0/
|
||||
// **********************************************************************************************************
|
||||
// @file Name: xm8modChecker.sqf
|
||||
// @file Author: jmayr2000 and NRZ7 (www.standarol.com)
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// DO NOT TOUCH UNDER THIS LINE IF DON'T KNOW WHAT ARE YOU DOING
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
errorLevel = 0; // Do not touch. Set errors to 0 before run modChecker.sqf
|
||||
|
||||
#include "..\..\..\..\addons\modChecker\modConfig.hpp"
|
||||
|
||||
if (errorLevel > 0) then {
|
||||
warnMessage = "<t color='#ff0000' size='1.3' shadow='1' shadowColor='#000000' align='center'>Some is WRONG with your MODS</t><br/>"; // General error message
|
||||
} else {
|
||||
warnMessage = "<t color='#2fd402' size='1.3' shadow='1' shadowColor='#000000' align='center'>All MODS are FINE</t><br/>"; // All mods are loaded message
|
||||
};
|
53
mpmissions/Exile.Altis/addons/modChecker/displayConfig.hpp
Normal file
53
mpmissions/Exile.Altis/addons/modChecker/displayConfig.hpp
Normal file
@ -0,0 +1,53 @@
|
||||
// **********************************************************************************************************
|
||||
// * This project is licensed under Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)
|
||||
// * https://creativecommons.org/licenses/by-sa/4.0/
|
||||
// **********************************************************************************************************
|
||||
// @file Name: modmodCheckerDisplay.sqf
|
||||
// @file Author: NRZ7 (www.standarol.com) and Repentz
|
||||
// @description: This script is a UI launched by modmodChecker.sqf. If any mod is not loaded, pop's a screen with detailed information and clickable community links (modmodCheckerDisplay.sqf).
|
||||
// You can configure custom messages and links to your community guides.
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// DISPLAY HEADER
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
_message = "";
|
||||
_message = _message + "<t align='center' size='2' shadow='0'></t><br />";
|
||||
_message = _message + "<t align='center' size='2' shadow='0'>Welcome to Mod modChecker</t><br />";
|
||||
_message = _message + "<t align='center'>______________________________________________________________________________________<br /><br />";
|
||||
_message = _message + warnMessage;
|
||||
_message = _message + "<t align='center'><br />";
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// MOD CONFIG PART HERE
|
||||
// Remember to add-delete-modify the same mod variable names used in modmodCheckerConfig.hpp
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//_message = _message + modCheckExile;
|
||||
//_message = _message + modCheckEsseker;
|
||||
//_message = _message + modCheckRyan;
|
||||
//_message = _message + modCheckWeapons;
|
||||
//_message = _message + modCheckVehicles;
|
||||
//_message = _message + modCheckUnits;
|
||||
//_message = _message + modCheckTerrain;
|
||||
_message = _message + modCheckCBA;
|
||||
_message = _message + modCheckEN;
|
||||
_message = _message + modCheckAR;
|
||||
_message = _message + modCheckAUR;
|
||||
_message = _message + modCheckBVFL;
|
||||
_message = _message + modCheckNVG;
|
||||
_message = _message + modCheckAG;
|
||||
//_message = message + modCheckYOURMOD;
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// Custom message with community links - MODIFY HERE
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
_message = _message + "<br />";
|
||||
_message = _message + "If you get any error, please, read the following links<br /><br />";
|
||||
_message = _message + "Download the mods from <a href= 'http://steamcommunity.com/sharedfiles/filedetails/?id=1319978763' color='#ff9900'>Steam Workshop</a> Only click on Subscribe!<br />";
|
||||
_message = _message + "The mod list is only viewable by friends. Make sure you've befriended <a href= 'http://steamcommunity.com/id/zepheris96/' color='#ff9900'>Zepheris96</a><br /><br />";
|
||||
// _message = message + "Easy add more lines like this";
|
||||
// _message = _message + "You can easy add <a href= 'http://www.example.com' color='#ff9900'>ANY LINK!</a> And unlimited number of lines.<br />";
|
@ -0,0 +1,71 @@
|
||||
// **********************************************************************************************************
|
||||
// * This project is licensed under Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)
|
||||
// * https://creativecommons.org/licenses/by-sa/4.0/
|
||||
// **********************************************************************************************************
|
||||
// @file Name: modCheckerDisplay.sqf
|
||||
// @file Author: NRZ7 (www.standarol.com)
|
||||
// @description: This script is a UI launched by modchecker.sqf. If any mod is not loaded, pop's a screen with detailed information and clickable community links (modCheckerDisplay.sqf).
|
||||
// You can configure custom messages and links to your community guides.
|
||||
|
||||
/*
|
||||
Some code is from
|
||||
File: rules.sqf
|
||||
For exile edited by Repentz
|
||||
Link: http://www.exilemod.com/topic/10375-advanced-server-rules-for-xm8/
|
||||
*/
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// DO NOT TOUCH UNDER THIS LINE IF DON'T KNOW WHAT ARE YOU DOING
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
if ((firstCheck == 0) && (errorLevel > 0)) then { player allowdamage false }; // God Mode ON to avoid die and close dialog only if ModCheckerDisplay is auto executed.
|
||||
|
||||
disableSerialization;
|
||||
[
|
||||
"",
|
||||
0,
|
||||
0.2,
|
||||
10,
|
||||
0,
|
||||
0,
|
||||
8
|
||||
] spawn BIS_fnc_dynamicText;
|
||||
|
||||
createDialog "RscDisplayWelcome";
|
||||
|
||||
_display = findDisplay 999999; // 999999 needed to whitelist in infistar if you are using this.
|
||||
_text1 = _display displayCtrl 1100;
|
||||
_buttonSpoiler = _display displayctrl 2400;
|
||||
_textSpoiler = _display displayctrl 1101;
|
||||
_text2 = _display displayCtrl 1102;
|
||||
|
||||
#include "..\displayConfig.hpp"
|
||||
|
||||
//Fill only the first text
|
||||
_text1 ctrlSetStructuredText (parseText _message);
|
||||
|
||||
//Resize StructuredText component to display the scrollbar if needed
|
||||
_positionText1 = ctrlPosition _text1;
|
||||
_yText1 = _positionText1 select 1;
|
||||
_hText1 = ctrlTextHeight _text1;
|
||||
_text1 ctrlSetPosition [_positionText1 select 0, _yText1, _positionText1 select 2, _hText1];
|
||||
_text1 ctrlcommit 0;
|
||||
//Hide second text, spoiler text and button
|
||||
_buttonSpoiler ctrlSetFade 1;
|
||||
_buttonSpoiler ctrlCommit 0;
|
||||
_buttonSpoiler ctrlEnable false;
|
||||
_textSpoiler ctrlSetFade 1;
|
||||
_textSpoiler ctrlCommit 0;
|
||||
_text2 ctrlSetFade 1;
|
||||
_text2 ctrlCommit 0;
|
||||
|
||||
//Waith until dialog is closed and kick the player if a required mod is not loaded.
|
||||
waitUntil {!dialog };
|
||||
if (errorLevel > 90) then // non requiered addons have level 1. Requiered addons have error level 99.
|
||||
{
|
||||
endMission "LOSER"
|
||||
}
|
||||
else
|
||||
{
|
||||
firstCheck = 1; player allowDamage true // Disables God Mode protection and set mods as checked.
|
||||
};
|
@ -0,0 +1,33 @@
|
||||
// **********************************************************************************************************
|
||||
// * This project is licensed under Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)
|
||||
// * https://creativecommons.org/licenses/by-sa/4.0/
|
||||
// **********************************************************************************************************
|
||||
// @file Name: modChecker.sqf
|
||||
// @file Author: NRZ7 (www.standarol.com)
|
||||
// @description: This script check the mods loaded by the client. If any mod is not loaded, pop's a screen with detailed information and clickable community links (modCheckerDisplay.sqf).
|
||||
// You can configure requiered addons (error 99) or optional addons (error 1). If any required mod fails, the client load "You Loose" screen after close the dialog.
|
||||
//
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// DO NOT TOUCH UNDER THIS LINE IF DON'T KNOW WHAT ARE YOU DOING
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
errorLevel = 0;
|
||||
|
||||
#include "..\modConfig.hpp"
|
||||
|
||||
if (errorLevel > 0) then {
|
||||
warnMessage = "<t color='#ff0000' size='1.3' shadow='1' shadowColor='#000000' align='center'>Some is WRONG with your MODS</t><br/>";
|
||||
} else {
|
||||
warnMessage = "<t color='#2fd402' size='1.3' shadow='1' shadowColor='#000000' align='center'>All MODS are FINE</t><br/>";
|
||||
};
|
||||
|
||||
if ((errorLevel == 0) && (firstCheck == 0)) then {
|
||||
firstCheck = 1 // Do nothing
|
||||
} else {
|
||||
execVM "addons\modChecker\init\modCheckerDisplay.sqf"
|
||||
};
|
||||
|
||||
// execVM "addons\modChecker\init\modCheckerDisplay.sqf"
|
||||
|
||||
|
158
mpmissions/Exile.Altis/addons/modChecker/modConfig.hpp
Normal file
158
mpmissions/Exile.Altis/addons/modChecker/modConfig.hpp
Normal file
@ -0,0 +1,158 @@
|
||||
// **********************************************************************************************************
|
||||
// * This project is licensed under Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)
|
||||
// * https://creativecommons.org/licenses/by-sa/4.0/
|
||||
// **********************************************************************************************************
|
||||
// @file Name: modmodChecker.sqf
|
||||
// @file Author: NRZ7 (www.standarol.com)
|
||||
// @description: This script modCheck the mods loaded by the client. If any mod is not loaded, pop's a screen with detailed information and clickable community links (modmodCheckerDisplay.sqf).
|
||||
// You can configure requiered addons (error 99) or optional addons (error 1). If any required mod fails, the client load "You Loose" screen after close the dialog.
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// Exile_Client Example - READ TO UNDERSTAND - DO NOT TOUCH - READ - DO NOT TOUCH - READ - DO NOT TOUCH
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
// Change "Exile_Client" to name of the CfgPatches from desired mod.
|
||||
// You can find under editor. ("Tools" - "Config Viewer" - "Configfile" - "CfgPatches")
|
||||
if (isClass(configFile >> "CfgPatches" >> "Exile_Client")) then
|
||||
{
|
||||
// Change modCheckExile to your desired and unique mod variable name
|
||||
// Change "Exile Mod is" to your mod string. For advanced users, can change size, color, allign, etc.
|
||||
modCheckExile = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>Exile Mod is</t><t color='#2fd402' size='0.9' shadow='1' shadowColor='#000000' align='center'> found!</t><br/>";
|
||||
} else {
|
||||
// Change "Exile Mod is" to your mod string
|
||||
modCheckExile = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>Exile Mod is</t><t color='#ff0000' size='0.9' shadow='1' shadowColor='#000000' align='center'> NOT FOUND!</t><br/>";
|
||||
// Set 99 to Required, Set 1 to optional
|
||||
errorLevel = errorLevel + 99
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// START OF MODS CONFIG - EDIT OR DELETE UNDER THIS LINE
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
// Esseker Example - DELETE OR MODIFY
|
||||
/*if (isClass(configFile >> "CfgPatches" >> "Esseker")) then
|
||||
{
|
||||
modCheckEsseker = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>Esseker Map is</t><t color='#2fd402' size='0.9' shadow='1' shadowColor='#000000' align='center'> found!</t><br/>";
|
||||
} else {
|
||||
modCheckEsseker = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>Esseker Map is</t><t color='#ff0000' size='0.9' shadow='1' shadowColor='#000000' align='center'> NOT FOUND!</t><br/>";
|
||||
errorLevel = errorLevel + 99
|
||||
};
|
||||
|
||||
// Zombis & Demonds Example - DELETE OR MODIFY
|
||||
if (isClass(configFile >> "CfgPatches" >> "Ryanzombies")) then
|
||||
{
|
||||
modCheckRyan = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>Zombies and Demonds is</t><t color='#2fd402' size='0.9' shadow='1' shadowColor='#000000' align='center'> found!</t><br/>";
|
||||
} else {
|
||||
modCheckRyan = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>Zombies and Demonds is</t><t color='#ff0000' size='0.9' shadow='1' shadowColor='#000000' align='center'> NOT FOUND!</t><br/>";
|
||||
errorLevel = errorLevel + 99
|
||||
};
|
||||
|
||||
// CUP_Weapons Example - DELETE OR MODIFY
|
||||
if (isClass(configFile >> "CfgPatches" >> "CUP_Weapons_WeaponsCore")) then
|
||||
{
|
||||
modCheckWeapons = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>CUP Weapons is</t><t color='#2fd402' size='0.9' shadow='1' shadowColor='#000000' align='center'> found!</t><br/>";
|
||||
} else {
|
||||
modCheckWeapons = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>CUP Weapons is</t><t color='#ff0000' size='0.9' shadow='1' shadowColor='#000000' align='center'> NOT FOUND!</t><br/>";
|
||||
errorLevel = errorLevel + 99
|
||||
};
|
||||
|
||||
// CUP_Vehicles Example - DELETE OR MODIFY
|
||||
if (isClass(configFile >> "CfgPatches" >> "CUP_Vehicles_Core")) then
|
||||
{
|
||||
modCheckVehicles = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>CUP Vehicles is</t><t color='#2fd402' size='0.9' shadow='1' shadowColor='#000000' align='center'> found!</t><br/>";
|
||||
} else {
|
||||
modCheckVehicles = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>CUP Vehicles is</t><t color='#ff0000' size='0.9' shadow='1' shadowColor='#000000' align='center'> NOT FOUND!</t><br/>";
|
||||
errorLevel = errorLevel + 99
|
||||
};
|
||||
|
||||
// CUP_TerrainCore Example - DELETE OR MODIFY
|
||||
if (isClass(configFile >> "CfgPatches" >> "CUP_Worlds")) then
|
||||
{
|
||||
modCheckTerrain = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>CUP Terrain Core is</t><t color='#2fd402' size='0.9' shadow='1' shadowColor='#000000' align='center'> found!</t><br/>";
|
||||
} else {
|
||||
modCheckTerrain = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>CUP Terrain Core is</t><t color='#ff0000' size='0.9' shadow='1' shadowColor='#000000' align='center'> NOT FOUND!</t><br/>";
|
||||
errorLevel = errorLevel + 1
|
||||
};
|
||||
|
||||
// CUP_Units Example - DELETE OR MODIFY
|
||||
if (isClass(configFile >> "CfgPatches" >> "CUP_Creatures_People_Core")) then
|
||||
{
|
||||
modCheckUnits = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>CUP Units is</t><t color='#2fd402' size='0.9' shadow='1' shadowColor='#000000' align='center'> found!</t><br/>";
|
||||
} else {
|
||||
modCheckUnits = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>CUP Units is</t><t color='#ff0000' size='0.9' shadow='1' shadowColor='#000000' align='center'> NOT FOUND!</t><br/>";
|
||||
errorLevel = errorLevel + 99
|
||||
};
|
||||
*/
|
||||
// Community Base Addon Example - DELETE OR MODIFY
|
||||
if (isClass(configFile >> "CfgPatches" >> "CBA_main")) then
|
||||
{
|
||||
modCheckCBA = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>CBA_A3 is</t><t color='#2fd402' size='0.9' shadow='1' shadowColor='#000000' align='center'> found!</t><br/>";
|
||||
} else {
|
||||
modCheckCBA = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>CBA_A3 is</t><t color='#ff0000' size='0.9' shadow='1' shadowColor='#000000' align='center'> NOT FOUND! (Required)</t><br/>";
|
||||
errorLevel = errorLevel + 99
|
||||
};
|
||||
|
||||
//Enhanced Movement
|
||||
if (isClass(configFile >> "CfgPatches" >> "BaBe_core")) then
|
||||
{
|
||||
modCheckEN = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>Enhanced Movement is</t><t color='#2fd402' size='0.9' shadow='1' shadowColor='#000000' align='center'> found!</t><br/>";
|
||||
} else {
|
||||
modCheckEN = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>Enhanced Movement is</t><t color='#ff0000' size='0.9' shadow='1' shadowColor='#000000' align='center'> NOT FOUND! (Not required)</t><br/>";
|
||||
errorLevel = errorLevel + 1
|
||||
};
|
||||
|
||||
//Advanced Rappelling
|
||||
if (isClass(configFile >> "CfgPatches" >> "AR_AdvancedRappelling")) then
|
||||
{
|
||||
modCheckAR = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>Advanced Rappelling is</t><t color='#2fd402' size='0.9' shadow='1' shadowColor='#000000' align='center'> found!</t><br/>";
|
||||
} else {
|
||||
modCheckAR = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>Advanced Rappelling is</t><t color='#ff0000' size='0.9' shadow='1' shadowColor='#000000' align='center'> NOT FOUND! (Not required)</t><br/>";
|
||||
errorLevel = errorLevel + 1
|
||||
};
|
||||
|
||||
//Advanced Urban Rappelling
|
||||
if (isClass(configFile >> "CfgPatches" >> "AUR_AdvancedUrbanRappelling")) then
|
||||
{
|
||||
modCheckAUR = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>Advanced Urban Rappelling is</t><t color='#2fd402' size='0.9' shadow='1' shadowColor='#000000' align='center'> found!</t><br/>";
|
||||
} else {
|
||||
modCheckAUR = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>Advanced Urban Rappelling is</t><t color='#ff0000' size='0.9' shadow='1' shadowColor='#000000' align='center'> NOT FOUND! (Not required)</t><br/>";
|
||||
errorLevel = errorLevel + 1
|
||||
};
|
||||
|
||||
//bv_flashlight
|
||||
if (isClass(configFile >> "CfgPatches" >> "bv_flashlight")) then
|
||||
{
|
||||
modCheckBVFL = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>bv_flashlight is</t><t color='#2fd402' size='0.9' shadow='1' shadowColor='#000000' align='center'> found!</t><br/>";
|
||||
} else {
|
||||
modCheckBVFL = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>bv_flashlight is</t><t color='#ff0000' size='0.9' shadow='1' shadowColor='#000000' align='center'> NOT FOUND! (Required)</t><br/>";
|
||||
errorLevel = errorLevel + 99
|
||||
};
|
||||
|
||||
//lsd_nvg
|
||||
if (isClass(configFile >> "CfgPatches" >> "lsd_nvg")) then
|
||||
{
|
||||
modCheckNVG = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>Full Screen NV is</t><t color='#2fd402' size='0.9' shadow='1' shadowColor='#000000' align='center'> found!</t><br/>";
|
||||
} else {
|
||||
modCheckNVG = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>Full Screen NV is</t><t color='#ff0000' size='0.9' shadow='1' shadowColor='#000000' align='center'> NOT FOUND! (Not required)</t><br/>";
|
||||
errorLevel = errorLevel + 1
|
||||
};
|
||||
|
||||
//adjustable Grenades
|
||||
if (isClass(configFile >> "CfgPatches" >> "vz_a3_adjustableGrenades")) then
|
||||
{
|
||||
modCheckAG = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>Adjustable Grenades is</t><t color='#2fd402' size='0.9' shadow='1' shadowColor='#000000' align='center'> found!</t><br/>";
|
||||
} else {
|
||||
modCheckAG = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>Adjustable Grenades is</t><t color='#ff0000' size='0.9' shadow='1' shadowColor='#000000' align='center'> NOT FOUND! (Not required)</t><br/>";
|
||||
errorLevel = errorLevel + 1
|
||||
};
|
||||
// YOU CAN ADD MORE MODS, ADD FOR EACH SOME CODE LIKE THIS
|
||||
|
||||
/*
|
||||
if (isClass(configFile >> "CfgPatches" >> "YOUR_MOD_CLASSNAME")) then
|
||||
{
|
||||
modCheckYOURMOD = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>YOUR MOD is</t><t color='#2fd402' size='0.9' shadow='1' shadowColor='#000000' align='center'> found!</t><br/>";
|
||||
} else {
|
||||
modCheckYOURMOD = "<t size='0.9' shadow='1' shadowColor='#000000' align='center'>YOUR MOD is</t><t color='#ff0000' size='0.9' shadow='1' shadowColor='#000000' align='center'> NOT FOUND!</t><br/>";
|
||||
errorLevel = errorLevel + 1
|
||||
};
|
||||
*/
|
@ -2246,7 +2246,7 @@ class CfgVehicleTransport
|
||||
|
||||
class CfgXM8
|
||||
{
|
||||
extraApps[] = {"ExAd_VG","ExAd_CHVD","ExAd_Bike","ExAd_SB","BRAmaRecipes"};
|
||||
extraApps[] = {"ExAd_Bike","ExAd_VG","ExAd_CHVD","BRAmaRecipes","ExAd_Bike","ExAd_modChecker"};
|
||||
|
||||
class ExAd_VG
|
||||
{
|
||||
@ -2324,6 +2324,15 @@ class CfgXM8
|
||||
onLoad = "ExAdClient\XM8\Apps\BRAmaRecipes\onLoad.sqf";
|
||||
onOpen = "ExAdClient\XM8\Apps\BRAmaRecipes\onOpen.sqf";
|
||||
};
|
||||
class ExAd_modChecker
|
||||
{
|
||||
title = "Mod Checker";
|
||||
controlID = 99999;
|
||||
logo = "ExadClient\XM8\Apps\modChecker\modChecker.paa";
|
||||
onLoad = "ExAdClient\XM8\Apps\modChecker\onLoad.sqf";
|
||||
onOpen = "ExAdClient\XM8\Apps\modChecker\onOpen.sqf";
|
||||
onClose = "ExAdClient\XM8\Apps\modChecker\onClose.sqf";
|
||||
};
|
||||
};
|
||||
|
||||
class SpawnVehicleItems{
|
||||
|
@ -506,3 +506,13 @@ call ExileClient_object_trader_create;
|
||||
187.428
|
||||
]
|
||||
call ExileClient_object_trader_create;
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
// MOD CHECKER
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
|
||||
waitUntil {!isNull findDisplay 46 && !isNil 'ExileClientLoadedIn' && getPlayerUID player != ''}; // wait until player is in spawned
|
||||
uiSleep 3;
|
||||
|
||||
firstCheck = 0;
|
||||
execVM "addons\modChecker\init\modCheckerInit.sqf";
|
||||
|
Loading…
Reference in New Issue
Block a user