Initial upload
Initial upload
This commit is contained in:
105
_module/nss/prev_shielda.nss
Normal file
105
_module/nss/prev_shielda.nss
Normal file
@@ -0,0 +1,105 @@
|
||||
int GetNextShieldIndex( object oShield)
|
||||
{
|
||||
int iIndex = GetItemAppearance( oShield, ITEM_APPR_TYPE_SIMPLE_MODEL, 0);
|
||||
iIndex--;
|
||||
int iItemtype = GetBaseItemType( oShield);
|
||||
|
||||
//shields
|
||||
if( iItemtype == BASE_ITEM_SMALLSHIELD)
|
||||
{
|
||||
if( iIndex == 85) //CEP2.2
|
||||
iIndex = 64;
|
||||
else if( iIndex == 60)
|
||||
iIndex = 57;
|
||||
else if( iIndex == 50)
|
||||
iIndex = 49;
|
||||
else if( iIndex == 40)
|
||||
iIndex = 39;
|
||||
else if( iIndex == 30)
|
||||
iIndex = 23;
|
||||
else if( iIndex == 20)
|
||||
iIndex = 13;
|
||||
else if( iIndex == 10)
|
||||
iIndex = 88;
|
||||
|
||||
}
|
||||
else if( iItemtype == BASE_ITEM_LARGESHIELD)
|
||||
{
|
||||
if( iIndex == 219) //CEP2.2
|
||||
iIndex = 213;
|
||||
else if( iIndex == 150)
|
||||
iIndex = 149;
|
||||
else if( iIndex == 140)
|
||||
iIndex = 139;
|
||||
else if( iIndex == 130)
|
||||
iIndex = 129;
|
||||
else if( iIndex == 120)
|
||||
iIndex = 119;
|
||||
else if( iIndex == 110)
|
||||
iIndex = 109;
|
||||
else if( iIndex == 99)
|
||||
iIndex = 96;
|
||||
else if( iIndex == 89)
|
||||
iIndex = 88;
|
||||
else if( iIndex == 50)
|
||||
iIndex = 49;
|
||||
else if( iIndex == 40)
|
||||
iIndex = 33;
|
||||
else if( iIndex == 30)
|
||||
iIndex = 23;
|
||||
else if( iIndex == 20)
|
||||
iIndex = 13;
|
||||
else if( iIndex == 11)
|
||||
iIndex = 255;
|
||||
|
||||
}
|
||||
else if( iItemtype == BASE_ITEM_TOWERSHIELD)
|
||||
{
|
||||
if( iIndex == 231) //CEP2.2
|
||||
iIndex = 230;
|
||||
else if( iIndex == 180)
|
||||
iIndex = 153;
|
||||
else if( iIndex == 150)
|
||||
iIndex = 149;
|
||||
else if( iIndex == 140)
|
||||
iIndex = 139;
|
||||
else if( iIndex == 130)
|
||||
iIndex = 129;
|
||||
else if( iIndex == 120)
|
||||
iIndex = 119;
|
||||
else if( iIndex == 50)
|
||||
iIndex = 43;
|
||||
else if( iIndex == 40)
|
||||
iIndex = 33;
|
||||
else if( iIndex == 30)
|
||||
iIndex = 23;
|
||||
else if( iIndex == 20)
|
||||
iIndex = 19;
|
||||
else if( iIndex == 10)
|
||||
iIndex = 237; //Start Over at Tower Shield 237
|
||||
|
||||
}
|
||||
|
||||
return iIndex;
|
||||
}
|
||||
|
||||
void main()
|
||||
{
|
||||
object oPlayer = GetPCSpeaker();
|
||||
object oShield = GetItemInSlot( INVENTORY_SLOT_LEFTHAND, oPlayer);
|
||||
|
||||
int iIndex = GetNextShieldIndex( oShield);
|
||||
|
||||
if( GetIsDM( oPlayer))
|
||||
SendMessageToPC( oPlayer, "The index is: " + IntToString( iIndex));
|
||||
|
||||
object oNewShield = CopyItemAndModify(oShield, ITEM_APPR_TYPE_SIMPLE_MODEL, 0, iIndex, TRUE);
|
||||
|
||||
if( GetIsObjectValid( oNewShield))
|
||||
{
|
||||
AssignCommand( oPlayer, ActionEquipItem( oNewShield, INVENTORY_SLOT_LEFTHAND));
|
||||
DestroyObject( oShield);
|
||||
}
|
||||
else
|
||||
DestroyObject( oNewShield);
|
||||
}
|
Reference in New Issue
Block a user