Merge remote-tracking branch 'origin/BaseBlep' into BranchBlep

This commit is contained in:
Fluff
2023-07-05 08:42:57 -04:00
226 changed files with 118346 additions and 52688 deletions

View File

@@ -0,0 +1,169 @@
/obj/item/clothing/mask/gas/sechailer
name = "hailer face mask"
desc = "A compact, durable gas mask that can be connected to an air supply. This one possesses a security hailer."
description_info = "This mask has a hailer attached, you can activate it on the button or use the Halt! verb, for switching phrases you can alt+click it or change it using the change phrase verb."
icon_state = "halfgas"
armor = list(melee = 10, bullet = 10, laser = 10, energy = 0, bomb = 0, bio = 55, rad = 0)
action_button_name = "HALT!"
body_parts_covered = FACE
var/obj/item/device/hailer/hailer
var/cooldown = 0
var/phrase = 1
var/aggressiveness = 1
var/safety = 1
var/list/phrase_list = list(
"halt" = "HALT! HALT! HALT! HALT!",
"bobby" = "Stop in the name of the Law.",
"compliance" = "Compliance is in your best interest.",
"justice" = "Prepare for justice!",
"running" = "Running will only increase your sentence.",
"dontmove" = "Don't move, Creep!",
"floor" = "Down on the floor, Creep!",
"robocop" = "Dead or alive you're coming with me.",
"god" = "God made today for the crooks we could not catch yesterday.",
"freeze" = "Freeze, Scum Bag!",
"imperial" = "Stop right there, criminal scum!",
"bash" = "Stop or I'll bash you.",
"harry" = "Go ahead, make my day.",
"asshole" = "Stop breaking the law, asshole.",
"stfu" = "You have the right to shut the fuck up",
"shutup" = "Shut up crime!",
"super" = "Face the wrath of the golden bolt.",
"dredd" = "I am, the LAW!"
)
/obj/item/clothing/mask/gas/sechailer/swat/hos
name = "\improper HOS SWAT mask"
desc = "A close-fitting tactical mask with an especially aggressive Compli-o-nator 3000. It has a tan stripe."
icon_state = "hosmask"
/obj/item/clothing/mask/gas/sechailer/swat/warden
name = "\improper Warden SWAT mask"
desc = "A close-fitting tactical mask with an especially aggressive Compli-o-nator 3000. It has a blue stripe."
icon_state = "wardenmask"
/obj/item/clothing/mask/gas/sechailer/swat/officer //Just a little nicer to begin with. Can always up the anger with a screwdriver!
aggressiveness = 1
phrase = 1
/obj/item/clothing/mask/gas/sechailer/swat
name = "\improper SWAT mask"
desc = "A close-fitting tactical mask with an especially aggressive Compli-o-nator 3000."
icon_state = "officermask"
body_parts_covered = HEAD|FACE|EYES
flags_inv = HIDEFACE|BLOCKHAIR
aggressiveness = 3
phrase = 12
/obj/item/clothing/mask/gas/sechailer/ui_action_click()
halt()
/obj/item/clothing/mask/gas/sechailer/AltClick(mob/user)
selectphrase()
/obj/item/clothing/mask/gas/sechailer/verb/selectphrase()
set name = "Select gas mask phrase"
set category = "Object"
set desc = "Alter the message shouted by your complionator gas mask."
var/key = phrase_list[phrase]
var/message = phrase_list[key]
if (!safety)
to_chat(usr, "<span class='notice'>You set the restrictor to: FUCK YOUR CUNT YOU SHIT EATING COCKSUCKER MAN EAT A DONG FUCKING ASS RAMMING SHIT FUCK EAT PENISES IN YOUR FUCK FACE AND SHIT OUT ABORTIONS OF FUCK AND DO SHIT IN YOUR ASS YOU COCK FUCK SHIT MONKEY FUCK ASS WANKER FROM THE DEPTHS OF SHIT.</span>")
return
switch(aggressiveness)
if(1)
phrase = (phrase < 6) ? (phrase + 1) : 1
key = phrase_list[phrase]
message = phrase_list[key]
to_chat(usr,"<span class='notice'>You set the restrictor to: [message]</span>")
if(2)
phrase = (phrase < 11 && phrase >= 7) ? (phrase + 1) : 7
key = phrase_list[phrase]
message = phrase_list[key]
to_chat(usr,"<span class='notice'>You set the restrictor to: [message]</span>")
if(3)
phrase = (phrase < 18 && phrase >= 12 ) ? (phrase + 1) : 12
key = phrase_list[phrase]
message = phrase_list[key]
to_chat(usr,"<span class='notice'>You set the restrictor to: [message]</span>")
if(4)
phrase = (phrase < 18 && phrase >= 1 ) ? (phrase + 1) : 1
key = phrase_list[phrase]
message = phrase_list[key]
to_chat(usr,"<span class='notice'>You set the restrictor to: [message]</span>")
else
to_chat(usr, "<span class='notice'>It's broken.</span>")
/obj/item/clothing/mask/gas/sechailer/emag_act(mob/user)
if(safety)
safety = 0
to_chat(user, "<span class='warning'>You silently fry [src]'s vocal circuit with the cryptographic sequencer.</span>")
else
return
/obj/item/clothing/mask/gas/sechailer/attackby(obj/item/I, mob/user)
if(I.is_screwdriver())
switch(aggressiveness)
if(1)
to_chat(user, "<span class='notice'>You set the aggressiveness restrictor to the second position.</span>")
aggressiveness = 2
phrase = 7
if(2)
to_chat(user, "<span class='notice'>You set the aggressiveness restrictor to the third position.</span>")
aggressiveness = 3
phrase = 13
if(3)
to_chat(user, "<span class='notice'>You set the aggressiveness restrictor to the fourth position.</span>")
aggressiveness = 4
phrase = 1
if(4)
to_chat(user, "<span class='notice'>You set the aggressiveness restrictor to the first position.</span>")
aggressiveness = 1
phrase = 1
if(5)
to_chat(user, "<span class='warning'>You adjust the restrictor but nothing happens, probably because its broken.</span>")
if(I.is_wirecutter())
if(aggressiveness != 5)
to_chat(user, "<span class='warning'>You broke it!</span>")
aggressiveness = 5
if(I.is_crowbar())
if(!hailer)
to_chat(user, "<span class='warning'>This mask has an integrated hailer, you can't remove it!</span>")
else
var/obj/N = new /obj/item/clothing/mask/gas/half(src.loc)
playsound(src, 'sound/items/Screwdriver.ogg', 50, 1)
N.fingerprints = src.fingerprints
N.fingerprintshidden = src.fingerprintshidden
N.fingerprintslast = src.fingerprintslast
N.suit_fibers = src.suit_fibers
if(!isturf(N.loc))
user.put_in_hands(hailer)
user.put_in_hands(N)
else
hailer.loc = N.loc
qdel(src)
return
..()
/obj/item/clothing/mask/gas/sechailer/verb/halt()
set name = "HALT!"
set category = "Objects"
set desc = "Activate your face mask hailer."
var/key = phrase_list[phrase]
var/message = phrase_list[key]
if(cooldown < world.time - 35) // A cooldown, to stop people being jerks
if(!safety)
message = "FUCK YOUR CUNT YOU SHIT EATING COCKSUCKER MAN EAT A DONG FUCKING ASS RAMMING SHIT FUCK EAT PENISES IN YOUR FUCK FACE AND SHIT OUT ABORTIONS OF FUCK AND DO SHIT IN YOUR ASS YOU COCK FUCK SHIT MONKEY FUCK ASS WANKER FROM THE DEPTHS OF SHIT."
usr.visible_message("[usr]'s Compli-o-Nator: <font color='red' size='4'><b>[message]</b></font>")
playsound(src, 'sound/voice/binsult.ogg', 50, 0, 4) //Future sound channel = something like SFX
cooldown = world.time
return
usr.visible_message("[usr]'s Compli-o-Nator: <font color='red' size='4'><b>[message]</b></font>")
playsound(src, "sound/voice/complionator/[key].ogg", 50, 0, 4) //future sound channel = something like SFX
cooldown = world.time

