Skip to content

Commit

Permalink
initial Commit
Browse files Browse the repository at this point in the history
initial commit

Apply suggestions from code review

Update waw.dm

Update waw.dm

records

changes heaven

Update burrowing_heaven.dm

Update burrowing_heaven.dm

records

burrowing heaven EGO

Co-Authored-By: [̸R̵e̵d̴a̴c̶t̸e̸d̴]̵ <[email protected]>
  • Loading branch information
Kitsunemitsu and LanceSmites328 committed Apr 15, 2024
1 parent 6379fd5 commit 2679977
Show file tree
Hide file tree
Showing 6 changed files with 165 additions and 1 deletion.
Binary file modified ModularTegustation/Teguicons/96x96.dmi
Binary file not shown.
9 changes: 9 additions & 0 deletions code/datums/abnormality/_ego_datum/waw.dm
Original file line number Diff line number Diff line change
Expand Up @@ -397,6 +397,15 @@
item_path = /obj/item/ego_weapon/rimeshank
cost = 50

//Burrowing Heaven - Heaven
/datum/ego_datum/armor/heaven
item_path = /obj/item/clothing/suit/armor/ego_gear/waw/heaven
cost = 50

/datum/ego_datum/weapon/heaven
item_path = /obj/item/ego_weapon/heaven
cost = 50

// Parasite Tree - Hypocrisy
/datum/ego_datum/armor/hypocrisy
item_path = /obj/item/clothing/suit/armor/ego_gear/waw/hypocrisy
Expand Down
9 changes: 9 additions & 0 deletions code/modules/clothing/suits/ego_gear/waw.dm
Original file line number Diff line number Diff line change
Expand Up @@ -381,6 +381,15 @@ Any attempt to code risk class armor will result in a 10 day Github ban.*/
FORTITUDE_ATTRIBUTE = 80
)

/obj/item/clothing/suit/armor/ego_gear/waw/heaven
name = "burrowing heaven"
desc = "As it spreads its wings for an old god, a heaven just for you burrows its way."
icon_state = "heaven"
armor = list(RED_DAMAGE = 30, WHITE_DAMAGE = 40, BLACK_DAMAGE = 40, PALE_DAMAGE = 30) // 140
attribute_requirements = list(
FORTITUDE_ATTRIBUTE = 80
)

/obj/item/clothing/suit/armor/ego_gear/waw/faith //pure-hearted believer
name = "untainted faith"
desc = "To have absolute faith on something that gives you salvation."
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,136 @@
/mob/living/simple_animal/hostile/abnormality/burrowingheaven
name = "Burrowing Heaven"
desc = "A giant, bloody red tree."
icon = 'ModularTegustation/Teguicons/96x96.dmi'
icon_state = "burrowingheaven_contained"
icon_living = "burrowingheaven_contained"
pixel_x = -32
base_pixel_x = -32
del_on_death = TRUE
maxHealth = 600 //It normally just counters
health = 600
move_to_delay = 0
damage_coeff = list(BRUTE = 1, RED_DAMAGE = 0, WHITE_DAMAGE = 1.2, BLACK_DAMAGE = 0.5, PALE_DAMAGE = 1.5)
stat_attack = HARD_CRIT
melee_damage_lower = 99
melee_damage_upper = 97
melee_damage_type = BLACK_DAMAGE
attack_verb_continuous = "stabs"
attack_verb_simple = "stabs"
faction = list("hostile")
can_breach = TRUE
threat_level = WAW_LEVEL
start_qliphoth = 4
wander = 0
work_chances = list(
ABNORMALITY_WORK_INSTINCT = 0,
ABNORMALITY_WORK_INSIGHT = list(30, 40, 40, 50, 50),
ABNORMALITY_WORK_ATTACHMENT = list(40, 40, 40, 30, 20),
ABNORMALITY_WORK_REPRESSION = list(40, 45, 50, 55, 60)
)
work_damage_amount = 10
work_damage_type = BLACK_DAMAGE

ego_list = list(
/datum/ego_datum/weapon/heaven,
/datum/ego_datum/armor/heaven
)
// gift_type = /datum/ego_gifts/heaven

var/seen //Are you being looked at right now?
var/solo_punish //Are you alone?
var/abno_seen //Is an abnormality in view?
abnormality_origin = ABNORMALITY_ORIGIN_LOBOTOMY

//Sight Check
/mob/living/simple_animal/hostile/abnormality/burrowingheaven/Life()
. = ..()
solo_punish = FALSE
for(var/mob/living/carbon/human/H in GLOB.player_list)
if(H.stat != DEAD) //Someone else is alive, just not on the Z level. Probably a manager. Thus, someone else COULD see this thing
solo_punish = TRUE

//Who is watching us
var/people_watching
for(var/mob/living/carbon/human/L in viewers(world.view + 1, src))
if(L.client && CanAttack(L) && L.stat != DEAD)
if(!L.is_blind())
people_watching += 1


//Only gets mad if you are NOT alone.
if(people_watching > 1)
seen = TRUE
else
seen = FALSE

//Checking for abnos.
abno_seen = FALSE
for(var/mob/living/simple_animal/hostile/abnormality/B in view(10))
abno_seen = TRUE
break


//Stuff that needs sight check
/mob/living/simple_animal/hostile/abnormality/burrowingheaven/Move()
return FALSE

