mirror of
https://github.com/Yawn-Wider/YWPolarisVore.git
synced 2026-08-23 04:58:08 +01:00
HONK
Adds clowns. Lots and lots of clowns
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
/mob/living/simple_mob/mobs_monsters/clowns/big
|
||||
tt_desc = "E Homo sapiens corydon horrificus" //this clown is stronk
|
||||
faction = "clown"
|
||||
|
||||
maxHealth = 200
|
||||
health = 200
|
||||
see_in_dark = 8
|
||||
|
||||
melee_damage_lower = 15
|
||||
melee_damage_upper = 35
|
||||
attack_armor_pen = 5
|
||||
attack_sharp = FALSE
|
||||
attack_edge = FALSE
|
||||
melee_attack_delay = 1 SECOND
|
||||
attacktext = list("mauled")
|
||||
|
||||
ai_holder_type = /datum/ai_holder/simple_mob/melee/clowns
|
||||
|
||||
loot_list = list(/obj/item/weapon/bikehorn = 100)
|
||||
|
||||
|
||||
/mob/living/simple_mob/mobs_monsters/clowns/big
|
||||
min_oxy = 0
|
||||
max_oxy = 500
|
||||
min_tox = 0
|
||||
max_tox = 500
|
||||
min_co2 = 0
|
||||
max_co2 = 500
|
||||
min_n2 = 0
|
||||
max_n2 = 500
|
||||
minbodytemp = 0
|
||||
maxbodytemp = 700
|
||||
|
||||
/datum/ai_holder/simple_mob/melee/clowns
|
||||
can_breakthrough = TRUE
|
||||
violent_breakthrough = FALSE
|
||||
hostile = TRUE // The majority of simplemobs are hostile, gaslamps are nice.
|
||||
cooperative = FALSE
|
||||
retaliate = TRUE //so the monster can attack back
|
||||
returns_home = FALSE
|
||||
can_flee = FALSE
|
||||
speak_chance = 3
|
||||
wander = TRUE
|
||||
base_wander_delay = 9
|
||||
@@ -0,0 +1,38 @@
|
||||
/mob/living/simple_mob/mobs_monsters/clowns/
|
||||
tt_desc = "E Homo sapiens corydon" //this is a clown
|
||||
faction = "clown"
|
||||
|
||||
maxHealth = 100
|
||||
health = 100
|
||||
see_in_dark = 8
|
||||
|
||||
melee_damage_lower = 5
|
||||
melee_damage_upper = 30
|
||||
|
||||
ai_holder_type = /datum/ai_holder/simple_mob/melee/clowns
|
||||
|
||||
loot_list = list(/obj/item/weapon/bikehorn = 100)
|
||||
|
||||
min_oxy = 0
|
||||
max_oxy = 0
|
||||
min_tox = 0
|
||||
max_tox = 0
|
||||
min_co2 = 0
|
||||
max_co2 = 0
|
||||
min_n2 = 0
|
||||
max_n2 = 0
|
||||
minbodytemp = 0
|
||||
maxbodytemp = 700
|
||||
|
||||
|
||||
/datum/ai_holder/simple_mob/melee/clowns
|
||||
can_breakthrough = FALSE
|
||||
violent_breakthrough = FALSE
|
||||
hostile = FALSE // The majority of simplemobs are hostile, gaslamps are nice.
|
||||
cooperative = FALSE
|
||||
retaliate = TRUE //so the monster can attack back
|
||||
returns_home = FALSE
|
||||
can_flee = FALSE
|
||||
speak_chance = 3
|
||||
wander = TRUE
|
||||
base_wander_delay = 9
|
||||
@@ -0,0 +1,77 @@
|
||||
/mob/living/simple_mob/mobs_monsters/clowns/normal
|
||||
name = "Clown"
|
||||
desc = "A regular, every tuesday Clown."
|
||||
tt_desc = "E Homo sapiens corydon" //this is a clown
|
||||
icon = 'icons/mob/mobs_monsters/newclowns.dmi'
|
||||
icon_state = "c_normal"
|
||||
icon_living = "c_normal"
|
||||
icon_dead = "clown_dead"
|
||||
icon_gib = "generic_gib"
|
||||
|
||||
faction = "clown"
|
||||
|
||||
loot_list = list(/obj/item/weapon/bikehorn = 100)
|
||||
|
||||
response_help = "pokes"
|
||||
response_disarm = "gently pushes aside"
|
||||
response_harm = "hits"
|
||||
|
||||
say_list_type = /datum/say_list/clown
|
||||
|
||||
/datum/say_list/clown
|
||||
speak = list("HONK", "Honk!", "Henk!")
|
||||
emote_see = list("honks")
|
||||
|
||||
|
||||
|
||||
|
||||
/mob/living/simple_mob/mobs_monsters/clowns/big/honkmunculus
|
||||
name = "A Clown?"
|
||||
desc = "That clown has some interesting proportions."
|
||||
tt_desc = "E Homo sapiens corydon horrificus" //this is a redspace clown
|
||||
icon = 'icons/mob/mobs_monsters/TGClowns.dmi'
|
||||
icon_state = "honkmunculus"
|
||||
icon_living = "honkmunculus"
|
||||
icon_dead = "honkmunculus_dead"
|
||||
icon_gib = "generic_gib"
|
||||
|
||||
faction = "clown"
|
||||
|
||||
loot_list = list(/obj/item/weapon/bikehorn = 100)
|
||||
|
||||
response_help = "pokes"
|
||||
response_disarm = "gently pushes aside"
|
||||
response_harm = "hits"
|
||||
|
||||
say_list_type = /datum/say_list/clown
|
||||
|
||||
/datum/say_list/clown
|
||||
speak = list("HONK", "Honk!", "Henk!")
|
||||
emote_see = list("honks")
|
||||
|
||||
|
||||
|
||||
/mob/living/simple_mob/mobs_monsters/clowns/big/cluwne
|
||||
name = "A Clown?"
|
||||
desc = "Oh no not that thing."
|
||||
tt_desc = "E Homo sapiens corydon horrificus" //this is a redspace clown
|
||||
icon = 'icons/mob/mobs_monsters/newclowns.dmi'
|
||||
icon_state = "cluwne"
|
||||
icon_living = "cluwne"
|
||||
icon_dead = "cluwne_dead"
|
||||
icon_gib = "generic_gib"
|
||||
|
||||
faction = "clown"
|
||||
|
||||
loot_list = list(/obj/item/weapon/bikehorn = 100)
|
||||
|
||||
response_help = "pokes"
|
||||
response_disarm = "gently pushes aside"
|
||||
response_harm = "hits"
|
||||
|
||||
say_list_type = /datum/say_list/clown
|
||||
|
||||
/datum/say_list/clown
|
||||
speak = list("HONK", "Honk!", "Henk!")
|
||||
emote_see = list("honks")
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
/mob/living/simple_mob/mobs_monsters/clowns/big/c_shift
|
||||
tt_desc = "E Homo sapiens corydon xenos" //this is a redspace clown
|
||||
faction = "clown"
|
||||
|
||||
/mob/living/simple_mob/mobs_monsters/clowns/big/c_shift/New()
|
||||
..()
|
||||
verbs += /mob/living/simple_mob/mobs_monsters/clowns/big/c_shift/proc/phase_shift
|
||||
@@ -0,0 +1,76 @@
|
||||
/mob/living/simple_mob/mobs_monsters/clowns/big/c_shift/anormal
|
||||
name = "Clown"
|
||||
desc = "A regular, every tuesday Clown."
|
||||
tt_desc = "E Homo sapiens corydon" //this is a clown
|
||||
icon = 'icons/mob/mobs_monsters/newclowns.dmi'
|
||||
icon_state = "c_normal"
|
||||
icon_living = "c_normal"
|
||||
icon_dead = "clown_dead"
|
||||
icon_gib = "generic_gib"
|
||||
|
||||
faction = "clown"
|
||||
|
||||
loot_list = list(/obj/item/weapon/bikehorn = 100)
|
||||
|
||||
response_help = "pokes"
|
||||
response_disarm = "gently pushes aside"
|
||||
response_harm = "hits"
|
||||
|
||||
say_list_type = /datum/say_list/clown
|
||||
|
||||
/datum/say_list/clown
|
||||
speak = list("HONK", "Honk!", "Henk!")
|
||||
emote_see = list("honks")
|
||||
|
||||
|
||||
|
||||
|
||||
/mob/living/simple_mob/mobs_monsters/clowns/big/c_shift/honkmunculus
|
||||
name = "A Clown?"
|
||||
desc = "That clown has some interesting proportions."
|
||||
tt_desc = "E Homo sapiens corydon horrificus" //this is a redspace clown
|
||||
icon = 'icons/mob/mobs_monsters/TGClowns.dmi'
|
||||
icon_state = "honkmunculus"
|
||||
icon_living = "honkmunculus"
|
||||
icon_dead = "honkmunculus_dead"
|
||||
icon_gib = "generic_gib"
|
||||
|
||||
faction = "clown"
|
||||
|
||||
loot_list = list(/obj/item/weapon/bikehorn = 100)
|
||||
|
||||
response_help = "pokes"
|
||||
response_disarm = "gently pushes aside"
|
||||
response_harm = "hits"
|
||||
|
||||
say_list_type = /datum/say_list/clown
|
||||
|
||||
/datum/say_list/clown
|
||||
speak = list("HONK", "Honk!", "Henk!")
|
||||
emote_see = list("honks")
|
||||
|
||||
|
||||
|
||||
/mob/living/simple_mob/mobs_monsters/clowns/big/c_shift/cluwne
|
||||
name = "A Clown?"
|
||||
desc = "Oh no not that thing."
|
||||
tt_desc = "E Homo sapiens corydon horrificus" //this is a redspace clown
|
||||
icon = 'icons/mob/mobs_monsters/newclowns.dmi'
|
||||
icon_state = "cluwne"
|
||||
icon_living = "cluwne"
|
||||
icon_dead = "cluwne_dead"
|
||||
icon_gib = "generic_gib"
|
||||
|
||||
faction = "clown"
|
||||
|
||||
loot_list = list(/obj/item/weapon/bikehorn = 100)
|
||||
|
||||
response_help = "pokes"
|
||||
response_disarm = "gently pushes aside"
|
||||
response_harm = "hits"
|
||||
|
||||
say_list_type = /datum/say_list/clown
|
||||
|
||||
/datum/say_list/clown
|
||||
speak = list("HONK", "Honk!", "Henk!")
|
||||
emote_see = list("honks")
|
||||
@@ -0,0 +1,95 @@
|
||||
/mob/living/simple_mob/mobs_monsters/clowns/big/c_shift
|
||||
var/ability_flags = 0 //Flags for active abilities
|
||||
|
||||
// Phase shifting procs (and related procs)
|
||||
/mob/living/simple_mob/mobs_monsters/clowns/big/c_shift/proc/phase_shift()
|
||||
var/turf/T = get_turf(src)
|
||||
if(!T.CanPass(src,T) || loc != T)
|
||||
to_chat(src,"<span class='warning'>You can't use that here!</span>")
|
||||
return FALSE
|
||||
|
||||
forceMove(T)
|
||||
var/original_canmove = canmove
|
||||
SetStunned(0)
|
||||
SetWeakened(0)
|
||||
if(buckled)
|
||||
buckled.unbuckle_mob()
|
||||
if(pulledby)
|
||||
pulledby.stop_pulling()
|
||||
stop_pulling()
|
||||
canmove = FALSE
|
||||
|
||||
//Shifting in
|
||||
if(ability_flags & AB_PHASE_SHIFTED)
|
||||
ability_flags &= ~AB_PHASE_SHIFTED
|
||||
mouse_opacity = 2
|
||||
name = real_name
|
||||
|
||||
|
||||
overlays.Cut()
|
||||
alpha = initial(alpha)
|
||||
invisibility = initial(invisibility)
|
||||
see_invisible = initial(see_invisible)
|
||||
incorporeal_move = initial(incorporeal_move)
|
||||
density = initial(density)
|
||||
force_max_speed = initial(force_max_speed)
|
||||
|
||||
//Cosmetics mostly
|
||||
flick("tp_in",src)
|
||||
custom_emote(1,"phases in!")
|
||||
sleep(5) //The duration of the TP animation
|
||||
canmove = original_canmove
|
||||
|
||||
// Do this after the potential vore, so we get the belly
|
||||
update_icon()
|
||||
|
||||
//Affect nearby lights
|
||||
|
||||
|
||||
for(var/obj/machinery/light/L in machines)
|
||||
if(L.z != z || get_dist(src,L) > 10)
|
||||
continue
|
||||
|
||||
L.flicker(10)
|
||||
|
||||
//Shifting out
|
||||
else
|
||||
ability_flags |= AB_PHASE_SHIFTED
|
||||
mouse_opacity = 0
|
||||
custom_emote(1,"phases out!")
|
||||
real_name = name
|
||||
name = "Something"
|
||||
|
||||
overlays.Cut()
|
||||
flick("tp_out",src)
|
||||
sleep(5)
|
||||
invisibility = INVISIBILITY_LEVEL_TWO
|
||||
see_invisible = INVISIBILITY_LEVEL_TWO
|
||||
update_icon()
|
||||
alpha = 127
|
||||
|
||||
canmove = original_canmove
|
||||
incorporeal_move = TRUE
|
||||
density = FALSE
|
||||
force_max_speed = TRUE
|
||||
|
||||
/mob/living/simple_mob/mobs_monsters/clowns/big/c_shift/UnarmedAttack()
|
||||
if(ability_flags & AB_PHASE_SHIFTED)
|
||||
return FALSE //Nope.
|
||||
|
||||
. = ..()
|
||||
|
||||
/mob/living/simple_mob/mobs_monsters/clowns/big/c_shift/can_fall()
|
||||
if(ability_flags & AB_PHASE_SHIFTED)
|
||||
return FALSE //Nope!
|
||||
|
||||
return ..()
|
||||
|
||||
/mob/living/simple_mob/mobs_monsters/clowns/big/c_shift/zMove(direction)
|
||||
if(ability_flags & AB_PHASE_SHIFTED)
|
||||
var/turf/destination = (direction == UP) ? GetAbove(src) : GetBelow(src)
|
||||
if(destination)
|
||||
forceMove(destination)
|
||||
return TRUE
|
||||
|
||||
return ..()
|
||||
Reference in New Issue
Block a user