View File

@@ -1,4 +1,4 @@
/datum/trait/positive/hardfeet
/datum/trait/neutral/hardfeet
custom_only = FALSE
/datum/trait/positive/linguist

View File

@@ -1,45 +1,52 @@
//Unfiying spider health, into two catagories. Disrupters and tanks.
/mob/living/simple_mob/animal/giant_spider/carrier //Disrupter, old 100
maxHealth = 70
health = 70
maxHealth = 60
health = 60
/mob/living/simple_mob/animal/giant_spider/electric //disrupter, old 210
maxHealth = 70
health = 70
maxHealth = 60
health = 60
projectiletype = /obj/item/projectile/energy/mob/electric_spider
/mob/living/simple_mob/animal/giant_spider/frost //tank, old 175
maxHealth = 130
health = 130
maxHealth = 120
health = 120
/mob/living/simple_mob/animal/giant_spider //tank, old 200
maxHealth = 120
health = 120
/mob/living/simple_mob/animal/giant_spider/ion //disrupter, old 90
maxHealth = 70
health = 70
maxHealth = 60
health = 60
/mob/living/simple_mob/animal/giant_spider/hunter //disrupter, old 120
maxHealth = 70
health = 70
maxHealth = 60
health = 60
/mob/living/simple_mob/animal/giant_spider/lurker //disrupter, old 100
maxHealth = 70
health = 70
maxHealth = 60
health = 60
/mob/living/simple_mob/animal/giant_spider/pepper //tank, old 210
maxHealth = 130
health = 130
maxHealth = 120
health = 120
/mob/living/simple_mob/animal/giant_spider/phorogenic //tank, old 225
maxHealth = 130
health = 130
maxHealth = 120
health = 120
/mob/living/simple_mob/animal/giant_spider/thermic //tank, old 175
maxHealth = 130
health = 130
maxHealth = 120
health = 120
/mob/living/simple_mob/animal/giant_spider/tunneler_spider //disrupter, old 120
maxHealth = 70
health = 70
maxHealth = 60
health = 60
/mob/living/simple_mob/animal/giant_spider/webslinger //disrupter, old 90
maxHealth = 70
health = 70
maxHealth = 60
health = 60
/obj/effect/spider/eggcluster
spider_type = /obj/effect/spider/spiderling/varied

