mirror of
https://github.com/Citadel-Station-13/Citadel-Station-13-RP.git
synced 2026-08-23 07:26:50 +01:00
<!-- Write **BELOW** The Headers and **ABOVE** The comments else it may not be viewable. --> <!-- You can view Contributing.MD for a detailed description of the pull request process. --> ## About The Pull Request I finally have the pleasure of killing decl by giving it a new name and updated handling. Also abstract_types now have universal support! Based on: Baystation12/Baystation12/pull/32114 Baystation12/Baystation12/pull/32687 ## Changelog 🆑 code: /decl/ is now /singleton/ code: abstract_type is now on the /datum/ level /🆑 <!-- Both 🆑's are required for the changelog to work! You can put your name to the right of the first 🆑 if you want to overwrite your GitHub username as author ingame. --> <!-- You can use multiple of the same prefix (they're only used for the icon ingame) and delete the unneeded ones. Despite some of the tags, changelogs should generally represent how a player might be affected by the changes rather than a summary of the PR's contents. -->
39 lines
1.3 KiB
Plaintext
39 lines
1.3 KiB
Plaintext
// Observer Pattern Implementation: Shuttle Moved
|
|
// Registration type: /datum/shuttle/autodock
|
|
//
|
|
// Raised when: A shuttle has moved to a new landmark.
|
|
//
|
|
// Arguments that the called proc should expect:
|
|
// /datum/shuttle/shuttle: the shuttle moving
|
|
// /obj/effect/shuttle_landmark/old_location: the old location's shuttle landmark
|
|
// /obj/effect/shuttle_landmark/new_location: the new location's shuttle landmark
|
|
|
|
// Observer Pattern Implementation: Shuttle Pre Move
|
|
// Registration type: /datum/shuttle/autodock
|
|
//
|
|
// Raised when: A shuttle is about to move to a new landmark.
|
|
//
|
|
// Arguments that the called proc should expect:
|
|
// /datum/shuttle/shuttle: the shuttle moving
|
|
// /obj/effect/shuttle_landmark/old_location: the old location's shuttle landmark
|
|
// /obj/effect/shuttle_landmark/new_location: the new location's shuttle landmark
|
|
|
|
GLOBAL_DATUM_INIT(shuttle_moved_event, /singleton/observ/shuttle_moved, new)
|
|
|
|
/singleton/observ/shuttle_moved
|
|
name = "Shuttle Moved"
|
|
expected_type = /datum/shuttle
|
|
|
|
GLOBAL_DATUM_INIT(shuttle_pre_move_event, /singleton/observ/shuttle_pre_move, new)
|
|
|
|
/singleton/observ/shuttle_pre_move
|
|
name = "Shuttle Pre Move"
|
|
expected_type = /datum/shuttle
|
|
|
|
/*****************
|
|
* Shuttle Moved/Pre Move Handling *
|
|
*****************/
|
|
|
|
// Located in modules/shuttle/shuttle.dm
|
|
// Proc: /datum/shuttle/proc/attempt_move()
|