Exemplo n.º 1
0
bool DDDFrigateSpecialActivate(Ship *ship)
{
    DDDFrigateSpec *spec = (DDDFrigateSpec *)ship->ShipSpecifics;

    switch (spec->DDDstate)
    {
        case DDDSTATE_ALLINSIDE:
            spec->DDDstate = DDDSTATE_LAUNCHTHEM;
            speechEvent(ship, COMM_DDF_LaunchDrones, 0);
            break;

        case DDDSTATE_ALLOUTSIDE:
            spec->DDDstate = DDDSTATE_DOCKTHEM;
            speechEvent(ship, COMM_DDF_RetractDrones, 0);
            break;
    }

    return TRUE;
}
Exemplo n.º 2
0
void ResearchShipInit(Ship *ship)
{
    ResearchShipSpec *spec = (ResearchShipSpec *)ship->ShipSpecifics;
    spec->seed = FALSE;
    spec->dockers = 0;              //this variable is questionable
    spec->done = FALSE;
    spec->master = FALSE;
    spec->prepshipforanother = 0;
    spec->rotate_state = 0;
    spec->theta = 0.0f;
    spec->busy_docking = FALSE;
    spec->have_removed_from_parade = FALSE;
    spec->masterptr = NULL;
    spec->dockwith = NULL;
    spec->dockordernumber = 0;
    ship->dockvars.reserveddocking = -1;            //initialize since doesn't seem to be initialized

    /////////////////
    //research station online message

    speechEvent(ship,STAT_Research_StationOnline,0);

}