Files
Aurora.3/code/__defines/_macros.dm
Ron ceab73c63e Makes some machines upgradeable (#3311)
Adds the ability to upgrade the following:
- Sleepers
- The ore processor
- All cooking appliances (Minus the microwave)
- Tesla Coil

Also makes components not spawn in machines until they are needed (When they are being upgraded) to reduce the objects generated. Adds some new macro's and converts some istypes to use them. And moves stock parts into their own file.
2017-08-28 01:51:37 -05:00

81 lines
2.8 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)