Just add this, it seems to be all you need to do, the rest of the code is already done. Gendi. snippet provided by William McSchmeiter. ** in space.c ** Add to do_launch At start SHIP_DATA *onship if ( ( onship = ship_from_hanger( ship->lastdoc ) ) != NULL && ! onship->bayopen ) { send_to_char("&RThe hanger is closed!\n\r",ch); return; } void do_openbay( CHAR_DATA *ch, char *argument ) { SHIP_DATA *ship; int chance; if ( (ship = ship_from_cockpit(ch->in_room->vnum)) == NULL ) { send_to_char("&RYou must be in the cockpit of a ship to do that!\n\r",ch); return; } if ( ship->class > SHIP_PLATFORM ) { send_to_char("&RThis isn't a spacecraft!\n\r",ch); return; } if ( ship->class == SHIP_PLATFORM ) { send_to_char("&RPlatforms don't have Bay Doors!\n\r",ch); return; } if ( (ship = ship_from_pilotseat(ch->in_room->vnum)) == NULL ) { send_to_char("&RYou aren't in the pilots chair!\n\r",ch); return; } /* I have removed this because I don't think it is right to use but put it back in if you want if ( autofly(ship) ) { send_to_char("&RYou'll have to turn off the ships autopilot first....\n\r",ch); return; } */ chance = IS_NPC(ch) ? ch->top_level : (int) (ch->pcdata->learned[gsn_shipsystems]) ; if ( number_percent( ) > chance ) { send_to_char("&RYour notsure which switch to flip.\n\r",ch); learn_from_failure( ch, gsn_shipsystems ); return; } act( AT_PLAIN, "$n flips a switch on the control panel.", ch, NULL, argument , TO_ROOM ); if (ship->bayopen) { ship->bayopen = FALSE; echo_to_cockpit( AT_YELLOW , ship, "Closing bay doors."); } else { ship->bayopen = TRUE; echo_to_cockpit( AT_YELLOW , ship, "Opening Bay Doors."); } learn_from_success( ch, gsn_shipsystems ); }