diff --git a/code/defines/obj/toy.dm b/code/defines/obj/toy.dm index 51eeb81a11e..9011ac00c0d 100644 --- a/code/defines/obj/toy.dm +++ b/code/defines/obj/toy.dm @@ -110,6 +110,8 @@ src.add_fingerprint(user) if (src.bullets < 1) user.show_message("\red *click* *click*", 2) + for(var/mob/K in viewers(usr)) + K << 'empty.ogg' return playsound(user, 'Gunshot.ogg', 100, 1) src.bullets-- diff --git a/code/game/jobs/job/silicon.dm b/code/game/jobs/job/silicon.dm index f249ada8cbc..d91b4f89d92 100644 --- a/code/game/jobs/job/silicon.dm +++ b/code/game/jobs/job/silicon.dm @@ -5,6 +5,7 @@ faction = "Station" total_positions = 0 spawn_positions = 1 + supervisors = "your laws" equip(var/mob/living/carbon/human/H) diff --git a/code/game/objects/devices/flash.dm b/code/game/objects/devices/flash.dm index 0bcf5911300..8693df40169 100644 --- a/code/game/objects/devices/flash.dm +++ b/code/game/objects/devices/flash.dm @@ -34,6 +34,8 @@ if(shots_left <= 0) user.show_message("\red *click* *click*", 2) + for(var/mob/K in viewers(usr)) + K << 'empty.ogg' return playsound(src.loc, 'flash.ogg', 100, 1) diff --git a/code/game/objects/items/weapons/implants/implant.dm b/code/game/objects/items/weapons/implants/implant.dm index 7c258fc4eaf..340dcc3925d 100644 --- a/code/game/objects/items/weapons/implants/implant.dm +++ b/code/game/objects/items/weapons/implants/implant.dm @@ -335,4 +335,110 @@ the implant may become unstable and either pre-maturely inject the subject or si implanted(mob/source as mob) src.activation_emote = input("Choose activation emote:") in list("blink", "blink_r", "eyebrow", "chuckle", "twitch_s", "frown", "nod", "blush", "giggle", "grin", "groan", "shrug", "smile", "pale", "sniff", "whimper", "wink") source.mind.store_memory("Freedom implant can be activated by using the [src.activation_emote] emote, say *[src.activation_emote] to attempt to activate.", 0, 0) - source << "The implanted freedom implant can be activated by using the [src.activation_emote] emote, say *[src.activation_emote] to attempt to activate." \ No newline at end of file + source << "The implanted freedom implant can be activated by using the [src.activation_emote] emote, say *[src.activation_emote] to attempt to activate." + +/*// --------------------LASERS WORK FROM HERE, AUGMENTATIONS SHIZZLE---------------------- +/obj/item/weapon/implant/augmentation/thermalscanner + name = "Thermal Scanner Augmentation" + desc = "Makes you see humans through walls" + + get_data() + var/dat = {" +Implant Specifications:
+Name: NanoTrasen Thermal Implant
+Life: Ten years.
+Important Notes: Personnel injected with this device tend to be able to see lifeforms through life using thermal.
+
+Implant Details:
+Function: Contains a small pod of nanobots that manipulate the host's eye functions.
+Integrity: Implant will occasionally be degraded by the body's immune system and thus will occasionally malfunction."} + return dat + + + implanted(M as mob) + if(istype(M, /mob/living/carbon/human)) + vision_flags = SEE_MOBS + invisa_view = 2 + usr << "You suddenly start seeing body temperatures of whoever is around you." + else + usr << "This implant is not compatible!" + return + +/obj/item/weapon/implant/augmentation/mesonscanner + name = "Meson Scanner Augmentation" + desc = "Makes you see floor and wall layouts through walls." + + get_data() + var/dat = {" +Implant Specifications:
+Name: NanoTrasen Meson Implant
+Life: Ten years.
+Important Notes: Personnel injected with this device tend to be able to see floor and wall layouts through walls.
+
+Implant Details:
+Function: Contains a small pod of nanobots that manipulate the host's eye functions.
+Integrity: Implant will occasionally be degraded by the body's immune system and thus will occasionally malfunction."} + return dat + + + implanted(M as mob) + if(istype(M, /mob/living/carbon/human)) + vision_flags = SEE_TURFS + usr << "You suddenly start seeing body temperatures of whoever is around you." + else + usr << "This implant is not compatible!" + return + +/obj/item/weapon/implant/augmentation/medicalhud + name = "Medical HUD Augmentation" + desc = "Makes you see the medical condition of a person." + + get_data() + var/dat = {" +Implant Specifications:
+Name: NanoTrasen Med HUD Implant
+Life: Ten years.
+Important Notes: Personnel injected with this device tend to be able to see the medical condition of a person.
+
+Implant Details:
+Function: Contains a small pod of nanobots that manipulate the host's eye functions.
+Integrity: Implant will occasionally be degraded by the body's immune system and thus will occasionally malfunction."} + return dat + + + implanted(M as mob) + if(istype(M, /mob/living/carbon/human)) + + src.hud = new/obj/item/clothing/glasses/hud/health(src) + usr << "You suddenly start seeing body temperatures of whoever is around you." + else + usr << "This implant is not compatible!" + return + +/obj/item/weapon/implant/augmentation/securityhud + name = "Security HUD Augmentation" + desc = "Makes you see the Security standings of a person." + + get_data() + var/dat = {" +Implant Specifications:
+Name: NanoTrasen Sec HUD Implant
+Life: Ten years.
+Important Notes: Personnel injected with this device tend to be able to see the security standings of a person.
+
+Implant Details:
+Function: Contains a small pod of nanobots that manipulate the host's eye functions.
+Integrity: Implant will occasionally be degraded by the body's immune system and thus will occasionally malfunction."} + return dat + + + implanted(M as mob) + if(istype(M, /mob/living/carbon/human)) + var/obj/item/clothing/glasses/hud/security/hud = null + + src.hud = new/obj/item/clothing/glasses/hud/security(src) + + usr << "You suddenly start seeing body temperatures of whoever is around you." + else + usr << "This implant is not compatible!" + return*/ \ No newline at end of file diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm index e90fb1203f4..665012518a4 100644 --- a/code/modules/projectiles/gun.dm +++ b/code/modules/projectiles/gun.dm @@ -162,6 +162,8 @@ if(!special_check(user)) return if(!load_into_chamber()) user.visible_message("*click click*", "\red *click*") + for(var/mob/K in viewers(usr)) + K << 'empty.ogg' return if(!in_chamber) return @@ -250,6 +252,8 @@ told_cant_shoot = 0 else usr.visible_message("*click click*", "\red *click*") + for(var/mob/K in viewers(usr)) + K << 'empty.ogg' var/dir_to_fire = sd_get_approx_dir(M,T) if(dir_to_fire != M.dir) M.dir = dir_to_fire diff --git a/empty.ogg b/empty.ogg new file mode 100644 index 00000000000..12ef9e5fce8 Binary files /dev/null and b/empty.ogg differ diff --git a/icons/obj/power.dmi b/icons/obj/power.dmi index 3460395fefd..c3a33cf5210 100644 Binary files a/icons/obj/power.dmi and b/icons/obj/power.dmi differ