Skip to content

Commit

Permalink
Tent Fixes!
Browse files Browse the repository at this point in the history
  • Loading branch information
ghostsheet committed Jul 18, 2023
1 parent 885b70b commit 31b30e7
Show file tree
Hide file tree
Showing 8 changed files with 78 additions and 79 deletions.
9 changes: 8 additions & 1 deletion code/modules/tents/blockers.dm
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
invisibility = INVISIBILITY_MAXIMUM
density = TRUE
opacity = FALSE // Unfortunately this doesn't behave as we'd want with ON_BORDER so we can't make tent opaque
throwpass = TRUE // Needs this so xenos can attack through the blocker and hit the tents or people inside
/// The tent this blocker relates to, will be destroyed along with it
var/obj/structure/tent/linked_tent

Expand Down Expand Up @@ -34,5 +35,11 @@
PF.flags_can_pass_behind = NONE

/obj/structure/blocker/tent/get_projectile_hit_boolean(obj/item/projectile/P)
. = ..()
..()
return FALSE // Always fly through the tent

//Blocks all direction, basically an invisible wall
/obj/structure/blocker/tent/full_tile
flags_atom = NO_FLAGS
icon = 'icons/landmarks.dmi'
icon_state = "invisible_wall"
34 changes: 29 additions & 5 deletions code/modules/tents/deployed_tents.dm
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
/obj/structure/tent
name = "tent"
icon = 'icons/obj/structures/tents_deployed_classic.dmi'
desc = "Can be torn down with an entrenching tool."
opacity = FALSE // Seems only the initial turf blocks light, not all of the multitile. Therefore, useless.
layer = INTERIOR_WALL_SOUTH_LAYER // This should be below FLY_LAYER but just thank chairs and other bs
health = 200
Expand All @@ -11,7 +12,7 @@
/// Turf dimensions along the X axis, beginning from left, at ground level
var/x_dim = 2
/// Turf dimensions along the Y axis, beginning from bottom, at ground level
var/y_dim = 3
var/y_dim = 4

/// How much cold protection to add to entering humans - Full body clothing means complete (1) protection
var/cold_protection_factor = 0.4
Expand Down Expand Up @@ -77,22 +78,45 @@
/obj/structure/tent/attack_alien(mob/living/carbon/xenomorph/M)
if(unslashable)
return
health -= 20

M.animation_attack_on(src)
health -= rand(M.melee_damage_lower, M.melee_damage_upper)
playsound(src, 'sound/items/paper_ripped.ogg', 25, 1)

M.visible_message(SPAN_DANGER("[M] [M.slashes_verb] [src]!"), \
SPAN_DANGER("You [M.slash_verb] [src]!"), null, 5, CHAT_TYPE_XENO_COMBAT)

if(health <= 0)
visible_message(SPAN_BOLDWARNING("The [src] collapses!"))
qdel(src)
qdel(src)//need to unregister all the signal first? turn off roof plane for everyone inside?

return XENO_ATTACK_ACTION

/obj/structure/tent/attackby(obj/item/item, mob/user)
var/obj/item/tool/shovel/shovel = item
if(istype(shovel) && !shovel.folded)
visible_message(SPAN_HIGHDANGER("[user] is trying to tear down the [src]"))
playsound(src, 'sound/items/paper_ripped.ogg', 25, 1)
if(do_after(user, 150, INTERRUPT_ALL|BEHAVIOR_IMMOBILE, BUSY_ICON_HOSTILE, src) && !QDELETED(src))
visible_message(SPAN_HIGHDANGER("[user] tears down the [src]"))
playsound(src, 'sound/items/paper_ripped.ogg', 25, 1)
qdel(src)

/obj/structure/tent/get_projectile_hit_boolean(obj/item/projectile/P)
return FALSE // Always fly through the tent


/// Command tent, providing basics for field command: a phone, and an overwatch console
/obj/structure/tent/cmd
icon_state = "cmd_interior"
roof_state = "cmd_top"
desc = "A standard USCM Command Tent. This one comes equipped with a self-powered Overwatch Console and a Telephone. It is very frail, do not burn, expose to sharp objects, or explosives."
desc = "A standard USCM Command Tent. This one comes equipped with a self-powered Overwatch Console and a Telephone. It is very frail, do not burn, expose to sharp objects, or explosives. Can be torn down with an entrenching tool."

