Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22,169 changes: 11,110 additions & 11,059 deletions _maps/map_files/TexasWasteland/texas_wasteland.dmm

Large diffs are not rendered by default.

41,245 changes: 20,689 additions & 20,556 deletions _maps/map_files/TexasWasteland/z2.dmm

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions code/__DEFINES/misc.dm
Original file line number Diff line number Diff line change
Expand Up @@ -278,6 +278,7 @@ var/global/list/ghost_others_options = list(GHOST_OTHERS_SIMPLE, GHOST_OTHERS_DE

//Color Defines
#define OOC_COLOR "#002eb8"
#define LOOC_COLOR "#004942"

/////////////////////////////////////
// atom.appearence_flags shortcuts //
Expand Down
4 changes: 2 additions & 2 deletions code/__DEFINES/radio.dm
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#define MIN_FREE_FREQ 1201
#define MAX_FREE_FREQ 1599

#define MIN_FREQ 1441
#define MAX_FREQ 1489
#define MIN_FREQ 1400
#define MAX_FREQ 1499
7 changes: 7 additions & 0 deletions code/controllers/subsystem/jobs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ var/datum/subsystem/job/SSjob
SetupOccupations()
if(config.load_jobs_from_txt)
LoadJobs()
SetupFactionRadios()
..()


Expand Down Expand Up @@ -66,6 +67,12 @@ var/datum/subsystem/job/SSjob
#endif
human_factions[faction.id] = faction

/datum/subsystem/job/proc/SetupFactionRadios()
var/obj/item/device/radio/R
for(R in world)
R.attempt_faction_radio_freq()


/datum/subsystem/job/proc/SetupStatus()
var/list/status = subtypesof(/datum/status)
for(var/S in status)
Expand Down
3 changes: 2 additions & 1 deletion code/modules/client/verbs/ooc.dm
Original file line number Diff line number Diff line change
Expand Up @@ -163,7 +163,7 @@
display_name = "[holder.fakekey]/([src.key])"
else
display_name = holder.fakekey
to_chat(C, "<font color='[normal_ooc_colour]'><span class='ooc'><span class='prefix'>LOOC:</span> <EM>[display_name]:</EM> <span class='message'>[msg]</span></span></font>")
to_chat(C, "<font color='[normal_looc_colour]'><span class='ooc'><span class='prefix'>|LOOC|:</span> <EM>[display_name]:</EM> <span class='message'>[msg]</span></span></font>")

/mob/proc/get_looc_source()
return src
Expand All @@ -180,6 +180,7 @@
to_chat(world, "<B>The OOC channel has been globally [ooc_allowed ? "enabled" : "disabled"].</B>")

var/global/normal_ooc_colour = OOC_COLOR
var/global/normal_looc_colour = LOOC_COLOR

/client/proc/set_ooc(newColor as color)
set name = "Set Player OOC Color"
Expand Down
29 changes: 29 additions & 0 deletions code/modules/fallout/misc/jobs/faction/radios.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
// get_faction_datum()

/obj/item/device/radio
var/faction = 0

/obj/item/device/radio/New()
. = ..()
attempt_faction_radio_freq()

/obj/item/device/radio/proc/attempt_faction_radio_freq()
if(faction)
var/datum/f13_faction/F = get_faction_datum(faction)
if(F)
set_frequency(F.freq)

/obj/item/device/radio/faction/ncr
faction = "ncr"
/obj/item/device/radio/faction/bs
faction = "bs"
/obj/item/device/radio/faction/enclave
faction = "enclave"
/obj/item/device/radio/faction/raiders
faction = "raiders"
/obj/item/device/radio/faction/legion
faction = "legion"
/obj/item/device/radio/faction/city
faction = "city"
/obj/item/device/radio/faction/vault
faction = "vault"
24 changes: 17 additions & 7 deletions code/modules/mob/living/carbon/human/human_defense.dm
Original file line number Diff line number Diff line change
Expand Up @@ -149,13 +149,14 @@
if(I.throw_speed >= EMBED_THROWSPEED_THRESHOLD)
if(can_embed(I))
if(prob(I.embed_chance) && !(dna && (PIERCEIMMUNE in dna.species.species_traits)))
throw_alert("embeddedobject", /obj/screen/alert/embeddedobject)
//throw_alert("embeddedobject", /obj/screen/alert/embeddedobject)
var/obj/item/bodypart/L = pick(bodyparts)
L.embedded_objects |= I
I.add_mob_blood(src)//it embedded itself in you, of course it's bloody!
I.forceMove(src)
L.receive_damage(I.w_class*I.embedded_impact_pain_multiplier)
visible_message("<span class='danger'>\the [I.name] embeds itself in [src]'s [L.name]!</span>","<span class='userdanger'>\the [I.name] embeds itself in your [L.name]!</span>")
embed_item_in_bodypart(I,L)
//L.embedded_objects |= I
//I.add_mob_blood(src)//it embedded itself in you, of course it's bloody!
//I.forceMove(src)
//L.receive_damage(I.w_class*I.embedded_impact_pain_multiplier)
//visible_message("<span class='danger'>\the [I.name] embeds itself in [src]'s [L.name]!</span>","<span class='userdanger'>\the [I.name] embeds itself in your [L.name]!</span>")
hitpush = 0
skipcatch = 1 //can't catch the now embedded item

Expand Down Expand Up @@ -752,4 +753,13 @@
torn_items += leg_clothes

for(var/obj/item/I in torn_items)
I.take_damage(damage_amount, damage_type, damage_flag, 0)
I.take_damage(damage_amount, damage_type, damage_flag, 0)


/mob/living/carbon/human/proc/embed_item_in_bodypart(var/obj/item/I, var/obj/item/bodypart/L)
throw_alert("embeddedobject", /obj/screen/alert/embeddedobject)
L.embedded_objects |= I
I.add_mob_blood(src)
I.forceMove(src)
L.receive_damage(I.w_class*I.embedded_impact_pain_multiplier)
visible_message("<span class='danger'>\the [I.name] embeds itself in [src]'s [L.name]!</span>","<span class='userdanger'>\the [I.name] embeds itself in your [L.name]!</span>")
2 changes: 1 addition & 1 deletion code/modules/mob/mob_movement.dm
Original file line number Diff line number Diff line change
Expand Up @@ -323,7 +323,7 @@
/mob/proc/Move_Pulled(atom/A, forced=0)
if(!pulling)
return
if(forced)
if(forced && !pulling.anchored)
pulling.Move(A)
return

Expand Down
10 changes: 9 additions & 1 deletion code/modules/projectiles/guns/ballistic/bow.dm
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,8 @@
ready_to_fire = TRUE
playsound(user, draw_sound, 100, 1)
update_icon()
if(!wielded)
attempt_wield(user)
else
ready_to_fire = FALSE
update_icon()
Expand All @@ -65,6 +67,12 @@
ready_to_fire = FALSE
update_icon()

/obj/item/weapon/gun/ballistic/bow/process_fire(atom/target as mob|obj|turf, mob/living/user as mob|obj, message = 1, params, zone_override, bonus_spread = 0)
. = ..()
if(wielded)
attempt_wield(user)


// ammo
/obj/item/ammo_box/magazine/internal/bow
name = "bow internal magazine"
Expand Down Expand Up @@ -92,7 +100,7 @@
caliber = "arrow"


/obj/item/ammo_casing/caseless/bolt
/obj/item/ammo_casing/caseless/bolt
name = "arrow"
desc = "It just looks like a piece of rebar..."
icon_state = "arrow-live"
Expand Down
22 changes: 20 additions & 2 deletions code/modules/projectiles/projectile/reusable.dm
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,19 @@
desc = "How do you even reuse a bullet?"
var/ammo_type = /obj/item/ammo_casing/caseless
var/dropped = 0
var/embeddable = 0
impact_effect_type = null

/obj/item/projectile/bullet/reusable/on_hit(atom/target, blocked = 0)
. = ..()
if(embeddable)
if(prob(damage))
handle_embed(target)
return .

handle_drop()


/obj/item/projectile/bullet/reusable/on_range()
handle_drop()
..()
Expand All @@ -19,6 +26,16 @@
new ammo_type(T)
dropped = 1

/obj/item/projectile/bullet/reusable/proc/handle_embed(atom/target)
if(istype(target, /mob/living/carbon/human))
var/mob/living/carbon/human/H = target
if(!dropped)
var/turf/T = get_turf(src)
var/obj/item/ammo_casing/caseless/EMBEDDER = new ammo_type(T)
var/obj/item/bodypart/L = pick(H.bodyparts)
H.embed_item_in_bodypart(EMBEDDER, L)
dropped = 1

/obj/item/projectile/bullet/reusable/magspear
name = "magnetic spear"
desc = "WHITE WHALE, HOLY GRAIL"
Expand Down Expand Up @@ -73,5 +90,6 @@
icon_state = "arrow"
ammo_type = /obj/item/ammo_casing/caseless/arrow
range = 10
damage = 25
damage_type = BRUTE
damage = 35 // Arrows hurt a lot, actually, and if a kitchen knife is going to deal 35, an arrow should too - Sansaur
damage_type = BRUTE
embeddable = 1
1 change: 1 addition & 0 deletions fallout13.dme
Original file line number Diff line number Diff line change
Expand Up @@ -1241,6 +1241,7 @@
#include "code\modules\fallout\misc\economy\writing.dm"
#include "code\modules\fallout\misc\jobs\jobs.dm"
#include "code\modules\fallout\misc\jobs\faction\faction.dm"
#include "code\modules\fallout\misc\jobs\faction\radios.dm"
#include "code\modules\fallout\misc\jobs\job\brotherhood.dm"
#include "code\modules\fallout\misc\jobs\job\city.dm"
#include "code\modules\fallout\misc\jobs\job\enclave.dm"
Expand Down