/mob/living/simple_animal/hostile/abnormality/burrowingheaven/AttackingTarget()
return FALSE



//Counter
//Ranged stuff
/mob/living/simple_animal/hostile/abnormality/burrowingheaven/bullet_act(obj/projectile/Proj)
..()
var/mob/living/carbon/human/H = Proj.firer
if(abno_seen)
Punishment(H)


/mob/living/simple_animal/hostile/abnormality/burrowingheaven/attacked_by(obj/item/I, mob/living/user)
..()
if(!user)
return
if(abno_seen)
Punishment(user)

/mob/living/simple_animal/hostile/abnormality/burrowingheaven/proc/Punishment(mob/living/sinner)
to_chat(sinner, span_userdanger("Burrowing Heaven sears into your skull!"))
sinner.apply_damage(30, BLACK_DAMAGE, null, sinner.run_armor_check(null, BLACK_DAMAGE), spread_damage = TRUE)
new /obj/effect/temp_visual/dir_setting/bloodsplatter(get_turf(sinner), pick(GLOB.alldirs))

//Chufflin around
/mob/living/simple_animal/hostile/abnormality/burrowingheaven/BreachEffect(mob/living/carbon/human/user, breach_type)
. = ..()
teleport()

/mob/living/simple_animal/hostile/abnormality/burrowingheaven/proc/teleport()
var/turf/T = pick(GLOB.department_centers)
forceMove(T)
addtimer(CALLBACK(src, .proc/aoe), 2 SECONDS)

//The actual attack
/mob/living/simple_animal/hostile/abnormality/burrowingheaven/proc/aoe()
for(var/mob/living/carbon/human/H in view(7))
to_chat(H, span_userdanger("Burrowing Heaven burns into your skull!"))
H.apply_damage(70, BLACK_DAMAGE, null, H.run_armor_check(null, BLACK_DAMAGE), spread_damage = TRUE)
new /obj/effect/temp_visual/dir_setting/bloodsplatter(get_turf(H), pick(GLOB.alldirs))
addtimer(CALLBACK(src, .proc/teleport), 50 SECONDS)

//Work stuff
//Need 2 people to actually work on it
/mob/living/simple_animal/hostile/abnormality/burrowingheaven/ChanceWorktickOverride(mob/living/carbon/human/user, work_chance, init_work_chance, work_type)
if(!seen) //If you're only considered "seen" because the other living player(s) are all on another Z level, disregard it during work specifically.
to_chat(user, "<span class='warning'>You are injured by [src]!</span>") // Keeping it clear that the bad work is from being seen and not just luck.
new /obj/effect/temp_visual/dir_setting/bloodsplatter(get_turf(user), pick(GLOB.alldirs))
datum_reference.qliphoth_change(-1)
return 0
return init_work_chance

/mob/living/simple_animal/hostile/abnormality/burrowingheaven/BreachEffect(mob/living/carbon/human/user)
..()
icon_living = "burrowingheaven_breach"
icon_state = icon_living
GiveTarget(user)
11 changes: 10 additions & 1 deletion code/modules/paperwork/records/info/waw.dm
Original file line number Diff line number Diff line change
Expand Up @@ -422,7 +422,6 @@
"NOTICE: Employees preforming repression work to destroy D-04-108's flowers prevented the transformation of employees who were transforming into D-04-108-1.") //yes i did put this hint in twice.

//Dream of Black Swan
//Parasite Tree
/obj/item/paper/fluff/info/waw/black_swan
abno_type = /mob/living/simple_animal/hostile/abnormality/black_swan
abno_code = "F-02-70"
Expand Down Expand Up @@ -519,3 +518,13 @@
"When the above occurred, F-01-57 entered a state of apparent heightened emotion, attacking more rapidly, dealing and taking more damage, and ignoring other targets.",
"When F-01-57 was denied a killing blow to F-02-58, the abnormality went on a rampage."
)

//Burrowing Heaven
/obj/item/paper/fluff/info/waw/heaven
abno_type = /mob/living/simple_animal/hostile/abnormality/burrowingheaven
abno_code = "O-04-72"
abno_info = list(
"Work with The Burrowing Heaven must proceed while the Containment Unit is viewable by more than two people.",
"Commencing work while in the view of only one person will cause The Burrowing Heaven's counter to decrease.",
"Burrowing Heaven must be attacked with another abnormality in sight.",)

1 change: 1 addition & 0 deletions lobotomy-corp13.dme
Original file line number Diff line number Diff line change
Expand Up @@ -2855,6 +2855,7 @@
#include "code\modules\mob\living\simple_animal\abnormality\waw\big_bird.dm"
#include "code\modules\mob\living\simple_animal\abnormality\waw\big_wolf.dm"
#include "code\modules\mob\living\simple_animal\abnormality\waw\black_swan.dm"
#include "code\modules\mob\living\simple_animal\abnormality\waw\burrowing_heaven.dm"
#include "code\modules\mob\living\simple_animal\abnormality\waw\clouded_monk.dm"
#include "code\modules\mob\living\simple_animal\abnormality\waw\clown_smiling.dm"
#include "code\modules\mob\living\simple_animal\abnormality\waw\contract.dm"
Expand Down

0 comments on commit 2679977

Please sign in to comment.