More splitting up of code. Barrier seems to be CTF only,

so I figured a CTF folder would be good for containing it.
Perhaps we could do Mode-Specific\CTF ?

Portal seems more like an Effect, so it went in Effects.
This commit is contained in:
stephen001
2008-06-19 00:13:14 +00:00
parent a485ec530e
commit 0fa8609786
5 changed files with 61 additions and 59 deletions
-15
View File
@@ -465,13 +465,6 @@
var/a_level = 0.0
var/screen = 1.0
var/owner = null
/obj/barrier
name = "barrier"
icon = 'stationobjs.dmi'
icon_state = "barrier"
opacity = 1
density = 1
anchored = 1.0
/obj/beam
name = "beam"
/obj/beam/a_laser
@@ -2462,14 +2455,6 @@ Total SMES charging rate should not exceed total power generation rate, or an ov
icon = 'screen1.dmi'
icon_state = "arrow"
layer = 16.0
/obj/portal
name = "portal"
icon = 'stationobjs.dmi'
icon_state = "portal"
density = 1
var/obj/target = null
anchored = 1.0
/obj/rack
name = "rack"
icon = 'Icons.dmi'
+13
View File
@@ -0,0 +1,13 @@
/obj/barrier
anchored = 1.0
density = 1
icon = 'stationobjs.dmi'
icon_state = "barrier"
name = "barrier"
opacity = 1
New()
var/t = 1800
if (ctf)
t = round(ctf.barriertime * 600)
spawn(t) del(src)
+46
View File
@@ -0,0 +1,46 @@
/obj/portal
anchored = 1.0
density = 1
icon = 'stationobjs.dmi'
icon_state = "portal"
name = "portal"
var/obj/target = null
New()
spawn(300) del(src)
Bumped(atom/movable/M)
spawn(0) src.teleport(M)
HasEntered(atom/movable/AM)
spawn(0) src.teleport(AM)
proc/teleport(atom/movable/M)
if (M.anchored)
return
if (src.icon_state == "portal1")
return
if (!(src.target))
del(src)
return
var/obj/effects/sparks/O = new /obj/effects/sparks(src.target)
O.dir = pick(1, 2, 4, 8)
spawn(0)
O.Life()
return
if (istype(M, /atom/movable))
var/tx = src.target.x + rand(-5.0, 5)
var/ty = src.y + rand(-5.0, 5)
if (prob(10))
src.icon_state = "portal1"
if (ismob(M))
M.ex_act(2)
else
M.ex_act(1)
if (rand(1, 1000) <= 10)
if (istype(M, /mob))
M:client_mob() << ("\red You see a fainting blue light.")
M.loc = null
else
M.loc = locate(tx, ty, src.target.z)
-44
View File
@@ -5517,50 +5517,6 @@
new /obj/item/weapon/sheet/metal(src.loc)
del(src)
/obj/barrier/New()
var/t = 1800
if (ctf)
t = round(ctf.barriertime * 600)
spawn(t) del(src)
/obj/portal/Bumped(atom/movable/M)
spawn(0) src.teleport(M)
/obj/portal/HasEntered(atom/movable/AM)
spawn(0) src.teleport(AM)
/obj/portal/New()
spawn(300) del(src)
/obj/portal/proc/teleport(atom/movable/M)
if (M.anchored)
return
if (src.icon_state == "portal1")
return
if (!( src.target ))
del(src)
return
var/obj/effects/sparks/O = new /obj/effects/sparks( src.target )
O.dir = pick(1, 2, 4, 8)
spawn(0)
O.Life()
return
if (istype(M, /atom/movable))
var/tx = src.target.x + rand(-5.0, 5)
var/ty = src.y + rand(-5.0, 5)
if (prob(10))
src.icon_state = "portal1"
if (ismob(M))
M.ex_act(2)
else
M.ex_act(1)
if (rand(1, 1000) <= 10)
if (istype(M, /mob))
M:client_mob() << ("\red You see a fainting blue light.")
M.loc = null
else
M.loc = locate(tx, ty, src.target.z)
/mob/attackby(obj/item/weapon/W, mob/user)
var/shielded = 0
for(var/obj/item/weapon/shield/S in src)
+2
View File
@@ -133,6 +133,8 @@
#include "Code\Machinery\Power\turbine.dm"
#include "Code\mob\ai.dm"
#include "Code\mob\drone.dm"
#include "Code\CTF\barrier.dm"
#include "Code\Effects\portal.dm"
#include "Code\Effects\water.dm"
// END_INCLUDE