Section III.2: Docking, Undocking, Landing, Launching, and Orbiting

EV_DOCKED(dbref ship)

EV_DOCKED_WITH(dbref dock)

EV_DOCKED_OTHER(Integer ship_contact, Integer dock_contact)

EV_UNDOCKED(dbref ship)

EV_UNDOCKED_FROM(dbref dock)

EV_UNDOCKED_OTHER(Integer ship_contact, Integer dock_contact)

EV_LANDED(dbref ship)

EV_LANDED_ON(dbref planet)

EV_LANDED_OTHER(Integer ship_contact, Integer planet_contact)

EV_LAUNCHED(dbref ship)

EV_LAUNCHED_FROM(dbref planet)

EV_LAUNCHED_OTHER(Integer ship_contact, Integer planet_contact)

EV_ORBITING(dbref ship)

EV_ORBITED(dbref planet)

EV_ORBITING_OTHER(Integer ship_contact, Integer planet_contact)

Notes:

EV_DOCKED and EV_LANDED are triggered on a ship object when it docks or lands respectively. These events are passed the dbref of the dock or planet's DB object. These events should send a message to the bridge saying what happened, and call whatever softcode is necessary to make the dock or land take effect.

EV_DOCKED_WITH and EV_LANDED_ON are triggered on the ship/base or planet when the ship docks or lands, respectively. They are passed the dbref of the docker or lander. They should inform the base or planet what has happened, and also trigger soft code of some sort to maintain a "ships in dock" registry of some sort, if the space coder desires.

The OTHER events are "broadcast" events. Broadcast events are only triggered for EV_DRIVEN objects. EV_DOCKED_OTHER is triggered when a contact docks, or a contact is docked with. It is passed two contact numbers, the first for the source/docker, and the second for the target. -1 will replace the source or target if they are not on sensors. The other broadcast events operate similarly.

The remaining events should be pretty much self-explanatory and follow in the same pattern as those mentioned above.