////////////////////////////////////////////////////////////////////////////////////
// Run first time starting map
void OnStart()
///////////////////////////////////////////////////////////////////////////////////
// HUNTED PIANO STARTS PLAYING!
{
AddTimer("pianotimer", 0, "pianotimer");
AddEntityCollideCallback("Player", "pianostop", "pianostop", true, 1);
}
void PianoTimer(string &in asTimer)
{
PlaySoundAtEntity("piano", "general_piano03.ogg", "Piano", 0, false);
AddTimer("pianotimer", 18, "pianotimer");
}
void pianostop(string &in asEntity, int alState) 
{
StopSound("piano", 0);
RemoveTimer("pianotimer");
SetLeverStuckState("piano", 0, true);
AddPropImpulse("piano", 0, 0, 100, "world");
PlaySoundAtEntity("piano", "impact_wood_heavy_med3", "Piano", 0, false);
CreateParticleSystemAtEntity("", "ptest_dust_falling.ps", "impact", false);
}
///////////////////////////////////////////////////////////////////////////////////
// ALL THE KEYS!
{
  AddUseItemCallback("", "Key_1", "Door_1", "UsedKeyOnDoor", true);
  AddUseItemCallback("", "Key_2", "Door_2", "UsedKeyOnDoor_2", true);
  AddUseItemCallback("", "Secretkey2", "metal_1", "UsedKeyOnDoor_3", true);
}
void UsedKeyOnDoor(string &in asItem, string &in asEntity)
{
  SetSwingDoorLocked("Door_1", false, true);
  PlaySoundAtEntity("", "unlock_door", "Door_1", 0, false);
  RemoveItem("Key_1");
}
void UsedKeyOnDoor_2(string &in asItem, string &in asEntity)
{
  SetSwingDoorLocked("Door_2", false, true);
  PlaySoundAtEntity("", "unlock_door", "Door_2", 0,false);
  RemoveItem("Key_2");
} 
void Message_1(string &in asEntity)
{
  SetMessage("Message", "Message_1", 2);
}
void UsedKeyOnDoor_3(string &in asItem, string &in asEntity)
{
  SetSwingDoorLocked("metal_1", false, true);
  PlaySoundAtEntity("", "unlock_door", "metal_1", 0, false);
  RemoveItem("Secretkey2");
}
 
///////////////////////////////////////////////////////////////////////////////////
// SCARY DOOR/CHAIR EVENT IN CORRIDOOR!
void OnEnter()
{
StopSound("Sound_1", 0);
//COLLIDES
AddEntityCollideCallback("Player", "Event_Start_Collide_Area", "StartEvent", true, 1);
}
void StartEvent(string &in asParent, string &in asChild, int alState)
{CreateParticleSystemAtEntityExt("awedsasf", "ps_dust_push_15.ps", "Particle_Spawn", false, 1.0f, 0.1f, 0.1f, 1, false, 1, 1, 1, 1);
    AddTimer("asdtgeqtfgd", 1.0f, "LoopyTimerCounting");
}
void LoopyTimerCounting(string &in asTimer)
{AddLocalVarInt("Stage", 1);
float fEventSpeed = 0.0f;
    switch(GetLocalVarInt("Stage")) 
    {    case 1:
            SetSwingDoorClosed("WindDoor", true, true);
            SetSwingDoorDisableAutoClose("WindDoor", false);
            AddPropForce("WindDoor", 0, 0, 290.0f, "world");
            SetSwingDoorLocked("WindDoor", true, true);
        
            FadeInSound("Sound_1", 1.0f, true);
            FadeLightTo("PointLight_1", 0.8f, 1, 0, 0, 0, 0.3);
            break;
            
        case 2:
            AddPropForce("chandelier_simple_short_6", 0, 0, 100.0f, "world");
            fEventSpeed = 0.5f;
            FadeLightTo("PointLight_1", 0, 0, 0, 0, 0, 0.5);
            FadeLightTo("PointLight_2", 0.7f, 1, 0, 0, 0, 0.6);
            break;
            
        case 3:
            AddPropForce("chandelier_simple_short_6", 0, 0, 2400.0f, "world");
            fEventSpeed = 0.6f;
            FadeLightTo("PointLight_2", 0, 0, 0, 0, 0, 0.6);
            FadeLightTo("PointLight_3", 0.5f, 1, 0, 0, 0, 0.6);
            break;
            
        case 4:
            SetEntityActive("block_box_nonchar_1", true);
            AddPropForce("chair_wood02_4", 0, 0, 0, "world");
            fEventSpeed = 0.0f;
            FadeLightTo("PointLight_3", 0, 0, 0, 0, 0, 0.5);
            break;
        case 5:
        
            AddPropForce("chair_wood02_4",4000, 600, 0, "world");
            fEventSpeed = 0.0f;
            break;
        case 6:
        
            SetEntityActive("block_box_nonchar_1", false);
            break;
        }
if(GetLocalVarInt("Stage") < 10)   AddTimer("thisloopsthetimer", fEventSpeed, "LoopyTimerCounting");
}