mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 02:16:05 +00:00
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5126 316c924e-a436-60f5-8080-3fe189b3f50e
73 lines
1.6 KiB
Plaintext
73 lines
1.6 KiB
Plaintext
/obj/effect/blob/core
|
|
name = "blob core"
|
|
icon = 'icons/mob/blob.dmi'
|
|
icon_state = "blob_core"
|
|
health = 200
|
|
brute_resist = 2
|
|
fire_resist = 2
|
|
|
|
|
|
New(loc, var/h = 200)
|
|
blobs += src
|
|
blob_cores += src
|
|
processing_objects.Add(src)
|
|
..(loc, h)
|
|
|
|
|
|
Del()
|
|
blob_cores -= src
|
|
processing_objects.Remove(src)
|
|
..()
|
|
return
|
|
|
|
|
|
update_icon()
|
|
if(health <= 0)
|
|
playsound(src.loc, 'sound/effects/splat.ogg', 50, 1)
|
|
del(src)
|
|
return
|
|
return
|
|
|
|
|
|
run_action()
|
|
Pulse(0,1)
|
|
Pulse(0,2)
|
|
Pulse(0,4)
|
|
Pulse(0,8)
|
|
//Should have the fragments in here somewhere
|
|
return 1
|
|
|
|
|
|
proc/create_fragments(var/wave_size = 1)
|
|
var/list/candidates = list()
|
|
for(var/mob/dead/observer/G in player_list)
|
|
if(G.client.prefs.be_special & BE_ALIEN)
|
|
if(!(G.mind && G.mind.current && G.mind.current.stat != DEAD))
|
|
candidates += G.key
|
|
|
|
if(candidates.len)
|
|
for(var/i = 0 to wave_size)
|
|
var/mob/living/blob/B = new/mob/living/blob(src.loc)
|
|
B.key = pick(candidates)
|
|
candidates -= B.key
|
|
|
|
/*
|
|
Pulse(var/pulse = 0, var/origin_dir = 0)//Todo: Fix spaceblob expand
|
|
set background = 1
|
|
if(pulse > 20) return
|
|
//Looking for another blob to pulse
|
|
var/list/dirs = list(1,2,4,8)
|
|
dirs.Remove(origin_dir)//Dont pulse the guy who pulsed us
|
|
for(var/i = 1 to 4)
|
|
if(!dirs.len) break
|
|
var/dirn = pick(dirs)
|
|
dirs.Remove(dirn)
|
|
var/turf/T = get_step(src, dirn)
|
|
var/obj/effect/blob/B = (locate(/obj/effect/blob) in T)
|
|
if(!B)
|
|
expand(T)//No blob here so try and expand
|
|
return
|
|
B.Pulse((pulse+1),get_dir(src.loc,T))
|
|
return
|
|
return
|
|
*/ |