This commit is contained in:
kevinz000
2020-04-30 01:39:38 -07:00
parent 615dc71069
commit 8dae739d8f
7 changed files with 20 additions and 9 deletions
+1 -1
View File
@@ -78,7 +78,7 @@
#define STATUS_EFFECT_CRUSHERMARK /datum/status_effect/crusher_mark //if struck with a proto-kinetic crusher, takes a ton of damage
#define STATUS_EFFECT_SAWBLEED /datum/status_effect/saw_bleed //if the bleed builds up enough, takes a ton of damage
#define STATUS_EFFECT_SAWBLEED /datum/status_effect/stacking/saw_bleed //if the bleed builds up enough, takes a ton of damage
#define STATUS_EFFECT_NECKSLICE /datum/status_effect/neck_slice //Creates the flavor messages for the neck-slice
+1 -1
View File
@@ -446,7 +446,7 @@ Turf and target are separate in case you want to teleport some distance from a t
* * offset - Angle offset, 180 input would make the returned target turf be in the opposite direction
*/
/proc/get_ranged_target_turf_direct(atom/A, atom/target, range, offset)
var/angle = ATAN2(target.x - A.x, target.y - A.y)
var/angle = arctan(target.x - A.x, target.y - A.y)
if(offset)
angle += offset
var/turf/T = get_turf(A)
@@ -149,6 +149,8 @@
var/list/megafauna_spawn_list
/// Flora that can spawn in the tunnel, weighted list
var/list/flora_spawn_list
/// Terrain that can spawn in the tunnel, weighted list.
var/list/terrain_spawn_list
/// if the tunnel should keep being created
var/sanity = 1
/// Cave direction to move
@@ -335,6 +337,7 @@
var/spawned_terrain = FALSE
if(is_mining_level(z))
spawned_flora = SpawnFlora(T)
spawned_terrain = SpawnTerrain(T)
if(!spawned_flora && !spawned_terrain) // no rocks beneath mob spawners / mobs.
SpawnMonster(T)
T.ChangeTurf(turf_type, null, CHANGETURF_IGNORE_AIR)
@@ -390,6 +393,17 @@
new randumb(T)
return TRUE
/turf/open/floor/plating/asteroid/airless/cave/proc/SpawnTerrain(turf/T)
if(prob(1))
if(istype(loc, /area/mine/explored) || istype(loc, /area/lavaland/surface/outdoors/explored))
return
var/randumb = pickweight(terrain_spawn_list)
for(var/obj/structure/geyser/F in range(7, T))
if(istype(F, randumb))
return
new randumb(T)
/turf/open/floor/plating/asteroid/snow
gender = PLURAL
name = "snow"
@@ -659,6 +659,7 @@
nemesis_factions = list("mining", "boss")
var/transform_cooldown
var/swiping = FALSE
var/bleed_stacks_per_hit = 3
total_mass = 2.75
total_mass_on = 5
@@ -701,12 +702,11 @@
user.changeNext_move(CLICK_CD_MELEE * 0.5) //when closed, it attacks very rapidly
/obj/item/melee/transforming/cleaving_saw/nemesis_effects(mob/living/user, mob/living/target)
var/datum/status_effect/saw_bleed/B = target.has_status_effect(STATUS_EFFECT_SAWBLEED)
var/datum/status_effect/stacking/saw_bleed/B = target.has_status_effect(STATUS_EFFECT_SAWBLEED)
if(!B)
if(!active) //This isn't in the above if-check so that the else doesn't care about active
target.apply_status_effect(STATUS_EFFECT_SAWBLEED)
target.apply_status_effect(STATUS_EFFECT_SAWBLEED,bleed_stacks_per_hit)
else
B.add_bleed(B.bleed_buildup)
B.add_stacks(bleed_stacks_per_hit)
/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))
@@ -32,7 +32,6 @@ Difficulty: Extremely Hard
blood_volume = BLOOD_VOLUME_NORMAL
deathmessage = "falls to the ground, decaying into plasma particles."
deathsound = "bodyfall"
footstep_type = FOOTSTEP_MOB_HEAVY
attack_action_types = list(/datum/action/innate/megafauna_attack/frost_orbs,
/datum/action/innate/megafauna_attack/snowball_machine_gun,
/datum/action/innate/megafauna_attack/ice_shotgun)
@@ -35,7 +35,6 @@ Difficulty: Hard
blood_volume = BLOOD_VOLUME_NORMAL
deathmessage = "falls, shaking the ground around it"
deathsound = 'sound/effects/gravhit.ogg'
footstep_type = FOOTSTEP_MOB_HEAVY
attack_action_types = list(/datum/action/innate/megafauna_attack/heavy_stomp,
/datum/action/innate/megafauna_attack/teleport,
/datum/action/innate/megafauna_attack/disorienting_scream)
@@ -38,7 +38,6 @@
stat_attack = UNCONSCIOUS
movement_type = FLYING
robust_searching = TRUE
footstep_type = FOOTSTEP_MOB_CLAW
/// Distance the demon will teleport from the target
var/teleport_distance = 3