Skip to content

Commit

Permalink
UPDATE
Browse files Browse the repository at this point in the history
Recent fixes, balances, and updates.
  • Loading branch information
apophis775 committed Jul 12, 2015
1 parent 7689e82 commit 2b0d9ed
Show file tree
Hide file tree
Showing 91 changed files with 10,719 additions and 9,951 deletions.
3 changes: 3 additions & 0 deletions baystation12.dme
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@
#define FILE_DIR "html"
#define FILE_DIR "icons"
#define FILE_DIR "icons/48x48"
#define FILE_DIR "icons/DONOR"
#define FILE_DIR "icons/DONOR/processed"
#define FILE_DIR "icons/effects"
#define FILE_DIR "icons/mecha"
#define FILE_DIR "icons/misc"
Expand Down Expand Up @@ -896,6 +898,7 @@
#include "code\modules\maps\writer.dm"
#include "code\modules\marines\AdminClock.dm"
#include "code\modules\marines\closets.dm"
#include "code\modules\marines\Donor_Items.dm"
#include "code\modules\marines\machinegun.dm"
#include "code\modules\marines\marine_areas.dm"
#include "code\modules\marines\marine_clothing.dm"
Expand Down
2 changes: 2 additions & 0 deletions code/ATMOSPHERICS/components/unary/vent_pump.dm
Original file line number Diff line number Diff line change
Expand Up @@ -271,13 +271,15 @@
return

attackby(obj/item/W, mob/user)
/*
if(istype(user, /mob/living/carbon/alien))
welded = 0
update_icon()
user.visible_message( \
"[user] claws at \the [src].", \
"\blue You have unwelded \the [src] with your claws.", \
"You hear a scraping of metal.")
*/
if(istype(W, /obj/item/weapon/weldingtool))
var/obj/item/weapon/weldingtool/WT = W
if (WT.remove_fuel(0,user))
Expand Down
4 changes: 2 additions & 2 deletions code/_onclick/hud/alien.dm
Original file line number Diff line number Diff line change
Expand Up @@ -217,8 +217,8 @@
mymob.healths.screen_loc = ui_alien_health

mymob.alien_plasma_display = new /obj/screen()
mymob.alien_plasma_display.icon = 'icons/mob/screen_gen.dmi'
mymob.alien_plasma_display.icon_state = "power_display2"
mymob.alien_plasma_display.icon = 'icons/mob/screen1_alien.dmi'
mymob.alien_plasma_display.icon_state = "plasma0"
mymob.alien_plasma_display.name = "plasma stored"
mymob.alien_plasma_display.screen_loc = ui_alienplasmadisplay

Expand Down
32 changes: 32 additions & 0 deletions code/controllers/_DynamicAreaLighting_TG.dm
Original file line number Diff line number Diff line change
Expand Up @@ -168,6 +168,9 @@ atom/movable/Del()
//If we have no light it will create one.
//If we are setting luminosity to 0 the light will be cleaned up and delted once all its queues are complete
//if we have a light already it is merely updated


/* This code is... Not so great.
atom/proc/SetLuminosity(new_luminosity, max_luminosity = LIGHTING_MAX_LUMINOSITY)
if(new_luminosity < 0)
new_luminosity = 0
Expand All @@ -176,6 +179,35 @@ atom/proc/SetLuminosity(new_luminosity, max_luminosity = LIGHTING_MAX_LUMINOSITY
new_luminosity = max_luminosity
// if(luminosity != new_luminosity)
// world.log << "## WARNING: [type] - LIGHT_MAX_LUMINOSITY exceeded"
*/

/atom/var/luminosity_actual = 0

atom/proc/SetLuminosity(new_luminosity, max_luminosity = LIGHTING_MAX_LUMINOSITY)

luminosity_actual += new_luminosity - luminosity // Calculate the change in luminosity and store it into the variable luminosity_actual.
if(luminosity_actual < 0) //This should never happen, but still...
luminosity_actual = 0
new_luminosity = 0
// world.log << "## WARNING: [type] - luminosity cannot be negative"
else if(max_luminosity < luminosity_actual) //Make sure we don't go over the max_luminosity
new_luminosity = max_luminosity
else
new_luminosity = luminosity_actual
// if(luminosity != new_luminosity)
// world.log << "## WARNING: [type] - LIGHT_MAX_LUMINOSITY exceeded"

if(isturf(loc))
if(light)
if(luminosity != new_luminosity) //TODO: remove lights from the light list when they're not luminous? DONE in add_effect
light.changed = 1
else
if(new_luminosity)
light = new(src)

