Skip to content

Commit

Permalink
Minor Fixes and Changes
Browse files Browse the repository at this point in the history
Some more fixing and linter appeasement. Aside from some minor changes here and there, fixes mobs vaulting over south-facing barricades and appropriate ledges so that they are over the thing they are vaulting instead of under it.
  • Loading branch information
FslashN committed Mar 30, 2024
1 parent a55118c commit cca6851
Show file tree
Hide file tree
Showing 19 changed files with 350 additions and 301 deletions.
2 changes: 1 addition & 1 deletion code/__DEFINES/access.dm
Original file line number Diff line number Diff line change
Expand Up @@ -259,4 +259,4 @@ Blackstone Bridge.

//For the Brits.
#define ACCESS_LIST_TWE_ALL "TWE (ALL)"
#define ACCESS_LIST_TWE_REGIONS "TWE Access Regions"
#define ACCESS_LIST_TWE_REGIONS "TWE Access Regions"
2 changes: 1 addition & 1 deletion code/__DEFINES/vendors.dm
Original file line number Diff line number Diff line change
Expand Up @@ -68,4 +68,4 @@
//Only relevant in big vendors, like Requisitions or Squad Prep
#define VEND_LOAD_AMMO_BOXES (1<<9)
//If the vendor has some specialized behavior that needs to override other behavior. Crutch, best to refactor appropriate code.
#define VEND_SPECIALIZED_STOCK (1<<10)
#define VEND_SPECIALIZED_STOCK (1<<10)
2 changes: 1 addition & 1 deletion code/datums/factions/faction.dm
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ Ovewrite this for individual factions if they get their own ID changing consoles
Since there are no proper colonist jobs, instead having survivors, this is defaulted to the marine role list. Update as needed.
*/
/datum/faction/proc/get_faction_departments(faction_to_check)
if(Check_WO())
if(Check_WO())//This check is a crutch for now. WO can be removed entirely given that it's pretty old and is mostly replaced by the Remote Outpost.
return list(
"Command" = ROLES_CIC & ROLES_WO,
"Auxiliary Command" = ROLES_AUXIL_SUPPORT & ROLES_WO,
Expand Down
24 changes: 12 additions & 12 deletions code/game/area/WhiskeyOutpost.dm
Original file line number Diff line number Diff line change
Expand Up @@ -207,12 +207,12 @@
*/

/area/whiskey_outpost/blackstone
name = "\improper Whiskey Outpost Blackstone Area"
name = "\improper Blackstone Bridge Area"
fake_zlevel = MAP_FAKE_Z_BLACKSTONE_GROUND //So they are not the same as the Almayer fake z's. Stupid, but necessary.
sound_environment = SOUND_ENVIRONMENT_GENERIC

/*
There are some areas that start out unpowered but can be powered, mostly near the outpost or supply warehouse. They have the "whiskey_outpost"
There are some areas that start out unpowered but can be powered, mostly near the outpost or supply warehouse. They have the "outpost_29"
powernet. Everything else isn't really meant to be powered on, though it can be other than the river. These areas are on the "ground"
powernet.
*/
Expand All @@ -225,7 +225,7 @@ powernet.

/area/whiskey_outpost/blackstone/inside
name = "\improper Interior Whiskey Outpost"
powernet_name = "whiskey_outpost"
powernet_name = "outpost_29"
ceiling = CEILING_METAL
minimap_color = MINIMAP_AREA_COLONY
sound_environment = SOUND_ENVIRONMENT_ROOM
Expand Down Expand Up @@ -394,7 +394,7 @@ powernet.
sound_environment = SOUND_ENVIRONMENT_FOREST

/area/whiskey_outpost/blackstone/outside/outpost
powernet_name = "whiskey_outpost"
powernet_name = "outpost_29"
icon_state = "platform_n"

/area/whiskey_outpost/blackstone/outside/outpost/north
Expand Down Expand Up @@ -517,7 +517,7 @@ powernet.

/area/whiskey_outpost/blackstone/outside/bridge
icon_state = "platform"
powernet_name = "whiskey_outpost"
powernet_name = "outpost_29"
sound_environment = SOUND_ENVIRONMENT_PARKING_LOT

/area/whiskey_outpost/blackstone/outside/bridge/north
Expand Down Expand Up @@ -554,39 +554,39 @@ powernet.
/area/whiskey_outpost/blackstone/outside/bball_court
name = "\improper Basketball Court"
icon_state = "bball"
powernet_name = "whiskey_outpost"
powernet_name = "outpost_29"
sound_environment = SOUND_ENVIRONMENT_PARKING_LOT

/area/whiskey_outpost/blackstone/outside/boxing_ring
name = "\improper Boxing Ring"
icon_state = "boxing"
powernet_name = "whiskey_outpost"
powernet_name = "outpost_29"
sound_environment = SOUND_ENVIRONMENT_PARKING_LOT

/area/whiskey_outpost/blackstone/outside/central_road
name = "\improper Central Road"
icon_state = "central_road"
powernet_name = "whiskey_outpost"
powernet_name = "outpost_29"
sound_environment = SOUND_ENVIRONMENT_PARKING_LOT

/area/whiskey_outpost/blackstone/outside/perimeter_defense
name = "\improper Perimeter Defense"
icon_state = "perimeter_defense"
powernet_name = "whiskey_outpost"
powernet_name = "outpost_29"
sound_environment = SOUND_ENVIRONMENT_PARKING_LOT

//POWERED

/area/whiskey_outpost/blackstone/outside/mortar_pit
name = "\improper Mortar Pit"
icon_state = "mortarpit"
powernet_name = "whiskey_outpost"
powernet_name = "outpost_29"
sound_environment = SOUND_ENVIRONMENT_QUARRY

/area/whiskey_outpost/blackstone/outside/comm_tower
name = "\improper Communication Tower"
icon_state = "comms"
powernet_name = "whiskey_outpost"
powernet_name = "outpost_29"
minimap_color = MINIMAP_AREA_ENGI
sound_environment = SOUND_ENVIRONMENT_QUARRY

Expand Down Expand Up @@ -698,7 +698,7 @@ Just about all underground areas are unpowered and cannot be powered on other th
/area/whiskey_outpost/blackstone/underground/maintenance
name = "\improper Underground Tunnels"
fake_zlevel = MAP_FAKE_Z_BLACKSTONE_BASEMENT
powernet_name = "whiskey_outpost"
powernet_name = "outpost_29"
ceiling = CEILING_DEEP_UNDERGROUND
minimap_color = MINIMAP_AREA_ENGI
soundscape_playlist = SCAPE_PL_ENG
Expand Down
4 changes: 2 additions & 2 deletions code/game/jobs/job/civilians/support/synthetic.dm
Original file line number Diff line number Diff line change
Expand Up @@ -58,10 +58,10 @@
//Important to have no spacing/tabs in {} blocks as they are rendered directly.
/datum/job/civilian/synthetic/uscm_ground/generate_entry_message()
. = {"You are a synthetic unit deployed to assist the USCM in one of their remote outposts. You are in charge of engineering and maintenance duties. Make sure the lights stay on.
You may perform other duties and functions as assigned by the officers in charge of the operation. You must obey the chain of command: Outpost Commander followed by the Adjunct Officer,
You may perform other duties and functions as assigned by the officers in charge of the operation. You must obey the chain of command: Outpost Commander followed by the Adjunct Officer.
You are not required to follow orders that are clearly dangerous to yourself or others, nonsensical, impossible, or made under duress, even if they come from proper chain of command.

In case of conflicting orders, those higher on the chain of command take priority. Prioritize orders from those higher on the chain of command.
Prioritize orders from those higher on the chain of command. In case of conflicting orders, those higher on the chain of command take priority.
Civilian guests are to be treated on the level of senior enlisted personnel (sergeant and above)."}

/datum/job/civilian/synthetic/uscm_ground/set_spawn_positions(count)
Expand Down
1 change: 1 addition & 0 deletions code/game/jobs/job/command/cic/captain.dm
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,7 @@ Godspeed, Captain and Commander!"}
flags_startup_parameters = ROLE_ADD_TO_DEFAULT
flags_whitelist = NONE
gear_preset = /datum/equipment_preset/uscm_ground/oco
prime_priority = TRUE

/obj/effect/landmark/start/captain
name = JOB_CO
Expand Down
1 change: 1 addition & 0 deletions code/game/jobs/job/command/cic/executive.dm
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ AddTimelock(/datum/job/command/executive, list(
title = JOB_USCM_GROUND_AO
flags_startup_parameters = ROLE_ADD_TO_DEFAULT
gear_preset = /datum/equipment_preset/uscm_ground/ao
prime_priority = TRUE

/obj/effect/landmark/start/executive
name = JOB_XO
Expand Down
1 change: 1 addition & 0 deletions code/game/jobs/job/marine/squad/leader.dm
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@
gear_preset_secondary = /datum/equipment_preset/uscm/leader/uscm_ground/lesser_rank
total_positions = 2
spawn_positions = 2
prime_priority = TRUE
entry_message_body = "You were deemed competent enough to lead a platoon, act accordingly. Make sure your platoon is at task, and correct them if they are not. Delegate to your squad leaders, but let them breathe. Communicate with officers in charge of the outpost and follow their instructions."

/datum/job/marine/leader/whiskey
Expand Down
2 changes: 1 addition & 1 deletion code/game/jobs/job/marine/squads.dm
Original file line number Diff line number Diff line change
Expand Up @@ -737,7 +737,7 @@
if(JOB_SQUAD_LEADER)
num_leaders--

//proc for promoting a Platoon Leader. Moved with away from OW code as it really should be here instead. Also refactored to a degree.
//proc for promoting a Platoon Leader. Moved away from OW code as it really should be here instead. Also refactored to a degree.
/datum/squad/proc/promote_squad_leader(mob/living/carbon/human/selected_sl)
var/mob/living/carbon/human/old_lead = squad_leader
if(old_lead)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ GLOBAL_LIST_INIT(cm_vending_gear_spec, list(
//A special...specialist vendor with actual inventory instead of points. We're old school here. Could maybe even rig it for tokens in the future.
/obj/structure/machinery/cm_vending/sorted/spec
name = "\improper ColMarTech Specialist Field Testing Gear Rack"
desc = "An automated gear rack for Squad Weapons Specialists. Has a small selection of equipment meant for field testing or limited use."
desc = "An automated gear rack for Outpost Weapons Specialists. Has a small selection of equipment meant for field testing or limited use."
icon_state = "spec_gear"
vend_flags = VEND_TO_HAND|VEND_LIMITED_INVENTORY|VEND_SPECIALIZED_STOCK|VEND_USE_VENDOR_FLAGS
vendor_role = list(JOB_SQUAD_SPECIALIST)
Expand Down
15 changes: 15 additions & 0 deletions code/game/objects/structures.dm
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
var/list/debris
var/unslashable = FALSE
var/wrenchable = FALSE
var/climb_layer //If it has a "climb" layer that the mob has to be over to look right climbing. Mostly for platforms.
health = 100
anchored = TRUE
projectile_coverage = PROJECTILE_COVERAGE_MEDIUM
Expand Down Expand Up @@ -139,10 +140,24 @@
user.visible_message(SPAN_WARNING(climb_string))

var/list/grabbed_things = list()
//var/original_layer
for(var/obj/item/grab/grabbing in list(user.l_hand, user.r_hand))
grabbed_things += grabbing.grabbed_thing
/*
Safety in case our layer doesn't reset in time. Not entirely safe, but with a short reset timer, it should. But you never know.
Can also cause issues if we're somehow in a logic fail of going from one thing to another thing with a higher climb_layer. Again, hopefully never comes up.
Xeno large sprites are still entirely cursed when it comes to layering so I am not going to bother trying to fix that. Vehicles too, unfortunately.
*/
if(climb_layer && climb_layer > grabbing.grabbed_thing.layer)
addtimer(VARSET_CALLBACK(grabbing.grabbed_thing, layer, grabbing.grabbed_thing.layer), 0.3 SECONDS)
grabbing.grabbed_thing.layer = climb_layer

grabbing.grabbed_thing.forceMove(user.loc)
if(climb_layer && climb_layer > user.layer)
addtimer(VARSET_CALLBACK(user, layer, user.layer), 0.3 SECONDS)
user.layer = climb_layer
user.forceMove(TT)

for(var/atom/movable/thing as anything in grabbed_things) // grabbed things aren't moved to the tile immediately to: make the animation better, preserve the grab
thing.forceMove(TT)

Expand Down
3 changes: 3 additions & 0 deletions code/game/objects/structures/barricade/barricade.dm
Original file line number Diff line number Diff line change
Expand Up @@ -78,10 +78,13 @@
switch(dir)
if(SOUTH)
layer = ABOVE_MOB_LAYER
climb_layer = layer
if(NORTH)
layer = initial(layer) - 0.01
climb_layer = null
else
layer = initial(layer)
climb_layer = null
if(!anchored)
layer = initial(layer)
else
Expand Down
2 changes: 1 addition & 1 deletion code/game/objects/structures/blocker.dm
Original file line number Diff line number Diff line change
Expand Up @@ -149,7 +149,7 @@ GLOBAL_VAR_INIT(vehicle_blockers, TRUE)
if(invisibility) //It is invisible.
invisibility = 0 //Immediately make it visible.
if(play_sound)
playsound(src, 'sound/effects/rocks_falling.ogg', 75, FALSE)
playsound(src, 'sound/effects/rocks_falling.ogg', 70, FALSE)
visible_message(SPAN_LARGE(SPAN_WARNING("Rocks fall, stones tremble, as a dense pile of debris forms nearby!")), SPAN_WARNING("You hear something collapse and crumble nearby!"))
animate(src, alpha = 255, 1.5 SECONDS) //15 deciseconds, make it opaque.
else
Expand Down
26 changes: 22 additions & 4 deletions code/game/objects/structures/platforms.dm
Original file line number Diff line number Diff line change
Expand Up @@ -25,22 +25,24 @@
icon_state = "platform_stair_alt"
dir = 1


/obj/structure/platform/Initialize()
. = ..()
var/image/I = image(icon, src, "platform_overlay", LADDER_LAYER, dir)//ladder layer puts us just above weeds.
switch(dir)
if(SOUTH)
layer = ABOVE_MOB_LAYER+0.1
layer = ABOVE_MOB_LAYER+0.1 //This is pretty janky as it means mobs get placed under the platform sprite when climbing *over* it. The alternative is that sprites look weird when standing next to platforms.
climb_layer = layer + 0.1
I.pixel_y = -16
if(NORTH)
I.pixel_y = 16
if(EAST)
I.pixel_x = 16
layer = ABOVE_MOB_LAYER+0.1
climb_layer = layer + 0.1
if(WEST)
I.pixel_x = -16
layer = ABOVE_MOB_LAYER+0.1
climb_layer = layer + 0.1
overlays += I

/obj/structure/platform/initialize_pass_flags(datum/pass_flags_container/PF)
Expand All @@ -52,10 +54,26 @@
if(ismob(AM))
do_climb(AM)
..()
/*
/obj/structure/platform/BlockedExitDirs(obj/vehicle/multitile/V, target_dir)
to_world(SPAN_DEBUG("Vehicle exit detected."))
if(istype(V))
//if(REVERSE_DIR(dir) == target_dir)
if(dir == target_dir)
to_world(SPAN_DEBUG("Directions match, colliding."))
return BLOCKED_MOVEMENT
else return NO_BLOCKED_MOVEMENT
return ..()
*/
/obj/structure/platform/BlockedPassDirs(atom/movable/mover, target_dir)
if(istype(mover, /obj/vehicle/multitile))
return BLOCKED_MOVEMENT
// if(istype(V))
// if()

var/obj/vehicle/multitile/V = mover
if(istype(V) && dir == target_dir)
return


var/obj/structure/S = locate(/obj/structure) in get_turf(mover)
if(S && S.climbable && !(S.flags_atom & ON_BORDER) && climbable && isliving(mover)) //Climbable objects allow you to universally climb over others
Expand Down
4 changes: 2 additions & 2 deletions code/modules/cm_marines/equipment/kit_boxes.dm
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,7 @@
//Happening.
/obj/item/storage/box/spec/B18
name = "\improper B18 heavy armor case"
desc = "A large case containing the experimental B18 armor platform, designed minimize battlefield injury. It's heavy, uncomfortable to wear for more than five minutes, and will probably never leave field testing. It's also very effective. \nDrag this sprite onto yourself to open it up! NOTE: You cannot put items back inside this case."
desc = "A large case containing the experimental B18 armor platform, designed minimize battlefield injury. The B18 system is unlikely to leave field testing due to budget cuts even though it is reported to be highly effective (but uncomfortable to wear). \nDrag this sprite onto yourself to open it up! NOTE: You cannot put items back inside this case."
kit_overlay = "b18"

/obj/item/storage/box/spec/B18/fill_preset_inventory()
Expand All @@ -158,7 +158,7 @@

/obj/item/storage/box/spec/sapper
name = "\improper Sapper equipment case"
desc = "A large case containing a variety of materials for constructing in the field, defending choke points, and sabotaging enemy fortifications. Comes with an improved sentry turret and other important equipment. \nDrag this sprite onto yourself to open it up! NOTE: You cannot put items back inside this case."
desc = "A large case containing a variety of materials for constructing in the field, defending choke points, and sabotaging enemy fortifications. Comes with an improved, custom-tuned sentry turret and other important equipment. \nDrag this sprite onto yourself to open it up! NOTE: You cannot put items back inside this case."
kit_overlay = "grenadier"

/obj/item/storage/box/spec/sapper/fill_preset_inventory()
Expand Down
3 changes: 0 additions & 3 deletions maps/Nightmare/maps/Whiskey_Outpost_PvE/nightmare.json

This file was deleted.

1 change: 0 additions & 1 deletion maps/Nightmare/maps/Whiskey_Outpost_PvE/scenario.json

This file was deleted.

Loading

0 comments on commit cca6851

Please sign in to comment.