Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 0 additions & 6 deletions code/_onclick/other_mobs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,6 @@
var/obj/item/clothing/gloves/G = gloves // not typecast specifically enough in defines
if(proximity && istype(G) && G.Touch(A, 1))
return

if(HULK in mutations)
if(proximity) //no telekinetic hulk attack
if(A.attack_hulk(src))
return

if(buckled && isstructure(buckled))
var/obj/structure/S = buckled
if(S.prevents_buckled_mobs_attacking())
Expand Down
7 changes: 0 additions & 7 deletions code/game/atoms.dm
Original file line number Diff line number Diff line change
Expand Up @@ -200,13 +200,6 @@
/atom/proc/mech_melee_attack(obj/mecha/M)
return

/atom/proc/attack_hulk(mob/living/carbon/human/user, does_attack_animation = FALSE)
SEND_SIGNAL(src, COMSIG_ATOM_HULK_ATTACK, user)
if(does_attack_animation)
user.changeNext_move(CLICK_CD_MELEE)
add_attack_logs(user, src, "Punched with hulk powers")
user.do_attack_animation(src, ATTACK_EFFECT_SMASH)

/atom/proc/CheckParts(list/parts_list)
for(var/A in parts_list)
if(istype(A, /datum/reagent))
Expand Down
10 changes: 4 additions & 6 deletions code/game/dna/genes/powers.dm
Original file line number Diff line number Diff line change
Expand Up @@ -136,14 +136,13 @@
..()
block = GLOB.hulkblock

/datum/dna/gene/basic/hulk/activate(mob/M, connected, flags)
/datum/dna/gene/basic/hulk/activate(mob/M)
..()
var/status = CANSTUN | CANWEAKEN | CANPARALYSE | CANPUSH
M.status_flags &= ~status
M.AddSpell(new /obj/effect/proc_holder/spell/aoe_turf/hulk/hulk_transform)

/datum/dna/gene/basic/hulk/deactivate(mob/M, connected, flags)
/datum/dna/gene/basic/hulk/deactivate(mob/M)
..()
M.status_flags |= CANSTUN | CANWEAKEN | CANPARALYSE | CANPUSH
M.RemoveSpell(/obj/effect/proc_holder/spell/aoe_turf/hulk/hulk_transform)

/datum/dna/gene/basic/hulk/OnDrawUnderlays(mob/M, g)
if(HULK in M.mutations)
Expand All @@ -159,7 +158,6 @@
genemutcheck(M, GLOB.hulkblock,null,MUTCHK_FORCED)
M.update_mutations() //update our mutation overlays
M.update_body()
M.status_flags |= CANSTUN | CANWEAKEN | CANPARALYSE | CANPUSH //temporary fix until the problem can be solved.
to_chat(M, "<span class='danger'>You suddenly feel very weak.</span>")

/datum/dna/gene/basic/xray
Expand Down
3 changes: 0 additions & 3 deletions code/game/gamemodes/blob/theblob.dm
Original file line number Diff line number Diff line change
Expand Up @@ -147,9 +147,6 @@
..()
take_damage(power / 400, BURN, "energy")

/obj/structure/blob/hulk_damage()
return 15

/obj/structure/blob/attack_animal(mob/living/simple_animal/M)
if(ROLE_BLOB in M.faction) //sorry, but you can't kill the blob as a blobbernaut
return
Expand Down
7 changes: 0 additions & 7 deletions code/game/machinery/OpTable.dm
Original file line number Diff line number Diff line change
Expand Up @@ -31,13 +31,6 @@
patient = null
return ..()

/obj/machinery/optable/attack_hulk(mob/living/carbon/human/user, does_attack_animation = FALSE)
if(user.a_intent == INTENT_HARM)
..(user, TRUE)
visible_message("<span class='warning'>[user] destroys the operating table!</span>")
qdel(src)
return TRUE

/obj/machinery/optable/CanPass(atom/movable/mover, turf/target, height=0)
if(height == 0)
return TRUE
Expand Down
5 changes: 5 additions & 0 deletions code/game/machinery/doors/airlock.dm
Original file line number Diff line number Diff line change
Expand Up @@ -714,6 +714,11 @@ About the new airlock wires panel:
if(isElectrified())
shock(user, 100)

