Skip to content

Commit

Permalink
Reworks and adds a few flags (the fabric kind) (#12926)
Browse files Browse the repository at this point in the history
Co-authored-by: TobleroneSwordfish <20713227+TobleroneSwordfish@users.noreply.github.com>
  • Loading branch information
DisturbHerb and TobleroneSwordfish committed Dec 19, 2023
1 parent 5e24cf7 commit f9edfed
Show file tree
Hide file tree
Showing 9 changed files with 181 additions and 8 deletions.
2 changes: 1 addition & 1 deletion assets/maps/prefabs/space/prefab_lesbeeans.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -314,7 +314,7 @@
/turf/variableTurf/clear,
/area/noGenerate)
"JJ" = (
/obj/decal/poster/wallsign/lesb_flag,
/obj/decal/poster/flag/lesb,
/turf/unsimulated/wall/auto/supernorn/wood,
/area/prefab/lesbeeans/interior)
"JR" = (
Expand Down
6 changes: 0 additions & 6 deletions code/obj/decal/poster.dm
Original file line number Diff line number Diff line change
Expand Up @@ -735,12 +735,6 @@
if("edit_wiki")
user << link("https://wiki.ss13.co/")

lesb_flag //lesbeean prefab thingy - subtle environmental storytelling, you know?
name = "lesbian pride flag"
desc = "Neat!"
icon = 'icons/obj/decals/posters.dmi'
icon_state = "lesb"

fuck1 //do not add this to the random sign rotation, fuck I is a long-lost relic overshadowed entirely by its successor
name = "\proper fuck"
desc = "No... it can't be... the original?! This is a vintage!!"
Expand Down
94 changes: 94 additions & 0 deletions code/obj/decal/wall_flags.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
/obj/decal/poster/flag
name = "flag"
desc = "Neat!"
icon = 'icons/obj/decals/flag.dmi'
icon_state = "blank"
/// Must by a type path of `/obj/item/flag`.
var/starting_flag = /obj/item/flag
var/obj/item/flag/flag_item = null

New()
src.flag_item = new src.starting_flag(src)
..()

disposing()
src.flag_item = null
..()

attack_hand(mob/user)
if (tgui_alert(user, "Are you sure you want to take down the flag?", "Confirmation", list("Take", "Leave")) == "Take")
src.take_flag(user)

proc/take_flag(mob/user)
if (src.flag_item)
src.flag_item.add_fingerprint(user)
user.put_in_hand_or_drop(src.flag_item)
src.flag_item = null
user.visible_message("<span class='notice'>[user] takes down the [src.name] in [src.loc]!.</span>", "<span class='notice'>You take down the [src.name] in [src.loc]!</span>")
logTheThing(LOG_STATION, user, "Takes down a flag ([src.name]) in [src.loc] at [log_loc(user)].")
qdel(src)

ace
name = "asexual pride flag"
icon_state = "ace"
starting_flag = /obj/item/flag/ace

aro
name = "aromantic pride flag"
icon_state = "aro"
starting_flag = /obj/item/flag/aro

bisexual
name = "bisexual pride flag"
icon_state = "bisexual"
starting_flag = /obj/item/flag/bisexual

demisexual
name = "demisexual pride flag"
icon_state = "demisexual"
starting_flag = /obj/item/flag/demisexual

genderqueer
name = "genderqueer pride flag"
icon_state = "genderqueer"
starting_flag = /obj/item/flag/genderqueer

intersex
name = "intersex pride flag"
icon_state = "intersex"
starting_flag = /obj/item/flag/intersex

lesb //lesbeean prefab thingy - subtle environmental storytelling, you know?
name = "lesbian pride flag"
icon_state = "lesb"
starting_flag = /obj/item/flag/lesb

nb
name = "non-binary pride flag"
icon_state = "nb"
starting_flag = /obj/item/flag/nb

pan
name = "pansexual pride flag"
icon_state = "pan"
starting_flag = /obj/item/flag/pan

polysexual
name = "polysexual pride flag"
icon_state = "polysexual"
starting_flag = /obj/item/flag/polysexual

progressive
name = "progressive pride flag"
icon_state = "progressive"
starting_flag = /obj/item/flag/progressive

rainbow
name = "rainbow flag"
icon_state = "rainbow"
starting_flag = /obj/item/flag/rainbow

trans
name = "transgender pride flag"
icon_state = "trans"
starting_flag = /obj/item/flag/trans
83 changes: 83 additions & 0 deletions code/obj/item/wall_flags.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
/obj/item/flag
name = "flag"
desc = "Neat! It's folded up, ready to deploy."
icon = 'icons/obj/items/flag.dmi'
icon_state = "blank"
/// Must by a type path of `/obj/decal/poster/flag`.
var/associated_flag = /obj/decal/poster/flag

afterattack(turf/simulated/T, mob/user)
if (locate(/obj/decal/poster/flag) in T)
return
if (istype(T, /turf/simulated/wall/) || istype(T, /turf/unsimulated/wall))
var/obj/decal/poster/flag/new_flag = new src.associated_flag(T)
new_flag.flag_item = src
user.u_equip(src)
src.set_loc(new_flag)
logTheThing(LOG_STATION, user, "Hangs up a flag ([new_flag.name]) in [T] at [log_loc(user)].")
user.visible_message("<span class='notice'>[user] hangs up a [new_flag.name] in [T]!.</span>", "<span class='notice'>You hang up a [new_flag.name] in [T]!</span>")

ace
name = "asexual pride flag"
icon_state = "ace"
associated_flag = /obj/decal/poster/flag/ace

aro
name = "aromantic pride flag"
icon_state = "aro"
associated_flag = /obj/decal/poster/flag/aro

bisexual
name = "bisexual pride flag"
icon_state = "bisexual"
associated_flag = /obj/decal/poster/flag/bisexual

demisexual
name = "demisexual pride flag"
icon_state = "demisexual"
associated_flag = /obj/decal/poster/flag/demisexual

genderqueer
name = "genderqueer pride flag"
icon_state = "genderqueer"
associated_flag = /obj/decal/poster/flag/genderqueer

intersex
name = "intersex pride flag"
icon_state = "intersex"
associated_flag = /obj/decal/poster/flag/intersex

lesb
name = "lesbian pride flag"
icon_state = "lesb"
associated_flag = /obj/decal/poster/flag/lesb

nb
name = "non-binary pride flag"
icon_state = "nb"
associated_flag = /obj/decal/poster/flag/nb

pan
name = "pansexual pride flag"
icon_state = "pan"
associated_flag = /obj/decal/poster/flag/pan

polysexual
name = "polysexual pride flag"
icon_state = "polysexual"
associated_flag = /obj/decal/poster/flag/polysexual

progressive
name = "progressive pride flag"
icon_state = "progressive"
associated_flag = /obj/decal/poster/flag/progressive

rainbow
name = "rainbow flag"
icon_state = "rainbow"
associated_flag = /obj/decal/poster/flag/rainbow

trans
name = "transgender pride flag"
icon_state = "trans"
associated_flag = /obj/decal/poster/flag/trans
2 changes: 2 additions & 0 deletions goonstation.dme
Original file line number Diff line number Diff line change
Expand Up @@ -1676,6 +1676,7 @@ var/datum/preMapLoad/preMapLoad = new
#include "code\obj\decal\misc.dm"
#include "code\obj\decal\poster.dm"
#include "code\obj\decal\tile_edge.dm"
#include "code\obj\decal\wall_flags.dm"
#include "code\obj\effects\bad_smoke.dm"
#include "code\obj\effects\foam.dm"
#include "code\obj\effects\harmless_smoke.dm"
Expand Down Expand Up @@ -1789,6 +1790,7 @@ var/datum/preMapLoad/preMapLoad = new
#include "code\obj\item\tumbling_creeper_trap.dm"
#include "code\obj\item\uplinks.dm"
#include "code\obj\item\vending_restock.dm"
#include "code\obj\item\wall_flags.dm"
#include "code\obj\item\wall_trophy.dm"
#include "code\obj\item\yacht_dice_sheet.dm"
#include "code\obj\item\zoldorfmisc.dm"
Expand Down
Binary file added icons/obj/decals/flag.dmi
Binary file not shown.
Binary file modified icons/obj/decals/posters.dmi
Binary file not shown.
Binary file added icons/obj/items/flag.dmi
Binary file not shown.
2 changes: 1 addition & 1 deletion maps/z2.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -68120,7 +68120,7 @@
/turf/unsimulated/floor/plating,
/area/sim/gunsim/lobby)
"pwh" = (
/obj/decal/poster/wallsign/lesb_flag,
/obj/decal/poster/flag/lesb,
/turf/unsimulated/wall/generic{
dir = 4;
icon = 'icons/misc/worlds.dmi';
Expand Down

0 comments on commit f9edfed

Please sign in to comment.