mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-21 20:13:45 +01:00
Corrected CentCom Officer suit and added the Commander suit.
Minor adjustments to alien health icons. Fixed aliens hissing when they were doing their regular emotes. Added death sound to aliens. Aliens can now properly attack/interact with space carp. Adjusted alien damage to monkeys. A few wip sprites. Fixed pulse rifles, again. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@729 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
@@ -904,10 +904,17 @@
|
||||
/obj/item/clothing/under/rank/centcom_officer
|
||||
desc = "It has a CentCom officer rank stripe on it."
|
||||
name = "CentCom Officer Jumpsuit"
|
||||
icon_state = "hop"
|
||||
item_state = "b_suit"
|
||||
icon_state = "officer"
|
||||
item_state = "g_suit"
|
||||
color = "officer"
|
||||
|
||||
/obj/item/clothing/under/rank/centcom_commander
|
||||
desc = "It has a CentCom commander rank stripe on it."
|
||||
name = "CentCom Officer Jumpsuit"
|
||||
icon_state = "centcom"
|
||||
item_state = "dg_suit"
|
||||
color = "centcom"
|
||||
|
||||
/obj/item/clothing/under/rank/head_of_security
|
||||
desc = "It has a Head of Security rank stripe on it."
|
||||
name = "Head of Security Jumpsuit"
|
||||
|
||||
@@ -68,30 +68,30 @@ TELEPORT GUN
|
||||
spawn()
|
||||
A.process()
|
||||
return
|
||||
attack(mob/M as mob, mob/user as mob)
|
||||
..()
|
||||
src.add_fingerprint(user)
|
||||
if ((prob(50) && M.stat < 2))
|
||||
var/mob/living/carbon/human/H = M
|
||||
if ((istype(H, /mob/living/carbon/human) && istype(H, /obj/item/clothing/head) && H.flags & 8 && prob(80)))
|
||||
M << "\blue The helmet protects you from being hit hard in the head!"
|
||||
for(var/mob/O in viewers(M, null))
|
||||
if(O.client)
|
||||
O.show_message(text("\red <B>[] blocked a hit from []!</B>", M, user), 1)
|
||||
return
|
||||
var/time = rand(20, 60)
|
||||
if (prob(90))
|
||||
M.paralysis = max(time, M.paralysis)
|
||||
else
|
||||
M.weakened = max(time, M.weakened)
|
||||
src.force = 35
|
||||
..()
|
||||
if(M.stat != 2) M.stat = 1
|
||||
for(var/mob/O in viewers(M, null))
|
||||
if(O.client)
|
||||
O.show_message(text("\red <B>[] has been rifle butted by []!</B>", M, user), 1, "\red You hear someone fall.", 2)
|
||||
return
|
||||
|
||||
/obj/item/weapon/gun/energy/pulse_rifle/attack(mob/M as mob, mob/user as mob)
|
||||
src.add_fingerprint(user)
|
||||
var/mob/living/carbon/human/H = M
|
||||
|
||||
if ((istype(H, /mob/living/carbon/human) && istype(H, /obj/item/clothing/head) && H.flags & 8 && prob(80)))
|
||||
M << "\blue The helmet protects you from being hit hard in the head!"
|
||||
for(var/mob/O in viewers(M, null))
|
||||
if(O.client)
|
||||
O.show_message(text("\red <B>[] blocked a hit from []!</B>", M, user), 1)
|
||||
return
|
||||
else
|
||||
var/time = rand(20, 60)
|
||||
if (prob(90))
|
||||
M.paralysis = max(time, M.paralysis)
|
||||
else
|
||||
M.weakened = max(time, M.weakened)
|
||||
src.force = 35
|
||||
..()
|
||||
if(M.stat != 2) M.stat = 1
|
||||
for(var/mob/O in viewers(M, null))
|
||||
if(O.client)
|
||||
O.show_message(text("\red <B>[] has been rifle butted by []!</B>", M, user), 1, "\red You hear someone fall.", 2)
|
||||
return
|
||||
|
||||
// AMMO
|
||||
|
||||
@@ -539,10 +539,6 @@ obj/item/weapon/gun/revolver/attackby(obj/item/weapon/ammo/a357/A as obj, mob/us
|
||||
if (O.client) O.show_message(text("\red <B>[] has been pistol whipped with the detectives revolver by []!</B>", M, user), 1, "\red You hear someone fall", 2)
|
||||
return
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// ENERGY GUN
|
||||
|
||||
/obj/item/weapon/gun/energy/proc/update_icon()
|
||||
|
||||
@@ -72,6 +72,39 @@
|
||||
attack_hand(user as mob)
|
||||
return
|
||||
|
||||
attack_alien(var/mob/living/carbon/alien/user as mob) //So aliums can attack and potentially eat space carp.
|
||||
if(src.alive)
|
||||
if (user.a_intent == "help")
|
||||
for(var/mob/O in viewers(src, null))
|
||||
if ((O.client && !( O.blinded )))
|
||||
O.show_message(text("\blue [user] caresses [src.name] with its scythe like arm."), 1)
|
||||
else
|
||||
src.health -= rand(15,30)
|
||||
if(src.aggressive)
|
||||
src.target = user
|
||||
src.state = 1
|
||||
for(var/mob/O in viewers(src, null))
|
||||
if ((O.client && !( O.blinded )))
|
||||
O.show_message(text("\red <B>[] has slashed [src.name]!</B>", user), 1)
|
||||
playsound(src.loc, 'slice.ogg', 25, 1, -1)
|
||||
if(prob(10)) new /obj/decal/cleanable/blood(src.loc)
|
||||
if (src.health <= 0)
|
||||
src.death()
|
||||
else
|
||||
if (user.a_intent == "grab")
|
||||
for(var/mob/N in viewers(user, null))
|
||||
if(N.client)
|
||||
N.show_message(text("\red <B>[user] is attempting to devour the carp!</B>"), 1)
|
||||
if(!do_after(user, 50)) return
|
||||
for(var/mob/N in viewers(user, null))
|
||||
if(N.client)
|
||||
N.show_message(text("\red <B>[user] hungrily devours the carp!</B>"), 1)
|
||||
user.health += rand(10,25)
|
||||
del(src)
|
||||
else
|
||||
user << "\green The creature is already dead."
|
||||
return
|
||||
|
||||
attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
if(src.alive)
|
||||
switch(W.damtype)
|
||||
|
||||
@@ -1,15 +1,5 @@
|
||||
/*NOTES:
|
||||
|
||||
There are several problems with alien powers right now. I am currently trying to fix the dissolve verb so it makes a lot more sense.
|
||||
Alien spit is ridiculous and needs to be toned down. It homes in on targets when it should probably work
|
||||
more like a taser shot but with continuous toxin damage to the target if they are hit.
|
||||
Invisibility works well but 30 seconds is too long. 15 would be good considering it doesn't cost much and makes the alien a lot more
|
||||
robust (can't be canceled by anything short of thermals or a superpower).
|
||||
Vent crawl shouldn't transport the alien to the Prison Station or back. The list should also be in some order since right now it's
|
||||
often difficult to pick the right destination.
|
||||
Resin wall should also apply to mobs so that aliens can envelope them in resin (effectively paralyze them) to successfully hatch more
|
||||
aliens. Perhaps it should also prevent the target from suiciding.
|
||||
All I can think of right now./N
|
||||
These are being worked on.
|
||||
*/
|
||||
|
||||
/mob/living/carbon/alien/humanoid/verb/invis()
|
||||
|
||||
@@ -6,8 +6,8 @@
|
||||
src.stat = 2
|
||||
|
||||
if (!gibbed)
|
||||
|
||||
// emote("deathgasp") // Dead -- Skie // Doesn't work due to stat == 2 -- Urist
|
||||
playsound(src.loc, 'hiss6.ogg', 80, 1, 1)
|
||||
for(var/mob/O in viewers(src, null))
|
||||
O.show_message("<B>[src]</B> lets out a waning guttural screech, green blood bubbling from its maw...", 1)
|
||||
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
m_type = 2
|
||||
if ("deathgasp")
|
||||
message = "<B>[src]</B> lets out a waning guttural screech, green blood bubbling from its maw..."
|
||||
m_type = 1
|
||||
m_type = 2
|
||||
if("scratch")
|
||||
if (!src.restrained())
|
||||
message = "<B>The [src.name]</B> scratches."
|
||||
@@ -99,6 +99,8 @@
|
||||
if ((message && src.stat == 0))
|
||||
if (act == "roar")
|
||||
playsound(src.loc, 'hiss5.ogg', 40, 1, 1)
|
||||
if (act == "deathgasp")
|
||||
playsound(src.loc, 'hiss6.ogg', 80, 1, 1)
|
||||
if (m_type & 1)
|
||||
for(var/mob/O in viewers(src, null))
|
||||
O.show_message(message, m_type)
|
||||
|
||||
@@ -11,7 +11,8 @@
|
||||
message = trim(copytext(sanitize(message), 1, MAX_MESSAGE_LEN))
|
||||
src.alien_talk(message)
|
||||
else
|
||||
playsound(src.loc, "hiss", 25, 1, 1)//So aliens can hiss while they hiss yo/N
|
||||
if (copytext(message, 1, 2) != "*" && !src.stat)
|
||||
playsound(src.loc, "hiss", 25, 1, 1)//So aliens can hiss while they hiss yo/N
|
||||
return ..(message)
|
||||
else
|
||||
|
||||
|
||||
@@ -285,7 +285,8 @@
|
||||
|
||||
if (M.a_intent == "help")
|
||||
for(var/mob/O in viewers(src, null))
|
||||
O.show_message(text("\blue [M] caresses [src] with its scythe like arm."), 1)
|
||||
if ((O.client && !( O.blinded )))
|
||||
O.show_message(text("\blue [M] caresses [src] with its scythe like arm."), 1)
|
||||
else
|
||||
if (M.a_intent == "hurt")
|
||||
if ((prob(95) && src.health > 0))
|
||||
@@ -294,7 +295,7 @@
|
||||
O.show_message(text("\red <B>[] has slashed [src.name]!</B>", M), 1)
|
||||
|
||||
playsound(src.loc, 'slice.ogg', 25, 1, -1)
|
||||
var/damage = rand(5, 10)
|
||||
var/damage = rand(15, 30)
|
||||
if (prob(40))
|
||||
damage = rand(20, 40)
|
||||
if (src.paralysis < 5)
|
||||
|
||||
Reference in New Issue
Block a user