Subversion-Projekte sthq.gbs

Revision

Revision 334 | Revision 824 | Zur aktuellen Revision | Blame | Vergleich mit vorheriger | Letzte Änderung | Log anzeigen | RSS feed

//===========================
// Spawns a federation / romulan enemy, shows/hides groups
//===========================

void AIOnGroup ( float groupID )
{
        entity e;
        e = spawn ( "Actor" , "setgroupid" , groupID );
        wait ( .05 );

        e.sendeventtogroup ( "ai_on" );
        e.suicide ();
        e.remove();
}


void AIOffGroup ( float groupID )
{
        entity e;
        e = spawn ( "Actor" , "setgroupid" , groupID );
        wait ( .05 );

        e.sendeventtogroup ( "ai_off" );
        e.remove();
}

float showBeaminEffects = 1;
void AIShowGroup ( float groupID, string enemy )
{
        entity e;
        e = spawn ( "Actor" , "setgroupid" , groupID );
        wait ( .05 );

        e.sendeventtogroup ( "show" );
        e.sendeventtogroup ( "solid" );
        e.sendeventtogroup ( "fadein" , ".25" );

        if ( showBeaminEffects )
        {
                e.sendeventtogroup ( "displayeffect" , "TransportIn",enemy );
        }

        e.sendeventtogroup ( "playsound" , "sound/environment/transporter/transport_"+enemy+".wav" , "3" , ".5" , "512" );
        wait( .25 );
        e.sendeventtogroup ( "ai_on" );
        e.remove();
}

void AIHideGroup ( float groupID )
{
        entity e;
        e = spawn ( "Actor" , "setgroupid" , groupID );
        wait ( .05 );

        e.sendeventtogroup ( "hide" );
        e.sendeventtogroup ( "notsolid" );
        e.sendeventtogroup ( "forcealpha" , "1" );
        e.sendeventtogroup ( "alpha" , "0" );
        e.sendeventtogroup ( "ai_off" );
        e.remove();
}

void CommandToGroup ( float groupID , string event , string arg1 , string arg2)
{
        entity e;
        e = spawn ( "Actor" , "setgroupid" , groupID );
        wait ( .05 );

        e.sendeventtogroup ( event , arg1 , arg2 );
        e.remove();
}