luminosity = new_luminosity



if(isturf(loc))
if(light)
Expand Down
7 changes: 5 additions & 2 deletions code/controllers/voting.dm
Original file line number Diff line number Diff line change
Expand Up @@ -304,13 +304,16 @@ datum/controller/vote
else
. += "<h2>Start a vote:</h2><hr><ul><li>"
//restart
if(trialmin || config.allow_vote_restart)
if(trialmin)
. += "<a href='?src=\ref[src];vote=restart'>Restart</a>"
else
. += "<font color='grey'>Restart (Disallowed)</font>"
. += "</li><li>"
if(trialmin || config.allow_vote_restart)
. += "<a href='?src=\ref[src];vote=crew_transfer'>Crew Transfer</a>"
if(admins.len > 0 && !trialmin)
. += "Crew Transfer (Disabled - Staff online)"
else
. += "<a href='?src=\ref[src];vote=crew_transfer'>Crew Transfer</a>"
else
. += "<font color='grey'>Crew Transfer (Disallowed)</font>"
if(trialmin)
Expand Down
10 changes: 8 additions & 2 deletions code/game/atoms_movable.dm
Original file line number Diff line number Diff line change
Expand Up @@ -57,8 +57,14 @@
src.throwing = 0
if(isobj(A))
if(A.density && !A.throwpass) // **TODO: Better behaviour for windows which are dense, but shouldn't always stop movement
src.throw_impact(A,speed)
src.throwing = 0
if(istype(A,/obj/structure/window)) // DONE. Anything else?
if(!A.CanPass(src, get_turf(src.thrower)) || (!A.CheckExit(src, get_turf(src.thrower))))
src.throw_impact(A,speed)
src.throwing = 0

else
src.throw_impact(A,speed)
src.throwing = 0

/atom/movable/proc/throw_at(atom/target, range, speed, thrower)
if(!target || !src) return 0
Expand Down
13 changes: 10 additions & 3 deletions code/game/jobs/job/marines.dm
Original file line number Diff line number Diff line change
Expand Up @@ -125,7 +125,14 @@
minimal_player_age = 7
equip(var/mob/living/carbon/human/H)
if(!H) return 0
H.equip_to_slot_or_del(new /obj/item/clothing/under/pj/red(H), slot_w_uniform)
H.equip_to_slot_or_del(new /obj/item/clothing/shoes/slippers(H), slot_shoes)
H.equip_to_slot_or_del(new /obj/item/device/radio/marine(H), slot_l_store)
switch(H.backbag)
if(2) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/medic(H), slot_back)
if(3) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel_med(H), slot_back)
if(4) H.equip_to_slot_or_del(new /obj/item/weapon/storage/backpack/satchel(H), slot_back)
H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/labcoat(H), slot_wear_suit)
H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/medical(H), slot_w_uniform)
H.equip_to_slot_or_del(new /obj/item/clothing/shoes/white(H), slot_shoes)
H.equip_to_slot_or_del(new /obj/item/device/flashlight/pen(H), slot_s_store)
H.equip_to_slot_or_del(new /obj/item/weapon/storage/belt/medical(H), slot_belt)
H.equip_to_slot_or_del(new /obj/item/device/radio/headset/msulaco(H), slot_l_ear)
return 1
6 changes: 6 additions & 0 deletions code/game/machinery/computer/computer.dm
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@
active_power_usage = 300
var/obj/item/weapon/circuitboard/circuit = null //if circuit==null, computer can't disassembly
var/processing = 0
var/exproof = 0
var/bulletproof = 0
var/aliens_understand = 0

/obj/machinery/computer/New()
Expand Down Expand Up @@ -47,6 +49,8 @@


/obj/machinery/computer/ex_act(severity)
if(exproof)
return
switch(severity)
if(1.0)
del(src)
Expand All @@ -68,6 +72,8 @@
return

/obj/machinery/computer/bullet_act(var/obj/item/projectile/Proj)
if(bulletproof)
return
if(prob(Proj.damage))
set_broken()
..()
Expand Down
2 changes: 1 addition & 1 deletion code/game/machinery/doors/airlock_electronics.dm
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
m_amt = 50
g_amt = 50

req_access = list(access_engine)
req_one_access = list(access_alpha_eprep, access_bravo_eprep, access_charlie_eprep, access_delta_eprep)

