Section III.3: Combat Automation Events

EV_CLOAK_OTHER(Integer contact)**

EV_DECLOAK_OTHER(Integer contact)**

EV_LOCKED_ON(Integer locker_contact)*

EV_LOCK_ACHIEVED()*

EV_LOCK_BROKEN()*

EV_ENEMY_LOCK_BROKEN(Integer locker_contact)*

EV_TRACTOR_ON(Integer tractor_contact)*

EV_TRACTOR_ON_OTHER(Integer source_contact, Integer target_contact)**

EV_TRACTOR_BROKEN()*

EV_ENEMY_TRACTOR_BROKEN(Integer tractor_contact)*

EV_TRACTOR_BROKEN_OTHER(Integer source_contact, Integer target_contact)**

EV_GUNS_CHARGED()

EV_TORPS_LOADED()

EV_TORPS_CHARGED()

EV_ATTACKED(Integer attacker_contact)*

EV_ATTACKED_OTHER(Integer attacker_contact, Integer defender_contact)**

EV_DISABLED()

EV_DISABLED_OTHER(Integer disabled_contact)**

EV_DESTROYED()

EV_DESTROYED_OTHER(Integer destroyed_contact)**

EV_TAKE_DAMAGE(Integer damage, Integer type)

EV_EXPLOSION(Integer damage, Integer range)*

Notes:

* Triggered only on objects with the EV_DRIVEN flag.

** Event is a "broadcast event". See the Docking, Undocking, etc. page for an explanation.

In any event where an argument is a contact number, if the contact number is not known, a -1 is passed.

EV_CLOAK_OTHER, and EV_DECLOAK_OTHER are broadcast events that only pass one contact argument, as they have no target. When an object decloaks, its identity will never be known right away (until it is sensed), so the argument to EV_DECLOAK_OTHER will always be -1.

EV_TAKE_DAMAGE is triggered when an object takes damage. The types are 0 - gun, 1 - torp, 2 - explosion.