View File

@@ -283,7 +283,7 @@
vore_max_size = RESIZE_HUGE
vore_min_size = RESIZE_SMALL
vore_pounce_chance = 0 // Beat them into crit before eating.
vore_icons = null
vore_icons = SA_ICON_LIVING
can_be_drop_prey = FALSE //CHOMP Add

View File

@@ -91,7 +91,7 @@
icon_state = "meb_m_hi"
maxcharge = 10000
charge_amount = 20
origin_tech = list(TECH_POWER = 5, TECH_PRECURSOR = 1)
origin_tech = list(TECH_POWER = 8)
/obj/item/weapon/cell/device/giga/empty/Initialize()
. = ..()
@@ -161,10 +161,10 @@
catalogue_data = list(/datum/category_item/catalogue/anomalous/precursor_a/alien_void_cell)
icon = 'icons/obj/abductor.dmi'
icon_state = "cell"
maxcharge = 3600
charge_amount = 180 // 5%.
maxcharge = 5000
charge_amount = 130 // 2.5%.
charge_delay = 50 // Every five seconds, bit faster than the default.
origin_tech = list(TECH_POWER = 7, TECH_ENGINEERING = 5, TECH_PHORON = 5, TECH_ARCANE = 1, TECH_PRECURSOR = 1)
origin_tech = list(TECH_POWER = 7, TECH_ENGINEERING = 6, TECH_PHORON = 6, TECH_ARCANE = 2, TECH_PRECURSOR = 2)
/obj/item/weapon/cell/device/weapon/recharge/alien/update_icon()
return // No overlays please.
@@ -192,8 +192,8 @@
origin_tech = list(TECH_POWER = 8, TECH_ENGINEERING = 6)
icon = 'icons/obj/abductor.dmi'
icon_state = "cell"
maxcharge = 4800 //10x the device version
charge_amount = 1200 //10x the device version
maxcharge = 10000
charge_amount = 500
self_recharge = TRUE
charge_delay = 50
matter = null
@@ -224,11 +224,12 @@
//YAWN Addtion
/obj/item/weapon/cell/device/weapon/recharge/alien/omni
name = "omni weapon power cell"
desc = "A mix between alien technology and phoron tech. Seems to fit in almost any cell slot..."
charge_amount = 120 // 2.5%.
maxcharge = 4800
desc = "A mix between alien technology and phoron-based tech. Not quite as good as a true void cell though."
charge_amount = 90 // 2.5%.
maxcharge = 3600
charge_delay = 50
origin_tech = list(TECH_POWER = 8, TECH_ENGINEERING = 6, TECH_PHORON = 6, TECH_ARCANE = 2, TECH_PRECURSOR = 2)
swaps_to = null
origin_tech = list(TECH_POWER = 8, TECH_ENGINEERING = 6, TECH_PHORON = 6, TECH_ARCANE = 1, TECH_PRECURSOR = 1)
/obj/item/weapon/cell/device/weapon/recharge/alien/omni/empty/Initialize()
. = ..()