/obj/machinery/door/airlock/attack_animal(mob/user)
if(istype(user, /mob/living/simple_animal/hulk))
var/mob/living/simple_animal/hulk/H = user
H.attack_hulk(src)

/obj/machinery/door/airlock/attack_hand(mob/user)
if(shock_user(user, 100))
return
Expand Down
5 changes: 5 additions & 0 deletions code/game/machinery/doors/firedoor.dm
Original file line number Diff line number Diff line change
Expand Up @@ -178,6 +178,11 @@
if(user.can_advanced_admin_interact())
forcetoggle(TRUE)

/obj/machinery/door/firedoor/attack_animal(mob/user)
if(istype(user, /mob/living/simple_animal/hulk))
var/mob/living/simple_animal/hulk/H = user
H.attack_hulk(src)

/obj/machinery/door/firedoor/attack_alien(mob/user)
add_fingerprint(user)
if(welded)
Expand Down
9 changes: 0 additions & 9 deletions code/game/mecha/mecha.dm
Original file line number Diff line number Diff line change
Expand Up @@ -569,15 +569,6 @@
attack_generic(user, animal_damage, user.melee_damage_type, "melee", play_soundeffect)
return TRUE

/obj/mecha/hulk_damage()
return 15

/obj/mecha/attack_hulk(mob/living/carbon/human/user)
. = ..()
if(.)
log_message("Attack by hulk. Attacker - [user].", 1)
add_attack_logs(user, OCCUPANT_LOGGING, "Hulk punched mech [src]")

/obj/mecha/blob_act(obj/structure/blob/B)
log_message("Attack by blob. Attacker - [B].")
take_damage(30, BRUTE, "melee", 0, get_dir(src, B))
Expand Down
3 changes: 0 additions & 3 deletions code/game/objects/effects/effects.dm
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,6 @@
/obj/effect/take_damage(damage_amount, damage_type = BRUTE, damage_flag = 0, sound_effect = 1, attack_dir)
return

/obj/effect/attack_hulk(mob/living/carbon/human/user, does_attack_animation = FALSE)
return FALSE

