mob fixes

This commit is contained in:
Poojawa
2017-02-08 00:27:04 -06:00
parent 68bad60a1c
commit 883ebad540
13 changed files with 179 additions and 62 deletions
+5
View File
@@ -45,6 +45,11 @@
laws_sanity_check()
laws.replace_random_law(law,groups)
/mob/living/silicon/proc/remove_law(number)
throw_alert("newlaw", /obj/screen/alert/newlaw)
laws_sanity_check()
laws.remove_law(number)
/mob/living/silicon/proc/clear_ion_laws()
throw_alert("newlaw", /obj/screen/alert/newlaw)
laws_sanity_check()
@@ -220,27 +220,47 @@
/obj/item/weapon/robot_module/standard
name = "Standard"
basic_modules = list(/obj/item/device/assembly/flash/cyborg, /obj/item/weapon/reagent_containers/borghypo/epi, /obj/item/device/healthanalyzer, \
/obj/item/weapon/weldingtool/largetank/cyborg, /obj/item/weapon/wrench/cyborg, /obj/item/weapon/crowbar/cyborg, \
/obj/item/stack/sheet/metal/cyborg, /obj/item/weapon/extinguisher, /obj/item/weapon/pickaxe, \
/obj/item/device/t_scanner/adv_mining_scanner, /obj/item/weapon/restraints/handcuffs/cable/zipties/cyborg, \
/obj/item/weapon/soap/nanotrasen, /obj/item/borg/cyborghug)
basic_modules = list(
/obj/item/device/assembly/flash/cyborg,
/obj/item/weapon/reagent_containers/borghypo/epi,
/obj/item/weapon/crowbar/cyborg,
/obj/item/weapon/extinguisher,
/obj/item/weapon/soap/nanotrasen,
/obj/item/borg/cyborghug)
emag_modules = list(/obj/item/weapon/melee/energy/sword/cyborg)
ratvar_modules = list(/obj/item/clockwork/slab/cyborg, /obj/item/clockwork/ratvarian_spear/cyborg, /obj/item/clockwork/clockwork_proselytizer/cyborg)
ratvar_modules = list(
/obj/item/clockwork/slab/cyborg,
/obj/item/clockwork/ratvarian_spear/cyborg,
/obj/item/clockwork/clockwork_proselytizer/cyborg)
moduleselect_icon = "standard"
feedback_key = "cyborg_standard"
hat_offset = -3
/obj/item/weapon/robot_module/medical
name = "Medical"
basic_modules = list(/obj/item/device/assembly/flash/cyborg, /obj/item/device/healthanalyzer, /obj/item/weapon/reagent_containers/borghypo, \
/obj/item/weapon/reagent_containers/glass/beaker/large, /obj/item/weapon/reagent_containers/dropper, \
/obj/item/weapon/reagent_containers/syringe, /obj/item/weapon/surgical_drapes, /obj/item/weapon/retractor, \
/obj/item/weapon/hemostat, /obj/item/weapon/cautery, /obj/item/weapon/surgicaldrill, /obj/item/weapon/scalpel, \
/obj/item/weapon/circular_saw, /obj/item/weapon/extinguisher/mini, /obj/item/roller/robo, /obj/item/borg/cyborghug/medical, \
/obj/item/stack/medical/gauze/cyborg, /obj/item/borg/lollipop)
basic_modules = list(
/obj/item/device/assembly/flash/cyborg,
/obj/item/device/healthanalyzer,
/obj/item/weapon/reagent_containers/borghypo,
/obj/item/weapon/reagent_containers/glass/beaker/large,
/obj/item/weapon/reagent_containers/dropper,
/obj/item/weapon/reagent_containers/syringe,
/obj/item/weapon/surgical_drapes,
/obj/item/weapon/retractor,
/obj/item/weapon/hemostat,
/obj/item/weapon/cautery,
/obj/item/weapon/surgicaldrill,
/obj/item/weapon/scalpel,
/obj/item/weapon/circular_saw,
/obj/item/weapon/extinguisher/mini,
/obj/item/roller/robo,
/obj/item/borg/cyborghug/medical,
/obj/item/stack/medical/gauze/cyborg,
/obj/item/borg/lollipop)
emag_modules = list(/obj/item/weapon/reagent_containers/borghypo/hacked)
ratvar_modules = list(/obj/item/clockwork/slab/cyborg/medical, /obj/item/clockwork/ratvarian_spear/cyborg)
ratvar_modules = list(
/obj/item/clockwork/slab/cyborg/medical,
/obj/item/clockwork/ratvarian_spear/cyborg)
cyborg_base_icon = "medical"
moduleselect_icon = "medical"
feedback_key = "cyborg_medical"
@@ -249,14 +269,32 @@
/obj/item/weapon/robot_module/engineering
name = "Engineering"
basic_modules = list(/obj/item/device/assembly/flash/cyborg, /obj/item/borg/sight/meson, /obj/item/weapon/rcd/borg, /obj/item/weapon/pipe_dispenser, \
/obj/item/weapon/extinguisher, /obj/item/weapon/weldingtool/largetank/cyborg, /obj/item/weapon/screwdriver/cyborg, \
/obj/item/weapon/wrench/cyborg, /obj/item/weapon/crowbar/cyborg, /obj/item/weapon/wirecutters/cyborg, \
/obj/item/device/multitool/cyborg, /obj/item/device/t_scanner, /obj/item/device/analyzer, \
/obj/item/areaeditor/blueprints/cyborg, /obj/item/stack/sheet/metal/cyborg, /obj/item/stack/sheet/glass/cyborg, \
/obj/item/stack/sheet/rglass/cyborg, /obj/item/stack/rods/cyborg, /obj/item/stack/tile/plasteel/cyborg, /obj/item/stack/cable_coil/cyborg)
basic_modules = list(
/obj/item/device/assembly/flash/cyborg,
/obj/item/borg/sight/meson,
/obj/item/weapon/rcd/borg,
/obj/item/weapon/pipe_dispenser,
/obj/item/weapon/extinguisher,
/obj/item/weapon/weldingtool/largetank/cyborg,
/obj/item/weapon/screwdriver/cyborg,
/obj/item/weapon/wrench/cyborg,
/obj/item/weapon/crowbar/cyborg,
/obj/item/weapon/wirecutters/cyborg,
/obj/item/device/multitool/cyborg,
/obj/item/device/t_scanner,
/obj/item/device/analyzer,
/obj/item/device/assembly/signaler/cyborg,
/obj/item/areaeditor/blueprints/cyborg,
/obj/item/stack/sheet/metal/cyborg,
/obj/item/stack/sheet/glass/cyborg,
/obj/item/stack/sheet/rglass/cyborg,
/obj/item/stack/rods/cyborg,
/obj/item/stack/tile/plasteel/cyborg,
/obj/item/stack/cable_coil/cyborg)
emag_modules = list(/obj/item/borg/stun)
ratvar_modules = list(/obj/item/clockwork/slab/cyborg/engineer, /obj/item/clockwork/clockwork_proselytizer/cyborg)
ratvar_modules = list(
/obj/item/clockwork/slab/cyborg/engineer,
/obj/item/clockwork/clockwork_proselytizer/cyborg)
cyborg_base_icon = "engineer"
moduleselect_icon = "engineer"
feedback_key = "cyborg_engineering"
@@ -265,10 +303,15 @@
/obj/item/weapon/robot_module/security
name = "Security"
basic_modules = list(/obj/item/device/assembly/flash/cyborg, /obj/item/weapon/restraints/handcuffs/cable/zipties/cyborg, /obj/item/weapon/melee/baton/loaded, \
/obj/item/weapon/gun/energy/disabler/cyborg, /obj/item/clothing/mask/gas/sechailer/cyborg)
basic_modules = list(
/obj/item/device/assembly/flash/cyborg,
/obj/item/weapon/restraints/handcuffs/cable/zipties/cyborg,
/obj/item/weapon/melee/baton/loaded,
/obj/item/weapon/gun/energy/disabler/cyborg,
/obj/item/clothing/mask/gas/sechailer/cyborg)
emag_modules = list(/obj/item/weapon/gun/energy/laser/cyborg)
ratvar_modules = list(/obj/item/clockwork/slab/cyborg/security, /obj/item/clockwork/ratvarian_spear/cyborg)
ratvar_modules = list(/obj/item/clockwork/slab/cyborg/security,
/obj/item/clockwork/ratvarian_spear/cyborg)
cyborg_base_icon = "sec"
moduleselect_icon = "security"
feedback_key = "cyborg_security"
@@ -293,10 +336,18 @@
/obj/item/weapon/robot_module/peacekeeper
name = "Peacekeeper"
basic_modules = list(/obj/item/device/assembly/flash/cyborg, /obj/item/weapon/cookiesynth, /obj/item/device/harmalarm, /obj/item/weapon/reagent_containers/borghypo/peace, \
/obj/item/weapon/holosign_creator/cyborg, /obj/item/borg/cyborghug/peacekeeper, /obj/item/weapon/extinguisher)
basic_modules = list(
/obj/item/device/assembly/flash/cyborg,
/obj/item/weapon/cookiesynth,
/obj/item/device/harmalarm,
/obj/item/weapon/reagent_containers/borghypo/peace,
/obj/item/weapon/holosign_creator/cyborg,
/obj/item/borg/cyborghug/peacekeeper,
/obj/item/weapon/extinguisher)
emag_modules = list(/obj/item/weapon/reagent_containers/borghypo/peace/hacked)
ratvar_modules = list(/obj/item/clockwork/slab/cyborg/peacekeeper, /obj/item/clockwork/ratvarian_spear/cyborg)
ratvar_modules = list(
/obj/item/clockwork/slab/cyborg/peacekeeper,
/obj/item/clockwork/ratvarian_spear/cyborg)
cyborg_base_icon = "peace"
moduleselect_icon = "standard"
feedback_key = "cyborg_peacekeeper"
@@ -310,10 +361,18 @@
/obj/item/weapon/robot_module/janitor
name = "Janitor"
basic_modules = list(/obj/item/device/assembly/flash/cyborg, /obj/item/weapon/soap/nanotrasen, /obj/item/weapon/storage/bag/trash/cyborg, /obj/item/weapon/mop/cyborg, \
/obj/item/device/lightreplacer/cyborg, /obj/item/weapon/holosign_creator, /obj/item/weapon/reagent_containers/spray/cyborg_drying)
basic_modules = list(
/obj/item/device/assembly/flash/cyborg,
/obj/item/weapon/soap/nanotrasen,
/obj/item/weapon/storage/bag/trash/cyborg,
/obj/item/weapon/mop/cyborg,
/obj/item/device/lightreplacer/cyborg,
/obj/item/weapon/holosign_creator,
/obj/item/weapon/reagent_containers/spray/cyborg_drying)
emag_modules = list(/obj/item/weapon/reagent_containers/spray/cyborg_lube)
ratvar_modules = list(/obj/item/clockwork/slab/cyborg/janitor, /obj/item/clockwork/clockwork_proselytizer/cyborg)
ratvar_modules = list(
/obj/item/clockwork/slab/cyborg/janitor,
/obj/item/clockwork/clockwork_proselytizer/cyborg)
cyborg_base_icon = "janitor"
moduleselect_icon = "janitor"
feedback_key = "cyborg_janitor"
@@ -345,12 +404,25 @@
/obj/item/weapon/robot_module/butler
name = "Service"
basic_modules = list(/obj/item/device/assembly/flash/cyborg, /obj/item/weapon/reagent_containers/food/drinks/drinkingglass, /obj/item/weapon/reagent_containers/food/condiment/enzyme, \
/obj/item/weapon/pen, /obj/item/toy/crayon/spraycan/borg, /obj/item/weapon/hand_labeler/borg, /obj/item/weapon/razor, \
/obj/item/device/instrument/violin, /obj/item/device/instrument/guitar, /obj/item/weapon/rsf/cyborg, /obj/item/weapon/reagent_containers/dropper, \
/obj/item/weapon/lighter, /obj/item/weapon/storage/bag/tray, /obj/item/weapon/reagent_containers/borghypo/borgshaker, /obj/item/borg/lollipop)
basic_modules = list(
/obj/item/device/assembly/flash/cyborg,
/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,
/obj/item/weapon/reagent_containers/food/condiment/enzyme,
/obj/item/weapon/pen,
/obj/item/toy/crayon/spraycan/borg,
/obj/item/weapon/hand_labeler/borg,
/obj/item/weapon/razor,
/obj/item/device/instrument/violin,
/obj/item/device/instrument/guitar,
/obj/item/weapon/rsf/cyborg,
/obj/item/weapon/reagent_containers/dropper,
/obj/item/weapon/lighter,
/obj/item/weapon/storage/bag/tray,
/obj/item/weapon/reagent_containers/borghypo/borgshaker,
/obj/item/borg/lollipop)
emag_modules = list(/obj/item/weapon/reagent_containers/borghypo/borgshaker/hacked)
ratvar_modules = list(/obj/item/clockwork/slab/cyborg/service, /obj/item/borg/sight/xray/truesight_lens)
ratvar_modules = list(/obj/item/clockwork/slab/cyborg/service,
/obj/item/borg/sight/xray/truesight_lens)
moduleselect_icon = "service"
special_light_key = "service"
feedback_key = "cyborg_service"
@@ -386,11 +458,24 @@
/obj/item/weapon/robot_module/miner
name = "Miner"
basic_modules = list(/obj/item/device/assembly/flash/cyborg, /obj/item/borg/sight/meson, /obj/item/weapon/storage/bag/ore/cyborg, /obj/item/weapon/pickaxe/drill/cyborg, /obj/item/weapon/shovel, \
/obj/item/weapon/crowbar/cyborg, /obj/item/weapon/weldingtool/mini, /obj/item/weapon/extinguisher/mini, /obj/item/weapon/storage/bag/sheetsnatcher/borg, \
/obj/item/device/t_scanner/adv_mining_scanner, /obj/item/weapon/gun/energy/kinetic_accelerator/cyborg, /obj/item/device/gps/cyborg)
basic_modules = list(
/obj/item/device/assembly/flash/cyborg,
/obj/item/borg/sight/meson,
/obj/item/weapon/storage/bag/ore/cyborg,
/obj/item/weapon/pickaxe/drill/cyborg,
/obj/item/weapon/shovel,
/obj/item/weapon/crowbar/cyborg,
/obj/item/weapon/weldingtool/mini,
/obj/item/weapon/extinguisher/mini,
/obj/item/weapon/storage/bag/sheetsnatcher/borg,
/obj/item/device/t_scanner/adv_mining_scanner,
/obj/item/weapon/gun/energy/kinetic_accelerator/cyborg,
/obj/item/device/gps/cyborg)
emag_modules = list(/obj/item/borg/stun)
ratvar_modules = list(/obj/item/clockwork/slab/cyborg/miner, /obj/item/clockwork/ratvarian_spear/cyborg, /obj/item/borg/sight/xray/truesight_lens)
ratvar_modules = list(
/obj/item/clockwork/slab/cyborg/miner,
/obj/item/clockwork/ratvarian_spear/cyborg,
/obj/item/borg/sight/xray/truesight_lens)
cyborg_base_icon = "miner"
moduleselect_icon = "miner"
feedback_key = "cyborg_miner"
@@ -398,10 +483,18 @@
/obj/item/weapon/robot_module/syndicate
name = "Syndicate Assault"
basic_modules = list(/obj/item/device/assembly/flash/cyborg, /obj/item/weapon/melee/energy/sword/cyborg, /obj/item/weapon/gun/energy/printer, \
/obj/item/weapon/gun/ballistic/revolver/grenadelauncher/cyborg, /obj/item/weapon/card/emag, /obj/item/weapon/crowbar/cyborg, \
/obj/item/weapon/pinpointer/syndicate/cyborg)
ratvar_modules = list(/obj/item/clockwork/slab/cyborg/security, /obj/item/clockwork/ratvarian_spear/cyborg)
basic_modules = list(
/obj/item/device/assembly/flash/cyborg,
/obj/item/weapon/melee/energy/sword/cyborg,
/obj/item/weapon/gun/energy/printer,
/obj/item/weapon/gun/ballistic/revolver/grenadelauncher/cyborg,
/obj/item/weapon/card/emag,
/obj/item/weapon/crowbar/cyborg,
/obj/item/weapon/pinpointer/syndicate/cyborg)
ratvar_modules = list(
/obj/item/clockwork/slab/cyborg/security,
/obj/item/clockwork/ratvarian_spear/cyborg)
cyborg_base_icon = "synd_sec"
moduleselect_icon = "malf"
can_be_pushed = FALSE
@@ -409,11 +502,26 @@
/obj/item/weapon/robot_module/syndicate_medical
name = "Syndicate Medical"
basic_modules = list(/obj/item/device/assembly/flash/cyborg, /obj/item/weapon/reagent_containers/borghypo/syndicate, /obj/item/weapon/twohanded/shockpaddles/syndicate, \
/obj/item/device/healthanalyzer, /obj/item/weapon/surgical_drapes, /obj/item/weapon/retractor, /obj/item/weapon/hemostat, \
/obj/item/weapon/cautery, /obj/item/weapon/scalpel, /obj/item/weapon/melee/energy/sword/cyborg/saw, /obj/item/roller/robo, \
/obj/item/weapon/card/emag, /obj/item/weapon/crowbar/cyborg, /obj/item/weapon/pinpointer/syndicate/cyborg, /obj/item/stack/medical/gauze/cyborg, /obj/item/weapon/gun/medbeam)
ratvar_modules = list(/obj/item/clockwork/slab/cyborg/medical, /obj/item/clockwork/ratvarian_spear/cyborg)
basic_modules = list(
/obj/item/device/assembly/flash/cyborg,
/obj/item/weapon/reagent_containers/borghypo/syndicate,
/obj/item/weapon/twohanded/shockpaddles/syndicate,
/obj/item/device/healthanalyzer,
/obj/item/weapon/surgical_drapes,
/obj/item/weapon/retractor,
/obj/item/weapon/hemostat,
/obj/item/weapon/cautery,
/obj/item/weapon/scalpel,
/obj/item/weapon/melee/energy/sword/cyborg/saw,
/obj/item/roller/robo,
/obj/item/weapon/card/emag,
/obj/item/weapon/crowbar/cyborg,
/obj/item/weapon/pinpointer/syndicate/cyborg,
/obj/item/stack/medical/gauze/cyborg,
/obj/item/weapon/gun/medbeam)
ratvar_modules = list(
/obj/item/clockwork/slab/cyborg/medical,
/obj/item/clockwork/ratvarian_spear/cyborg)
cyborg_base_icon = "synd_medical"
moduleselect_icon = "malf"
can_be_pushed = FALSE
+2 -3
View File
@@ -228,9 +228,8 @@
if (length(law) > 0)
if (force || src.lawcheck[index+1] == "Yes")
src.say("[radiomod] [number]. [law]")
number++
sleep(10)
number++
for (var/index = 1, index <= src.laws.supplied.len, index++)
var/law = src.laws.supplied[index]
@@ -239,8 +238,8 @@
if(src.lawcheck.len >= number+1)
if (force || src.lawcheck[number+1] == "Yes")
src.say("[radiomod] [number]. [law]")
number++
sleep(10)
number++
/mob/living/silicon/proc/checklaws() //Gives you a link-driven interface for deciding what laws the statelaws() proc will share with the crew. --NeoFite