/// Medical tent, procures a buff to surgery speed
/obj/structure/tent/med
icon_state = "med_interior"
roof_state = "med_top"
desc = "A standard USCM Medical Tent. This one comes equipped with advanced field surgery facilities. It is very fragile however and won't withstand the rigors of war."
desc = "A standard USCM Medical Tent. This one comes equipped with advanced field surgery facilities. It is very fragile however and won't withstand the rigors of war. Can be torn down with an entrenching tool."
var/surgery_speed_mult = 0.9
var/surgery_pain_reduction = 5

Expand Down
8 changes: 4 additions & 4 deletions code/modules/tents/folded_tents.dm
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@
icon_state = "cmd"
desc = "A standard USCM Command Tent. This one comes equipped with a self-powered Overwatch Console and a Telephone. Unfold in a suitable location to maximize usefulness. Staff Officer not included. ENTRANCE TO THE SOUTH."
dim_x = 2
dim_y = 3
dim_y = 4
off_x = -1
template = /datum/map_template/tent/cmd

Expand All @@ -121,15 +121,15 @@
icon_state = "med"
desc = "A standard USCM Medical Tent. This one comes equipped with advanced field surgery facilities. Unfold in a suitable location to maximize health gains. Surgical Tray not included. ENTRANCE TO THE SOUTH."
dim_x = 2
dim_y = 3
dim_y = 4
template = /datum/map_template/tent/med

/obj/item/folded_tent/reqs
name = "folded USCM Requisitions Tent"
icon_state = "req"
desc = "A standard USCM Requisitions Tent. Now, you can enjoy req line anywhere you go! Unfold in a suitable location to maximize resource distribution. ASRS not included. ENTRANCE TO THE SOUTH."
dim_x = 4
dim_y = 3
dim_y = 4
off_x = -2
template = /datum/map_template/tent/reqs

Expand All @@ -138,7 +138,7 @@
icon_state = "big"
desc = "A standard USCM Tent. This one is just a bigger, general purpose version. Unfold in a suitable location for maximum FOB vibes. Mess Tech not included. ENTRANCE TO THE SOUTH."
dim_x = 3
dim_y = 3
dim_y = 4
off_x = -2
template = /datum/map_template/tent/big

