/*--------------------------------------------------------

Script Name: securedoorscript
----------------------------------------------------------
Created By: Genisys(Guile)
Created On: 2/09/09
----------------------------------------------------------

This script goes in the OnUsed even of ALL Treasure Chest
bags or whatever will be opened by a PC that has treasure
in it!

----------------------------------------------------------*/

//PROTOTYPE
void DestroyTreasure(object oMe)
{
 object o = GetFirstItemInInventory(oMe);
 while(GetIsObjectValid(o))
 {
  SetPlotFlag(o, FALSE);
  DestroyObject(o, 0.0f);
  o =GetNextItemInInventory(oMe);
 }
}


void main()
{

//Prevent Cheating!!
effect eEffect = EffectDamage(6666, DAMAGE_TYPE_POSITIVE, DAMAGE_POWER_NORMAL);
effect eVis = EffectVisualEffect(VFX_FNF_GREATER_RUIN);
object oPC = GetLastUsedBy();
string sMsg;

if(GetHasSpellEffect(SPELL_ETHEREALNESS, oPC) ||
GetHasSpellEffect(SPELL_IMPROVED_INVISIBILITY, oPC) ||
GetHasSpellEffect(SPELL_INVISIBILITY, oPC) ||
GetHasSpellEffect(SPELL_INVISIBILITY_SPHERE, oPC) ||
GetHasSpellEffect(SPELL_SANCTUARY, oPC))
{
 if(GetLocalInt(oPC, "GS_LOOTER")==2)
 {
 CreateItemOnObject("gslootlib", oPC, 1);
 ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oPC, 0.0f);
 DelayCommand(4.0, ApplyEffectToObject(DURATION_TYPE_INSTANT, eEffect, oPC, 0.0f));
 sMsg = "You cannot be invisible while looting for treasure, YOU WILL RECIEVE NO MORE WARNINGS!";
 FloatingTextStringOnCreature(sMsg, oPC, TRUE);
 DelayCommand(0.3, DestroyTreasure(OBJECT_SELF));
 return;
 }
 else
 {
  CreateItemOnObject("gslootlib", oPC, 1);
  SetLocalInt(oPC, "GS_LOOTER", 2);
  sMsg = "You cannot be invisible while looting for treasure, YOU HAVE BEEN WARNED!";
  FloatingTextStringOnCreature(sMsg, oPC, TRUE);
  DelayCommand(0.3, DestroyTreasure(OBJECT_SELF));
  return;
 }

}


}