mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-22 12:29:46 +01:00
Adminspawn Cultstuff (#8296)
This commit is contained in:
@@ -92,25 +92,6 @@ obj/item/clothing/shoes/sandal/clogs
|
||||
else
|
||||
playsound(src, /decl/sound_category/clown_sound, 50, 1) // Running is louder.
|
||||
|
||||
/obj/item/clothing/shoes/cult
|
||||
name = "ragged boots"
|
||||
desc = "A ragged, dusty pair of boots."
|
||||
icon_state = "cult"
|
||||
item_state = "cult"
|
||||
force = 5
|
||||
silent = 1
|
||||
siemens_coefficient = 0.35 //antags don't get exceptions, it's just heavy armor by magical standards
|
||||
armor = list(melee = 50, bullet = 30, laser = 50,energy = 20, bomb = 25, bio = 10, rad = 0)
|
||||
|
||||
cold_protection = FEET
|
||||
min_cold_protection_temperature = SHOE_MIN_COLD_PROTECTION_TEMPERATURE
|
||||
heat_protection = FEET
|
||||
max_heat_protection_temperature = SHOE_MAX_HEAT_PROTECTION_TEMPERATURE
|
||||
species_restricted = null
|
||||
|
||||
/obj/item/clothing/shoes/cult/cultify()
|
||||
return
|
||||
|
||||
/obj/item/clothing/shoes/cyborg
|
||||
name = "cyborg boots"
|
||||
desc = "Shoes for a cyborg costume"
|
||||
|
||||
@@ -16,6 +16,7 @@ var/global/list/mecha_damage_overlay_cache = list()
|
||||
#define MECH_SOFTWARE_MEDICAL "medical support systems" // Sleeper.
|
||||
#define MECH_SOFTWARE_WEAPONS "ballistic weapon systems" // Ballistics.
|
||||
#define MECH_SOFTWARE_ADVWEAPONS "advanced weapon systems" // Railguns, ion rifle, missile launcher.
|
||||
#define MECH_SOFTWARE_CULT "daemon systems" // Souljavelin, Doomblade
|
||||
#define MECH_SOFTWARE_ENGINEERING "advanced engineering systems" // RCD.
|
||||
|
||||
// EMP damage points before various effects occur.
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
/obj/item/mecha_equipment/mounted_system/soul_javelin
|
||||
name = "mounted soul javelin"
|
||||
desc = "A heavy duty daemon shardlauncher, not for the faint of heart."
|
||||
icon_state = "mecha_souljavelin"
|
||||
holding_type = /obj/item/gun/energy/rifle/cult/mounted
|
||||
equipment_delay = -2
|
||||
restricted_hardpoints = list(HARDPOINT_LEFT_HAND, HARDPOINT_RIGHT_HAND)
|
||||
restricted_software = list(MECH_SOFTWARE_CULT)
|
||||
|
||||
/obj/item/mecha_equipment/doomblade
|
||||
name = "daemon doomblade"
|
||||
desc = "A large blade menacing with demonic energy, try to not touch the red parts."
|
||||
icon_state = "mecha_doomblade"
|
||||
equipment_delay = 5
|
||||
restricted_hardpoints = list(HARDPOINT_LEFT_HAND, HARDPOINT_RIGHT_HAND)
|
||||
restricted_software = list(MECH_SOFTWARE_CULT)
|
||||
origin_tech = list(TECH_MATERIAL = 2, TECH_ENGINEERING = 2)
|
||||
var/obj/item/melee/cultblade/doomblade
|
||||
|
||||
/obj/item/mecha_equipment/doomblade/Initialize()
|
||||
. = ..()
|
||||
doomblade = new /obj/item/melee/cultblade/mounted(src)
|
||||
|
||||
/obj/item/mecha_equipment/doomblade/attack(mob/living/M, mob/living/user)
|
||||
if(!owner)
|
||||
return
|
||||
doomblade.attack(M, user, user.zone_sel.selecting)
|
||||
@@ -190,7 +190,6 @@
|
||||
name = "floodlight"
|
||||
desc = "An exosuit-mounted light."
|
||||
icon_state = "mech_floodlight"
|
||||
item_state = "mech_floodlight"
|
||||
restricted_hardpoints = list(HARDPOINT_HEAD)
|
||||
mech_layer = MECH_INTERMEDIATE_LAYER
|
||||
|
||||
@@ -220,6 +219,7 @@
|
||||
on = FALSE
|
||||
update_icon()
|
||||
. = ..()
|
||||
|
||||
#define CATAPULT_SINGLE 1
|
||||
#define CATAPULT_AREA 2
|
||||
|
||||
|
||||
@@ -37,16 +37,20 @@
|
||||
/mob/living/heavy_vehicle/premade/proc/add_parts()
|
||||
if(!head && e_head)
|
||||
head = new e_head(src)
|
||||
head.color = e_color
|
||||
if(e_color)
|
||||
head.color = e_color
|
||||
if(!body && e_body)
|
||||
body = new e_body(src)
|
||||
body.color = e_color
|
||||
if(e_color)
|
||||
body.color = e_color
|
||||
if(!arms && e_arms)
|
||||
arms = new e_arms(src)
|
||||
arms.color = e_color
|
||||
if(e_color)
|
||||
arms.color = e_color
|
||||
if(!legs && e_arms)
|
||||
legs = new e_legs(src)
|
||||
legs.color = e_color
|
||||
if(e_color)
|
||||
legs.color = e_color
|
||||
|
||||
/mob/living/heavy_vehicle/premade/proc/do_decals()
|
||||
if(arms)
|
||||
|
||||
@@ -0,0 +1,76 @@
|
||||
// adminspawn only
|
||||
/mob/living/heavy_vehicle/premade/cult
|
||||
name = "Daemon Exosuit"
|
||||
desc = "An unholy construction, a mecha ripped from the jaws of the underworld, here to wreak havoc on the living."
|
||||
icon_state = "durand"
|
||||
|
||||
e_head = /obj/item/mech_component/sensors/cult
|
||||
e_body = /obj/item/mech_component/chassis/cult
|
||||
e_arms = /obj/item/mech_component/manipulators/cult
|
||||
e_legs = /obj/item/mech_component/propulsion/cult
|
||||
e_color = null // Uses pre-coloured assets
|
||||
|
||||
h_head = /obj/item/mecha_equipment/light/cult
|
||||
h_back = /obj/item/mecha_equipment/quick_enter
|
||||
h_r_hand = /obj/item/mecha_equipment/doomblade
|
||||
|
||||
/mob/living/heavy_vehicle/premade/cult/super
|
||||
h_l_hand = /obj/item/mecha_equipment/mounted_system/soul_javelin
|
||||
|
||||
/obj/item/mech_component/manipulators/cult
|
||||
name = "daemon arms"
|
||||
desc = "Forged by the Great Unknown, these arms wield dark weapons gifted by Nar'Sie."
|
||||
exosuit_desc_string = "bloodpact reinforced manipulators"
|
||||
icon_state = "cult_arms"
|
||||
melee_damage = 50
|
||||
action_delay = 5
|
||||
max_damage = 90
|
||||
power_use = 7500
|
||||
punch_sound = 'sound/mecha/mech_punch_slow.ogg'
|
||||
|
||||
/obj/item/mech_component/propulsion/cult
|
||||
name = "daemon legs"
|
||||
desc = "Moving with purpose, these legs can take a follower of Nar'Sie where judgement must be executed."
|
||||
exosuit_desc_string = "bloodbound hydraulic legs"
|
||||
icon_state = "cult_legs"
|
||||
move_delay = 5
|
||||
max_damage = 90
|
||||
power_use = 5000
|
||||
trample_damage = 45
|
||||
|
||||
/obj/item/mech_component/sensors/cult
|
||||
name = "daemon sensors"
|
||||
desc = "A hard shell to protect those that follow the Great One, these sensors assist in the slaughter."
|
||||
exosuit_desc_string = "oozing sensor array"
|
||||
icon_state = "cult_head"
|
||||
max_damage = 120
|
||||
power_use = 0
|
||||
|
||||
/obj/item/mech_component/sensors/cult/prebuild()
|
||||
..()
|
||||
software = new(src)
|
||||
software.installed_software = list(MECH_SOFTWARE_WEAPONS, MECH_SOFTWARE_CULT)
|
||||
|
||||
/obj/item/mech_component/chassis/cult
|
||||
name = "daemon exosuit chassis"
|
||||
desc = "Despite its looks, this protective chassis provides supreme comfort to its pilot during their conquest."
|
||||
hatch_descriptor = "bloodied ribcage"
|
||||
pilot_coverage = 100
|
||||
exosuit_desc_string = "a bloodied chassis"
|
||||
icon_state = "cult_body"
|
||||
max_damage = 150
|
||||
mech_health = 500
|
||||
power_use = 5000
|
||||
|
||||
/obj/item/mech_component/chassis/cult/prebuild()
|
||||
. = ..()
|
||||
mech_armor = new /obj/item/robot_parts/robot_component/armor/mech/combat(src)
|
||||
|
||||
/obj/item/mecha_equipment/light/cult
|
||||
name = "daemon floatlights"
|
||||
desc = "Levitating floatlamps held aloft by daemon energy. Casts a crimson light."
|
||||
icon_state = "mecha_bulb"
|
||||
mech_layer = MECH_GEAR_LAYER
|
||||
restricted_software = list(MECH_SOFTWARE_CULT)
|
||||
|
||||
light_color = LIGHT_COLOR_EMERGENCY
|
||||
@@ -0,0 +1,78 @@
|
||||
/obj/item/gun/energy/rifle/cult
|
||||
name = "bloodpike"
|
||||
desc = "A ranged weapon of demonic origin, surely. It menaces with crimson spikes."
|
||||
desc_info = null
|
||||
desc_fluff = null
|
||||
desc_antag = "This weapon can be recharged by clicking on blood or remains with it, remains recharge more than simple blood."
|
||||
icon = 'icons/obj/guns/bloodpike.dmi'
|
||||
icon_state = "bloodpike"
|
||||
item_state = "bloodpike"
|
||||
fire_sound = 'sound/weapons/laserstrong.ogg'
|
||||
slot_flags = SLOT_BACK
|
||||
w_class = ITEMSIZE_LARGE
|
||||
force = 10
|
||||
max_shots = 5
|
||||
fire_delay = 25
|
||||
accuracy = -1
|
||||
can_turret = FALSE
|
||||
can_switch_modes = FALSE
|
||||
charge_failure_message = " cannot be rearmed by normal means."
|
||||
|
||||
has_icon_ratio = TRUE
|
||||
has_item_ratio = FALSE
|
||||
light_color = COLOR_RED // muzzle flash
|
||||
|
||||
fire_delay_wielded = 1
|
||||
accuracy_wielded = 2
|
||||
|
||||
projectile_type = /obj/item/projectile/bullet/shard
|
||||
secondary_projectile_type = null
|
||||
secondary_fire_sound = null
|
||||
firemodes = list()
|
||||
modifystate = null
|
||||
|
||||
var/does_process = TRUE
|
||||
|
||||
matter = null
|
||||
origin_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 2, TECH_MAGNET = 3, TECH_ARCANE = 2, TECH_ILLEGAL = 3)
|
||||
|
||||
is_wieldable = TRUE // see if i can get a sprite for this
|
||||
|
||||
/obj/item/gun/energy/rifle/cult/Initialize()
|
||||
. = ..()
|
||||
if(does_process)
|
||||
START_PROCESSING(SSprocessing, src)
|
||||
|
||||
/obj/item/gun/energy/rifle/cult/Destroy()
|
||||
STOP_PROCESSING(SSprocessing, src)
|
||||
return ..()
|
||||
|
||||
/obj/item/gun/energy/rifle/cult/afterattack(atom/A, mob/living/user, adjacent, params)
|
||||
if(adjacent && iscultist(user))
|
||||
if(istype(A, /obj/effect/decal/remains) || istype(A, /obj/effect/decal/cleanable/blood))
|
||||
do_absorb(user, A)
|
||||
return
|
||||
..()
|
||||
|
||||
/obj/item/gun/energy/rifle/cult/proc/do_absorb(var/mob/user, var/atom/A)
|
||||
var/did_absorb
|
||||
if(istype(A, /obj/effect/decal/remains))
|
||||
power_supply.give(power_supply.maxcharge / 2) // remains are hard to get, so they give a full half-recharge
|
||||
did_absorb = TRUE
|
||||
else if(istype(A, /obj/effect/decal/cleanable/blood))
|
||||
power_supply.give(charge_cost)
|
||||
did_absorb = TRUE
|
||||
|
||||
if(did_absorb)
|
||||
user.visible_message("<b>[user]</b> runs \the [src] over \the [A], which it absorbs!", SPAN_CULT("\The [src] absorbs \the [A], powering it up!"))
|
||||
playsound(get_turf(src), 'sound/effects/blobattack.ogg', 30, TRUE)
|
||||
qdel(A)
|
||||
update_icon()
|
||||
|
||||
/obj/item/gun/energy/rifle/cult/mounted
|
||||
max_shots = 15
|
||||
use_external_power = TRUE
|
||||
self_recharge = TRUE
|
||||
has_safety = FALSE
|
||||
does_process = FALSE
|
||||
projectile_type = /obj/item/projectile/bullet/shard/heavy
|
||||
@@ -390,3 +390,12 @@
|
||||
new /obj/effect/temp_visual/nuke(A.loc)
|
||||
explosion(A,2,5,9)
|
||||
..()
|
||||
|
||||
/obj/item/projectile/bullet/shard
|
||||
name = "shard"
|
||||
icon_state = "shard"
|
||||
damage = 15
|
||||
muzzle_type = /obj/effect/projectile/muzzle/bolt
|
||||
|
||||
/obj/item/projectile/bullet/shard/heavy
|
||||
damage = 30
|
||||
Reference in New Issue
Block a user