Frictional Games Forum (read-only)

Full Version: Script help. Again.
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2
Man, so painful. When you make a 1000 lines long script and then get unexpected end of file. 30 minutes later, it then changed the error message to Expected ) or ,

I still don't know. I'm not entirely sure where to put it. But according to the game, it's in this.

Code:
void SetLightVisibleOutside(bool abLit)
{
    if(abLit == false)
    {
        SetLampLit("candle_floor_4", abLit, false);
        SetLampLit("torch_static01_1", abLit, false);
        
        FadeLightTo("PointLight_10", 0.0f, 0.0f, 0.0f, 0.0f, 4.5f, 0.0f);
        FadeLightTo("SpotLight_3", 0.0f, 0.0f, 0.0f, 0.0f, 8.0f, 0.0f);
        FadeLightTo("PointLight_3", 0.0f, 0.0f, 0.0f, 0.0f, 3.0f, 0.0f);
    }
    else
    {
        SetLampLit("candle_floor_4", true, false);
        
        FadeLightTo("PointLight_10", 0.28f, 0.13f, 0.0f, 0.0f, 4.5f, 0.0f);
        FadeLightTo("SpotLight_3", 0.3f, 0.2f, 0.0f, 1.0f, 8.0f, 0.0f);
        
        if(GetLocalVarInt("TorchLit")==1)
        {
            SetLampLit("torch_static01_1", true, false);
        }
    }
}

//If this torch was never lit, we don't want to be lit unintentionally
void LitVisibleTorch(string &in asEntity, string &in asType)
{
    SetLocalVarInt("TorchLit", 1);
}

