37 lines
1.1 KiB
Plaintext
37 lines
1.1 KiB
Plaintext
void main()
|
|
{
|
|
object oPC = GetFirstPC();
|
|
while (GetIsObjectValid(oPC))
|
|
{
|
|
if (GetArea(oPC) == GetArea(OBJECT_SELF))
|
|
{
|
|
//SendMessageToPC(oPC,"1");
|
|
if (!GetIsDM(oPC))
|
|
{
|
|
//SendMessageToPC(oPC,"2");
|
|
if (GetIsPC(oPC))
|
|
{
|
|
//SendMessageToPC(oPC,"3");
|
|
if (GetClassByPosition(1|2|3,oPC)!=CLASS_TYPE_UNDEAD)
|
|
{
|
|
//SendMessageToPC(oPC,"4");
|
|
string Subrace = GetSubRace(oPC);
|
|
if (Subrace!="water-genasi" && Subrace !="lich" && Subrace !="vampire" && Subrace !="skeleton-pirate")
|
|
{
|
|
//SendMessageToPC(oPC,"5");
|
|
if ((GetTag(GetItemInSlot(INVENTORY_SLOT_HEAD,oPC))!="DivingHelmet")&&(GetTag(GetItemInSlot(INVENTORY_SLOT_NECK,oPC))!="AmuletofBreath"))
|
|
{
|
|
int nDmgAmt = FloatToInt((GetMaxHitPoints(oPC)/2.5));
|
|
effect eDrown = EffectDamage(nDmgAmt,DAMAGE_TYPE_DIVINE,DAMAGE_POWER_NORMAL);
|
|
DelayCommand(4.0, ApplyEffectToObject(DURATION_TYPE_INSTANT,eDrown,oPC,0.0));
|
|
DelayCommand(4.0, SendMessageToPC(oPC,"You gag on some water trying desperately to breath but cannot!"));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
oPC = GetNextPC();
|
|
}
|
|
}
|