Rebalance Stamina

This commit is contained in:
Fox-McCloud
2015-01-05 06:53:48 -05:00
parent 205853a848
commit e23841c46f
15 changed files with 143 additions and 45 deletions
+1 -1
View File
@@ -75,7 +75,7 @@ var/global/list/possibleEvents = list()
possibleEvents[/datum/event/communications_blackout] = 50 + 30 * active_with_role["AI"] + active_with_role["Scientist"] * 25
possibleEvents[/datum/event/ionstorm] = active_with_role["AI"] * 75 + active_with_role["Cyborg"] * 25 + active_with_role["Engineer"] * 10 + active_with_role["Scientist"] * 5
possibleEvents[/datum/event/grid_check] = 25 + 20 * active_with_role["Engineer"]
// possibleEvents[/datum/event/grid_check] = 25 + 20 * active_with_role["Engineer"]
possibleEvents[/datum/event/electrical_storm] = 150 + 10 * active_with_role["Janitor"] + 5 * active_with_role["Engineer"]
possibleEvents[/datum/event/wallrot] = 30 * active_with_role["Engineer"] + 50 * active_with_role["Botanist"]
possibleEvents[/datum/event/spacevine] = 25 + 5 * active_with_role["Engineer"]
+80
View File
@@ -34,6 +34,8 @@
//1 for keep shooting until aim is lowered
var/fire_delay = 0
var/last_fired = 0
var/obj/item/device/flashlight/F = null
var/can_flashlight = 0
proc/ready_to_fire()
if(world.time >= last_fired + fire_delay)
@@ -272,3 +274,81 @@
return
else
return ..() //Pistolwhippin'
/obj/item/weapon/gun/attackby(var/obj/item/A as obj, mob/user as mob)
if(istype(A, /obj/item/device/flashlight/seclite))
var/obj/item/device/flashlight/seclite/S = A
if(can_flashlight)
if(!F)
if(user.l_hand != src && user.r_hand != src)
user << "<span class='notice'>You'll need [src] in your hands to do that.</span>"
return
user.drop_item()
user << "<span class='notice'>You click [S] into place on [src].</span>"
if(S.on)
SetLuminosity(0)
F = S
A.loc = src
update_icon()
update_gunlight(user)
if(istype(A, /obj/item/weapon/screwdriver))
if(F)
if(user.l_hand != src && user.r_hand != src)
user << "<span class='notice'>You'll need [src] in your hands to do that.</span>"
return
for(var/obj/item/device/flashlight/seclite/S in src)
user << "<span class='notice'>You unscrew the seclite from [src].</span>"
F = null
S.loc = get_turf(user)
update_gunlight(user)
S.update_brightness(user)
update_icon()
..()
return
/obj/item/weapon/gun/verb/toggle_gunlight()
set name = "Toggle Gunlight"
set category = "Object"
set desc = "Click to toggle your weapon's attached flashlight."
var/mob/living/carbon/human/user = usr
if(!isturf(user.loc))
user << "You cannot turn the light on while in this [user.loc]."
F.on = !F.on
user << "<span class='notice'>You toggle the gunlight [F.on ? "on":"off"].</span>"
playsound(user, 'sound/weapons/empty.ogg', 100, 1)
update_gunlight(user)
return
/obj/item/weapon/gun/proc/update_gunlight(var/mob/user = null)
if(F)
if(F.on)
if(loc == user)
user.AddLuminosity(F.brightness_on)
else if(isturf(loc))
SetLuminosity(F.brightness_on)
else
if(loc == user)
user.AddLuminosity(-F.brightness_on)
else if(isturf(loc))
SetLuminosity(0)
update_icon()
else
if(loc == user)
user.AddLuminosity(-5)
else if(isturf(loc))
SetLuminosity(0)
return
/obj/item/weapon/gun/pickup(mob/user)
if(F)
if(F.on)
user.AddLuminosity(F.brightness_on)
SetLuminosity(0)
/obj/item/weapon/gun/dropped(mob/user)
if(F)
if(F.on)
user.AddLuminosity(-F.brightness_on)
SetLuminosity(F.brightness_on)
+7
View File
@@ -45,6 +45,13 @@
icon_state = "[initial(icon_state)][ratio]"
else
icon_state = "energy0"
overlays.Cut()
if(F)
if(F.on)
overlays += "flight-on"
else
overlays += "flight"
return
/*
attackby(obj/item/weapon/W, mob/user)
@@ -1,15 +1,16 @@
/obj/item/weapon/gun/energy/advtaser
name = "advanced taser"
name = "hybrid taser"
desc = "A hybrid taser designed to fire both short-range high-power electrodes and long-range disabler beams."
icon_state = "advtaser"
item_state = null //so the human update icon uses the icon_state instead.
icon_override = 'icons/mob/in-hand/guns.dmi'
cell_type = "/obj/item/weapon/cell/crap"
cell_type = "/obj/item/weapon/cell"
origin_tech = null
fire_sound = 'sound/weapons/Taser.ogg'
projectile_type = "/obj/item/projectile/energy/electrode"
charge_cost = 1000
charge_cost = 2000
modifystate = "advtaserstun"
can_flashlight = 1
var/mode = 0 //0 = stun, 1 = disable
@@ -25,7 +26,7 @@
modifystate = "advtaserdisable"
if(1)
mode = 0
charge_cost = 1000
charge_cost = 2000
fire_sound = 'sound/weapons/Taser.ogg'
user << "\red [src.name] is now set to stun."
projectile_type = "/obj/item/projectile/energy/electrode"
@@ -8,6 +8,7 @@
projectile_type = "/obj/item/projectile/beam/disabler"
origin_tech = "combat=3;magnets=2"
modifystate = "energystun"
can_flashlight = 1
var/mode = 0 //0 = disable, 1 = kill
@@ -47,6 +48,7 @@
projectile_type = "/obj/item/projectile/energy/electrode"
var/lightfail = 0
var/charge_tick = 0
can_flashlight = 0
New()
..()
+1 -1
View File
@@ -44,7 +44,7 @@
/obj/item/weapon/gun/energy/stunrevolver
name = "stun revolver"
desc = "A high-tech revolver that fires internal, reusable stun cartidges in a revolving cylinder."
desc = "A high-tech revolver that fires internal, reusable stun cartidges in a revolving cylinder. Holds twice as much ammo as a standard taser."
icon_state = "stunrevolver"
fire_sound = "sound/weapons/gunshot.ogg"
origin_tech = "combat=3;materials=3;powerstorage=2"
@@ -49,6 +49,7 @@
icon_state = "omnilaser"
damage = 36
damage_type = STAMINA
flag = "energy"
hitsound = 'sound/weapons/tap.ogg'
eyeblur = 0
+14 -9
View File
@@ -8,19 +8,20 @@
embed = 1
sharp = 1
/obj/item/projectile/bullet/weakbullet
/obj/item/projectile/bullet/weakbullet //beanbag, heavy stamina damage
damage = 5
stamina = 33
stamina = 80
/obj/item/projectile/bullet/weakbullet/rubber //beanbag shotgun shells
/obj/item/projectile/bullet/weakbullet/rubber //beanbag that shells that don't embed
embed = 0
sharp = 0
/obj/item/projectile/bullet/weakbullet2
/obj/item/projectile/bullet/weakbullet2 //detective revolver instastuns, but multiple shots are better for keeping punks down
damage = 15
stamina = 75 //the detective can't shoot in bursts and will get yelled at if he sinks 50 rounds into perps to stun 'em
weaken = 3
stamina = 50
/obj/item/projectile/bullet/weakbullet2/rubber //detective's c38 bullets
/obj/item/projectile/bullet/weakbullet2/rubber //detective's bullets that don't embed
embed = 0
sharp = 0
@@ -40,7 +41,7 @@
/obj/item/projectile/bullet/midbullet
damage = 20
stamina = 50
stamina = 65 //two rounds from the c20r knocks people down
/obj/item/projectile/bullet/midbullet2
damage = 25
@@ -52,11 +53,15 @@
damage = 35
/obj/item/projectile/bullet/stunshot
/obj/item/projectile/bullet/stunshot//taser slugs for shotguns, nothing special
name = "stunshot"
damage = 5
stamina = 95
stun = 5
weaken = 5
stutter = 5
jitter = 20
icon_state = "spark"
range = 7
embed = 0
sharp = 0
@@ -30,7 +30,6 @@
icon_state= "bolter"
damage = 60
flag = "bullet"
range = 7
/obj/item/projectile/bullet/a40mm/on_hit(atom/target, blocked = 0)
explosion(target, -1, 0, 2, 1, 0)