View File

@@ -20,7 +20,7 @@
name = "security borg rechargable D battery"
origin_tech = list(TECH_POWER = 0)
icon_state = "secborg"
maxcharge = 600 //600 max charge / 100 charge per shot = six shots
maxcharge = 2400 //who the hell thought 6 shots was enough for a dogborg taser?
matter = list(MAT_STEEL = 700, MAT_GLASS = 40)
/obj/item/weapon/cell/secborg/empty/New()
@@ -88,7 +88,7 @@
*/
/obj/item/weapon/cell/giga
name = "giga-capacity power cell"
origin_tech = list(TECH_POWER = 6, TECH_PRECURSOR = 1)
origin_tech = list(TECH_POWER = 8)
icon_state = "meb_b_hi"
maxcharge = 40000
matter = list(MAT_STEEL = 1000, MAT_GLASS = 100)
@@ -162,7 +162,7 @@
icon_state = "yellow slime extract" //"potato_battery"
description_info = "This 'cell' holds a max charge of 20k and self recharges over time."
maxcharge = 20000
charge_amount = 1000 // 5%.
charge_amount = 500 // 2.5%.
matter = null
self_recharge = TRUE
standard_overlays = FALSE

View File

@@ -57,8 +57,8 @@
/datum/design/item/powercell/giga
name = "giga-capacity"
id = "giga_cell"
req_tech = list(TECH_POWER = 6, TECH_MATERIAL = 5, TECH_PRECURSOR = 1, TECH_PHORON = 4)
materials = list(MAT_STEEL = 1000, MAT_GOLD = 300, MAT_SILVER = 300, MAT_GLASS = 100, MAT_PHORON = 1000, MAT_METALHYDROGEN = 250, MAT_DURASTEEL = 100, MAT_URANIUM = 100)
req_tech = list(TECH_POWER = 7, TECH_MATERIAL = 5, TECH_ARCANE = 1, TECH_PHORON = 4)
materials = list(MAT_STEEL = 1000, MAT_GOLD = 300, MAT_SILVER = 300, MAT_GLASS = 100, MAT_PHORON = 1000, MAT_DURASTEEL = 100, MAT_URANIUM = 100)
build_path = /obj/item/weapon/cell/giga
category = list("Misc")
sort_string = "BAAAE"
@@ -140,8 +140,8 @@
/datum/design/item/powercell/giga_device
name = "device, giga"
id = "giga_device"
req_tech = list(TECH_POWER = 6, TECH_MATERIAL = 6, TECH_PRECURSOR = 1, TECH_PHORON = 4)
materials = list(MAT_STEEL = 2000, MAT_GOLD = 500, MAT_SILVER = 500, MAT_GLASS = 100, MAT_PHORON = 2000, MAT_METALHYDROGEN = 500, MAT_DURASTEEL = 200, MAT_URANIUM = 200)
req_tech = list(TECH_POWER = 7, TECH_MATERIAL = 6, TECH_ARCANE = 1, TECH_PHORON = 4)
materials = list(MAT_STEEL = 2000, MAT_GOLD = 500, MAT_SILVER = 500, MAT_GLASS = 100, MAT_PHORON = 2000, MAT_DURASTEEL = 200, MAT_URANIUM = 200)
build_path = /obj/item/weapon/cell/device/giga
category = list("Misc")
sort_string = "BAAAH"

View File

