Adds the hunter-seeker cyborg preset (#5033)

At the request of kyres1 this prs adds the preset for a cyborg to be used in the future synth events, sprites were made by kyres himself. Also, gives the syndicate cyborg's smg a new sprite.
This commit is contained in:
Alberyk
2018-08-04 17:22:41 -03:00
committed by Werner
parent f1c7c4e091
commit a2786edf7e
8 changed files with 149 additions and 8 deletions

View File

@@ -47,8 +47,13 @@
throw_range = 5
matter = list(DEFAULT_WALL_MATERIAL = 75)
attack_verb = list("stabbed")
var/random_icon = TRUE
/obj/item/weapon/screwdriver/Initialize()
. = ..()
if(!random_icon)
return
/obj/item/weapon/screwdriver/New()
switch(pick("red","blue","purple","brown","green","cyan","yellow"))
if ("red")
icon_state = "screwdriver2"
@@ -74,7 +79,6 @@
if (prob(75))
src.pixel_y = rand(0, 16)
..()
/obj/item/weapon/screwdriver/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob, var/target_zone)
if(!istype(M) || user.a_intent == "help")

View File

@@ -15,4 +15,64 @@
/mob/living/silicon/robot/combat/ert/init()
..()
if(!jetpack)
jetpack = new /obj/item/weapon/tank/jetpack/carbondioxide/synthetic(src)
jetpack = new /obj/item/weapon/tank/jetpack/carbondioxide/synthetic(src)
/mob/living/silicon/robot/combat/scrambled //should not stand linked to the station or the ai
scrambledcodes = 1
lawupdate = 0
/mob/living/silicon/robot/hunter_seeker //added for events, at the request of the lore people
maxHealth = 300
health = 300
scrambledcodes = 1
lawupdate = 0
cell_type = /obj/item/weapon/cell/super
overclocked = 1
speed = -3
req_access = list(access_syndicate)
idcard_type = /obj/item/weapon/card/id/syndicate
key_type = /obj/item/device/encryptionkey/syndicate
spawn_module = /obj/item/weapon/robot_module/hunter_seeker
no_pda = TRUE
light_color = LIGHT_COLOR_EMERGENCY
light_power = 15
light_range = 15
integrated_light_power = 15
light_wedge = 10
/mob/living/silicon/robot/hunter_seeker/init()
..()
if(!jetpack)
jetpack = new /obj/item/weapon/tank/jetpack/carbondioxide/synthetic(src)
var/obj/item/robot_parts/robot_component/surge/S = new(src)
for(var/V in components)
var/datum/robot_component/C = components[V]
if(!C.installed && istype(S, C.external_type))
C.wrapped = S
C.install()
S.loc = null
/mob/living/silicon/robot/hunter_seeker/updateicon() //because this was the only way I found out how to make their eyes and etc works
cut_overlays()
if(stat == 0)
add_overlay("eyes-[icon_state]")
if(opened)
var/panelprefix = custom_sprite ? src.ckey : "ov"
if(wiresexposed)
add_overlay("[panelprefix]-openpanel +w")
else if(cell)
add_overlay("[panelprefix]-openpanel +c")
else
add_overlay("[panelprefix]-openpanel -c")
if(module_active && istype(module_active,/obj/item/borg/combat/shield))
add_overlay("[icon_state]-shield")
if(modtype == "Combat")
if(module_active && istype(module_active,/obj/item/borg/combat/mobility))
icon_state = "[icon_state]-roll"
else
icon_state = module_sprites[icontype]

View File

@@ -71,7 +71,7 @@
var/obj/item/device/mmi/mmi = null
var/obj/item/device/pda/ai/rbPDA = null
var/no_pda = FALSE
var/obj/item/weapon/stock_parts/matter_bin/storage = null
var/opened = 0
@@ -234,6 +234,8 @@
// setup the PDA and its name
/mob/living/silicon/robot/proc/setup_PDA()
if (no_pda)
return
if (!rbPDA)
rbPDA = new/obj/item/device/pda/ai(src)
rbPDA.set_name_and_job(custom_name,"[modtype] [braintype]")

View File

