Files
Aurora.3/code/__defines/_macros.dm
Lohikar e28c29a551 Port Integrated Electronics from Polaris (#3371)
Ports Polaris' integrated electronics system, whichallows for Roboticists & Electricians/Engineers to build custom devices and machines for a variety of purposes.
2017-09-12 21:41:39 -05:00

83 lines
2.9 KiB
Plaintext

#define Clamp(x, y, z) (x <= y ? y : (x >= z ? z : x))
#define CLAMP01(x) (Clamp(x, 0, 1))
#define span(class, text) ("<span class='[class]'>[text]</span>")
#define isAI(A) istype(A, /mob/living/silicon/ai)
#define isDrone(A) istype(A, /mob/living/silicon/robot/drone)
#define isalien(A) istype(A, /mob/living/carbon/alien)
#define isanimal(A) istype(A, /mob/living/simple_animal)
#define isairlock(A) istype(A, /obj/machinery/door/airlock)
#define isbrain(A) istype(A, /mob/living/carbon/brain)
#define iscarbon(A) istype(A, /mob/living/carbon)
#define iscorgi(A) istype(A, /mob/living/simple_animal/corgi)
#define isEye(A) istype(A, /mob/eye)
#define ishuman(A) istype(A, /mob/living/carbon/human)
#define isliving(A) istype(A, /mob/living)
#define ismouse(A) istype(A, /mob/living/simple_animal/mouse)
#define isnewplayer(A) istype(A, /mob/new_player)
#define isobj(A) istype(A, /obj)
#define isobserver(A) istype(A, /mob/dead/observer)
#define isorgan(A) istype(A, /obj/item/organ/external)
#define ispAI(A) istype(A, /mob/living/silicon/pai)
#define isrobot(A) istype(A, /mob/living/silicon/robot)
#define issilicon(A) istype(A, /mob/living/silicon)
#define isslime(A) istype(A, /mob/living/carbon/slime)
#define isscrewdriver(A) istype(A, /obj/item/weapon/screwdriver)
#define iswrench(A) istype(A, /obj/item/weapon/wrench)
#define iswelder(A) istype(A, /obj/item/weapon/weldingtool)
#define iscoil(A) istype(A, /obj/item/stack/cable_coil)
#define iswirecutter(A) istype(A, /obj/item/weapon/wirecutters)
#define ismultitool(A) istype(A, /obj/item/device/multitool)
#define iscrowbar(A) istype(A, /obj/item/weapon/crowbar)
#define iscapacitor(A) istype(A, /obj/item/weapon/stock_parts/capacitor)
#define ismicrolaser(A) istype(A, /obj/item/weapon/stock_parts/micro_laser)
#define ismatterbin(A) istype(A, /obj/item/weapon/stock_parts/matter_bin)
#define isscanner(A) istype(A, /obj/item/weapon/stock_parts/scanning_module)
#define ismanipulator(A) istype(A, /obj/item/weapon/stock_parts/manipulator)
#define to_chat(target, message) target << message
#define MAP_IMAGE_PATH "nano/images/"
#define map_image_file_name(z_level) "Aurora-[z_level].png"
#define to_world(message) world << message
#define sound_to(target, sound) target << sound
#define to_file(file_entry, file_content) file_entry << file_content
#define show_browser(target, browser_content, browser_name) target << browse(browser_content, browser_name)
#define send_rsc(target, rsc_content, rsc_name) target << browse_rsc(rsc_content, rsc_name)
#define CanInteract(user, state) (CanUseTopic(user, state) == STATUS_INTERACTIVE)
#define isopenturf(target) istype(target, /turf/simulated/open)
#define isweakref(target) istype(target, /datum/weakref)
#define isdatum(target) istype(target, /datum)