From a01250a7f0f08fc3842eefd874af3beeda3f573b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Brostr=C3=B6m=2EA=20=7C=20Evul?= Date: Tue, 9 Jul 2024 13:20:16 +0200 Subject: [PATCH 01/15] Added prettier config and added fixed dubble testing (#1205) --- .editorconfig | 7 +++ .github/workflows/create_artifacts.yml | 1 + .github/workflows/deploy.yml | 4 +- .github/workflows/deploy_artifacts_main.yml | 7 ++- .github/workflows/deploy_artifacts_tag.yml | 7 ++- .github/workflows/testing.yml | 70 +++++++++++---------- 6 files changed, 55 insertions(+), 41 deletions(-) diff --git a/.editorconfig b/.editorconfig index af1c2ff31..207020fcf 100644 --- a/.editorconfig +++ b/.editorconfig @@ -10,3 +10,10 @@ trim_trailing_whitespace = true [*.md] trim_trailing_whitespace = false + +[*.sqf] +indent_style = space +indent_size = 4 + +[*.yml] +indent_size = 2 \ No newline at end of file diff --git a/.github/workflows/create_artifacts.yml b/.github/workflows/create_artifacts.yml index a8d37599e..472195659 100644 --- a/.github/workflows/create_artifacts.yml +++ b/.github/workflows/create_artifacts.yml @@ -1,5 +1,6 @@ name: Create Artifacts on: workflow_dispatch + jobs: build: name: Create And Upload Releases diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index b22ddd1e4..bed2e140e 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -1,7 +1,8 @@ name: Deploy Release on: release: - types: [ published ] + types: [published] + jobs: build: name: Create And Upload Release @@ -37,7 +38,6 @@ jobs: asset_name: cScripts_Debug-${{github.ref_name}}.zip file: release/cScripts_Debug-${{github.ref_name}}.zip - - name: Upload release (cScripts_NoRadio) uses: svenstaro/upload-release-action@v2 with: diff --git a/.github/workflows/deploy_artifacts_main.yml b/.github/workflows/deploy_artifacts_main.yml index 763b0b77e..b6eb41293 100644 --- a/.github/workflows/deploy_artifacts_main.yml +++ b/.github/workflows/deploy_artifacts_main.yml @@ -1,8 +1,9 @@ name: Deploy DevBuild Artifacts on: push: - branches: - - main + branches: + - main + jobs: build: name: Create And Upload Releases @@ -18,4 +19,4 @@ jobs: uses: actions/upload-artifact@v3 with: name: cScripts_DevBuilds - path: release/* \ No newline at end of file + path: release/* diff --git a/.github/workflows/deploy_artifacts_tag.yml b/.github/workflows/deploy_artifacts_tag.yml index 59931c061..b4c7f214e 100644 --- a/.github/workflows/deploy_artifacts_tag.yml +++ b/.github/workflows/deploy_artifacts_tag.yml @@ -1,8 +1,9 @@ name: Deploy Tag Artifacts on: push: - tags: - - '*' + tags: + - "*" + jobs: build: name: Create And Upload Releases @@ -18,4 +19,4 @@ jobs: uses: actions/upload-artifact@v3 with: name: cScripts_Releases - path: release/* \ No newline at end of file + path: release/* diff --git a/.github/workflows/testing.yml b/.github/workflows/testing.yml index 4d6b89dc6..8c7983d4f 100644 --- a/.github/workflows/testing.yml +++ b/.github/workflows/testing.yml @@ -1,45 +1,49 @@ name: Testing -on: [push, pull_request] +on: + pull_request: + push: + branches: main + jobs: validate: runs-on: ubuntu-latest steps: - - name: Checkout the source code - uses: actions/checkout@master - - name: Validate SQF - run: python3 tools/sqf_validator.py - - name: Validate Config - run: python3 tools/config_style_checker.py - + - name: Checkout the source code + uses: actions/checkout@master + - name: Validate SQF + run: python3 tools/sqf_validator.py + - name: Validate Config + run: python3 tools/config_style_checker.py + lint: runs-on: ubuntu-latest steps: - - name: Checkout the source code - uses: actions/checkout@master - - name: Lint (sqflint) - uses: arma-actions/sqflint@master - with: - args: --exit e --directory cScripts/functions - continue-on-error: true # No failure due to many false-positives + - name: Checkout the source code + uses: actions/checkout@master + - name: Lint (sqflint) + uses: arma-actions/sqflint@master + with: + args: --exit e --directory cScripts/functions + continue-on-error: true # No failure due to many false-positives testing: runs-on: ubuntu-latest steps: - - name: Checkout the source code - uses: actions/checkout@master - - name: Check DEBUG_MODE - if: always() - run: bash tools/checkDebug.sh - - name: Check TODO - if: always() - run: bash tools/checkTodo.sh - continue-on-error: true - - name: Check for FIXME - if: always() - run: bash tools/checkFixme.sh - - name: Check for LOGGING - if: always() - run: bash tools/checkLogging.sh - - name: Check Pull Request Name - if: always() - run: bash tools/checkPullRequestTitle.sh ${{ github.event.pull_request.title }} \ No newline at end of file + - name: Checkout the source code + uses: actions/checkout@master + - name: Check DEBUG_MODE + if: always() + run: bash tools/checkDebug.sh + - name: Check TODO + if: always() + run: bash tools/checkTodo.sh + continue-on-error: true + - name: Check for FIXME + if: always() + run: bash tools/checkFixme.sh + - name: Check for LOGGING + if: always() + run: bash tools/checkLogging.sh + - name: Check Pull Request Name + if: always() + run: bash tools/checkPullRequestTitle.sh ${{ github.event.pull_request.title }} From f1a0ed5a6aa5b1782b39610bc17aa2055b117e93 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Brostr=C3=B6m=2EA=20=7C=20Evul?= Date: Tue, 9 Jul 2024 14:56:08 +0200 Subject: [PATCH 02/15] Added better check for test only running once (#1206) --- .github/workflows/testing.yml | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/.github/workflows/testing.yml b/.github/workflows/testing.yml index 8c7983d4f..34cbaa880 100644 --- a/.github/workflows/testing.yml +++ b/.github/workflows/testing.yml @@ -2,11 +2,13 @@ name: Testing on: pull_request: push: - branches: main jobs: validate: runs-on: ubuntu-latest + if: github.event_name != 'pull_request' || + github.event.pull_request.head.repo.full_name != + github.event.pull_request.base.repo.full_name steps: - name: Checkout the source code uses: actions/checkout@master @@ -17,6 +19,9 @@ jobs: lint: runs-on: ubuntu-latest + if: github.event_name != 'pull_request' || + github.event.pull_request.head.repo.full_name != + github.event.pull_request.base.repo.full_name steps: - name: Checkout the source code uses: actions/checkout@master @@ -28,6 +33,9 @@ jobs: testing: runs-on: ubuntu-latest + if: github.event_name != 'pull_request' || + github.event.pull_request.head.repo.full_name != + github.event.pull_request.base.repo.full_name steps: - name: Checkout the source code uses: actions/checkout@master From 821eb423dabf9066897e6f7cde5cbcfc0e3a7e49 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Brostr=C3=B6m=2EA=20=7C=20Evul?= Date: Wed, 10 Jul 2024 15:30:59 +0200 Subject: [PATCH 03/15] Updated editor config (#1208) --- .editorconfig | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/.editorconfig b/.editorconfig index 207020fcf..34aa3b96f 100644 --- a/.editorconfig +++ b/.editorconfig @@ -11,9 +11,17 @@ trim_trailing_whitespace = true [*.md] trim_trailing_whitespace = false -[*.sqf] +[*.yml] +indent_size = 2 + +[*.hpp] indent_style = space indent_size = 4 -[*.yml] -indent_size = 2 \ No newline at end of file +[*.cpp] +indent_style = space +indent_size = 4 + +[*.sqf] +indent_style = space +indent_size = 4 \ No newline at end of file From 3ff55ca98805bdf955c3c4f37d0cbaf5877730a0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Brostr=C3=B6m=2EA=20=7C=20Evul?= Date: Tue, 16 Jul 2024 17:56:52 +0200 Subject: [PATCH 04/15] Added cScripts and loadout chat command to give you cscripts version and loadout name (#1211) --- cScripts/CfgFunctions.hpp | 1 + .../gear/fn_gear_getLoadoutDisplayName.sqf | 30 +++++++++++++++++++ .../functions/init/fn_init_chatCommands.sqf | 11 +++++++ 3 files changed, 42 insertions(+) create mode 100644 cScripts/functions/gear/fn_gear_getLoadoutDisplayName.sqf diff --git a/cScripts/CfgFunctions.hpp b/cScripts/CfgFunctions.hpp index 601233a2b..da9d39b66 100644 --- a/cScripts/CfgFunctions.hpp +++ b/cScripts/CfgFunctions.hpp @@ -245,6 +245,7 @@ class cScripts { // other class gear_getLoadoutRole {}; class gear_getLoadoutName {}; + class gear_getLoadoutDisplayName {}; }; class diag { file = "cScripts\functions\diag"; diff --git a/cScripts/functions/gear/fn_gear_getLoadoutDisplayName.sqf b/cScripts/functions/gear/fn_gear_getLoadoutDisplayName.sqf new file mode 100644 index 000000000..b7f7d9ae7 --- /dev/null +++ b/cScripts/functions/gear/fn_gear_getLoadoutDisplayName.sqf @@ -0,0 +1,30 @@ +#include "..\script_component.hpp" +/* + * Author: CPL.Brostrom.A + * This function return a units current loadouts displayname. + * + * Arguments: + * 0: Unit + * + * Return Value: + * Loadout name + * + * Example: + * [player] call cScripts_fnc_gear_getLoadoutDisplayName; + * [cursorObject] call cScripts_fnc_gear_getLoadoutDisplayName; + * + */ + +params [["_unit", objNull, [objNull]]]; + +private _loadout = [_unit] call EFUNC(gear,getLoadoutName); + +private _missionConfig = missionConfigFile >> "CfgLoadouts" >> _loadout; +private _displayName = getText (_missionConfig >> "displayName"); + +if (_displayName == "") then { + private _config = configFile >> "CfgLoadouts" >> _loadout; + _displayName = getText (_config >> "displayName"); +}; + +_displayName \ No newline at end of file diff --git a/cScripts/functions/init/fn_init_chatCommands.sqf b/cScripts/functions/init/fn_init_chatCommands.sqf index 6e6a218bc..0de2c7c77 100644 --- a/cScripts/functions/init/fn_init_chatCommands.sqf +++ b/cScripts/functions/init/fn_init_chatCommands.sqf @@ -12,3 +12,14 @@ ["attendance", { [QGVAR(getAttendance)] call CBA_fnc_localEvent; }, "all"] call CBA_fnc_registerChatCommand; + +// Help and diagnostic commands +["cScripts", { + systemChat format["cScripts version: %1", VERSION]; +}, "all"] call CBA_fnc_registerChatCommand; + +["loadout", { + private _name = [player] call EFUNC(gear,getLoadoutDisplayName); + private _loadout = [player] call EFUNC(gear,getLoadoutName); + systemChat format["Your current loadout is: %1 [%2]",_name,_loadout]; +}, "all"] call CBA_fnc_registerChatCommand; From b970466b94ac20600516e9431cc7dc525f4044c6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Brostr=C3=B6m=2EA=20=7C=20Evul?= Date: Wed, 17 Jul 2024 01:49:36 +0200 Subject: [PATCH 05/15] Fixed formated log show macros using debug macros instead parent show macro (#1212) --- cScripts/script_macros.hpp | 260 ++++++++++++++++++------------------- 1 file changed, 130 insertions(+), 130 deletions(-) diff --git a/cScripts/script_macros.hpp b/cScripts/script_macros.hpp index 180011f71..728c1affb 100644 --- a/cScripts/script_macros.hpp +++ b/cScripts/script_macros.hpp @@ -176,165 +176,165 @@ /* VISABLE LOGS */ #define SHOW_LOG(COMPONANT,MESSAGE) LOG_SYS(COMPONANT,MESSAGE,false,false) -#define SHOW_LOG_1(COMPONANT,MESSAGE,ARG1) LOG(COMPONANT,FORMAT_1(MESSAGE,ARG1)) -#define SHOW_LOG_2(COMPONANT,MESSAGE,ARG1,ARG2) LOG(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) -#define SHOW_LOG_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) LOG(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) -#define SHOW_LOG_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) LOG(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) -#define SHOW_LOG_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) LOG(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) -#define SHOW_LOG_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) LOG(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) -#define SHOW_LOG_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) LOG(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) -#define SHOW_LOG_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) LOG(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) +#define SHOW_LOG_1(COMPONANT,MESSAGE,ARG1) SHOW_LOG(COMPONANT,FORMAT_1(MESSAGE,ARG1)) +#define SHOW_LOG_2(COMPONANT,MESSAGE,ARG1,ARG2) SHOW_LOG(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) +#define SHOW_LOG_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) SHOW_LOG(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) +#define SHOW_LOG_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) SHOW_LOG(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) +#define SHOW_LOG_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) SHOW_LOG(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) +#define SHOW_LOG_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) SHOW_LOG(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) +#define SHOW_LOG_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) SHOW_LOG(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) +#define SHOW_LOG_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) SHOW_LOG(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) #define SHOW_INFO(COMPONANT,MESSAGE) INFO_SYS(COMPONANT,MESSAGE,false,false) -#define SHOW_INFO_1(COMPONANT,MESSAGE,ARG1) INFO(COMPONANT,FORMAT_1(MESSAGE,ARG1)) -#define SHOW_INFO_2(COMPONANT,MESSAGE,ARG1,ARG2) INFO(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) -#define SHOW_INFO_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) INFO(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) -#define SHOW_INFO_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) INFO(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) -#define SHOW_INFO_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) INFO(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) -#define SHOW_INFO_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) INFO(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) -#define SHOW_INFO_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) INFO(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) -#define SHOW_INFO_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) INFO(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) +#define SHOW_INFO_1(COMPONANT,MESSAGE,ARG1) SHOW_INFO(COMPONANT,FORMAT_1(MESSAGE,ARG1)) +#define SHOW_INFO_2(COMPONANT,MESSAGE,ARG1,ARG2) SHOW_INFO(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) +#define SHOW_INFO_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) SHOW_INFO(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) +#define SHOW_INFO_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) SHOW_INFO(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) +#define SHOW_INFO_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) SHOW_INFO(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) +#define SHOW_INFO_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) SHOW_INFO(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) +#define SHOW_INFO_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) SHOW_INFO(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) +#define SHOW_INFO_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) SHOW_INFO(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) #define SHOW_WARNING(COMPONANT,MESSAGE) WARNING_SYS(COMPONANT,MESSAGE,false,false) -#define SHOW_WARNING_1(COMPONANT,MESSAGE,ARG1) WARNING(COMPONANT,FORMAT_1(MESSAGE,ARG1)) -#define SHOW_WARNING_2(COMPONANT,MESSAGE,ARG1,ARG2) WARNING(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) -#define SHOW_WARNING_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) WARNING(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) -#define SHOW_WARNING_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) WARNING(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) -#define SHOW_WARNING_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) WARNING(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) -#define SHOW_WARNING_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) WARNING(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) -#define SHOW_WARNING_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) WARNING(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) -#define SHOW_WARNING_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) WARNING(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) - -#define SHOW_ERROR(COMPONANT,MESSAGE) ERROR_SYS(COMPONANT,MESSAGE,true,false) -#define SHOW_ERROR_1(COMPONANT,MESSAGE,ARG1) ERROR(COMPONANT,FORMAT_1(MESSAGE,ARG1)) -#define SHOW_ERROR_2(COMPONANT,MESSAGE,ARG1,ARG2) ERROR(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) -#define SHOW_ERROR_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) ERROR(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) -#define SHOW_ERROR_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) ERROR(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) -#define SHOW_ERROR_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) ERROR(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) -#define SHOW_ERROR_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) ERROR(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) -#define SHOW_ERROR_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) ERROR(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) -#define SHOW_ERROR_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) ERROR(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) +#define SHOW_WARNING_1(COMPONANT,MESSAGE,ARG1) SHOW_WARNING(COMPONANT,FORMAT_1(MESSAGE,ARG1)) +#define SHOW_WARNING_2(COMPONANT,MESSAGE,ARG1,ARG2) SHOW_WARNING(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) +#define SHOW_WARNING_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) SHOW_WARNING(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) +#define SHOW_WARNING_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) SHOW_WARNING(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) +#define SHOW_WARNING_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) SHOW_WARNING(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) +#define SHOW_WARNING_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) SHOW_WARNING(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) +#define SHOW_WARNING_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) SHOW_WARNING(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) +#define SHOW_WARNING_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) SHOW_WARNING(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) + +#define SHOW_ERROR(COMPONANT,MESSAGE) ERROR_SYS(COMPONANT,MESSAGE,false,false) +#define SHOW_ERROR_1(COMPONANT,MESSAGE,ARG1) SHOW_ERROR(COMPONANT,FORMAT_1(MESSAGE,ARG1)) +#define SHOW_ERROR_2(COMPONANT,MESSAGE,ARG1,ARG2) SHOW_ERROR(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) +#define SHOW_ERROR_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) SHOW_ERROR(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) +#define SHOW_ERROR_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) SHOW_ERROR(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) +#define SHOW_ERROR_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) SHOW_ERROR(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) +#define SHOW_ERROR_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) SHOW_ERROR(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) +#define SHOW_ERROR_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) SHOW_ERROR(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) +#define SHOW_ERROR_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) SHOW_ERROR(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) /* SHOW CHAT LOG */ #define SHOW_CHAT_LOG(COMPONANT,MESSAGE) LOG_SYS(COMPONANT,MESSAGE,true,false) -#define SHOW_CHAT_LOG_1(COMPONANT,MESSAGE,ARG1) LOG(COMPONANT,FORMAT_1(MESSAGE,ARG1)) -#define SHOW_CHAT_LOG_2(COMPONANT,MESSAGE,ARG1,ARG2) LOG(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) -#define SHOW_CHAT_LOG_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) LOG(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) -#define SHOW_CHAT_LOG_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) LOG(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) -#define SHOW_CHAT_LOG_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) LOG(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) -#define SHOW_CHAT_LOG_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) LOG(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) -#define SHOW_CHAT_LOG_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) LOG(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) -#define SHOW_CHAT_LOG_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) LOG(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) +#define SHOW_CHAT_LOG_1(COMPONANT,MESSAGE,ARG1) SHOW_CHAT_LOG(COMPONANT,FORMAT_1(MESSAGE,ARG1)) +#define SHOW_CHAT_LOG_2(COMPONANT,MESSAGE,ARG1,ARG2) SHOW_CHAT_LOG(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) +#define SHOW_CHAT_LOG_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) SHOW_CHAT_LOG(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) +#define SHOW_CHAT_LOG_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) SHOW_CHAT_LOG(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) +#define SHOW_CHAT_LOG_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) SHOW_CHAT_LOG(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) +#define SHOW_CHAT_LOG_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) SHOW_CHAT_LOG(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) +#define SHOW_CHAT_LOG_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) SHOW_CHAT_LOG(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) +#define SHOW_CHAT_LOG_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) SHOW_CHAT_LOG(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) #define SHOW_CHAT_INFO(COMPONANT,MESSAGE) INFO_SYS(COMPONANT,MESSAGE,true,false) -#define SHOW_CHAT_INFO_1(COMPONANT,MESSAGE,ARG1) INFO(COMPONANT,FORMAT_1(MESSAGE,ARG1)) -#define SHOW_CHAT_INFO_2(COMPONANT,MESSAGE,ARG1,ARG2) INFO(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) -#define SHOW_CHAT_INFO_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) INFO(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) -#define SHOW_CHAT_INFO_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) INFO(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) -#define SHOW_CHAT_INFO_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) INFO(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) -#define SHOW_CHAT_INFO_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) INFO(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) -#define SHOW_CHAT_INFO_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) INFO(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) -#define SHOW_CHAT_INFO_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) INFO(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) +#define SHOW_CHAT_INFO_1(COMPONANT,MESSAGE,ARG1) SHOW_CHAT_INFO(COMPONANT,FORMAT_1(MESSAGE,ARG1)) +#define SHOW_CHAT_INFO_2(COMPONANT,MESSAGE,ARG1,ARG2) SHOW_CHAT_INFO(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) +#define SHOW_CHAT_INFO_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) SHOW_CHAT_INFO(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) +#define SHOW_CHAT_INFO_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) SHOW_CHAT_INFO(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) +#define SHOW_CHAT_INFO_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) SHOW_CHAT_INFO(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) +#define SHOW_CHAT_INFO_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) SHOW_CHAT_INFO(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) +#define SHOW_CHAT_INFO_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) SHOW_CHAT_INFO(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) +#define SHOW_CHAT_INFO_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) SHOW_CHAT_INFO(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) #define SHOW_CHAT_WARNING(COMPONANT,MESSAGE) WARNING_SYS(COMPONANT,MESSAGE,true,false) -#define SHOW_CHAT_WARNING_1(COMPONANT,MESSAGE,ARG1) WARNING(COMPONANT,FORMAT_1(MESSAGE,ARG1)) -#define SHOW_CHAT_WARNING_2(COMPONANT,MESSAGE,ARG1,ARG2) WARNING(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) -#define SHOW_CHAT_WARNING_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) WARNING(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) -#define SHOW_CHAT_WARNING_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) WARNING(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) -#define SHOW_CHAT_WARNING_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) WARNING(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) -#define SHOW_CHAT_WARNING_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) WARNING(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) -#define SHOW_CHAT_WARNING_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) WARNING(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) -#define SHOW_CHAT_WARNING_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) WARNING(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) +#define SHOW_CHAT_WARNING_1(COMPONANT,MESSAGE,ARG1) SHOW_CHAT_WARNING(COMPONANT,FORMAT_1(MESSAGE,ARG1)) +#define SHOW_CHAT_WARNING_2(COMPONANT,MESSAGE,ARG1,ARG2) SHOW_CHAT_WARNING(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) +#define SHOW_CHAT_WARNING_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) SHOW_CHAT_WARNING(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) +#define SHOW_CHAT_WARNING_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) SHOW_CHAT_WARNING(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) +#define SHOW_CHAT_WARNING_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) SHOW_CHAT_WARNING(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) +#define SHOW_CHAT_WARNING_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) SHOW_CHAT_WARNING(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) +#define SHOW_CHAT_WARNING_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) SHOW_CHAT_WARNING(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) +#define SHOW_CHAT_WARNING_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) SHOW_CHAT_WARNING(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) #define SHOW_CHAT_ERROR(COMPONANT,MESSAGE) ERROR_SYS(COMPONANT,MESSAGE,true,false) -#define SHOW_CHAT_ERROR_1(COMPONANT,MESSAGE,ARG1) ERROR(COMPONANT,FORMAT_1(MESSAGE,ARG1)) -#define SHOW_CHAT_ERROR_2(COMPONANT,MESSAGE,ARG1,ARG2) ERROR(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) -#define SHOW_CHAT_ERROR_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) ERROR(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) -#define SHOW_CHAT_ERROR_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) ERROR(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) -#define SHOW_CHAT_ERROR_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) ERROR(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) -#define SHOW_CHAT_ERROR_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) ERROR(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) -#define SHOW_CHAT_ERROR_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) ERROR(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) -#define SHOW_CHAT_ERROR_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) ERROR(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) +#define SHOW_CHAT_ERROR_1(COMPONANT,MESSAGE,ARG1) SHOW_CHAT_ERROR(COMPONANT,FORMAT_1(MESSAGE,ARG1)) +#define SHOW_CHAT_ERROR_2(COMPONANT,MESSAGE,ARG1,ARG2) SHOW_CHAT_ERROR(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) +#define SHOW_CHAT_ERROR_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) SHOW_CHAT_ERROR(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) +#define SHOW_CHAT_ERROR_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) SHOW_CHAT_ERROR(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) +#define SHOW_CHAT_ERROR_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) SHOW_CHAT_ERROR(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) +#define SHOW_CHAT_ERROR_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) SHOW_CHAT_ERROR(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) +#define SHOW_CHAT_ERROR_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) SHOW_CHAT_ERROR(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) +#define SHOW_CHAT_ERROR_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) SHOW_CHAT_ERROR(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) /* SHOW CHAT SERVER LOG*/ #define SHOW_CHAT_SERVER_LOG(COMPONANT,MESSAGE) LOG_SYS(COMPONANT,MESSAGE,true,true) -#define SHOW_CHAT_SERVER_LOG_1(COMPONANT,MESSAGE,ARG1) LOG(COMPONANT,FORMAT_1(MESSAGE,ARG1)) -#define SHOW_CHAT_SERVER_LOG_2(COMPONANT,MESSAGE,ARG1,ARG2) LOG(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) -#define SHOW_CHAT_SERVER_LOG_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) LOG(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) -#define SHOW_CHAT_SERVER_LOG_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) LOG(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) -#define SHOW_CHAT_SERVER_LOG_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) LOG(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) -#define SHOW_CHAT_SERVER_LOG_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) LOG(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) -#define SHOW_CHAT_SERVER_LOG_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) LOG(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) -#define SHOW_CHAT_SERVER_LOG_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) LOG(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) +#define SHOW_CHAT_SERVER_LOG_1(COMPONANT,MESSAGE,ARG1) SHOW_CHAT_SERVER_LOG(COMPONANT,FORMAT_1(MESSAGE,ARG1)) +#define SHOW_CHAT_SERVER_LOG_2(COMPONANT,MESSAGE,ARG1,ARG2) SHOW_CHAT_SERVER_LOG(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) +#define SHOW_CHAT_SERVER_LOG_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) SHOW_CHAT_SERVER_LOG(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) +#define SHOW_CHAT_SERVER_LOG_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) SHOW_CHAT_SERVER_LOG(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) +#define SHOW_CHAT_SERVER_LOG_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) SHOW_CHAT_SERVER_LOG(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) +#define SHOW_CHAT_SERVER_LOG_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) SHOW_CHAT_SERVER_LOG(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) +#define SHOW_CHAT_SERVER_LOG_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) SHOW_CHAT_SERVER_LOG(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) +#define SHOW_CHAT_SERVER_LOG_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) SHOW_CHAT_SERVER_LOG(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) #define SHOW_CHAT_SERVER_INFO(COMPONANT,MESSAGE) INFO_SYS(COMPONANT,MESSAGE,true,true) -#define SHOW_CHAT_SERVER_INFO_1(COMPONANT,MESSAGE,ARG1) INFO(COMPONANT,FORMAT_1(MESSAGE,ARG1)) -#define SHOW_CHAT_SERVER_INFO_2(COMPONANT,MESSAGE,ARG1,ARG2) INFO(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) -#define SHOW_CHAT_SERVER_INFO_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) INFO(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) -#define SHOW_CHAT_SERVER_INFO_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) INFO(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) -#define SHOW_CHAT_SERVER_INFO_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) INFO(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) -#define SHOW_CHAT_SERVER_INFO_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) INFO(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) -#define SHOW_CHAT_SERVER_INFO_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) INFO(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) -#define SHOW_CHAT_SERVER_INFO_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) INFO(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) +#define SHOW_CHAT_SERVER_INFO_1(COMPONANT,MESSAGE,ARG1) SHOW_CHAT_SERVER_INFO(COMPONANT,FORMAT_1(MESSAGE,ARG1)) +#define SHOW_CHAT_SERVER_INFO_2(COMPONANT,MESSAGE,ARG1,ARG2) SHOW_CHAT_SERVER_INFO(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) +#define SHOW_CHAT_SERVER_INFO_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) SHOW_CHAT_SERVER_INFO(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) +#define SHOW_CHAT_SERVER_INFO_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) SHOW_CHAT_SERVER_INFO(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) +#define SHOW_CHAT_SERVER_INFO_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) SHOW_CHAT_SERVER_INFO(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) +#define SHOW_CHAT_SERVER_INFO_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) SHOW_CHAT_SERVER_INFO(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) +#define SHOW_CHAT_SERVER_INFO_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) SHOW_CHAT_SERVER_INFO(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) +#define SHOW_CHAT_SERVER_INFO_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) SHOW_CHAT_SERVER_INFO(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) #define SHOW_CHAT_SERVER_WARNING(COMPONANT,MESSAGE) WARNING_SYS(COMPONANT,MESSAGE,true,true) -#define SHOW_CHAT_SERVER_WARNING_1(COMPONANT,MESSAGE,ARG1) WARNING(COMPONANT,FORMAT_1(MESSAGE,ARG1)) -#define SHOW_CHAT_SERVER_WARNING_2(COMPONANT,MESSAGE,ARG1,ARG2) WARNING(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) -#define SHOW_CHAT_SERVER_WARNING_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) WARNING(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) -#define SHOW_CHAT_SERVER_WARNING_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) WARNING(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) -#define SHOW_CHAT_SERVER_WARNING_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) WARNING(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) -#define SHOW_CHAT_SERVER_WARNING_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) WARNING(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) -#define SHOW_CHAT_SERVER_WARNING_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) WARNING(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) -#define SHOW_CHAT_SERVER_WARNING_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) WARNING(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) +#define SHOW_CHAT_SERVER_WARNING_1(COMPONANT,MESSAGE,ARG1) SHOW_CHAT_SERVER_WARNING(COMPONANT,FORMAT_1(MESSAGE,ARG1)) +#define SHOW_CHAT_SERVER_WARNING_2(COMPONANT,MESSAGE,ARG1,ARG2) SHOW_CHAT_SERVER_WARNING(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) +#define SHOW_CHAT_SERVER_WARNING_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) SHOW_CHAT_SERVER_WARNING(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) +#define SHOW_CHAT_SERVER_WARNING_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) SHOW_CHAT_SERVER_WARNING(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) +#define SHOW_CHAT_SERVER_WARNING_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) SHOW_CHAT_SERVER_WARNING(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) +#define SHOW_CHAT_SERVER_WARNING_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) SHOW_CHAT_SERVER_WARNING(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) +#define SHOW_CHAT_SERVER_WARNING_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) SHOW_CHAT_SERVER_WARNING(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) +#define SHOW_CHAT_SERVER_WARNING_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) SHOW_CHAT_SERVER_WARNING(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) #define SHOW_CHAT_SERVER_ERROR(COMPONANT,MESSAGE) ERROR_SYS(COMPONANT,MESSAGE,true,true) -#define SHOW_CHAT_SERVER_ERROR_1(COMPONANT,MESSAGE,ARG1) ERROR(COMPONANT,FORMAT_1(MESSAGE,ARG1)) -#define SHOW_CHAT_SERVER_ERROR_2(COMPONANT,MESSAGE,ARG1,ARG2) ERROR(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) -#define SHOW_CHAT_SERVER_ERROR_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) ERROR(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) -#define SHOW_CHAT_SERVER_ERROR_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) ERROR(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) -#define SHOW_CHAT_SERVER_ERROR_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) ERROR(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) -#define SHOW_CHAT_SERVER_ERROR_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) ERROR(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) -#define SHOW_CHAT_SERVER_ERROR_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) ERROR(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) -#define SHOW_CHAT_SERVER_ERROR_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) ERROR(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) +#define SHOW_CHAT_SERVER_ERROR_1(COMPONANT,MESSAGE,ARG1) SHOW_CHAT_SERVER_ERROR(COMPONANT,FORMAT_1(MESSAGE,ARG1)) +#define SHOW_CHAT_SERVER_ERROR_2(COMPONANT,MESSAGE,ARG1,ARG2) SHOW_CHAT_SERVER_ERROR(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) +#define SHOW_CHAT_SERVER_ERROR_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) SHOW_CHAT_SERVER_ERROR(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) +#define SHOW_CHAT_SERVER_ERROR_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) SHOW_CHAT_SERVER_ERROR(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) +#define SHOW_CHAT_SERVER_ERROR_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) SHOW_CHAT_SERVER_ERROR(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) +#define SHOW_CHAT_SERVER_ERROR_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) SHOW_CHAT_SERVER_ERROR(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) +#define SHOW_CHAT_SERVER_ERROR_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) SHOW_CHAT_SERVER_ERROR(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) +#define SHOW_CHAT_SERVER_ERROR_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) SHOW_CHAT_SERVER_ERROR(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) /* SHOW SERVER LOG*/ #define SHOW_SERVER_LOG(COMPONANT,MESSAGE) LOG_SYS(COMPONANT,MESSAGE,false,true) -#define SHOW_SERVER_LOG_1(COMPONANT,MESSAGE,ARG1) LOG(COMPONANT,FORMAT_1(MESSAGE,ARG1)) -#define SHOW_SERVER_LOG_2(COMPONANT,MESSAGE,ARG1,ARG2) LOG(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) -#define SHOW_SERVER_LOG_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) LOG(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) -#define SHOW_SERVER_LOG_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) LOG(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) -#define SHOW_SERVER_LOG_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) LOG(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) -#define SHOW_SERVER_LOG_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) LOG(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) -#define SHOW_SERVER_LOG_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) LOG(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) -#define SHOW_SERVER_LOG_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) LOG(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) +#define SHOW_SERVER_LOG_1(COMPONANT,MESSAGE,ARG1) SHOW_SERVER_LOG(COMPONANT,FORMAT_1(MESSAGE,ARG1)) +#define SHOW_SERVER_LOG_2(COMPONANT,MESSAGE,ARG1,ARG2) SHOW_SERVER_LOG(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) +#define SHOW_SERVER_LOG_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) SHOW_SERVER_LOG(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) +#define SHOW_SERVER_LOG_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) SHOW_SERVER_LOG(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) +#define SHOW_SERVER_LOG_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) SHOW_SERVER_LOG(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) +#define SHOW_SERVER_LOG_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) SHOW_SERVER_LOG(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) +#define SHOW_SERVER_LOG_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) SHOW_SERVER_LOG(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) +#define SHOW_SERVER_LOG_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) SHOW_SERVER_LOG(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) #define SHOW_SERVER_INFO(COMPONANT,MESSAGE) INFO_SYS(COMPONANT,MESSAGE,false,true) -#define SHOW_SERVER_INFO_1(COMPONANT,MESSAGE,ARG1) INFO(COMPONANT,FORMAT_1(MESSAGE,ARG1)) -#define SHOW_SERVER_INFO_2(COMPONANT,MESSAGE,ARG1,ARG2) INFO(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) -#define SHOW_SERVER_INFO_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) INFO(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) -#define SHOW_SERVER_INFO_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) INFO(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) -#define SHOW_SERVER_INFO_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) INFO(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) -#define SHOW_SERVER_INFO_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) INFO(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) -#define SHOW_SERVER_INFO_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) INFO(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) -#define SHOW_SERVER_INFO_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) INFO(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) +#define SHOW_SERVER_INFO_1(COMPONANT,MESSAGE,ARG1) SHOW_SERVER_INFO(COMPONANT,FORMAT_1(MESSAGE,ARG1)) +#define SHOW_SERVER_INFO_2(COMPONANT,MESSAGE,ARG1,ARG2) SHOW_SERVER_INFO(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) +#define SHOW_SERVER_INFO_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) SHOW_SERVER_INFO(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) +#define SHOW_SERVER_INFO_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) SHOW_SERVER_INFO(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) +#define SHOW_SERVER_INFO_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) SHOW_SERVER_INFO(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) +#define SHOW_SERVER_INFO_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) SHOW_SERVER_INFO(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) +#define SHOW_SERVER_INFO_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) SHOW_SERVER_INFO(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) +#define SHOW_SERVER_INFO_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) SHOW_SERVER_INFO(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) #define SHOW_SERVER_WARNING(COMPONANT,MESSAGE) WARNING_SYS(COMPONANT,MESSAGE,false,true) -#define SHOW_SERVER_WARNING_1(COMPONANT,MESSAGE,ARG1) WARNING(COMPONANT,FORMAT_1(MESSAGE,ARG1)) -#define SHOW_SERVER_WARNING_2(COMPONANT,MESSAGE,ARG1,ARG2) WARNING(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) -#define SHOW_SERVER_WARNING_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) WARNING(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) -#define SHOW_SERVER_WARNING_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) WARNING(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) -#define SHOW_SERVER_WARNING_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) WARNING(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) -#define SHOW_SERVER_WARNING_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) WARNING(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) -#define SHOW_SERVER_WARNING_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) WARNING(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) -#define SHOW_SERVER_WARNING_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) WARNING(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) +#define SHOW_SERVER_WARNING_1(COMPONANT,MESSAGE,ARG1) SHOW_SERVER_WARNING(COMPONANT,FORMAT_1(MESSAGE,ARG1)) +#define SHOW_SERVER_WARNING_2(COMPONANT,MESSAGE,ARG1,ARG2) SHOW_SERVER_WARNING(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) +#define SHOW_SERVER_WARNING_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) SHOW_SERVER_WARNING(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) +#define SHOW_SERVER_WARNING_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) SHOW_SERVER_WARNING(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) +#define SHOW_SERVER_WARNING_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) SHOW_SERVER_WARNING(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) +#define SHOW_SERVER_WARNING_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) SHOW_SERVER_WARNING(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) +#define SHOW_SERVER_WARNING_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) SHOW_SERVER_WARNING(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) +#define SHOW_SERVER_WARNING_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) SHOW_SERVER_WARNING(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) #define SHOW_SERVER_ERROR(COMPONANT,MESSAGE) ERROR_SYS(COMPONANT,MESSAGE,false,true) -#define SHOW_SERVER_ERROR_1(COMPONANT,MESSAGE,ARG1) ERROR(COMPONANT,FORMAT_1(MESSAGE,ARG1)) -#define SHOW_SERVER_ERROR_2(COMPONANT,MESSAGE,ARG1,ARG2) ERROR(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) -#define SHOW_SERVER_ERROR_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) ERROR(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) -#define SHOW_SERVER_ERROR_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) ERROR(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) -#define SHOW_SERVER_ERROR_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) ERROR(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) -#define SHOW_SERVER_ERROR_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) ERROR(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) -#define SHOW_SERVER_ERROR_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) ERROR(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) -#define SHOW_SERVER_ERROR_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) ERROR(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) +#define SHOW_SERVER_ERROR_1(COMPONANT,MESSAGE,ARG1) SHOW_SERVER_ERROR(COMPONANT,FORMAT_1(MESSAGE,ARG1)) +#define SHOW_SERVER_ERROR_2(COMPONANT,MESSAGE,ARG1,ARG2) SHOW_SERVER_ERROR(COMPONANT,FORMAT_2(MESSAGE,ARG1,ARG2)) +#define SHOW_SERVER_ERROR_3(COMPONANT,MESSAGE,ARG1,ARG2,ARG3) SHOW_SERVER_ERROR(COMPONANT,FORMAT_3(MESSAGE,ARG1,ARG2,ARG3)) +#define SHOW_SERVER_ERROR_4(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4) SHOW_SERVER_ERROR(COMPONANT,FORMAT_4(MESSAGE,ARG1,ARG2,ARG3,ARG4)) +#define SHOW_SERVER_ERROR_5(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5) SHOW_SERVER_ERROR(COMPONANT,FORMAT_5(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5)) +#define SHOW_SERVER_ERROR_6(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6) SHOW_SERVER_ERROR(COMPONANT,FORMAT_6(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6)) +#define SHOW_SERVER_ERROR_7(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7) SHOW_SERVER_ERROR(COMPONANT,FORMAT_7(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7)) +#define SHOW_SERVER_ERROR_8(COMPONANT,MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8) SHOW_SERVER_ERROR(COMPONANT,FORMAT_8(MESSAGE,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8)) From 48c87eb764153f5781ecbec683e8dc29b0c4664c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Brostr=C3=B6m=2EA=20=7C=20Evul?= Date: Wed, 17 Jul 2024 12:37:47 +0200 Subject: [PATCH 06/15] Changed attendance functions and module not return a copy pastable dialogue (#1214) --- cScripts/cScripts_postInit.sqf | 2 +- .../functions/init/fn_init_eventHandlers.sqf | 30 +++++++- .../functions/systems/fn_getAttendance.sqf | 74 ++++++++++++++----- 3 files changed, 81 insertions(+), 25 deletions(-) diff --git a/cScripts/cScripts_postInit.sqf b/cScripts/cScripts_postInit.sqf index e070e0b5e..030bc830a 100644 --- a/cScripts/cScripts_postInit.sqf +++ b/cScripts/cScripts_postInit.sqf @@ -29,7 +29,7 @@ if (EGVAR(Settings,showDiaryRecords)) then { call EFUNC(civ,init); onPlayerConnected { - [QEGVAR(log,player), [name player]] call CBA_fnc_serverEvent; + [QEGVAR(log,player), [getPlayerUID player, player]] call CBA_fnc_serverEvent; }; INFO("postInit", "Initialization completed."); diff --git a/cScripts/functions/init/fn_init_eventHandlers.sqf b/cScripts/functions/init/fn_init_eventHandlers.sqf index 889c5f7d3..3622a21e7 100644 --- a/cScripts/functions/init/fn_init_eventHandlers.sqf +++ b/cScripts/functions/init/fn_init_eventHandlers.sqf @@ -40,8 +40,30 @@ INFO("InitEventHandlers","Creating Server EventHandlers"); }] call CBA_fnc_addEventHandler; [QEGVAR(log,player), { - _this params ["_playerName"]; - private _playerLog = missionNamespace getVariable [QEGVAR(log,players), []]; - _playerLog pushBack _playerName; - missionNamespace setVariable [QEGVAR(log,players), _playerLog]; + params ["_guid","_player"]; + private _playerLog = GETMVAR(EGVAR(log,players),createHashMap); + INFO_3("PlayerLog","Connected %1 [%2] (GUID: %3)",name _player,typeOf _player,_guid); + + if (!isNil{_playerLog get _guid}) then { + INFO_1("PlayerLog","Updating Log Entry [%1]", isNil{_playerLog get _guid}); + private _data = _playerLog get _guid; + + private _connections = _data get "connections"; + _connections pushBack systemTimeUTC; + _data set ["connections", _connections]; + + _data set ["loadout", typeOf _player]; + + _playerLog set [_guid,_data]; + } else { + INFO_1("PlayerLog", "Creating Log Entry [%1]", isNil{_playerLog get _guid}); + private _entry = createHashMapFromArray [ + ['name', name _player], + ['loadout', typeOf _player], + ['connectTime', systemTimeUTC], + ['connections', [systemTimeUTC]] + ]; + _playerLog set [_guid,_entry]; + }; + SETMVAR(EGVAR(log,players),_playerLog); }] call CBA_fnc_addEventHandler; \ No newline at end of file diff --git a/cScripts/functions/systems/fn_getAttendance.sqf b/cScripts/functions/systems/fn_getAttendance.sqf index c89a4f7f5..3ab16a4d5 100644 --- a/cScripts/functions/systems/fn_getAttendance.sqf +++ b/cScripts/functions/systems/fn_getAttendance.sqf @@ -15,25 +15,59 @@ * */ -private _playerLog = missionNamespace getVariable [QEGVAR(log,players), []]; +private _loggedPlayer = GETMVAR(EGVAR(log,players),[]); -// Rpt -["=================================================== START", "Attendance"] call FUNC(info); -[format ["Attendance (Entries: %1)", count _playerLog], "Attendance"] call FUNC(info); +private _header = format["=== Attendance (Entries: %1) ===", count _loggedPlayer]; + +private _dateTime = systemTimeUTC apply { if (_x < 10) then { "0" + str _x } else { str _x } }; +private _formatDateTime = format["Date: %1-%2-%3 %4:%5z",_dateTime#0,_dateTime#1,_dateTime#2,_dateTime#3,_dateTime#4]; + +// Export +private _entries = [_header, endl, _formatDateTime, endl, endl]; { - _x params ["_name"]; - [_name, "Attendance", false, false] call FUNC(info); -} forEach _playerLog; - -["=================================================== END", "Attendence"] call FUNC(info); - -// Hint -[ - [], - ["All attended players have been"], - ["to your RPT log..."], - [""], - [""] -] call CBA_fnc_notify; - -_playerLog \ No newline at end of file + private _name = _y get "name"; + + private _loadout = _y get "loadout"; + private _missionConfig = missionConfigFile >> "CfgLoadouts" >> _loadout; + private _displayName = getText (_missionConfig >> "displayName"); + if (_displayName == "") then { + private _config = configFile >> "CfgLoadouts" >> _loadout; + _displayName = getText (_config >> "displayName"); + }; + + private _connectTime = (_y get "connectTime") apply { if (_x < 10) then { "0" + str _x } else { str _x } }; + private _formatConnectTime = format["%1-%2-%3 %4:%5z",_connectTime#0,_connectTime#1,_connectTime#2,_connectTime#3,_connectTime#4]; + + private _connections = count (_y get "connections"); + + _entries append [_name, " (", _displayName, ") ", _formatConnectTime, " (Connected ", str _connections, " time(s))", endl]; +} forEach _loggedPlayer; + +private _export = composeText _entries; +["Mission attendees", str _export] call zen_common_fnc_exportText; + + +// RPT +SHOW_INFO("Attendance",_header); +SHOW_INFO("Attendance",_formatDateTime); +{ + private _name = _y get "name"; + + private _loadout = _y get "loadout"; + private _missionConfig = missionConfigFile >> "CfgLoadouts" >> _loadout; + private _displayName = getText (_missionConfig >> "displayName"); + if (_displayName == "") then { + private _config = configFile >> "CfgLoadouts" >> _loadout; + _displayName = getText (_config >> "displayName"); + }; + + private _connectTime = (_y get "connectTime") apply { if (_x < 10) then { "0" + str _x } else { str _x } }; + private _formatConnectTime = format["%1-%2-%3 %4:%5z",_connectTime#0,_connectTime#1,_connectTime#2,_connectTime#3,_connectTime#4]; + + private _connections = count (_y get "connections"); + + private _output = [_name, " (", _displayName, " [", _loadout,"]) ", _formatConnectTime, " (Connected ", str _connections, " time(s))"] joinString ""; + SHOW_INFO("Attendance",_output); +} forEach _loggedPlayer; + +SHOW_INFO("Attendance","================================"); From b186778dfe80486e7a87f991ad79ab3a7915e0f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Brostr=C3=B6m=2EA=20=7C=20Evul?= Date: Wed, 17 Jul 2024 12:38:21 +0200 Subject: [PATCH 07/15] Changed so isCurator now also return true if your a curator and added a missionAdmin check that check if player is curator or admin (#1213) --- cScripts/CfgFunctions.hpp | 2 +- .../functions/players/fn_player_isCurator.sqf | 4 +++- .../players/fn_player_isMissionAdmin.sqf | 21 +++++++++++++++++++ .../functions/systems/fn_allowLoadout.sqf | 1 + 4 files changed, 26 insertions(+), 2 deletions(-) create mode 100644 cScripts/functions/players/fn_player_isMissionAdmin.sqf diff --git a/cScripts/CfgFunctions.hpp b/cScripts/CfgFunctions.hpp index da9d39b66..7fb540af2 100644 --- a/cScripts/CfgFunctions.hpp +++ b/cScripts/CfgFunctions.hpp @@ -68,7 +68,7 @@ class cScripts { class player_getRole {}; class player_isCurator {}; - + class player_isMissionAdmin {}; class unit_setTeamColor {}; class unit_getName {}; diff --git a/cScripts/functions/players/fn_player_isCurator.sqf b/cScripts/functions/players/fn_player_isCurator.sqf index 558331386..6edb4ef24 100644 --- a/cScripts/functions/players/fn_player_isCurator.sqf +++ b/cScripts/functions/players/fn_player_isCurator.sqf @@ -10,10 +10,12 @@ * true/False * * Example: - * call cScripts_fnc_unit_isCurator + * call cScripts_fnc_player_isCurator * */ +if (!isNull (getAssignedCuratorLogic player)) exitWith {true}; + private _curator = player getVariable [QEGVAR(Player,Unit), ""]; _curator = toLower _curator; if (_curator == "s3") exitWith {true}; diff --git a/cScripts/functions/players/fn_player_isMissionAdmin.sqf b/cScripts/functions/players/fn_player_isMissionAdmin.sqf new file mode 100644 index 000000000..523924839 --- /dev/null +++ b/cScripts/functions/players/fn_player_isMissionAdmin.sqf @@ -0,0 +1,21 @@ +#include "..\script_component.hpp"; +/* + * Author: SGT.Brostrom.A + * This function return true if a player is curator or admin + * + * Arguments: + * None + * + * Return Value: + * True/False + * + * Example: + * call cScripts_fnc_player_isMissionAdmin + * + */ + +if (!isNull (getAssignedCuratorLogic player)) exitWith {true}; +if (call BIS_fnc_admin > 1) exitWith {true}; +if (!isMultiplayer || {is3DENMultiplayer}) exitWith {true}; + +false \ No newline at end of file diff --git a/cScripts/functions/systems/fn_allowLoadout.sqf b/cScripts/functions/systems/fn_allowLoadout.sqf index aa518c7d9..849e34263 100644 --- a/cScripts/functions/systems/fn_allowLoadout.sqf +++ b/cScripts/functions/systems/fn_allowLoadout.sqf @@ -33,6 +33,7 @@ if (EGVAR(Staging,showAllLoadouts)) exitWith {true}; // Check if player is Zeus or Debug if (call EFUNC(player,isCurator)) exitWith {true}; +if (call EFUNC(player,isMissionAdmin)) exitWith {true}; // Check if does not have any company private _playerCompany = call EFUNC(player,getCompany); From ccfadf8d7f22d64128a62131201eff224b0a53df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Brostr=C3=B6m=2EA=20=7C=20Evul?= Date: Wed, 17 Jul 2024 12:38:59 +0200 Subject: [PATCH 08/15] Removed Tagging system (#1209) --- cScripts/CfgFunctions.hpp | 1 - cScripts/cScripts_preInit.sqf | 5 --- .../functions/init/fn_init_aceTagging.sqf | 44 ------------------- cScripts/initSettings.inc.sqf | 10 ----- 4 files changed, 60 deletions(-) delete mode 100644 cScripts/functions/init/fn_init_aceTagging.sqf diff --git a/cScripts/CfgFunctions.hpp b/cScripts/CfgFunctions.hpp index 7fb540af2..34ec8b890 100644 --- a/cScripts/CfgFunctions.hpp +++ b/cScripts/CfgFunctions.hpp @@ -2,7 +2,6 @@ class cScripts { class init { file = "cScripts\functions\init"; class init_aceArsenal {}; - class init_aceTagging {}; class init_aceItemReplace {}; class init_skillAdjustment {}; diff --git a/cScripts/cScripts_preInit.sqf b/cScripts/cScripts_preInit.sqf index 670fbf9e0..24f1c47aa 100644 --- a/cScripts/cScripts_preInit.sqf +++ b/cScripts/cScripts_preInit.sqf @@ -9,7 +9,6 @@ INFO(if (is3DEN) then {"EDEN"} else {"preInit"}, "Initializing CBA Settings...") // Check installed moduels EGVAR(patches,usesACE) = isClass (configFile >> "CfgPatches" >> "ace_main"); EGVAR(patches,usesACEArsenal) = isClass (configFile >> "CfgPatches" >> "ace_arsenal"); -EGVAR(patches,usesACETagging) = isClass (configFile >> "CfgPatches" >> "ace_tagging"); EGVAR(patches,usesACEX) = isClass (configFile >> "CfgPatches" >> "acex_main"); EGVAR(patches,usesKat) = isClass (configFile >> "CfgPatches" >> "kat_main"); EGVAR(patches,usesACRE) = isClass (configFile >> "CfgPatches" >> "acre_sys_core"); @@ -46,10 +45,6 @@ EGVAR(PYLONS,DONE) = false; GVAR(PYLONS) = call EFUNC(init,pylons); EGVAR(PYLONS,DONE) = true; -if (EGVAR(Settings,allowCustomTagging)) then { - call EFUNC(init,aceTagging); -}; - call EFUNC(init,chatCommands); call EFUNC(init,zenModuels); diff --git a/cScripts/functions/init/fn_init_aceTagging.sqf b/cScripts/functions/init/fn_init_aceTagging.sqf deleted file mode 100644 index cb036ad06..000000000 --- a/cScripts/functions/init/fn_init_aceTagging.sqf +++ /dev/null @@ -1,44 +0,0 @@ -#include "..\script_component.hpp"; -/* - * Author: CPL.Brostrom.A - * This adds custom spray tags to all units. - * - * Example: - * call cScripts_fnc_init_aceTagging - * - * Public: No - */ - -if (!isServer) exitWith {}; -if (!EGVAR(patches,usesACETagging)) exitWith {}; -if (!isNil{missionNamespace getVariable QEGVAR(mission,tagging)}) exitWith {SHOW_WARNING("init", "Tagging already applied.")}; - -[ "cScripts_tagging_cav_black", - "Cav Black", - "ACE_SpraypaintBlack", - ["z\cav\addons\textures\data\tagging\tag_cav_black_ca.paa"], - "z\cav\addons\textures\data\tagging\icon_action_black_ca.paa" -] call ace_tagging_fnc_addCustomTag; - -[ "cScripts_tagging_cav_blue", - "Cav Blue", - "ACE_SpraypaintBlue", - ["z\cav\addons\textures\data\tagging\tag_cav_blue_ca.paa"], - "z\cav\addons\textures\data\tagging\icon_action_blue_ca.paa" -] call ace_tagging_fnc_addCustomTag; - -[ "cScripts_tagging_cav_green", - "Cav Green", - "ACE_SpraypaintGreen", - ["z\cav\addons\textures\data\tagging\tag_cav_green_ca.paa"], - "z\cav\addons\textures\data\tagging\icon_action_green_ca.paa" -] call ace_tagging_fnc_addCustomTag; - -[ "cScripts_tagging_cav_red", - "Cav Red", - "ACE_SpraypaintRed", - ["z\cav\addons\textures\data\tagging\tag_cav_red_ca.paa"], - "z\cav\addons\textures\data\tagging\icon_action_red_ca.paa" -] call ace_tagging_fnc_addCustomTag; - -missionNamespace setVariable [QEGVAR(mission,tagging), true]; diff --git a/cScripts/initSettings.inc.sqf b/cScripts/initSettings.inc.sqf index 240531abe..351810734 100644 --- a/cScripts/initSettings.inc.sqf +++ b/cScripts/initSettings.inc.sqf @@ -86,16 +86,6 @@ private _cScriptSettings = "cScripts Mission Settings"; {}, true ] call CBA_fnc_addSetting; -[ // Tagging - QEGVAR(Settings,allowCustomTagging), - "CHECKBOX", - ["Custom Tagging","Allow players to spray custom taggs."], - [_cScriptSettings, "3; Player"], - true, - true, - {}, - true -] call CBA_fnc_addSetting; [ // Insignia QEGVAR(Settings,allowInsigniaApplication), "CHECKBOX", From c54ad9e387523bf5d2c3a6b417606002b3918fbe Mon Sep 17 00:00:00 2001 From: Zarenx <111392464+Zarenx@users.noreply.github.com> Date: Mon, 22 Jul 2024 13:13:15 +0200 Subject: [PATCH 09/15] Added and updated Viking loadouts and Compositions as well as updated display name and order of comps (#1217) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Broström.A | Evul --- .../1.Cav_Viking_Platoon/composition.sqe | 152 +- .../2.Cav_Bandit_Platoon/composition.sqe | 2 +- .../3.Cav_Misfit_Platoon/composition.sqe | 2 +- .../composition.sqe | 0 .../header.sqe | 2 +- Compositions/4.SABRE_Platoon/composition.sqe | 1462 ----------------- Compositions/4.SABRE_Platoon/header.sqe | 13 - .../composition.sqe | 0 .../header.sqe | 2 +- .../composition.sqe | 0 .../header.sqe | 2 +- .../composition.sqe | 0 .../header.sqe | 2 +- .../composition.sqe | 0 .../header.sqe | 2 +- cScripts/CfgLoadouts.hpp | 1 + cScripts/Loadouts/CfgLoadouts_Bravo_Crew.hpp | 8 +- .../Loadouts/CfgLoadouts_Bravo_Viking.hpp | 107 +- .../CfgLoadouts_Bravo_Viking_Weapons.hpp | 53 + .../Loadouts/CfgLoadouts_Charlie_Squad.hpp | 19 +- .../Loadouts/CfgLoadouts_Charlie_Weapon.hpp | 4 +- .../systems/fn_setupLoadoutCategories.sqf | 12 +- 22 files changed, 191 insertions(+), 1654 deletions(-) rename Compositions/{5.ATLAS_Platoon => 4.Cav_ATLAS_Platoon}/composition.sqe (100%) rename Compositions/{5.ATLAS_Platoon => 4.Cav_ATLAS_Platoon}/header.sqe (91%) delete mode 100644 Compositions/4.SABRE_Platoon/composition.sqe delete mode 100644 Compositions/4.SABRE_Platoon/header.sqe rename Compositions/{6.Cav_JTAC_Addon => 5.Cav_JTAC_Addon}/composition.sqe (100%) rename Compositions/{6.Cav_JTAC_Addon => 5.Cav_JTAC_Addon}/header.sqe (89%) rename Compositions/{7.Cav_Rotary_Aviation => 6.Cav_Rotary_Aviation}/composition.sqe (100%) rename Compositions/{7.Cav_Rotary_Aviation => 6.Cav_Rotary_Aviation}/header.sqe (74%) rename Compositions/{8.Cav_Fixed_Wing_Aviation => 7.Cav_Fixed_Wing_Aviation}/composition.sqe (100%) rename Compositions/{8.Cav_Fixed_Wing_Aviation => 7.Cav_Fixed_Wing_Aviation}/header.sqe (72%) rename Compositions/{9.Cav_S3_Mission_Controller => 8.Cav_S3_Mission_Controller}/composition.sqe (100%) rename Compositions/{9.Cav_S3_Mission_Controller => 8.Cav_S3_Mission_Controller}/header.sqe (82%) create mode 100644 cScripts/Loadouts/CfgLoadouts_Bravo_Viking_Weapons.hpp diff --git a/Compositions/1.Cav_Viking_Platoon/composition.sqe b/Compositions/1.Cav_Viking_Platoon/composition.sqe index 74fe4b6e5..114558504 100644 --- a/Compositions/1.Cav_Viking_Platoon/composition.sqe +++ b/Compositions/1.Cav_Viking_Platoon/composition.sqe @@ -1,5 +1,5 @@ version=54; -center[]={2207.0325,5,543.07465}; +center[]={1172.4204,5,6143.8301}; class items { items=7; @@ -22,7 +22,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-3.0131836,0.0014390945,14.973816}; + position[]={-2.9891357,0.0014390945,14.947754}; angles[]={0,3.1415927,0}; }; side="West"; @@ -80,7 +80,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-0.27075195,0.89242268,12.547058}; + position[]={-0.2467041,0.89242268,12.520996}; angles[]={-0,1.5526583,0}; }; side="Empty"; @@ -141,7 +141,7 @@ class items dataType="Object"; class PositionInfo { - position[]={14.281982,0.89242268,2.241394}; + position[]={14.30603,0.89242268,2.215332}; }; side="Empty"; flags=4; @@ -201,7 +201,7 @@ class items dataType="Comment"; class PositionInfo { - position[]={1.7185059,0,7.0656128}; + position[]={1.7425537,0,7.0395508}; }; title="Stryker Scout Platoon (Tooltip)"; description="B/1-7's Stryker Scout Platoon is a hybrid fighting force that specializes in scout tasks and missions. They handle everything from Screening Operations, Guard Operations, Ambushes, Area Reconnaissance, and all other general infantry tasks. While the composition utilizes 6 Strykers for the Platoon, unless it's completely full, they'll mostly only use 4 or 5. Viking does NOT require a JTAC to call in CAS as they are trained and capable of doing so internally."; @@ -212,7 +212,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-6.5510254,2.6142888,19.331238}; + position[]={-6.5269775,2.6142888,19.305176}; }; side="Empty"; flags=4; @@ -259,7 +259,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-3.0131836,0.0014390945,16.473816}; + position[]={-2.9891357,0.0014390945,16.447754}; angles[]={0,3.1415927,0}; }; side="West"; @@ -322,7 +322,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-3.0131836,0.0014390945,17.973816}; + position[]={-2.9891357,0.0014390945,17.947754}; angles[]={0,3.1415927,0}; }; side="West"; @@ -411,7 +411,7 @@ class items dataType="Object"; class PositionInfo { - position[]={2.9868164,0.0014390945,14.973816}; + position[]={2.4403076,0.0014390945,15.67041}; angles[]={0,3.1415927,0}; }; side="West"; @@ -462,7 +462,7 @@ class items dataType="Object"; class PositionInfo { - position[]={2.9870605,0.0014390945,16.473816}; + position[]={2.4405518,0.0014390945,17.17041}; angles[]={0,3.1415927,0}; }; side="West"; @@ -532,7 +532,7 @@ class items dataType="Object"; class PositionInfo { - position[]={6.2126465,2.6142888,19.264832}; + position[]={6.2366943,2.6142888,19.23877}; angles[]={-0,0.005982683,0}; }; side="Empty"; @@ -583,7 +583,7 @@ class items dataType="Object"; class PositionInfo { - position[]={1.6328125,0.0014390945,15.903015}; + position[]={1.6568604,0.0014390945,15.876953}; angles[]={0,3.1415927,0}; }; side="West"; @@ -671,7 +671,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-11.76416,0.0014390945,-0.28985596}; + position[]={-11.740112,0.0014390945,-0.31591797}; }; side="West"; flags=6; @@ -720,7 +720,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-13.763916,0.0014390945,-1.289856}; + position[]={-13.739868,0.0014390945,-1.315918}; }; side="West"; flags=5; @@ -770,7 +770,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-13.763916,0.0014390945,-2.789856}; + position[]={-13.739868,0.0014390945,-2.815918}; }; side="West"; flags=5; @@ -819,7 +819,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-13.763916,0.0014390945,-4.289856}; + position[]={-13.739868,0.0014390945,-4.315918}; }; side="West"; flags=4; @@ -868,7 +868,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-13.763916,0.0014390945,-5.789856}; + position[]={-13.739868,0.0014390945,-5.815918}; }; side="West"; flags=5; @@ -917,7 +917,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-9.763916,0.0014390945,-1.289856}; + position[]={-9.7398682,0.0014390945,-1.315918}; }; side="West"; flags=5; @@ -967,7 +967,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-9.763916,0.0014390945,-2.789856}; + position[]={-9.7398682,0.0014390945,-2.815918}; }; side="West"; flags=5; @@ -1016,7 +1016,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-9.763916,0.0014390945,-4.289856}; + position[]={-9.7398682,0.0014390945,-4.315918}; }; side="West"; flags=4; @@ -1065,7 +1065,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-9.763916,0.0014390945,-5.789856}; + position[]={-9.7398682,0.0014390945,-5.815918}; }; side="West"; flags=5; @@ -1121,7 +1121,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-8.6936035,0.89242268,1.107605}; + position[]={-8.6695557,0.89242268,1.081543}; }; side="Empty"; flags=4; @@ -1181,7 +1181,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-12.626221,2.6142888,7.7550659}; + position[]={-12.602173,2.6142888,7.7290039}; }; side="Empty"; flags=4; @@ -1228,7 +1228,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-11.76416,0.0014390945,-2.289856}; + position[]={-11.740112,0.0014390945,-2.315918}; }; side="West"; flags=7; @@ -1290,7 +1290,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-11.76416,0.0014390945,-3.789856}; + position[]={-11.740112,0.0014390945,-3.815918}; }; side="West"; flags=5; @@ -1378,7 +1378,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-4.1750488,0.0014390945,-4.7088013}; + position[]={-4.151001,0.0014390945,-4.7348633}; }; side="West"; flags=6; @@ -1427,7 +1427,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-6.1750488,0.0014390945,-5.7088013}; + position[]={-6.151001,0.0014390945,-5.7348633}; }; side="West"; flags=5; @@ -1477,7 +1477,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-6.1750488,0.0014390945,-7.2088013}; + position[]={-6.151001,0.0014390945,-7.2348633}; }; side="West"; flags=5; @@ -1526,7 +1526,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-6.1750488,0.0014390945,-8.7088013}; + position[]={-6.151001,0.0014390945,-8.7348633}; }; side="West"; flags=4; @@ -1575,7 +1575,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-6.1750488,0.0014390945,-10.208801}; + position[]={-6.151001,0.0014390945,-10.234863}; }; side="West"; flags=5; @@ -1624,7 +1624,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-2.1750488,0.0014390945,-5.7088013}; + position[]={-2.151001,0.0014390945,-5.7348633}; }; side="West"; flags=5; @@ -1674,7 +1674,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-2.1750488,0.0014390945,-7.2088013}; + position[]={-2.151001,0.0014390945,-7.2348633}; }; side="West"; flags=5; @@ -1723,7 +1723,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-2.1750488,0.0014390945,-8.7088013}; + position[]={-2.151001,0.0014390945,-8.7348633}; }; side="West"; flags=4; @@ -1772,7 +1772,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-2.1750488,0.0014390945,-10.208801}; + position[]={-2.151001,0.0014390945,-10.234863}; }; side="West"; flags=5; @@ -1828,7 +1828,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-1.677002,0.89242268,-2.3240356}; + position[]={-1.6529541,0.89242268,-2.3500977}; }; side="Empty"; flags=4; @@ -1888,7 +1888,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-4.8522949,2.6142888,3.5900269}; + position[]={-4.8282471,2.6142888,3.5639648}; }; side="Empty"; flags=4; @@ -1935,7 +1935,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-4.1750488,0.0014390945,-6.7088013}; + position[]={-4.151001,0.0014390945,-6.7348633}; }; side="West"; flags=7; @@ -1997,7 +1997,7 @@ class items dataType="Object"; class PositionInfo { - position[]={-4.1750488,0.0014390945,-8.2088013}; + position[]={-4.151001,0.0014390945,-8.2348633}; }; side="West"; flags=5; @@ -2085,7 +2085,7 @@ class items dataType="Object"; class PositionInfo { - position[]={4.3249512,0.0014390945,-4.7088013}; + position[]={4.348999,0.0014390945,-4.7348633}; }; side="West"; flags=6; @@ -2134,7 +2134,7 @@ class items dataType="Object"; class PositionInfo { - position[]={2.3249512,0.0014390945,-5.7088013}; + position[]={2.348999,0.0014390945,-5.7348633}; }; side="West"; flags=5; @@ -2184,7 +2184,7 @@ class items dataType="Object"; class PositionInfo { - position[]={2.3249512,0.0014390945,-7.2088013}; + position[]={2.348999,0.0014390945,-7.2348633}; }; side="West"; flags=5; @@ -2233,7 +2233,7 @@ class items dataType="Object"; class PositionInfo { - position[]={2.3249512,0.0014390945,-8.7088013}; + position[]={2.348999,0.0014390945,-8.7348633}; }; side="West"; flags=4; @@ -2282,7 +2282,7 @@ class items dataType="Object"; class PositionInfo { - position[]={2.3249512,0.0014390945,-10.208801}; + position[]={2.348999,0.0014390945,-10.234863}; }; side="West"; flags=5; @@ -2331,7 +2331,7 @@ class items dataType="Object"; class PositionInfo { - position[]={6.3249512,0.0014390945,-5.7088013}; + position[]={6.348999,0.0014390945,-5.7348633}; }; side="West"; flags=5; @@ -2381,7 +2381,7 @@ class items dataType="Object"; class PositionInfo { - position[]={6.3249512,0.0014390945,-7.2088013}; + position[]={6.348999,0.0014390945,-7.2348633}; }; side="West"; flags=5; @@ -2430,7 +2430,7 @@ class items dataType="Object"; class PositionInfo { - position[]={6.3249512,0.0014390945,-8.7088013}; + position[]={6.348999,0.0014390945,-8.7348633}; }; side="West"; flags=4; @@ -2479,7 +2479,7 @@ class items dataType="Object"; class PositionInfo { - position[]={6.3249512,0.0014390945,-10.208801}; + position[]={6.348999,0.0014390945,-10.234863}; }; side="West"; flags=5; @@ -2535,7 +2535,7 @@ class items dataType="Object"; class PositionInfo { - position[]={1.5134277,0.89242268,-2.1970825}; + position[]={1.5374756,0.89242268,-2.2231445}; }; side="Empty"; flags=4; @@ -2595,7 +2595,7 @@ class items dataType="Object"; class PositionInfo { - position[]={4.0871582,2.6142888,3.8380737}; + position[]={4.1112061,2.6142888,3.8120117}; }; side="Empty"; flags=4; @@ -2642,7 +2642,7 @@ class items dataType="Object"; class PositionInfo { - position[]={4.3249512,0.0014390945,-6.7088013}; + position[]={4.348999,0.0014390945,-6.7348633}; }; side="West"; flags=7; @@ -2704,7 +2704,7 @@ class items dataType="Object"; class PositionInfo { - position[]={4.3249512,0.0014390945,-8.2088013}; + position[]={4.348999,0.0014390945,-8.2348633}; }; side="West"; flags=5; @@ -2792,7 +2792,7 @@ class items dataType="Object"; class PositionInfo { - position[]={11.27124,0.0014390945,-1.1074829}; + position[]={11.295288,0.0014390945,-1.1333008}; }; side="West"; flags=6; @@ -2841,7 +2841,7 @@ class items dataType="Object"; class PositionInfo { - position[]={9.3249512,0.0014390945,-1.2088013}; + position[]={9.3486328,0.0014390945,-1.2353516}; }; side="West"; flags=5; @@ -2849,7 +2849,7 @@ class items { skill=0.44999999; rank="CORPORAL"; - init="this setGroupid [""VIKING-4""];" \n "this setVariable [""cScripts_Player_Unit"", ""VIKING-4""];"; + init="this setGroupid [""VIKING-4""];" \n "this setVariable [""cScripts_Player_Unit"", ""VIKING-4""];" \n "this setVariable [""cScripts_Gear_LoadoutClass"", ""Cav_B_B_Weapons_M240B_FireTeamLeader_F""];"; description="Alpha Team Leader"; isPlayable=1; }; @@ -2891,14 +2891,14 @@ class items dataType="Object"; class PositionInfo { - position[]={9.3244629,0.0014390945,-2.7086792}; + position[]={9.3486328,0.0014390945,-2.734375}; }; side="West"; flags=5; class Attributes { skill=0.40000001; - init="this setGroupid [""VIKING-4""];" \n "this setVariable [""cScripts_Player_Unit"", ""VIKING-4""];"; + init="this setGroupid [""VIKING-4""];" \n "this setVariable [""cScripts_Player_Unit"", ""VIKING-4""];" \n "this setVariable [""cScripts_Gear_LoadoutClass"", ""Cav_B_B_Weapons_M240B_Machinegunner_F""];"; description="Alpha Weapons Gunner"; isPlayable=1; }; @@ -2940,14 +2940,14 @@ class items dataType="Object"; class PositionInfo { - position[]={9.3244629,0.0014390945,-4.2086792}; + position[]={9.3486328,0.0014390945,-4.234375}; }; side="West"; flags=4; class Attributes { skill=0.40000001; - init="this setGroupid [""VIKING-4""];" \n "this setVariable [""cScripts_Player_Unit"", ""VIKING-4""];"; + init="this setGroupid [""VIKING-4""];" \n "this setVariable [""cScripts_Player_Unit"", ""VIKING-4""];" \n "this setVariable [""cScripts_Gear_LoadoutClass"", ""Cav_B_B_Weapons_M240B_MachinegunnerAmmoBearer_F""];"; description="Alpha Weapons Assistant"; isPlayable=1; }; @@ -2989,7 +2989,7 @@ class items dataType="Object"; class PositionInfo { - position[]={13.324951,0.0014390945,-1.2088013}; + position[]={13.348633,0.0014390945,-1.2353516}; }; side="West"; flags=5; @@ -2997,11 +2997,11 @@ class items { skill=0.44999999; rank="CORPORAL"; - init="this setGroupid [""VIKING-4""];" \n "this setVariable [""cScripts_Player_Unit"", ""VIKING-4""];"; + init="this setGroupid [""VIKING-4""];" \n "this setVariable [""cScripts_Player_Unit"", ""VIKING-4""];" \n "this setVariable [""cScripts_Gear_LoadoutClass"", ""Cav_B_B_Weapons_M240B_FireTeamLeader_F""];"; description="Bravo Team Leader"; isPlayable=1; }; - id=77; + id=76; type="Cav_B_B_Scout_Bravo_TeamLead_F"; class CustomAttributes { @@ -3039,18 +3039,18 @@ class items dataType="Object"; class PositionInfo { - position[]={13.313232,0.0014390945,-2.7208862}; + position[]={13.337646,0.0014390945,-2.7460938}; }; side="West"; flags=5; class Attributes { skill=0.40000001; - init="this setGroupid [""VIKING-4""];" \n "this setVariable [""cScripts_Player_Unit"", ""VIKING-4""];"; + init="this setGroupid [""VIKING-4""];" \n "this setVariable [""cScripts_Player_Unit"", ""VIKING-4""];" \n "this setVariable [""cScripts_Gear_LoadoutClass"", ""Cav_B_B_Weapons_M240B_Machinegunner_F""];"; description="Bravo Weapons Gunner"; isPlayable=1; }; - id=78; + id=77; type="Cav_B_B_Scout_Bravo_AutomaticRifleman_F"; class CustomAttributes { @@ -3088,18 +3088,18 @@ class items dataType="Object"; class PositionInfo { - position[]={13.324463,0.0014390945,-4.2086792}; + position[]={13.348633,0.0014390945,-4.234375}; }; side="West"; flags=4; class Attributes { skill=0.40000001; - init="this setGroupid [""VIKING-4""];" \n "this setVariable [""cScripts_Player_Unit"", ""VIKING-4""];"; + init="this setGroupid [""VIKING-4""];" \n "this setVariable [""cScripts_Player_Unit"", ""VIKING-4""];" \n "this setVariable [""cScripts_Gear_LoadoutClass"", ""Cav_B_B_Weapons_M240B_MachinegunnerAmmoBearer_F""];"; description="Bravo Weapons Assistant"; isPlayable=1; }; - id=79; + id=78; type="Cav_B_B_Scout_Rifleman_F"; class CustomAttributes { @@ -3137,7 +3137,7 @@ class items dataType="Object"; class PositionInfo { - position[]={11.37915,0.0014390945,-3.071167}; + position[]={11.403564,0.0014390945,-3.097168}; }; side="West"; flags=5; @@ -3145,11 +3145,11 @@ class items { skill=0.44999999; rank="CORPORAL"; - init="this setGroupid [""VIKING-4""];" \n "this setVariable [""cScripts_Player_Unit"", ""VIKING-4""];"; + init="this setGroupid [""VIKING-4""];" \n "this setVariable [""cScripts_Player_Unit"", ""VIKING-4""];" \n "this setVariable [""cScripts_Gear_LoadoutClass"", ""Cav_B_B_Weapons_MAAWS_MAAWSGunner_F""];"; description="Charlie Team Leader"; isPlayable=1; }; - id=90; + id=79; type="Cav_B_B_Scout_Bravo_TeamLead_F"; class CustomAttributes { @@ -3187,18 +3187,18 @@ class items dataType="Object"; class PositionInfo { - position[]={11.293701,0.0014390945,-4.3530273}; + position[]={11.317627,0.0014390945,-4.3793945}; }; side="West"; flags=5; class Attributes { skill=0.40000001; - init="this setGroupid [""VIKING-4""];" \n "this setVariable [""cScripts_Player_Unit"", ""VIKING-4""];"; + init="this setGroupid [""VIKING-4""];" \n "this setVariable [""cScripts_Player_Unit"", ""VIKING-4""];" \n "this setVariable [""cScripts_Gear_LoadoutClass"", ""Cav_B_B_Weapons_MAAWS_MAAWSAssistant_F""];"; description="Charlie Weapons Gunner"; isPlayable=1; }; - id=92; + id=80; type="Cav_B_B_Scout_Bravo_CombatLifeSaver_F"; class CustomAttributes { @@ -3243,7 +3243,7 @@ class items dataType="Object"; class PositionInfo { - position[]={11.01001,2.6142888,6.8165894}; + position[]={11.034058,2.6142888,6.7905273}; }; side="Empty"; flags=4; @@ -3290,7 +3290,7 @@ class items dataType="Object"; class PositionInfo { - position[]={12.239258,0.0014390945,-5.8873291}; + position[]={12.263306,0.0014390945,-5.9130859}; }; side="West"; flags=7; @@ -3352,7 +3352,7 @@ class items dataType="Object"; class PositionInfo { - position[]={10.344971,0.0014390945,-5.8269653}; + position[]={10.369019,0.0014390945,-5.8530273}; }; side="West"; flags=5; diff --git a/Compositions/2.Cav_Bandit_Platoon/composition.sqe b/Compositions/2.Cav_Bandit_Platoon/composition.sqe index 6699f0bc9..aba914372 100644 --- a/Compositions/2.Cav_Bandit_Platoon/composition.sqe +++ b/Compositions/2.Cav_Bandit_Platoon/composition.sqe @@ -1213,7 +1213,7 @@ class items { rank="SERGEANT"; init="call{this setgroupID[""BANDIT-4""];" \n "this setVariable [""cScripts_Player_Unit"", ""BANDIT-4""];}"; - description="Squad Leader@BANDIT-4"; + description="Weapons Squad Leader@BANDIT-4"; isPlayable=1; }; id=397; diff --git a/Compositions/3.Cav_Misfit_Platoon/composition.sqe b/Compositions/3.Cav_Misfit_Platoon/composition.sqe index 914efd108..ffcad0cfe 100644 --- a/Compositions/3.Cav_Misfit_Platoon/composition.sqe +++ b/Compositions/3.Cav_Misfit_Platoon/composition.sqe @@ -1216,7 +1216,7 @@ class items { rank="SERGEANT"; init="this setGroupid [""MISFIT-4""];" \n "this setVariable [""cScripts_Player_Unit"", ""MISFIT-4""];"; - description="Squad Leader@MISFIT-4"; + description="Weapons Squad Leader@MISFIT-4"; isPlayable=1; }; id=467; diff --git a/Compositions/5.ATLAS_Platoon/composition.sqe b/Compositions/4.Cav_ATLAS_Platoon/composition.sqe similarity index 100% rename from Compositions/5.ATLAS_Platoon/composition.sqe rename to Compositions/4.Cav_ATLAS_Platoon/composition.sqe diff --git a/Compositions/5.ATLAS_Platoon/header.sqe b/Compositions/4.Cav_ATLAS_Platoon/header.sqe similarity index 91% rename from Compositions/5.ATLAS_Platoon/header.sqe rename to Compositions/4.Cav_ATLAS_Platoon/header.sqe index 809d67436..02cfd3d22 100644 --- a/Compositions/5.ATLAS_Platoon/header.sqe +++ b/Compositions/4.Cav_ATLAS_Platoon/header.sqe @@ -1,5 +1,5 @@ version=54; -name="5.ATLAS_Platoon_DEVBUILD"; +name="4.ATLAS_Platoon_DEVBUILD"; author="=7Cav=CPL.Zaren.T"; category="Cav_EdSubcat_Deploy_Platoon"; requiredAddons[]= diff --git a/Compositions/4.SABRE_Platoon/composition.sqe b/Compositions/4.SABRE_Platoon/composition.sqe deleted file mode 100644 index 966a10764..000000000 --- a/Compositions/4.SABRE_Platoon/composition.sqe +++ /dev/null @@ -1,1462 +0,0 @@ -version=54; -center[]={4510.1631,5,256.25546}; -class items -{ - items=4; - class Item0 - { - dataType="Layer"; - name="1. SABRE-1"; - class Entities - { - items=3; - class Item0 - { - dataType="Object"; - class PositionInfo - { - position[]={-2.2612305,0.89242268,1.5154419}; - }; - side="Empty"; - flags=4; - class Attributes - { - init="call{[this,""Bravo"",true,true,true,false,false] call cScripts_fnc_doStarterCrate;}"; - dynamicSimulation=1; - }; - id=1; - type="B_supplyCrate_F"; - class CustomAttributes - { - class Attribute0 - { - property="ace_isRepairFacility"; - expression="if (_value != (if (isNumber (configOf _this >> ""ace_repair_canRepair"")) then {getNumber (configOf _this >> ""ace_repair_canRepair"")} else {(parseNumber (getRepairCargo _this > 0))})) then {_this setVariable ['ace_isRepairFacility', _value, true]}"; - class Value - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - }; - class Attribute1 - { - property="ammoBox"; - expression="[_this,_value] call bis_fnc_initAmmoBox;"; - class Value - { - class data - { - singleType="STRING"; - value="[[[[],[]],[[],[]],[[],[]],[[],[]]],false]"; - }; - }; - }; - class Attribute2 - { - property="ace_isMedicalFacility"; - expression="_this setVariable [""ace_medical_isMedicalFacility"", _value, true];"; - class Value - { - class data - { - singleType="BOOL"; - value=1; - }; - }; - }; - nAttributes=3; - }; - }; - class Item1 - { - dataType="Group"; - side="West"; - class Entities - { - items=3; - class Item0 - { - dataType="Object"; - class PositionInfo - { - position[]={-2.8808594,0.0014390945,-1.0614624}; - }; - side="West"; - flags=6; - class Attributes - { - rank="SERGEANT"; - init="this setGroupid [""SABRE-1""];" \n "this setVariable [""cScripts_Player_Unit"", ""SABRE-1""];"; - description="Tank Platoon Commander@SABRE-1"; - isPlayable=1; - }; - id=3; - type="Cav_B_B_Tank_Commander_F"; - class CustomAttributes - { - class Attribute0 - { - property="ace_isEngineer"; - expression="if !(_value == ([0, 1] select (_this getUnitTrait 'engineer')) || {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; - class Value - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - }; - class Attribute1 - { - property="speaker"; - expression="_this setspeaker _value;"; - class Value - { - class data - { - singleType="STRING"; - value="Male10ENG"; - }; - }; - }; - class Attribute2 - { - property="pitch"; - expression="_this setpitch _value;"; - class Value - { - class data - { - singleType="SCALAR"; - value=1.01; - }; - }; - }; - nAttributes=3; - }; - }; - class Item1 - { - dataType="Object"; - class PositionInfo - { - position[]={-2.8808594,0.0014390945,-2.5612183}; - }; - side="West"; - flags=4; - class Attributes - { - skill=0.40000001; - init="this setGroupid [""SABRE-1""];" \n "this setVariable [""cScripts_Player_Unit"", ""SABRE-1""];"; - description="Tank Gunner@SABRE-1"; - isPlayable=1; - }; - id=4; - type="Cav_B_B_Tank_Gunner_F"; - class CustomAttributes - { - class Attribute0 - { - property="ace_isEngineer"; - expression="if !(_value == ([0, 1] select (_this getUnitTrait 'engineer')) || {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; - class Value - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - }; - class Attribute1 - { - property="speaker"; - expression="_this setspeaker _value;"; - class Value - { - class data - { - singleType="STRING"; - value="Male08ENG"; - }; - }; - }; - class Attribute2 - { - property="pitch"; - expression="_this setpitch _value;"; - class Value - { - class data - { - singleType="SCALAR"; - value=0.94999999; - }; - }; - }; - nAttributes=3; - }; - }; - class Item2 - { - dataType="Object"; - class PositionInfo - { - position[]={-2.8896484,0.0014390945,-4.0758667}; - }; - side="West"; - flags=4; - class Attributes - { - skill=0.40000001; - init="this setGroupid [""SABRE-1""];" \n "this setVariable [""cScripts_Player_Unit"", ""SABRE-1""];"; - description="Tank Driver@SABRE-1"; - isPlayable=1; - }; - id=5; - type="Cav_B_B_Tank_Driver_F"; - class CustomAttributes - { - class Attribute0 - { - property="ace_isEngineer"; - expression="if !(_value == ([0, 1] select (_this getUnitTrait 'engineer')) || {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; - class Value - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - }; - class Attribute1 - { - property="speaker"; - expression="_this setspeaker _value;"; - class Value - { - class data - { - singleType="STRING"; - value="Male08ENG"; - }; - }; - }; - class Attribute2 - { - property="pitch"; - expression="_this setpitch _value;"; - class Value - { - class data - { - singleType="SCALAR"; - value=0.94999999; - }; - }; - }; - nAttributes=3; - }; - }; - }; - class Attributes - { - }; - id=2; - }; - class Item2 - { - dataType="Object"; - class PositionInfo - { - position[]={-7.6137695,2.2639475,1.4544067}; - }; - side="Empty"; - flags=4; - class Attributes - { - textures="Green"; - reportRemoteTargets=1; - receiveRemoteTargets=1; - reportOwnPosition=1; - }; - id=6; - type="B_AFV_Wheeled_01_up_cannon_F"; - class CustomAttributes - { - class Attribute0 - { - property="VehicleCustomization"; - expression="if (local _this) then {([_this] + _value + [true]) call (uinamespace getvariable 'BIS_fnc_initVehicle')};"; - class Value - { - class data - { - singleType="ARRAY"; - class value - { - items=2; - class Item0 - { - class data - { - singleType="ARRAY"; - class value - { - items=2; - class Item0 - { - class data - { - singleType="STRING"; - value="Green"; - }; - }; - class Item1 - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - }; - }; - }; - class Item1 - { - class data - { - singleType="ARRAY"; - class value - { - items=6; - class Item0 - { - class data - { - singleType="STRING"; - value="showCamonetHull"; - }; - }; - class Item1 - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - class Item2 - { - class data - { - singleType="STRING"; - value="showCamonetTurret"; - }; - }; - class Item3 - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - class Item4 - { - class data - { - singleType="STRING"; - value="showSLATHull"; - }; - }; - class Item5 - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - }; - }; - }; - }; - }; - }; - }; - nAttributes=1; - }; - }; - }; - id=0; - }; - class Item1 - { - dataType="Layer"; - name="2. SABRE-2"; - class Entities - { - items=3; - class Item0 - { - dataType="Object"; - class PositionInfo - { - position[]={2.2675781,0.89242268,1.6746216}; - }; - side="Empty"; - flags=4; - class Attributes - { - init="call{[this,""Bravo"",true,true,true,false,false] call cScripts_fnc_doStarterCrate;}"; - dynamicSimulation=1; - }; - id=8; - type="B_supplyCrate_F"; - class CustomAttributes - { - class Attribute0 - { - property="ace_isRepairFacility"; - expression="if (_value != (if (isNumber (configOf _this >> ""ace_repair_canRepair"")) then {getNumber (configOf _this >> ""ace_repair_canRepair"")} else {(parseNumber (getRepairCargo _this > 0))})) then {_this setVariable ['ace_isRepairFacility', _value, true]}"; - class Value - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - }; - class Attribute1 - { - property="ammoBox"; - expression="[_this,_value] call bis_fnc_initAmmoBox;"; - class Value - { - class data - { - singleType="STRING"; - value="[[[[],[]],[[],[]],[[],[]],[[],[]]],false]"; - }; - }; - }; - class Attribute2 - { - property="ace_isMedicalFacility"; - expression="_this setVariable [""ace_medical_isMedicalFacility"", _value, true];"; - class Value - { - class data - { - singleType="BOOL"; - value=1; - }; - }; - }; - nAttributes=3; - }; - }; - class Item1 - { - dataType="Group"; - side="West"; - class Entities - { - items=3; - class Item0 - { - dataType="Object"; - class PositionInfo - { - position[]={-1.5390625,0.0014390945,-1.1204529}; - }; - side="West"; - flags=6; - class Attributes - { - rank="SERGEANT"; - init="this setGroupid [""SABRE-2""];" \n "this setVariable [""cScripts_Player_Unit"", ""SABRE-2""];"; - description="Tank Commander@SABRE-2"; - isPlayable=1; - }; - id=10; - type="Cav_B_B_Tank_Commander_F"; - class CustomAttributes - { - class Attribute0 - { - property="ace_isEngineer"; - expression="if !(_value == ([0, 1] select (_this getUnitTrait 'engineer')) || {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; - class Value - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - }; - class Attribute1 - { - property="speaker"; - expression="_this setspeaker _value;"; - class Value - { - class data - { - singleType="STRING"; - value="Male10ENG"; - }; - }; - }; - class Attribute2 - { - property="pitch"; - expression="_this setpitch _value;"; - class Value - { - class data - { - singleType="SCALAR"; - value=1.01; - }; - }; - }; - nAttributes=3; - }; - }; - class Item1 - { - dataType="Object"; - class PositionInfo - { - position[]={-1.5390625,0.0014390945,-2.6203003}; - }; - side="West"; - flags=4; - class Attributes - { - skill=0.40000001; - init="this setGroupid [""SABRE-2""];" \n "this setVariable [""cScripts_Player_Unit"", ""SABRE-2""];"; - description="Tank Gunner@SABRE-2"; - isPlayable=1; - }; - id=11; - type="Cav_B_B_Tank_Gunner_F"; - class CustomAttributes - { - class Attribute0 - { - property="ace_isEngineer"; - expression="if !(_value == ([0, 1] select (_this getUnitTrait 'engineer')) || {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; - class Value - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - }; - class Attribute1 - { - property="speaker"; - expression="_this setspeaker _value;"; - class Value - { - class data - { - singleType="STRING"; - value="Male08ENG"; - }; - }; - }; - class Attribute2 - { - property="pitch"; - expression="_this setpitch _value;"; - class Value - { - class data - { - singleType="SCALAR"; - value=0.94999999; - }; - }; - }; - nAttributes=3; - }; - }; - class Item2 - { - dataType="Object"; - class PositionInfo - { - position[]={-1.5097656,0.0014390945,-4.1090698}; - }; - side="West"; - flags=4; - class Attributes - { - skill=0.40000001; - init="this setGroupid [""SABRE-2""];" \n "this setVariable [""cScripts_Player_Unit"", ""SABRE-2""];"; - description="Tank Driver@SABRE-2"; - isPlayable=1; - }; - id=12; - type="Cav_B_B_Tank_Driver_F"; - class CustomAttributes - { - class Attribute0 - { - property="ace_isEngineer"; - expression="if !(_value == ([0, 1] select (_this getUnitTrait 'engineer')) || {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; - class Value - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - }; - class Attribute1 - { - property="speaker"; - expression="_this setspeaker _value;"; - class Value - { - class data - { - singleType="STRING"; - value="Male08ENG"; - }; - }; - }; - class Attribute2 - { - property="pitch"; - expression="_this setpitch _value;"; - class Value - { - class data - { - singleType="SCALAR"; - value=0.94999999; - }; - }; - }; - nAttributes=3; - }; - }; - }; - class Attributes - { - }; - id=9; - }; - class Item2 - { - dataType="Object"; - class PositionInfo - { - position[]={-2.2866211,2.2639475,9.3406372}; - }; - side="Empty"; - flags=4; - class Attributes - { - textures="Green"; - reportRemoteTargets=1; - receiveRemoteTargets=1; - reportOwnPosition=1; - }; - id=13; - type="B_AFV_Wheeled_01_up_cannon_F"; - class CustomAttributes - { - class Attribute0 - { - property="VehicleCustomization"; - expression="if (local _this) then {([_this] + _value + [true]) call (uinamespace getvariable 'BIS_fnc_initVehicle')};"; - class Value - { - class data - { - singleType="ARRAY"; - class value - { - items=2; - class Item0 - { - class data - { - singleType="ARRAY"; - class value - { - items=2; - class Item0 - { - class data - { - singleType="STRING"; - value="Green"; - }; - }; - class Item1 - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - }; - }; - }; - class Item1 - { - class data - { - singleType="ARRAY"; - class value - { - items=6; - class Item0 - { - class data - { - singleType="STRING"; - value="showCamonetHull"; - }; - }; - class Item1 - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - class Item2 - { - class data - { - singleType="STRING"; - value="showCamonetTurret"; - }; - }; - class Item3 - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - class Item4 - { - class data - { - singleType="STRING"; - value="showSLATHull"; - }; - }; - class Item5 - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - }; - }; - }; - }; - }; - }; - }; - nAttributes=1; - }; - }; - }; - id=7; - }; - class Item2 - { - dataType="Layer"; - name="3. SABRE-3"; - class Entities - { - items=2; - class Item0 - { - dataType="Group"; - side="West"; - class Entities - { - items=3; - class Item0 - { - dataType="Object"; - class PositionInfo - { - position[]={1.4350586,0.0014390945,-1.0074615}; - }; - side="West"; - flags=6; - class Attributes - { - rank="SERGEANT"; - init="this setGroupid [""SABRE-3""];" \n "this setVariable [""cScripts_Player_Unit"", ""SABRE-3""];"; - description="Tank Platoon Sergeant@SABRE-3"; - isPlayable=1; - }; - id=16; - type="Cav_B_B_Tank_Commander_F"; - class CustomAttributes - { - class Attribute0 - { - property="ace_isEngineer"; - expression="if !(_value == ([0, 1] select (_this getUnitTrait 'engineer')) || {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; - class Value - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - }; - class Attribute1 - { - property="speaker"; - expression="_this setspeaker _value;"; - class Value - { - class data - { - singleType="STRING"; - value="Male10ENG"; - }; - }; - }; - class Attribute2 - { - property="pitch"; - expression="_this setpitch _value;"; - class Value - { - class data - { - singleType="SCALAR"; - value=1.01; - }; - }; - }; - nAttributes=3; - }; - }; - class Item1 - { - dataType="Object"; - class PositionInfo - { - position[]={1.3574219,0.0014390945,-2.2369995}; - }; - side="West"; - flags=4; - class Attributes - { - skill=0.40000001; - init="this setGroupid [""SABRE-3""];" \n "this setVariable [""cScripts_Player_Unit"", ""SABRE-3""];"; - description="Tank Gunner@SABRE-3"; - isPlayable=1; - }; - id=17; - type="Cav_B_B_Tank_Gunner_F"; - class CustomAttributes - { - class Attribute0 - { - property="ace_isEngineer"; - expression="if !(_value == ([0, 1] select (_this getUnitTrait 'engineer')) || {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; - class Value - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - }; - class Attribute1 - { - property="speaker"; - expression="_this setspeaker _value;"; - class Value - { - class data - { - singleType="STRING"; - value="Male08ENG"; - }; - }; - }; - class Attribute2 - { - property="pitch"; - expression="_this setpitch _value;"; - class Value - { - class data - { - singleType="SCALAR"; - value=0.94999999; - }; - }; - }; - nAttributes=3; - }; - }; - class Item2 - { - dataType="Object"; - class PositionInfo - { - position[]={1.3793945,0.0014390945,-3.5304565}; - }; - side="West"; - flags=4; - class Attributes - { - skill=0.40000001; - init="this setGroupid [""SABRE-3""];" \n "this setVariable [""cScripts_Player_Unit"", ""SABRE-3""];"; - description="Tank Driver@SABRE-3"; - isPlayable=1; - }; - id=18; - type="Cav_B_B_Tank_Gunner_F"; - class CustomAttributes - { - class Attribute0 - { - property="ace_isEngineer"; - expression="if !(_value == ([0, 1] select (_this getUnitTrait 'engineer')) || {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; - class Value - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - }; - class Attribute1 - { - property="speaker"; - expression="_this setspeaker _value;"; - class Value - { - class data - { - singleType="STRING"; - value="Male08ENG"; - }; - }; - }; - class Attribute2 - { - property="pitch"; - expression="_this setpitch _value;"; - class Value - { - class data - { - singleType="SCALAR"; - value=0.94999999; - }; - }; - }; - nAttributes=3; - }; - }; - }; - class Attributes - { - }; - id=15; - }; - class Item1 - { - dataType="Object"; - class PositionInfo - { - position[]={2.3461914,2.2639475,9.289856}; - }; - side="Empty"; - flags=4; - class Attributes - { - textures="Green"; - reportRemoteTargets=1; - receiveRemoteTargets=1; - reportOwnPosition=1; - }; - id=19; - type="B_AFV_Wheeled_01_up_cannon_F"; - class CustomAttributes - { - class Attribute0 - { - property="VehicleCustomization"; - expression="if (local _this) then {([_this] + _value + [true]) call (uinamespace getvariable 'BIS_fnc_initVehicle')};"; - class Value - { - class data - { - singleType="ARRAY"; - class value - { - items=2; - class Item0 - { - class data - { - singleType="ARRAY"; - class value - { - items=2; - class Item0 - { - class data - { - singleType="STRING"; - value="Green"; - }; - }; - class Item1 - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - }; - }; - }; - class Item1 - { - class data - { - singleType="ARRAY"; - class value - { - items=6; - class Item0 - { - class data - { - singleType="STRING"; - value="showCamonetHull"; - }; - }; - class Item1 - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - class Item2 - { - class data - { - singleType="STRING"; - value="showCamonetTurret"; - }; - }; - class Item3 - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - class Item4 - { - class data - { - singleType="STRING"; - value="showSLATHull"; - }; - }; - class Item5 - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - }; - }; - }; - }; - }; - }; - }; - nAttributes=1; - }; - }; - }; - id=14; - }; - class Item3 - { - dataType="Layer"; - name="4. SABRE-4"; - class Entities - { - items=2; - class Item0 - { - dataType="Group"; - side="West"; - class Entities - { - items=3; - class Item0 - { - dataType="Object"; - class PositionInfo - { - position[]={2.6987305,0.0014390945,-1.0094604}; - }; - side="West"; - flags=6; - class Attributes - { - rank="SERGEANT"; - init="this setGroupid [""SABRE-4""];" \n "this setVariable [""cScripts_Player_Unit"", ""SABRE-4""];"; - description="Tank Commander@SABRE-4"; - isPlayable=1; - }; - id=22; - type="Cav_B_B_Tank_Commander_F"; - class CustomAttributes - { - class Attribute0 - { - property="ace_isEngineer"; - expression="if !(_value == ([0, 1] select (_this getUnitTrait 'engineer')) || {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; - class Value - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - }; - class Attribute1 - { - property="speaker"; - expression="_this setspeaker _value;"; - class Value - { - class data - { - singleType="STRING"; - value="Male10ENG"; - }; - }; - }; - class Attribute2 - { - property="pitch"; - expression="_this setpitch _value;"; - class Value - { - class data - { - singleType="SCALAR"; - value=1.01; - }; - }; - }; - nAttributes=3; - }; - }; - class Item1 - { - dataType="Object"; - class PositionInfo - { - position[]={2.7802734,0.0014390945,-2.4030151}; - }; - side="West"; - flags=4; - class Attributes - { - skill=0.40000001; - init="this setGroupid [""SABRE-4""];" \n "this setVariable [""cScripts_Player_Unit"", ""SABRE-4""];"; - description="Tank Gunner@SABRE-4"; - isPlayable=1; - }; - id=23; - type="Cav_B_B_Tank_Gunner_F"; - class CustomAttributes - { - class Attribute0 - { - property="ace_isEngineer"; - expression="if !(_value == ([0, 1] select (_this getUnitTrait 'engineer')) || {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; - class Value - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - }; - class Attribute1 - { - property="speaker"; - expression="_this setspeaker _value;"; - class Value - { - class data - { - singleType="STRING"; - value="Male08ENG"; - }; - }; - }; - class Attribute2 - { - property="pitch"; - expression="_this setpitch _value;"; - class Value - { - class data - { - singleType="SCALAR"; - value=0.94999999; - }; - }; - }; - nAttributes=3; - }; - }; - class Item2 - { - dataType="Object"; - class PositionInfo - { - position[]={2.6982422,0.0014390945,-3.6071167}; - }; - side="West"; - flags=4; - class Attributes - { - skill=0.40000001; - init="this setGroupid [""SABRE-4""];" \n "this setVariable [""cScripts_Player_Unit"", ""SABRE-4""];"; - description="Tank Driver@SABRE-4"; - isPlayable=1; - }; - id=24; - type="Cav_B_B_Tank_Driver_F"; - class CustomAttributes - { - class Attribute0 - { - property="ace_isEngineer"; - expression="if !(_value == ([0, 1] select (_this getUnitTrait 'engineer')) || {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; - class Value - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - }; - class Attribute1 - { - property="speaker"; - expression="_this setspeaker _value;"; - class Value - { - class data - { - singleType="STRING"; - value="Male08ENG"; - }; - }; - }; - class Attribute2 - { - property="pitch"; - expression="_this setpitch _value;"; - class Value - { - class data - { - singleType="SCALAR"; - value=0.94999999; - }; - }; - }; - nAttributes=3; - }; - }; - }; - class Attributes - { - }; - id=21; - }; - class Item1 - { - dataType="Object"; - class PositionInfo - { - position[]={7.6982422,2.2639475,1.2380981}; - }; - side="Empty"; - flags=4; - class Attributes - { - textures="Green"; - reportRemoteTargets=1; - receiveRemoteTargets=1; - reportOwnPosition=1; - }; - id=25; - type="B_AFV_Wheeled_01_up_cannon_F"; - class CustomAttributes - { - class Attribute0 - { - property="VehicleCustomization"; - expression="if (local _this) then {([_this] + _value + [true]) call (uinamespace getvariable 'BIS_fnc_initVehicle')};"; - class Value - { - class data - { - singleType="ARRAY"; - class value - { - items=2; - class Item0 - { - class data - { - singleType="ARRAY"; - class value - { - items=2; - class Item0 - { - class data - { - singleType="STRING"; - value="Green"; - }; - }; - class Item1 - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - }; - }; - }; - class Item1 - { - class data - { - singleType="ARRAY"; - class value - { - items=6; - class Item0 - { - class data - { - singleType="STRING"; - value="showCamonetHull"; - }; - }; - class Item1 - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - class Item2 - { - class data - { - singleType="STRING"; - value="showCamonetTurret"; - }; - }; - class Item3 - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - class Item4 - { - class data - { - singleType="STRING"; - value="showSLATHull"; - }; - }; - class Item5 - { - class data - { - singleType="SCALAR"; - value=1; - }; - }; - }; - }; - }; - }; - }; - }; - }; - nAttributes=1; - }; - }; - }; - id=40; - }; -}; diff --git a/Compositions/4.SABRE_Platoon/header.sqe b/Compositions/4.SABRE_Platoon/header.sqe deleted file mode 100644 index e36335edf..000000000 --- a/Compositions/4.SABRE_Platoon/header.sqe +++ /dev/null @@ -1,13 +0,0 @@ -version=54; -name="4.SABRE_Platoon_DevBuild"; -author="=7Cav=CPL.Zaren.T"; -category="Cav_EdSubcat_Deploy_Platoon"; -requiredAddons[]= -{ - "A3_Weapons_F_Ammoboxes", - "ace_cargo", - "cav_bravo_characters", - "A3_Armor_F_Tank_AFV_Wheeled_01", - "tfar_external_intercom", - "ace_realisticnames" -}; diff --git a/Compositions/6.Cav_JTAC_Addon/composition.sqe b/Compositions/5.Cav_JTAC_Addon/composition.sqe similarity index 100% rename from Compositions/6.Cav_JTAC_Addon/composition.sqe rename to Compositions/5.Cav_JTAC_Addon/composition.sqe diff --git a/Compositions/6.Cav_JTAC_Addon/header.sqe b/Compositions/5.Cav_JTAC_Addon/header.sqe similarity index 89% rename from Compositions/6.Cav_JTAC_Addon/header.sqe rename to Compositions/5.Cav_JTAC_Addon/header.sqe index 64de018a0..38616dd2c 100644 --- a/Compositions/6.Cav_JTAC_Addon/header.sqe +++ b/Compositions/5.Cav_JTAC_Addon/header.sqe @@ -1,5 +1,5 @@ version=54; -name="6.TACP_DEVBUILD"; +name="5.TACP_DEVBUILD"; author="=7Cav=2LT.Zaren.T"; category="Cav_EdSubcat_Deploy_Platoon"; requiredAddons[]= diff --git a/Compositions/7.Cav_Rotary_Aviation/composition.sqe b/Compositions/6.Cav_Rotary_Aviation/composition.sqe similarity index 100% rename from Compositions/7.Cav_Rotary_Aviation/composition.sqe rename to Compositions/6.Cav_Rotary_Aviation/composition.sqe diff --git a/Compositions/7.Cav_Rotary_Aviation/header.sqe b/Compositions/6.Cav_Rotary_Aviation/header.sqe similarity index 74% rename from Compositions/7.Cav_Rotary_Aviation/header.sqe rename to Compositions/6.Cav_Rotary_Aviation/header.sqe index 7d05f9ee7..2e98c6f3f 100644 --- a/Compositions/7.Cav_Rotary_Aviation/header.sqe +++ b/Compositions/6.Cav_Rotary_Aviation/header.sqe @@ -1,5 +1,5 @@ version=54; -name="7.Rotary_Aviation_DEVBUILD"; +name="6.Rotary_Aviation_DEVBUILD"; author="=7Cav=CPL.Zaren.T"; category="Cav_EdSubcat_Deploy_Platoon"; requiredAddons[]={}; diff --git a/Compositions/8.Cav_Fixed_Wing_Aviation/composition.sqe b/Compositions/7.Cav_Fixed_Wing_Aviation/composition.sqe similarity index 100% rename from Compositions/8.Cav_Fixed_Wing_Aviation/composition.sqe rename to Compositions/7.Cav_Fixed_Wing_Aviation/composition.sqe diff --git a/Compositions/8.Cav_Fixed_Wing_Aviation/header.sqe b/Compositions/7.Cav_Fixed_Wing_Aviation/header.sqe similarity index 72% rename from Compositions/8.Cav_Fixed_Wing_Aviation/header.sqe rename to Compositions/7.Cav_Fixed_Wing_Aviation/header.sqe index ff058edf6..c37e00049 100644 --- a/Compositions/8.Cav_Fixed_Wing_Aviation/header.sqe +++ b/Compositions/7.Cav_Fixed_Wing_Aviation/header.sqe @@ -1,5 +1,5 @@ version=54; -name="8.Fixed_Wing_Aviation_DEVBUILD"; +name="7.Fixed_Wing_Aviation_DEVBUILD"; author="=7Cav=CPL.Zaren.T"; category="Cav_EdSubcat_Deploy_Platoon"; requiredAddons[]={}; diff --git a/Compositions/9.Cav_S3_Mission_Controller/composition.sqe b/Compositions/8.Cav_S3_Mission_Controller/composition.sqe similarity index 100% rename from Compositions/9.Cav_S3_Mission_Controller/composition.sqe rename to Compositions/8.Cav_S3_Mission_Controller/composition.sqe diff --git a/Compositions/9.Cav_S3_Mission_Controller/header.sqe b/Compositions/8.Cav_S3_Mission_Controller/header.sqe similarity index 82% rename from Compositions/9.Cav_S3_Mission_Controller/header.sqe rename to Compositions/8.Cav_S3_Mission_Controller/header.sqe index 4b95e4476..82156ee86 100644 --- a/Compositions/9.Cav_S3_Mission_Controller/header.sqe +++ b/Compositions/8.Cav_S3_Mission_Controller/header.sqe @@ -1,5 +1,5 @@ version=54; -name="9.S3_Mission_Controllers_DEVBUILD"; +name="8.S3_Mission_Controllers_DEVBUILD"; author="=7Cav=CPL.Zaren.T"; category="Cav_EdSubcat_Deploy_Platoon"; requiredAddons[]= diff --git a/cScripts/CfgLoadouts.hpp b/cScripts/CfgLoadouts.hpp index 0237ffe2d..3c76e8580 100644 --- a/cScripts/CfgLoadouts.hpp +++ b/cScripts/CfgLoadouts.hpp @@ -7,6 +7,7 @@ class CfgLoadouts { #include "Loadouts\CfgLoadouts_Bravo_Crew.hpp" #include "Loadouts\CfgLoadouts_Bravo_Viking.hpp" + #include "Loadouts\CfgLoadouts_Bravo_Viking_Weapons.hpp" #include "Loadouts\CfgLoadouts_Bravo_Atlas.hpp" #include "Loadouts\CfgLoadouts_Charlie_Squad.hpp" diff --git a/cScripts/Loadouts/CfgLoadouts_Bravo_Crew.hpp b/cScripts/Loadouts/CfgLoadouts_Bravo_Crew.hpp index 9a339e4f9..5fa6ce479 100644 --- a/cScripts/Loadouts/CfgLoadouts_Bravo_Crew.hpp +++ b/cScripts/Loadouts/CfgLoadouts_Bravo_Crew.hpp @@ -4,28 +4,28 @@ class Cav_B_Bravo_TankCrew_Base_F: Cav_B_Bravo_base_F { }; class Cav_B_B_Tank_Commander_F: Cav_B_Bravo_TankCrew_Base_F { displayName = "$STR_cav_Bravo_Characters_B_Tank_Commander"; - scope = 2; + scope = 0; category[] += {"cScripts_Loadout_Cat_Bravo_Tank"}; loadout = [["rhs_weap_m4a1_m320","rhsusf_acc_SFMB556","rhsusf_acc_anpeq15","rhsusf_acc_compm4",["rhs_mag_30Rnd_556x45_M855A1_Stanag",30],["rhs_mag_m714_White",1],""],[],[],["B_ACU_crye_ocp_SH_1",[["ACE_MapTools",1],["ACE_Flashlight_XL50",1],["ACE_microDAGR",1],["ACE_CableTie",2],["ACE_quikclot",20],["ACE_tourniquet",4]]],["rhsusf_iotv_ocp_Repair",[["rhs_mag_30Rnd_556x45_M855A1_Stanag",5,30],["SmokeShell",2,1],["rhs_mag_m67",2,1],["SmokeShellBlue",1,1],["SmokeShellYellow",1,1],["rhs_mag_m713_Red",1,1],["rhs_mag_m715_Green",1,1],["rhs_mag_m662_red",1,1],["rhs_mag_m661_green",1,1]]],["B_AssaultPack_mcamo",[["rhsusf_shemagh_gogg_tan",1],["ToolKit",1]]],"rhsusf_cvc_green_helmet","",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ItemWatch","rhsusf_ANPVS_14"]]; abilityEngineer = 1; }; class Cav_B_B_Tank_Driver_F: Cav_B_Bravo_TankCrew_Base_F { displayName = "$STR_cav_Bravo_Characters_B_Tank_Driver"; - scope = 2; + scope = 0; category[] += {"cScripts_Loadout_Cat_Bravo_Tank"}; loadout = [["rhs_weap_m4a1","rhsusf_acc_SFMB556","rhsusf_acc_anpeq15","rhsusf_acc_compm4",["rhs_mag_30Rnd_556x45_M855A1_Stanag",30],[],"rhsusf_acc_grip2_tan"],[],[],["B_ACU_crye_ocp_SH_1",[["ACE_MapTools",1],["ACE_Flashlight_XL50",1],["ACE_microDAGR",1],["ACE_CableTie",2],["ACE_quikclot",20],["ACE_tourniquet",4]]],["rhsusf_iotv_ocp_Repair",[["rhs_mag_30Rnd_556x45_M855A1_Stanag",5,30],["SmokeShell",2,1],["rhs_mag_m67",2,1],["SmokeShellBlue",1,1],["SmokeShellYellow",1,1]]],["rhsusf_assault_eagleaiii_ocp",[["rhsusf_shemagh_gogg_tan",1],["ToolKit",1],["ACE_quikclot",10],["ACE_tourniquet",4]]],"rhsusf_cvc_green_helmet","",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ItemWatch","rhsusf_ANPVS_14"]]; abilityEngineer = 1; }; class Cav_B_B_Tank_Gunner_F: Cav_B_Bravo_TankCrew_Base_F { displayName = "$STR_cav_Bravo_Characters_B_Tank_Gunner"; - scope = 2; + scope = 0; category[] += {"cScripts_Loadout_Cat_Bravo_Tank"}; loadout = [["rhs_weap_m4a1","rhsusf_acc_SFMB556","rhsusf_acc_anpeq15_bk","rhsusf_acc_compm4",["rhs_mag_30Rnd_556x45_M855A1_Stanag",30],[],"rhsusf_acc_tdstubby_blk"],[],[],["B_ACU_crye_ocp_SH_1",[["ACE_MapTools",1],["ACE_Flashlight_XL50",1],["ACE_microDAGR",1],["ACE_CableTie",2],["ACE_quikclot",20],["ACE_tourniquet",4]]],["rhsusf_iotv_ocp_Repair",[["rhs_mag_30Rnd_556x45_M855A1_Stanag",5,30],["SmokeShell",2,1],["rhs_mag_m67",2,1],["SmokeShellBlue",1,1],["SmokeShellYellow",1,1]]],["B_AssaultPack_mcamo",[["rhsusf_shemagh_gogg_tan",1],["ToolKit",1],["ACE_quikclot",10],["ACE_tourniquet",4]]],"rhsusf_cvc_green_helmet","",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ItemWatch","rhsusf_ANPVS_14"]]; abilityEngineer = 1; }; class Cav_B_B_Tank_Loader_F: Cav_B_Bravo_TankCrew_Base_F { displayName = "$STR_cav_Bravo_Characters_B_Tank_Loader"; - scope = 2; + scope = 0; category[] += {"cScripts_Loadout_Cat_Bravo_Tank"}; loadout = [["rhs_weap_m4a1","rhsusf_acc_SFMB556","rhsusf_acc_anpeq15_bk","rhsusf_acc_compm4",["rhs_mag_30Rnd_556x45_M855A1_Stanag",30],[],"rhsusf_acc_grip2_tan"],[],[],["B_ACU_crye_ocp_SH_1",[["ACE_MapTools",1],["ACE_Flashlight_XL50",1],["ACE_microDAGR",1],["ACE_CableTie",2],["ACE_quikclot",20],["ACE_tourniquet",4]]],["rhsusf_iotv_ocp_Repair",[["rhs_mag_30Rnd_556x45_M855A1_Stanag",5,30],["SmokeShell",2,1],["rhs_mag_m67",2,1],["SmokeShellBlue",1,1],["SmokeShellYellow",1,1]]],["rhsusf_assault_eagleaiii_ocp",[["rhsusf_shemagh_gogg_tan",1],["ToolKit",1],["ACE_quikclot",10],["ACE_tourniquet",4]]],"rhsusf_cvc_green_helmet","",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ItemWatch","rhsusf_ANPVS_14"]]; abilityEngineer = 1; diff --git a/cScripts/Loadouts/CfgLoadouts_Bravo_Viking.hpp b/cScripts/Loadouts/CfgLoadouts_Bravo_Viking.hpp index 72a88dee0..c6074c716 100644 --- a/cScripts/Loadouts/CfgLoadouts_Bravo_Viking.hpp +++ b/cScripts/Loadouts/CfgLoadouts_Bravo_Viking.hpp @@ -6,27 +6,27 @@ class Cav_B_B_Scout_Base_F: Cav_B_Bravo_base_F { class Cav_B_B_Scout_Officer_F: Cav_B_B_Scout_Base_F { displayName = "Viking Platoon Staff"; - scope = 2; + scope = 1; category[] += {"cScripts_Loadout_Cat_Bravo_Viking_Leadership"}; - loadout = [["rhs_weap_mk18_KAC","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG_RMR",["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red",30],[],"rhsusf_acc_grip2"],[],["UK3CB_P320_DES","","acc_flashlight_pistol","",["UK3CB_P320_9x19_17Rnd",17],[],""],["USP_G3C_RS_KP_OR_MC",[["ACE_packingBandage",10],["ACE_quikclot",10],["ACE_tourniquet",4],["ACE_microDAGR",1],["ACE_Flashlight_XL50",1],["ACE_MapTools",1],["kat_chestSeal",2],["kat_guedel",1],["ACE_splint",1]]],["USP_CRYE_CPC_LEAD_BELT_MC",[["ItemcTabHCam",1],["ACE_EarPlugs",1],["HandGrenade",2,1],["SmokeShell",4,1],["ACE_IR_Strobe_Item",4],["SmokeShellBlue",2,1],["UK3CB_P320_9x19_17Rnd",2,17],["ACE_HandFlare_Yellow",2,1],["rhs_mag_mk3a2",2,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red",3,30],["30Rnd_556x45_Stanag_red",4,30],["SmokeShellPurple",1,1],["SmokeShellYellow",2,1]]],["USP_TACTICAL_PACK",[["ACE_HuntIR_monitor",1],["ACE_splint",8],["ACE_tourniquet",8],["ACE_SpraypaintGreen",1],["ACE_artilleryTable",1],["ACE_CableTie",5],["ACE_EarPlugs",2],["kat_Painkiller",2,10],["B_IR_Grenade",2,1],["SmokeShellGreen",2,1],["SmokeShellYellow",2,1],["ACE_Chemlight_IR",2,1]]],"USP_OPS_FASTXP_TAN_MC_03","USP_DETCORD_SMG1_BLK2",["ACE_Vector","","","",[],[],""],["ItemMap","ItemcTab","","ItemCompass","ItemWatch","USP_PVS31_LOW"]]; + loadout = [["rhs_weap_m4a1_blockII","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG3",["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red",30],[],"rhsusf_acc_grip2"],[],["UK3CB_P320_DES","","acc_flashlight_pistol","",["UK3CB_P320_9x19_17Rnd",17],[],""],["USP_G3C_RS_KP_OR_MC",[["ACE_packingBandage",16],["ACE_quikclot",8],["ACE_tourniquet",4],["ACE_microDAGR",1],["ACE_Flashlight_XL50",1],["ACE_MapTools",1],["kat_chestSeal",2],["kat_guedel",1],["ACE_splint",2],["ACE_EarPlugs",1],["ACE_CableTie",2],["ACE_Chemlight_IR",2,1],["kat_Painkiller",2,10]]],["USP_CRYE_CPC_LEAD_BELT_MC",[["HandGrenade",2,1],["SmokeShell",4,1],["SmokeShellBlue",2,1],["UK3CB_P320_9x19_17Rnd",2,17],["SmokeShellPurple",1,1],["SmokeShellRed",2,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red",9,30]]],["USP_TACTICAL_PACK",[["USP_PVS31_LOW",1],["KNB_PanelRed",1],["ACE_EntrenchingTool",1]]],"USP_OPS_FASTXP_TAN_MC_04","",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ItemWatch",""]]; icon = "iconManOfficer"; role = "officer"; }; class Cav_B_B_Scout_PlatoonLeader_F: Cav_B_B_Scout_Officer_F { - displayName = "Viking Platoon Leader"; - scope = 1; - loadout = [["rhs_weap_mk18_KAC","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG_RMR",["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red",30],[],"rhsusf_acc_grip2"],[],["UK3CB_P320_DES","","acc_flashlight_pistol","",["UK3CB_P320_9x19_17Rnd",17],[],""],["USP_G3C_RS_KP_OR_MC",[["ACE_packingBandage",10],["ACE_quikclot",10],["ACE_tourniquet",4],["ACE_microDAGR",1],["ACE_Flashlight_XL50",1],["ACE_MapTools",1],["kat_chestSeal",2],["kat_guedel",1],["ACE_splint",1]]],["USP_CRYE_CPC_LEAD_BELT_MC",[["ItemcTabHCam",1],["ACE_EarPlugs",1],["HandGrenade",2,1],["SmokeShell",4,1],["ACE_IR_Strobe_Item",4],["SmokeShellBlue",2,1],["UK3CB_P320_9x19_17Rnd",2,17],["ACE_HandFlare_Yellow",2,1],["rhs_mag_mk3a2",2,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red",3,30],["30Rnd_556x45_Stanag_red",4,30],["SmokeShellPurple",1,1],["SmokeShellYellow",2,1]]],["USP_TACTICAL_PACK",[["ACE_HuntIR_monitor",1],["ACE_splint",8],["ACE_tourniquet",8],["ACE_SpraypaintGreen",1],["ACE_artilleryTable",1],["ACE_CableTie",5],["ACE_EarPlugs",2],["kat_Painkiller",2,10],["B_IR_Grenade",2,1],["SmokeShellGreen",2,1],["SmokeShellYellow",2,1],["ACE_Chemlight_IR",2,1]]],"USP_OPS_FASTXP_TAN_MC_03","USP_DETCORD_SMG1_BLK2",["ACE_Vector","","","",[],[],""],["ItemMap","ItemcTab","","ItemCompass","ItemWatch","USP_PVS31_LOW"]]; + displayName = "Platoon Leader"; + scope = 2; + loadout = [["rhs_weap_m4a1_blockII","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG3",["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red",30],[],"rhsusf_acc_grip2"],[],["UK3CB_P320_DES","","acc_flashlight_pistol","",["UK3CB_P320_9x19_17Rnd",17],[],""],["USP_G3C_RS_KP_OR_MC",[["ACE_packingBandage",16],["ACE_quikclot",8],["ACE_tourniquet",4],["ACE_microDAGR",1],["ACE_Flashlight_XL50",1],["ACE_MapTools",1],["kat_chestSeal",2],["kat_guedel",1],["ACE_splint",2],["ACE_EarPlugs",1],["ACE_CableTie",2],["ACE_Chemlight_IR",2,1],["kat_Painkiller",2,10]]],["USP_CRYE_CPC_LEAD_BELT_MC",[["HandGrenade",2,1],["SmokeShell",4,1],["SmokeShellBlue",2,1],["UK3CB_P320_9x19_17Rnd",2,17],["SmokeShellPurple",1,1],["SmokeShellRed",2,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red",9,30]]],["USP_TACTICAL_PACK",[["USP_PVS31_LOW",1],["KNB_PanelRed",1],["ACE_EntrenchingTool",1]]],"USP_OPS_FASTXP_TAN_MC_04","",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ItemWatch",""]]; }; class Cav_B_B_Scout_PlatoonSergeant_F: Cav_B_B_Scout_Officer_F { - displayName = "Viking Platoon Sergeant"; - scope = 1; - loadout = [["rhs_weap_mk18_KAC","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG_RMR",["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red",30],[],"rhsusf_acc_grip2"],[],["UK3CB_P320_DES","","acc_flashlight_pistol","",["UK3CB_P320_9x19_17Rnd",17],[],""],["USP_G3C_RS_KP_OR_MC",[["ACE_packingBandage",10],["ACE_quikclot",10],["ACE_tourniquet",4],["ACE_microDAGR",1],["ACE_Flashlight_XL50",1],["ACE_MapTools",1],["kat_chestSeal",2],["kat_guedel",1],["ACE_splint",1]]],["USP_CRYE_CPC_LEAD_BELT_MC",[["ItemcTabHCam",1],["ACE_EarPlugs",1],["HandGrenade",2,1],["SmokeShell",4,1],["ACE_IR_Strobe_Item",4],["SmokeShellBlue",2,1],["UK3CB_P320_9x19_17Rnd",2,17],["ACE_HandFlare_Yellow",2,1],["rhs_mag_mk3a2",2,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red",3,30],["30Rnd_556x45_Stanag_red",4,30],["SmokeShellPurple",1,1],["SmokeShellYellow",2,1]]],["USP_TACTICAL_PACK",[["ACE_HuntIR_monitor",1],["ACE_splint",8],["ACE_tourniquet",8],["ACE_SpraypaintGreen",1],["ACE_artilleryTable",1],["ACE_CableTie",5],["ACE_EarPlugs",2],["kat_Painkiller",2,10],["B_IR_Grenade",2,1],["SmokeShellGreen",2,1],["SmokeShellYellow",2,1],["ACE_Chemlight_IR",2,1]]],"USP_OPS_FASTXP_TAN_MC_03","USP_DETCORD_SMG1_BLK2",["ACE_Vector","","","",[],[],""],["ItemMap","ItemcTab","","ItemCompass","ItemWatch","USP_PVS31_LOW"]]; + displayName = "Platoon Sergeant"; + scope = 2; + loadout = [["rhs_weap_m4a1_blockII_grip2_KAC","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_T1_high",["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red",30],[],"rhsusf_acc_grip2"],[],["UK3CB_P320_DES","","acc_flashlight_pistol","",["UK3CB_P320_9x19_17Rnd",17],[],""],["USP_G3C_RS2_KP_OR_MC",[["ACE_tourniquet",4],["ACE_Flashlight_XL50",1],["ACE_MapTools",1],["ACE_microDAGR",1],["ACE_packingBandage",16],["kat_chestSeal",2],["kat_guedel",1],["ACE_EarPlugs",1],["ACE_splint",2],["ACE_quikclot",8],["ACE_CableTie",2],["kat_Painkiller",2,10],["ACE_Chemlight_IR",1,1]]],["USP_CRYE_JPC_ASLTB",[["UK3CB_P320_9x19_17Rnd",2,17],["SmokeShell",4,1],["SmokeShellBlue",2,1],["HandGrenade",2,1],["SmokeShellPurple",1,1],["SmokeShellRed",2,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red",7,30]]],["USP_TACTICAL_PACK",[["USP_PVS15",1],["ACE_EntrenchingTool",1],["KNB_PanelYellow",1],["ToolKit",1]]],"USP_OPSCORE_FASTMTC_CSW","",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ACE_Altimeter",""]]; abilityEngineer = 1; }; class Cav_B_B_Scout_PlatoonMedic_F: Cav_B_B_Scout_Officer_F { - displayName = "Viking Platoon Medic"; + displayName = "Platoon Medic"; scope = 2; loadout = [["rhs_weap_m4a1_blockII","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG_RMR",["rhs_mag_30Rnd_556x45_M855A1_PMAG",30],[],""],[],[],["USP_G3C_RS_KP_OR_MC",[["ACE_tourniquet",10],["ACE_EarPlugs",1],["ACE_MapTools",1],["ACE_microDAGR",1],["ACE_Flashlight_XL50",1],["ACE_IR_Strobe_Item",2],["ACE_CableTie",2],["ACE_epinephrine",6],["kat_Painkiller",2,10],["kat_Carbonate",2,10],["ACE_Chemlight_IR",2,1],["kat_Penthrox",4,10]]],["USP_CRYE_CPC_MEDIC_BELT_MC",[["ACE_surgicalKit",1],["kat_IV_16",15],["kat_amiodarone",5],["kat_atropine",5],["ACE_adenosine",3],["kat_chestSeal",10],["kat_EACA",10],["kat_fentanyl",5],["kat_ketamine",5],["kat_larynx",10],["kat_lidocaine",10],["kat_nalbuphine",10],["kat_naloxone",5],["kat_nitroglycerin",10],["kat_norepinephrine",10],["kat_phenylephrine",10],["kat_stethoscope",1],["kat_Pulseoximeter",5],["kat_IO_FAST",5],["kat_aatKit",5],["ACE_splint",2],["kat_accuvac",1],["SmokeShell",4,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG",6,30],["SmokeShellBlue",2,1],["SmokeShellPurple",1,1],["kat_Penthrox",5,10]]],["USP_TACTICAL_PACK",[["ACE_plasmaIV",5],["ACE_plasmaIV_500",4],["ACE_salineIV",1],["ACE_elasticBandage",30],["ACE_packingBandage",10],["ACE_quikclot",30],["ACE_salineIV_250",2],["USP_PVS31",1],["ACE_splint",4]]],"USP_OPS_FASTXP_TAN_MC_03","USP_MFRAME_BLK2",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ACE_Altimeter",""]]; insignia = "cav_insignia_specialized_cls"; @@ -35,108 +35,73 @@ class Cav_B_B_Scout_PlatoonMedic_F: Cav_B_B_Scout_Officer_F { icon = "iconManMedic"; }; -class Cav_B_B_Scout_Darter_F_Local: Cav_B_B_Scout_Base_F { - displayName = "Platoon AR-2 Operator"; - scope = 2; - category[] += {"cScripts_Loadout_Cat_Bravo_Viking_Leadership"}; - loadout = [["rhs_weap_m4a1_blockII_KAC","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG_RMR_3d",["30Rnd_556x45_Stanag_red",30],[],"rhsusf_acc_grip2"],[],[],["USP_G3C_RS_KP_OR_MC",[["ACE_packingBandage",10],["ACE_quikclot",10],["ACE_tourniquet",4],["kat_chestSeal",2],["kat_guedel",1],["ACE_microDAGR",1],["ACE_MapTools",1]]],["USP_CRYE_CPC_COMMS_BELT_MC",[["HandGrenade",2,1],["SmokeShell",4,1],["ACE_Chemlight_IR",2,1],["rhs_mag_mk3a2",4,1],["30Rnd_556x45_Stanag_red",9,30],["SmokeShellPurple",1,1],["ACE_CTS9",2,1],["kat_Painkiller",2,10],[["ACE_MX2A","","","",[],[],""],1]]],["rhsusf_assault_eagleaiii_ocp",[["Rev_darter_item",1],["ACE_EntrenchingTool",1],["ACE_UAVBattery",2],["30Rnd_556x45_Stanag_red",4,30],["rhs_mag_mk3a2",2,1],["HandGrenade",2,1]]],"USP_OPS_FASTXP_TAN_MC_03","USP_MFRAME_SMC1_TAN2",["ACE_Vector","","","",[],[],""],["ItemMap","B_UavTerminal","","ItemCompass","ItemWatch","USP_PVS15"]]; -}; -class Cav_B_B_Scout_Raven_F_Local: Cav_B_B_Scout_Base_F { - displayName = "Platoon Raven Operator"; - scope = 2; - category[] += {"cScripts_Loadout_Cat_Bravo_Viking_Leadership"}; - loadout = [["rhs_weap_m4a1_blockII_KAC","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG_RMR",["30Rnd_556x45_Stanag_red",30],[],"rhsusf_acc_grip2"],[],[],["USP_G3C_RS_KP_OR_MC",[["ACE_packingBandage",10],["ACE_quikclot",10],["ACE_tourniquet",4],["kat_chestSeal",2],["kat_guedel",1],["ACE_microDAGR",1],["ACE_MapTools",1]]],["USP_CRYE_CPC_COMMS_BELT_MC",[["HandGrenade",2,1],["SmokeShell",4,1],["ACE_Chemlight_IR",2,1],["rhs_mag_mk3a2",4,1],["30Rnd_556x45_Stanag_red",9,30],["SmokeShellPurple",1,1],["ACE_CTS9",2,1],["kat_Painkiller",2,10],[["ACE_MX2A","","","",[],[],""],1]]],["B_rhsusf_B_BACKPACK",[]],"USP_OPS_FASTXP_TAN_MC_03","USP_MFRAME_SMC1_TAN2",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ItemWatch","USP_PVS15"]]; -}; - class Cav_B_B_Scout_SquadLeader_F: Cav_B_B_Scout_Base_F { displayName = "Squad Leader"; scope = 2; category[] += {"cScripts_Loadout_Cat_Bravo_Viking_Leadership"}; - loadout = [["rhs_weap_mk18_KAC","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_g33_xps3",["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red",30],[],"rhsusf_acc_grip2"],[],[],["USP_G3C_RS_KP_OR_MC",[["ACE_packingBandage",10],["ACE_quikclot",10],["ACE_tourniquet",4],["kat_chestSeal",2],["kat_guedel",1],["ACE_microDAGR",1],["ACE_MapTools",1],["ACE_Chemlight_Shield",1],["ACE_Chemlight_White",1,1]]],["USP_CRYE_CPC_COMMS_BELT_MC",[["ACE_EarPlugs",1],["HandGrenade",2,1],["SmokeShell",4,1],["SmokeShellBlue",2,1],["SmokeShellYellow",2,1],["rhs_mag_mk3a2",2,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red",3,30],["30Rnd_556x45_Stanag_red",4,30],["SmokeShellPurple",1,1]]],["USP_TACTICAL_PACK",[["ACE_HuntIR_monitor",1],["ACE_splint",8],["ACE_tourniquet",8],["ACE_SpraypaintGreen",1],["ACE_artilleryTable",1],["ACE_CableTie",5],["ACE_EarPlugs",2],["kat_Painkiller",2,10],["B_IR_Grenade",2,1],["ACE_Chemlight_IR",2,1]]],"USP_OPS_FASTXP_TAN_MC_06","UK3CB_G_Ballistic_Black",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ItemWatch","USP_PVS31_HIGH"]]; + loadout = [["rhs_weap_m4a1_m320","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG_RMR",["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red",30],["rhs_mag_M664_red_cluster",1],""],[],["UK3CB_P320_DES","","","",["UK3CB_P320_9x19_17Rnd",17],[],""],["USP_G3C_RS_KP_OR_MC",[["ACE_packingBandage",16],["ACE_quikclot",8],["ACE_tourniquet",4],["kat_chestSeal",2],["kat_guedel",1],["ACE_microDAGR",1],["ACE_MapTools",1],["ACE_splint",2],["ACE_EarPlugs",1],["ACE_CableTie",2],["ACE_Flashlight_XL50",1],["kat_Painkiller",2,10],["ACE_Chemlight_IR",1,1]]],["USP_CRYE_CPC_COMMS_BELT_MC",[["HandGrenade",2,1],["SmokeShell",4,1],["SmokeShellBlue",2,1],["SmokeShellPurple",1,1],["SmokeShellRed",2,1],["UK3CB_P320_9x19_17Rnd",2,17],["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red",7,30]]],["USP_TACTICAL_PACK",[["ACE_HuntIR_monitor",1],["USP_PVS31_HIGH",1],["ACE_SpraypaintGreen",1],["rhs_mag_M664_red_cluster",1,1],["rhs_mag_m713_Red",4,1],["rhs_mag_m714_White",4,1]]],"USP_OPS_FASTXP_TAN_MC_06","",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ACE_Altimeter",""]]; role = "squadleader"; icon = "iconManLeader"; }; -class Cav_B_B_Scout_WSL_F_Local: Cav_B_B_Scout_Base_F { - displayName = "Weapons Squad Leader"; - scope = 2; - category[] += {"cScripts_Loadout_Cat_Bravo_Viking_Leadership"}; - loadout = [["rhs_weap_mk18_KAC","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_g33_xps3",["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red",30],[],"rhsusf_acc_grip2"],[],[],["USP_G3C_RS_KP_OR_MC",[["ACE_packingBandage",10],["ACE_quikclot",10],["ACE_tourniquet",4],["kat_chestSeal",2],["kat_guedel",1],["ACE_microDAGR",1],["ACE_MapTools",1],["ACE_PlottingBoard",1],["ACE_Chemlight_Shield",1],["ACE_Chemlight_White",1,1]]],["USP_CRYE_CPC_COMMS_BELT_MC",[["ACE_EarPlugs",1],["HandGrenade",2,1],["SmokeShell",4,1],["SmokeShellBlue",2,1],["SmokeShellYellow",2,1],["rhs_mag_mk3a2",2,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red",3,30],["30Rnd_556x45_Stanag_red",4,30],["SmokeShellPurple",1,1]]],["USP_TACTICAL_PACK",[["ACE_HuntIR_monitor",1],["ACE_splint",8],["ACE_tourniquet",8],["ACE_SpraypaintGreen",1],["ACE_artilleryTable",1],["ACE_CableTie",5],["ACE_EarPlugs",2],["kat_Painkiller",2,10],["B_IR_Grenade",2,1],["ACE_Chemlight_IR",2,1]]],"USP_OPS_FASTXP_TAN_MC_06","UK3CB_G_Ballistic_Black",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ItemWatch","USP_PVS31_HIGH"]]; - icon = "iconManLeader"; -}; class Cav_B_B_Scout_TeamLeader_F: Cav_B_B_Scout_Base_F { displayName = "Team Leader"; scope = 2; - category[] += {"cScripts_Loadout_Cat_Bravo_Viking_Squad"}; - loadout = [["rhs_weap_m4a1_blockII_grip2_KAC","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG_RMR",["30Rnd_556x45_Stanag_red",30],[],"rhsusf_acc_grip2"],[],[],["USP_G3C_RS_KP_OR_MC",[["ACE_packingBandage",10],["kat_chestSeal",2],["kat_guedel",1],["ACE_quikclot",10],["ACE_tourniquet",4],["ACE_microDAGR",1],["ACE_MapTools",1],["ACE_Chemlight_Shield",1],["ACE_Chemlight_White",1,1]]],["USP_VEST_STRANDHOGG2_MC",[["HandGrenade",2,1],["SmokeShell",4,1],["SmokeShellBlue",2,1],["SmokeShellYellow",2,1],["SmokeShellPurple",1,1],["rhs_mag_mk3a2",2,1],["30Rnd_556x45_Stanag_red",6,30],["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tan_Tracer_Red",4,30]]],["USP_PACK_BREACHER_MC",[["ACE_HuntIR_monitor",1],["ACE_EntrenchingTool",1],["ACE_SpraypaintGreen",1],["ACE_tourniquet",4],["ACE_CableTie",5],["ACE_splint",2],["kat_Painkiller",2,10],["ACE_Chemlight_IR",2,1]]],"USP_OPS_FASTXP_TAN_MC_05","UK3CB_G_Ballistic_Black_Shemagh_Green",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ItemWatch","USP_PVS31_HIGH"]]; + category[] += {"cScripts_Loadout_Cat_Bravo_Viking_Rifle_Squad"}; + loadout = [["rhs_weap_m4a1_m320","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG_RMR",["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red",29],["rhs_mag_M664_red_cluster",1],""],[],["UK3CB_P320_DES","","acc_flashlight_pistol","",["UK3CB_P320_9x19_17Rnd",17],[],""],["USP_G3C_RS_KP_OR_MC",[["ACE_packingBandage",16],["ACE_quikclot",8],["ACE_tourniquet",4],["kat_chestSeal",2],["kat_guedel",1],["ACE_microDAGR",1],["ACE_MapTools",1],["ACE_EarPlugs",1],["ACE_splint",2],["ACE_CableTie",2],["ACE_Flashlight_XL50",1],["ACE_Chemlight_IR",1,1],["kat_Painkiller",2,10]]],["USP_CRYE_CPC_COMMS_BELT_MC",[["HandGrenade",2,1],["SmokeShell",4,1],["SmokeShellBlue",2,1],["SmokeShellPurple",1,1],["SmokeShellRed",2,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red",2,30],["rhs_mag_m713_Red",2,1],["rhs_mag_m714_White",6,1],["ACE_HuntIR_M203",2,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG",5,30],["UK3CB_P320_9x19_17Rnd",2,17],["rhs_mag_M664_red_cluster",1,1]]],["USP_TACTICAL_PACK",[["ACE_HuntIR_monitor",1],["USP_PVS31_HIGH",1],["ACE_EntrenchingTool",1],["rhsusf_200Rnd_556x45_soft_pouch",2,200]]],"USP_OPS_FASTXP_TAN_MC_06","",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ACE_Altimeter",""]]; role = "fireteamleader"; icon = "iconManLeader"; }; class Cav_B_B_Scout_AutomaticRifleman_F: Cav_B_B_Scout_Base_F { displayName = "Automatic Rifleman"; scope = 2; - category[] += {"cScripts_Loadout_Cat_Bravo_Viking_Squad"}; - loadout = [["rhs_weap_m249_light_S_vfg2","rhsusf_acc_SFMB556","rhsusf_acc_anpeq16a","rhsusf_acc_su230_mrds",["rhsusf_200Rnd_556x45_mixed_soft_pouch",200],[],"rhsusf_acc_grip4_bipod"],[],["UK3CB_P320_DES","","acc_flashlight_pistol","",["UK3CB_P320_9x19_17Rnd",17],[],""],["USP_G3C_KP_OR_MC",[["ACE_quikclot",10],["ACE_tourniquet",4],["ACE_MapTools",1],["ACE_microDAGR",1],["ACE_packingBandage",10],["ACE_Chemlight_Shield",1],["kat_chestSeal",2],["kat_guedel",1],["ACE_splint",2],["ACE_Chemlight_White",1,1],["kat_Painkiller",2,10]]],["rhsusf_spcs_ocp_saw",[["HandGrenade",2,1],["SmokeShell",2,1],["UK3CB_P320_9x19_17Rnd",2,17],["SmokeShellPurple",1,1],["rhsusf_200Rnd_556x45_mixed_soft_pouch",2,200]]],["UK3CB_B_Backpack_Pocket",[["ACE_WaterBottle",2],["rhsusf_200Rnd_556x45_mixed_soft_pouch",2,200],["rhsusf_100Rnd_556x45_M995_soft_pouch",2,100]]],"USP_OPS_FASTXP_TAN_MC_04","G_Lowprofile",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ItemWatch","USP_PVS15"]]; + category[] += {"cScripts_Loadout_Cat_Bravo_Viking_Rifle_Squad"}; + loadout = [["rhs_weap_m249_light_S_vfg2","rhsusf_acc_SFMB556","rhsusf_acc_anpeq16a","rhsusf_acc_ACOG_RMR_3d",["rhsusf_200Rnd_556x45_mixed_soft_pouch",200],[],"rhsusf_acc_grip4_bipod"],[],["UK3CB_P320_DES","","acc_flashlight_pistol","",["UK3CB_P320_9x19_17Rnd",17],[],""],["USP_G3C_KP_OR_MC",[["ACE_quikclot",8],["ACE_tourniquet",4],["ACE_MapTools",1],["ACE_microDAGR",1],["ACE_packingBandage",16],["kat_chestSeal",2],["kat_guedel",1],["ACE_splint",2],["ACE_CableTie",2],["ACE_EarPlugs",1],["ACE_Flashlight_XL50",1],["kat_Painkiller",4,10]]],["USP_CRYE_JPC_MGB_RGR",[["HandGrenade",2,1],["SmokeShell",2,1],["rhsusf_200Rnd_556x45_mixed_soft_pouch",4,200]]],["USP_ZIPON_PANEL_CPC_MC",[["USP_PVS31",1],["rhsusf_200Rnd_556x45_mixed_soft_pouch",2,200]]],"USP_OPS_FASTXP_TAN_MC_04","",[],["ItemMap","ItemAndroid","","ItemCompass","ACE_Altimeter",""]]; icon = "iconManMG"; }; class Cav_B_B_Scout_Grenadier_F: Cav_B_B_Scout_Base_F { displayName = "Grenadier"; scope = 2; - category[] += {"cScripts_Loadout_Cat_Bravo_Viking_Squad"}; - loadout = [["rhs_weap_mk18_m320","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_EOTECH",["30Rnd_556x45_Stanag_red",30],[],""],[],[],["USP_G3C_RS_KP_OR_MC",[["ACE_packingBandage",10],["ACE_quikclot",10],["ACE_tourniquet",4],["kat_chestSeal",2],["kat_guedel",1],["ACE_microDAGR",1],["ACE_MapTools",1],["ACE_Chemlight_IR",2,1]]],["USP_CRYE_CPC_WEAPON_BELT_MC",[["HandGrenade",2,1],["SmokeShell",4,1],["SmokeShellPurple",1,1],["rhs_mag_M433_HEDP",15,1],["30Rnd_556x45_Stanag_red",7,30],["rhs_mag_m713_Red",5,1],["rhs_mag_M664_red_cluster",2,1],["rhs_mag_m716_yellow",2,1]]],["USP_ZIPON_PACK_CPC_MC",[["ACE_EntrenchingTool",1],["kat_Painkiller",2,10],["rhs_mag_mk3a2",2,1],["ACE_M84",2,1],["rhs_mag_m4009",5,1],["rhs_mag_M397_HET",10,1],["ACE_HuntIR_M203",1,1]]],"USP_OPS_FASTXP_TAN_MC_03","USP_MFRAME_SMC1_TAN2",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ItemWatch","USP_PVS15"]]; -}; -class Cav_B_B_Scout_DMR_F_Local: Cav_B_B_Scout_Base_F { - displayName = "Designated Marksman"; - scope = 2; - category[] += {"cScripts_Loadout_Cat_Bravo_Viking_Squad"}; - loadout = [["rhs_weap_sr25_ec","","rhsusf_acc_anpeq15side_bk","optic_AMS",["rhsusf_20Rnd_762x51_SR25_m118_special_Mag",20],[],"rhsusf_acc_harris_bipod"],[],[],["USP_G3C_RS_KP_OR_MC",[["ACE_packingBandage",10],["ACE_quikclot",10],["ACE_tourniquet",4],["kat_chestSeal",2],["kat_guedel",1],["ACE_microDAGR",1],["ACE_MapTools",1],["ACE_Chemlight_Shield",1],["ACE_Chemlight_White",1,1]]],["rhsusf_spcs_ocp_sniper",[["ACE_IR_Strobe_Item",1],["HandGrenade",2,1],["SmokeShell",4,1],["ACE_IR_Strobe_Item",1],["ACE_Chemlight_IR",2,1],["rhs_mag_mk3a2",1,1],["SmokeShellPurple",1,1],["kat_Painkiller",2,10],["rhsusf_20Rnd_762x51_SR25_m118_special_Mag",6,20]]],["USP_TACTICAL_PACK",[["ACE_wirecutter",1],["ACE_EntrenchingTool",1]]],"USP_OPS_FASTXP_TAN_MC_03","USP_MFRAME_SMC1_TAN2",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ItemWatch","USP_PVS31"]]; + category[] += {"cScripts_Loadout_Cat_Bravo_Viking_Rifle_Squad"}; + loadout = [["rhs_weap_m4a1_m320","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG_RMR",["rhs_mag_30Rnd_556x45_M855A1_PMAG",30],["rhs_mag_M433_HEDP",1],""],[],[],["USP_G3C_RS_KP_OR_MC",[["ACE_packingBandage",16],["ACE_quikclot",8],["ACE_tourniquet",4],["kat_chestSeal",2],["kat_guedel",1],["ACE_microDAGR",1],["ACE_MapTools",1],["ACE_CableTie",2],["ACE_Flashlight_XL50",1],["ACE_splint",2],["ACE_EarPlugs",1],["ACE_Chemlight_IR",2,1],["kat_Painkiller",2,10]]],["USP_CRYE_JPC_GRB_RGR",[["HandGrenade",2,1],["SmokeShell",4,1],["rhs_mag_M433_HEDP",9,1],["rhs_mag_m713_Red",2,1],["ACE_HuntIR_M203",2,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG",7,30],["rhs_mag_m714_White",6,1]]],["USP_ZIPON_PACK_CPC_MC",[["ACE_EntrenchingTool",1],["USP_PVS15",1],["rhs_mag_M433_HEDP",12,1]]],"USP_OPS_FASTXP_TAN_MC_01","",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ACE_Altimeter",""]]; }; class Cav_B_B_Scout_Rifleman_F: Cav_B_B_Scout_Base_F { displayName = "Rifleman"; scope = 2; - category[] += {"cScripts_Loadout_Cat_Bravo_Viking_Squad"}; - loadout = [["rhs_weap_m4a1_blockII_grip2_KAC","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG_RMR",["30Rnd_556x45_Stanag_red",30],[],"rhsusf_acc_grip2"],[],[],["USP_G3C_RS_KP_OR_MC",[["ACE_packingBandage",10],["ACE_quikclot",10],["ACE_tourniquet",4],["kat_chestSeal",2],["kat_guedel",1],["ACE_microDAGR",1],["ACE_MapTools",1]]],["USP_CRYE_CPC_COMMS_BELT_MC",[["HandGrenade",2,1],["SmokeShell",4,1],["ACE_Chemlight_IR",2,1],["rhs_mag_mk3a2",4,1],["30Rnd_556x45_Stanag_red",9,30],["SmokeShellPurple",1,1],["ACE_CTS9",2,1],["kat_Painkiller",2,10]]],["USP_ZIPON_PACK_CPC_MC",[["HandGrenade",4,1],["30Rnd_556x45_Stanag_red",3,30]]],"USP_OPS_FASTXP_TAN_MC_03","USP_MFRAME_SMC1_TAN2",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ItemWatch","USP_PVS15"]]; -}; -class Cav_B_B_Scout_RiflemanAT_F: Cav_B_B_Scout_Base_F { - displayName = "MAAWS Specialist"; - scope = 2; - category[] += {"cScripts_Loadout_Cat_Bravo_Viking_Squad"}; - role = "weapons"; - loadout = [["rhs_weap_m4a1_blockII_KAC","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG_RMR",["30Rnd_556x45_Stanag_red",30],[],"rhsusf_acc_grip2"],["launch_MRAWS_green_F","","","",[],[],""],[],["USP_G3C_RS_KP_OR_MC",[["ACE_packingBandage",10],["kat_chestSeal",2],["kat_guedel",1],["ACE_quikclot",10],["ACE_tourniquet",4],["ACE_microDAGR",1],["ACE_MapTools",1]]],["USP_CRYE_CPC_COMMS_BELT_MC",[["HandGrenade",2,1],["SmokeShell",4,1],["ACE_Chemlight_IR",2,1],["rhs_mag_mk3a2",4,1],["30Rnd_556x45_Stanag_red",9,30],["SmokeShellPurple",1,1],["ACE_CTS9",2,1],["kat_Painkiller",2,10]]],["rhsusf_falconii_mc",[["ACE_EntrenchingTool",1],["",2,0],["MRAWS_HEAT_F",1,1],["MRAWS_HE_F",2,1]]],"USP_OPS_FASTXP_TAN_MC_03","USP_MFRAME_SMC1_TAN2",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ItemWatch","USP_PVS15"]]; + category[] += {"cScripts_Loadout_Cat_Bravo_Viking_Rifle_Squad"}; + loadout = [["rhs_weap_m4a1_blockII_grip2_KAC","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG_RMR",["rhs_mag_30Rnd_556x45_M855A1_PMAG",30],[],"rhsusf_acc_grip2"],[],[],["USP_G3C_RS_KP_OR_MC",[["ACE_packingBandage",16],["ACE_quikclot",8],["ACE_tourniquet",4],["kat_chestSeal",2],["kat_guedel",1],["ACE_microDAGR",1],["ACE_MapTools",1],["ACE_Flashlight_XL50",1],["ACE_splint",2],["ACE_CableTie",2],["ACE_EarPlugs",1],["kat_Painkiller",2,10]]],["USP_CRYE_JPC_ASLTB_RGR",[["HandGrenade",2,1],["SmokeShell",4,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG",9,30]]],["USP_ZIPON_PACK_CPC_MC",[["USP_PVS31",1],["ACE_EntrenchingTool",1]]],"USP_OPS_FASTXP_TAN_MC_01","",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ACE_Altimeter",""]]; }; class Cav_B_B_Scout_CombatLifeSaver_F: Cav_B_B_Scout_Base_F { displayName = "Combat Lifesaver"; scope = 2; - category[] += {"cScripts_Loadout_Cat_Bravo_Viking_Squad"}; - loadout = [["rhs_weap_m4a1_blockII_KAC","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG_RMR",["rhs_mag_30Rnd_556x45_M855A1_PMAG",30],[],"rhsusf_acc_grip2"],[],[],["USP_G3C_RS_KP_OR_MC",[["ACE_packingBandage",10],["ACE_quikclot",10],["ACE_tourniquet",4],["ACE_microDAGR",1],["ACE_Flashlight_XL50",1],["ACE_MapTools",1],["ACE_splint",4]]],["USP_CRYE_JPC_ASLTB",[["kat_CarbonateItem",1],["ACE_epinephrine",3],["kat_phenylephrineAuto",3],["HandGrenade",4,1],["SmokeShell",4,1],["ACE_Chemlight_IR",2,1],["rhs_mag_mk3a2",4,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG",8,30]]],["USP_DELTA_BAG_MC",[["ACE_EntrenchingTool",1],["ACE_packingBandage",40],["ACE_quikclot",40],["ACE_tourniquet",12],["ACE_splint",8],["ACE_EarPlugs",2],["kat_chestSeal",10],["kat_guedel",10],["kat_ncdKit",5],["kat_pocketBVM",1],["kat_accuvac",1],["kat_Painkiller",3,10]]],"USP_OPS_FASTXP_TAN_MC_03","USP_MFRAME_BLK2",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ItemWatch","USP_PVS15"]]; + category[] += {"cScripts_Loadout_Cat_Bravo_Viking_Rifle_Squad"}; + loadout = [["rhs_weap_m4a1_blockII_grip2_KAC","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG_RMR",["rhs_mag_30Rnd_556x45_M855A1_PMAG",30],[],"rhsusf_acc_grip2"],[],[],["USP_G3C_RS_KP_OR_MC",[["ACE_packingBandage",16],["ACE_quikclot",8],["ACE_tourniquet",4],["ACE_microDAGR",1],["ACE_Flashlight_XL50",1],["ACE_MapTools",1],["ACE_splint",2],["ACE_EarPlugs",1],["ACE_CableTie",2],["kat_chestSeal",2],["kat_guedel",1],["kat_Painkiller",2,10]]],["USP_CRYE_CPC_MEDIC_MC",[["HandGrenade",4,1],["SmokeShell",4,1],["ACE_Chemlight_IR",2,1],["ACE_Chemlight_HiBlue",2,1],["SmokeShellBlue",2,1],["SmokeShellPurple",1,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG",7,30]]],["USP_DELTA_BAG_MC",[["ACE_EntrenchingTool",1],["ACE_packingBandage",40],["ACE_quikclot",40],["ACE_splint",8],["kat_chestSeal",10],["kat_guedel",10],["kat_ncdKit",5],["kat_pocketBVM",1],["kat_accuvac",1],["USP_PVS15",1],["ACE_epinephrine",6],["kat_phenylephrineAuto",6],["ACE_tourniquet",4],["kat_Painkiller",3,10],["kat_Carbonate",1,10]]],"USP_OPS_FASTXP_TAN_MC_02","",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ACE_Altimeter",""]]; insignia = "cav_insignia_specialized_cls"; abilityMedic = 1; role = "cls"; icon = "iconManMedic"; }; +class Cav_B_B_Scout_DMR_F_Local: Cav_B_B_Scout_Base_F { + displayName = "Designated Marksman"; + scope = 2; + category[] += {"cScripts_Loadout_Cat_Bravo_Viking_Rifle_Squad"}; + loadout = [["rhs_weap_sr25_ec","","rhsusf_acc_anpeq15side_bk","optic_AMS",["rhsusf_20Rnd_762x51_SR25_m118_special_Mag",20],[],"rhsusf_acc_harris_bipod"],[],[],["USP_G3C_RS_KP_OR_MC",[["ACE_packingBandage",16],["ACE_quikclot",8],["ACE_tourniquet",4],["kat_chestSeal",2],["kat_guedel",1],["ACE_microDAGR",1],["ACE_MapTools",1],["ACE_Flashlight_XL50",1],["ACE_splint",2],["ACE_EarPlugs",1],["kat_Painkiller",2,10]]],["USP_CRYE_JPC_DMB_RGR",[["HandGrenade",2,1],["SmokeShell",4,1],["rhsusf_20Rnd_762x51_SR25_m118_special_Mag",6,20],["rhsusf_20Rnd_762x51_SR25_m62_Mag",3,20]]],["USP_ZIPON_PANEL_CPC_SMK_MC",[["ACE_EntrenchingTool",1],["USP_PVS31",1]]],"USP_OPS_FASTXP_TAN_MC_04","",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ACE_Altimeter",""]]; +}; //Stryker Crew -class Cav_B_B_Crew_F: Cav_B_B_Scout_Base_F { - displayName = "Stryker Crew"; - scope = 0; - category[] += {"cScripts_Loadout_Cat_Bravo_Viking_Squad"}; - loadout = [["rhs_weap_mk18_grip2_KAC","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_T1_high",["rhs_mag_30Rnd_556x45_Mk262_PMAG",30],[],"rhsusf_acc_grip2"],[],[],["USP_G3C_RS_KP_OR_MC",[["ACE_packingBandage",10],["ACE_quikclot",10],["ACE_tourniquet",4],["ACE_microDAGR",1],["ACE_Flashlight_XL50",1],["ACE_MapTools",1],["ACE_splint",1]]],["rhsusf_iotv_ocp_Repair",[["HandGrenade",2,1],["SmokeShellPurple",1,1],["SmokeShell",4,1],["ACE_IR_Strobe_Item",2],["ACE_Chemlight_IR",2,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG",4,30]]],["USP_TACTICAL_PACK",[["ToolKit",1],["ACE_tourniquet",8],["ACE_quikclot",10],["ACE_packingBandage",10]]],"rhsusf_cvc_green_helmet","USP_BALACLAVA_ADV_SMC1_RGR2",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ItemWatch","USP_PVS15"]]; +class Cav_B_B_Ifv_Commander_F: Cav_B_B_Scout_Base_F { + displayName = "Stryker Vehicle Commander"; + scope = 2; + category[] += {"cScripts_Loadout_Cat_Bravo_Viking_Rifle_Squad"}; + loadout = [["rhs_weap_mk18_grip2_bk","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15A","rhsusf_acc_T1_high",["rhs_mag_30Rnd_556x45_M855A1_PMAG",30],[],"rhsusf_acc_grip2"],[],[],["USP_G3C_RS_KP_OR_MC",[["ACE_CableTie",2],["ACE_IR_Strobe_Item",1],["ACE_EarPlugs",1],["ACE_Flashlight_XL50",1],["ACE_microDAGR",1],["ACE_MapTools",1],["ACE_packingBandage",16],["ACE_quikclot",8],["kat_chestSeal",2],["kat_guedel",1],["kat_PainkillerItem",2],["ACE_splint",2],["ACE_tourniquet",4]]],["USP_CRYE_JPC_FS",[["HandGrenade",2,1],["SmokeShell",2,1],["SmokeShellPurple",1,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG",3,30]]],["USP_TACTICAL_PACK",[["USP_ACC_PVS31_BLK",1],["ACE_EntrenchingTool",1],["ToolKit",1]]],"rhsusf_cvc_green_ess","",[],["ItemMap","ItemAndroid","","ItemCompass","ACE_Altimeter",""]]; abilityEngineer = 1; role = "strykercrew"; }; class Cav_B_B_Ifv_Driver_F: Cav_B_B_Scout_Base_F { displayName = "Stryker Driver"; scope = 2; - category[] += {"cScripts_Loadout_Cat_Bravo_Viking_Squad"}; - loadout = [["rhs_weap_mk18_grip2_KAC","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_T1_high",["rhs_mag_30Rnd_556x45_Mk262_PMAG",30],[],"rhsusf_acc_grip2"],[],[],["USP_G3C_RS_KP_OR_MC",[["ACE_packingBandage",10],["ACE_quikclot",10],["ACE_tourniquet",4],["kat_chestSeal",2],["kat_guedel",1],["ACE_microDAGR",1],["ACE_Flashlight_XL50",1],["ACE_MapTools",1],["ACE_splint",1]]],["rhsusf_iotv_ocp_Repair",[["HandGrenade",2,1],["SmokeShellPurple",1,1],["SmokeShell",4,1],["ACE_IR_Strobe_Item",2],["ACE_Chemlight_IR",2,1],["30Rnd_556x45_Stanag_red",4,30]]],["USP_TACTICAL_PACK",[["ToolKit",1],["ACE_tourniquet",8],["ACE_quikclot",10],["ACE_packingBandage",10]]],"rhsusf_cvc_green_helmet","USP_BALACLAVA_ADV_SMC1_RGR2",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ItemWatch","USP_PVS15"]]; - abilityEngineer = 1; - role = "strykercrew"; -}; -class Cav_B_B_Ifv_Commander_F: Cav_B_B_Scout_Base_F { - displayName = "Stryker Vehicle Commander"; - scope = 2; - category[] += {"cScripts_Loadout_Cat_Bravo_Viking_Squad"}; - loadout = [["rhs_weap_mk18_grip2_KAC","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_T1_high",["rhs_mag_30Rnd_556x45_Mk262_PMAG",30],[],"rhsusf_acc_grip2"],[],[],["USP_G3C_RS_KP_OR_MC",[["ACE_packingBandage",10],["ACE_quikclot",10],["ACE_tourniquet",4],["kat_chestSeal",2],["kat_guedel",1],["ACE_microDAGR",1],["ACE_Flashlight_XL50",1],["ACE_MapTools",1],["ACE_splint",1]]],["USP_CRYE_CPC_MEDIC_MC",[["HandGrenade",2,1],["SmokeShellPurple",1,1],["SmokeShell",4,1],["ACE_IR_Strobe_Item",2],["ACE_Chemlight_IR",2,1],["30Rnd_556x45_Stanag_red",4,30]]],["USP_TACTICAL_PACK",[["ToolKit",1],["ACE_tourniquet",8],["ACE_quikclot",10],["ACE_packingBandage",10]]],"rhsusf_cvc_green_helmet","USP_BALACLAVA_ADV_SMC1_RGR2",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ItemWatch","USP_PVS15"]]; + category[] += {"cScripts_Loadout_Cat_Bravo_Viking_Rifle_Squad"}; + loadout = [["rhs_weap_mk18_grip2_bk","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15A","rhsusf_acc_T1_high",["rhs_mag_30Rnd_556x45_M855A1_PMAG",30],[],"rhsusf_acc_grip2"],[],[],["USP_G3C_RS_KP_OR_MC",[["ACE_CableTie",2],["ACE_IR_Strobe_Item",1],["ACE_EarPlugs",1],["ACE_Flashlight_XL50",1],["ACE_microDAGR",1],["ACE_MapTools",1],["ACE_packingBandage",16],["ACE_quikclot",8],["kat_chestSeal",2],["kat_guedel",1],["kat_PainkillerItem",2],["ACE_splint",2],["ACE_tourniquet",4]]],["USP_CRYE_JPC_FS",[["HandGrenade",2,1],["SmokeShell",2,1],["SmokeShellPurple",1,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG",3,30]]],["USP_TACTICAL_PACK",[["USP_ACC_PVS31_BLK",1],["ACE_EntrenchingTool",1],["ToolKit",1]]],"rhsusf_cvc_green_ess","",[],["ItemMap","ItemAndroid","","ItemCompass","ACE_Altimeter",""]]; abilityEngineer = 1; role = "strykercrew"; }; @@ -160,11 +125,11 @@ class Cav_B_B_Scout_SquadLeader_2_4_F: Cav_B_B_Scout_SquadLeader_F { }; // Teams -class Cav_B_B_Scout_PlatoonLead_2_5_F: Cav_B_B_Scout_PlatoonLeader_F { +class Cav_B_B_Scout_PlatoonLead_2_6_F: Cav_B_B_Scout_PlatoonLeader_F { scope = 1; insignia = "cav_insignia_bravo_2"; }; -class Cav_B_B_Scout_PlatoonLead_2_6_F: Cav_B_B_Scout_PlatoonLeader_F { +class Cav_B_B_Scout_PlatoonLead_2_5_F: Cav_B_B_Scout_PlatoonSergeant_F { scope = 1; insignia = "cav_insignia_bravo_2"; }; @@ -174,14 +139,12 @@ class Cav_B_B_Scout_Alpha_TeamLeader_F: Cav_B_B_Scout_TeamLeader_F { scope = 1; class Cav_B_B_Scout_Alpha_AutomaticRifleman_F: Cav_B_B_Scout_AutomaticRifleman_F { scope = 1; }; class Cav_B_B_Scout_Alpha_Grenadier_F: Cav_B_B_Scout_Grenadier_F { scope = 1; }; class Cav_B_B_Scout_Alpha_Rifleman_F: Cav_B_B_Scout_Rifleman_F { scope = 1; }; -class Cav_B_B_Scout_Alpha_RiflemanAT_F: Cav_B_B_Scout_RiflemanAT_F { scope = 1; }; class Cav_B_B_Scout_Alpha_CombatLifeSaver_F: Cav_B_B_Scout_CombatLifeSaver_F { scope = 1; }; class Cav_B_B_Scout_Bravo_TeamLeader_F: Cav_B_B_Scout_TeamLeader_F { scope = 1; }; class Cav_B_B_Scout_Bravo_AutomaticRifleman_F: Cav_B_B_Scout_AutomaticRifleman_F { scope = 1; }; class Cav_B_B_Scout_Bravo_Grenadier_F: Cav_B_B_Scout_Grenadier_F { scope = 1; }; class Cav_B_B_Scout_Bravo_Rifleman_F: Cav_B_B_Scout_Rifleman_F { scope = 1; }; -class Cav_B_B_Scout_Bravo_RiflemanAT_F: Cav_B_B_Scout_RiflemanAT_F { scope = 1; }; class Cav_B_B_Scout_Bravo_CombatLifeSaver_F: Cav_B_B_Scout_CombatLifeSaver_F { scope = 1; }; // Depricated (Will be removed eventually) diff --git a/cScripts/Loadouts/CfgLoadouts_Bravo_Viking_Weapons.hpp b/cScripts/Loadouts/CfgLoadouts_Bravo_Viking_Weapons.hpp new file mode 100644 index 000000000..c3ac2bd68 --- /dev/null +++ b/cScripts/Loadouts/CfgLoadouts_Bravo_Viking_Weapons.hpp @@ -0,0 +1,53 @@ +class cScripts_B_B_Weapons_Rifleman_F: Cav_B_Bravo_base_F { + category[] += {"cScripts_Loadout_Cat_Bravo_Viking_Weapons"}; + role = "weapons"; +}; + +class Cav_B_B_Weapons_M240B_FireTeamLeader_F: cScripts_B_B_Weapons_Rifleman_F { + displayName = "Machine Gun Fireteam Leader "; + scope = 2; + loadout = [["rhs_weap_m4a1_m320","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG_RMR",["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red",29],["rhs_mag_M664_red_cluster",1],""],[],["UK3CB_P320_DES","","acc_flashlight_pistol","",["UK3CB_P320_9x19_17Rnd",17],[],""],["USP_G3C_RS_KP_OR_MC",[["ACE_packingBandage",16],["ACE_quikclot",8],["ACE_tourniquet",4],["kat_chestSeal",2],["kat_guedel",1],["ACE_microDAGR",1],["ACE_MapTools",1],["ACE_EarPlugs",1],["ACE_splint",2],["ACE_Flashlight_XL50",1],["ACE_Chemlight_IR",1,1],["kat_Painkiller",2,10]]],["USP_CRYE_CPC_COMMS_BELT_MC",[["HandGrenade",2,1],["SmokeShell",4,1],["SmokeShellBlue",2,1],["SmokeShellPurple",1,1],["SmokeShellRed",2,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red",2,30],["rhs_mag_m713_Red",2,1],["rhs_mag_m714_White",6,1],["ACE_HuntIR_M203",2,1],["rhs_mag_M664_red_cluster",1,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG",5,30]]],["USP_TACTICAL_PACK",[["ACE_HuntIR_monitor",1],["USP_PVS31_HIGH",1],["ACE_EntrenchingTool",1],["rhsusf_100Rnd_762x51_m62_tracer",3,100]]],"USP_OPS_FASTXP_TAN_MC_06","",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ACE_Altimeter",""]]; + icon = "iconManLeader"; +}; +class Cav_B_B_Weapons_M240B_Machinegunner_F: cScripts_B_B_Weapons_Rifleman_F { + displayName = "Machine Gunner"; + scope = 2; + loadout = [["rhs_weap_m240B","rhsusf_acc_ARDEC_M240","rhsusf_acc_anpeq15side_bk","rhsusf_acc_ACOG_MDO",["rhsusf_100Rnd_762x51_m62_tracer",100],[],""],[],["UK3CB_P320_DES","","","",["UK3CB_P320_9x19_17Rnd",17],[],""],["USP_G3C_RS2_KP_OR_MC",[["ACE_quikclot",8],["kat_chestSeal",2],["kat_guedel",1],["ACE_tourniquet",4],["ACE_Flashlight_XL50",1],["ACE_MapTools",1],["ACE_EarPlugs",1],["ACE_microDAGR",1],["ACE_packingBandage",16],["ACE_splint",2],["kat_Painkiller",2,10]]],["USP_CRYE_JPC_MGB",[["SmokeShell",2,1],["rhsusf_100Rnd_762x51_m62_tracer",4,100],["HandGrenade",2,1],["UK3CB_P320_9x19_17Rnd",2,17]]],["USP_PACK_POINTMAN",[["USP_PVS15",1],["rhsusf_100Rnd_762x51_m62_tracer",2,100]]],"USP_OPSCORE_FASTMTC_CW","",[],["ItemMap","ItemAndroid","","ItemCompass","ACE_Altimeter",""]]; + icon = "iconManMG"; +}; + +class Cav_B_B_Weapons_M240B_MachinegunnerAmmoBearer_F: cScripts_B_B_Weapons_Rifleman_F { + displayName = "Machine Gun Assistant"; + scope = 2; + loadout = [["rhs_weap_m4a1_blockII_KAC","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG_RMR",["rhs_mag_30Rnd_556x45_M855A1_PMAG",30],[],""],["dzn_MG_Tripod_M122A1_M240Mount_Carry","","","",[],[],""],[],["USP_G3C_RS2_KP_OR_MC",[["ACE_quikclot",8],["kat_chestSeal",2],["kat_guedel",1],["ACE_tourniquet",4],["ACE_Flashlight_XL50",1],["ACE_MapTools",1],["ACE_microDAGR",1],["ACE_splint",2],["ACE_packingBandage",16],["ACE_EarPlugs",1],["ACE_CableTie",2],["kat_Painkiller",2,10]]],["USP_CRYE_JPC_MGB",[["SmokeShell",4,1],["HandGrenade",2,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG",7,30]]],["B_Kitbag_mcamo",[["USP_PVS15",1],["ACE_EntrenchingTool",1],["rhsusf_100Rnd_762x51_m62_tracer",6,100],["ACE_SpareBarrel",1,1]]],"USP_OPSCORE_FASTMTC_CW","",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ACE_Altimeter",""]]; +}; + +class Cav_B_B_Weapons_MAAWS_MAAWSGunner_F: cScripts_B_B_Weapons_Rifleman_F { + displayName = "MAAWS Gunner"; + scope = 2; + loadout = [["rhs_weap_m4a1_blockII_grip2_KAC","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG_RMR",["rhs_mag_30Rnd_556x45_M855A1_PMAG",30],[],"rhsusf_acc_grip2"],["launch_MRAWS_green_F","","","",["MRAWS_HEAT_F",1],[],""],[],["USP_G3C_RS_KP_OR_MC",[["ACE_packingBandage",16],["kat_chestSeal",2],["kat_guedel",1],["ACE_quikclot",8],["ACE_tourniquet",4],["ACE_microDAGR",1],["ACE_MapTools",1],["ACE_splint",2],["ACE_EarPlugs",1],["ACE_Flashlight_XL50",1],["kat_PainkillerItem",2],["kat_Painkiller",1,10]]],["USP_CRYE_CPC_COMMS_BELT_MC",[["HandGrenade",2,1],["SmokeShell",3,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG",7,30]]],["rhsusf_falconii_mc",[["ACE_EntrenchingTool",1],["USP_PVS15",1],["MRAWS_HE_F",2,1],["MRAWS_HEAT_F",1,1]]],"USP_OPS_FASTXP_TAN_MC_04","",[],["ItemMap","ItemAndroid","","ItemCompass","ACE_Altimeter",""]]; + icon = "iconManAT"; +}; + +class Cav_B_B_Weapons_MAAWS_MAAWSAssistant_F: cScripts_B_B_Weapons_Rifleman_F { + displayName = "MAAWS Assistant"; + scope = 2; + loadout = [["rhs_weap_m4a1_blockII_KAC","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG_RMR",["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red",30],[],""],[],[],["USP_G3C_RS2_KP_OR_MC",[["ACE_tourniquet",4],["ACE_Flashlight_XL50",1],["ACE_MapTools",1],["ACE_microDAGR",1],["ACE_packingBandage",16],["kat_chestSeal",2],["kat_guedel",1],["ACE_EarPlugs",1],["ACE_splint",2],["ACE_quikclot",8],["ACE_CableTie",2],["kat_Painkiller",2,10],["ACE_Chemlight_IR",1,1]]],["USP_CRYE_JPC_ASLTB",[["SmokeShell",4,1],["HandGrenade",2,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red",2,30],["rhs_mag_30Rnd_556x45_M855A1_PMAG",5,30]]],["B_Carryall_mcamo",[["USP_PVS15",1],["ACE_EntrenchingTool",1],["MRAWS_HEAT_F",3,1],["MRAWS_HE_F",2,1]]],"USP_OPSCORE_FASTMTC_CTW","",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ACE_Altimeter",""]]; +}; + +class Cav_B_B_Weapons_Mortar_FireTeamLeader_F: cScripts_B_B_Weapons_Rifleman_F { + displayName = "Mortar Team Leader"; + scope = 2; + loadout = [["rhs_weap_m4a1_m320","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG_RMR",["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red",30],["rhs_mag_M664_red_cluster",1],""],[],["UK3CB_P320_DES","","acc_flashlight_pistol","",["UK3CB_P320_9x19_17Rnd",17],[],""],["USP_G3C_RS_KP_OR_MC",[["ACE_packingBandage",16],["ACE_quikclot",8],["ACE_tourniquet",4],["kat_chestSeal",2],["kat_guedel",1],["ACE_microDAGR",1],["ACE_MapTools",1],["ACE_EarPlugs",1],["ACE_CableTie",2],["ACE_splint",2],["ACE_Flashlight_XL50",1],["ACE_Chemlight_IR",1,1],["kat_Painkiller",2,10]]],["USP_CRYE_CPC_COMMS_BELT_MC",[["HandGrenade",2,1],["SmokeShell",4,1],["SmokeShellBlue",2,1],["SmokeShellPurple",1,1],["SmokeShellRed",2,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tracer_Red",2,30],["rhs_mag_m713_Red",2,1],["rhs_mag_m714_White",6,1],["ACE_HuntIR_M203",2,1],["rhs_mag_M664_red_cluster",1,1],["UK3CB_P320_9x19_17Rnd",2,17],["rhs_mag_30Rnd_556x45_M855A1_PMAG",5,30]]],["USP_TACTICAL_PACK",[["ACE_HuntIR_monitor",1],["USP_PVS31_HIGH",1],["ACE_EntrenchingTool",1],["NDS_M_6Rnd_60mm_HE",3,6]]],"USP_OPS_FASTXP_TAN_MC_06","",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ACE_Altimeter",""]]; +}; +class Cav_B_B_Weapons_Mortar_M224_F: cScripts_B_B_Weapons_Rifleman_F { + displayName = "Mortar Gunner"; + scope = 2; + loadout = [["rhs_weap_m4a1_blockII_KAC","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG_RMR",["rhs_mag_30Rnd_556x45_M855A1_PMAG",30],[],""],[],[],["USP_G3C_RS2_KP_OR_MC",[["ACE_quikclot",8],["ACE_tourniquet",4],["ACE_Flashlight_XL50",1],["ACE_MapTools",1],["ACE_EarPlugs",1],["ACE_microDAGR",1],["ACE_packingBandage",16],["kat_chestSeal",2],["kat_guedel",1],["ACE_CableTie",2],["ACE_splint",2],["kat_Painkiller",2,10],["ACE_Chemlight_IR",2,1]]],["USP_CRYE_CPC_WEAPON_BELT_MC",[["USP_PVS15",1],["SmokeShell",2,1],["HandGrenade",2,1],["SmokeShellPurple",1,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG",7,30]]],["NDS_B_M224_mortar",[]],"USP_OPSCORE_FASTMTC_CW","",[],["ItemMap","ItemAndroid","","ItemCompass","ACE_Altimeter",""]]; + icon = "iconStaticMortar"; +}; +class Cav_B_B_Weapons_Mortar_Assistant_F: cScripts_B_B_Weapons_Rifleman_F { + displayName = "Mortar Assistant"; + scope = 2; + loadout = [["rhs_weap_m4a1_blockII_KAC","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG_RMR",["rhs_mag_30Rnd_556x45_M855A1_PMAG",30],[],""],[],[],["USP_G3C_RS2_KP_OR_MC",[["ACE_quikclot",8],["ACE_tourniquet",4],["ACE_Flashlight_XL50",1],["ACE_MapTools",1],["ACE_PlottingBoard",1],["ACE_microDAGR",1],["ACE_packingBandage",16],["kat_chestSeal",2],["kat_guedel",1],["ACE_EarPlugs",1],["ACE_splint",2],["ACE_artilleryTable",1],["kat_Painkiller",2,10]]],["USP_CRYE_JPC_ASLTB",[["SmokeShell",4,1],["HandGrenade",2,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG",7,30]]],["B_Carryall_mcamo",[["USP_PVS15",1],["ACE_EntrenchingTool",1],["NDS_M_6Rnd_60mm_HE",3,6],["NDS_M_6Rnd_60mm_HE_0",2,6]]],"USP_OPSCORE_FASTMTC_CW","",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ACE_Altimeter",""]]; +}; diff --git a/cScripts/Loadouts/CfgLoadouts_Charlie_Squad.hpp b/cScripts/Loadouts/CfgLoadouts_Charlie_Squad.hpp index 86d1e1af0..5ece5793f 100644 --- a/cScripts/Loadouts/CfgLoadouts_Charlie_Squad.hpp +++ b/cScripts/Loadouts/CfgLoadouts_Charlie_Squad.hpp @@ -15,11 +15,6 @@ class Cav_B_C_PlatoonSergeant_F: Cav_B_C_Officer_F { scope = 2; loadout = [["rhs_weap_m4a1_blockII_KAC","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG_RMR_3d",["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tan_Tracer_Red",30],[],"rhsusf_acc_grip2"],[],["UK3CB_P320_DES","","acc_flashlight_pistol","",["UK3CB_P320_9x19_17Rnd",17],[],""],["USP_G3C_RS2_KP_OR_MC",[["ACE_tourniquet",4],["ACE_Flashlight_XL50",1],["ACE_MapTools",1],["ACE_microDAGR",1],["ACE_packingBandage",14],["kat_chestSeal",2],["kat_guedel",1],["ACE_EarPlugs",1],["kat_Painkiller",2,10]]],["USP_CRYE_JPC_ASLTB",[["UK3CB_P320_9x19_17Rnd",2,17],["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tan_Tracer_Red",9,30],["SmokeShell",4,1],["SmokeShellBlue",2,1],["HandGrenade",2,1]]],["USP_TACTICAL_PACK",[["USP_PVS15",1],["ACE_splint",2],["ACE_SpraypaintRed",1],["ACE_EntrenchingTool",1],["ACE_CableTie",2],["SmokeShellPurple",1,1],["SmokeShellRed",2,1],["SmokeShellBlue",2,1]]],"USP_OPSCORE_FASTMTC_CGTW","",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ACE_Altimeter",""]]; }; -class Cav_B_C_PlatoonSergeantVintage_F: Cav_B_C_Officer_F { - displayName = "Vintage Platoon Sergeant"; - scope = 2; - loadout = [["UK3CB_M16A1","","","",["rhs_mag_20Rnd_556x45_M855A1_Stanag",20],[],""],[],["rhsusf_weap_m1911a1","","","",["rhsusf_mag_7x45acp_MHP",7],[],""],["USP_G3C_RS2_KP_OR_MC",[["ACE_tourniquet",4],["ACE_Flashlight_XL50",1],["ACE_MapTools",1],["ACE_microDAGR",1],["ACE_packingBandage",14],["kat_chestSeal",2],["kat_guedel",1],["ACE_EarPlugs",1],["kat_Painkiller",2,10]]],["USP_CRYE_JPC_ASLTB",[["SmokeShell",4,1],["SmokeShellBlue",2,1],["HandGrenade",2,1],["rhs_mag_20Rnd_556x45_M855A1_Stanag",12,20],["rhsusf_mag_7x45acp_MHP",3,7]]],["USP_TACTICAL_PACK",[["USP_PVS15",1],["ACE_splint",2],["ACE_SpraypaintRed",1],["ACE_EntrenchingTool",1],["ACE_CableTie",2],["SmokeShellPurple",1,1],["SmokeShellRed",2,1],["SmokeShellBlue",2,1]]],"USP_OPSCORE_FASTMTC_CGTW","",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ACE_Altimeter",""]]; -}; class Cav_B_C_PlatoonMedic_F: Cav_B_C_Officer_F { displayName = "$STR_Cav_Charlie_Characters_C_PlatoonMedic"; scope = 2; @@ -46,7 +41,7 @@ class Cav_B_C_SquadLeader_F: Cav_B_Charlie_base_F { class Cav_B_C_FireTeamLeader_F: Cav_B_Charlie_base_F { displayName = "$STR_Cav_Charlie_Characters_C_FireTeamLeader"; scope = 2; - category[] += {"cScripts_Loadout_Cat_Charlie_Squad"}; + category[] += {"cScripts_Loadout_Cat_Charlie_Rifle_Squad"}; loadout = [["rhs_weap_m4a1_m320","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15_bk","rhsusf_acc_ACOG_RMR_3d",["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tan",30],[],""],[],[],["USP_G3C_RS2_KP_OR_MC",[["ACE_tourniquet",4],["ACE_Flashlight_XL50",1],["ACE_MapTools",1],["ACE_microDAGR",1],["ACE_packingBandage",14],["kat_chestSeal",2],["kat_guedel",1],["ACE_EarPlugs",1],["kat_Painkiller",2,10]]],["USP_CRYE_JPC_TLB",[["ACE_IR_Strobe_Item",1],["SmokeShell",4,1],["HandGrenade",2,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tan_Tracer_Red",10,30],["ACE_HuntIR_M203",1,1],["rhs_mag_m713_Red",2,1],["rhs_mag_m714_White",2,1],["SmokeShellPurple",1,1]]],["USP_REEBOW_3DAP_MC",[["ACE_HuntIR_monitor",1],["ACE_splint",2],["ACE_EntrenchingTool",1],["ACE_SpraypaintRed",1],["ACE_CableTie",2],["USP_PVS15",1],["rhsusf_200Rnd_556x45_mixed_soft_pouch",2,200],["SmokeShellBlue",2,1]]],"USP_OPSCORE_FASTMTC_CGSW","",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ACE_Altimeter",""]]; role = "fireteamleader"; icon = "iconManLeader"; @@ -54,33 +49,33 @@ class Cav_B_C_FireTeamLeader_F: Cav_B_Charlie_base_F { class Cav_B_C_AutomaticRifleman_F: Cav_B_Charlie_base_F { displayName = "$STR_Cav_Charlie_Characters_C_AutomaticRifleman"; scope = 2; - category[] += {"cScripts_Loadout_Cat_Charlie_Squad"}; + category[] += {"cScripts_Loadout_Cat_Charlie_Rifle_Squad"}; loadout = [["rhs_weap_m249_light_S_vfg2","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15side_bk","rhsusf_acc_elcan_3d",["rhsusf_200Rnd_556x45_mixed_soft_pouch",200],[],"rhsusf_acc_grip4_bipod"],[],[],["USP_G3C_KP_OR_MC",[["ACE_tourniquet",4],["ACE_Flashlight_XL50",1],["ACE_MapTools",1],["ACE_microDAGR",1],["ACE_packingBandage",14],["kat_chestSeal",2],["kat_guedel",1],["ACE_splint",2],["ACE_EarPlugs",1],["kat_Painkiller",2,10]]],["USP_CRYE_JPC_MGB",[["SmokeShell",4,1],["HandGrenade",2,1],["rhsusf_200Rnd_556x45_mixed_soft_pouch",4,200]]],["USP_ZIPON_PANEL_CPC_MC",[["USP_PVS15",1],["rhsusf_200Rnd_556x45_mixed_soft_pouch",2,200]]],"USP_OPSCORE_FASTMTC_CGSW","",[],["ItemMap","","","ItemCompass","ACE_Altimeter",""]]; icon = "iconManMG"; }; class Cav_B_C_Grenadier_F: Cav_B_Charlie_base_F { displayName = "$STR_Cav_Charlie_Characters_C_Grenadier"; scope = 2; - category[] += {"cScripts_Loadout_Cat_Charlie_Squad"}; + category[] += {"cScripts_Loadout_Cat_Charlie_Rifle_Squad"}; loadout = [["rhs_weap_m4a1_m320","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG_RMR_3d",["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tan",30],["rhs_mag_M433_HEDP",1],""],[],[],["USP_G3C_RS_CU_KP_OR_MC",[["ACE_tourniquet",4],["ACE_Flashlight_XL50",1],["ACE_MapTools",1],["ACE_microDAGR",1],["ACE_packingBandage",14],["kat_chestSeal",2],["kat_guedel",1],["ACE_splint",2],["kat_Painkiller",2,10]]],["USP_CRYE_JPC_GRB",[["SmokeShell",4,1],["HandGrenade",2,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tan",9,30],["rhs_mag_M433_HEDP",12,1],["rhs_mag_m714_White",4,1],["rhs_mag_m713_Red",2,1]]],["USP_ZIPON_PACK_CPC_MC",[["USP_PVS15",1],["ACE_EarPlugs",1],["ACE_EntrenchingTool",1],["rhs_mag_M433_HEDP",12,1],["rhs_mag_m714_White",4,1],["rhs_mag_m713_Red",2,1]]],"USP_OPSCORE_FASTMTC_CGSW","",["rhsusf_bino_m24_ARD","","","",[],[],""],["ItemMap","","","ItemCompass","ACE_Altimeter",""]]; }; class Cav_B_C_RiflemanLAT_F: Cav_B_Charlie_base_F { displayName = "$STR_Cav_Charlie_Characters_C_RiflemanLAT"; scope = 2; - category[] += {"cScripts_Loadout_Cat_Charlie_Squad"}; + category[] += {"cScripts_Loadout_Cat_Charlie_Rifle_Squad"}; loadout = [["rhs_weap_m4a1_blockII_KAC","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG_RMR_3d",["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tan",30],[],""],["rhs_weap_M136_hedp","","","",[],[],""],[],["USP_G3C_RS_CU_KP_OR_MC",[["ACE_tourniquet",4],["ACE_Flashlight_XL50",1],["ACE_MapTools",1],["ACE_microDAGR",1],["ACE_packingBandage",14],["kat_chestSeal",2],["kat_guedel",1],["ACE_splint",2],["kat_Painkiller",2,10]]],["USP_CRYE_JPC_ASLTB",[["SmokeShell",4,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tan",9,30],["HandGrenade",2,1]]],["USP_ZIPON_PACK_CPC_BC_MC",[["USP_PVS15",1],["ACE_EntrenchingTool",1]]],"USP_OPSCORE_FASTMTC_CGSW","",[],["ItemMap","","","ItemCompass","ACE_Altimeter",""]]; icon = "iconManAT"; }; class Cav_B_C_Marksman_F_Local: Cav_B_Charlie_base_F { displayName = "Designated Marksman"; scope = 2; - category[] += {"cScripts_Loadout_Cat_Charlie_Squad"}; + category[] += {"cScripts_Loadout_Cat_Charlie_Rifle_Squad"}; loadout = [["rhs_weap_sr25_ec","","rhsusf_acc_anpeq15side_bk","optic_AMS",["rhsusf_20Rnd_762x51_SR25_m118_special_Mag",20],[],"rhsusf_acc_harris_bipod"],[],[],["USP_G3C_RS_KP_OR_MC",[["ACE_packingBandage",10],["ACE_quikclot",10],["kat_chestSeal",2],["kat_guedel",1],["ACE_tourniquet",4],["ACE_microDAGR",1],["ACE_MapTools",1],["ACE_Chemlight_Shield",1],["ACE_Chemlight_White",1,1]]],["USP_CRYE_JPC_DMB",[["HandGrenade",2,1],["SmokeShell",4,1],["SmokeShellPurple",1,1],["rhsusf_20Rnd_762x51_SR25_m118_special_Mag",9,20]]],["USP_ZIPON_PACK_CPC_MC",[["USP_PVS15",1],["ACE_wirecutter",1],["ACE_EntrenchingTool",1],["ACE_splint",4],["kat_Painkiller",2,10]]],"USP_OPSCORE_FASTMTC_GSW","",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ACE_Altimeter",""]]; }; class Cav_B_C_CombatLifeSaver_F: Cav_B_Charlie_base_F { - displayName = "$STR_Cav_Charlie_Characters_C_CombatLifeSaver"; + displayName = "Combat Lifesaver"; scope = 2; - category[] += {"cScripts_Loadout_Cat_Charlie_Squad"}; + category[] += {"cScripts_Loadout_Cat_Charlie_Rifle_Squad"}; loadout = [["rhs_weap_m4a1_blockII_KAC","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG_RMR",["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tan",30],[],""],[],[],["USP_G3C_CU_KP_OR_MC",[["ACE_tourniquet",4],["ACE_Flashlight_XL50",1],["ACE_MapTools",1],["ACE_microDAGR",1],["ACE_packingBandage",14],["ACE_splint",2],["ACE_EarPlugs",1],["ACE_Chemlight_IR",2,1]]],["USP_CRYE_JPC_DMB",[["SmokeShell",4,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tan",9,30],["HandGrenade",2,1],["SmokeShellBlue",1,1],["SmokeShellPurple",1,1]]],["USP_DELTA_BAG_MC",[["USP_PVS15",1],["ACE_packingBandage",40],["ACE_quikclot",40],["ACE_EntrenchingTool",1],["ACE_splint",8],["ACE_tourniquet",12],["kat_chestSeal",10],["ACE_epinephrine",3],["kat_guedel",10],["kat_ncdKit",5],["kat_pocketBVM",1],["kat_accuvac",1],["kat_phenylephrineAuto",3],["kat_CarbonateItem",1],["kat_Painkiller",7,10]]],"USP_OPSCORE_FASTMTC_GSW","USP_MFRAME_TAN",[],["ItemMap","","","ItemCompass","ACE_Altimeter",""]]; insignia = "cav_insignia_specialized_cls"; abilityMedic = 1; role = "cls"; diff --git a/cScripts/Loadouts/CfgLoadouts_Charlie_Weapon.hpp b/cScripts/Loadouts/CfgLoadouts_Charlie_Weapon.hpp index 7ca95f210..a0048aeca 100644 --- a/cScripts/Loadouts/CfgLoadouts_Charlie_Weapon.hpp +++ b/cScripts/Loadouts/CfgLoadouts_Charlie_Weapon.hpp @@ -9,7 +9,7 @@ class Cav_B_C_Weapons_SquadLeader_F: Cav_B_C_SquadLeader_F { loadout = [["rhs_weap_m4a1_m320","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG_RMR",["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tan",30],["rhs_mag_m713_Red",1],""],[],[],["USP_G3C_RS2_KP_OR_MC",[["ACE_quikclot",10],["kat_chestSeal",2],["kat_guedel",1],["ACE_tourniquet",4],["ACE_Flashlight_XL50",1],["ACE_MapTools",1],["ACE_EarPlugs",1],["ACE_microDAGR",1],["ACE_CableTie",2],["kat_Painkiller",1,10]]],["USP_CRYE_JPC_TLB",[["ACE_IR_Strobe_Item",1],["SmokeShell",4,1],["ACE_Chemlight_IR",2,1],["SmokeShellRed",2,1],["HandGrenade",2,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tan_Tracer_Red",11,30],["rhs_mag_m713_Red",3,1],["ACE_HuntIR_M203",4,1],["SmokeShellBlue",2,1]]],["USP_TACTICAL_PACK",[["ACE_HuntIR_monitor",1],["USP_PVS15",1],["ACE_splint",2],["ACE_SpraypaintRed",1],["ACE_EntrenchingTool",1]]],"USP_OPSCORE_FASTMTC_CMSW","",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ACE_Altimeter",""]]; }; class Cav_B_C_Weapons_M240B_FireTeamLeader_F: Cav_B_Charlie_Weapons_base_F { - displayName = "Machine Gunner Fireteam Leader "; + displayName = "Machine Gun Fireteam Leader "; scope = 2; loadout = [["rhs_weap_m4a1_m320","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15_bk","rhsusf_acc_ACOG_RMR",["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tan",30],["rhs_mag_M433_HEDP",1],""],[],[],["USP_G3C_RS2_KP_OR_MC",[["ACE_quikclot",10],["kat_chestSeal",2],["kat_guedel",1],["ACE_tourniquet",4],["ACE_Flashlight_XL50",1],["ACE_MapTools",1],["ACE_microDAGR",1],["ACE_CableTie",2],["ACE_splint",2],["kat_Painkiller",1,10]]],["USP_CRYE_CPC_COMMS_BELT_MC",[["ACE_IR_Strobe_Item",1],["SmokeShell",4,1],["ACE_Chemlight_IR",2,1],["HandGrenade",2,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tan_Tracer_Red",9,30],["rhs_mag_m713_Red",4,1],["rhs_mag_M433_HEDP",7,1],["SmokeShellBlue",2,1],["SmokeShellRed",1,1]]],["B_Kitbag_mcamo",[["USP_PVS15",1],["ACE_SpraypaintRed",1],["ACE_EntrenchingTool",1],["rhsusf_100Rnd_762x51_m62_tracer",5,100]]],"USP_OPSCORE_FASTMTC_CMSW","",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ACE_Altimeter",""]]; icon = "iconManLeader"; @@ -22,7 +22,7 @@ class Cav_B_C_Weapons_M240B_Machinegunner_F: Cav_B_Charlie_Weapons_base_F { }; class Cav_B_C_Weapons_M240B_MachinegunnerAmmoBearer_F: Cav_B_Charlie_Weapons_base_F { - displayName = "Machine Gunner Assistant"; + displayName = "Machine Gun Assistant"; scope = 2; loadout = [["rhs_weap_m4a1_blockII_KAC","rhsusf_acc_SF3P556","rhsusf_acc_anpeq15","rhsusf_acc_ACOG_RMR",["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tan",30],[],""],["dzn_MG_Tripod_M122A1_M240Mount_Carry","","","",[],[],""],[],["USP_G3C_RS2_KP_OR_MC",[["ACE_quikclot",10],["kat_chestSeal",2],["kat_guedel",1],["ACE_tourniquet",4],["ACE_Flashlight_XL50",1],["ACE_MapTools",1],["ACE_microDAGR",1],["ACE_splint",2],["kat_Painkiller",1,10]]],["USP_CRYE_CPC_FAST_BELT_MC",[["ACE_EntrenchingTool",1],["SmokeShell",3,1],["ACE_Chemlight_IR",2,1],["rhs_mag_30Rnd_556x45_M855A1_PMAG_Tan",9,30],["HandGrenade",2,1]]],["B_Kitbag_mcamo",[["USP_PVS15",1],["rhsusf_100Rnd_762x51_m62_tracer",6,100],["ACE_SpareBarrel",1,1]]],"USP_OPSCORE_FASTMTC_CW","",["ACE_Vector","","","",[],[],""],["ItemMap","ItemAndroid","","ItemCompass","ACE_Altimeter",""]]; }; diff --git a/cScripts/functions/systems/fn_setupLoadoutCategories.sqf b/cScripts/functions/systems/fn_setupLoadoutCategories.sqf index 5e976019c..81d1d505d 100644 --- a/cScripts/functions/systems/fn_setupLoadoutCategories.sqf +++ b/cScripts/functions/systems/fn_setupLoadoutCategories.sqf @@ -50,9 +50,9 @@ if (_aceCategory == "ACE_SelfActions") then { [_object, "cScripts_Loadout_Cat_Alpha_Rotary", "Rotary", _pilotIcon, [_aceCategory, _mainCategory, "cScripts_Loadout_Cat_Alpha"]] call FUNC(createActionCategory); [_object, "cScripts_Loadout_Cat_Bravo", "Bravo Co.", "", [_aceCategory, _mainCategory]] call FUNC(createActionCategory); [_object, "cScripts_Loadout_Cat_Bravo_Leadership", "Leadership", _leadIcon, [_aceCategory, _mainCategory]] call FUNC(createActionCategory); -[_object, "cScripts_Loadout_Cat_Bravo_Viking_Leadership", "Viking Leadership", _leadIcon, [_aceCategory, _mainCategory, "cScripts_Loadout_Cat_Bravo"]] call FUNC(createActionCategory); -[_object, "cScripts_Loadout_Cat_Bravo_Viking_Squad", "Viking Squad", _squadIcon, [_aceCategory, _mainCategory, "cScripts_Loadout_Cat_Bravo"]] call FUNC(createActionCategory); -[_object, "cScripts_Loadout_Cat_Bravo_Viking_Weapons", "Viking Weapons", _speciIcon, [_aceCategory, _mainCategory, "cScripts_Loadout_Cat_Bravo"]] call FUNC(createActionCategory); +[_object, "cScripts_Loadout_Cat_Bravo_Viking_Leadership", "Leadership", _leadIcon, [_aceCategory, _mainCategory, "cScripts_Loadout_Cat_Bravo"]] call FUNC(createActionCategory); +[_object, "cScripts_Loadout_Cat_Bravo_Viking_Rifle_Squad","Rifle Squad", _squadIcon, [_aceCategory, _mainCategory, "cScripts_Loadout_Cat_Bravo"]] call FUNC(createActionCategory); +[_object, "cScripts_Loadout_Cat_Bravo_Viking_Weapons", "Weapons Squad", _speciIcon, [_aceCategory, _mainCategory, "cScripts_Loadout_Cat_Bravo"]] call FUNC(createActionCategory); [_object, "cScripts_Loadout_Cat_Bravo_Atlas", "Atlas", _iconMedic, [_aceCategory, _mainCategory, "cScripts_Loadout_Cat_Bravo"]] call FUNC(createActionCategory); [_object, "cScripts_Loadout_Cat_Bravo_Tank", "Tank", _iconTank, [_aceCategory, _mainCategory, "cScripts_Loadout_Cat_Bravo"]] call FUNC(createActionCategory); [_object, "cScripts_Loadout_Cat_Bravo_IFV", "IFV", _iconIfv, [_aceCategory, _mainCategory, "cScripts_Loadout_Cat_Bravo"]] call FUNC(createActionCategory); @@ -60,10 +60,10 @@ if (_aceCategory == "ACE_SelfActions") then { [_object, "cScripts_Loadout_Cat_Bravo_Special", "Special", _speciIcon, [_aceCategory, _mainCategory, "cScripts_Loadout_Cat_Bravo"]] call FUNC(createActionCategory); [_object, "cScripts_Loadout_Cat_Charlie", "Charlie Co.", "", [_aceCategory, _mainCategory]] call FUNC(createActionCategory); [_object, "cScripts_Loadout_Cat_Charlie_Leadership", "Leadership", _leadIcon, [_aceCategory, _mainCategory, "cScripts_Loadout_Cat_Charlie"]] call FUNC(createActionCategory); -[_object, "cScripts_Loadout_Cat_Charlie_Squad", "Squad", _squadIcon, [_aceCategory, _mainCategory, "cScripts_Loadout_Cat_Charlie"]] call FUNC(createActionCategory); +[_object, "cScripts_Loadout_Cat_Charlie_Rifle_Squad", "Rifle Squad", _squadIcon, [_aceCategory, _mainCategory, "cScripts_Loadout_Cat_Charlie"]] call FUNC(createActionCategory); [_object, "cScripts_Loadout_Cat_Charlie_Bandit_Squad", "Bandit Squad", _squadIcon, [_aceCategory, _mainCategory, "cScripts_Loadout_Cat_Charlie"]] call FUNC(createActionCategory); [_object, "cScripts_Loadout_Cat_Charlie_Misfit_Squad", "Misfit Squad", _squadIcon, [_aceCategory, _mainCategory, "cScripts_Loadout_Cat_Charlie"]] call FUNC(createActionCategory); -[_object, "cScripts_Loadout_Cat_Charlie_Weapons", "Weapons", _speciIcon, [_aceCategory, _mainCategory, "cScripts_Loadout_Cat_Charlie"]] call FUNC(createActionCategory); +[_object, "cScripts_Loadout_Cat_Charlie_Weapons", "Weapons Squad", _speciIcon, [_aceCategory, _mainCategory, "cScripts_Loadout_Cat_Charlie"]] call FUNC(createActionCategory); [_object, "cScripts_Loadout_Cat_Charlie_Special", "Special", _speciIcon, [_aceCategory, _mainCategory, "cScripts_Loadout_Cat_Charlie"]] call FUNC(createActionCategory); [_object, "cScripts_Loadout_Cat_Training", "Training", "", [_aceCategory, _mainCategory]] call FUNC(createActionCategory); @@ -72,4 +72,4 @@ if (_aceCategory == "ACE_SelfActions") then { [_object, "cScripts_Loadout_Cat_Other_Russian", "Russian", "", [_aceCategory, _mainCategory]] call FUNC(createActionCategory); [_object, "cScripts_Loadout_Cat_Other_Insurgent", "Insurgent", "", [_aceCategory, _mainCategory]] call FUNC(createActionCategory); -_mainCategory \ No newline at end of file +_mainCategory From 1e7104d2e65f5fa08df40f080b1fb8cce6824717 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Brostr=C3=B6m=2EA=20=7C=20Evul?= Date: Mon, 22 Jul 2024 13:38:44 +0200 Subject: [PATCH 10/15] Added support for jump out to alternate doors as well as keeping the jump out position random (#1215) --- cScripts/functions/mission/fn_addHaloJump.sqf | 16 ++++++---- cScripts/functions/mission/fn_addLineJump.sqf | 16 ++++++---- .../functions/systems/fn_para_haloJump.sqf | 31 ++++++++++++++---- .../functions/systems/fn_para_lineJump.sqf | 32 +++++++++++++++---- .../vehicle/fn_vehicle_addFunctions.sqf | 12 +++---- 5 files changed, 73 insertions(+), 34 deletions(-) diff --git a/cScripts/functions/mission/fn_addHaloJump.sqf b/cScripts/functions/mission/fn_addHaloJump.sqf index 85f756437..6ee0d1e6c 100644 --- a/cScripts/functions/mission/fn_addHaloJump.sqf +++ b/cScripts/functions/mission/fn_addHaloJump.sqf @@ -6,19 +6,21 @@ * Arguments: * 0: Vehicle * 1: Minimum altetude (Optional) (Default; 5000) - * 4: Chute Vehicle Class (Optional) (Default; "B_Parachute") + * 2: Chute Vehicle Class (Optional) (Default; "B_Parachute") + * 3: Staggared Jump (Optional) [Default; false] * * Example: * ["my_c130"] call cScripts_fnc_addHaloJump * ["my_c130", 5000] call cScripts_fnc_addHaloJump - * ["my_c130", 5000, "B_Parachute"] call cScripts_fnc_addHaloJump + * ["my_c130", 5000, "B_Parachute", false] call cScripts_fnc_addHaloJump * */ params [ ["_vehicle", objNull, [objNull]], ["_minAltetude", 5000, [5000]], - ["_chuteBackpackClass", "B_Parachute", ["B_Parachute"]] + ["_chuteBackpackClass", "B_Parachute", ["B_Parachute"]], + ["_allowStaggared", false, [false]] ]; // Check so the options arent added twice. @@ -52,14 +54,14 @@ private _actionID = [ {}, { params ["_target", "_caller", "_actionId", "_arguments"]; - _arguments params ["_chuteBackpackClass"]; - [_caller, _target, _chuteBackpackClass] call EFUNC(para,haloJump) + _arguments params ["_chuteBackpackClass", "_allowStaggared"]; + [_caller, _target, _chuteBackpackClass, _allowStaggared] call EFUNC(para,haloJump) }, {}, - [_chuteBackpackClass], + [_chuteBackpackClass, _allowStaggared], 0, 25, false ] call BIS_fnc_holdActionAdd; -_vehicle setVariable [QEGVAR(VehicleFunc,HaloAction), [_vehicle, _actionID, _minAltetude, _chuteBackpackClass]]; +_vehicle setVariable [QEGVAR(VehicleFunc,HaloAction), [_vehicle, _actionID, _minAltetude, _chuteBackpackClass, _allowStaggared]]; diff --git a/cScripts/functions/mission/fn_addLineJump.sqf b/cScripts/functions/mission/fn_addLineJump.sqf index d80c13976..6a3cea135 100644 --- a/cScripts/functions/mission/fn_addLineJump.sqf +++ b/cScripts/functions/mission/fn_addLineJump.sqf @@ -9,12 +9,13 @@ * 2: Maximum altetude (Optional) (Default; 350) * 3: Maximum speed (Optional) (Default; 310) * 4: Chute Vehicle Class (Optional) (Default; "rhs_d6_Parachute") + * 5: Staggared Jump (Optional) [Default; false] * * Example: * ["my_c130"] call cScripts_fnc_addLineJump * ["my_c130", 180] call cScripts_fnc_addLineJump - * ["my_c130", 180, 350, 300] call cScripts_fnc_addLineJump - * ["my_c130", 180, 350, 300, "rhs_d6_Parachute"] call cScripts_fnc_addLineJump + * ["my_c130", 180, 350, 310] call cScripts_fnc_addLineJump + * ["my_c130", 180, 350, 310, "rhs_d6_Parachute", false] call cScripts_fnc_addLineJump * */ @@ -23,7 +24,8 @@ params [ ["_minAltetude", 180, [180]], ["_maxAltetude", 350, [350]], ["_maxSpeed", 310, [310]], - ["_chuteVehicleClass", "rhs_d6_Parachute", ["rhs_d6_Parachute"]] + ["_chuteVehicleClass", "rhs_d6_Parachute", ["rhs_d6_Parachute"]], + ["_allowStaggared", false, [false]] ]; // Check so the options arent added twice. @@ -57,14 +59,14 @@ private _actionID = [ {}, { params ["_target", "_caller", "_actionId", "_arguments"]; - _arguments params ["_chuteVehicleClass"]; - [_caller, _target, _chuteVehicleClass] call EFUNC(para,lineJump) + _arguments params ["_chuteVehicleClass", "_allowStaggared"]; + [_caller, _target, _chuteVehicleClass, _allowStaggared] call EFUNC(para,lineJump) }, {}, - [_chuteVehicleClass], + [_chuteVehicleClass, _allowStaggared], 0, 25, false ] call BIS_fnc_holdActionAdd; -_vehicle setVariable [QEGVAR(VehicleFunc,JumpAction), [_vehicle, _actionID, _minAltetude, _maxAltetude, _maxSpeed, _chuteVehicleClass]]; +_vehicle setVariable [QEGVAR(VehicleFunc,JumpAction), [_vehicle, _actionID, _minAltetude, _maxAltetude, _maxSpeed, _chuteVehicleClass, _allowStaggared]]; diff --git a/cScripts/functions/systems/fn_para_haloJump.sqf b/cScripts/functions/systems/fn_para_haloJump.sqf index 485980475..481f58120 100644 --- a/cScripts/functions/systems/fn_para_haloJump.sqf +++ b/cScripts/functions/systems/fn_para_haloJump.sqf @@ -7,26 +7,43 @@ * 0: Player * 1: Vehicle * 2: Chute Vehicle (Optional) [Default; "NonSteerable_Parachute_F"] + * 3: Staggared Jump (Optional) [Default; false] * * Example: * ["bob","my_C130"] call cScripts_fnc_para_haloJump - * ["bob","my_C130", "NonSteerable_Parachute_F"] call cScripts_fnc_para_haloJump + * ["bob","my_C130", "NonSteerable_Parachute_F", false] call cScripts_fnc_para_haloJump * */ params [ ["_player", objNull, [objNull]], ["_vehicle", objNull, [objNull]], - ["_chuteBackpackClass", "B_Parachute"] + ["_chuteBackpackClass", "B_Parachute"], + ["_allowStaggared", false, [false]] ]; +private _offset = if (_allowStaggared) then { + if (GETVAR(_vehicle,EGVAR(VehicleFunc,StaggaredSide),true)) then { + 12+(random [-5,0,5]); + } else { + -12+(random [-5,0,5]); + }; +} else { + random [-14,0,14]; +}; + +if (_allowStaggared) then { + private _side = GETVAR(_vehicle,EGVAR(VehicleFunc,StaggaredSide),true); + SETPVAR(_vehicle,EGVAR(VehicleFunc,StaggaredSide),!_side); +}; + _player allowDamage false; -private _dir = getDir _vehicle - 50; -moveOut _player; -private _pos = ([_vehicle, 14, ((getDir _vehicle) + 180 + 8)] call BIS_fnc_relPos); -_pos = [_pos select 0, _pos select 1, ((getPosATL _vehicle) select 2)]; -_player setPosATL _pos; +private _dir = getDir _vehicle - 50; +moveOut _player; +private _pos = ([_vehicle, 14, ((getDir _vehicle) + 180 + _offset)] call BIS_fnc_relPos); +_pos = [_pos#0, _pos#1, ((getPosATL _vehicle)#2)];; +_player setPosATL _pos; _player setDir _dir - 140; sleep 1.5; diff --git a/cScripts/functions/systems/fn_para_lineJump.sqf b/cScripts/functions/systems/fn_para_lineJump.sqf index 178465902..ab651d281 100644 --- a/cScripts/functions/systems/fn_para_lineJump.sqf +++ b/cScripts/functions/systems/fn_para_lineJump.sqf @@ -7,26 +7,43 @@ * 0: Player * 1: Vehicle * 2: Chute Vehicle (Optional) [Default; "NonSteerable_Parachute_F"] + * 3: Staggared Jump (Optional) [Default; false] * * Example: * ["bob","my_C130"] call cScripts_fnc_para_lineJump - * ["bob","my_C130", "NonSteerable_Parachute_F"] call cScripts_fnc_para_lineJump + * ["bob","my_C130", "NonSteerable_Parachute_F", false] call cScripts_fnc_para_lineJump * */ params [ ["_player", objNull, [objNull]], ["_vehicle", objNull, [objNull]], - ["_chuteVehicleClass", "NonSteerable_Parachute_F"] + ["_chuteVehicleClass", "NonSteerable_Parachute_F"], + ["_allowStaggared", false, [false]] ]; +private _offset = if (_allowStaggared) then { + if (GETVAR(_vehicle,EGVAR(VehicleFunc,StaggaredSide),true)) then { + 12+(random [-5,0,5]); + } else { + -12+(random [-5,0,5]); + }; +} else { + random [-14,0,14]; +}; + +if (_allowStaggared) then { + private _side = GETVAR(_vehicle,EGVAR(VehicleFunc,StaggaredSide),true); + SETPVAR(_vehicle,EGVAR(VehicleFunc,StaggaredSide),!_side); +}; + _player allowDamage false; -private _dir = getDir _vehicle - 50; -moveOut _player; -private _pos = ([_vehicle, 14, ((getDir _vehicle) + 180 + 8)] call BIS_fnc_relPos); -_pos = [_pos select 0, _pos select 1, ((getPosATL _vehicle) select 2)]; -_player setPosATL _pos; +private _dir = getDir _vehicle - 50; +moveOut _player; +private _pos = ([_vehicle, 14, ((getDir _vehicle) + 180 + _offset)] call BIS_fnc_relPos); +_pos = [_pos#0, _pos#1, ((getPosATL _vehicle)#2)];; +_player setPosATL _pos; _player setDir _dir - 140; sleep 1.5; @@ -40,4 +57,5 @@ _chute setVelocity _velocity; [_player] call EFUNC(para,equipment); sleep 0.5; + _player allowDamage true; diff --git a/cScripts/functions/vehicle/fn_vehicle_addFunctions.sqf b/cScripts/functions/vehicle/fn_vehicle_addFunctions.sqf index 23a6af70a..b45e3e5b9 100644 --- a/cScripts/functions/vehicle/fn_vehicle_addFunctions.sqf +++ b/cScripts/functions/vehicle/fn_vehicle_addFunctions.sqf @@ -68,20 +68,20 @@ if (_vehicle iskindOf "Heli_Transport_02_base_F") then { }; if (_vehicle iskindOf "RHS_C130J_Base") then { - [_vehicle] call FUNC(addLineJump); - [_vehicle] call FUNC(addHaloJump); + [_vehicle,nil,nil,true] call FUNC(addLineJump); + [_vehicle,nil,nil,nil,nil,true] call FUNC(addHaloJump); [_vehicle] call FUNC(addEscapeWreck); }; if (_vehicle iskindOf "USAF_C130J") then { - [_vehicle] call FUNC(addLineJump); - [_vehicle] call FUNC(addHaloJump); + [_vehicle,nil,nil,true] call FUNC(addLineJump); + [_vehicle,nil,nil,nil,nil,true] call FUNC(addHaloJump); [_vehicle] call FUNC(addEscapeWreck); }; if (_vehicle iskindOf "USAF_C17") then { - [_vehicle] call FUNC(addLineJump); - [_vehicle] call FUNC(addHaloJump); + [_vehicle,nil,nil,true] call FUNC(addLineJump); + [_vehicle,nil,nil,nil,nil,true] call FUNC(addHaloJump); [_vehicle] call FUNC(addEscapeWreck); }; From c70f78424732651d0d89dd5b27fa851987b820a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Brostr=C3=B6m=2EA=20=7C=20Evul?= Date: Wed, 24 Jul 2024 15:09:32 +0200 Subject: [PATCH 11/15] Added popup target computer (#1218) --- cScripts/CfgFunctions.hpp | 2 + .../systems/fn_training_addTargetComputer.sqf | 68 +++++++++++++++++++ 2 files changed, 70 insertions(+) create mode 100644 cScripts/functions/systems/fn_training_addTargetComputer.sqf diff --git a/cScripts/CfgFunctions.hpp b/cScripts/CfgFunctions.hpp index 34ec8b890..a4b146b0b 100644 --- a/cScripts/CfgFunctions.hpp +++ b/cScripts/CfgFunctions.hpp @@ -133,6 +133,8 @@ class cScripts { class training_addHitIndicator {}; class training_clearhitIndicator {}; + class training_addTargetComputer {}; + // Plane jump class para_lineJump {}; class para_haloJump {}; diff --git a/cScripts/functions/systems/fn_training_addTargetComputer.sqf b/cScripts/functions/systems/fn_training_addTargetComputer.sqf new file mode 100644 index 000000000..eb751e347 --- /dev/null +++ b/cScripts/functions/systems/fn_training_addTargetComputer.sqf @@ -0,0 +1,68 @@ +/* + * Author: SGT.Brostrom.A + * This function allow you to keep targets down as well as resetting the targets + * + * Arguments: + * 0: resetButtonObject + * 1: listOfTargets + * 2: actionCaption (Optional) + * + * Return: + * ActionID + * + * Example: + * [this, [MyTargetVariableName], "Reset Range Targets"] call cScripts_fnc_training_addTargetComputer; + * [this, [T1,T2,T3,T4]] call cScripts_fnc_training_addTargetComputer; + */ + +params [ + ["_object", objNull, [objNull]], + ["_targets",[], [[]]], + ["_action", "Reset Range Targets", [""]] +]; + +{ + _x setVariable ["BIS_poppingEnabled", false]; + _x setVariable ["BIS_isPopping", false]; + _x addEventHandler ["HitPart", { + (_this select 0) params ["_target"]; + + _target setVariable ["nopop", true]; + + _target setVariable ["BIS_isLeaning", false]; + _target setVariable ["BIS_leaningEnabled", false]; + private _rpm = _target getVariable ["BIS_rpm", 6]; + _target animate [format ["Swivel_%1rpm_rot", _rpm], _target animationPhase (format ["Swivel_%1rpm_rot", _rpm])]; + _target setVariable ["BIS_isPopping", false]; + + _target animate ["Terc", 1]; + }]; +} forEach _targets; + +[ + _object, + _action, + "", "", + "true", "true", + {}, + {}, + { + params ["", "", "", "_arguments"]; + _arguments params ["_targets"]; + { + _x setVariable ["nopop", nil]; + + _x setVariable ["BIS_isLeaning", _x getVariable ["BIS_leaningEnabled", false]]; + _x setVariable ["BIS_poppingEnabled", false]; + _x setVariable ["BIS_isPopping", false]; + _x animate ["terc", 0]; + + _x setVariable ["BIS_leaningEnabled", true]; + if (_x getVariable ["BIS_leaningEnabled", false]) then { + _x animate [_x getVariable ["BIS_animName", "Swivel_6rpm_rot"], _x getVariable ["BIS_animPhaseTarget", _x animationPhase (_x getVariable ["BIS_animName", "Swivel_6rpm_rot"])]]; + }; + } forEach _targets; + }, + {}, + [_targets], 0, nil, false, false +] call BIS_fnc_holdActionAdd; From bf28fc74cc815de2ae0a3c0f65a7fa3d5209e0b2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Brostr=C3=B6m=2EA=20=7C=20Evul?= Date: Tue, 30 Jul 2024 10:14:20 +0200 Subject: [PATCH 12/15] Added more stable eventhander for player connections and logging (#1219) --- cScripts/cScripts_postInit.sqf | 4 ---- .../functions/init/fn_init_eventHandlers.sqf | 19 +++++++++++++------ 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/cScripts/cScripts_postInit.sqf b/cScripts/cScripts_postInit.sqf index 030bc830a..df04459e4 100644 --- a/cScripts/cScripts_postInit.sqf +++ b/cScripts/cScripts_postInit.sqf @@ -28,8 +28,4 @@ if (EGVAR(Settings,showDiaryRecords)) then { call EFUNC(civ,init); -onPlayerConnected { - [QEGVAR(log,player), [getPlayerUID player, player]] call CBA_fnc_serverEvent; -}; - INFO("postInit", "Initialization completed."); diff --git a/cScripts/functions/init/fn_init_eventHandlers.sqf b/cScripts/functions/init/fn_init_eventHandlers.sqf index 3622a21e7..ce28c23fa 100644 --- a/cScripts/functions/init/fn_init_eventHandlers.sqf +++ b/cScripts/functions/init/fn_init_eventHandlers.sqf @@ -40,9 +40,10 @@ INFO("InitEventHandlers","Creating Server EventHandlers"); }] call CBA_fnc_addEventHandler; [QEGVAR(log,player), { - params ["_guid","_player"]; + params ["_guid","_name"]; + private _unit = [_guid] call BIS_fnc_getUnitByUID; private _playerLog = GETMVAR(EGVAR(log,players),createHashMap); - INFO_3("PlayerLog","Connected %1 [%2] (GUID: %3)",name _player,typeOf _player,_guid); + INFO_3("PlayerLog","Connected %1 [%2] (GUID: %3)",_name,typeOf _unit,_guid); if (!isNil{_playerLog get _guid}) then { INFO_1("PlayerLog","Updating Log Entry [%1]", isNil{_playerLog get _guid}); @@ -52,18 +53,24 @@ INFO("InitEventHandlers","Creating Server EventHandlers"); _connections pushBack systemTimeUTC; _data set ["connections", _connections]; - _data set ["loadout", typeOf _player]; + private _loadout = GETVAR(EGVAR(Gear,LoadoutClass), typeOf _unit); + _data set ["loadout", GETVAR(EGVAR(Gear,LoadoutClass), typeOf _unit)]; _playerLog set [_guid,_data]; } else { INFO_1("PlayerLog", "Creating Log Entry [%1]", isNil{_playerLog get _guid}); private _entry = createHashMapFromArray [ - ['name', name _player], - ['loadout', typeOf _player], + ['name', _name], + ['loadout', _loadout], ['connectTime', systemTimeUTC], ['connections', [systemTimeUTC]] ]; _playerLog set [_guid,_entry]; }; SETMVAR(EGVAR(log,players),_playerLog); -}] call CBA_fnc_addEventHandler; \ No newline at end of file +}] call CBA_fnc_addEventHandler; + +addMissionEventHandler ["PlayerConnected", { + params ["_id", "_uid", "_name", "_jip", "_owner", "_idstr"]; + [QEGVAR(log,player), [_uid, _name]] call CBA_fnc_serverEvent; +}]; \ No newline at end of file From a830fac687bf0a70ea6e53afc1b8206a2bcfa71c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Brostr=C3=B6m=2EA=20=7C=20Evul?= Date: Fri, 2 Aug 2024 14:03:10 +0200 Subject: [PATCH 13/15] Added better handling for offline checks on player logging to prevent empty object (#1222) --- cScripts/functions/init/fn_init_eventHandlers.sqf | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/cScripts/functions/init/fn_init_eventHandlers.sqf b/cScripts/functions/init/fn_init_eventHandlers.sqf index ce28c23fa..72f93e602 100644 --- a/cScripts/functions/init/fn_init_eventHandlers.sqf +++ b/cScripts/functions/init/fn_init_eventHandlers.sqf @@ -43,7 +43,7 @@ INFO("InitEventHandlers","Creating Server EventHandlers"); params ["_guid","_name"]; private _unit = [_guid] call BIS_fnc_getUnitByUID; private _playerLog = GETMVAR(EGVAR(log,players),createHashMap); - INFO_3("PlayerLog","Connected %1 [%2] (GUID: %3)",_name,typeOf _unit,_guid); + INFO_3("PlayerLog","Connected %1 [%2] (GUID: %3)",_name,_unit,_guid); if (!isNil{_playerLog get _guid}) then { INFO_1("PlayerLog","Updating Log Entry [%1]", isNil{_playerLog get _guid}); @@ -53,8 +53,8 @@ INFO("InitEventHandlers","Creating Server EventHandlers"); _connections pushBack systemTimeUTC; _data set ["connections", _connections]; - private _loadout = GETVAR(EGVAR(Gear,LoadoutClass), typeOf _unit); - _data set ["loadout", GETVAR(EGVAR(Gear,LoadoutClass), typeOf _unit)]; + private _loadout = if (isNull _unit) then {"Trooper"} else {GETVAR(_unit,EGVAR(Gear,LoadoutClass), typeOf _unit)}; + _data set ["loadout", _loadout]; _playerLog set [_guid,_data]; } else { From b789103eb3a84a06380e20e4e27e5c9798c98385 Mon Sep 17 00:00:00 2001 From: Bethea Date: Tue, 13 Aug 2024 06:18:32 -0500 Subject: [PATCH 14/15] Updated TFAR range performance settings. (#1223) --- cba_settings.sqf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cba_settings.sqf b/cba_settings.sqf index eef8472ce..757ae93ec 100644 --- a/cba_settings.sqf +++ b/cba_settings.sqf @@ -1533,9 +1533,9 @@ force force TFAR_fullDuplex = true; force force TFAR_giveLongRangeRadioToGroupLeaders = false; force force TFAR_giveMicroDagrToSoldier = true; force force TFAR_givePersonalRadioToRegularSoldier = false; -force force TFAR_globalRadioRangeCoef = 1; +force force TFAR_globalRadioRangeCoef = 3; force force TFAR_instantiate_instantiateAtBriefing = false; -force force TFAR_objectInterceptionEnabled = true; +force force TFAR_objectInterceptionEnabled = false; force force TFAR_objectInterceptionStrength = 400; force force tfar_radiocode_east = "_opfor"; force force tfar_radiocode_independent = "_independent"; From 0c3b9c57896d504352ee06c947455160660281c2 Mon Sep 17 00:00:00 2001 From: Jonah Pool Date: Mon, 19 Aug 2024 05:30:41 -0400 Subject: [PATCH 15/15] Added emergency Fuel Tank for strykers (#1197) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Broström.A | Evul --- cScripts/functions/vehicle/fn_vehicle_addInventory.sqf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cScripts/functions/vehicle/fn_vehicle_addInventory.sqf b/cScripts/functions/vehicle/fn_vehicle_addInventory.sqf index d22237ac4..91b8181b5 100644 --- a/cScripts/functions/vehicle/fn_vehicle_addInventory.sqf +++ b/cScripts/functions/vehicle/fn_vehicle_addInventory.sqf @@ -226,7 +226,7 @@ if (_vehicle iskindOf "MRAP_01_base_F") then { ["ACE_Wheel", _vehicle, true] call ace_cargo_fnc_loadItem; ["ACE_Wheel", _vehicle, true] call ace_cargo_fnc_loadItem; ["ACE_Wheel", _vehicle, true] call ace_cargo_fnc_loadItem; - + ["FlexibleTank_01_forest_F", _vehicle, true] call ace_cargo_fnc_loadItem; // Emergency Fuel Tank // Vehicle Inventory [_vehicle, GET_CONTAINER("vehicle_strykerDragoon")