//This is the brute walking towards the ritual prisoner room
void DoBruteStep()
{
    AddLocalVarInt("Step", 1);
    
    PlaySoundAtEntity("bwalk", "metal_walk.snt", "AreaStep_"+GetLocalVarInt("Step")+", 0.0f, false);
    
    if(GetLocalVarInt("Step)==12) ResumeEventTimer("TimerRitualVision", 0.1f);
                                  return;
    
    AddTimer("loopstep", RandFloat(1.0f, 2.0f), "TimerLoopBruteStep"); //So it feels more random
}

void TimerLoopBruteStep(string &in asTimer)
{
    DoBruteStep();
}

//Resumes an event timer after a step is over
void ResumeEventTimer(string &in asTimer, float afTime)
{
    AddTimer(asTimer, afTime, asTimer);
}

Give me a hand, please?
Missing a quote by line 39:
Code:
if(GetLocalVarInt("Step)==12)
Oh, you gotta be kidding me. Thanks Mudbill.
Mudbill saves another mortal... again Tongue
Haha xD
Might I recommend testing periodically to avoid an issue? Much easier to debug 20 lines of code then 400
Well, before I got the unexpected end thing, my script was like 700 lines long and it worked then. Then I added this cutscene and this happened. Besides, it's still not entirely working, there's something else that is wrong. And I'm fully certain that the issue is somewhere here.

I changed it a little bit

Code:
//During ritual cutscene, the lights outside needs to be unlit (if lit)
void SetLightVisibleOutside(bool abLit)
{
    if(abLit == false)
    {
        SetLampLit("candle_floor_4", abLit, false);
        SetLampLit("torch_static01_1", abLit, false);
        
        FadeLightTo("PointLight_10", 0.0f, 0.0f, 0.0f, 0.0f, 4.5f, 0.0f);
        FadeLightTo("SpotLight_3", 0.0f, 0.0f, 0.0f, 0.0f, 8.0f, 0.0f);
        FadeLightTo("PointLight_3", 0.0f, 0.0f, 0.0f, 0.0f, 3.0f, 0.0f);
    }
    else
    {
        SetLampLit("candle_floor_4", true, false);
        
        FadeLightTo("PointLight_10", 0.28f, 0.13f, 0.0f, 0.0f, 4.5f, 0.0f);
        FadeLightTo("SpotLight_3", 0.3f, 0.2f, 0.0f, 1.0f, 8.0f, 0.0f);
        
        if(GetLocalVarInt("TorchLit")==1)
        {
            SetLampLit("torch_static01_1", true, false);
        }
    }
}

//If this torch was never lit, we don't want to be lit unintentionally
void LitVisibleTorch(string &in asEntity, string &in asType)
{
    SetLocalVarInt("TorchLit", 1);
}

//This is the brute walking towards the ritual prisoner room
void DoBruteStep()
{
    AddLocalVarInt("Step", 1);
    
    PlaySoundAtEntity("bwalk", "metal_walk.snt", "AreaStep_"+GetLocalVarInt("Step")+", 0.0f, false);
    
    if(GetLocalVarInt("Step")==12)
    {    
        ResumeEventTimer("TimerRitualVision", 0.1f);
        return;
    }
    
    AddTimer("loopstep", RandFloat(1.0f, 2.0f), "TimerLoopBruteStep"); //So it feels more random
}

void TimerLoopBruteStep(string &in asTimer)
{
    DoBruteStep();
}

//Resumes an event timer after a step is over
void ResumeEventTimer(string &in asTimer, float afTime)
{
    AddTimer(asTimer, afTime, asTimer);
}
(03-08-2014, 11:07 AM)Neelke Wrote: [ -> ]Well, before I got the unexpected end thing, my script was like 700 lines long and it worked then. Then I added this cutscene and this happened. Besides, it's still not entirely working, there's something else that is wrong. And I'm fully certain that the issue is somewhere here.

I changed it a little bit

Code:
//During ritual cutscene, the lights outside needs to be unlit (if lit)
void SetLightVisibleOutside(bool abLit)
{
    if(abLit == false)
    {
        SetLampLit("candle_floor_4", abLit, false);
        SetLampLit("torch_static01_1", abLit, false);
        
        FadeLightTo("PointLight_10", 0.0f, 0.0f, 0.0f, 0.0f, 4.5f, 0.0f);
        FadeLightTo("SpotLight_3", 0.0f, 0.0f, 0.0f, 0.0f, 8.0f, 0.0f);
        FadeLightTo("PointLight_3", 0.0f, 0.0f, 0.0f, 0.0f, 3.0f, 0.0f);
    }
    else
    {
        SetLampLit("candle_floor_4", true, false);
        
        FadeLightTo("PointLight_10", 0.28f, 0.13f, 0.0f, 0.0f, 4.5f, 0.0f);
        FadeLightTo("SpotLight_3", 0.3f, 0.2f, 0.0f, 1.0f, 8.0f, 0.0f);
        
        if(GetLocalVarInt("TorchLit")==1)
        {
            SetLampLit("torch_static01_1", true, false);
        }
    }
}

//If this torch was never lit, we don't want to be lit unintentionally
void LitVisibleTorch(string &in asEntity, string &in asType)
{
    SetLocalVarInt("TorchLit", 1);
}

//This is the brute walking towards the ritual prisoner room
void DoBruteStep()
{
    AddLocalVarInt("Step", 1);
    
    PlaySoundAtEntity("bwalk", "metal_walk.snt", "AreaStep_"+GetLocalVarInt("Step")[b]+"[/b], 0.0f, false);
    
    if(GetLocalVarInt("Step")==12)
    {    
        ResumeEventTimer("TimerRitualVision", 0.1f);
        return;
    }
    
    AddTimer("loopstep", RandFloat(1.0f, 2.0f), "TimerLoopBruteStep"); //So it feels more random
}

void TimerLoopBruteStep(string &in asTimer)
{
    DoBruteStep();
}

//Resumes an event timer after a step is over
void ResumeEventTimer(string &in asTimer, float afTime)
{
    AddTimer(asTimer, afTime, asTimer);
}

Pretty sure that it shouldn't be there. Delete it. (Marked it with bold)
(03-08-2014, 11:26 AM)Neelke Wrote: [ -> ]http://www.youtube.com/watch?v=usfiAsWR4qU

"No problem random citizen, JustAnotherPlayer SomethingRidiculous to the rescue!"
Pages: 1 2