Frictional Games Forum (read-only)

Full Version: "if" script doesn't work
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
This is my first "if" script and I don't know why it doesn't work.
Code:
void monsterbreakdoor(string &in asTimer)
{
if (GetSwingDoorClosed("cellar_wood01_5") == true)
{
CreateParticleSystemAtEntity("", "ps_hit_wood.ps", "ScriptArea_53", false);
SetEntityActive("servant_grunt_3", true);
SetEntityActive("cellar_wood01_broken_2", true);
SetEntityActive("cellar_wood01_5", false);
PlaySoundAtEntity("", "break_wood.snt.snt", "ScriptArea_53", 0, false);
CreateParticleSystemAtEntity("", "ps_dust_impact.ps", "ScriptArea_53", false);
ShowEnemyPlayerPosition("servant_grunt_3");
}

else
{ if(GetSwingDoorClosed("cellar_wood01_5") == false)
{
SetEntityActive("ScriptArea_54", true);
}
}
}

If the door will be open, there shouldn't be door breaking effects and an area should be true. On the other side the door should be breaking.
But both is happening. Why?
void monsterbreakdoor(string &in asTimer)
{
if(GetSwingDoorClosed("cellar_wood01_5") == true)
{
CreateParticleSystemAtEntity("", "ps_hit_wood.ps", "ScriptArea_53", false);
SetEntityActive("servant_grunt_3", true);
SetEntityActive("cellar_wood01_broken_2", true);
SetEntityActive("cellar_wood01_5", false);
PlaySoundAtEntity("", "break_wood.snt.snt", "ScriptArea_53", 0, false);
CreateParticleSystemAtEntity("", "ps_dust_impact.ps", "ScriptArea_53", false);
ShowEnemyPlayerPosition("servant_grunt_3");
}

if(GetSwingDoorClosed("cellar_wood01_5") == false)
{
SetEntityActive("ScriptArea_54", true);
}
}

This should work; you had a few extra brackets and the organization was a bit off. If this doesn't solve your problem, please post the full hps file.
Or:

void monsterbreakdoor(string &in asTimer)
{
if(GetSwingDoorClosed("cellar_wood01_5") == true){

CreateParticleSystemAtEntity("", "ps_hit_wood.ps", "ScriptArea_53", false);
SetEntityActive("servant_grunt_3", true);
SetEntityActive("cellar_wood01_broken_2", true);
SetEntityActive("cellar_wood01_5", false);
PlaySoundAtEntity("", "break_wood.snt.snt", "ScriptArea_53", 0, false);
CreateParticleSystemAtEntity("", "ps_dust_impact.ps", "ScriptArea_53", false);
ShowEnemyPlayerPosition("servant_grunt_3");
}else if(GetSwingDoorClosed("cellar_wood01_5") == false){

SetEntityActive("ScriptArea_54", true);
}
}