Timers will no longer go off when you set them to 0 unless they are on.

Unsimulated turfs can be climbed on once more.
Small blobs can use the blob to move around in space.
Jetpacks now have a toggle for the stabilization.
Jetpack fuel use has been reset to .01.
Moved most of the tanks over to a new folder and files so they are not all crammed into one.
The meteor event actually spawns more than one wave worth of meteors.


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2488 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
mport2004@gmail.com
2011-11-05 05:25:22 +00:00
parent cf62068041
commit fbd0a5a9b5
18 changed files with 350 additions and 329 deletions

View File

@@ -60,7 +60,7 @@
process()
if(timing && (time >= 0))
time--
if(time <= 0)
if(timing && time <= 0)
timing = 0
toggle_scan()
time = 10

View File

@@ -51,7 +51,7 @@
process()
if(timing && (time >= 0))
time--
if(time <= 0)
if(timing && time <= 0)
timing = 0
timer_end()
time = 10

View File

@@ -11,67 +11,70 @@
creating_blob = 0
/mob/living/blob/New()
real_name += " [pick(rand(1, 99))]"
name = real_name
..()
New()
real_name += " [pick(rand(1, 99))]"
name = real_name
..()
/mob/living/blob/say(var/message)
return//No talking for you
say(var/message)
return//No talking for you
/mob/living/blob/emote(var/act,var/m_type=1,var/message = null)
return
emote(var/act,var/m_type=1,var/message = null)
return
/mob/living/blob/Life()
set invisibility = 0
set background = 1
clamp_values()
UpdateDamage()
if(health < 0)
src.gib()
/mob/living/blob
proc
Life()
set invisibility = 0
set background = 1
clamp_values()
stunned = 0//No stun here
paralysis = 0
weakened = 0
sleeping = 0
bruteloss = max(bruteloss, 0)
toxloss = max(toxloss, 0)
oxyloss = max(oxyloss, 0)
fireloss = max(fireloss, 0)
if(stat)
stat = 0
return
UpdateDamage()
health = 60 - (oxyloss + toxloss + fireloss + bruteloss + cloneloss)
return
if(health < 0)
src.gib()
/mob/living/blob/death(gibbed)
if(key)
var/mob/dead/observer/ghost = new(src)
ghost.name = ghost_name
ghost.real_name = ghost_name
ghost.key = key
if (ghost.client)
ghost.client.eye = ghost
return ..(gibbed)
proc/clamp_values()
stunned = 0
paralysis = 0
weakened = 0
sleeping = 0
bruteloss = max(bruteloss, 0)
toxloss = max(toxloss, 0)
oxyloss = max(oxyloss, 0)
fireloss = max(fireloss, 0)
if(stat)
stat = 0
return
/mob/living/blob/blob_act()
src << "The blob attempts to reabsorb you."
toxloss += 20
return
proc/UpdateDamage()
health = 60 - (oxyloss + toxloss + fireloss + bruteloss + cloneloss)
return
death(gibbed)
if(key)
var/mob/dead/observer/ghost = new(src)
ghost.name = ghost_name
ghost.real_name = ghost_name
ghost.key = key
if (ghost.client)
ghost.client.eye = ghost
return ..(gibbed)
blob_act()
src << "The blob attempts to reabsorb you."
toxloss += 20
return
Process_Spacemove()
if(locate(/obj/effect/blob) in oview(1,src))
return 1
return (..())
/mob/living/blob/verb/create_node()

View File

@@ -1,19 +1,22 @@
/mob/living/carbon/human/Process_Spacemove()
/mob/living/carbon/human/Process_Spacemove(var/check_drift = 0)
//Can we act
if(restrained()) return 0
//Do we have a working jetpack
if(istype(back, /obj/item/weapon/tank/jetpack))
var/obj/item/weapon/tank/jetpack/J = back
if(J.allow_thrust(0.005, src))
if(check_drift && J.stabilization_on && !lying && J.allow_thrust(0.01, src))
inertia_dir = 0
return 1
if(!check_drift && J.allow_thrust(0.01, src))
return 1
//If no working jetpack then use the other checks
if(..()) return 1
return 0
/mob/living/carbon/human/Process_Spaceslipping(var/prob_slip = 5)
//If knocked out we might just hit it and stop. This makes it possible to get dead bodies and such.
if(stat) prob_slip += 50

View File

@@ -140,7 +140,7 @@
if(istype(mob.loc, /turf/space) || (mob.flags & NOGRAV))
if(!mob.Process_Spacemove()) return 0
if(!mob.Process_Spacemove(0)) return 0
if(isobj(mob.loc) || ismob(mob.loc))//Inside an object, tell it we moved
var/atom/O = mob.loc
@@ -202,14 +202,13 @@
M.animate_movement = 2
return
else if(mob.confused)
step(mob, pick(cardinal))
else
if(mob.confused)
step(mob, pick(cardinal))
else
. = ..()
for(var/obj/effect/speech_bubble/S in range(1, mob))
if(S.parent == mob)
S.loc = mob.loc
. = ..()
for(var/obj/effect/speech_bubble/S in range(1, mob))
if(S.parent == mob)
S.loc = mob.loc
moving = 0
return .
@@ -300,7 +299,7 @@
///Called by /client/Move()
///For moving in space
///Return 1 for movement 0 for none
/mob/proc/Process_Spacemove()
/mob/proc/Process_Spacemove(var/check_drift = 0)
//First check to see if we can do things
if(restrained()) return 0
@@ -312,6 +311,12 @@
if((istype(turf,/turf/simulated)) && !(istype(turf,/turf/simulated/floor)))
dense_object++
break
if(istype(turf,/turf/unsimulated/floor) && !(src.flags & NOGRAV))
dense_object++
break
if((istype(turf,/turf/unsimulated)) && !(istype(turf,/turf/unsimulated/floor)))
dense_object++
break
if(!dense_object && (locate(/obj/structure/lattice) in oview(1, src)))
dense_object++

View File

@@ -9,13 +9,13 @@
origin_tech = "combat=3;magnets=2"
projectile_type = "/obj/item/projectile/beam"
obj/item/weapon/gun/energy/laser/retro
name ="retro laser"
icon_state = "retro"
desc = "An older model of the basic lasergun, no longer used by Nanotrasen's security or military forces. Nevertheless, it is still quite deadly and easy to maintain, making it a favorite amongst pirates and other outlaws."
/obj/item/weapon/gun/energy/laser/captain
icon_state = "caplaser"
desc = "This is an antique laser gun. All craftsmanship is of the highest quality. It is decorated with assistant leather and chrome. The object menaces with spikes of energy. On the item is an image of Space Station 13. The station is exploding."

View File

@@ -24,7 +24,7 @@
/obj/item/weapon/gun/projectile/automatic/c20r
name = "C-20r SMG"
desc = "A lightweight, fast firing gun, for when you REALLY need someone dead. Uses .12mm rounds. Has a 'Scarborough Arms - Per falcis, per pravitas' buttstamp"
desc = "A lightweight, fast firing gun, for when you REALLY need someone dead. Uses 12mm rounds. Has a 'Scarborough Arms - Per falcis, per pravitas' buttstamp"
icon_state = "c20r"
item_state = "c20r"
w_class = 3.0