Acid fix from Barhandar.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@686 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
rastaf.zero@gmail.com
2010-12-21 16:35:48 +00:00
parent 153f5e1044
commit fd5517e944
9 changed files with 33 additions and 7 deletions

View File

@@ -3,6 +3,7 @@
var/m_amt = 0 // metal
var/g_amt = 0 // glass
var/w_amt = 0 // waster amounts
var/unacidable = 0 //universal "unacidabliness" var, here so you can use it in any obj.
animate_movement = 2
var/throwforce = 0
proc
@@ -39,6 +40,7 @@
anchored = 1
layer = 99
mouse_opacity = 0
unacidable = 1
/obj/admins
name = "admins"
@@ -54,6 +56,7 @@
desc = "FUCK FUCK FUCK AAAHHH"
icon_state = "bhole2"
opacity = 0
unacidable = 1 //well, if you got that close, you're fucked anyway, but...
density = 0
anchored = 1
var/datum/effects/system/harmless_smoke_spread/smoke
@@ -101,6 +104,7 @@
icon = 'stationobjs.dmi'
icon_state = "begin"
anchored = 1.0
unacidable = 1
/obj/bullet
name = "bullet"
@@ -243,6 +247,7 @@
/obj/hud
name = "hud"
unacidable = 1
var/mob/mymob = null
var/list/adding = null
var/list/other = null
@@ -423,13 +428,13 @@
/obj/item/blueprints
name = "station blueprints"
desc = "Blueprints of space station 13. It have stamp \"Classified\" and several coffee stains."
desc = "Blueprints of the station. There's stamp \"Classified\" and several coffee stains on it."
icon = 'items.dmi'
icon_state = "blueprints"
/obj/item/apc_frame
name = "APC frame"
desc = "Use for repairing or building APCs"
desc = "Used for repairing or building APCs"
icon = 'apc_repair.dmi'
icon_state = "apc_frame"
flags = FPRINT | TABLEPASS| CONDUCT
@@ -439,6 +444,7 @@
icon = 'screen1.dmi'
icon_state = "x2"
anchored = 1.0
unacidable = 1
/obj/landmark/alterations
name = "alterations"
@@ -565,12 +571,14 @@
/obj/overlay
name = "overlay"
unacidable = 1
/obj/portal
name = "portal"
icon = 'stationobjs.dmi'
icon_state = "portal"
density = 1
unacidable = 1
var/failchance = 5
var/obj/item/target = null
var/creator = null
@@ -592,6 +600,7 @@
name = "screen"
icon = 'screen1.dmi'
layer = 20.0
unacidable = 1
var/id = 0.0
var/obj/master

View File

@@ -43,6 +43,7 @@
density = 1
opacity = 1
anchored = 1
unacidable = 1
/obj/machinery/shieldwall
name = "Shield"
@@ -51,6 +52,7 @@
icon_state = "shieldwall"
anchored = 1
density = 1
unacidable = 1
var/active = 1
// var/power = 10
var/delay = 5

View File

@@ -53,6 +53,7 @@ However people seem to like it for some reason.
icon_state = "Singularity"
anchored = 1
density = 1
// unacidable = 1 //oh the hilarity.
var/active = 0
var/energy = 10
var/Dtime = null
@@ -417,6 +418,7 @@ However people seem to like it for some reason.
icon_state = "Contain_F"
anchored = 1
density = 0
unacidable = 1
var/active = 1
var/power = 10
var/delay = 5

View File

@@ -11,6 +11,7 @@
density = 1 //Dense. To raise the heat.
opacity = 1 ///opaque. Menacing.
anchored = 1 //no pulling around.
unacidable = 1 //and no deleting hoomans inside
layer = MOB_LAYER //icon draw layer
var/can_move = 1
var/mob/living/carbon/human/occupant = null

View File

@@ -1,10 +1,15 @@
/obj/alien/acid/proc/tick()
ticks += 1
if(target.unacidable)
del(src)
return
for(var/mob/O in hearers(src, null))
O.show_message("\green <B>[src.target] sizzles and begins to melt under the bubbling mess of acid!</B>", 1)
if(prob(ticks*10))
for(var/mob/O in hearers(src, null))
O.show_message("\green <B>[src.target] collapses under its own weight into a puddle of goop and undigested debris!</B>", 1)
// if(target.occupant) //I tried to fix mechas-with-humans-getting-deleted. Made them unacidable for now.
// target.ex_act(1)
del(target)
del(src)
return

View File

@@ -2,6 +2,7 @@
name = "alien thing"
desc = "theres something alien about this"
icon = 'alien.dmi'
unacidable = 1 //alien acid don't melts alien things...
/obj/alien/egg
desc = "It looks like a weird egg"
@@ -38,6 +39,7 @@
density = 1
opacity = 1
anchored = 1
unacidable = 0 //...except for resin "wall" since it can block way.
var/health = 20

View File

@@ -5,6 +5,7 @@
desc = "A glass lab container for storing interesting creatures."
density = 1
anchored = 1
unacidable = 1
var/health = 30
var/occupied = 1
var/destroyed = 0

View File

@@ -7,6 +7,7 @@
layer = 5.0
density = 1
anchored = 0
unacidable = 1
var/state = 0 //0 = null, 1 = attack, 2 = idle

View File

@@ -281,7 +281,7 @@ Also perhaps only queens can do that?
O.show_message("You hear something crawling trough the ventilation pipes.")
spawn(travel_time)
if(target_vent.welded)//the went can be welded while alien scrolled through the list or travelled.
if(target_vent.welded)//the vent can be welded while alien scrolled through the list or travelled.
target_vent = vent_found //travel back. No additional time required.
src << "\red The vent you were heading to appears to be welded."
src.loc = target_vent.loc
@@ -294,18 +294,21 @@ Also perhaps only queens can do that?
set category = "Alien"
if(src.stat)
src << "You must be concious to do this."
src << "You must be concious to do this"
return
if(!istype(O, /obj))
return
if(O.unacidable) //noize, don't fucking touch this and learn, why algorithms must be universal when possible (here it IS possible)
src << "You cannot spit acid over this."
return //also, if you want list of unacidables - search("unacidable = 1". all files), key_press(F3).
/*if(range(O, src) > 1)
src << "That's too far away!"
return*/
if(src.toxloss < 200)
src << "You don't have enough plasma."
return
if(istype(O, /obj/hud)||istype(O, /obj/machinery/shield)||istype(O, /obj/machinery/shieldwall)||istype(O, /obj/machinery/the_singularity)||istype(O, /obj/portal)||istype(O, /obj/rune)||istype(O, /obj/marker)||istype(O, /obj/bhole)||istype(O, /obj/livestock)||istype(O, /obj/creature)||istype(O, /obj/alien)||istype(O, /obj/machinery/containment_field))
src << "Can't destroy that object." //So you're not destroying black holes while you sizzle acid, dawg /N
else
src.toxloss -= 200
var/obj/alien/acid/A = new(O.loc)