mirror of
https://github.com/SPLURT-Station/S.P.L.U.R.T-Station-13.git
synced 2026-08-28 07:07:08 +01:00
Merge remote-tracking branch 'upstream/master'
This commit is contained in:
@@ -29,8 +29,10 @@
|
||||
var/brightness_on = 7
|
||||
var/wielded = FALSE // track wielded status on item
|
||||
|
||||
/obj/item/kinetic_crusher/cyborg //probably give this a unique sprite later
|
||||
desc = "An integrated version of the standard kinetic crusher with a grinded down axe head to dissuade mis-use against crewmen. Deals damage equal to the standard crusher against creatures, however."
|
||||
/obj/item/kinetic_crusher/cyborg
|
||||
icon_state = "crusher-cyborg"
|
||||
item_state = "crusher0-cyborg"
|
||||
desc = "An integrated version of the standard kinetic crusher with a kinetic dampener module installed to limit harmful usage misusage against organics. Deals damage equal to the standard crusher against creatures."
|
||||
force = 10 //wouldn't want to give a borg a 20 brute melee weapon unemagged now would we
|
||||
detonation_damage = 60
|
||||
wielded = 1
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
desc = "A scanner that checks surrounding rock for useful minerals; it can also be used to stop gibtonite detonations."
|
||||
name = "manual mining scanner"
|
||||
icon = 'icons/obj/device.dmi'
|
||||
icon_state = "mining1"
|
||||
icon_state = "miningmanual"
|
||||
item_state = "analyzer"
|
||||
lefthand_file = 'icons/mob/inhands/equipment/tools_lefthand.dmi'
|
||||
righthand_file = 'icons/mob/inhands/equipment/tools_righthand.dmi'
|
||||
@@ -33,7 +33,7 @@
|
||||
/obj/item/t_scanner/adv_mining_scanner
|
||||
desc = "A scanner that automatically checks surrounding rock for useful minerals; it can also be used to stop gibtonite detonations. This one has an extended range."
|
||||
name = "advanced automatic mining scanner"
|
||||
icon_state = "mining0"
|
||||
icon_state = "adv_mining0"
|
||||
item_state = "analyzer"
|
||||
lefthand_file = 'icons/mob/inhands/equipment/tools_lefthand.dmi'
|
||||
righthand_file = 'icons/mob/inhands/equipment/tools_righthand.dmi'
|
||||
@@ -47,6 +47,7 @@
|
||||
/obj/item/t_scanner/adv_mining_scanner/lesser
|
||||
name = "automatic mining scanner"
|
||||
desc = "A scanner that automatically checks surrounding rock for useful minerals; it can also be used to stop gibtonite detonations."
|
||||
icon_state = "mining0"
|
||||
range = 4
|
||||
cooldown = 50
|
||||
|
||||
|
||||
@@ -95,7 +95,7 @@
|
||||
/obj/item/pickaxe/drill
|
||||
name = "mining drill"
|
||||
icon_state = "handdrill"
|
||||
item_state = "jackhammer"
|
||||
item_state = "handdrill"
|
||||
slot_flags = ITEM_SLOT_BELT
|
||||
toolspeed = 0.6 //available from roundstart, faster than a pickaxe.
|
||||
usesound = 'sound/weapons/drill.ogg'
|
||||
@@ -115,12 +115,14 @@
|
||||
/obj/item/pickaxe/drill/diamonddrill
|
||||
name = "diamond-tipped mining drill"
|
||||
icon_state = "diamonddrill"
|
||||
item_state = "diamonddrill"
|
||||
toolspeed = 0.4
|
||||
desc = "Yours is the drill that will pierce the heavens!"
|
||||
|
||||
/obj/item/pickaxe/drill/cyborg/diamond //This is the BORG version!
|
||||
name = "diamond-tipped cyborg mining drill" //To inherit the NODROP_1 flag, and easier to change borg specific drill mechanics.
|
||||
icon_state = "diamonddrill"
|
||||
item_state = "diamonddrill"
|
||||
toolspeed = 0.4
|
||||
digrange = 2
|
||||
|
||||
|
||||
@@ -770,6 +770,12 @@
|
||||
total_mass_on = 5
|
||||
attack_speed = 0
|
||||
attack_unwieldlyness = CLICK_CD_MELEE * 0.5
|
||||
/// how much stamina does it cost to roll?
|
||||
var/roll_stamcost = 15
|
||||
/// how far are we rolling?
|
||||
var/roll_range = 3
|
||||
/// do you spin when dodgerolling
|
||||
var/roll_orientation = TRUE
|
||||
|
||||
/obj/item/melee/transforming/cleaving_saw/examine(mob/user)
|
||||
. = ..()
|
||||
@@ -815,6 +821,11 @@
|
||||
else
|
||||
B.add_stacks(bleed_stacks_per_hit)
|
||||
|
||||
/obj/item/melee/transforming/cleaving_saw/AltClick(mob/user)
|
||||
. = ..()
|
||||
roll_orientation = !roll_orientation
|
||||
to_chat(user, span_notice("You are now [roll_orientation ? "rolling" : "quick-stepping"] when you dodge. (This only affects if you spin or not during a dodge.)"))
|
||||
|
||||
/obj/item/melee/transforming/cleaving_saw/attack(mob/living/target, mob/living/carbon/human/user)
|
||||
if(!active || swiping || !target.density || get_turf(target) == get_turf(user))
|
||||
if(!active)
|
||||
@@ -834,6 +845,43 @@
|
||||
melee_attack_chain(user, L)
|
||||
swiping = FALSE
|
||||
|
||||
/obj/item/melee/transforming/cleaving_saw/alt_pre_attack(atom/A, mob/living/user, params)
|
||||
return TRUE // Let's dance.
|
||||
|
||||
/obj/item/melee/transforming/cleaving_saw/altafterattack(atom/target, mob/living/user, proximity_flag, click_parameters)
|
||||
if(user.IsImmobilized()) // no free dodgerolls
|
||||
return
|
||||
var/turf/where_to = get_turf(target)
|
||||
user.apply_damage(damage = roll_stamcost, damagetype = STAMINA)
|
||||
user.Immobilize(0.8 SECONDS) // you dont get to adjust your roll
|
||||
user.throw_at(where_to, range = roll_range, speed = 1, force = MOVE_FORCE_NORMAL, spin = roll_orientation)
|
||||
user.apply_status_effect(/datum/status_effect/dodgeroll_iframes)
|
||||
playsound(user, 'sound/effects/body-armor-rolling.ogg', 50, FALSE)
|
||||
return ..()
|
||||
|
||||
/datum/status_effect/dodgeroll_iframes
|
||||
id = "dodgeroll_dodging"
|
||||
alert_type = null
|
||||
status_type = STATUS_EFFECT_REFRESH
|
||||
duration = 0.8 SECONDS // worth tweaking?
|
||||
|
||||
/datum/status_effect/dodgeroll_iframes/on_apply()
|
||||
. = ..()
|
||||
RegisterSignal(owner, COMSIG_LIVING_RUN_BLOCK, .proc/trolled)
|
||||
|
||||
/datum/status_effect/dodgeroll_iframes/on_remove()
|
||||
UnregisterSignal(owner, list(
|
||||
COMSIG_LIVING_RUN_BLOCK
|
||||
))
|
||||
return ..()
|
||||
|
||||
/datum/status_effect/dodgeroll_iframes/proc/trolled(mob/living/source, real_attack, object, damage, attack_text, attack_type, armour_penetration, attacker, def_zone, return_list)
|
||||
SIGNAL_HANDLER
|
||||
owner.balloon_alert_to_viewers("missed!")
|
||||
playsound(src, 'sound/weapons/thudswoosh.ogg', 50, TRUE, -1)
|
||||
return_list[BLOCK_RETURN_REDIRECT_METHOD] = REDIRECT_METHOD_PASSTHROUGH
|
||||
return BLOCK_SUCCESS | BLOCK_SHOULD_REDIRECT | BLOCK_TARGET_DODGED
|
||||
|
||||
//Dragon
|
||||
|
||||
/obj/structure/closet/crate/necropolis/dragon
|
||||
|
||||
Reference in New Issue
Block a user