823 lines
19 KiB
Plaintext
823 lines
19 KiB
Plaintext
|
int GetItemlevel(object oCreature)
|
||
|
{
|
||
|
int iCheck1;
|
||
|
int iCheck2;
|
||
|
int iCheck3;
|
||
|
int iRndCheck;
|
||
|
int iLevel;
|
||
|
float fCR;
|
||
|
|
||
|
iLevel = 0;
|
||
|
fCR = GetChallengeRating(oCreature);
|
||
|
iCheck1 = FloatToInt(fCR/2);
|
||
|
iCheck2 = iCheck1+ FloatToInt(fCR);
|
||
|
iCheck3 = iCheck2 + FloatToInt(fCR * 2);
|
||
|
iRndCheck = Random(100);
|
||
|
|
||
|
if (iRndCheck < iCheck1)
|
||
|
{
|
||
|
if (fCR < 10.0)
|
||
|
{
|
||
|
iLevel = 2;
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
iLevel = 3;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
if (iRndCheck >= iCheck1 && iRndCheck < iCheck2)
|
||
|
{
|
||
|
if (fCR < 10.0)
|
||
|
{
|
||
|
iLevel = 1;
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
iLevel = 2;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
if (iRndCheck >= iCheck2 && iRndCheck < iCheck3)
|
||
|
{
|
||
|
if (fCR < 10.0)
|
||
|
{
|
||
|
iLevel = 0;
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
iLevel = 1;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
if (iRndCheck >= iCheck3)
|
||
|
{
|
||
|
iLevel = 0;
|
||
|
}
|
||
|
|
||
|
if (iLevel == 3)
|
||
|
{
|
||
|
if (Random(5)==0)
|
||
|
iLevel = 4;
|
||
|
}
|
||
|
|
||
|
return iLevel;
|
||
|
}
|
||
|
|
||
|
string GetShield(object oCreature)
|
||
|
{
|
||
|
int iItem;
|
||
|
int iItemLevel;
|
||
|
string sItemTag;
|
||
|
|
||
|
iItemLevel = GetItemlevel(oCreature);
|
||
|
|
||
|
if (iItemLevel>0)
|
||
|
{
|
||
|
switch (iItemLevel)
|
||
|
{
|
||
|
case 1 : sItemTag = "NW_ASHMSW002"; break;
|
||
|
case 2 : sItemTag = "NW_ASHMLW008"; break;
|
||
|
case 3 : sItemTag = "NW_ASHMTO009"; break;
|
||
|
case 4 : sItemTag = "NW_ASHMTO007"; break;
|
||
|
}
|
||
|
} else {
|
||
|
iItem = Random(3);
|
||
|
switch (iItem)
|
||
|
{
|
||
|
case 0 : sItemTag = "NW_ASHSW001"; break; // - small
|
||
|
case 1 : sItemTag = "NW_ASHLW001"; break; // - large
|
||
|
case 2 : sItemTag = "NW_ASHTO001"; break; // - tower
|
||
|
}
|
||
|
}
|
||
|
|
||
|
return sItemTag;
|
||
|
}
|
||
|
|
||
|
|
||
|
void WeapRogue(object oCreature)
|
||
|
{
|
||
|
int iItem;
|
||
|
string sItemTag;
|
||
|
string sAmmoTag;
|
||
|
object oItem;
|
||
|
object oOldItem;
|
||
|
|
||
|
iItem = Random(6);
|
||
|
switch (iItem)
|
||
|
{
|
||
|
case 0 : sItemTag = "NW_WSWLS001"; break; // - LongSword
|
||
|
case 1 : sItemTag = "NW_WSWSS001"; break; // - ShortSword
|
||
|
case 2 : sItemTag = "NW_WSWDG001"; break; // - Dagger
|
||
|
case 3 : sItemTag = "NW_WSWRP001"; break; // - Rapier
|
||
|
case 4 : sItemTag = "NW_WBWSL001";
|
||
|
sAmmoTag = "NW_WAMBU001";
|
||
|
CreateItemOnObject(sAmmoTag,oCreature,99);
|
||
|
break; // - Sling
|
||
|
case 5 : sItemTag = "NW_WBWSH001";
|
||
|
sAmmoTag = "NW_WAMAR001";
|
||
|
CreateItemOnObject(sAmmoTag,oCreature,99);
|
||
|
break; // - SBow
|
||
|
}
|
||
|
|
||
|
oOldItem = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND,oCreature);
|
||
|
AssignCommand(oCreature,ActionUnequipItem(oOldItem));
|
||
|
DestroyObject(oOldItem);
|
||
|
|
||
|
oItem=CreateItemOnObject(sItemTag,oCreature,1);
|
||
|
AssignCommand(oCreature, ActionEquipItem(oItem, INVENTORY_SLOT_RIGHTHAND));
|
||
|
}
|
||
|
|
||
|
void WeapMage(object oCreature)
|
||
|
{
|
||
|
int iItem;
|
||
|
string sItemTag;
|
||
|
string sAmmoTag;
|
||
|
object oItem;
|
||
|
object oOldItem;
|
||
|
|
||
|
iItem = Random(2);
|
||
|
switch (iItem)
|
||
|
{
|
||
|
case 0 : sItemTag = "NW_WSWDG001"; break; // - LongSword
|
||
|
case 1 : sItemTag = "NW_WDBQS001"; break; // - ShortSword
|
||
|
}
|
||
|
|
||
|
oOldItem = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND,oCreature);
|
||
|
AssignCommand(oCreature,ActionUnequipItem(oOldItem));
|
||
|
DestroyObject(oOldItem);
|
||
|
|
||
|
oItem=CreateItemOnObject(sItemTag,oCreature,1);
|
||
|
AssignCommand(oCreature, ActionEquipItem(oItem, INVENTORY_SLOT_RIGHTHAND));
|
||
|
}
|
||
|
|
||
|
void WeapCleric(object oCreature)
|
||
|
{
|
||
|
int iItem;
|
||
|
string sItemTag;
|
||
|
string sAmmoTag;
|
||
|
object oItem;
|
||
|
object oOldItem;
|
||
|
|
||
|
iItem = Random(3);
|
||
|
switch (iItem)
|
||
|
{
|
||
|
case 0 : sItemTag = "NW_WBLHW001"; break;
|
||
|
case 1 : sItemTag = "NW_WBLML001"; break;
|
||
|
case 2 : sItemTag = "NW_WBLFH001"; break;
|
||
|
}
|
||
|
|
||
|
oOldItem = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND,oCreature);
|
||
|
AssignCommand(oCreature,ActionUnequipItem(oOldItem));
|
||
|
DestroyObject(oOldItem);
|
||
|
|
||
|
oItem=CreateItemOnObject(sItemTag,oCreature,1);
|
||
|
AssignCommand(oCreature, ActionEquipItem(oItem, INVENTORY_SLOT_RIGHTHAND));
|
||
|
|
||
|
sItemTag = GetShield(oCreature);
|
||
|
oItem=CreateItemOnObject(sItemTag,oCreature,1);
|
||
|
AssignCommand(oCreature, ActionEquipItem(oItem, INVENTORY_SLOT_LEFTHAND));
|
||
|
|
||
|
}
|
||
|
|
||
|
string WeapOneHand()
|
||
|
{
|
||
|
int iItem;
|
||
|
string sItemTag;
|
||
|
|
||
|
iItem = Random(11);
|
||
|
switch (iItem)
|
||
|
{
|
||
|
case 0 : sItemTag = "NW_WSWLS001"; break; // - LongSword
|
||
|
case 1 : sItemTag = "NW_WSWSS001"; break; // - ShortSword
|
||
|
case 2 : sItemTag = "NW_WSWDG001"; break; // - Dagger
|
||
|
case 3 : sItemTag = "NW_WSWRP001"; break; // - Rapier
|
||
|
case 4 : sItemTag = "NW_WSWSC001"; break; // - Scimitaur
|
||
|
case 5 : sItemTag = "NW_WAXHN001"; break; // - 1HAx
|
||
|
case 6 : sItemTag = "NW_WBLFH001"; break; // - HvyFlail
|
||
|
case 7 : sItemTag = "NW_WBLHW001"; break; // - Warhammer
|
||
|
case 8 : sItemTag = "NW_WBLML001"; break; // - Mace
|
||
|
case 9 : sItemTag = "NW_WBLMS001"; break; // - Morningstar
|
||
|
case 10 : sItemTag = "NW_WSPSC001"; break; // - Sickle
|
||
|
}
|
||
|
|
||
|
return sItemTag;
|
||
|
}
|
||
|
|
||
|
string WeapOneHandPlusOne()
|
||
|
{
|
||
|
int iItem;
|
||
|
string sItemTag;
|
||
|
|
||
|
iItem = Random(5);
|
||
|
switch (iItem)
|
||
|
{
|
||
|
case 0 : sItemTag = "NW_WSWMLS002"; break; // - LongSword
|
||
|
case 1 : sItemTag = "NW_WSWMSS002"; break; // - ShortSword
|
||
|
case 2 : sItemTag = "NW_WSWMRP002"; break; // - Other
|
||
|
case 3 : sItemTag = "NW_WAXMHN002"; break; // - Ax
|
||
|
case 4 : sItemTag = "NW_WBLMFL002"; break; // - Blunt
|
||
|
}
|
||
|
|
||
|
return sItemTag;
|
||
|
}
|
||
|
|
||
|
string WeapOneHandPlusTwo()
|
||
|
{
|
||
|
int iItem;
|
||
|
string sItemTag;
|
||
|
|
||
|
iItem = Random(6);
|
||
|
switch (iItem)
|
||
|
{
|
||
|
case 0 : sItemTag = "NW_WSWMLS010"; break; // - LongSword
|
||
|
case 1 : sItemTag = "NW_WSWMSS009"; break; // - ShortSword
|
||
|
case 2 : sItemTag = "NW_WSWMSC010"; break; // - Other
|
||
|
case 3 : sItemTag = "NW_WAXMHN010"; break; // - Ax
|
||
|
case 4 : sItemTag = "NW_WBLMHW011"; break; // - Blunt
|
||
|
case 5 : sItemTag = "NW_WBLMML011"; break; // - Blunt
|
||
|
}
|
||
|
|
||
|
return sItemTag;
|
||
|
}
|
||
|
|
||
|
string WeapOneHandPlusThree()
|
||
|
{
|
||
|
int iItem;
|
||
|
string sItemTag;
|
||
|
|
||
|
iItem = Random(5);
|
||
|
switch (iItem)
|
||
|
{
|
||
|
case 0 : sItemTag = "NW_WSWMLS012"; break; // - LongSword
|
||
|
case 1 : sItemTag = "NW_WSWMSS011"; break; // - ShortSword
|
||
|
case 2 : sItemTag = "NW_WSWMKA011"; break; // - Other
|
||
|
case 3 : sItemTag = "NW_WAXMHN011"; break; // - Ax
|
||
|
case 4 : sItemTag = "NW_WBLMMS011"; break; // - Blunt
|
||
|
}
|
||
|
|
||
|
return sItemTag;
|
||
|
}
|
||
|
|
||
|
string WeapOneHandElite()
|
||
|
{
|
||
|
int iItem;
|
||
|
string sItemTag;
|
||
|
|
||
|
iItem = Random(8);
|
||
|
switch (iItem)
|
||
|
{
|
||
|
case 0 : sItemTag = "NW_WBLMML009"; break;
|
||
|
case 1 : sItemTag = "NW_WBLMMS004"; break;
|
||
|
case 2 : sItemTag = "NW_WAXMHN009"; break;
|
||
|
case 3 : sItemTag = "NW_WSWMLS009"; break;
|
||
|
case 4 : sItemTag = "NW_WSWMDG004"; break;
|
||
|
case 5 : sItemTag = "NW_WSWMBS004"; break;
|
||
|
case 6 : sItemTag = "NW_WSWMSS008"; break;
|
||
|
case 7 : sItemTag = "NW_WSWMRP005"; break;
|
||
|
}
|
||
|
|
||
|
return sItemTag;
|
||
|
}
|
||
|
|
||
|
string WeapTwoHand()
|
||
|
{
|
||
|
int iItem;
|
||
|
string sItemTag;
|
||
|
|
||
|
iItem = Random(6);
|
||
|
switch (iItem)
|
||
|
{
|
||
|
case 0 : sItemTag = "NW_WAXBT001"; break; // - 2H BAx
|
||
|
case 1 : sItemTag = "NW_WAXGR001"; break; // - GreatAx
|
||
|
case 2 : sItemTag = "NW_WSWGS001"; break; // - GreatSwrd
|
||
|
case 3 : sItemTag = "NW_WPLSS001"; break; // - Spear
|
||
|
case 4 : sItemTag = "NW_WPLHB001"; break; // - Halberd
|
||
|
case 5 : sItemTag = "NW_WDBQS001"; break; // - Quarterstaff
|
||
|
}
|
||
|
|
||
|
return sItemTag;
|
||
|
}
|
||
|
|
||
|
string WeapTwoHandPlusOne()
|
||
|
{
|
||
|
int iItem;
|
||
|
string sItemTag;
|
||
|
|
||
|
iItem = Random(5);
|
||
|
switch (iItem)
|
||
|
{
|
||
|
case 0 : sItemTag = "NW_WAXMBT002"; break; // - 2H BAx
|
||
|
case 1 : sItemTag = "NW_WAXMGR002"; break; // - GreatAx
|
||
|
case 2 : sItemTag = "NW_WSWMGS002"; break; // - GreatSwrd
|
||
|
case 3 : sItemTag = "NW_WPLMSS002"; break; // - Spear
|
||
|
case 4 : sItemTag = "NW_WPLMHB002"; break; // - Halberd
|
||
|
}
|
||
|
|
||
|
return sItemTag;
|
||
|
}
|
||
|
|
||
|
string WeapTwoHandPlusTwo()
|
||
|
{
|
||
|
int iItem;
|
||
|
string sItemTag;
|
||
|
|
||
|
iItem = Random(5);
|
||
|
switch (iItem)
|
||
|
{
|
||
|
case 0 : sItemTag = "NW_WAXMBT010"; break; // - 2H BAx
|
||
|
case 1 : sItemTag = "NW_WAXMGR009"; break; // - GreatAx
|
||
|
case 2 : sItemTag = "NW_WSWMGS011"; break; // - GreatSwrd
|
||
|
case 3 : sItemTag = "NW_WPLMSS010"; break; // - Spear
|
||
|
case 4 : sItemTag = "NW_WPLMHB010"; break; // - Halberd
|
||
|
}
|
||
|
|
||
|
return sItemTag;
|
||
|
}
|
||
|
|
||
|
string WeapTwoHandPlusThree()
|
||
|
{
|
||
|
int iItem;
|
||
|
string sItemTag;
|
||
|
|
||
|
iItem = Random(5);
|
||
|
switch (iItem)
|
||
|
{
|
||
|
case 0 : sItemTag = "NW_WAXMBT011"; break; // - 2H BAx
|
||
|
case 1 : sItemTag = "NW_WAXMGR011"; break; // - GreatAx
|
||
|
case 2 : sItemTag = "NW_WSWMGS012"; break; // - GreatSwrd
|
||
|
case 3 : sItemTag = "NW_WPLMSS011"; break; // - Spear
|
||
|
case 4 : sItemTag = "NW_WPLMHB011"; break; // - Halberd
|
||
|
}
|
||
|
|
||
|
return sItemTag;
|
||
|
}
|
||
|
|
||
|
string WeapTwoHandElite()
|
||
|
{
|
||
|
int iItem;
|
||
|
string sItemTag;
|
||
|
|
||
|
iItem = Random(6);
|
||
|
switch (iItem)
|
||
|
{
|
||
|
case 0 : sItemTag = "NW_IT_NOVEL009"; break;
|
||
|
case 1 : sItemTag = "NW_WSWMGS009"; break;
|
||
|
case 2 : sItemTag = "NW_WAXMGR005"; break;
|
||
|
case 3 : sItemTag = "NW_WAXMBT003"; break;
|
||
|
case 4 : sItemTag = "NW_WPLMSS007"; break;
|
||
|
case 5 : sItemTag = "NW_WPLMSC006"; break;
|
||
|
}
|
||
|
|
||
|
return sItemTag;
|
||
|
}
|
||
|
|
||
|
|
||
|
string WeapRange(object oCreature)
|
||
|
{
|
||
|
int iItem;
|
||
|
string sItemTag;
|
||
|
string sAmmoTag;
|
||
|
|
||
|
iItem = Random(4);
|
||
|
switch (iItem)
|
||
|
{
|
||
|
case 0 : sItemTag = "NW_WBWSL001";
|
||
|
sAmmoTag = "NW_WAMBU001";
|
||
|
CreateItemOnObject(sAmmoTag,oCreature,99);
|
||
|
break; // - Sling
|
||
|
case 1 : sItemTag = "NW_WBWSH001";
|
||
|
sAmmoTag = "NW_WAMAR001";
|
||
|
CreateItemOnObject(sAmmoTag,oCreature,99);
|
||
|
break; // - SBow
|
||
|
case 2 : sItemTag = "NW_WBWLN001";
|
||
|
sAmmoTag = "NW_WAMAR001";
|
||
|
CreateItemOnObject(sAmmoTag,oCreature,99);
|
||
|
break; // - LBow
|
||
|
case 3 : sItemTag = "NW_WBWXH001";
|
||
|
sAmmoTag = "NW_WAMBO001";
|
||
|
CreateItemOnObject(sAmmoTag,oCreature,99);
|
||
|
break; // - XBow
|
||
|
}
|
||
|
|
||
|
return sItemTag;
|
||
|
}
|
||
|
|
||
|
string WeapRangePlusOne(object oCreature)
|
||
|
{
|
||
|
int iItem;
|
||
|
string sItemTag;
|
||
|
string sAmmoTag;
|
||
|
|
||
|
iItem = Random(3);
|
||
|
switch (iItem)
|
||
|
{
|
||
|
case 0 : sItemTag = "NW_WBWMSL001";
|
||
|
sAmmoTag = "NW_WAMMBU004";
|
||
|
CreateItemOnObject(sAmmoTag,oCreature,99);
|
||
|
break; // - Sling
|
||
|
case 1 : sItemTag = "NW_WBWMLN002";
|
||
|
sAmmoTag = "NW_WAMMAR005";
|
||
|
CreateItemOnObject(sAmmoTag,oCreature,99);
|
||
|
break; // - LBow
|
||
|
case 2 : sItemTag = "NW_WBWMXH002";
|
||
|
sAmmoTag = "NW_WAMMAR005";
|
||
|
CreateItemOnObject(sAmmoTag,oCreature,99);
|
||
|
break; // - XBow
|
||
|
}
|
||
|
|
||
|
return sItemTag;
|
||
|
}
|
||
|
|
||
|
string WeapRangePlusTwo(object oCreature)
|
||
|
{
|
||
|
int iItem;
|
||
|
string sItemTag;
|
||
|
string sAmmoTag;
|
||
|
|
||
|
|
||
|
iItem = Random(3);
|
||
|
switch (iItem)
|
||
|
{
|
||
|
case 0 : sItemTag = "NW_WBWMSL009";
|
||
|
sAmmoTag = "NW_WAMMBU004";
|
||
|
CreateItemOnObject(sAmmoTag,oCreature,99);
|
||
|
break; // - Sling
|
||
|
case 1 : sItemTag = "NW_WBWMSH008";
|
||
|
sAmmoTag = "NW_WAMMAR006";
|
||
|
CreateItemOnObject(sAmmoTag,oCreature,99);
|
||
|
break; // - LBow
|
||
|
case 2 : sItemTag = "NW_WBWMXL008";
|
||
|
sAmmoTag = "NW_WAMMBO002";
|
||
|
CreateItemOnObject(sAmmoTag,oCreature,99);
|
||
|
break; // - XBow
|
||
|
}
|
||
|
|
||
|
return sItemTag;
|
||
|
}
|
||
|
|
||
|
string WeapRangePlusThree(object oCreature)
|
||
|
{
|
||
|
int iItem;
|
||
|
string sItemTag;
|
||
|
string sAmmoTag;
|
||
|
|
||
|
iItem = Random(3);
|
||
|
switch (iItem)
|
||
|
{
|
||
|
case 0 : sItemTag = "NW_WBWMSL010";
|
||
|
sAmmoTag = "NW_WAMMBU004";
|
||
|
CreateItemOnObject(sAmmoTag,oCreature,99);
|
||
|
break; // - Sling
|
||
|
case 1 : sItemTag = "NW_WBWMLN009";
|
||
|
sAmmoTag = "NW_WAMMAR002";
|
||
|
CreateItemOnObject(sAmmoTag,oCreature,99);
|
||
|
break; // - LBow
|
||
|
case 2 : sItemTag = "NW_WBWMXH009";
|
||
|
sAmmoTag = "NW_WAMMAR005";
|
||
|
CreateItemOnObject(sAmmoTag,oCreature,99);
|
||
|
break; // - XBow
|
||
|
}
|
||
|
|
||
|
return sItemTag;
|
||
|
}
|
||
|
|
||
|
|
||
|
void EquipMonster(object oCreature)
|
||
|
{
|
||
|
int iItemType;
|
||
|
int iItemLevel;
|
||
|
string sItemTag;
|
||
|
object oItem;
|
||
|
object oOldItem;
|
||
|
|
||
|
iItemType = Random(5) + 1;
|
||
|
|
||
|
|
||
|
//iItemType = 1 will pass through code without equipping
|
||
|
if (iItemType == 2) // 1-H Weapon
|
||
|
{
|
||
|
iItemLevel = GetItemlevel(oCreature);
|
||
|
switch (iItemLevel)
|
||
|
{
|
||
|
case 0 : sItemTag = WeapOneHand(); break;
|
||
|
case 1 : sItemTag = WeapOneHandPlusOne(); break;
|
||
|
case 2 : sItemTag = WeapOneHandPlusTwo(); break;
|
||
|
case 3 : sItemTag = WeapOneHandPlusThree(); break;
|
||
|
case 4 : sItemTag = WeapOneHandElite(); break;
|
||
|
}
|
||
|
|
||
|
oOldItem = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND,oCreature);
|
||
|
AssignCommand(oCreature,ActionUnequipItem(oOldItem));
|
||
|
DestroyObject(oOldItem);
|
||
|
|
||
|
oItem=CreateItemOnObject(sItemTag,oCreature,1);
|
||
|
AssignCommand(oCreature, ActionEquipItem(oItem, INVENTORY_SLOT_RIGHTHAND));
|
||
|
|
||
|
}
|
||
|
|
||
|
if (iItemType == 3) // 1-H Weapon + Shield
|
||
|
{
|
||
|
|
||
|
iItemLevel = GetItemlevel(oCreature);
|
||
|
switch (iItemLevel)
|
||
|
{
|
||
|
case 0 : sItemTag = WeapOneHand(); break;
|
||
|
case 1 : sItemTag = WeapOneHandPlusOne(); break;
|
||
|
case 2 : sItemTag = WeapOneHandPlusTwo(); break;
|
||
|
case 3 : sItemTag = WeapOneHandPlusThree(); break;
|
||
|
case 4 : sItemTag = WeapOneHandElite(); break;
|
||
|
}
|
||
|
|
||
|
|
||
|
oOldItem = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND,oCreature);
|
||
|
AssignCommand(oCreature,ActionUnequipItem(oOldItem));
|
||
|
DestroyObject(oOldItem);
|
||
|
|
||
|
oItem=CreateItemOnObject(sItemTag,oCreature,1);
|
||
|
AssignCommand(oCreature, ActionEquipItem(oItem, INVENTORY_SLOT_RIGHTHAND));
|
||
|
|
||
|
sItemTag = GetShield(oCreature);
|
||
|
oItem=CreateItemOnObject(sItemTag,oCreature,1);
|
||
|
AssignCommand(oCreature, ActionEquipItem(oItem, INVENTORY_SLOT_LEFTHAND));
|
||
|
|
||
|
}
|
||
|
|
||
|
if (iItemType == 4) // 2-H Weapon
|
||
|
{
|
||
|
iItemLevel = GetItemlevel(oCreature);
|
||
|
switch (iItemLevel)
|
||
|
{
|
||
|
case 0 : sItemTag = WeapTwoHand(); break;
|
||
|
case 1 : sItemTag = WeapTwoHandPlusOne(); break;
|
||
|
case 2 : sItemTag = WeapTwoHandPlusTwo(); break;
|
||
|
case 3 : sItemTag = WeapTwoHandPlusThree(); break;
|
||
|
case 4 : sItemTag = WeapTwoHandElite(); break;
|
||
|
}
|
||
|
|
||
|
oOldItem = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND,oCreature);
|
||
|
AssignCommand(oCreature,ActionUnequipItem(oOldItem));
|
||
|
DestroyObject(oOldItem);
|
||
|
|
||
|
oItem=CreateItemOnObject(sItemTag,oCreature,1);
|
||
|
AssignCommand(oCreature, ActionEquipItem(oItem, INVENTORY_SLOT_RIGHTHAND));
|
||
|
}
|
||
|
|
||
|
if (iItemType == 5) // Range
|
||
|
{
|
||
|
iItemLevel = GetItemlevel(oCreature);
|
||
|
switch (iItemLevel)
|
||
|
{
|
||
|
case 0 : sItemTag = WeapRange(oCreature); break;
|
||
|
case 1 : sItemTag = WeapRangePlusOne(oCreature); break;
|
||
|
case 2 : sItemTag = WeapRangePlusTwo(oCreature); break;
|
||
|
case 3 : sItemTag = WeapRangePlusThree(oCreature); break;
|
||
|
case 4 : sItemTag = WeapRangePlusThree(oCreature); break;
|
||
|
}
|
||
|
|
||
|
oOldItem = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND,oCreature);
|
||
|
AssignCommand(oCreature,ActionUnequipItem(oOldItem));
|
||
|
|
||
|
oItem=CreateItemOnObject(sItemTag,oCreature,1);
|
||
|
AssignCommand(oCreature, ActionEquipItem(oItem, INVENTORY_SLOT_RIGHTHAND));
|
||
|
// sItemTag = WeapOneHand();
|
||
|
// oItem=CreateItemOnObject(sItemTag,oCreature,1);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
void EquipMonsterCheck(object oCreature)
|
||
|
{
|
||
|
int iFlag;
|
||
|
string sTag;
|
||
|
|
||
|
iFlag = 0;
|
||
|
sTag = GetTag(oCreature);
|
||
|
|
||
|
//Auto Equip
|
||
|
if (sTag == "NW_GOBLINA")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_GOBCHIEFA")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_GOBCHIEFB")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_ORCA")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_OrcChiefA")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_ORCCHIEFB")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_SKELETON")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_SKELCHIEF")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_SKELWARR01")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_SKELWARR02")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_BANDIT001")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_TIEFLING02")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_BUGBEARA")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_OLDWARRA")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_OLDCHIEFA")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_MINOTAUR")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_MINOTAURBOSS")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_VAMPIRE")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_MinChief")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_MUMFIGHT")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_HALFFND001")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_DROWFIGHT001")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_DUEFIGHT001")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_DROWFIGHT005")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_DUEFIGHT005")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_DROWFIGHT010")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_DUEFIGHT010")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_DROWFIGHT015")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_DUEFIGHT015")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_DROWFIGHT020")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_DUEFIGHT020")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_CURST001")
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_VAMPIRE001")
|
||
|
iFlag = 1;
|
||
|
|
||
|
|
||
|
|
||
|
//Half Equip
|
||
|
if (sTag == "NW_GOBLINB")
|
||
|
if (Random(2) == 0)
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_ORCB")
|
||
|
if (Random(2) == 0)
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_BUGBEARB")
|
||
|
if (Random(2) == 0)
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_OLDWARRB")
|
||
|
if (Random(2) == 0)
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_BANDIT006")
|
||
|
if (Random(2) == 0)
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_ZOMBIE01")
|
||
|
if (Random(2) == 0)
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_ZOMBIE02")
|
||
|
if (Random(2) == 0)
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_ZOMBWARR01")
|
||
|
if (Random(2) == 0)
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_ZOMBWARR02")
|
||
|
if (Random(2) == 0)
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_OLDWARB")
|
||
|
if (Random(2) == 0)
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_MUMMY")
|
||
|
if (Random(2) == 0)
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_MUMMYBOSS")
|
||
|
if (Random(2) == 0)
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_BODAK")
|
||
|
if (Random(2) == 0)
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_GNTHILL")
|
||
|
if (Random(2) == 0)
|
||
|
iFlag = 1;
|
||
|
if (sTag == "NW_GNTMOUNT")
|
||
|
if (Random(2) == 0)
|
||
|
iFlag = 1;
|
||
|
|
||
|
|
||
|
//Rogue Equip
|
||
|
if (sTag == "NW_CURST002")
|
||
|
{
|
||
|
if (Random(2) == 0)
|
||
|
WeapRogue(oCreature);
|
||
|
}
|
||
|
if (sTag == "NW_VAMPIRE002")
|
||
|
{
|
||
|
if (Random(2) == 0)
|
||
|
WeapRogue(oCreature);
|
||
|
}
|
||
|
if (sTag == "NW_DROWROGUE001")
|
||
|
{
|
||
|
if (Random(2) == 0)
|
||
|
WeapRogue(oCreature);
|
||
|
}
|
||
|
if (sTag == "NW_DUEROGUE001")
|
||
|
{
|
||
|
if (Random(2) == 0)
|
||
|
WeapRogue(oCreature);
|
||
|
}
|
||
|
if (sTag == "NW_DROWROGUE005")
|
||
|
{
|
||
|
if (Random(2) == 0)
|
||
|
WeapRogue(oCreature);
|
||
|
}
|
||
|
if (sTag == "NW_DUEROGUE005")
|
||
|
{
|
||
|
if (Random(2) == 0)
|
||
|
WeapRogue(oCreature);
|
||
|
}
|
||
|
if (sTag == "NW_DROWROGUE010")
|
||
|
{
|
||
|
if (Random(2) == 0)
|
||
|
WeapRogue(oCreature);
|
||
|
}
|
||
|
if (sTag == "NW_DUEROGUE010")
|
||
|
{
|
||
|
if (Random(2) == 0)
|
||
|
WeapRogue(oCreature);
|
||
|
}
|
||
|
if (sTag == "NW_DROWROGUE015")
|
||
|
{
|
||
|
if (Random(2) == 0)
|
||
|
WeapRogue(oCreature);
|
||
|
}
|
||
|
if (sTag == "NW_DUEROGUE015")
|
||
|
{
|
||
|
if (Random(2) == 0)
|
||
|
WeapRogue(oCreature);
|
||
|
}
|
||
|
if (sTag == "NW_DROWROGUE020")
|
||
|
{
|
||
|
if (Random(2) == 0)
|
||
|
WeapRogue(oCreature);
|
||
|
}
|
||
|
if (sTag == "NW_DUEROGUE020")
|
||
|
{
|
||
|
if (Random(2) == 0)
|
||
|
WeapRogue(oCreature);
|
||
|
}
|
||
|
|
||
|
if (sTag == "NW_DROWCLER001")
|
||
|
WeapCleric(oCreature);
|
||
|
if (sTag == "NW_DUECLER001")
|
||
|
WeapCleric(oCreature);
|
||
|
if (sTag == "NW_DROWCLER005")
|
||
|
WeapCleric(oCreature);
|
||
|
if (sTag == "NW_DUECLER005")
|
||
|
WeapCleric(oCreature);
|
||
|
if (sTag == "NW_DROWCLER010")
|
||
|
WeapCleric(oCreature);
|
||
|
if (sTag == "NW_DUECLER010")
|
||
|
WeapCleric(oCreature);
|
||
|
if (sTag == "NW_DROWCLER015")
|
||
|
WeapCleric(oCreature);
|
||
|
if (sTag == "NW_DUECLER015")
|
||
|
WeapCleric(oCreature);
|
||
|
if (sTag == "NW_DROWCLER020")
|
||
|
WeapCleric(oCreature);
|
||
|
if (sTag == "NW_DUECLER020")
|
||
|
WeapCleric(oCreature);
|
||
|
if (sTag == "NW_DROWMAGE001")
|
||
|
WeapMage(oCreature);
|
||
|
if (sTag == "NW_DUEMAGE001")
|
||
|
WeapMage(oCreature);
|
||
|
if (sTag == "NW_DROWMAGE005")
|
||
|
WeapMage(oCreature);
|
||
|
if (sTag == "NW_DUEMAGE005")
|
||
|
WeapMage(oCreature);
|
||
|
if (sTag == "NW_DROWMAGE010")
|
||
|
WeapMage(oCreature);
|
||
|
if (sTag == "NW_DUEMAGE010")
|
||
|
WeapMage(oCreature);
|
||
|
if (sTag == "NW_DROWMAGE015")
|
||
|
WeapMage(oCreature);
|
||
|
if (sTag == "NW_DUEMAGE015")
|
||
|
WeapMage(oCreature);
|
||
|
if (sTag == "NW_DROWMAGE020")
|
||
|
WeapMage(oCreature);
|
||
|
if (sTag == "NW_DUEMAGE020")
|
||
|
WeapMage(oCreature);
|
||
|
|
||
|
if (iFlag == 1)
|
||
|
{
|
||
|
EquipMonster(oCreature);
|
||
|
}
|
||
|
}
|
||
|
|