@@ -39,35 +39,35 @@
/datum/design/item/weapon/phase/frontier_holdout
id = "holdout frontier phaser"
req_tech = list(TECH_COMBAT = 4, TECH_POWER = 7, TECH_MATERIAL = 6, TECH_PHORON = 6)
materials = list(MAT_STEEL = 6000, MAT_GLASS = 900, MAT_DURASTEEL = 100, MAT_METALHYDROGEN = 150, MAT_VERDANTIUM = 100, MAT_PHORON = 1000)
materials = list(MAT_STEEL = 6000, MAT_GLASS = 900, MAT_DURASTEEL = 100, MAT_VERDANTIUM = 100, MAT_PHORON = 1000)
build_path = /obj/item/weapon/gun/energy/locked/frontier/holdout
sort_string = "MACAE"
/datum/design/item/weapon/phase/frontier_phaser
id = "frontier phaser"
req_tech = list(TECH_COMBAT = 4, TECH_POWER = 7, TECH_MATERIAL = 6, TECH_PHORON = 6)
materials = list(MAT_STEEL = 7000, MAT_GLASS = 900, MAT_DURASTEEL = 100, MAT_METALHYDROGEN = 200, MAT_VERDANTIUM = 150, MAT_PHORON = 2000)
materials = list(MAT_STEEL = 7000, MAT_GLASS = 900, MAT_DURASTEEL = 100, MAT_VERDANTIUM = 150, MAT_PHORON = 2000)
build_path = /obj/item/weapon/gun/energy/locked/frontier
sort_string = "MACAF"
/datum/design/item/weapon/phase/frontier_carbine
id = "carbine frontier phaser"
req_tech = list(TECH_COMBAT = 4, TECH_POWER = 8, TECH_MATERIAL = 6, TECH_PHORON = 6)
materials = list(MAT_STEEL = 6500, MAT_GLASS = 900, MAT_DURASTEEL = 150, MAT_METALHYDROGEN = 250, MAT_VERDANTIUM = 200, MAT_PHORON = 4000)
materials = list(MAT_STEEL = 6500, MAT_GLASS = 900, MAT_DURASTEEL = 150, MAT_VERDANTIUM = 200, MAT_PHORON = 4000)
build_path = /obj/item/weapon/gun/energy/locked/frontier/carbine
sort_string = "MACAG"
/datum/design/item/weapon/phase/frontier_rifle
id = "marksman rifle frontier phaser"
req_tech = list(TECH_COMBAT = 4, TECH_POWER = 7, TECH_MATERIAL = 6, TECH_PHORON = 6)
materials = list(MAT_STEEL = 8000, MAT_GLASS = 900, MAT_DURASTEEL = 200, MAT_METALHYDROGEN = 300, MAT_VERDANTIUM = 250, MAT_PHORON = 2000)
materials = list(MAT_STEEL = 8000, MAT_GLASS = 900, MAT_DURASTEEL = 200, MAT_VERDANTIUM = 250, MAT_PHORON = 2000)
build_path = /obj/item/weapon/gun/energy/locked/frontier/rifle
sort_string = "MACAH"
/datum/design/item/weapon/phase/frontier_handbow
id = "handbow frontier phaser"
req_tech = list(TECH_COMBAT = 4, TECH_POWER = 7, TECH_MATERIAL = 6, TECH_PHORON = 6)
materials = list(MAT_STEEL = 5000, MAT_GLASS = 900, MAT_DURASTEEL = 100, MAT_METALHYDROGEN = 200, MAT_VERDANTIUM = 150, MAT_PHORON = 1000)
materials = list(MAT_STEEL = 5000, MAT_GLASS = 900, MAT_DURASTEEL = 100, MAT_VERDANTIUM = 150, MAT_PHORON = 1000)
build_path = /obj/item/weapon/gun/energy/locked/frontier/handbow
sort_string = "MACAI"
@@ -79,3 +79,10 @@
build_path = /obj/item/weapon/gun/projectile/caseless/prototype
sort_string = "MACBA"
/datum/design/item/weapon/energy/lasercannon
desc = "The lasing medium of this prototype is enclosed in a tube lined with uranium-235 and subjected to high neutron flux in a nuclear reactor core."
id = "lasercannon"
req_tech = list(TECH_COMBAT = 6, TECH_MATERIAL = 6, TECH_POWER = 5)
materials = list(MAT_STEEL = 4000, MAT_GLASS = 1000, MAT_DIAMOND = 2000, MAT_TITANIUM = 4000, MAT_LEAD = 4000, MAT_URANIUM = 5000)
build_path = /obj/item/weapon/gun/energy/lasercannon
sort_string = "MAAAD"