GiMMLi's
Scripting Tutorials
|
|
Making
an ARMOR
//=====Armordata.cs=======
//----------------------------------------------------------------------------
// Light Armor
//----------------------------------------------------------------------------
$DamageScale[larmor, $LandingDamageType]
= 1.0;
$DamageScale[larmor, $ImpactDamageType] =
1.0;
$DamageScale[larmor, $CrushDamageType] =
1.0;
$DamageScale[larmor, $BulletDamageType] =
1.2;
$DamageScale[larmor, $PlasmaDamageType] =
1.0;
$DamageScale[larmor, $EnergyDamageType] =
1.3;
$DamageScale[larmor,
$ExplosionDamageType] = 1.0;
$DamageScale[larmor, $MissileDamageType]
= 1.0;
$DamageScale[larmor, $DebrisDamageType] =
1.2;
$DamageScale[larmor, $ShrapnelDamageType]
= 1.2;
$DamageScale[larmor, $LaserDamageType] =
1.0;
$DamageScale[larmor, $MortarDamageType] =
1.3;
$DamageScale[larmor, $BlasterDamageType]
= 1.3;
$DamageScale[larmor,
$ElectricityDamageType] = 1.0;
$DamageScale[larmor, $MineDamageType] =
1.2;
$ItemMax[larmor, Blaster] = 1;
$ItemMax[larmor, Chaingun] = 1;
$ItemMax[larmor, Disclauncher] = 1;
$ItemMax[larmor, GrenadeLauncher] = 1;
$ItemMax[larmor, Mortar] = 0;
$ItemMax[larmor, PlasmaGun] = 1;
$ItemMax[larmor, LaserRifle] = 1;
$ItemMax[larmor, EnergyRifle] = 1;
$ItemMax[larmor, TargetingLaser] = 1;
$ItemMax[larmor, MineAmmo] = 3;
$ItemMax[larmor, Grenade] = 5;
$ItemMax[larmor, Beacon] = 3;
$ItemMax[larmor, BulletAmmo] = 100;
$ItemMax[larmor, PlasmaAmmo] = 30;
$ItemMax[larmor, DiscAmmo] = 15;
$ItemMax[larmor, GrenadeAmmo] = 10;
$ItemMax[larmor, MortarAmmo] = 10;
$ItemMax[larmor, EnergyPack] = 1;
$ItemMax[larmor, RepairPack] = 1;
$ItemMax[larmor, ShieldPack] = 1;
$ItemMax[larmor, SensorJammerPack] = 1;
$ItemMax[larmor, MotionSensorPack] = 1;
$ItemMax[larmor, PulseSensorPack] = 1;
$ItemMax[larmor,
DeployableSensorJammerPack] = 1;
$ItemMax[larmor, CameraPack] = 1;
$ItemMax[larmor, TurretPack] = 0;
$ItemMax[larmor, AmmoPack] = 1;
$ItemMax[larmor, RepairKit] = 1;
$ItemMax[larmor, DeployableInvPack] = 0;
$ItemMax[larmor, DeployableAmmoPack] = 0;
$MaxWeapons[larmor] = 3;
//------------------------------------------------------------------
// light armor data:
//------------------------------------------------------------------
DamageSkinData armorDamageSkins
{
bmpName[0] = "dskin1_armor";
bmpName[1] = "dskin2_armor";
bmpName[2] = "dskin3_armor";
bmpName[3] = "dskin4_armor";
bmpName[4] = "dskin5_armor";
bmpName[5] = "dskin6_armor";
bmpName[6] = "dskin7_armor";
bmpName[7] = "dskin8_armor";
bmpName[8] = "dskin9_armor";
bmpName[9] = "dskin10_armor";
};
PlayerData larmor
{
className = "Armor";
shapeFile = "larmor";
damageSkinData =
"armorDamageSkins";
debrisId = playerDebris;
flameShapeName = "lflame";
shieldShapeName = "shield";
shadowDetailMask = 1;
visibleToSensor = True;
mapFilter = 1;
mapIcon = "M_player";
canCrouch = true;
maxJetSideForceFactor = 0.8;
maxJetForwardVelocity = 22;
minJetEnergy = 1;
jetForce = 236;
jetEnergyDrain = 0.8;
maxDamage = 0.66;
maxForwardSpeed = 11;
maxBackwardSpeed = 10;
maxSideSpeed = 10;
groundForce = 40 * 9.0;
mass = 9.0;
groundTraction = 3.0;
maxEnergy = 60;
drag = 1.0;
density = 1.2;
minDamageSpeed = 25;
damageScale = 0.005;
jumpImpulse = 75;
jumpSurfaceMinDot = 0.2;
// animation data:
// animation name, one shot, direction
// firstPerson, chaseCam, thirdPerson,
signalThread
// movement animations:
animData[0] = { "root", none,
1, true, true, true, false, 0 };
animData[1] = { "run", none, 1,
true, false, true, false, 3 };
animData[2] = { "runback",
none, 1, true, false, true, false, 3 };
animData[3] = { "side left",
none, 1, true, false, true, false, 3 };
animData[4] = { "side left",
none, -1, true, false, true, false, 3 };
animData[5] = { "jump stand",
none, 1, true, false, true, false, 3 };
animData[6] = { "jump run",
none, 1, true, false, true, false, 3 };
animData[7] = { "crouch root",
none, 1, true, true, true, false, 3 };
animData[8] = { "crouch root",
none, 1, true, true, true, false, 3 };
animData[9] = { "crouch root",
none, -1, true, true, true, false, 3 };
animData[10] = { "crouch
forward", none, 1, true, false,
true, false, 3 };
animData[11] = { "crouch
forward", none, -1, true, false,
true, false, 3 };
animData[12] = { "crouch side
left", none, 1, true, false, true,
false, 3 };
animData[13] = { "crouch side
left", none, -1, true, false, true,
false, 3 };
animData[14] = { "fall", none,
1, true, true, true, false, 3 };
animData[15] = { "landing",
SoundLandOnGround, 1, true, false, false,
false, 3 };
animData[16] = { "landing",
SoundLandOnGround, 1, true, false, false,
false, 3 };
animData[17] = { "tumble loop",
none, 1, true, false, false, false, 3 };
animData[18] = { "tumble end",
none, 1, true, false, false, false, 3 };
animData[19] = { "jet", none,
1, true, true, true, false, 3 };
// misc. animations:
animData[20] = { "PDA access",
none, 1, true, false, false, false, 3 };
animData[21] = { "throw", none,
1, true, false, false, false, 3 };
animData[22] = { "flyer root",
none, 1, false, false, false, false, 3 };
animData[23] = { "apc root",
none, 1, true, true, true, false, 3 };
animData[24] = { "apc pilot",
none, 1, false, false, false, false, 3 };
// death animations:
animData[25] = { "crouch die",
SoundPlayerDeath, 1, false, false, false,
false, 4 };
animData[26] = { "die chest",
SoundPlayerDeath, 1, false, false, false,
false, 4 };
animData[27] = { "die head",
SoundPlayerDeath, 1, false, false, false,
false, 4 };
animData[28] = { "die grab
back", SoundPlayerDeath, 1, false,
false, false, false, 4 };
animData[29] = { "die right
side", SoundPlayerDeath, 1, false,
false, false, false, 4 };
animData[30] = { "die left
side", SoundPlayerDeath, 1, false,
false, false, false, 4 };
animData[31] = { "die leg
left", SoundPlayerDeath, 1, false,
false, false, false, 4 };
animData[32] = { "die leg
right", SoundPlayerDeath, 1, false,
false, false, false, 4 };
animData[33] = { "die blown
back", SoundPlayerDeath, 1, false,
false, false, false, 4 };
animData[34] = { "die spin",
SoundPlayerDeath, 1, false, false, false,
false, 4 };
animData[35] = { "die forward",
SoundPlayerDeath, 1, false, false, false,
false, 4 };
animData[36] = { "die forward
kneel", SoundPlayerDeath, 1, false,
false, false, false, 4
};
animData[37] = { "die back",
SoundPlayerDeath, 1, false, false, false,
false, 4 };
// signal moves:
animData[38] = { "sign over
here", none, 1, true, false, false,
false, 2 };
animData[39] = { "sign point",
none, 1, true, false, false, true, 1 };
animData[40] = { "sign
retreat",none, 1, true, false,
false, false, 2 };
animData[41] = { "sign stop",
none, 1, true, false, false, true, 1 };
animData[42] = { "sign salut",
none, 1, true, false, false, true, 1 };
// celebration animations:
animData[43] = { "celebration
1",none, 1, true, false, false,
false, 2 };
animData[44] = { "celebration
2", none, 1, true, false, false,
false, 2 };
animData[45] = { "celebration
3", none, 1, true, false, false,
false, 2 };
// taunt animations:
animData[46] = { "taunt 1",
none, 1, true, false, false, false, 2 };
animData[47] = { "taunt 2",
none, 1, true, false, false, false, 2 };
// poses:
animData[48] = { "pose kneel",
none, 1, true, false, false, true, 1 };
animData[49] = { "pose stand",
none, 1, true, false, false, true, 1 };
// Bonus wave
animData[50] = { "wave", none,
1, true, false, false, true, 1 };
jetSound = SoundJetLight;
rFootSounds =
{
SoundLFootRSoft,
SoundLFootRHard,
SoundLFootRSoft,
SoundLFootRHard,
SoundLFootRSoft,
SoundLFootRSoft,
SoundLFootRSoft,
SoundLFootRHard,
SoundLFootRSnow,
SoundLFootRSoft,
SoundLFootRSoft,
SoundLFootRSoft,
SoundLFootRSoft,
SoundLFootRSoft,
SoundLFootRSoft
};
lFootSounds =
{
SoundLFootLSoft,
SoundLFootLHard,
SoundLFootLSoft,
SoundLFootLHard,
SoundLFootLSoft,
SoundLFootLSoft,
SoundLFootLSoft,
SoundLFootLHard,
SoundLFootLSnow,
SoundLFootLSoft,
SoundLFootLSoft,
SoundLFootLSoft,
SoundLFootLSoft,
SoundLFootLSoft,
SoundLFootLSoft
};
footPrints = { 0, 1 };
boxWidth = 0.5;
boxDepth = 0.5;
boxNormalHeight = 2.3;
boxCrouchHeight = 1.8;
boxNormalHeadPercentage = 0.83;
boxNormalTorsoPercentage = 0.53;
boxCrouchHeadPercentage = 0.6666;
boxCrouchTorsoPercentage = 0.3333;
boxHeadLeftPercentage = 0;
boxHeadRightPercentage = 1;
boxHeadBackPercentage = 0;
boxHeadFrontPercentage = 1;
};
//====Item.cs===============
$ArmorType[Male, LightArmor] = larmor;
$ArmorName[larmor] = LightArmor;
ItemData LightArmor
{
heading = "0Armor";
description = "Light Armor";
className = "Armor";
price = 175;
};
//====Now repaet this with female armor,
heavy's dont apply==
//====In Armordata.cs======
//---------------------------------------------------------------------
// light Female Armor
//---------------------------------------------------------------------
$DamageScale[lfemale, $LandingDamageType]
= 1.0;
$DamageScale[lfemale, $ImpactDamageType]
= 1.0;
$DamageScale[lfemale, $CrushDamageType] =
1.0;
$DamageScale[lfemale, $BulletDamageType]
= 1.2;
$DamageScale[lfemale, $PlasmaDamageType]
= 1.0;
$DamageScale[lfemale, $EnergyDamageType]
= 1.3;
$DamageScale[lfemale,
$ExplosionDamageType] = 1.0;
$DamageScale[lfemale, $MissileDamageType]
= 1.0;
$DamageScale[lfemale,
$ShrapnelDamageType] = 1.2;
$DamageScale[lfemale, $DebrisDamageType]
= 1.2;
$DamageScale[lfemale, $LaserDamageType] =
1.0;
$DamageScale[lfemale, $MortarDamageType]
= 1.3;
$DamageScale[lfemale, $BlasterDamageType]
= 1.3;
$DamageScale[lfemale,
$ElectricityDamageType] = 1.0;
$DamageScale[lfemale, $MineDamageType] =
1.2;
$ItemMax[lfemale, Blaster] = 1;
$ItemMax[lfemale, Chaingun] = 1;
$ItemMax[lfemale, Disclauncher] = 1;
$ItemMax[lfemale, GrenadeLauncher] = 1;
$ItemMax[lfemale, Mortar] = 0;
$ItemMax[lfemale, PlasmaGun] = 1;
$ItemMax[lfemale, LaserRifle] = 1;
$ItemMax[lfemale, EnergyRifle] = 1;
$ItemMax[lfemale, TargetingLaser] = 1;
$ItemMax[lfemale, MineAmmo] = 3;
$ItemMax[lfemale, Grenade] = 5;
$ItemMax[lfemale, Beacon] = 3;
$ItemMax[lfemale, BulletAmmo] = 100;
$ItemMax[lfemale, PlasmaAmmo] = 30;
$ItemMax[lfemale, DiscAmmo] = 15;
$ItemMax[lfemale, GrenadeAmmo] = 10;
$ItemMax[lfemale, MortarAmmo] = 10;
$ItemMax[lfemale, EnergyPack] = 1;
$ItemMax[lfemale, RepairPack] = 1;
$ItemMax[lfemale, ShieldPack] = 1;
$ItemMax[lfemale, SensorJammerPack] = 1;
$ItemMax[lfemale, MotionSensorPack] = 1;
$ItemMax[lfemale, PulseSensorPack] = 1;
$ItemMax[lfemale,
DeployableSensorJammerPack] = 1;
$ItemMax[lfemale, CameraPack] = 1;
$ItemMax[lfemale, TurretPack] = 0;
$ItemMax[lfemale, AmmoPack] = 1;
$ItemMax[lfemale, RepairKit] = 1;
$ItemMax[lfemale, DeployableInvPack] = 0;
$ItemMax[lfemale, DeployableAmmoPack] =
0;
$MaxWeapons[lfemale] = 3;
//------------------------------------------------------------------
// Light female data:
//------------------------------------------------------------------
PlayerData lfemale
{
className = "Armor";
shapeFile = "lfemale";
flameShapeName = "lflame";
shieldShapeName = "shield";
damageSkinData =
"armorDamageSkins";
debrisId = playerDebris;
shadowDetailMask = 1;
visibleToSensor = True;
mapFilter = 1;
mapIcon = "M_player";
canCrouch = true;
maxJetSideForceFactor = 0.8;
maxJetForwardVelocity = 22;
minJetEnergy = 1;
jetForce = 236;
jetEnergyDrain = 0.8;
maxDamage = 0.66;
maxForwardSpeed = 11;
maxBackwardSpeed = 10;
maxSideSpeed = 10;
groundForce = 40 * 9.0;
mass = 9.0;
groundTraction = 3.0;
maxEnergy = 60;
drag = 1.0;
density = 1.2;
minDamageSpeed = 25;
damageScale = 0.005;
jumpImpulse = 75;
jumpSurfaceMinDot = 0.2;
// animation data:
// animation name, one shot, exclude,
direction,
// firstPerson, chaseCam, thirdPerson,
signalThread
// movement animations:
// movement animations:
animData[0] = { "root", none,
1, true, true, true, false, 0 };
animData[1] = { "run", none, 1,
true, false, true, false, 3 };
animData[2] = { "runback",
none, 1, true, false, true, false, 3 };
animData[3] = { "side left",
none, 1, true, false, true, false, 3 };
animData[4] = { "side left",
none, -1, true, false, true, false, 3 };
animData[5] = { "jump stand",
none, 1, true, false, true, false, 3 };
animData[6] = { "jump run",
none, 1, true, false, true, false, 3 };
animData[7] = { "crouch root",
none, 1, true, true, true, false, 3 };
animData[8] = { "crouch root",
none, 1, true, true, true, false, 3 };
animData[9] = { "crouch root",
none, -1, true, true, true, false, 3 };
animData[10] = { "crouch
forward", none, 1, true, false,
true, false, 3 };
animData[11] = { "crouch
forward", none, -1, true, false,
true, false, 3 };
animData[12] = { "crouch side
left", none, 1, true, false, true,
false, 3 };
animData[13] = { "crouch side
left", none, -1, true, false, true,
false, 3 };
animData[14] = { "fall", none,
1, true, true, true, false, 3 };
animData[15] = { "landing",
SoundLandOnGround, 1, true, false, false,
false, 3 };
animData[16] = { "landing",
SoundLandOnGround, 1, true, false, false,
false, 3 };
animData[17] = { "tumble loop",
none, 1, true, false, false, false, 3 };
animData[18] = { "tumble end",
none, 1, true, false, false, false, 3 };
animData[19] = { "jet", none,
1, true, true, true, false, 3 };
// misc. animations:
animData[20] = { "PDA access",
none, 1, true, false, false, false, 3 };
animData[21] = { "throw", none,
1, true, false, false, false, 3 };
animData[22] = { "flyer root",
none, 1, false, false, false, false, 3 };
animData[23] = { "apc root",
none, 1, true, true, true, false, 3 };
animData[24] = { "apc root",
none, 1, false, false, false, false, 3 };
// death animations:
animData[25] = { "crouch die",
SoundPlayerDeath, 1, false, false, false,
false, 4 };
animData[26] = { "die chest",
SoundPlayerDeath, 1, false, false, false,
false, 4 };
animData[27] = { "die head",
SoundPlayerDeath, 1, false, false, false,
false, 4 };
animData[28] = { "die grab
back", SoundPlayerDeath, 1, false,
false, false, false, 4 };
animData[29] = { "die right
side", SoundPlayerDeath, 1, false,
false, false, false, 4 };
animData[30] = { "die left
side", SoundPlayerDeath, 1, false,
false, false, false, 4 };
animData[31] = { "die leg
left", SoundPlayerDeath, 1, false,
false, false, false, 4 };
animData[32] = { "die leg
right", SoundPlayerDeath, 1, false,
false, false, false, 4 };
animData[33] = { "die blown
back", SoundPlayerDeath, 1, false,
false, false, false, 4 };
animData[34] = { "die spin",
SoundPlayerDeath, 1, false, false, false,
false, 4 };
animData[35] = { "die forward",
SoundPlayerDeath, 1, false, false, false,
false, 4 };
animData[36] = { "die forward
kneel", SoundPlayerDeath, 1, false,
false, false, false, 4
};
animData[37] = { "die back",
SoundPlayerDeath, 1, false, false, false,
false, 4 };
// signal moves:
animData[38] = { "sign over
here", none, 1, true, false, false,
false, 2 };
animData[39] = { "sign point",
none, 1, true, false, false, true, 1 };
animData[40] = { "sign
retreat",none, 1, true, false,
false, false, 2 };
animData[41] = { "sign stop",
none, 1, true, false, false, true, 1 };
animData[42] = { "sign salut",
none, 1, true, false, false, true, 1 };
// celebraton animations:
animData[43] = { "celebration
1", none, 1, true, false, false,
false, 2 };
animData[44] = { "celebration
2", none, 1, true, false, false,
false, 2 };
animData[45] = { "celebration
3", none, 1, true, false, false,
false, 2 };
// taunt anmations:
animData[46] = { "taunt 1",
none, 1, true, false, false, false, 2 };
animData[47] = { "taunt 2",
none, 1, true, false, false, false, 2 };
// poses:
animData[48] = { "pose kneel",
none, 1, true, false, false, true, 1 };
animData[49] = { "pose stand",
none, 1, true, false, false, true, 1 };
// Bonus wave
animData[50] = { "wave", none,
1, true, false, false, true, 1 };
jetSound = SoundJetLight;
rFootSounds =
{
SoundLFootRSoft,
SoundLFootRHard,
SoundLFootRSoft,
SoundLFootRHard,
SoundLFootRSoft,
SoundLFootRSoft,
SoundLFootRSoft,
SoundLFootRHard,
SoundLFootRSnow,
SoundLFootRSoft,
SoundLFootRSoft,
SoundLFootRSoft,
SoundLFootRSoft,
SoundLFootRSoft,
SoundLFootRSoft
};
lFootSounds =
{
SoundLFootLSoft,
SoundLFootLHard,
SoundLFootLSoft,
SoundLFootLHard,
SoundLFootLSoft,
SoundLFootLSoft,
SoundLFootLSoft,
SoundLFootLHard,
SoundLFootLSnow,
SoundLFootLSoft,
SoundLFootLSoft,
SoundLFootLSoft,
SoundLFootLSoft,
SoundLFootLSoft,
SoundLFootLSoft
};
footPrints = { 0, 1 };
boxWidth = 0.5;
boxDepth = 0.5;
boxNormalHeight = 2.3;
boxCrouchHeight = 1.8;
boxNormalHeadPercentage = 0.85;
boxNormalTorsoPercentage = 0.53;
boxCrouchHeadPercentage = 0.88;
boxCrouchTorsoPercentage = 0.35;
boxHeadLeftPercentage = 0;
boxHeadRightPercentage = 1;
boxHeadBackPercentage = 0;
boxHeadFrontPercentage = 1;
};
//=====In item.cs==========
$ArmorType[Female, LightArmor] = lfemale;
$ArmorName[lfemale] = LightArmor;
//
//The second part of this one is not
needed
//
//==Now in vehicle.cs, if you added a
light, medium, or heavy=====
%armor = Player::getArmor(%object);
%client = Player::getClient(%object);
if ((%armor == "larmor" ||
%armor == "lfemale") &&
Vehicle::canMount (%this, %object))
//add || %armor == "whatever"
to make it work right
//===Then find these lines========
function
Vehicle::passengerJump(%this,%passenger,%mom)
{
%armor = Player::getArmor(%passenger);
if(%armor == "larmor" || %armor
== "lfemale") {
%height = 2;
%velocity = 70;
%zVec = 70;
}
else if(%armor == "marmor" ||
%armor == "mfemale") {
%height = 2;
%velocity = 100;
%zVec = 100;
}
else if(%armor == "harmor") {
%height = 2;
%velocity = 140;
%zVec = 110;
}
// just add the || %armor ==
"Whatever" to make it work on
planes
//correctly |
The
Realm is owned and maintained by {FA}GiMMLi J (c)1999
The
Realm's {FA}Demon logo is sole property of
GiMMLi's Realm any duplication or modifications
of this trade mark are Strictly prohibited.
Violators will be prosecuted!
Tribes
is a trademark of the Dynamix and Sierra Co.
|