some stuff from all around

This commit is contained in:
Enric Gabriel
2020-06-22 16:48:34 -03:00
parent 69bbddc43e
commit 178cddcf9d
7 changed files with 172 additions and 0 deletions
+13
View File
@@ -0,0 +1,13 @@
/datum/quirk/hypnotic_stupor //straight from skyrat
name = "Hypnotic Stupor"
desc = "Your prone to episodes of extreme stupor that leaves you extremely suggestible."
value = 0
human_only = TRUE
gain_text = null // Handled by trauma.
lose_text = null
medical_record_text = "Patient has an untreatable condition with their brain, wiring them to be extreamly suggestible..."
/datum/quirk/hypnotic_stupor/add()
var/datum/brain_trauma/severe/hypnotic_stupor/T = new()
var/mob/living/carbon/human/H = quirk_holder
H.gain_trauma(T, TRAUMA_RESILIENCE_ABSOLUTE)
@@ -0,0 +1,81 @@
//Borrowed from Skyrat, this is not sandstorm original content
//cheems, the true cargo pet
//note: will probably add hat and fluff functionality later
//note 2: will probably get a better sprite later
//note 3: ignore note 2 the sprite is actually good now
/mob/living/simple_animal/pet/dog/cheems
name = "\proper Cheems"
desc = "Cargo's overfed and slightly greasy disposal bin."
icon = 'sandcode/icons/mob/doges.dmi'
icon_state = "cheems"
icon_dead = "cheems_dead"
icon_living = "cheems"
speak = list("Borf!", "Boof!", "Bork!")
butcher_results = list(/obj/item/reagent_containers/food/snacks/burger/cheese = 1, /obj/item/reagent_containers/food/snacks/meat/slab = 2, /obj/item/trash/syndi_cakes = 1)
faction = list("dog", "doge")
animal_species = /mob/living/simple_animal/pet/dog
gold_core_spawnable = FRIENDLY_SPAWN
/mob/living/simple_animal/pet/dog/cheems/Move(atom/newloc, direct)
. = ..()
if(.)
for(var/obj/item/reagent_containers/food/snacks/burger/burbger in view(1, src))
visible_message("<span class='danger'><b>\The [src]</b> consumes the [burbger]!</span>")
qdel(burbger)
revive(full_heal = 1)
/mob/living/simple_animal/pet/dog/cheems/attacked_by(obj/item/I, mob/living/user)
. = ..()
if(.)
if(istype(I, /obj/item/reagent_containers/food/snacks/burger))
qdel(I)
if(stat == DEAD)
visible_message("<b>\The [src]</b> stands right back up after nibbling the [I]!")
else
visible_message("<b>\The [src]</b> swallows the [I] whole!")
revive(full_heal = 1)
//cheemgularity
/* disabled for now because error: maximum number of internal arrays exceeded (65535)
/obj/singularity/proc/consume(atom/A)
var/gain = A.singularity_act(current_size, src)
src.energy += gain
if(istype(A, /obj/machinery/power/supermatter_crystal) && !consumedSupermatter)
desc = "[initial(desc)] It glows fiercely with inner fire."
name = "supermatter-charged [initial(name)]"
consumedSupermatter = 1
set_light(10)
if(istype(A, /mob/living/simple_animal/pet/dog/cheems))
new /obj/singularity/cheemgularity(get_turf(src))
qdel(src)
/obj/singularity/cheemgularity
name = "cheemgularity"
desc = "Praise cheem."
icon = 'sandcode/icons/obj/singularity.dmi'
icon_state = "cheemgulo_s1"
/obj/singularity/cheemgularity/expand(force_size)
..()
switch(force_size)
if(STAGE_ONE to STAGE_TWO)
icon = initial(icon)
icon_state = "cheemgulo_s1"
if(STAGE_TWO to STAGE_THREE)
icon = 'sandcode/icons/effects/96x96.dmi'
icon_state = "cheemgulo_s3"
if(STAGE_THREE to STAGE_FOUR)
icon = 'sandcode/icons/effects/160x160.dmi'
icon_state = "cheemgulo_s5"
if(STAGE_FOUR to STAGE_FIVE)
icon = 'sandcode/icons/effects/224x224.dmi'
icon_state = "cheemgulo_s7"
if(STAGE_FIVE to STAGE_SIX)
icon = 'sandcode/icons/effects/288x288.dmi'
icon_state = "cheemgulo_s9"
if(STAGE_SIX)
icon = 'sandcode/icons/effects/352x352.dmi'
icon_state = "cheemgulo_s11"
*/
@@ -31,3 +31,11 @@
build_path = /obj/item/circuitboard/machine/pacman/mclunky
category = list("initial", "Electronics")
departmental_flags = DEPARTMENTAL_FLAG_SERVICE | DEPARTMENTAL_FLAG_ENGINEERING
/datum/design/board/spaceship_navigation_beacon
name = "Machine Design (Bluespace Navigation Gigabeacon)"
desc = "The circuit board for a Bluespace Navigation Gigabeacon."
id = "spaceship_navigation_beacon"
build_path = /obj/item/circuitboard/machine/spaceship_navigation_beacon
category = list ("Teleportation Machinery")
departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING | DEPARTMENTAL_FLAG_SCIENCE
@@ -0,0 +1,69 @@
/obj/item/circuitboard/machine/spaceship_navigation_beacon
name = "Bluespace Navigation Gigabeacon (Machine Board)"
build_path = /obj/machinery/spaceship_navigation_beacon
req_components = list()
/obj/machinery/spaceship_navigation_beacon
name = "Bluespace Navigation Gigabeacon"
desc = "A device that creates a bluespace anchor that allow ships jump near to it."
icon = 'sandcode/icons/obj/machines/NavBeacon.dmi'
icon_state = "beacon-item"
use_power = IDLE_POWER_USE
idle_power_usage = 0
density = TRUE
circuit = /obj/item/circuitboard/machine/spaceship_navigation_beacon
light_power = 2
var/locked = FALSE //Locked beacons don't allow to jump to it.
/obj/machinery/spaceship_navigation_beacon/Initialize()
. = ..()
SSshuttle.beacons |= src
obj/machinery/spaceship_navigation_beacon/emp_act()
locked = TRUE
/obj/machinery/spaceship_navigation_beacon/Destroy()
SSshuttle.beacons -= src
return ..()
// update the icon_state
/obj/machinery/spaceship_navigation_beacon/update_icon()
if(powered())
icon_state = "beacon-active"
set_light(1)
if(panel_open)
icon_state = "beacon-open"
set_light(0)
else
icon_state = "beacon-inactive"
set_light(0)
/obj/machinery/spaceship_navigation_beacon/power_change()
. = ..()
update_icon()
/obj/machinery/spaceship_navigation_beacon/multitool_act(mob/living/user, obj/item/multitool/I)
if(panel_open)
var/new_name = "Beacon_[input("Enter the custom name for this beacon", "It be Beacon ..your input..") as text]"
if(new_name && Adjacent(user))
name = new_name
to_chat(user, "<span class='notice'>You change beacon name to [name].</span>")
else
locked = !locked
to_chat(user, "<span class='notice'>You [locked ? "" : "un"]lock [src].</span>")
return TRUE
/obj/machinery/spaceship_navigation_beacon/examine()
. = ..()
. += "<span class='[locked ? "warning" : "nicegreen"]'>Status: [locked ? "LOCKED" : "Stable"] </span>"
/obj/machinery/spaceship_navigation_beacon/attackby(obj/item/W, mob/user, params)
if(default_deconstruction_screwdriver(user, "beacon-open", "beacon-active", W))
return
if(default_deconstruction_crowbar(W))
return
return ..()