Projectiles cleaned up a bit and moved into a /modules folder.

Solars should work a bit better now.
Removed the old shield item as it has not been used in forever and was cluttering up some of the mob code.
IonRifle only has 5 shots before it needs to be reloaded down from 10.
Lowered the weakbullet's stun to match the taser.
You can no longer recall the shuttle on meteor.
Fixed a bug I caused on rev where if the revs were in space and dead it would count them as living.
Bit of blob work.


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2220 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
mport2004@gmail.com
2011-09-18 07:27:05 +00:00
parent e4ec81fa6b
commit a72e6d6a84
42 changed files with 2178 additions and 2304 deletions

View File

@@ -0,0 +1,53 @@
/obj/item/projectile/beam
name = "laser"
icon_state = "laser"
pass_flags = PASSTABLE | PASSGLASS | PASSGRILLE
damage = 20
mobdamage = list(BRUTE = 0, BURN = 20, TOX = 0, OXY = 0, CLONE = 0)
flag = "laser"
New()
..()
effects["eyeblur"] = 5
effectprob["eyeblur"] = 50
/obj/item/projectile/beam/pulse
name = "pulse"
icon_state = "u_laser"
damage = 50
mobdamage = list(BRUTE = 10, BURN = 40, TOX = 0, OXY = 0, CLONE = 0)
/obj/item/projectile/beam/heavylaser
name = "heavy laser"
icon_state = "heavylaser"
damage = 40
mobdamage = list(BRUTE = 0, BURN = 40, TOX = 0, OXY = 0, CLONE = 0)
/obj/item/projectile/beam/deathlaser
name = "death laser"
icon_state = "heavylaser"
damage = 60
mobdamage = list(BRUTE = 10, BURN = 60, TOX = 0, OXY = 0, CLONE = 0)
New()
..()
effects["weak"] = 5
effectprob["weak"] = 15
/obj/item/projectile/beam/fireball
name = "shock"
icon_state = "fireball"
damage = 25
mobdamage = list(BRUTE = 0, BURN = 25, TOX = 0, OXY = 0, CLONE = 0)
New()
..()
effects["stun"] = 10
effects["weak"] = 10
effectprob["weak"] = 25
effects["stutter"] = 10

View File

@@ -0,0 +1,23 @@
/obj/item/projectile/declone
name = "declown"
icon_state = "declone"
damage = 0
mobdamage = list(BRUTE = 0, BURN = 0, TOX = 0, OXY = 0, CLONE = 40)
flag = "bio"
New()
..()
effects["radiation"] = 40
effectmod["radiation"] = ADD
/obj/item/projectile/dart
name = "dart"
icon_state = "toxin"
flag = "bio"
damage = 0
mobdamage = list(BRUTE = 0, BURN = 0, TOX = 10, OXY = 0, CLONE = 0)
New()
..()
effects["weak"] = 5
effectmod["weak"] = ADD

View File

@@ -0,0 +1,63 @@
/obj/item/projectile/weakbullet
damage = 8
mobdamage = list(BRUTE = 8, BURN = 0, TOX = 0, OXY = 0, CLONE = 0)
New()
..()
effects["stun"] = 10
effects["weak"] = 10
effects["stutter"] = 2
effectprob["weak"] = 25
/obj/item/projectile/midbullet
damage = 16
mobdamage = list(BRUTE = 32, BURN = 0, TOX = 0, OXY = 0, CLONE = 0)
New()
..()
effects["weak"] = 10
effects["stun"] = 10
/obj/item/projectile/suffocationbullet//How does this even work?
mobdamage = list(BRUTE = 5, BURN = 0, TOX = 0, OXY = 15, CLONE = 0)
/obj/item/projectile/cyanideround//Instakill guns are not a good thing, make them hit a few times
mobdamage = list(BRUTE = 5, BURN = 0, TOX = 40, OXY = 0, CLONE = 0)
/obj/item/projectile/burstbullet
damage = 20
mobdamage = list(BRUTE = 20, BURN = 0, TOX = 0, OXY = 0, CLONE = 0)
/obj/item/projectile/gyro
name ="gyro"
icon_state= "bolter"
damage = 50
mobdamage = list(BRUTE = 50, BURN = 0, TOX = 0, OXY = 0, CLONE = 0)
flag = "bullet"
New()
..()
effects["weak"] = 10
effects["stun"] = 10
/obj/item/projectile/stunshot
name = "stunshot"
icon_state = "bullet"
flag = "bullet"
damage = 5
mobdamage = list(BRUTE = 5, BURN = 0, TOX = 0, OXY = 0, CLONE = 0)
New()
..()
effects["stun"] = 20
effects["weak"] = 20
effectprob["weak"] = 45
effects["stutter"] = 20

View File

@@ -0,0 +1,27 @@
/obj/item/projectile/electrode
name = "electrode"
icon_state = "spark"
flag = "taser"
damage = 0
nodamage = 1
New()
..()
effects["stun"] = 10
effects["weak"] = 10
effects["stutter"] = 10
effectprob["weak"] = 25
/obj/item/projectile/bolt
name = "bolt"
icon_state = "cbbolt"
flag = "taser"
damage = 0
nodamage = 1
New()
..()
effects["weak"] = 10
effects["stutter"] = 10

View File

@@ -0,0 +1,14 @@
/obj/item/projectile/largebolt
name = "largebolt"
icon_state = "cbbolt"
flag = "rad"
damage = 20
mobdamage = list(BRUTE = 10, BURN = 0, TOX = 10, OXY = 0, CLONE = 0)
New()
..()
effects["radiation"] = 40
effectprob["radiation"] = 95
effects["drowsyness"] = 10
effectprob["drowsyness"] = 25
effectmod["radiation"] = ADD
effectmod["drowsyness"] = SET

View File

@@ -0,0 +1,35 @@
//These could likely use an Onhit proc
/obj/item/projectile/ion
name = "ion bolt"
icon_state = "ion"
flag = "taser"//Need to check this
damage = 0
nodamage = 1
New()
..()
effects["emp"] = 1
effectprob["emp"] = 80
/obj/item/projectile/freeze
name = "freeze beam"
icon_state = "ice_2"
damage = 0
var/temperature = 0
proc/Freeze(atom/A as mob|obj|turf|area)
if(istype(A, /mob))
var/mob/M = A
if(M.bodytemperature > temperature)
M.bodytemperature = temperature
/obj/item/projectile/plasma
name = "plasma blast"
icon_state = "plasma_2"
damage = 0
var/temperature = 800
proc/Heat(atom/A as mob|obj|turf|area)
if(istype(A, /mob/living/carbon))
var/mob/M = A
if(M.bodytemperature < temperature)
M.bodytemperature = temperature