mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-22 03:27:05 +01:00
-Larva grow a little faster (an extra growth per life) when on weeds or when breathing in plasma.
-Observer following is cancelled when there's no client. -Made facehuggers/eggs a little smarter. They won't try to go after people with masks covering their mouths (as that kills them), however when they're thrown they will still try to attach to the person. -Improved alien stats(). You'll be able to see the max plasma and larva will see the escape shuttle. -Blessing with a fire extinguisher wasn't working because of the volume check. Removed the check. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4842 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
@@ -426,6 +426,8 @@ Alien plants should do something if theres a lot of poison
|
||||
healthcheck()
|
||||
|
||||
/obj/effect/alien/egg/HasProximity(atom/movable/AM as mob|obj)
|
||||
if(!CanHug(AM))
|
||||
return
|
||||
if(status == GROWN && iscarbon(AM) && !isalien(AM))
|
||||
|
||||
var/mob/living/carbon/C = AM
|
||||
@@ -439,6 +441,8 @@ Alien plants should do something if theres a lot of poison
|
||||
Burst(0)
|
||||
var/obj/item/clothing/mask/facehugger/child = GetFacehugger()
|
||||
child.loc = pos
|
||||
if(!CanHug(AM))
|
||||
return
|
||||
if(AM && in_range(AM, pos))
|
||||
child.Attach(AM)
|
||||
|
||||
|
||||
@@ -177,7 +177,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
|
||||
|
||||
if(istype(usr, /mob/dead/observer))
|
||||
var/list/mobs = getmobs()
|
||||
var/input = input("Please, select a mob!", "Follow Mob", null, null) as null|anything in mobs
|
||||
var/input = input("Please, select a mob!", "Haunt", null, null) as null|anything in mobs
|
||||
var/mob/target = mobs[input]
|
||||
if(target && target != usr)
|
||||
spawn(0)
|
||||
@@ -186,6 +186,8 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
|
||||
var/turf/T = get_turf(target)
|
||||
if(!T)
|
||||
break
|
||||
if(!client)
|
||||
break
|
||||
src.loc = T
|
||||
pos = src.loc
|
||||
sleep(15)
|
||||
|
||||
@@ -48,9 +48,6 @@
|
||||
/mob/living/carbon/alien/eyecheck()
|
||||
return 2
|
||||
|
||||
/mob/living/carbon/alien/New()
|
||||
..()
|
||||
|
||||
/mob/living/carbon/alien/proc/handle_environment(var/datum/gas_mixture/environment)
|
||||
|
||||
//If there are alien weeds on the ground then heal if needed or give some toxins
|
||||
@@ -146,6 +143,21 @@
|
||||
/mob/living/carbon/alien/Process_Spaceslipping()
|
||||
return 0 // Don't slip in space.
|
||||
|
||||
/mob/living/carbon/alien/Stat()
|
||||
|
||||
stat(null, "Intent: [a_intent]")
|
||||
stat(null, "Move Mode: [m_intent]")
|
||||
|
||||
..()
|
||||
|
||||
if (client.statpanel == "Status")
|
||||
stat(null, "Plasma Stored: [getPlasma()]/[max_plasma]")
|
||||
|
||||
if(emergency_shuttle)
|
||||
if(emergency_shuttle.online && emergency_shuttle.location < 2)
|
||||
var/timeleft = emergency_shuttle.timeleft()
|
||||
if (timeleft)
|
||||
stat(null, "ETA-[(timeleft / 60) % 60]:[add_zero(num2text(timeleft % 60), 2)]")
|
||||
|
||||
/mob/living/carbon/alien/Stun(amount)
|
||||
if(status_flags & CANSTUN)
|
||||
|
||||
@@ -60,26 +60,6 @@
|
||||
tally = -1 // hunters go supersuperfast
|
||||
return (tally + move_delay_add + config.alien_delay)
|
||||
|
||||
//This needs to be fixed
|
||||
/mob/living/carbon/alien/humanoid/Stat()
|
||||
..()
|
||||
|
||||
statpanel("Status")
|
||||
if (client && client.holder)
|
||||
stat(null, "([x], [y], [z])")
|
||||
|
||||
stat(null, "Intent: [a_intent]")
|
||||
stat(null, "Move Mode: [m_intent]")
|
||||
|
||||
if (client.statpanel == "Status")
|
||||
stat(null, "Plasma Stored: [getPlasma()]")
|
||||
|
||||
if(emergency_shuttle)
|
||||
if(emergency_shuttle.online && emergency_shuttle.location < 2)
|
||||
var/timeleft = emergency_shuttle.timeleft()
|
||||
if (timeleft)
|
||||
stat(null, "ETA-[(timeleft / 60) % 60]:[add_zero(num2text(timeleft % 60), 2)]")
|
||||
|
||||
///mob/living/carbon/alien/humanoid/bullet_act(var/obj/item/projectile/Proj) taken care of in living
|
||||
|
||||
/mob/living/carbon/alien/humanoid/emp_act(severity)
|
||||
|
||||
@@ -6,6 +6,8 @@
|
||||
|
||||
maxHealth = 25
|
||||
health = 25
|
||||
storedPlasma = 50
|
||||
max_plasma = 50
|
||||
|
||||
var/amount_grown = 0
|
||||
var/max_grown = 200
|
||||
@@ -56,24 +58,12 @@
|
||||
//This needs to be fixed
|
||||
/mob/living/carbon/alien/larva/Stat()
|
||||
..()
|
||||
stat(null, "Progress: [amount_grown]/[max_grown]")
|
||||
|
||||
statpanel("Status")
|
||||
if (client && client.holder)
|
||||
stat(null, "([x], [y], [z])")
|
||||
|
||||
stat(null, "Intent: [a_intent]")
|
||||
stat(null, "Move Mode: [m_intent]")
|
||||
|
||||
if (client.statpanel == "Status")
|
||||
stat(null, "Progress: [amount_grown]/[max_grown]")
|
||||
stat(null, "Plasma Stored: [getPlasma()]")
|
||||
|
||||
|
||||
///mob/living/carbon/alien/larva/bullet_act(var/obj/item/projectile/Proj) taken care of in living
|
||||
|
||||
|
||||
/mob/living/carbon/alien/larva/emp_act(severity)
|
||||
..()
|
||||
/mob/living/carbon/alien/larva/adjustToxLoss(amount)
|
||||
if(stat != DEAD)
|
||||
amount_grown = min(amount_grown + 1, max_grown)
|
||||
..(amount)
|
||||
|
||||
|
||||
/mob/living/carbon/alien/larva/ex_act(severity)
|
||||
|
||||
@@ -5,8 +5,8 @@
|
||||
var/const/MIN_IMPREGNATION_TIME = 100 //time it takes to impregnate someone
|
||||
var/const/MAX_IMPREGNATION_TIME = 150
|
||||
|
||||
var/const/MIN_ACTIVE_TIME = 300 //time between being dropped and going idle
|
||||
var/const/MAX_ACTIVE_TIME = 600
|
||||
var/const/MIN_ACTIVE_TIME = 200 //time between being dropped and going idle
|
||||
var/const/MAX_ACTIVE_TIME = 400
|
||||
|
||||
/obj/item/clothing/mask/facehugger
|
||||
name = "alien"
|
||||
@@ -79,7 +79,7 @@ var/const/MAX_ACTIVE_TIME = 600
|
||||
Attach(M)
|
||||
|
||||
/obj/item/clothing/mask/facehugger/HasEntered(atom/target)
|
||||
Attach(target)
|
||||
HasProximity(target)
|
||||
return
|
||||
|
||||
/obj/item/clothing/mask/facehugger/dropped()
|
||||
@@ -203,5 +203,15 @@ var/const/MAX_ACTIVE_TIME = 600
|
||||
return
|
||||
|
||||
/obj/item/clothing/mask/facehugger/HasProximity(atom/movable/AM as mob|obj)
|
||||
if(istype(AM , /mob/living/))
|
||||
if(CanHug(AM))
|
||||
Attach(AM)
|
||||
|
||||
/proc/CanHug(var/mob/M)
|
||||
if(!iscarbon(M) || isalien(M))
|
||||
return 0
|
||||
var/mob/living/carbon/C = M
|
||||
if(ishuman(C))
|
||||
var/mob/living/carbon/human/H = C
|
||||
if(H.head && H.head.flags & HEADCOVERSMOUTH)
|
||||
return 0
|
||||
return 1
|
||||
@@ -2709,9 +2709,8 @@ datum
|
||||
return
|
||||
|
||||
reaction_turf(var/turf/simulated/T, var/volume)
|
||||
if(volume >= 3)
|
||||
if(!istype(T)) return
|
||||
T.Bless()
|
||||
if(!istype(T)) return
|
||||
T.Bless()
|
||||
|
||||
tequilla
|
||||
name = "Tequila"
|
||||
|
||||
@@ -48,6 +48,14 @@ Stuff which is in development and not yet visible to players or just code relate
|
||||
should be listed in the changelog upon commit tho. Thanks. -->
|
||||
|
||||
<!-- To take advantage of the pretty new format (well it was new when I wrote this anyway), open the "add-to-changelog.html" file in any browser and add the stuff and then generate the html code and paste it here -->
|
||||
<div class="commit sansserif">
|
||||
<h2 class="date">10 October 2012</h2>
|
||||
<h3 class="author">Giacom updated:</h3>
|
||||
<ul class="changes bgimages16">
|
||||
<li class="tweak">Larva grow a little bit faster when on weeds or when breathing in plasma.</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="commit sansserif">
|
||||
<h2 class="date">8 October 2012</h2>
|
||||
<h3 class="author">Giacom updated:</h3>
|
||||
|
||||
Reference in New Issue
Block a user