Skip to content

Commit

Permalink
add: Gorillas! OOGA! OOGA! OOGA! (#3969)
Browse files Browse the repository at this point in the history
Gorillas-OOGA-OOGA-OOGA
  • Loading branch information
Gottfrei authored Feb 28, 2024
1 parent 3175306 commit 2ab9271
Show file tree
Hide file tree
Showing 36 changed files with 1,443 additions and 55 deletions.
137 changes: 93 additions & 44 deletions _maps/map_files/Delta/delta.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -3524,7 +3524,6 @@
},
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
/obj/effect/turf_decal/bot/left,
/turf/simulated/floor/plasteel{
icon_state = "neutralfull"
},
Expand Down Expand Up @@ -10495,6 +10494,18 @@
},
/turf/simulated/floor/plasteel,
/area/quartermaster/sorting)
"bsX" = (
/obj/structure/table,
/obj/machinery/newscaster{
pixel_y = 32
},
/obj/item/stack/packageWrap,
/obj/item/storage/box/lights/mixed,
/turf/simulated/floor/plasteel{
dir = 1;
icon_state = "brown"
},
/area/quartermaster/storage)
"bta" = (
/obj/machinery/conveyor/northwest{
id = "QMLoad2"
Expand Down Expand Up @@ -11650,7 +11661,6 @@
/area/civilian/vacantoffice)
"bxD" = (
/obj/structure/disposalpipe/segment,
/obj/effect/turf_decal/bot/left,
/obj/effect/decal/cleanable/blood/oil,
/obj/effect/decal/cleanable/dirt,
/obj/structure/closet/crate{
Expand Down Expand Up @@ -17710,9 +17720,20 @@
},
/area/crew_quarters/chief)
"bZh" = (
/obj/effect/decal/warning_stripes/northeast,
/obj/effect/decal/cleanable/dirt,
/turf/simulated/floor/plasteel,
/obj/structure/table/wood/fancy/royalblue,
/obj/item/reagent_containers/food/snacks/grown/banana{
pixel_x = 4;
pixel_y = 5
},
/obj/item/reagent_containers/food/snacks/grown/banana{
pixel_x = -1;
pixel_y = 5
},
/obj/item/reagent_containers/food/snacks/grown/banana{
pixel_x = -6;
pixel_y = 3
},
/turf/simulated/floor/carpet/black,
/area/quartermaster/storage)
"bZl" = (
/obj/structure/grille,
Expand Down Expand Up @@ -22032,20 +22053,15 @@
},
/area/quartermaster/storage)
"cux" = (
/obj/structure/table/reinforced,
/obj/item/storage/box/lights/mixed,
/turf/simulated/floor/plasteel{
dir = 1;
icon_state = "brown"
},
/obj/item/flag/cargo,
/turf/simulated/floor/carpet/black,
/area/quartermaster/storage)
"cuz" = (
/obj/structure/table/reinforced,
/obj/item/stack/packageWrap,
/turf/simulated/floor/plasteel{
dir = 1;
icon_state = "brown"
/obj/structure/chair/sofa/right,
/obj/structure/sign/poster/contraband/commando{
pixel_y = 32
},
/turf/simulated/floor/carpet/black,
/area/quartermaster/storage)
"cuB" = (
/obj/machinery/portable_atmospherics/canister/nitrogen,
Expand All @@ -22070,12 +22086,9 @@
},
/area/crew_quarters/fitness)
"cuO" = (
/obj/structure/closet/crate,
/obj/effect/spawner/lootdrop/maintenance/double,
/turf/simulated/floor/plasteel{
dir = 1;
icon_state = "brown"
},
/mob/living/simple_animal/hostile/gorilla/cargo_domestic/mars,
/obj/structure/chair/sofa/left,
/turf/simulated/floor/carpet/black,
/area/quartermaster/storage)
"cuQ" = (
/obj/item/reagent_containers/glass/bucket,
Expand All @@ -22092,12 +22105,12 @@
},
/area/hydroponics)
"cuS" = (
/obj/item/twohanded/required/kirbyplants,
/obj/effect/decal/cleanable/cobweb2,
/turf/simulated/floor/plasteel{
dir = 5;
icon_state = "brown"
/obj/machinery/photocopier,
/obj/structure/sign/poster/contraband/red_rum{
pixel_y = 32
},
/turf/simulated/floor/carpet/black,
/area/quartermaster/storage)
"cuV" = (
/obj/machinery/vending/cigarette,
Expand Down Expand Up @@ -26158,6 +26171,12 @@
/obj/effect/decal/warning_stripes/southeast,
/turf/simulated/floor/plasteel,
/area/engine/gravitygenerator)
"cLF" = (
/obj/effect/decal/warning_stripes/north,
/turf/simulated/floor/plasteel{
icon_state = "neutralfull"
},
/area/quartermaster/storage)
"cLI" = (
/obj/structure/table/reinforced,
/obj/item/stack/sheet/plasteel,
Expand Down Expand Up @@ -54221,8 +54240,7 @@
/turf/simulated/floor/grass,
/area/hallway/secondary/exit)
"gNy" = (
/obj/effect/decal/warning_stripes/north,
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/warning_stripes/northeast,
/turf/simulated/floor/plasteel,
/area/quartermaster/storage)
"gNz" = (
Expand Down Expand Up @@ -59056,12 +59074,6 @@
},
/turf/simulated/floor/plating,
/area/maintenance/asmaint)
"hVC" = (
/obj/effect/turf_decal/bot/left,
/turf/simulated/floor/plasteel{
icon_state = "neutralfull"
},
/area/quartermaster/storage)
"hVD" = (
/obj/structure/cable{
icon_state = "1-2"
Expand Down Expand Up @@ -63761,6 +63773,10 @@
},
/turf/simulated/floor/plating,
/area/maintenance/starboard)
"jdo" = (
/obj/item/twohanded/required/kirbyplants,
/turf/simulated/floor/carpet/black,
/area/quartermaster/storage)
"jdp" = (
/obj/machinery/computer/med_data{
dir = 4
Expand Down Expand Up @@ -63859,6 +63875,22 @@
},
/turf/simulated/floor/plating,
/area/maintenance/engineering)
"jen" = (
/obj/machinery/status_display{
layer = 4;
pixel_y = 32
},
/turf/simulated/floor/plasteel{
dir = 4;
icon_state = "neutralcorner"
},
/area/hallway/primary/central/north)
"jev" = (
/obj/structure/chair/comfy/red{
dir = 8
},
/turf/simulated/floor/carpet/black,
/area/quartermaster/storage)
"jeA" = (
/obj/structure/chair/comfy/shuttle{
dir = 8
Expand Down Expand Up @@ -65228,8 +65260,7 @@
},
/area/quartermaster/delivery)
"jvq" = (
/obj/effect/turf_decal/bot/left,
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/warning_stripes/northeastcorner,
/turf/simulated/floor/plasteel{
icon_state = "neutralfull"
},
Expand Down Expand Up @@ -80923,6 +80954,13 @@
icon_state = "redcorner"
},
/area/security/processing)
"njf" = (
/obj/structure/table/wood/fancy/royalblue,
/obj/item/flashlight/lamp/green{
pixel_y = 5
},
/turf/simulated/floor/carpet/black,
/area/quartermaster/storage)
"nji" = (
/obj/structure/closet/crate{
icon_state = "crateopen";
Expand Down Expand Up @@ -98981,6 +99019,7 @@
"ric" = (
/obj/structure/disposalpipe/segment,
/obj/effect/decal/warning_stripes/north,
/obj/effect/decal/cleanable/dirt,
/turf/simulated/floor/plasteel,
/area/quartermaster/storage)
"riA" = (
Expand Down Expand Up @@ -107444,7 +107483,6 @@
dir = 8;
icon_state = "pipe-c"
},
/obj/effect/turf_decal/bot/left,
/turf/simulated/floor/plasteel{
icon_state = "neutralfull"
},
Expand Down Expand Up @@ -125720,6 +125758,17 @@
/obj/structure/girder,
/turf/simulated/floor/plating,
/area/maintenance/asmaint4)
"xta" = (
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 4
},
/obj/structure/closet/crate,
/obj/effect/decal/cleanable/dirt,
/obj/effect/spawner/lootdrop/maintenance/double,
/turf/simulated/floor/plasteel{
icon_state = "neutralfull"
},
/area/quartermaster/storage)
"xtb" = (
/obj/structure/chair{
dir = 4
Expand Down Expand Up @@ -173064,10 +173113,10 @@ djQ
dmq
cuw
bYJ
hVC
djV
wjh
nKJ
aJg
xta
vKa
wmA
vKa
Expand Down Expand Up @@ -173577,8 +173626,8 @@ cfy
bNJ
dmq
cuz
gNy
hVC
njf
cLF
uAf
nKJ
oZo
Expand Down Expand Up @@ -173835,7 +173884,7 @@ fyp
dmq
cuO
bZh
mHQ
gNy
cdQ
cLd
mHQ
Expand Down Expand Up @@ -174091,8 +174140,8 @@ cgm
dnP
dmq
cuS
cSf
cSf
jev
jdo
cdR
aKF
bta
Expand Down
3 changes: 3 additions & 0 deletions code/__DEFINES/dcs/signals.dm
Original file line number Diff line number Diff line change
Expand Up @@ -388,6 +388,9 @@
#define COMSIG_MOB_EMOTE_AT "mob_emote_at"
#define COMPONENT_BLOCK_EMOTE_ACTION (1<<2)

///from base of /mob/verb/pointed: (atom/A)
#define COMSIG_MOB_POINTED "mob_pointed"

///from base of mob/swap_hand(): (obj/item/currently_held_item)
#define COMSIG_MOB_SWAPPING_HANDS "mob_swapping_hands"
#define COMPONENT_BLOCK_SWAP (1<<0)
Expand Down
3 changes: 3 additions & 0 deletions code/__DEFINES/status_effects.dm
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,9 @@

#define STATUS_EFFECT_THRALL_NET /datum/status_effect/thrall_net

/// Healing effect upplied on gorillas from eating bananas.
#define STATUS_EFFECT_BANANA_POWER /datum/status_effect/banana_power

//#define STATUS_EFFECT_VANGUARD /datum/status_effect/vanguard_shield //Grants temporary stun absorption, but will stun the user based on how many stuns they absorbed.
//#define STATUS_EFFECT_INATHNEQS_ENDOWMENT /datum/status_effect/inathneqs_endowment //A 15-second invulnerability and stun absorption, granted by Inath-neq.
//#define STATUS_EFFECT_WRAITHSPECS /datum/status_effect/wraith_spectacles
Expand Down
12 changes: 8 additions & 4 deletions code/__HELPERS/path.dm
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,9 @@
* * exclude: If we want to avoid a specific turf, like if we're a mulebot who already got blocked by some turf
* * skip_first: Whether or not to delete the first item in the path. This would be done because the first item is the starting tile, which can break movement for some creatures.
* * diagonal_safety: ensures diagonal moves won't use invalid midstep turfs by splitting them into two orthogonal moves if necessary
* * no_id: if true, doors with public access will count as impassible
*/
/proc/get_path_to(caller, end, max_distance = 30, mintargetdist, id = null, simulated_only = TRUE, turf/exclude, skip_first = TRUE, diagonal_safety = TRUE)
/proc/get_path_to(caller, end, max_distance = 30, mintargetdist, id = null, simulated_only = TRUE, turf/exclude, skip_first = TRUE, diagonal_safety = TRUE, no_id = FALSE)
if(!caller || !get_turf(end))
return

Expand All @@ -28,7 +29,7 @@
l = SSpathfinder.mobs.getfree(caller)

var/list/path
var/datum/pathfind/pathfind_datum = new(caller, end, id, max_distance, mintargetdist, simulated_only, exclude, diagonal_safety)
var/datum/pathfind/pathfind_datum = new(caller, end, id, max_distance, mintargetdist, simulated_only, exclude, diagonal_safety, no_id)
path = pathfind_datum.search()
qdel(pathfind_datum)

Expand Down Expand Up @@ -64,7 +65,7 @@
* If you really want to optimize things, optimize this, cuz this gets called a lot.
* We do early next.density check despite it being already checked in LinkBlockedWithAccess for short-circuit performance
*/
#define CAN_STEP(cur_turf, next) (next && !next.density && !(simulated_only && SSpathfinder.space_type_cache[next.type]) && !cur_turf.LinkBlockedWithAccess(next,caller, id) && (next != avoid))
#define CAN_STEP(cur_turf, next) (next && !next.density && !(simulated_only && SSpathfinder.space_type_cache[next.type]) && !cur_turf.LinkBlockedWithAccess(next,caller,id,no_id) && (next != avoid))
/// Another helper macro for JPS, for telling when a node has forced neighbors that need expanding
#define STEP_NOT_HERE_BUT_THERE(cur_turf, dirA, dirB) ((!CAN_STEP(cur_turf, get_step(cur_turf, dirA)) && CAN_STEP(cur_turf, get_step(cur_turf, dirB))))

Expand Down Expand Up @@ -132,6 +133,8 @@
// general pathfinding vars/args
/// An ID card representing what access we have and what doors we can open. Its location relative to the pathing atom is irrelevant
var/obj/item/card/id/id
/// When true, doors with public access will count as impassible
var/no_id = FALSE
/// How far away we have to get to the end target before we can call it quits
var/mintargetdist = 0
/// I don't know what this does vs , but they limit how far we can search before giving up on a path
Expand All @@ -143,7 +146,7 @@
/// Ensures diagonal moves won't use invalid midstep turfs by splitting them into two orthogonal moves if necessary
var/diagonal_safety = TRUE

/datum/pathfind/New(atom/movable/caller, atom/goal, id, max_distance, mintargetdist, simulated_only, avoid, diagonal_safety)
/datum/pathfind/New(atom/movable/caller, atom/goal, id, max_distance, mintargetdist, simulated_only, avoid, diagonal_safety, no_id)
src.caller = caller
end = get_turf(goal)
open = new /datum/heap(GLOBAL_PROC_REF(HeapPathWeightCompare))
Expand All @@ -154,6 +157,7 @@
src.simulated_only = simulated_only
src.avoid = avoid
src.diagonal_safety = diagonal_safety
src.no_id = no_id

/**
* search() is the proc you call to kick off and handle the actual pathfinding, and kills the pathfind datum instance when it's done.
Expand Down
Loading

0 comments on commit 2ab9271

Please sign in to comment.