/obj/effect/singularity_act()
qdel(src)
return FALSE
Expand Down
3 changes: 0 additions & 3 deletions code/game/objects/items.dm
Original file line number Diff line number Diff line change
Expand Up @@ -620,9 +620,6 @@ GLOBAL_DATUM_INIT(fire_overlay, /image, image("icon" = 'icons/goonstation/effect
/obj/item/hitby(atom/movable/AM, skipcatch, hitpush, blocked, datum/thrownthing/throwingdatum)
return

/obj/item/attack_hulk(mob/living/carbon/human/user)
return FALSE

/obj/item/attack_animal(mob/living/simple_animal/M)
if(can_be_hit)
return ..()
Expand Down
7 changes: 0 additions & 7 deletions code/game/objects/items/devices/laserpointer.dm
Original file line number Diff line number Diff line change
Expand Up @@ -78,13 +78,6 @@
return
if(!user.IsAdvancedToolUser())
to_chat(user, "<span class='warning'>You don't have the dexterity to do this!</span>")
return
if(ishuman(user))
var/mob/living/carbon/human/H = user
if((HULK in H.mutations) || (NOGUNS in H.dna.species.species_traits))
user << "<span class='warning'>Your fingers can't press the button!</span>"
return

add_fingerprint(user)

//nothing happens if the battery is drained
Expand Down
9 changes: 0 additions & 9 deletions code/game/objects/items/weapons/twohanded.dm
Original file line number Diff line number Diff line change
Expand Up @@ -297,10 +297,6 @@
..()

/obj/item/twohanded/dualsaber/attack(mob/target, mob/living/user)
if(HULK in user.mutations)
to_chat(user, "<span class='warning'>You grip the blade too hard and accidentally close it!</span>")
unwield()
return
..()
if((CLUMSY in user.mutations) && (wielded) && prob(40))
to_chat(user, "<span class='warning'>You twirl around a bit before losing your balance and impaling yourself on the [src].</span>")
Expand All @@ -321,11 +317,6 @@
return ..()
return FALSE

/obj/item/twohanded/dualsaber/attack_hulk(mob/living/carbon/human/user, does_attack_animation = FALSE) //In case thats just so happens that it is still activated on the groud, prevents hulk from picking it up
if(wielded)
to_chat(user, "<span class='warning'>You can't pick up such a dangerous item with your meaty hands without losing fingers, better not to!</span>")
return TRUE

/obj/item/twohanded/dualsaber/green
blade_color = "green"

Expand Down
15 changes: 0 additions & 15 deletions code/game/objects/obj_defense.dm
Original file line number Diff line number Diff line change
Expand Up @@ -71,21 +71,6 @@
take_damage(P.damage, P.damage_type, P.flag, 0, turn(P.dir, 180), P.armour_penetration)

///Called to get the damage that hulks will deal to the obj.
/obj/proc/hulk_damage()
return 150 //the damage hulks do on punches to this object, is affected by melee armor

/obj/attack_hulk(mob/living/carbon/human/user, does_attack_animation = FALSE)
if(user.a_intent == INTENT_HARM)
..(user, TRUE)
visible_message("<span class='danger'>[user] smashes [src]!</span>")
if(density)
playsound(src, 'sound/effects/meteorimpact.ogg', 100, 1)
user.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" ))
else
playsound(src, 'sound/effects/bang.ogg', 50, 1)
take_damage(hulk_damage(), BRUTE, "melee", 0, get_dir(src, user))
return TRUE
return FALSE

/obj/blob_act(obj/structure/blob/B)
if(isturf(loc))
Expand Down
9 changes: 0 additions & 9 deletions code/game/objects/structures/grille.dm
Original file line number Diff line number Diff line change
Expand Up @@ -73,15 +73,6 @@
if(. && !QDELETED(src) && !shock(user, 70))
take_damage(rand(5,10), BRUTE, "melee", 1)

/obj/structure/grille/hulk_damage()
return 60

/obj/structure/grille/attack_hulk(mob/living/carbon/human/user, does_attack_animation = FALSE)
if(user.a_intent == INTENT_HARM)
if(!shock(user, 70))
..(user, TRUE)
return TRUE

/obj/structure/grille/attack_hand(mob/living/user)
. = ..()
if(.)
Expand Down
5 changes: 0 additions & 5 deletions code/game/objects/structures/window.dm
Original file line number Diff line number Diff line change
Expand Up @@ -175,11 +175,6 @@ GLOBAL_LIST_INIT(wcCommon, pick(list("#379963", "#0d8395", "#58b5c3", "#49e46e",
add_fingerprint(user)
playsound(src, 'sound/effects/glassknock.ogg', 50, 1)

/obj/structure/window/attack_hulk(mob/living/carbon/human/user, does_attack_animation = 0)
if(!can_be_reached(user))
return 1
. = ..()

/obj/structure/window/attack_hand(mob/user)
if(!can_be_reached(user))
return
Expand Down
7 changes: 7 additions & 0 deletions code/game/turfs/simulated.dm
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,13 @@

if(TURF_WET_PERMAFROST) // Permafrost
M.slip("the frosted floor", 0, 5, tilesSlipped = 1, walkSafely = 0, slipAny = 1)
var/mob/living/simple_animal/hulk/Hulk = A
if(istype(A, /mob/living/simple_animal/hulk))
if(!Hulk.lying)
playsound(src,'sound/effects/hulk_step.ogg', CHANNEL_BUZZ)
if (istype(A, /mob/living/simple_animal/hulk/clown_hulk))
if(!Hulk.lying)
playsound(src, pick('sound/effects/clownstep1.ogg','sound/effects/clownstep2.ogg'), CHANNEL_BUZZ)

/turf/simulated/ChangeTurf(path, defer_change = FALSE, keep_icon = TRUE, ignore_air = FALSE)
. = ..()
Expand Down
3 changes: 0 additions & 3 deletions code/game/turfs/simulated/floor/indestructible.dm
Original file line number Diff line number Diff line change
Expand Up @@ -27,9 +27,6 @@
/turf/simulated/floor/indestructible/attack_hand(mob/user)
return

/turf/simulated/floor/indestructible/attack_hulk(mob/user, does_attack_animation = FALSE)
return

/turf/simulated/floor/indestructible/attack_animal(mob/living/simple_animal/M)
return

Expand Down
13 changes: 0 additions & 13 deletions code/game/turfs/simulated/walls.dm
Original file line number Diff line number Diff line change
Expand Up @@ -271,19 +271,6 @@
to_chat(M, "<span class='notice'>You push the wall but nothing happens!</span>")
return

/turf/simulated/wall/attack_hulk(mob/user, does_attack_animation = FALSE)
..(user, TRUE)

if(prob(hardness) || rotting)
playsound(src, 'sound/effects/meteorimpact.ogg', 100, 1)
user.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" ))
dismantle_wall(TRUE)
else
playsound(src, 'sound/effects/bang.ogg', 50, 1)
add_dent(WALL_DENT_HIT)
to_chat(user, text("<span class='notice'>You punch the wall.</span>"))
return TRUE

/turf/simulated/wall/attack_hand(mob/user)
user.changeNext_move(CLICK_CD_MELEE)
if(rotting)
Expand Down
3 changes: 0 additions & 3 deletions code/game/turfs/simulated/walls_indestructible.dm
Original file line number Diff line number Diff line change
Expand Up @@ -36,9 +36,6 @@
/turf/simulated/wall/indestructible/attack_hand(mob/user)
return

/turf/simulated/wall/indestructible/attack_hulk(mob/user, does_attack_animation = FALSE)
return

/turf/simulated/wall/indestructible/attack_animal(mob/living/simple_animal/M)
return

Expand Down
7 changes: 0 additions & 7 deletions code/game/turfs/simulated/walls_misc.dm
Original file line number Diff line number Diff line change
Expand Up @@ -115,13 +115,6 @@
for(var/i in 1 to 3)
new/obj/item/clockwork/alloy_shards/small(src)

/turf/simulated/wall/clockwork/attack_hulk(mob/living/user, does_attack_animation = 0)
..()
if(heated)
to_chat(user, "<span class='userdanger'>The wall is searing hot to the touch!</span>")
user.adjustFireLoss(5)
playsound(src, 'sound/machines/fryer/deep_fryer_emerge.ogg', 50, TRUE)

/turf/simulated/wall/clockwork/mech_melee_attack(obj/mecha/M)
..()
if(heated)
Expand Down
18 changes: 0 additions & 18 deletions code/modules/mob/living/carbon/alien/humanoid/humanoid_defense.dm
Original file line number Diff line number Diff line change
@@ -1,21 +1,3 @@
/mob/living/carbon/alien/humanoid/attack_hulk(mob/living/carbon/human/user, does_attack_animation = FALSE)
if(user.a_intent == INTENT_HARM)
if(HAS_TRAIT(user, TRAIT_PACIFISM))
to_chat(user, "<span class='warning'>You don't want to hurt [src]!</span>")
return FALSE
..(user, TRUE)
adjustBruteLoss(15)
var/hitverb = "punched"
if(mob_size < MOB_SIZE_LARGE)
Paralyse(1)
spawn(0)
step_away(src, user, 15)
sleep(1)
step_away(src, user, 15)
hitverb = "slammed"
playsound(loc, "punch", 25, 1, -1)
visible_message("<span class='danger'>[user] has [hitverb] [src]!</span>", "<span class='userdanger'>[user] has [hitverb] [src]!</span>")
return TRUE

/mob/living/carbon/alien/humanoid/attack_hand(mob/living/carbon/human/M)
if(..())
Expand Down
15 changes: 0 additions & 15 deletions code/modules/mob/living/carbon/alien/larva/larva_defense.dm
Original file line number Diff line number Diff line change
Expand Up @@ -16,21 +16,6 @@
visible_message("<span class='danger'>[M] has attempted to kick [src]!</span>", \
"<span class='userdanger'>[M] has attempted to kick [src]!</span>")


/mob/living/carbon/alien/larva/attack_hulk(mob/living/carbon/human/user, does_attack_animation = FALSE)
if(user.a_intent == INTENT_HARM)
if(HAS_TRAIT(user, TRAIT_PACIFISM))
to_chat(user, "<span class='warning'>You don't want to hurt [src]!</span>")
return FALSE
..(user, TRUE)
adjustBruteLoss(5 + rand(1, 9))
spawn(0)
Paralyse(1)
step_away(src, user, 15)
sleep(3)
step_away(src, user, 15)
return TRUE

/mob/living/carbon/alien/larva/do_attack_animation(atom/A, visual_effect_icon, obj/item/used_item, no_effect)
if(!no_effect && !visual_effect_icon)
visual_effect_icon = ATTACK_EFFECT_BITE
Expand Down
3 changes: 0 additions & 3 deletions code/modules/mob/living/carbon/human/human.dm
Original file line number Diff line number Diff line change
Expand Up @@ -1776,9 +1776,6 @@ Eyes need to have significantly high darksight to shine unless the mob has the X
. = ..()

if(G.trigger_guard == TRIGGER_GUARD_NORMAL)
if(HULK in mutations)
to_chat(src, "<span class='warning'>Your meaty finger is much too large for the trigger guard!</span>")
return FALSE
if(NOGUNS in dna.species.species_traits)
to_chat(src, "<span class='warning'>Your fingers don't fit in the trigger guard!</span>")
return FALSE
Expand Down
17 changes: 1 addition & 16 deletions code/modules/mob/living/carbon/human/human_defense.dm
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ emp_act
var/list/safe_list = list(/obj/item/projectile/beam/lasertag, /obj/item/projectile/beam/practice)
if(is_type_in_list(P, safe_list)) //And it's safe
visible_message("<span class='danger'>The [P.name] gets reflected by [src]!</span>", \
"<span class='userdanger'>The [P.name] gets reflected by [src]!</span>")
"<span class='userdanger'>The [P.name] gets reflected by [src]!</span>")
P.reflect_back(src)
return -1 // complete projectile permutation

Expand Down Expand Up @@ -543,21 +543,6 @@ emp_act
w_uniform.add_mob_blood(source)
update_inv_w_uniform()

/mob/living/carbon/human/attack_hulk(mob/living/carbon/human/user, does_attack_animation = FALSE)
if(user.a_intent == INTENT_HARM)
if(HAS_TRAIT(user, TRAIT_PACIFISM))
to_chat(user, "<span class='warning'>You don't want to hurt [src]!</span>")
return FALSE
var/hulk_verb = pick("smash", "pummel")
if(check_shields(user, 15, "the [hulk_verb]ing"))
return
..(user, TRUE)
playsound(loc, user.dna.species.unarmed.attack_sound, 25, 1, -1)
var/message = "[user] has [hulk_verb]ed [src]!"
visible_message("<span class='danger'>[message]</span>", "<span class='userdanger'>[message]</span>")
adjustBruteLoss(15)
return TRUE

/mob/living/carbon/human/attack_hand(mob/user)
if(..()) //to allow surgery to return properly.
return
Expand Down
12 changes: 0 additions & 12 deletions code/modules/mob/living/silicon/silicon_defense.dm
Original file line number Diff line number Diff line change
Expand Up @@ -41,18 +41,6 @@
if(L.a_intent == INTENT_HELP)
visible_message("<span class='notice'>[L.name] rubs its head against [src].</span>")

/mob/living/silicon/attack_hulk(mob/living/carbon/human/user, does_attack_animation = FALSE)
if(user.a_intent == INTENT_HARM)
if(HAS_TRAIT(user, TRAIT_PACIFISM))
to_chat(user, "<span class='warning'>You don't want to hurt [src]!</span>")
return FALSE
..(user, TRUE)
adjustBruteLoss(rand(10, 15))
playsound(loc, "punch", 25, 1, -1)
visible_message("<span class='danger'>[user] has punched [src]!</span>", "<span class='userdanger'>[user] has punched [src]!</span>")
return TRUE
return FALSE

/mob/living/silicon/attack_hand(mob/living/carbon/human/M)
switch(M.a_intent)
if(INTENT_HELP)
Expand Down
Loading