mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-11 10:43:20 +00:00
Merge pull request #3981 from Anewbe/gravetender
Adds the gravekeeper lost borg module
This commit is contained in:
@@ -99,6 +99,17 @@
|
||||
/obj/item/weapon/grown
|
||||
)
|
||||
|
||||
/obj/item/weapon/gripper/gravekeeper //Used for handling grave things, flowers, etc.
|
||||
name = ""
|
||||
icon_state = "gripper"
|
||||
desc = "A specialized grasping tool used in the preparation and maintenance of graves."
|
||||
|
||||
can_hold = list(
|
||||
/obj/item/seeds,
|
||||
/obj/item/weapon/grown,
|
||||
/obj/item/weapon/material/gravemarker
|
||||
)
|
||||
|
||||
/obj/item/weapon/gripper/no_use/organ
|
||||
name = "organ gripper"
|
||||
icon_state = "gripper-flesh"
|
||||
|
||||
78
code/modules/mob/living/silicon/robot/robot_modules/event.dm
Normal file
78
code/modules/mob/living/silicon/robot/robot_modules/event.dm
Normal file
@@ -0,0 +1,78 @@
|
||||
/* Other, unaffiliated modules */
|
||||
|
||||
// The module that borgs on the surface have. Generally has a lot of useful tools in exchange for questionable loyalty to the crew.
|
||||
/obj/item/weapon/robot_module/robot/lost
|
||||
name = "lost robot module"
|
||||
hide_on_manifest = 1
|
||||
sprites = list(
|
||||
"Drone" = "drone-lost"
|
||||
)
|
||||
|
||||
/obj/item/weapon/robot_module/robot/lost/New(var/mob/living/silicon/robot/R)
|
||||
..()
|
||||
// Sec
|
||||
src.modules += new /obj/item/weapon/melee/baton/shocker/robot(src)
|
||||
src.modules += new /obj/item/weapon/handcuffs/cyborg(src)
|
||||
src.modules += new /obj/item/borg/combat/shield(src)
|
||||
|
||||
// Med
|
||||
src.modules += new /obj/item/borg/sight/hud/med(src)
|
||||
src.modules += new /obj/item/device/healthanalyzer(src)
|
||||
src.modules += new /obj/item/weapon/reagent_containers/borghypo/lost(src)
|
||||
|
||||
// Engi
|
||||
src.modules += new /obj/item/weapon/weldingtool/electric/mounted(src)
|
||||
src.modules += new /obj/item/weapon/screwdriver/cyborg(src)
|
||||
src.modules += new /obj/item/weapon/wrench/cyborg(src)
|
||||
src.modules += new /obj/item/weapon/wirecutters/cyborg(src)
|
||||
src.modules += new /obj/item/device/multitool(src)
|
||||
|
||||
// Sci
|
||||
src.modules += new /obj/item/device/robotanalyzer(src)
|
||||
|
||||
// Potato
|
||||
src.emag = new /obj/item/weapon/gun/energy/retro/mounted(src)
|
||||
|
||||
var/datum/matter_synth/wire = new /datum/matter_synth/wire()
|
||||
synths += wire
|
||||
|
||||
var/obj/item/stack/cable_coil/cyborg/C = new /obj/item/stack/cable_coil/cyborg(src)
|
||||
C.synths = list(wire)
|
||||
src.modules += C
|
||||
|
||||
/obj/item/weapon/robot_module/robot/gravekeeper
|
||||
name = "gravekeeper robot module"
|
||||
hide_on_manifest = 1
|
||||
sprites = list(
|
||||
"Drone" = "drone-gravekeeper",
|
||||
"Sleek" = "sleek-gravekeeper"
|
||||
)
|
||||
|
||||
/obj/item/weapon/robot_module/robot/gravekeeper/New(var/mob/living/silicon/robot/R)
|
||||
..()
|
||||
// For fending off animals and looters
|
||||
src.modules += new /obj/item/weapon/melee/baton/shocker/robot(src)
|
||||
src.modules += new /obj/item/borg/combat/shield(src)
|
||||
|
||||
// For repairing gravemarkers
|
||||
src.modules += new /obj/item/weapon/weldingtool/electric/mounted(src)
|
||||
src.modules += new /obj/item/weapon/screwdriver/cyborg(src)
|
||||
src.modules += new /obj/item/weapon/wrench/cyborg(src)
|
||||
|
||||
// For growing flowers
|
||||
src.modules += new /obj/item/weapon/material/minihoe(src)
|
||||
src.modules += new /obj/item/weapon/material/hatchet(src)
|
||||
src.modules += new /obj/item/device/analyzer/plant_analyzer(src)
|
||||
src.modules += new /obj/item/weapon/storage/bag/plants(src)
|
||||
src.modules += new /obj/item/weapon/robot_harvester(src)
|
||||
|
||||
// For digging and beautifying graves
|
||||
src.modules += new /obj/item/weapon/shovel(src)
|
||||
src.modules += new /obj/item/weapon/gripper/gravekeeper(src)
|
||||
|
||||
// For really persistent looters
|
||||
src.emag = new /obj/item/weapon/gun/energy/retro/mounted(src)
|
||||
|
||||
var/datum/matter_synth/wood = new /datum/matter_synth/wood(25000)
|
||||
synths += wood
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,45 @@
|
||||
/* Syndicate modules */
|
||||
|
||||
/obj/item/weapon/robot_module/robot/syndicate
|
||||
name = "illegal robot module"
|
||||
hide_on_manifest = 1
|
||||
languages = list(
|
||||
LANGUAGE_SOL_COMMON = 1,
|
||||
LANGUAGE_TRADEBAND = 1,
|
||||
LANGUAGE_UNATHI = 0,
|
||||
LANGUAGE_SIIK = 0,
|
||||
LANGUAGE_SKRELLIAN = 0,
|
||||
LANGUAGE_ROOTLOCAL = 0,
|
||||
LANGUAGE_GUTTER = 1,
|
||||
LANGUAGE_SCHECHI = 0,
|
||||
LANGUAGE_EAL = 1,
|
||||
LANGUAGE_SIGN = 0
|
||||
)
|
||||
sprites = list(
|
||||
"Cerberus" = "syndie_bloodhound",
|
||||
"Cerberus - Treaded" = "syndie_treadhound",
|
||||
"Ares" = "squats",
|
||||
"Telemachus" = "toiletbotantag",
|
||||
"WTOperator" = "hosborg",
|
||||
"XI-GUS" = "spidersyndi",
|
||||
"XI-ALP" = "syndi-heavy"
|
||||
)
|
||||
var/id
|
||||
|
||||
/obj/item/weapon/robot_module/robot/syndicate/New(var/mob/living/silicon/robot/R)
|
||||
..()
|
||||
loc = R
|
||||
src.modules += new /obj/item/weapon/melee/energy/sword(src)
|
||||
src.modules += new /obj/item/weapon/gun/energy/pulse_rifle/destroyer(src)
|
||||
src.modules += new /obj/item/weapon/card/emag(src)
|
||||
var/jetpack = new/obj/item/weapon/tank/jetpack/carbondioxide(src)
|
||||
src.modules += jetpack
|
||||
R.internals = jetpack
|
||||
|
||||
id = R.idcard
|
||||
src.modules += id
|
||||
|
||||
/obj/item/weapon/robot_module/robot/syndicate/Destroy()
|
||||
src.modules -= id
|
||||
id = null
|
||||
return ..()
|
||||
@@ -0,0 +1,25 @@
|
||||
/mob/living/silicon/robot/gravekeeper
|
||||
lawupdate = 0
|
||||
scrambledcodes = 1
|
||||
icon_state = "drone-lost"
|
||||
modtype = "Gravekeeper"
|
||||
lawchannel = "State"
|
||||
braintype = "Drone"
|
||||
idcard_type = /obj/item/weapon/card/id
|
||||
|
||||
/mob/living/silicon/robot/gravekeeper/init()
|
||||
aiCamera = new/obj/item/device/camera/siliconcam/robot_camera(src)
|
||||
|
||||
mmi = new /obj/item/device/mmi/digital/robot(src) // Explicitly a drone.
|
||||
module = new /obj/item/weapon/robot_module/robot/gravekeeper(src)
|
||||
overlays.Cut()
|
||||
init_id()
|
||||
|
||||
updatename("Gravekeeper")
|
||||
|
||||
if(!cell)
|
||||
cell = new /obj/item/weapon/cell/high(src) // 15k cell, as recharging stations are a lot more rare on the Surface.
|
||||
|
||||
laws = new /datum/ai_laws/gravekeeper()
|
||||
|
||||
playsound(loc, 'sound/mecha/nominalsyndi.ogg', 75, 0)
|
||||
Reference in New Issue
Block a user