Hello Tested them,
first they are great, i like the Machine Gunner ! Keep up the good work.
No Improvement Points:
a) Begin the action menu items (like "lower scarf") with a Capital letter. All BIS action menu items begin with a Captial letter
b) there are no blood textures for Body and Head. (Ok. it is Beta)
c) The head camo looks a little strange. But maybe it is limited by OFP.
d) Make the AddOn ECP compatible:
To do this change your config as attached.
(if you do not have ECP nothing will change, but if you have ECP you have all the cool effect on your unit).
I posted the whole cpp. So it is very easy, just copy paste.
// IM:UC Infantry Teaser 0.4 Beta
#define TEast 0
#define TWest 1
#define TGuerrila 2
#define TCivilian 3
#define TSideUnknown 4
#define TEnemy 5
#define TFriendly 6
#define TLogic 7
#define true 1
#define false 0
// type scope
#define private 0
#define protected 1
#define public 2
#define WeaponNoSlot 0 // dummy weapons
#define WeaponSlotPrimary 1 // primary weapons
#define WeaponSlotSecondary 16 // secondary weapons
#define WeaponSlotHandGun 2 // HandGun
#define WeaponSlotHandGunItem 32 // HandGun magazines
#define WeaponSlotItem 256 // items
#define WeaponSlotBinocular 4096 // binocular
#define WeaponHardMounted 65536
#define CanSeeRadar 1
#define CanSeeEye 2
#define CanSeeOptics 4
#define CanSeeEar 8
#define CanSeeCompass 16
#define CanSeeRadarC CanSeeRadar+CanSeeCompass
#define CanSeeAll 31
#define hm_des_iraqi_WOUNDS wounds[] = {"\hm_iraqi\des\arm_a", "\hm_iraqi\des\arm_a_D","\hm_iraqi\des\hosev","\hm_iraqi\des\hosev_d", "\hm_iraqi\des\hoseh","\hm_iraqi\des\hose_h_D", "\hm_iraqi\des\shirt_v", "\hm_iraqi\des\shirt_v_D", "\hm_iraqi\des\shirt_h", "\hm_iraqi\des\shirt_h_d", "\hm_iraqi\des\kapsy", "\hm_iraqi\des\kapsy_D", "shirt_l1","shirt_l1_d", "hose_l1", "kose_l1_D"};
#define hm_des_iraqi_mg_WOUNDS wounds[] = {"\hm_iraqi\des\arm_a", "\hm_iraqi\des\arm_a_D","\hm_iraqi\des\hosev","\hm_iraqi\des\hosev_d", "\hm_iraqi\des\hoseh","\hm_iraqi\des\hose_h_D", "\hm_iraqi\des\shirtvmg", "\hm_iraqi\des\shirtvmg_D", "\hm_iraqi\des\shirthmg", "\hm_iraqi\des\shirthmd_d", "sht_l1mg","sht_l1mg_d", "hose_l1", "kose_l1_D"};
class CfgPatches
{
class IMUC_infteaser
{
units[] = {
IMUC_Desert_Officer,
IMUC_Desert_Soldier,
IMUC_Desert_SoldierMG,
IMUC_Desert_Officer2,
IMUC_Desert_Soldier2,
IMUC_Desert_SoldierMG2,
IMUC_AKMS,
IMUC_AKMSmag
};
weapons[] = {};
requiredVersion = 1.91;
};
};
class CfgModels
{
class Default {};
class Man: Default {};
class IMUC_Sol: Man
{
sectionsInherit=Head;
sections[] = { "head injury",
"body injury",
"l arm injury",
"r arm injury",
"p arm injury",
"l leg injury",
"r leg injury",
"p leg injury",
"pouch_front",
"hlava",
"krk",
"tasche",
"holster",
"zier",
"handgr",
"kapsy",
"goggles",
"goggles1",
"goggles2",
"goggles_sel",
"mag_bag",
"mg_gurt",
"sc1",
"sc2",
"sc3",
"sc4",
};
};
class Weapon: Default{};
class IMUC_AKMS: Weapon {};
};
class CfgAmmo
{
class default {};
class BulletSingle : default{};
class BulletSingleE: BulletSingle {};
class IMUC_7_62mm_Bullet : BulletSingleE
{
hit=9;
indirectHit=1;
indirectHitRange=0.100000;
};
};
class CfgWeapons
{
class Default {};
class MGun: Default {};
class Riffle: MGun {};
class AK74: Riffle {};
class IMUC_AKMS: AK74
{
scopeWeapon=2;
scopeMagazine=0;
displayName="AKMS";
displayNameMagazine="AKMS mag";
shortNameMagazine="AKMS mag";
model="\IMUC_infteaser\IMUC_AKMS";
modelOptics="optika_ak47";
optics=true;
opticsZoomMin=0.35;
opticsZoomMax=0.35;
initSpeed=710;
picture="\IMUC_infteaser\gear\IMUC_akms_1.paa"
drySound[]={"weapons\AK74Dry",db-40,1};
magazines[]={IMUC_AKMSmag};
modes[]={"Single","FullAuto"};
class Single
{
ammo=IMUC_7_62mm_Bullet;
multiplier=1;
burst=0;
magazineReloadTime=2.2
displayName="Single";
dispersion=0.000110;
sound[]={"Weapons\AK74Single",db0,1};
soundContinuous=0;
reloadTime=0.100000;
ffCount=1;
count=8;
recoil="riffleSingle";
autoFire=0;
aiRateOfFire=6.000000;
aiRateOfFireDistance=200;
useAction=0;
useActionTitle="";
};
class FullAuto
{
ammo=IMUC_7_62mm_Bullet;
multiplier=1;
burst=1;
displayName="Full Auto";
dispersion=0.001800;
sound[]={"Weapons\AK74Single",db0,1};
soundContinuous=0;
reloadTime=0.0667;
ffCount=30;
recoil=riffleBurst3;
autoFire=1;
aiRateOfFire=9.000000;
aiRateOfFireDistance=500;
useAction=0;
useActionTitle="";
};
};
class IMUC_AKMSmag: IMUC_AKMS
{
picture="\IMUC_infteaser\gear\IMUC_akms_2.paa";
scopeWeapon=0;
scopeMagazine=2;
};
};
// for ECP Kuro 1.2.2004
class ECP_EventHandlers {};
class CfgVehicles
{
class All{};
class AllVehicles:All{};
class Land:AllVehicles{};
class Man:Land{};
class Soldier:Man{};
class SoldierEB:Soldier{};
class IMUC_Desert_Soldier: SoldierEB
{
moves="CfgMovesMC";
scope=public;
side=0;
vehicleClass ="IM:UC Iraqi Infantry";
nightVision=1;
namesound="soldier";
displayname = "Desert Soldier";
model="\IMUC_infteaser\IMUC_Sol";
hiddenselections[]={mg_gurt,zier,tasche,holster,goggles2};
hm_des_iraqi_WOUNDS
weapons[]={ak47,throw,put};
magazines[]={ak47,ak47,ak47,ak47,ak47,ak47,handgrenade,handgrenade,handgrenade};
class animations
{
class goggles
{
type="rotation";
animPeriod=0.5;
selection="goggles";
axis="goggles_axis";
angle0=0.65;
angle1=0.000;
};
class scarf1
{
type="rotation";
animPeriod="0.5";
selection="sc1";
axis="sc1_axis";
angle0=0.000;
angle1=-0.6;
};
class scarf2
{
type="rotation";
animPeriod="0.5";
selection="sc2";
axis="sc1_axis";
angle0=0.000;
angle1=-0.55;
};
class scarf3
{
type="rotation";
animPeriod="0.5";
selection="sc3";
axis="sc1_axis";
angle0=0.000 ;
angle1=-0.42;
};
class scarf4
{
type="rotation";
animPeriod="0.5";
selection="sc4";
axis="sc1_axis";
angle0=0.000;
angle1=-0.35;
};
};
class UserActions
{
class Lowervisor
{
displayName="put goggles on";
position="Brain";
radius=1.00000;
condition="(this animationPhase ""goggles"" < 0.5) && (this animationPhase ""HelmetState"" == 0)";
statement="this animate [""goggles"", 1]";
};
class Raisevisor
{
displayName="take goggles off";
position="Brain";
radius=1.00000;
condition="this animationPhase ""goggles"" >= 0.5";
statement="this animate [""goggles"", 0]";
};
class LowerScarf
{
displayname="lower scarf";
position="Brain"
radius=1.00000;
condition="(this animationphase ""scarf1"" < 0.5)";
statement="this animate [""scarf1"",1]; this animate [""scarf2"",1]; this animate [""scarf3"",1]; this animate [""scarf4"",1]";
};
class RaiseScarf
{
displayname="raise scarf";
radius=1.00000;
position="Brain"
condition="(this animationphase ""scarf1"" > 0.5)";
statement="this animate [""scarf1"",0]; this animate [""scarf2"",0]; this animate [""scarf3"",0]; this animate [""scarf4"",0]";
};
};
// for ECP Kuro 1.2.2004
class EventHandlers : ECP_EventHandlers
// class EventHandlers
{
// for ECP Kuro 1.2.2004
Init=" if (format[{%1},count ECP_addUnitsArray] == {scalar}) then {ECP_addUnitsArray = []}; ECP_addUnitsArray = ECP_addUnitsArray + [_this select 0]; _this call ECP_EH_handler_init; [_this select 0] exec ""\IMUC_infteaser\script\init_soldier.sqs"";";
// Init="[_this select 0] exec ""\IMUC_infteaser\script\init_soldier.sqs"";";
};
};
class IMUC_Desert_Soldier2: IMUC_Desert_Soldier
{
displayname="Desert Soldier (Camo Helmet)";
hiddenselections[]={mg_gurt,goggles2,handgr,holster};
hm_des_iraqi_WOUNDS
weapons[]={ak47,cz75,Throw,Put};
magazines[]={binocular,ak47,ak47,ak47,ak47,cz75mag,cz75mag,cz75mag,cz75mag,HandGrenade,HandGrenade,smokeshell,smokeshell};
namesound="officer";
};
class IMUC_Desert_Officer: IMUC_Desert_Soldier
{
displayname="Desert Officer";
hiddenselections[]={mg_gurt,zier,goggles2,handgr};
hm_des_iraqi_WOUNDS
weapons[]={IMUC_AKMS,cz75,Throw,Put};
magazines[]={binocular,IMUC_AKMSmag,IMUC_AKMSmag,IMUC_AKMSmag,IMUC_AKMSmag,cz75mag,cz75mag,cz75mag,cz75mag,
HandGrenade,HandGrenade,smokeshell,smokeshell};
namesound="officer";
};
class IMUC_Desert_Officer2: IMUC_Desert_Soldier
{
displayname="Desert Officer (Camo Helmet)";
hiddenselections[]={mg_gurt,goggles2,handgr};
hm_des_iraqi_WOUNDS
weapons[]={IMUC_AKMS,cz75,Throw,Put};
magazines[]={binocular,IMUC_AKMSmag,IMUC_AKMSmag,IMUC_AKMSmag,IMUC_AKMSmag,cz75mag,cz75mag,cz75mag,cz75mag,
HandGrenade,HandGrenade,smokeshell,smokeshell};
namesound="officer";
};
class IMUC_Desert_SoldierMG : IMUC_Desert_Soldier
{
displayname="Desert Machine Gunner (Camo Helmet)";
hiddenselections[]={goggles2,pouch_front,holster};
weapons[]={pk,cz75,Throw,Put};
magazines[]={pk,pk,pk,pk,cz75mag,cz75mag,cz75mag,cz75mag,HandGrenade,HandGrenade};
namesound="machinegunner";
picture=ismg;
threat[]={1,0.1,0.8};
wounds[]={\IMUC_data\arm_a,\IMUC_data\arm_a_D,\IMUC_data\hosev,\IMUC_data\hosev_d,
\IMUC_data\hoseh,\IMUC_data\hose_h_D,\IMUC_data\shirtvmg,
\IMUC_data\shirtvmg_D,\IMUC_data\shirthmg, \IMUC_data\shirthmg_d,sht_l1mg,sht_l1mg_d,hose_l1,kose_l1_D};
};
class IMUC_Desert_SoldierMG2 : IMUC_Desert_Soldier
{
displayname="Desert Machine Gunner";
hiddenselections[]={goggles2,zier,pouch_front,holster};
weapons[]={pk,cz75,Throw,Put};
magazines[]={pk,pk,pk,pk,cz75mag,cz75mag,cz75mag,cz75mag,HandGrenade,HandGrenade};
namesound="machinegunner";
picture=ismg;
threat[]={1,0.1,0.8};
wounds[]={\IMUC_data\arm_a,\IMUC_data\arm_a_D,\IMUC_data\hosev,\IMUC_data\hosev_d,
\IMUC_data\hoseh,\IMUC_data\hose_h_D,\IMUC_data\shirtvmg,
\IMUC_data\shirtvmg_D,\IMUC_data\shirthmg, \IMUC_data\shirthmg_d,sht_l1mg,sht_l1mg_d,hose_l1,kose_l1_D};
};
};
class CfgFaces
{
class imuc_iraqi1
{
name = "IMUC face 1";
texture = \IMUC_infteaser\faces\iraqi1.paa;
east = true;
west = false;
};
class imuc_iraqi2
{
name = "IMUC face 2";
texture = \IMUC_infteaser\faces\iraqi2.paa;
east = true;
west = false;
};
class imuc_iraqi3
{
name = "IMUC face 3";
texture = \IMUC_infteaser\faces\iraqi3.paa;
east = true;
west = false;
};
};
class CfgNonAIVehicles
{
class ProxyWeapon {};
class ProxyIMUC_AKMS: ProxyWeapon {};
};