mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-26 06:22:26 +01:00
Lowpop Antag: Burglar (#9193)
Added a lowpop gamemode called 'Burglars', featuring a new type of antagonist, a mix between a heister and a traitor. Neutered for lowpop fun.
Added a mixed gamemode, 'Conflict', which is heisters and burglars.
This commit is contained in:
@@ -232,6 +232,96 @@
|
||||
W.handle_item_insertion(id)
|
||||
spawn_money(rand(50,150)*10,W)
|
||||
|
||||
/datum/outfit/admin/syndicate/raider/burglar
|
||||
name = "Burglar"
|
||||
|
||||
uniform = list(
|
||||
/obj/item/clothing/under/suit_jacket/really_black,
|
||||
/obj/item/clothing/under/suit_jacket/charcoal,
|
||||
/obj/item/clothing/under/suit_jacket/navy,
|
||||
/obj/item/clothing/under/suit_jacket/burgundy
|
||||
)
|
||||
|
||||
suit = /obj/item/clothing/suit/armor/bulletproof
|
||||
|
||||
shoes = list(
|
||||
/obj/item/clothing/shoes/laceup/all_species,
|
||||
/obj/item/clothing/shoes/laceup/brown/all_species
|
||||
)
|
||||
|
||||
glasses = list(
|
||||
/obj/item/clothing/glasses/sunglasses,
|
||||
/obj/item/clothing/glasses/sunglasses/aviator
|
||||
)
|
||||
|
||||
head = null
|
||||
|
||||
gloves = list(
|
||||
/obj/item/clothing/gloves/watch,
|
||||
/obj/item/clothing/gloves/watch/silver,
|
||||
/obj/item/clothing/gloves/watch/gold,
|
||||
/obj/item/clothing/gloves/watch/spy
|
||||
)
|
||||
|
||||
l_ear = /obj/item/device/radio/headset/burglar
|
||||
l_pocket = /obj/item/syndie/teleporter
|
||||
r_pocket = /obj/item/device/special_uplink/burglar
|
||||
id = /obj/item/storage/wallet
|
||||
|
||||
r_hand = /obj/item/storage/briefcase/black
|
||||
|
||||
backpack_contents = list()
|
||||
|
||||
/datum/outfit/admin/syndicate/raider/burglar/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
|
||||
. = ..()
|
||||
if(visualsOnly)
|
||||
return
|
||||
|
||||
var/static/list/burglar_guns = list(
|
||||
/obj/item/gun/energy/rifle/icelance,
|
||||
/obj/item/gun/energy/retro,
|
||||
/obj/item/gun/projectile/silenced,
|
||||
/obj/item/gun/projectile/colt,
|
||||
/obj/item/gun/projectile/revolver/deckard,
|
||||
/obj/item/gun/projectile/revolver/lemat
|
||||
)
|
||||
|
||||
var/new_gun = pick(burglar_guns)
|
||||
var/turf/T = get_turf(H)
|
||||
|
||||
var/obj/item/primary = new new_gun(T)
|
||||
var/obj/item/clothing/accessory/holster/armpit/holster
|
||||
|
||||
if(primary.slot_flags & SLOT_HOLSTER)
|
||||
holster = new /obj/item/clothing/accessory/holster/armpit(T)
|
||||
holster.holstered = primary
|
||||
primary.forceMove(holster)
|
||||
else if(!H.belt && (primary.slot_flags & SLOT_BELT))
|
||||
H.equip_to_slot_or_del(primary, slot_belt)
|
||||
else if(!H.back && (primary.slot_flags & SLOT_BACK))
|
||||
H.equip_to_slot_or_del(primary, slot_back)
|
||||
else
|
||||
H.put_in_any_hand_if_possible(primary)
|
||||
|
||||
if(istype(primary, /obj/item/gun/projectile))
|
||||
var/obj/item/gun/projectile/bullet_thrower = primary
|
||||
var/obj/item/storage/briefcase/B = locate() in H
|
||||
if(bullet_thrower.magazine_type)
|
||||
new bullet_thrower.magazine_type(B)
|
||||
if(prob(20)) //don't want to give them too much
|
||||
new bullet_thrower.magazine_type(B)
|
||||
else if(bullet_thrower.ammo_type)
|
||||
for(var/i in 1 to rand(3, 5) + rand(0, 2))
|
||||
new bullet_thrower.ammo_type(B)
|
||||
H.put_in_hands(B)
|
||||
|
||||
if(holster)
|
||||
var/obj/item/clothing/under/uniform = H.w_uniform
|
||||
if(istype(uniform) && uniform.can_attach_accessory(holster))
|
||||
uniform.attackby(holster, H)
|
||||
else
|
||||
H.put_in_any_hand_if_possible(holster)
|
||||
|
||||
// Non-syndicate antag outfits
|
||||
|
||||
/datum/outfit/admin/highlander
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
var/name = ""
|
||||
var/list/datum/uplink_item/items
|
||||
var/list/datum/antagonist/antag_roles
|
||||
var/list/restricted_antags
|
||||
|
||||
/datum/uplink_category/New()
|
||||
..()
|
||||
@@ -11,23 +12,30 @@
|
||||
if(!LAZYLEN(antag_roles))
|
||||
for(var/datum/uplink_item/item in items)
|
||||
if(item.can_view(U))
|
||||
return 1
|
||||
return 0
|
||||
return TRUE
|
||||
return FALSE
|
||||
|
||||
for(var/antag_role in restricted_antags)
|
||||
var/datum/antagonist/antag = all_antag_types[antag_role]
|
||||
if(antag.is_antagonist(U.uplink_owner))
|
||||
return FALSE
|
||||
|
||||
for(var/antag_role in antag_roles)
|
||||
var/datum/antagonist/antag = all_antag_types[antag_role]
|
||||
if(antag.is_antagonist(U.uplink_owner))
|
||||
return 1
|
||||
return 0
|
||||
return TRUE
|
||||
return FALSE
|
||||
|
||||
/datum/uplink_category/ammunition
|
||||
name = "Ammunition"
|
||||
|
||||
/datum/uplink_category/grenades
|
||||
name = "Grenades and Thrown Objects"
|
||||
restricted_antags = list(MODE_BURGLAR)
|
||||
|
||||
/datum/uplink_category/visible_weapons
|
||||
name = "Highly Visible and Dangerous Weapons"
|
||||
restricted_antags = list(MODE_BURGLAR)
|
||||
|
||||
/datum/uplink_category/stealthy_weapons
|
||||
name = "Stealthy and Inconspicuous Weapons"
|
||||
@@ -55,12 +63,15 @@
|
||||
|
||||
/datum/uplink_category/exosuit
|
||||
name = "Exosuit"
|
||||
restricted_antags = list(MODE_BURGLAR)
|
||||
|
||||
/datum/uplink_category/exosuit_equipment
|
||||
name = "Exosuit Equipment"
|
||||
restricted_antags = list(MODE_BURGLAR)
|
||||
|
||||
/datum/uplink_category/corporate_equipment
|
||||
name = "Corporate Equipment"
|
||||
restricted_antags = list(MODE_BURGLAR)
|
||||
|
||||
/datum/uplink_category/telecrystals
|
||||
name = "Telecrystals"
|
||||
|
||||
Reference in New Issue
Block a user