mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-29 23:17:02 +01:00
/obj/item/projectile --> /obj/projectile (#30411)
* yers * vars * map changes * some comments (clearly not stolen from items) * fix component * summary
This commit is contained in:
@@ -253,7 +253,7 @@
|
||||
/obj/item/ammo_casing/magic/tentacle
|
||||
name = "tentacle"
|
||||
desc = "a tentacle."
|
||||
projectile_type = /obj/item/projectile/tentacle
|
||||
projectile_type = /obj/projectile/tentacle
|
||||
caliber = "tentacle"
|
||||
icon = 'icons/obj/projectiles.dmi'
|
||||
icon_state = "tentacle_end"
|
||||
@@ -269,7 +269,7 @@
|
||||
gun = null
|
||||
return ..()
|
||||
|
||||
/obj/item/projectile/tentacle
|
||||
/obj/projectile/tentacle
|
||||
name = "tentacle"
|
||||
icon_state = "tentacle_end"
|
||||
damage = 0
|
||||
@@ -278,11 +278,11 @@
|
||||
reflectability = REFLECTABILITY_NEVER //Let us not reflect this ever. It's not quite a bullet, and a cling should never wrap its tentacle around itself, it controls its body well
|
||||
var/obj/item/ammo_casing/magic/tentacle/source //the item that shot it
|
||||
|
||||
/obj/item/projectile/tentacle/New(obj/item/ammo_casing/magic/tentacle/tentacle_casing)
|
||||
/obj/projectile/tentacle/New(obj/item/ammo_casing/magic/tentacle/tentacle_casing)
|
||||
source = tentacle_casing
|
||||
..()
|
||||
|
||||
/obj/item/projectile/tentacle/fire(setAngle)
|
||||
/obj/projectile/tentacle/fire(setAngle)
|
||||
if(firer)
|
||||
chain = firer.Beam(src, icon_state = "tentacle", time = INFINITY, maxdistance = INFINITY)
|
||||
..()
|
||||
@@ -298,7 +298,7 @@
|
||||
I.melee_attack_chain(src, C)//Hits the victim with whatever they are holding that is no the zero force tentacle
|
||||
|
||||
|
||||
/obj/item/projectile/tentacle/on_hit(atom/target, blocked = 0)
|
||||
/obj/projectile/tentacle/on_hit(atom/target, blocked = 0)
|
||||
var/mob/living/carbon/human/H = firer
|
||||
source.gun.hit_something = TRUE
|
||||
source.gun.check_should_delete()
|
||||
@@ -369,7 +369,7 @@
|
||||
C.throw_at(get_step_towards(H,C), 8, 2, callback=CALLBACK(H, TYPE_PROC_REF(/mob, tentacle_stab), C))
|
||||
return TRUE
|
||||
|
||||
/obj/item/projectile/tentacle/Destroy()
|
||||
/obj/projectile/tentacle/Destroy()
|
||||
qdel(chain)
|
||||
source = null
|
||||
return ..()
|
||||
|
||||
@@ -133,7 +133,7 @@
|
||||
/obj/item/ammo_casing/magic/grapple_ammo
|
||||
name = "grapple"
|
||||
desc = "a hand"
|
||||
projectile_type = /obj/item/projectile/tether/flayer
|
||||
projectile_type = /obj/projectile/tether/flayer
|
||||
icon = 'icons/obj/clothing/modsuit/mod_modules.dmi'
|
||||
icon_state = "flayer_claw"
|
||||
caliber = "grapple"
|
||||
@@ -149,7 +149,7 @@
|
||||
. = ..()
|
||||
grapple = null
|
||||
|
||||
/obj/item/projectile/tether/flayer
|
||||
/obj/projectile/tether/flayer
|
||||
name = "Grapple Arm"
|
||||
range = 10
|
||||
damage = 15
|
||||
@@ -160,20 +160,20 @@
|
||||
/// The ammo this came from
|
||||
var/obj/item/ammo_casing/magic/grapple_ammo/ammo
|
||||
|
||||
/obj/item/projectile/tether/flayer/Initialize(mapload, obj/item/ammo_casing/magic/grapple_ammo/grapple_casing)
|
||||
/obj/projectile/tether/flayer/Initialize(mapload, obj/item/ammo_casing/magic/grapple_ammo/grapple_casing)
|
||||
. = ..()
|
||||
ammo = grapple_casing
|
||||
|
||||
/obj/item/projectile/tether/flayer/fire(setAngle)
|
||||
/obj/projectile/tether/flayer/fire(setAngle)
|
||||
. = ..()
|
||||
make_chain()
|
||||
SEND_SIGNAL(firer, COMSIG_FLAYER_RETRACT_IMPLANTS)
|
||||
|
||||
/obj/item/projectile/tether/flayer/Destroy()
|
||||
/obj/projectile/tether/flayer/Destroy()
|
||||
. = ..()
|
||||
ammo = null
|
||||
|
||||
/obj/item/projectile/tether/flayer/on_hit(atom/target, blocked = 0)
|
||||
/obj/projectile/tether/flayer/on_hit(atom/target, blocked = 0)
|
||||
. = ..()
|
||||
playsound(target, 'sound/items/zip.ogg', 75, TRUE)
|
||||
if(isliving(target) && blocked < 100)
|
||||
|
||||
@@ -129,7 +129,7 @@
|
||||
desc = "Summon a hand of demonic energy, snaring and throwing its target around, based on your intent. Disarm pushes, grab pulls."
|
||||
gain_desc = "You have gained the ability to snare and disrupt people with demonic appendages."
|
||||
base_cooldown = 30 SECONDS
|
||||
fireball_type = /obj/item/projectile/magic/demonic_grasp
|
||||
fireball_type = /obj/projectile/magic/demonic_grasp
|
||||
|
||||
selection_activated_message = "<span class='notice'>You raise your hand, full of demonic energy! <B>Left-click to cast at a target!</B></span>"
|
||||
selection_deactivated_message = "<span class='notice'>You re-absorb the energy...for now.</span>"
|
||||
@@ -149,17 +149,17 @@
|
||||
V.required_blood = 20
|
||||
return V
|
||||
|
||||
/obj/item/projectile/magic/demonic_grasp
|
||||
/obj/projectile/magic/demonic_grasp
|
||||
name = "demonic grasp"
|
||||
// parry this you filthy casual
|
||||
reflectability = REFLECTABILITY_NEVER
|
||||
icon_state = null
|
||||
|
||||
/obj/item/projectile/magic/demonic_grasp/pixel_move(trajectory_multiplier)
|
||||
/obj/projectile/magic/demonic_grasp/pixel_move(trajectory_multiplier)
|
||||
. = ..()
|
||||
new /obj/effect/temp_visual/demonic_grasp(loc)
|
||||
|
||||
/obj/item/projectile/magic/demonic_grasp/on_hit(atom/target, blocked, hit_zone)
|
||||
/obj/projectile/magic/demonic_grasp/on_hit(atom/target, blocked, hit_zone)
|
||||
. = ..()
|
||||
if(!.)
|
||||
return
|
||||
@@ -184,7 +184,7 @@
|
||||
throw_target = get_step(firer, get_dir(firer, L))
|
||||
L.throw_at(throw_target, 2, 5, spin = FALSE, diagonals_first = TRUE, callback = CALLBACK(src, PROC_REF(create_snare), L)) // pull towards
|
||||
|
||||
/obj/item/projectile/magic/demonic_grasp/proc/create_snare(mob/target)
|
||||
/obj/projectile/magic/demonic_grasp/proc/create_snare(mob/target)
|
||||
new /obj/effect/temp_visual/demonic_snare(target.loc)
|
||||
|
||||
/obj/effect/temp_visual/demonic_grasp
|
||||
|
||||
@@ -323,7 +323,7 @@
|
||||
for(var/mob/living/L in view(8, owner))
|
||||
if(L.affects_vampire(owner))
|
||||
L.adjust_bodytemperature(-3 * TEMPERATURE_DAMAGE_COEFFICIENT) //The dark is cold and unforgiving. Equivelnt to -60 with previous values.
|
||||
for(var/obj/item/projectile/P in view(8, owner))
|
||||
for(var/obj/projectile/P in view(8, owner))
|
||||
if(P.flag == ENERGY || P.flag == LASER)
|
||||
P.damage *= 0.7
|
||||
|
||||
|
||||
Reference in New Issue
Block a user