Worked on blob mode a bit

Readded the AM stuff to the dme
Added another explosion edit from Willox


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3903 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
mport2004@gmail.com
2012-06-24 00:03:31 +00:00
parent bdc1c3390a
commit 69753b0190
18 changed files with 524 additions and 265 deletions

View File

@@ -0,0 +1,65 @@
/obj/effect/blob/core
name = "blob core"
icon = '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, '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 world)
if(G.client && G.client.be_alien)
if(G.corpse)
if(G.corpse.stat==2)
candidates.Add(G)
else
candidates.Add(G)
for(var/i = 0 to wave_size)
if(!candidates.len) break
var/mob/dead/observer/G = pick(candidates)
var/mob/living/blob/B = new/mob/living/blob(src.loc)
if(G.client)
G.client.screen.len = null
B.ghost_name = G.real_name
G.client.mob = B
del(G)

View File

@@ -0,0 +1,23 @@
/obj/effect/blob/factory
name = "porous blob"
icon = 'blob.dmi'
icon_state = "blob_factory"
health = 100
brute_resist = 1
fire_resist = 2
var/list/spores = list()
var/max_spores = 6
update_icon()
if(health <= 0)
playsound(src.loc, 'splat.ogg', 50, 1)
del(src)
return
return
run_action()
if(spores.len > max_spores) return 0
new/obj/effect/critter/blob(src.loc, src)
return 1

View File

@@ -0,0 +1,34 @@
/obj/effect/blob/node
name = "blob node"
icon = 'blob.dmi'
icon_state = "blob_node"
health = 100
brute_resist = 1
fire_resist = 2
New(loc, var/h = 100)
blobs += src
blob_nodes += src
processing_objects.Add(src)
..(loc, h)
Del()
blob_nodes -= src
processing_objects.Remove(src)
..()
return
update_icon()
if(health <= 0)
playsound(src.loc, 'splat.ogg', 50, 1)
del(src)
return
return
run_action()
Pulse(0,0)
return 0

View File

@@ -0,0 +1,24 @@
/obj/effect/blob/shield
name = "strong blob"
icon = 'blob.dmi'
icon_state = "blob_idle"
desc = "Some blob creature thingy"
density = 1
opacity = 0
anchored = 1
health = 100
brute_resist = 1
fire_resist = 2
update_icon()
if(health <= 0)
playsound(src.loc, 'splat.ogg', 50, 1)
del(src)
return
return
CanPass(atom/movable/mover, turf/target, height=0, air_group=0)
if(istype(mover) && mover.checkpass(PASSBLOB)) return 1
return 0