Again i need ur help with one of my scripts..
I know this script is shit but its my first script that i have written completly by myself..
Its working as it should but all brushes are moving alone and if u block one, everything fucks up..
Video: http://www.youtube.com/watch?v=ugaCyEf4IJA
Code: Select all
main()
{
    level.eledoorDown1 = true;
    level.eledoorMoving1 = false;
Â
    level.eledoorDown2 = true;
    level.eledoorMoving2 = false;
Â
    level.eledoorDown3 = true;
    level.eledoorMoving3 = false;
Â
    level.eledoorDown4 = true;
    level.eledoorMoving4 = false;
   Â
    level.eledoorDown5 = true;
    level.eledoorMoving5 = false;
Â
    level.eledoorDown6 = true;
    level.eledoorMoving6 = false;
   Â
    level.eledoorDown7 = true;
    level.eledoorMoving7 = false;
   Â
    level.eledoorDown8 = true;
    level.eledoorMoving8 = false;
   Â
    level.eleDown1 = true;
    level.eleMoving1 = false;
Â
    thread eledoor_start1();
    thread eledoor_start2();
    thread eledoor_start3();
    thread eledoor_start4();
    thread eledoor_start5();
    thread eledoor_start6();
    thread eledoor_start7();
    thread eledoor_start8();
    thread ele_start1();
}
///////////////////////////////////////////////////////////////////
eledoor_start1()
{
    eledoor1 = getentarray ("eledoortrigger1","targetname");
    if ( isdefined(eledoor1) )
    for (i = 0; i < eledoor1.size; i++)
    eledoor1[i] thread eledoor_think1();
}
Â
eledoor_think1()
{
    while (1)
    {
        self waittill ("trigger");
        if (!level.eledoorMoving1)
        thread eledoor_move1();
    }
}
Â
eledoor_move1()
{
    eledoormodel1 = getent ("eledoor1", "targetname");
    level.eledoorMoving1 = true;
    speed = 0.8;
    height =-45;
    if (level.eledoorDown1)
    {
        self.origin += (0,0,-10000);
        //eledoormodel1 playsound ("door");
        eledoormodel1 movex (height, speed);
        eledoormodel1 waittill ("movedone");
        level.eledoorDown1 = false;
        wait 3;
        //eledoormodel1 playsound ("door");
        eledoormodel1 movex (height - (height * 2), speed);
        eledoormodel1 waittill ("movedone");
        wait 21.6;
        //eledoormodel1 playsound ("door");
        eledoormodel1 movex (height, speed);
        eledoormodel1 waittill ("movedone");
        wait 3;
        //eledoormodel1 playsound ("door");
        eledoormodel1 movex (height - (height * 2), speed);
        eledoormodel1 waittill ("movedone");
        level.eledoorDown1 = true;
        self.origin += (0,0,10000);
    }
    else
    {
        //eledoormodel1 playsound ("door");
        eledoormodel1 movex (height - (height * 2), speed);
        eledoormodel1 waittill ("movedone");
        level.eledoorDown1 = true;
    }
    level.eledoorMoving1 = false;
}
///////////////////////////////////////////////////////////////////
eledoor_start2()
{
    eledoor2 = getentarray ("eledoortrigger1","targetname");
    if ( isdefined(eledoor2) )
    for (i = 0; i < eledoor2.size; i++)
    eledoor2[i] thread eledoor_think2();
}
Â
eledoor_think2()
{
    while (1)
    {
        self waittill ("trigger");
        if (!level.eledoorMoving2)
        thread eledoor_move2();
    }
}
Â
eledoor_move2()
{
    eledoormodel2 = getent ("eledoor2", "targetname");
    level.eledoorMoving2 = true;
    speed = 0.8;
    height =45;
    if (level.eledoorDown2)
    {
        //eledoormodel2 playsound ("door");
        eledoormodel2 movex (height, speed);
        eledoormodel2 waittill ("movedone");
        level.eledoorDown2 = false;
        wait 3;
        //eledoormodel2 playsound ("door");
        eledoormodel2 movex (height - (height * 2), speed);
        eledoormodel2 waittill ("movedone");
        wait 21.6;
        //eledoormodel2 playsound ("door");
        eledoormodel2 movex (height, speed);
        eledoormodel2 waittill ("movedone");
        wait 3;
        //eledoormodel2 playsound ("door");
        eledoormodel2 movex (height - (height * 2), speed);
        eledoormodel2 waittill ("movedone");
        level.eledoorDown2 = true;
    }
    else
    {
        //eledoormodel2 playsound ("door");
        eledoormodel2 movex (height - (height * 2), speed);
        eledoormodel2 waittill ("movedone");
        level.eledoorDown2 = true;
    }
    level.eledoorMoving2 = false;
}
///////////////////////////////////////////////////////////////////
eledoor_start3()
{
    eledoor3 = getentarray ("eledoortrigger1","targetname");
    if ( isdefined(eledoor3) )
    for (i = 0; i < eledoor3.size; i++)
    eledoor3[i] thread eledoor_think3();
}
Â
eledoor_think3()
{
    while (1)
    {
        self waittill ("trigger");
        if (!level.eledoorMoving3)
        thread eledoor_move3();
    }
}
Â
eledoor_move3()
{
    eledoormodel3 = getent ("eledoor3", "targetname");
    level.eledoorMoving3 = true;
    speed = 0.8;
    height =-45;
    if (level.eledoorDown3)
    {
        wait 12.7;
        //eledoormodel3 playsound ("door");
        eledoormodel3 movex (height, speed);
        eledoormodel3 waittill ("movedone");
        level.eledoorDown3 = false;
        wait 3;
        //eledoormodel3 playsound ("door");
        eledoormodel3 movex (height - (height * 2), speed);
        eledoormodel3 waittill ("movedone");
        level.eledoorDown3 = true;
    }
    else
    {
        //eledoormodel3 playsound ("door");
        eledoormodel3 movex (height - (height * 2), speed);
        eledoormodel3 waittill ("movedone");
        level.eledoorDown3 = true;
    }
    level.eledoorMoving3 = false;
}
///////////////////////////////////////////////////////////////////
eledoor_start4()
{
    eledoor4 = getentarray ("eledoortrigger1","targetname");
    if ( isdefined(eledoor4) )
    for (i = 0; i < eledoor4.size; i++)
    eledoor4[i] thread eledoor_think4();
}
Â
eledoor_think4()
{
    while (1)
    {
        self waittill ("trigger");
        if (!level.eledoorMoving4)
        thread eledoor_move4();
    }
}
Â
eledoor_move4()
{
    eledoormodel4 = getent ("eledoor4", "targetname");
    level.eledoorMoving4 = true;
    speed = 0.8;
    height =45;
    if (level.eledoorDown4)
    {
        wait 12.7;
        //eledoormodel4 playsound ("door");
        eledoormodel4 movex (height, speed);
        eledoormodel4 waittill ("movedone");
        level.eledoorDown4 = false;
        wait 3;
        //eledoormodel4 playsound ("door");
        eledoormodel4 movex (height - (height * 2), speed);
        eledoormodel4 waittill ("movedone");
        level.eledoorDown4 = true;
    }
    else
    {
        //eledoormodel4 playsound ("door");
        eledoormodel4 movex (height - (height * 2), speed);
        eledoormodel4 waittill ("movedone");
        level.eledoorDown4 = true;
    }
    level.eledoorMoving4 = false;
}
///////////////////////////////////////////////////////////////////
eledoor_start5()
{
    eledoor5 = getentarray ("eledoortrigger1","targetname");
    if ( isdefined(eledoor5) )
    for (i = 0; i < eledoor5.size; i++)
    eledoor5[i] thread eledoor_think5();
}
Â
eledoor_think5()
{
    while (1)
    {
        self waittill ("trigger");
        if (!level.eledoorMoving5)
        thread eledoor_move5();
    }
}
Â
eledoor_move5()
{
    eledoormodel5 = getent ("eledoor5", "targetname");
    level.eledoorMoving5 = true;
    speed = 0.8;
    height =-23;
    if (level.eledoorDown5)
    {
        //eledoormodel5 playsound ("door");
        eledoormodel5 movex (height, speed);
        eledoormodel5 waittill ("movedone");
        level.eledoorDown5 = false;
        wait 3;
        //eledoormodel5 playsound ("door");
        eledoormodel5 movex (height - (height * 2), speed);
        eledoormodel5 waittill ("movedone");
        eledoormodel5 movez (436,8);
        eledoormodel5 waittill ("movedone");
        //eledoormodel5 playsound ("door");
        eledoormodel5 movex (height, speed);
        eledoormodel5 waittill ("movedone");
        wait 3;
        //eledoormodel5 playsound ("door");
        eledoormodel5 movex (height - (height * 2), speed);
        eledoormodel5 waittill ("movedone");
        wait 0.8;
        eledoormodel5 movez (-436,8);
        eledoormodel5 waittill ("movedone");
        //eledoormodel5 playsound ("door");
        eledoormodel5 movex (height, speed);
        eledoormodel5 waittill ("movedone");
        wait 3;
        //eledoormodel5 playsound ("door");
        eledoormodel5 movex (height - (height * 2), speed);
        eledoormodel5 waittill ("movedone");
        level.eledoorDown5 = true;
    }
    else
    {
        //eledoormodel5 playsound ("door");
        eledoormodel5 movex (height - (height * 2), speed);
        eledoormodel5 waittill ("movedone");
        level.eledoorDown5 = true;
    }
    level.eledoorMoving5 = false;
}
///////////////////////////////////////////////////////////////////
eledoor_start6()
{
    eledoor6 = getentarray ("eledoortrigger1","targetname");
    if ( isdefined(eledoor6) )
    for (i = 0; i < eledoor6.size; i++)
    eledoor6[i] thread eledoor_think6();
}
Â
eledoor_think6()
{
    while (1)
    {
        self waittill ("trigger");
        if (!level.eledoorMoving6)
        thread eledoor_move6();
    }
}
Â
eledoor_move6()
{
    eledoormodel6 = getent ("eledoor6", "targetname");
    level.eledoorMoving6 = true;
    speed = 0.8;
    height =-46;
    if (level.eledoorDown6)
    {
        //eledoormodel6 playsound ("door");
        eledoormodel6 movex (height, speed);
        eledoormodel6 waittill ("movedone");
        level.eledoorDown6 = false;
        wait 3;
        //eledoormodel6 playsound ("door");
        eledoormodel6 movex (height - (height * 2), speed);
        eledoormodel6 waittill ("movedone");
        eledoormodel6 movez (436,8);
        eledoormodel6 waittill ("movedone");
        //eledoormodel6 playsound ("door");
        eledoormodel6 movex (height, speed);
        eledoormodel6 waittill ("movedone");
        wait 3;
        //eledoormodel6 playsound ("door");
        eledoormodel6 movex (height - (height * 2), speed);
        eledoormodel6 waittill ("movedone");
        wait 0.8;
        eledoormodel6 movez (-436,8);
        eledoormodel6 waittill ("movedone");
        //eledoormodel6 playsound ("door");
        eledoormodel6 movex (height, speed);
        eledoormodel6 waittill ("movedone");
        wait 3;
        //eledoormodel6 playsound ("door");
        eledoormodel6 movex (height - (height * 2), speed);
        eledoormodel6 waittill ("movedone");
        level.eledoorDown6 = true;
    }
    else
    {
        //eledoormodel6 playsound ("door");
        eledoormodel6 movex (height - (height * 2), speed);
        eledoormodel6 waittill ("movedone");
        level.eledoorDown6 = true;
    }
    level.eledoorMoving6 = false;
}
///////////////////////////////////////////////////////////////////
eledoor_start7()
{
    eledoor7 = getentarray ("eledoortrigger1","targetname");
    if ( isdefined(eledoor7) )
    for (i = 0; i < eledoor7.size; i++)
    eledoor7[i] thread eledoor_think7();
}
Â
eledoor_think7()
{
    while (1)
    {
        self waittill ("trigger");
        if (!level.eledoorMoving7)
        thread eledoor_move7();
    }
}
Â
eledoor_move7()
{
    eledoormodel7 = getent ("eledoor7", "targetname");
    level.eledoorMoving7 = true;
    speed = 0.8;
    height =46;
    if (level.eledoorDown7)
    {
        //eledoormodel7 playsound ("door");
        eledoormodel7 movex (height, speed);
        eledoormodel7 waittill ("movedone");
        level.eledoorDown7 = false;
        wait 3;
        //eledoormodel7 playsound ("door");
        eledoormodel7 movex (height - (height * 2), speed);
        eledoormodel7 waittill ("movedone");
        eledoormodel7 movez (436,8);
        eledoormodel7 waittill ("movedone");
        //eledoormodel7 playsound ("door");
        eledoormodel7 movex (height, speed);
        eledoormodel7 waittill ("movedone");
        wait 3;
        //eledoormodel7 playsound ("door");
        eledoormodel7 movex (height - (height * 2), speed);
        eledoormodel7 waittill ("movedone");
        wait 0.8;
        eledoormodel7 movez (-436,8);
        eledoormodel7 waittill ("movedone");
        //eledoormodel7 playsound ("door");
        eledoormodel7 movex (height, speed);
        eledoormodel7 waittill ("movedone");
        wait 3;
        //eledoormodel7 playsound ("door");
        eledoormodel7 movex (height - (height * 2), speed);
        eledoormodel7 waittill ("movedone");
        level.eledoorDown7 = true;
    }
    else
    {
        //eledoormodel7 playsound ("door");
        eledoormodel7 movex (height - (height * 2), speed);
        eledoormodel7 waittill ("movedone");
        level.eledoorDown7 = true;
    }
    level.eledoorMoving7 = false;
}
///////////////////////////////////////////////////////////////////
eledoor_start8()
{
    eledoor8 = getentarray ("eledoortrigger1","targetname");
    if ( isdefined(eledoor8) )
    for (i = 0; i < eledoor8.size; i++)
    eledoor8[i] thread eledoor_think8();
}
Â
eledoor_think8()
{
    while (1)
    {
        self waittill ("trigger");
        if (!level.eledoorMoving8)
        thread eledoor_move8();
    }
}
Â
eledoor_move8()
{
    eledoormodel8 = getent ("eledoor8", "targetname");
    level.eledoorMoving8 = true;
    speed = 0.8;
    height =23;
    if (level.eledoorDown8)
    {
        //eledoormodel8 playsound ("door");
        eledoormodel8 movex (height, speed);
        eledoormodel8 waittill ("movedone");
        level.eledoorDown8 = false;
        wait 3;
        //eledoormodel8 playsound ("door");
        eledoormodel8 movex (height - (height * 2), speed);
        eledoormodel8 waittill ("movedone");
        eledoormodel8 movez (436,8);
        eledoormodel8 waittill ("movedone");
        //eledoormodel8 playsound ("door");
        eledoormodel8 movex (height, speed);
        eledoormodel8 waittill ("movedone");
        wait 3;
        //eledoormodel8 playsound ("door");
        eledoormodel8 movex (height - (height * 2), speed);
        eledoormodel8 waittill ("movedone");
        wait 0.8;
        eledoormodel8 movez (-436,8);
        eledoormodel8 waittill ("movedone");
        //eledoormodel8 playsound ("door");
        eledoormodel8 movex (height, speed);
        eledoormodel8 waittill ("movedone");
        wait 3;
        //eledoormodel8 playsound ("door");
        eledoormodel8 movex (height - (height * 2), speed);
        eledoormodel8 waittill ("movedone");
        level.eledoorDown8 = true;
    }
    else
    {
        //eledoormodel8 playsound ("door");
        eledoormodel8 movex (height - (height * 2), speed);
        eledoormodel8 waittill ("movedone");
        level.eledoorDown8 = true;
    }
    level.eledoorMoving8 = false;
}
///////////////////////////////////////////////////////////////////
ele_start1()
{
    ele1 = getentarray ("eledoortrigger1","targetname");
    if ( isdefined(ele1) )
    for (i = 0; i < ele1.size; i++)
    ele1[i] thread ele_think1();
}
Â
ele_think1()
{
    while (1)
    {
        self waittill ("trigger");
        if (!level.eleMoving1)
        thread ele_move1();
    }
}
Â
ele_move1()
{
    elemodel1 = getent ("ele1", "targetname");
    level.eleMoving1 = true;
    speed = 8;
    height =436;
    if (level.eleDown1)
    {
        wait 4.7;
        //elemodel1 playloopsound ("elevator");
        elemodel1 movez (height, speed);
        elemodel1 waittill ("movedone");
        level.eleDown1 = false;
        //elemodel1 stoploopsound();
        wait 5.5;
        //elemodel1 playloopsound ("elevator");
        elemodel1 movez (height - (height * 2), speed);
        elemodel1 waittill ("movedone");
        level.eleDown1 = true;
        //elemodel1 stoploopsound();
    }
    else
    {
        //elemodel1 playloopsound ("elevator");
        elemodel1 movez (height - (height * 2), speed);
        elemodel1 waittill ("movedone");
        level.eleDown1 = true;
        //elemodel1 stoploopsound();
    }
    level.eleMoving1 = false;
}
///////////////////////////////////////////////////////////////////
Â
I want that the elevator checks if all doors are closed and only then starts to move..
Little testmap download:
http://unpure-gaming.de/~unpure/downloa ... evator.zip
Sorry for my bad english and sorry for this bad script..
I hope someone can help me here..
Thank you!