var/list/conf_access = null
var/one_access = 0 //if set to 1, door would receive req_one_access instead of req_access
Expand Down
11 changes: 9 additions & 2 deletions code/game/machinery/shieldgen.dm
Original file line number Diff line number Diff line change
Expand Up @@ -392,7 +392,14 @@
user.visible_message("[user] turned the shield generator off.", \
"You turn off the shield generator.", \
"You hear heavy droning fade out.")
src.cleanup()
spawn(1)
src.cleanup(1)
spawn(2)
src.cleanup(2)
spawn(3)
src.cleanup(4)
spawn(4)
src.cleanup(8)
else
src.active = 1
icon_state = "Shield_Gen +a"
Expand Down Expand Up @@ -642,4 +649,4 @@
if (istype(mover, /obj/item/projectile))
return prob(10)
else
return !src.density
return !src.density
8 changes: 8 additions & 0 deletions code/game/objects/items/weapons/explosives.dm
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,14 @@
if (ismob(target))
target:attack_log += "\[[time_stamp()]\]<font color='orange'> Had the [name] planted on them by [user.real_name] ([user.ckey])</font>"
user.visible_message("\red [user.name] finished planting an explosive on [target.name]!")
else
var/turf/end_T = get_turf(target)
if(end_T)
var/end_T_descriptor = "<font color='#6b4400'> [end_T.x], [end_T.y], [end_T.z] in area [get_area(end_T)]</font>"

user.attack_log += text("\[[time_stamp()]\] <font color='blue'>Has planted [name] on a <font color='purple'>[target.name]</font> at [end_T_descriptor]</font>")
msg_admin_attack("<font color='blue'>[user.name] ([user.ckey]) has planted [name] on a <font color='purple'>[target.name]</font> at [end_T_descriptor]</font>")

target.overlays += image('icons/obj/assemblies.dmi', "plastic-explosive2")
user << "Bomb has been planted. Timer counting down from [timer]."
spawn(timer*10)
Expand Down
85 changes: 43 additions & 42 deletions code/game/objects/items/weapons/grenades/flashbang.dm
Original file line number Diff line number Diff line change
Expand Up @@ -55,48 +55,49 @@


//Now applying sound
if((get_dist(M, T) <= 2 || src.loc == M.loc || src.loc == M))
if(ear_safety > 0)
M.Stun(2)
M.Weaken(1)
else
M.Stun(10)
M.Weaken(3)
if ((prob(14) || (M == src.loc && prob(70))))
M.ear_damage += rand(1, 10)
if (!istype(M, /mob/living/carbon/alien)) //Aliens are not supposed to go deaf in Colonial Marines.
if((get_dist(M, T) <= 2 || src.loc == M.loc || src.loc == M))
if(ear_safety > 0)
M.Stun(2)
M.Weaken(1)
else
M.ear_damage += rand(0, 5)
M.ear_deaf = max(M.ear_deaf,15)

else if(get_dist(M, T) <= 5)
if(!ear_safety)
M.Stun(8)
M.ear_damage += rand(0, 3)
M.ear_deaf = max(M.ear_deaf,10)

else if(!ear_safety)
M.Stun(4)
M.ear_damage += rand(0, 1)
M.ear_deaf = max(M.ear_deaf,5)

//This really should be in mob not every check
if (M.eye_stat >= 20)
M << "\red Your eyes start to burn badly!"
M.disabilities |= NEARSIGHTED
if(!banglet && !(istype(src , /obj/item/weapon/grenade/flashbang/clusterbang)))
if (prob(M.eye_stat - 20 + 1))
M << "\red You can't see anything!"
M.sdisabilities |= BLIND
if (M.ear_damage >= 15)
M << "\red Your ears start to ring badly!"
if(!banglet && !(istype(src , /obj/item/weapon/grenade/flashbang/clusterbang)))
if (prob(M.ear_damage - 10 + 5))
M << "\red You can't hear anything!"
M.sdisabilities |= DEAF
else
if (M.ear_damage >= 5)
M << "\red Your ears start to ring!"
M.update_icons()
M.Stun(10)
M.Weaken(3)
if ((prob(14) || (M == src.loc && prob(70))))
M.ear_damage += rand(1, 10)
else
M.ear_damage += rand(0, 5)
M.ear_deaf = max(M.ear_deaf,15)

else if(get_dist(M, T) <= 5)
if(!ear_safety)
M.Stun(8)
M.ear_damage += rand(0, 3)
M.ear_deaf = max(M.ear_deaf,10)

else if(!ear_safety)
M.Stun(4)
M.ear_damage += rand(0, 1)
M.ear_deaf = max(M.ear_deaf,5)

