RATDOG/_module/nss/ra_rnd_armor_inc.nss
Jaysyn904 7fab5d1710 Dupe file removal.
Removed weapon models duped in the CEP 3 facelift haks.  More henchman & packages work.
2021-10-12 23:34:41 -04:00

200 lines
4.3 KiB
Plaintext

//
// Randomized Armor Include
// RA_RND_ARMOR_INC
//
// By: Jaysyn
//
// Test VOID
//void main(){}
void RndBanditArmor(object oNPC)
{
// Makes sure any original armor isn't dropped as loot.
SetDroppableFlag(GetItemInSlot(INVENTORY_SLOT_CHEST, OBJECT_SELF), 0);
//Randomizes Armor
int nResult = d6(1);
int nStackSize = 1; // Create 1 items;
object oArmor;
string sItem;
if (nResult == 1)
{
sItem = "NW_AARCL001";
}
else if(nResult == 2)
{
sItem = "NW_AARCL009";
}
else if(nResult == 3)
{
sItem = "NW_AARCL002";
}
else if(nResult ==4)
{
sItem = "NW_AARCL008";
}
else if(nResult == 5)
{
sItem = "NW_AARCL002";
}
else
sItem = "NW_AARCL008";
CreateItemOnObject(sItem, OBJECT_SELF, nStackSize);
// Loop the object's inventory and equip the first
object oItem = GetFirstItemInInventory(OBJECT_SELF);
while(GetIsObjectValid(oItem))
{
// Check if armor, of course
if(GetBaseItemType(oItem) == BASE_ITEM_ARMOR)
{
// Equip it and stop the script
DelayCommand(1.0f, ActionEquipItem(oItem, INVENTORY_SLOT_CHEST));
return;
}
oItem = GetNextItemInInventory(OBJECT_SELF);
}
}
void RndLightArmor(object oNPC)
{
// Makes sure any original armor isn't dropped as loot.
SetDroppableFlag(GetItemInSlot(INVENTORY_SLOT_CHEST, OBJECT_SELF), 0);
//Randomizes Armor
int nResult = d8(1);
int nStackSize = 1; // Create 1 items;
object oArmor;
string sItem;
if (nResult == 1)
{
sItem = "aarcl002";
}
else if(nResult == 2)
{
sItem = "baleas_cloth019";
}
else if(nResult == 3)
{
sItem = "aarcl004";
}
else if(nResult ==4)
{
sItem = "zep_studdedleath";
}
else if(nResult == 5)
{
sItem = "aarcl004";
}
else if(nResult == 6)
{
sItem = "nw_aarcl001";
}
else if(nResult == 7)
{
sItem = "nw_aarcl002";
}
else
sItem = "nw_aarcl009";
CreateItemOnObject(sItem, OBJECT_SELF, nStackSize);
// Loop the object's inventory and equip the first
object oItem = GetFirstItemInInventory(OBJECT_SELF);
while(GetIsObjectValid(oItem))
{
// Check if armor, of course
if(GetBaseItemType(oItem) == BASE_ITEM_ARMOR)
{
// Equip it and stop the script
DelayCommand(1.0f, ActionEquipItem(oItem, INVENTORY_SLOT_CHEST));
return;
}
oItem = GetNextItemInInventory(OBJECT_SELF);
}
}
void RndFighterArmor(object oNPC)
{
// Makes sure any original armor isn't dropped as loot.
SetDroppableFlag(GetItemInSlot(INVENTORY_SLOT_CHEST, OBJECT_SELF), 0);
//Randomizes Armor
int nResult = d10(1);
int nStackSize = 1; // Create 1 items;
object oArmor;
string sItem;
if (nResult == 1)
{
sItem = "nw_aarcl011";
}
else if(nResult == 2)
{
sItem = "nw_aarcl006";
}
else if(nResult == 3)
{
sItem = "nw_aarcl005";
}
else if(nResult ==4)
{
sItem = "nw_aarcl010";
}
else if(nResult == 5)
{
sItem = "nw_aarcl004";
}
else if(nResult == 6)
{
sItem = "nw_aarcl003";
}
else if(nResult == 7)
{
sItem = "nw_aarcl012";
}
else if(nResult == 8)
{
sItem = "chainmail_st";
}
else if(nResult == 9)
{
sItem = "scale_st";
}
else
sItem = "aarcl007";
CreateItemOnObject(sItem, OBJECT_SELF, nStackSize);
// Loop the object's inventory and equip the first
object oItem = GetFirstItemInInventory(OBJECT_SELF);
while(GetIsObjectValid(oItem))
{
// Check if armor, of course
if(GetBaseItemType(oItem) == BASE_ITEM_ARMOR)
{
// Equip it and stop the script
DelayCommand(1.0f, ActionEquipItem(oItem, INVENTORY_SLOT_CHEST));
return;
}
oItem = GetNextItemInInventory(OBJECT_SELF);
}
}