@@ -363,3 +363,38 @@
user << "You fail to pick up \the [A] with \the [src]"
return
/obj/item/weapon/gun/energy/mountedcannon
name = "mounted ballistic cannon"
desc = "A cyborg mounted ballistic cannon."
icon = 'icons/obj/robot_items.dmi'
icon_state = "cannon"
item_state = "cannon"
fire_sound = 'sound/effects/Explosion1.ogg'
charge_meter = 0
max_shots = 10
charge_cost = 300
projectile_type = /obj/item/projectile/bullet/gyro
self_recharge = 1
use_external_power = 1
recharge_time = 5
needspin = FALSE
/obj/item/weapon/crowbar/robotic
icon = 'icons/obj/robot_items.dmi'
/obj/item/weapon/wrench/robotic
icon = 'icons/obj/robot_items.dmi'
/obj/item/weapon/screwdriver/robotic
icon = 'icons/obj/robot_items.dmi'
random_icon = FALSE
/obj/item/device/multitool/robotic
icon = 'icons/obj/robot_items.dmi'
/obj/item/weapon/wirecutters/robotic
icon = 'icons/obj/robot_items.dmi'
/obj/item/weapon/weldingtool/robotic
icon = 'icons/obj/robot_items.dmi'

View File

@@ -975,3 +975,39 @@ var/global/list/robot_modules = list(
src.emag = new /obj/item/weapon/gun/energy/plasmacutter/mounted(src)
src.emag.name = "Mounted Plasma Cutter"
..()
/obj/item/weapon/robot_module/hunter_seeker
name = "hunter seeker robot module"
languages = list(
LANGUAGE_SOL_COMMON = 1,
LANGUAGE_TRADEBAND = 1,
LANGUAGE_UNATHI = 1,
LANGUAGE_SIIK_MAAS = 1,
LANGUAGE_SKRELLIAN = 1,
LANGUAGE_GUTTER = 1,
LANGUAGE_ROOTSONG = 1,
LANGUAGE_TERMINATOR = 1
)
sprites = list(
"Hunter Seeker" = "hunter_seeker"
)
/obj/item/weapon/robot_module/hunter_seeker/New(var/mob/living/silicon/robot/R)
..()
loc = R
src.modules += new /obj/item/device/flash(src)
src.modules += new /obj/item/weapon/pickaxe/borgdrill(src)
src.modules += new /obj/item/borg/sight/thermal(src)
src.modules += new /obj/item/weapon/gun/energy/net/mounted(src)
src.modules += new /obj/item/weapon/gun/energy/mountedcannon(src)
src.modules += new /obj/item/weapon/melee/energy/glaive(src)
src.modules += new /obj/item/weapon/crowbar/robotic(src)
src.modules += new /obj/item/weapon/wrench/robotic(src)
src.modules += new /obj/item/weapon/screwdriver/robotic(src)
src.modules += new /obj/item/device/multitool/robotic(src)
src.modules += new /obj/item/weapon/wirecutters/robotic(src)
src.modules += new /obj/item/weapon/weldingtool/robotic(src)
supported_upgrades = list(/obj/item/robot_parts/robot_component/jetpack)
return

View File

@@ -17,6 +17,7 @@
req_access = list(access_syndicate)
faction = "syndicate"
braintype = "Cyborg"
no_pda = TRUE
/mob/living/silicon/robot/syndicate/init()
..()
@@ -60,11 +61,13 @@
//syndicate borg gear
/obj/item/weapon/gun/energy/mountedsmg
name = "mounted SMG"
desc = "A cyborg mounted sub machine gun, it can print more bullets over time."
icon_state = "lawgiver" //placeholder for now
item_state = "lawgiver"
name = "mounted submachine gun"
desc = "A cyborg mounted submachine gun, it can print more bullets over time."
icon = 'icons/obj/robot_items.dmi'
icon_state = "smg"
item_state = "smg"
fire_sound = 'sound/weapons/Gunshot_light.ogg'
charge_meter = 0
max_shots = 20
charge_cost = 100
projectile_type = /obj/item/projectile/bullet/pistol
@@ -72,6 +75,7 @@
use_external_power = 1
recharge_time = 5
sel_mode = 1
needspin = FALSE
firemodes = list(
list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=list(0)),
list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-1,-1), dispersion=list(0, 15, 15)),