mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-10 10:12:45 +00:00
- Object tree grouped a bit more.
Two new categories were made: station_objects and effects. station_objects, which I'm sure someone will want renamed to 'structures' contains the objects which don't need process() or power code. Effects contains objects which are either landmarks, triggers, spawners or decal. Screenshot: http://www.kamletos.si/new%20object%20tree.PNG I didn't notice any bugs, but with a revision editing 276 files of byond code, you never know. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2323 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
/obj/critter
|
||||
/obj/effects/critter
|
||||
name = "Critter"
|
||||
desc = "Generic critter."
|
||||
icon = 'critter.dmi'
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
|
||||
/obj/critter
|
||||
/obj/effects/critter
|
||||
|
||||
New()
|
||||
spawn(0) process()//I really dont like this much but it seems to work well
|
||||
@@ -123,11 +123,11 @@
|
||||
break
|
||||
|
||||
if(!src.attack)
|
||||
for(var/obj/critter/C in view(src.seekrange,src))
|
||||
if(istype(C, /obj/critter) && !src.atkcritter) continue
|
||||
for(var/obj/effects/critter/C in view(src.seekrange,src))
|
||||
if(istype(C, /obj/effects/critter) && !src.atkcritter) continue
|
||||
if(istype(C, /obj/mecha) && !src.atkmech) continue
|
||||
if(C.health <= 0) continue
|
||||
if(istype(C, /obj/critter) && src.atkcritter)
|
||||
if(istype(C, /obj/effects/critter) && src.atkcritter)
|
||||
if((istype(C, src.type) && !src.atksame) || (C == src)) continue
|
||||
src.attack = 1
|
||||
if(istype(C, /obj/mecha) && src.atkmech) src.attack = 1
|
||||
@@ -193,7 +193,7 @@
|
||||
|
||||
|
||||
/*TODO: Figure out how to handle special things like this dont really want to give it to every critter
|
||||
/obj/critter/proc/CritterTeleport(var/telerange, var/dospark, var/dosmoke)
|
||||
/obj/effects/critter/proc/CritterTeleport(var/telerange, var/dospark, var/dosmoke)
|
||||
if (!src.alive) return
|
||||
var/list/randomturfs = new/list()
|
||||
for(var/turf/T in orange(src, telerange))
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
Contains the procs that control attacking critters
|
||||
*/
|
||||
/obj/critter
|
||||
/obj/effects/critter
|
||||
|
||||
attackby(obj/item/weapon/W as obj, mob/living/user as mob)
|
||||
..()
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/obj/critter/creature
|
||||
/obj/effects/critter/creature
|
||||
name = "creature"
|
||||
desc = "A sanity-destroying otherthing."
|
||||
icon = 'otherthing.dmi'
|
||||
@@ -22,7 +22,7 @@
|
||||
attacktext = "chomps"
|
||||
|
||||
|
||||
/obj/critter/roach
|
||||
/obj/effects/critter/roach
|
||||
name = "cockroach"
|
||||
desc = "An unpleasant insect that lives in filthy places."
|
||||
icon_state = "roach"
|
||||
@@ -40,7 +40,7 @@
|
||||
del(src)
|
||||
|
||||
|
||||
/obj/critter/killertomato
|
||||
/obj/effects/critter/killertomato
|
||||
name = "killer tomato"
|
||||
desc = "Oh shit, you're really fucked now."
|
||||
icon_state = "killertomato"
|
||||
@@ -74,7 +74,7 @@
|
||||
|
||||
|
||||
|
||||
/obj/critter/spore
|
||||
/obj/effects/critter/spore
|
||||
name = "plasma spore"
|
||||
desc = "A barely intelligent colony of organisms. Very volatile."
|
||||
icon_state = "spore"
|
||||
@@ -104,7 +104,7 @@
|
||||
src.Die()
|
||||
|
||||
|
||||
/obj/critter/blob
|
||||
/obj/effects/critter/blob
|
||||
name = "blob"
|
||||
desc = "Some blob thing."
|
||||
icon_state = "blob"
|
||||
@@ -129,7 +129,7 @@
|
||||
|
||||
|
||||
|
||||
/obj/critter/spesscarp
|
||||
/obj/effects/critter/spesscarp
|
||||
name = "Spess Carp"
|
||||
desc = "A ferocious, fang-bearing creature that resembles a fish."
|
||||
icon_state = "spesscarp"
|
||||
@@ -181,7 +181,7 @@
|
||||
|
||||
|
||||
|
||||
/obj/critter/spesscarp/elite
|
||||
/obj/effects/critter/spesscarp/elite
|
||||
desc = "Oh shit, you're really fucked now. It has an evil gleam in its eye."
|
||||
health = 50
|
||||
max_health = 50
|
||||
@@ -193,7 +193,7 @@
|
||||
|
||||
|
||||
|
||||
/obj/critter/walkingmushroom
|
||||
/obj/effects/critter/walkingmushroom
|
||||
name = "Walking Mushroom"
|
||||
desc = "A...huge...mushroom...with legs!?"
|
||||
icon_state = "walkingmushroom"
|
||||
@@ -227,7 +227,7 @@
|
||||
|
||||
|
||||
|
||||
/obj/critter/lizard
|
||||
/obj/effects/critter/lizard
|
||||
name = "Lizard"
|
||||
desc = "A cute tiny lizard."
|
||||
icon_state = "lizard"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
damage = 5
|
||||
mobdamage = list(BRUTE = 5, BURN = 0, TOX = 0, OXY = 0, CLONE = 0)
|
||||
|
||||
/obj/critter/hivebot
|
||||
/obj/effects/critter/hivebot
|
||||
name = "Hivebot"
|
||||
desc = "A small robot"
|
||||
icon = 'hivebot.dmi'
|
||||
@@ -39,7 +39,7 @@
|
||||
walk_to(src,0)
|
||||
src.visible_message("<b>[src]</b> blows apart!")
|
||||
var/turf/Ts = get_turf(src)
|
||||
new /obj/decal/cleanable/robot_debris(Ts)
|
||||
new /obj/effects/decal/cleanable/robot_debris(Ts)
|
||||
var/datum/effects/system/spark_spread/s = new /datum/effects/system/spark_spread
|
||||
s.set_up(3, 1, src)
|
||||
s.start()
|
||||
@@ -71,11 +71,11 @@
|
||||
break
|
||||
|
||||
if(!src.attack)
|
||||
for(var/obj/critter/C in view(src.seekrange,src))
|
||||
if(istype(C, /obj/critter) && !src.atkcritter) continue
|
||||
for(var/obj/effects/critter/C in view(src.seekrange,src))
|
||||
if(istype(C, /obj/effects/critter) && !src.atkcritter) continue
|
||||
if(C.health <= 0) continue
|
||||
if(istype(C, /obj/critter) && src.atkcritter)
|
||||
if((istype(C, /obj/critter/hivebot) && !src.atksame) || (C == src)) continue
|
||||
if(istype(C, /obj/effects/critter) && src.atkcritter)
|
||||
if((istype(C, /obj/effects/critter/hivebot) && !src.atksame) || (C == src)) continue
|
||||
T = C
|
||||
break
|
||||
|
||||
@@ -142,23 +142,23 @@
|
||||
|
||||
|
||||
|
||||
/obj/critter/hivebot/range
|
||||
/obj/effects/critter/hivebot/range
|
||||
name = "Hivebot"
|
||||
desc = "A smallish robot, this one is armed!"
|
||||
ranged = 1
|
||||
|
||||
/obj/critter/hivebot/rapid
|
||||
/obj/effects/critter/hivebot/rapid
|
||||
ranged = 1
|
||||
rapid = 1
|
||||
|
||||
/obj/critter/hivebot/strong
|
||||
/obj/effects/critter/hivebot/strong
|
||||
name = "Strong Hivebot"
|
||||
desc = "A robot, this one is armed and looks tough!"
|
||||
health = 50
|
||||
armor = 10
|
||||
ranged = 1
|
||||
|
||||
/obj/critter/hivebot/borg
|
||||
/obj/effects/critter/hivebot/borg
|
||||
health = 20
|
||||
atksilicon = 1
|
||||
ranged = 1
|
||||
@@ -166,7 +166,7 @@
|
||||
|
||||
|
||||
|
||||
/obj/critter/hivebot/tele//this still needs work
|
||||
/obj/effects/critter/hivebot/tele//this still needs work
|
||||
name = "Beacon"
|
||||
desc = "Some odd beacon thing"
|
||||
icon = 'Hivebot.dmi'
|
||||
@@ -218,11 +218,11 @@
|
||||
bot_amt--
|
||||
switch(bot_type)
|
||||
if("norm")
|
||||
new /obj/critter/hivebot(get_turf(src))
|
||||
new /obj/effects/critter/hivebot(get_turf(src))
|
||||
if("range")
|
||||
new /obj/critter/hivebot/range(get_turf(src))
|
||||
new /obj/effects/critter/hivebot/range(get_turf(src))
|
||||
if("rapid")
|
||||
new /obj/critter/hivebot/rapid(get_turf(src))
|
||||
new /obj/effects/critter/hivebot/rapid(get_turf(src))
|
||||
spawn(100)
|
||||
del(src)
|
||||
return
|
||||
@@ -237,14 +237,14 @@
|
||||
turn_on = 2
|
||||
..()
|
||||
|
||||
/obj/critter/hivebot/tele/massive
|
||||
/obj/effects/critter/hivebot/tele/massive
|
||||
bot_type = "norm"
|
||||
bot_amt = 30
|
||||
auto_spawn = 0
|
||||
|
||||
/obj/critter/hivebot/tele/ranged
|
||||
/obj/effects/critter/hivebot/tele/ranged
|
||||
bot_type = "range"
|
||||
|
||||
/obj/critter/hivebot/tele/rapid
|
||||
/obj/effects/critter/hivebot/tele/rapid
|
||||
bot_type = "rapid"
|
||||
spawn_delay = 800
|
||||
Reference in New Issue
Block a user