mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2025-12-10 17:52:36 +00:00
[MIRROR] Ballistic to Energy: Autorifles for Thermal Pistols; Adds .38 Crate to Cargo [MDB IGNORE] (#11340)
* Ballistic to Energy: Autorifles for Thermal Pistols; Adds .38 Crate to Cargo * eeee * Update new_player.dm Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com> Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
This commit is contained in:
@@ -82,3 +82,17 @@
|
||||
select_name = "kill"
|
||||
projectile_type = /obj/projectile/beam/weak/penetrator
|
||||
variance = 0.8
|
||||
|
||||
/obj/item/ammo_casing/energy/nanite
|
||||
projectile_type = /obj/projectile/bullet/c10mm //henk
|
||||
select_name = "bullet"
|
||||
e_cost = 120
|
||||
fire_sound = 'sound/weapons/thermalpistol.ogg'
|
||||
|
||||
/obj/item/ammo_casing/energy/nanite/inferno
|
||||
projectile_type = /obj/projectile/energy/inferno
|
||||
select_name = "inferno"
|
||||
|
||||
/obj/item/ammo_casing/energy/nanite/cryo
|
||||
projectile_type = /obj/projectile/energy/cryo
|
||||
select_name = "cryo"
|
||||
|
||||
@@ -157,3 +157,38 @@
|
||||
|
||||
/obj/item/gun/energy/laser/redtag/hitscan
|
||||
ammo_type = list(/obj/item/ammo_casing/energy/laser/redtag/hitscan)
|
||||
|
||||
//Inferno and Cryo Pistols
|
||||
|
||||
/obj/item/gun/energy/laser/thermal //the common parent of these guns, it just shoots hard bullets, somoene might like that?
|
||||
name = "nanite pistol"
|
||||
desc = "A modified handcannon with a self-replicating reserve of decommissioned weaponized nanites. Spit globs of angry robots into the bad guys."
|
||||
icon_state = "infernopistol"
|
||||
inhand_icon_state = null
|
||||
ammo_type = list(/obj/item/ammo_casing/energy/nanite)
|
||||
shaded_charge = TRUE
|
||||
ammo_x_offset = 1
|
||||
can_flashlight = TRUE
|
||||
flight_x_offset = 15
|
||||
flight_y_offset = 9
|
||||
can_bayonet = TRUE
|
||||
knife_x_offset = 19
|
||||
knife_y_offset = 13
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
dual_wield_spread = 10 //as intended by the coders
|
||||
|
||||
/obj/item/gun/energy/laser/thermal/ComponentInitialize()
|
||||
. = ..()
|
||||
AddElement(/datum/element/empprotection, EMP_PROTECT_SELF|EMP_PROTECT_CONTENTS)
|
||||
|
||||
/obj/item/gun/energy/laser/thermal/inferno //the magma gun
|
||||
name = "inferno pistol"
|
||||
desc = "A modified handcannon with a self-replicating reserve of decommissioned weaponized nanites. Spit globs of molten angry robots into the bad guys. While it doesn't manipulate temperature in of itself, it does cause an violent eruption in anyone who is severely cold."
|
||||
icon_state = "infernopistol"
|
||||
ammo_type = list(/obj/item/ammo_casing/energy/nanite/inferno)
|
||||
|
||||
/obj/item/gun/energy/laser/thermal/cryo //the ice gun
|
||||
name = "cryo pistol"
|
||||
desc = "A modified handcannon with a self-replicating reserve of decommissioned weaponized nanites. Spit shards of frozen angry robots into the bad guys. While it doesn't manipulate temperature in of itself, it does cause an internal explosion in anyone who is severely hot."
|
||||
icon_state = "cryopistol"
|
||||
ammo_type = list(/obj/item/ammo_casing/energy/nanite/cryo)
|
||||
|
||||
50
code/modules/projectiles/projectile/energy/thermal.dm
Normal file
50
code/modules/projectiles/projectile/energy/thermal.dm
Normal file
@@ -0,0 +1,50 @@
|
||||
/obj/projectile/energy/inferno
|
||||
name = "molten nanite bullet"
|
||||
icon_state = "infernoshot"
|
||||
damage = 20
|
||||
damage_type = BURN
|
||||
flag = ENERGY
|
||||
armour_penetration = 10
|
||||
reflectable = NONE
|
||||
wound_bonus = 0
|
||||
bare_wound_bonus = 10
|
||||
impact_effect_type = /obj/effect/temp_visual/impact_effect/red_laser
|
||||
|
||||
/obj/projectile/energy/inferno/on_hit(atom/target, blocked, pierce_hit)
|
||||
..()
|
||||
if(!ishuman(target))
|
||||
return
|
||||
|
||||
var/mob/living/carbon/cold_target = target
|
||||
var/how_cold_is_target = cold_target.bodytemperature
|
||||
var/danger_zone = cold_target.dna.species.bodytemp_cold_damage_limit - 150
|
||||
if(how_cold_is_target < danger_zone)
|
||||
explosion(cold_target, devastation_range = -1, heavy_impact_range = -1, light_impact_range = 2, flame_range = 3) //maybe stand back a bit
|
||||
cold_target.bodytemperature = cold_target.dna.species.bodytemp_normal //avoids repeat explosions, maybe could be used to heat up again?
|
||||
playsound(cold_target, 'sound/weapons/sear.ogg', 30, TRUE, -1)
|
||||
|
||||
/obj/projectile/energy/cryo
|
||||
name = "frozen nanite bullet"
|
||||
icon_state = "cryoshot"
|
||||
damage = 20
|
||||
damage_type = BRUTE
|
||||
armour_penetration = 10
|
||||
flag = ENERGY
|
||||
sharpness = SHARP_POINTY //it's a big ol' shard of ice
|
||||
reflectable = NONE
|
||||
wound_bonus = 0
|
||||
bare_wound_bonus = 10
|
||||
|
||||
/obj/projectile/energy/cryo/on_hit(atom/target, blocked, pierce_hit)
|
||||
..()
|
||||
if(!ishuman(target))
|
||||
return
|
||||
|
||||
var/mob/living/carbon/hot_target = target
|
||||
var/how_hot_is_target = hot_target.bodytemperature
|
||||
var/danger_zone = hot_target.dna.species.bodytemp_heat_damage_limit + 300
|
||||
if(how_hot_is_target > danger_zone)
|
||||
hot_target.Knockdown(100)
|
||||
hot_target.apply_damage(20, BURN)
|
||||
hot_target.bodytemperature = hot_target.dna.species.bodytemp_normal //avoids repeat knockdowns, maybe could be used to cool down again?
|
||||
playsound(hot_target, 'sound/weapons/sonic_jackhammer.ogg', 30, TRUE, -1)
|
||||
Reference in New Issue
Block a user