Expand Down
82 changes: 20 additions & 62 deletions maps/map_files/USS_Almayer/USS_Almayer.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -5928,6 +5928,7 @@
/obj/item/device/radio/marine,
/obj/item/device/radio/marine,
/obj/item/device/radio/marine,
/obj/item/folded_tent/cmd,
/turf/open/floor/almayer{
icon_state = "redfull"
},
Expand Down Expand Up @@ -15880,6 +15881,10 @@
desc = "Someone has crossed out the Space from Space Cleaner and written in Surgery. 'Do not remove under punishment of death!!!' is scrawled on the back.";
name = "Surgery Cleaner"
},
/obj/item/folded_tent/med{
pixel_x = -8;
pixel_y = 14
},
/turf/open/floor/almayer{
dir = 8;
icon_state = "sterile_green_corner"
Expand Down Expand Up @@ -29641,11 +29646,6 @@
pixel_x = 9
},
/obj/item/reagent_container/pill/happy,
/obj/item/stack/tile/plasteel{
layer = 2.5;
pixel_x = -8;
pixel_y = 4
},
/obj/item/clothing/glasses/disco_fever{
pixel_x = -3;
pixel_y = -2
Expand Down Expand Up @@ -37919,18 +37919,6 @@
icon_state = "plate"
},
/area/almayer/hallways/vehiclehangar)
"gCu" = (
/obj/structure/disposalpipe/segment{
dir = 8
},
/obj/structure/pipes/standard/simple/hidden/supply{
dir = 4
},
/obj/item/folded_tent/cmd,
/turf/open/floor/almayer{
icon_state = "plating_striped"
},
/area/almayer/squads/req)
"gCw" = (
/obj/item/reagent_container/food/drinks/cans/beer{
pixel_x = 10
Expand Down Expand Up @@ -40074,18 +40062,6 @@
/obj/structure/pipes/standard/manifold/hidden/supply,
/turf/open/floor/plating/plating_catwalk,
/area/almayer/hallways/hangar)
"hBP" = (
/obj/structure/disposalpipe/segment{
dir = 8
},
/obj/structure/pipes/standard/simple/hidden/supply{
dir = 4
},
/obj/item/folded_tent/med,
/turf/open/floor/almayer{
icon_state = "plating_striped"
},
/area/almayer/squads/req)
"hBU" = (
/obj/structure/largecrate/random/secure,
/obj/effect/decal/warning_stripes{
Expand Down Expand Up @@ -42087,8 +42063,9 @@
/area/almayer/squads/delta)
"ixN" = (
/obj/structure/largecrate,
/obj/item/prop/almayer/handheld1{
pixel_y = 12
/obj/item/folded_tent/reqs{
pixel_x = -3;
pixel_y = 10
},
/turf/open/floor/almayer{
icon_state = "test_floor4"
Expand Down Expand Up @@ -57095,18 +57072,6 @@
icon_state = "green"
},
/area/almayer/hallways/aft_hallway)
"pvF" = (
/obj/structure/disposalpipe/segment{
dir = 8
},
/obj/structure/pipes/standard/simple/hidden/supply{
dir = 4
},
/obj/item/folded_tent/reqs,
/turf/open/floor/almayer{
icon_state = "plating_striped"
},
/area/almayer/squads/req)
"pvJ" = (
/obj/structure/disposalpipe/segment{
dir = 4
Expand Down Expand Up @@ -71603,18 +71568,6 @@
icon_state = "plate"
},
/area/almayer/living/grunt_rnr)
"vSr" = (
/obj/structure/disposalpipe/segment{
dir = 8
},
/obj/structure/pipes/standard/simple/hidden/supply{
dir = 4
},
/obj/item/folded_tent/big,
/turf/open/floor/almayer{
icon_state = "plating_striped"
},
/area/almayer/squads/req)
"vSE" = (
/obj/structure/closet/secure_closet/personal,
/turf/open/floor/almayer{
Expand Down Expand Up @@ -74734,12 +74687,17 @@
desc = "A supply crate containing everything you need to stop a CLF uprising.";
name = "\improper USCM crate 'FOB supplies'"
},
/obj/item/storage/box/mousetraps{
pixel_y = 12
},
/obj/structure/sign/arcturianstopsign{
pixel_y = 32
},
/obj/item/folded_tent/big{
pixel_y = 10;
pixel_x = -6
},
/obj/item/storage/box/mousetraps{
pixel_y = 12;
pixel_x = 3
},
/turf/open/floor/almayer{
icon_state = "plate"
},
Expand Down Expand Up @@ -119280,7 +119238,7 @@ bEi
bZr
bmD
ngw
gCu
pjG
boz
bpR
bpR
Expand Down Expand Up @@ -119483,7 +119441,7 @@ brp
bZr
bmD
xId
hBP
pjG
boz
bpR
bpR
Expand Down Expand Up @@ -119889,7 +119847,7 @@ buz
bZr
bmD
dmE
pvF
pjG
boz
bpR
bpR
Expand Down Expand Up @@ -120092,7 +120050,7 @@ bEm
bZr
bmD
hAc
vSr
pjG
boz
bpR
bpR
Expand Down
10 changes: 7 additions & 3 deletions maps/tents/tent_big.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,10 @@
/obj/structure/tent_curtain,
/turf/template_noop,
/area/template_noop)
"k" = (
/obj/structure/blocker/tent/full_tile,
/turf/template_noop,
/area/template_noop)
"n" = (
/obj/structure/blocker/tent{
dir = 4
Expand Down Expand Up @@ -59,19 +63,19 @@
/area/template_noop)

(1,1,1) = {"
O
k
J
v
a
"}
(2,1,1) = {"
O
k
S
O
x
"}
(3,1,1) = {"
O
k
n
s
G
Expand Down
1 change: 1 addition & 0 deletions maps/tents/tent_cmd.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@
/turf/template_noop,
/area/template_noop)
"p" = (
/obj/structure/blocker/tent/full_tile,
/turf/template_noop,
/area/template_noop)
"v" = (
Expand Down
1 change: 1 addition & 0 deletions maps/tents/tent_med.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
/turf/template_noop,
/area/template_noop)
"p" = (
/obj/structure/blocker/tent/full_tile,
/turf/template_noop,
/area/template_noop)
"v" = (
Expand Down
12 changes: 8 additions & 4 deletions maps/tents/tent_reqs.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,10 @@
},
/turf/template_noop,
/area/template_noop)
"R" = (
/obj/structure/blocker/tent/full_tile,
/turf/template_noop,
/area/template_noop)
"S" = (
/obj/structure/blocker/tent{
dir = 8
Expand All @@ -83,25 +87,25 @@
/area/template_noop)

(1,1,1) = {"
a
R
B
S
m
"}
(2,1,1) = {"
a
R
J
a
c
"}
(3,1,1) = {"
a
R
w
U
k
"}
(4,1,1) = {"
a
R
n
d
k
Expand Down

0 comments on commit 31b30e7

Please sign in to comment.