Battledale_PRC8/_module/nss/jw_new_barr_ente.nss
Jaysyn904 7b9e44ebbb Initial upload
Initial upload.  PRC8 has been added.  Module compiles, PRC's default AI & treasure scripts have been integrated.  Started work on top hak for SLA / Ability / Scripting modifications.
2024-03-11 23:44:08 -04:00

72 lines
1.3 KiB
Plaintext

void main()
{
object oDoor;
if (GetLocalInt(OBJECT_SELF,"nDone")!=1)
{
oDoor=GetObjectByTag("jw_new_zhentb1");
ApplyEffectToObject(DURATION_TYPE_INSTANT,EffectDamage(10,DAMAGE_TYPE_MAGICAL,DAMAGE_POWER_PLUS_FIVE),oDoor);
oDoor=GetObjectByTag("jw_new_zhentb2");
ApplyEffectToObject(DURATION_TYPE_INSTANT,EffectDamage(10,DAMAGE_TYPE_MAGICAL,DAMAGE_POWER_PLUS_FIVE),oDoor);
SetLocalInt(OBJECT_SELF,"nDone",1);
}
object oChest;
object oObject = GetFirstObjectInArea();
object oPC=GetEnteringObject();
if (!GetIsPC(oPC))
{
return;
}
if (GetIsDM(oPC))
{
return;
}
int nPCinArea=FALSE;
oObject=GetFirstObjectInArea();
while (GetIsObjectValid(oObject))
{
if (GetIsPC(oObject)&&(oObject!=oPC))
{
nPCinArea = TRUE;
}
oObject=GetNextObjectInArea();
}
/// this returns true if there are any PCs in the area that are NOT
/// the object that just entered the area
if (nPCinArea != TRUE)
{
oChest=GetObjectByTag("jw_new_zhent_chest");
oObject=GetFirstItemInInventory(oChest);
while (GetIsObjectValid(oObject))
{
DestroyObject(oObject);
oObject=GetNextItemInInventory(oChest);
}
AssignCommand(oChest,ActionPlayAnimation (ANIMATION_PLACEABLE_CLOSE));
AssignCommand(oChest,SetLocked(oChest,TRUE));
SetLocalInt(oChest,"nDone",0);
}
}