This commit is contained in:
commy2 2015-01-11 23:01:27 +01:00
parent 876fa59a32
commit 1bdb2038eb
2 changed files with 119 additions and 18 deletions

View File

@ -1,5 +1,7 @@
#include "script_component.hpp"
class CfgPatches {
class AGM_AI {
class ADDON {
units[] = {};
weapons[] = {};
requiredVersion = 0.60;
@ -60,24 +62,29 @@ class CfgWeapons {
aiDispersionCoefX = 6;
aiDispersionCoefY = 6;
};
class Rifle_Base_F: Rifle {};
class Rifle_Long_Base_F: Rifle_Base_F {};
// MX
class arifle_MX_Base_F: Rifle_Base_F {
aiDispersionCoefY = 18.0;
aiDispersionCoefX = 12.0;
modes[] = {"Single","FullAuto","fullauto_medium","single_medium_optics1","single_far_optics2","AGM_Burst_far"};
modes[] += {"AGM_Burst_far"};
class Single: Mode_SemiAuto {
minRange = 120; // 2;
minRangeProbab = 0.7; // 0.5;
midRange = 300; // 200;
midRangeProbab = 0.5; // 0.7;
};
class FullAuto;
class fullauto_medium: FullAuto {
minRange = 20; // 2;
burst = "3 + round random 5"; //3;
};
class AGM_Burst_far: fullauto_medium {
aiRateOfFire = 2.0;
aiRateOfFireDistance = 500;
@ -89,11 +96,13 @@ class CfgWeapons {
maxRangeProbab = 0.2;
burst = "2 + round random 3";
};
class single_medium_optics1: Single {
aiRateOfFireDistance = 700; // 600;
minRange = 120; // 2;
maxRange = 700; // 600;
};
class single_far_optics2: single_medium_optics1 {
aiRateOfFireDistance = 900; // 700;
minRange = 200; // 100;
@ -101,20 +110,24 @@ class CfgWeapons {
};
};
// MX carbine
class arifle_MXC_F: arifle_MX_Base_F {
aiDispersionCoefY = 18.0;
aiDispersionCoefX = 12.0;
class Single: Single {
minRange = 120; // 2;
minRangeProbab = 0.5; // 0.3;
midRange = 250; // 150;
midRangeProbab = 0.3; // 0.5;
};
class FullAuto;
class fullauto_medium: fullauto_medium {
minRange = 20; // 2;
burst = "3 + round random 5"; //3;
};
class AGM_Burst_far: fullauto_medium {
aiRateOfFire = 2.0;
aiRateOfFireDistance = 400;
@ -126,11 +139,13 @@ class CfgWeapons {
maxRangeProbab = 0.2;
burst = "2 + round random 3";
};
class single_medium_optics1: single_medium_optics1 {
aiRateOfFireDistance = 600; // 500;
minRange = 120; // 2;
maxRange = 600; // 500;
};
class single_far_optics2: single_medium_optics1 {
aiRateOfFireDistance = 800; // 700;
minRange = 200; // 100;
@ -141,6 +156,7 @@ class CfgWeapons {
//class arifle_MX_F: arifle_MX_Base_F {};
//class arifle_MX_GL_F: arifle_MX_Base_F {};
// MX machine gun
class arifle_MXM_F: arifle_MX_Base_F {
class Single: Single {
minRange = 120; // 2;
@ -148,15 +164,18 @@ class CfgWeapons {
midRange = 350; // 250;
midRangeProbab = 0.5; // 0.7;
};
class fullauto_medium: fullauto_medium {
minRange = 20; // 2;
burst = "3 + round random 5"; //3;
};
class single_medium_optics1: single_medium_optics1 {
aiRateOfFireDistance = 700; // 600;
minRange = 120; // 2;
maxRange = 750; // 650;
};
class single_far_optics2: single_far_optics2 {
aiRateOfFireDistance = 900; // 800;
minRange = 200; // 100;
@ -164,13 +183,16 @@ class CfgWeapons {
};
};
// MX sniper rifle
class arifle_MX_SW_F: arifle_MX_Base_F {
aiDispersionCoefY = 24.0;
aiDispersionCoefX = 21.0;
modes[] = {"Single","manual","close","short","medium","far_optic1","far_optic2","AGM_Burst_far"};
modes[] += {"AGM_Burst_far"};
class Single: Mode_SemiAuto {
minRange = 120; // 2;
};
class close;
class medium;
class AGM_Burst_far: medium {
@ -184,31 +206,37 @@ class CfgWeapons {
maxRangeProbab = 0.2;
burst = "3 + round random 5";
};
class far_optic1: close {
aiRateOfFireDistance = 750; // 650;
maxRange = 750; // 650;
};
class far_optic2: far_optic1 {
maxRange = 1100; // 900;
aiRateOfFireDistance = 1100;// 900;
};
};
// Katiba
class arifle_Katiba_Base_F: Rifle_Base_F {
aiDispersionCoefY = 18.0;
aiDispersionCoefX = 12.0;
modes[] = {"Single","FullAuto","single_medium_optics1","single_far_optics2","fullauto_medium","AGM_Burst_far"};
modes[] += {"AGM_Burst_far"};
class Single: Mode_SemiAuto {
minRange = 120; // 2;
minRangeProbab = 0.7; // 0.5;
midRange = 300; // 200;
midRangeProbab = 0.5; // 0.7;
};
class FullAuto;
class fullauto_medium: FullAuto {
minRange = 20; // 2;
burst = "3 + round random 5"; //3;
};
class AGM_Burst_far: fullauto_medium {
aiRateOfFire = 2.0;
aiRateOfFireDistance = 500;
@ -220,32 +248,40 @@ class CfgWeapons {
maxRangeProbab = 0.2;
burst = "2 + round random 3";
};
class single_medium_optics1: Single {
aiRateOfFireDistance = 700; // 600;
minRange = 120; // 2;
maxRange = 700; // 600;
};
class single_far_optics2: single_medium_optics1 {
aiRateOfFireDistance = 900; // 800;
minRange = 200; // 100;
maxRange = 900; // 800;
};
};
// Katiba carbine
class arifle_Katiba_C_F: arifle_Katiba_Base_F {
aiDispersionCoefY = 18.0;
aiDispersionCoefX = 12.0;
class Single: Single {
minRange = 120; // 2;
minRangeProbab = 0.5; // 0.3;
midRange = 250; // 150;
midRangeProbab = 0.3; // 0.7;
};
//class FullAuto: FullAuto {};
class fullauto_medium: fullauto_medium {
minRange = 20; // 2;
maxRange = 150; //100;
burst = "3 + round random 5"; //3;
};
class AGM_Burst_far: fullauto_medium {
aiRateOfFire = 2.0;
aiRateOfFireDistance = 400;
@ -257,10 +293,12 @@ class CfgWeapons {
maxRangeProbab = 0.2;
burst = "2 + round random 3";
};
class single_medium_optics1: single_medium_optics1 {
minRange = 120; // 2;
maxRange = 600; // 500;
};
class single_medium_optics2: single_medium_optics1 {
aiRateOfFireDistance = 800; // 700;
minRange = 200; // 100;
@ -268,24 +306,29 @@ class CfgWeapons {
};
};
// F2002
class mk20_base_F: Rifle_Base_F {
aiDispersionCoefY = 18.0;
aiDispersionCoefX = 12.0;
modes[] = {"Single","FullAuto","fullauto_medium","single_medium_optics1","single_far_optics2","AGM_Burst_far"};
modes[] += {"AGM_Burst_far"};
class Single: Mode_SemiAuto {
minRange = 120; // 2;
minRangeProbab = 0.7; // 0.5;
midRange = 250; // 150;
midRangeProbab = 0.5; // 0.7;
};
class FullAuto: Mode_FullAuto {
minRange = 0; //2;
};
class fullauto_medium: FullAuto {
minRange = 20; // 2;
maxRange = 150; // 100;
burst = "3 + round random 5"; // 3;
};
class AGM_Burst_far: fullauto_medium {
aiRateOfFire = 2.0;
aiRateOfFireDistance = 500;
@ -297,20 +340,25 @@ class CfgWeapons {
maxRangeProbab = 0.2;
burst = "2 + round random 3";
};
class single_medium_optics1: Single {
aiRateOfFireDistance = 600; // 500;
minRange = 120; // 5;
maxRange = 600; // 500;
};
class single_far_optics2: single_medium_optics1 {
aiRateOfFireDistance = 800; // 700;
minRange = 200; // 100;
maxRange = 800; // 700;
};
};
// F2002 carbine
class arifle_Mk20C_F: mk20_base_F {
aiDispersionCoefY = 18.0;
aiDispersionCoefX = 12.0;
class Single: Single {
minRange = 120; // 2;
minRangeProbab = 0.7; // 0.5;
@ -318,19 +366,23 @@ class CfgWeapons {
midRangeProbab = 0.5; // 0.7;
maxRange = 350; // 250;
};
class FullAuto: FullAuto {
minRange = 0; //2;
};
class single_medium_optics1: single_medium_optics1 {
aiRateOfFireDistance = 600; // 500;
minRange = 120; // 5;
maxRange = 550; // 450;
};
//class single_medium_optics2: single_medium_optics1 {};
class fullauto_medium: fullauto_medium {
minRange = 20; //2;
burst = "3 + round random 5"; //3;
};
class AGM_Burst_far: fullauto_medium {
aiRateOfFire = 2.0;
aiRateOfFireDistance = 400;
@ -344,11 +396,12 @@ class CfgWeapons {
};
};
// TAR-20
class Tavor_base_F: Rifle_Base_F {
aiDispersionCoefY = 18.0;
aiDispersionCoefX = 12.0;
modes[] += {"AGM_Burst_far"};
modes[] = {"Single","FullAuto","single_medium_optics1","single_medium_optics2","fullauto_medium","AGM_Burst_far"};
class Single: Mode_SemiAuto {
minRange = 120; //2;
minRangeProbab = 0.7; //0.5;
@ -356,14 +409,17 @@ class CfgWeapons {
midRangeProbab = 0.5; //0.7;
maxRange = 350; //250;
};
class FullAuto: Mode_FullAuto {
minRange = 0; //2;
};
class fullauto_medium: FullAuto {
minRange = 20; // 2;
maxRange = 150; // 100;
burst = "3 + round random 5"; // 3;
};
class AGM_Burst_far: fullauto_medium {
aiRateOfFire = 2.0;
aiRateOfFireDistance = 400;
@ -375,20 +431,25 @@ class CfgWeapons {
maxRangeProbab = 0.2;
burst = "2 + round random 3";
};
class single_medium_optics1: Single {
aiRateOfFireDistance = 600; // 500;
minRange = 120; // 5;
maxRange = 550; // 450;
};
class single_medium_optics2: single_medium_optics1 {
aiRateOfFireDistance = 700; // 600;
minRange = 200; // 100;
maxRange = 700; // 600;
};
};
// TAR-21
class arifle_TRG21_F: Tavor_base_F {
aiDispersionCoefY = 18.0;
aiDispersionCoefX = 12.0;
class Single: Single {
minRange = 120; // 2;
minRangeProbab = 0.7; // 0.3;
@ -396,24 +457,17 @@ class CfgWeapons {
midRangeProbab = 0.5; // 0.7;
maxRange = 400; // 300;
};
class FullAuto: FullAuto {
minRange = 0; //2;
};
class fullauto_medium: fullauto_medium {
minRange = 20; // 2;
maxRange = 150; // 100;
burst = "3 + round random 5"; // 3;
};
class single_medium_optics1: single_medium_optics1 {
aiRateOfFireDistance = 700; // 600;
minRange = 120; // 2;
maxRange = 600; // 500;
};
class single_medium_optics2: single_medium_optics1 {
aiRateOfFireDistance = 800; // 700;
minRange = 200; // 100;
maxRange = 800; // 700;
};
class AGM_Burst_far: fullauto_medium {
aiRateOfFire = 2.0;
aiRateOfFireDistance = 400;
@ -425,58 +479,86 @@ class CfgWeapons {
maxRangeProbab = 0.2;
burst = "2 + round random 3";
};
class single_medium_optics1: single_medium_optics1 {
aiRateOfFireDistance = 700; // 600;
minRange = 120; // 2;
maxRange = 600; // 500;
};
class single_medium_optics2: single_medium_optics1 {
aiRateOfFireDistance = 800; // 700;
minRange = 200; // 100;
maxRange = 800; // 700;
};
};
// sub machine guns
// SDAR
class SDAR_base_F: Rifle_Base_F {
aiDispersionCoefY = 28.0;
aiDispersionCoefX = 20.0;
class Single: Mode_SemiAuto {
minRange = 10; //2;
};
class Burst: Mode_Burst {
minRange = 5; //1;
};
};
// PD2000
class pdw2000_base_F: Rifle_Base_F {
aiDispersionCoefY = 18.0;
aiDispersionCoefX = 12.0;
class Single: Mode_SemiAuto {
minRange = 100; //2;
};
class Burst: Mode_Burst {
minRange = 50; //1;
};
};
// Vector
class SMG_01_Base: Rifle_Base_F {
aiDispersionCoefY = 18.0;
aiDispersionCoefX = 12.0;
class Single: Mode_SemiAuto {
minRange = 50; //2;
};
class Burst: Mode_Burst {
minRange = 25; //2;
};
};
// Scorpion EVO
class SMG_02_base_F: Rifle_Base_F {
aiDispersionCoefY = 18.0;
aiDispersionCoefX = 12.0;
class Single: Mode_SemiAuto {
minRange = 50; //2;
};
class Burst: Mode_Burst {
minRange = 25; //2;
};
};
// machine guns
// Stoner
class LMG_Mk200_F: Rifle_Long_Base_F {
aiDispersionCoefY = 24.0;
aiDispersionCoefX = 21.0;
modes[] = {"manual","close","short","medium","far_optic1","far_optic2","AGM_Burst_far"};
modes[] += {"AGM_Burst_far"};
class medium;
class AGM_Burst_far: medium {
aiRateOfFire = 6.0;
@ -489,22 +571,27 @@ class CfgWeapons {
maxRangeProbab = 0.2;
burst = "3 + round random 5";
};
class far_optic1: medium {
maxRange = 750; // 650;
};
class far_optic2: far_optic1 {
maxRange = 1100; // 900;
aiRateOfFireDistance = 1100;// 900;
};
};
// Negev
class LMG_Zafir_F: Rifle_Long_Base_F {
aiDispersionCoefY = 23.0;
aiDispersionCoefX = 19.0;
modes[] = {"Single","FullAuto","close","short","medium","far_optic1","far_optic2","AGM_Burst_far"};
modes[] += {"AGM_Burst_far"};
class Single: Mode_SemiAuto {
minRange = 120; // 2;
};
class close;
class medium;
class AGM_Burst_far: medium {
@ -518,9 +605,11 @@ class CfgWeapons {
maxRangeProbab = 0.2;
burst = "3 + round random 5";
};
class far_optic1: close {
maxRange = 800; //700;
};
class far_optic2: far_optic1 {
maxRange = 1200; //1000;
};

View File

@ -0,0 +1,12 @@
#define COMPONENT ai
#include "\z\ace\Addons\main\script_mod.hpp"
#ifdef DEBUG_ENABLED_AI
#define DEBUG_MODE_FULL
#endif
#ifdef DEBUG_ENABLED_AI
#define DEBUG_SETTINGS DEBUG_ENABLED_AI
#endif
#include "\z\ace\Addons\main\script_macros.hpp"