mirror of
https://github.com/EpochModTeam/Epoch.git
synced 2024-08-30 18:22:13 +00:00
Tweaked Trader Filters
This commit is contained in:
parent
57bc71350e
commit
765065aa4a
@ -30,18 +30,18 @@ _LbText = _control lbText _index;
|
||||
_config = 'CfgItemSort' call EPOCH_returnConfig;
|
||||
_MainCategoriearray = getarray (_config >> "MainCategories" >> "Classes");
|
||||
_FilterArray = [];
|
||||
if (_index != 0) then {
|
||||
if !((tolower _LbText) isEqualTo "all") then {
|
||||
if (!_isPlayerFilter && _LbText in
|
||||
[
|
||||
format ["Fits %1",(primaryweapon player) call EPOCH_itemDisplayName],
|
||||
format ["Fits %1",(secondaryweapon player) call EPOCH_itemDisplayName],
|
||||
format ["Fits %1",(handgunweapon player) call EPOCH_itemDisplayName]
|
||||
format ["Fits your %1",(primaryweapon player) call EPOCH_itemDisplayName],
|
||||
format ["Fits your %1",(secondaryweapon player) call EPOCH_itemDisplayName],
|
||||
format ["Fits your %1",(handgunweapon player) call EPOCH_itemDisplayName]
|
||||
]
|
||||
) exitwith {
|
||||
_CheckWpnClass = switch _LbText do {
|
||||
case (format ["Fits %1",(primaryweapon player) call EPOCH_itemDisplayName]) : {primaryweapon player};
|
||||
case (format ["Fits %1",(secondaryweapon player) call EPOCH_itemDisplayName]) : {secondaryweapon player};
|
||||
case (format ["Fits %1",(handgunweapon player) call EPOCH_itemDisplayName]) : {handgunweapon player};
|
||||
case (format ["Fits your %1",(primaryweapon player) call EPOCH_itemDisplayName]) : {primaryweapon player};
|
||||
case (format ["Fits your %1",(secondaryweapon player) call EPOCH_itemDisplayName]) : {secondaryweapon player};
|
||||
case (format ["Fits your %1",(handgunweapon player) call EPOCH_itemDisplayName]) : {handgunweapon player};
|
||||
};
|
||||
_possiblemags = getarray (configfile >> "CfgWeapons" >> _CheckWpnClass >> "magazines");
|
||||
_possibleMuzzles = getarray (configfile >> "CfgWeapons" >> _CheckWpnClass >> "WeaponSlotsInfo" >> "MuzzleSlot" >> "compatibleItems");
|
||||
@ -54,8 +54,8 @@ if (_index != 0) then {
|
||||
};
|
||||
{
|
||||
_MainCategorie = _x;
|
||||
if (_index == (_MainCategorie select 0)) then {
|
||||
_subcategories = _MainCategorie select 2;
|
||||
_MainCategorie params ["_category","_subcategories"];
|
||||
if (_LbText isEqualTo _category) then {
|
||||
{
|
||||
_SubCategorieItems = getArray (_config >> "SubCatergories" >> _x);
|
||||
{
|
||||
@ -93,7 +93,7 @@ if !(isNull EPOCH_lastNPCtradeTarget) then {
|
||||
if (_qty < 1) then {
|
||||
_tooltip = format ["%1 rounds left in Magazine",_rounds];
|
||||
};
|
||||
if (_index == 0 || (tolower _item) in _FilterArray) then {
|
||||
if ((tolower _LbText) isEqualTo "all" || (tolower _item) in _FilterArray) then {
|
||||
_id = lbAdd [_PlayerItemsBox, (_item call EPOCH_itemDisplayName) + (if (_onHand) then {" (in Hand)"} else {""})];
|
||||
lbSetData [_PlayerItemsBox, _id, _item];
|
||||
lbSetValue [_PlayerItemsBox, _id, _rounds];
|
||||
@ -124,7 +124,7 @@ if !(isNull EPOCH_lastNPCtradeTarget) then {
|
||||
{
|
||||
if (local _x) then {
|
||||
_type = typeOf _x;
|
||||
if (_index == 0 || (tolower _type) in _FilterArray) then {
|
||||
if ((tolower _LbText) isEqualTo "all" || (tolower _type) in _FilterArray) then {
|
||||
_itemCount = { typeOf _x == _type } count _vehicles;
|
||||
_itemOfferCount = { _x == _type } count _VehOfferArray;
|
||||
if (_itemCount > _itemOfferCount) then {
|
||||
@ -155,7 +155,7 @@ if !(isNull EPOCH_lastNPCtradeTarget) then {
|
||||
{
|
||||
_x params ["_displayname","_item","_rounds"];
|
||||
if !(_item isequalto "") then {
|
||||
if (_index == 0 || (tolower _item) in _FilterArray) then {
|
||||
if ((tolower _LbText) isEqualTo "all" || (tolower _item) in _FilterArray) then {
|
||||
_maxrnd = 1;
|
||||
_tooltip = "";
|
||||
if ([_item,"cfgMagazines"] call Epoch_fnc_isAny) then {
|
||||
|
@ -13,7 +13,7 @@
|
||||
https://github.com/EpochModTeam/Epoch/tree/release/Sources/epoch_code/compile/traders/EPOCH_startNPCTraderMenu.sqf
|
||||
*/
|
||||
|
||||
private ["_config","_MainCategoriearray","_target","_slot","_index","_ok","_categorie"];
|
||||
private ["_config","_MainCategoriearray","_target","_slot","_index","_ok","_categorie","_idx"];
|
||||
_config = 'CfgItemSort' call EPOCH_returnConfig;
|
||||
_MainCategoriearray = getarray (_config >> "MainCategories" >> "Classes");
|
||||
_target = cursorTarget;
|
||||
@ -46,24 +46,28 @@ if (alive _target) then {
|
||||
if (!_ok) exitWith {};
|
||||
9992 cutRsc["EpochGameUI2", "PLAIN", 2, false];
|
||||
((uiNamespace getVariable "EPOCH_EpochGameUI2") displayCtrl 21208) ctrlSetText format["%1", EPOCH_playerCrypto];
|
||||
{
|
||||
_categorie = _x select 1;
|
||||
lbAdd [42100,_categorie];
|
||||
lbAdd [42101,_categorie]
|
||||
} forEach _MainCategoriearray;
|
||||
_idx = 0;
|
||||
if !(primaryweapon player isEqualTo "") then {
|
||||
_idx = lbAdd [42101,format ["Fits %1",(primaryweapon player) call EPOCH_itemDisplayName]];
|
||||
lbAdd [42101,format ["Fits your %1",(primaryweapon player) call EPOCH_itemDisplayName]];
|
||||
lbSetColor [42101, _idx, [1, 1, 0, 1]];
|
||||
_idx = _idx + 1;
|
||||
};
|
||||
if !(secondaryweapon player isEqualTo "") then {
|
||||
_idx = lbAdd [42101,format ["Fits %1",(secondaryweapon player) call EPOCH_itemDisplayName]];
|
||||
lbAdd [42101,format ["Fits your %1",(secondaryweapon player) call EPOCH_itemDisplayName]];
|
||||
lbSetColor [42101, _idx, [1, 1, 0, 1]];
|
||||
_idx = _idx + 1;
|
||||
};
|
||||
if !(handgunweapon player isEqualTo "") then {
|
||||
_idx = lbAdd [42101,format ["Fits %1",(handgunweapon player) call EPOCH_itemDisplayName]];
|
||||
lbAdd [42101,format ["Fits your %1",(handgunweapon player) call EPOCH_itemDisplayName]];
|
||||
lbSetColor [42101, _idx, [1, 1, 0, 1]];
|
||||
_idx = _idx + 1;
|
||||
};
|
||||
{
|
||||
_categorie = _x select 0;
|
||||
lbAdd [42100,_categorie];
|
||||
lbAdd [42101,_categorie];
|
||||
} forEach _MainCategoriearray;
|
||||
lbSetCurSel [42100, 0];
|
||||
lbSetCurSel [42101, 0];
|
||||
lbSetCurSel [42101, _idx];
|
||||
};
|
||||
};
|
||||
|
@ -5,14 +5,14 @@ class CfgItemSort
|
||||
class MainCategories
|
||||
{
|
||||
classes[] = {
|
||||
{0,"All",{}},
|
||||
{1,"Clothings / Backpacks",{"Uniforms","Vests","HeadGear","Backpacks"}},
|
||||
{2,"Weapons",{"Weapons","Handweapons"}},
|
||||
{3,"Magazines / Attachments",{"Magazines","Attachments"}},
|
||||
{4,"Equipment / Explosives",{"Equipment","Explosive","Hand"}},
|
||||
{5,"Medical / Food",{"Medical","Food","Drink"}},
|
||||
{6,"Items / Basebuilding",{"Basebuilding","Items"}},
|
||||
{7,"Vehicles",{"Vehicles_Land","Vehicles_Air","Vehicles_Ship"}}
|
||||
{"All",{}}, // Category "All" is hardcoded and do not need an array of subcategories!
|
||||
{"Clothings / Backpacks",{"Uniforms","Vests","HeadGear","Backpacks"}},
|
||||
{"Weapons",{"Weapons","Handweapons"}},
|
||||
{"Magazines / Attachments",{"Magazines","Attachments"}},
|
||||
{"Equipment / Explosives",{"Equipment","Explosive","Hand"}},
|
||||
{"Medical / Food",{"Medical","Food","Drink"}},
|
||||
{"Items / Basebuilding",{"Basebuilding","Items"}},
|
||||
{"Vehicles",{"Vehicles_Land","Vehicles_Air","Vehicles_Ship"}}
|
||||
};
|
||||
};
|
||||
class SubCatergories
|
||||
|
Loading…
Reference in New Issue
Block a user