//This really should be in mob not every check
if (M.eye_stat >= 20)
M << "\red Your eyes start to burn badly!"
M.disabilities |= NEARSIGHTED
if(!banglet && !(istype(src , /obj/item/weapon/grenade/flashbang/clusterbang)))
if (prob(M.eye_stat - 20 + 1))
M << "\red You can't see anything!"
M.sdisabilities |= BLIND
if (M.ear_damage >= 15)
M << "\red Your ears start to ring badly!"
if(!banglet && !(istype(src , /obj/item/weapon/grenade/flashbang/clusterbang)))
if (prob(M.ear_damage - 10 + 5))
M << "\red You can't hear anything!"
M.sdisabilities |= DEAF
else
if (M.ear_damage >= 5)
M << "\red Your ears start to ring!"
M.update_icons()


/obj/item/weapon/grenade/flashbang/clusterbang//Created by Polymorph, fixed by Sieve
Expand Down Expand Up @@ -169,4 +170,4 @@
var/dettime = rand(15,60)
spawn(dettime)
prime()
..()
..()
7 changes: 7 additions & 0 deletions code/game/objects/items/weapons/grenades/grenade.dm
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,13 @@
if(clown_check(user))
user << "<span class='warning'>You prime \the [name]! [det_time/10] seconds!</span>"

//Now add that to the logs
var/turf/start_T = get_turf(loc) //Get the start tile for the descriptors
if(start_T)
var/start_T_descriptor = "<font color='#6b5d00'>at [start_T.x], [start_T.y], [start_T.z] in area [get_area(start_T)]</font>"

user.attack_log += text("\[[time_stamp()]\] <font color='red'>Has primed a <font color='blue'>[name]</font> [start_T_descriptor].</font>")

activate(user)
add_fingerprint(user)
if(iscarbon(user))
Expand Down
4 changes: 2 additions & 2 deletions code/game/objects/items/weapons/manuals.dm
Original file line number Diff line number Diff line change
Expand Up @@ -800,7 +800,7 @@

/obj/item/weapon/book/manual/millaw
name = "Marine law"
icon_state ="bookNuclear"
icon_state ="bookSpaceLaw"
author = "Nanotrasen Military"
title = "Marine law"

Expand Down Expand Up @@ -889,7 +889,7 @@

/obj/item/weapon/book/manual/milmanual
name = "Military Police manual"
icon_state ="bookNuclear"
icon_state ="bookHacking"
author = "Nanotrasen Military"
title = "Military Police manual"

Expand Down
5 changes: 3 additions & 2 deletions code/game/objects/items/weapons/storage/storage.dm
Original file line number Diff line number Diff line change
Expand Up @@ -255,7 +255,7 @@
if(usr)
if (usr.client && usr.s_active != src)
usr.client.screen -= W
W.dropped(usr)
// W.dropped(usr) Items put into a backpack are decreasing the user's luminosity twice, so this line is probably unecessary.
add_fingerprint(usr)

if(!prevent_warning && !istype(W, /obj/item/weapon/gun/energy/crossbow))
Expand Down Expand Up @@ -328,7 +328,8 @@
W.loc = user.loc
if ((user.client && user.s_active != src))
user.client.screen -= W
W.dropped(user)
// W.dropped(user) Items put into a backpack are decreasing the user's luminosity twice, so this line is probably unecessary.
// And yeah, I know this part of the code handles trays. But I don't care.
user << "\red God damnit!"

handle_item_insertion(W)
Expand Down
2 changes: 1 addition & 1 deletion code/game/objects/items/weapons/swords_axes_etc.dm
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@
for(var/mob/O in viewers(M))
if (O.client) O.show_message("\red <B>[M] has been beaten with \the [src] by [user]!</B>", 1, "\red You hear someone fall", 2)
else
playsound(src.loc, 'sound/weapons/Genhit.ogg', 50, 1, -1)
// playsound(src.loc, 'sound/weapons/Genhit.ogg', 50, 1, -1)
M.Stun(5)
M.Weaken(5)
M.attack_log += text("\[[time_stamp()]\] <font color='orange'>Has been attacked with [src.name] by [user.name] ([user.ckey])</font>")
Expand Down
2 changes: 1 addition & 1 deletion code/game/objects/storage/coat.dm
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,7 @@
if ((user.client && user.s_active != src))
user.client.screen -= W
src.orient2hud(user)
W.dropped(user)
// W.dropped(user) Lit items put into a suit are decreasing the user's luminosity twice, so this line is probably unecessary.
add_fingerprint(user)
show_to(user)

Expand Down
Loading

0 comments on commit 2b0d9ed

Please sign in to comment.