Skip to content

Commit

Permalink
[MODULAR] Brings emissive barsigns to skyrat, reorganizes our modular…
Browse files Browse the repository at this point in the history
… files (#525)

* Better modularized barsigns

* Update barsigns.dmi

* Update barsigns.dm

* Update barsigns.dm

* Convert to 64x32

* Update barsigns96x96.dmi

* Update barsigns.dm

* Update barsigns.dmi

* Found the missing D on the meadbay sign

* meadbay sign again

* Fix the unit test

* More light masks + removes duplicate empty and emp sprites

* More light masks

* Tardis light mask, some fixes for stray pixels

* Cleaned up some pixels

* A few more light masks

* Update barsigns.dm

* Update barsigns.dm

Co-authored-by: Bloop <[email protected]>
  • Loading branch information
Steals-The-PRs and vinylspiders authored Nov 9, 2023
1 parent 82fa27e commit 2759fad
Show file tree
Hide file tree
Showing 7 changed files with 134 additions and 51 deletions.
2 changes: 2 additions & 0 deletions code/__DEFINES/~skyrat_defines/barsigns.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
#define SKYRAT_BARSIGN_FILE 'modular_skyrat/modules/barsigns/icons/barsigns.dmi'
#define SKYRAT_LARGE_BARSIGN_FILE 'modular_skyrat/modules/barsigns/icons/barsigns96x96.dmi'
2 changes: 1 addition & 1 deletion code/game/machinery/barsigns.dm
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/obj/machinery/barsign // All Signs are 64 by 32 pixels, they take two tiles
name = "bar sign"
desc = "A bar sign which has not been initialized, somehow. Complain at a coder!"
icon = 'modular_skyrat/modules/barsigns/icons/barsigns.dmi' //SKYRAT EDIT CHANGE - ORIGINAL: icon = 'icons/obj/machines/barsigns.dmi'
icon = 'icons/obj/machines/barsigns.dmi'
icon_state = "empty"
req_access = list(ACCESS_BAR)
max_integrity = 500
Expand Down
14 changes: 13 additions & 1 deletion code/modules/unit_tests/barsigns.dm
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,21 @@
* Test if icon states for each datum actually exist in the DMI.
*/
/datum/unit_test/barsigns_icon
var/list/blacklisted_sign_types = list(/datum/barsign/skyrat, /datum/barsign/skyrat/large) // SKYRAT EDIT ADDITION - Modular barsigns

/datum/unit_test/barsigns_icon/Run()
var/obj/machinery/barsign_type = /obj/machinery/barsign
var/icon/barsign_icon = initial(barsign_type.icon)
var/list/barsign_icon_states = icon_states(barsign_icon)
barsign_icon_states += icon_states(SKYRAT_BARSIGN_FILE) // SKYRAT EDIT ADDITION - Need to check modular barsigns
barsign_icon_states += icon_states(SKYRAT_LARGE_BARSIGN_FILE) // SKYRAT EDIT ADDITION - Need to check modular barsigns

// Check every datum real bar sign
for(var/sign_type in (subtypesof(/datum/barsign) - /datum/barsign/hiddensigns))
// SKYRAT EDIT ADDITION BEGIN - MODULAR BARSIGNS
if(sign_type in blacklisted_sign_types)
continue
// SKYRAT EDIT ADDITION END
var/datum/barsign/sign = new sign_type()

if(!(sign.icon_state in barsign_icon_states))
Expand All @@ -19,11 +26,16 @@
* Check that bar signs have a name and desc, and that the name is unique.
*/
/datum/unit_test/barsigns_name
var/list/blacklisted_sign_types = list(/datum/barsign/skyrat, /datum/barsign/skyrat/large) // SKYRAT EDIT ADDITION - Modular barsigns

/datum/unit_test/barsigns_name/Run()
var/list/existing_names = list()

for(var/sign_type in subtypesof(/datum/barsign) - /datum/barsign/hiddensigns)
for(var/sign_type in (subtypesof(/datum/barsign) - /datum/barsign/hiddensigns))
// SKYRAT EDIT ADDITION BEGIN - MODULAR BARSIGNS
if(sign_type in blacklisted_sign_types)
continue
// SKYRAT EDIT ADDITION END
var/datum/barsign/sign = new sign_type()

if(!sign.name)
Expand Down
166 changes: 117 additions & 49 deletions modular_skyrat/modules/barsigns/code/barsigns.dm
Original file line number Diff line number Diff line change
@@ -1,227 +1,295 @@
/datum/barsign/topmen
// Modularly set the correct icon file
/obj/machinery/barsign/update_icon_state()
. = ..()
// uses tg icon file
if(!istype(chosen_sign, /datum/barsign/skyrat) || icon_state == "empty")
icon = initial(icon)
return

// uses modular icon file
if(istype(chosen_sign, /datum/barsign/skyrat/large))
icon = SKYRAT_LARGE_BARSIGN_FILE
else
icon = SKYRAT_BARSIGN_FILE

/datum/barsign/skyrat/topmen
name = "Top Men"
icon_state = "topmen"
neon_color = "#C2AACA"

/datum/barsign/spaceballgrille
/datum/barsign/skyrat/spaceballgrille
name = "Spaceball Grille"
icon_state = "spaceballgrille"
neon_color = "#827973"

/datum/barsign/clubee
/datum/barsign/skyrat/clubee
name = "Club Bee"
icon_state = "clubee"
neon_color = "#F2EEEE"

/datum/barsign/thesun
/datum/barsign/skyrat/thesun
name = "The Sun"
icon_state = "thesun"
neon_color = "#F8F0B8"

/datum/barsign/limbo
/datum/barsign/skyrat/limbo
name = "The Limbo"
icon_state = "limbo"
desc = "A popular haunt for lost souls. The mood lighting is killer!"
neon_color = "#777777"

/datum/barsign/meadbay
/datum/barsign/skyrat/meadbay
name = "Meadbay"
icon_state = "meadbay"
neon_color = "#EBB823"

/datum/barsign/cindikate
/datum/barsign/skyrat/cindikate
name = "Cindi Kate's"
icon_state = "cindikate"
neon_color = "#FF3403"

/datum/barsign/theclownshead
/datum/barsign/skyrat/theclownshead
name = "The Clown's Head"
icon_state = "theclownshead"
desc = "Home of Headdy, the honking clown head!"
neon_color = "#FFD800"

/datum/barsign/theorchard
/datum/barsign/skyrat/theorchard
name = "The Orchard"
icon_state = "theorchard"
neon_color = "#CFFF47"

/datum/barsign/thesaucyclown
/datum/barsign/skyrat/thesaucyclown
name = "The Saucy Clown"
icon_state = "thesaucyclown"
desc = "A known gathering site for the annual clown courtship rituals."
neon_color = "#FF66CC"

/datum/barsign/thedamnwall
/datum/barsign/skyrat/thedamnwall
name = "The Damn Wall"
icon_state = "thedamnwall"
desc = "When you're up against a wall, it's best to have stout friends and stout liquor right there beside you."
neon_color = "#CC3333"

/datum/barsign/whiskeyimplant
/datum/barsign/skyrat/whiskeyimplant
name = "Whiskey Implant"
icon_state = "whiskeyimplant"
neon_color = "#E9F517"

/datum/barsign/carpecarp
/datum/barsign/skyrat/carpecarp
name = "Carpe Carp"
icon_state = "carpecarp"
neon_color = "#C717FE"

/datum/barsign/robustroadhouse
/datum/barsign/skyrat/robustroadhouse
name = "Robust Roadhouse"
icon_state = "robustroadhouse"
neon_color = "#F7A804"

/datum/barsign/theredshirt
/datum/barsign/skyrat/theredshirt
name = "The Redshirt"
icon_state = "theredshirt"
neon_color = "#FF92E0"

/datum/barsign/maltesefalconmk2
/datum/barsign/skyrat/maltesefalconmk2
name = "Maltese Falcon MK2"
icon_state = "maltesefalconmk2"
desc = "The Maltese Falcon mark two, now extra hard boiled."
neon_color = "#E30000"

/datum/barsign/thecavernmk2
/datum/barsign/skyrat/thecavernmk2
name = "The Cavern MK2"
icon_state = "thecavernmk2"
desc = "Fine drinks while listening to some fine tunes."
neon_color = "#AA9393"

/datum/barsign/lv426
/datum/barsign/skyrat/lv426
name = "LV-426"
icon_state = "lv426"
desc = "Drinking with fancy facemasks is clearly more important than going to medbay."
neon_color = "#00F206"

/datum/barsign/zocalo
/datum/barsign/skyrat/zocalo
name = "Zocalo"
icon_state = "zocalo"
desc = "Anteriormente ubicado en Spessmerica."
neon_color = "#E5AF1C"

/datum/barsign/fourtheemprah
/datum/barsign/skyrat/fourtheemprah
name = "4 The Emprah"
icon_state = "4theemprah"
desc = "Enjoyed by fanatics, heretics, and brain-damaged patrons alike."
neon_color = "#E5AF1C"

/datum/barsign/ishimura
/datum/barsign/skyrat/ishimura
name = "Ishimura"
icon_state = "ishimura"
desc = "Well known for their quality brownstar and delicious crackers."
neon_color = "#FF0000"

/datum/barsign/tardis
/datum/barsign/skyrat/tardis
name = "Tardis"
icon_state = "tardis"
desc = "This establishment has been through at least 5,343 iterations."
neon_color = "#2739AA"

/datum/barsign/quarks
/datum/barsign/skyrat/quarks
name = "Quark's"
icon_state = "quarks"
desc = "Frequenters of this establishment are often seen wearing meson scanners; how quaint."
neon_color = "#10E500"

/datum/barsign/tenforward
/datum/barsign/skyrat/tenforward
name = "Ten Forward"
icon_state = "tenforward"
neon_color = "#E5AF1C"

/datum/barsign/thepranicngpony
/datum/barsign/skyrat/theprancingpony
name = "The Prancing Pony"
icon_state = "thepranicngpony"
icon_state = "theprancingpony"
desc = "Ok, we don't take to kindly to you short folk pokin' round looking for some ranger scum."
neon_color = "#FF9100"

/datum/barsign/vault13
/datum/barsign/skyrat/vault13
name = "Vault 13"
icon_state = "vault13"
desc = "Coincidence is intentional."
neon_color = "#FFA800"

/datum/barsign/thehive
/datum/barsign/skyrat/thehive
name = "The Hive"
icon_state = "thehive"
neon_color = "#FFC62A"

/datum/barsign/cantina
/datum/barsign/skyrat/cantina
name = "Chalmun's Cantina"
icon_state = "cantina"
desc = "The bar was founded on the principles of originality; they have the same music playing 24/7."
neon_color = "#0078FF"

/datum/barsign/milliways42
/datum/barsign/skyrat/milliways42
name = "Milliways 42"
icon_state = "milliways42"
desc = "It's not really the end; it's the beginning, meaning, and answer for all your beverage needs."
neon_color = "#FF00F6"

/datum/barsign/timeofeve
/datum/barsign/skyrat/timeofeve
name = "The Time of Eve"
icon_state = "thetimeofeve"
desc = "Vintage drinks from 2453!."
neon_color = "#EB52F8"

/datum/barsign/spaceasshole
/datum/barsign/skyrat/spaceasshole
name = "Space Asshole"
icon_state = "spaceasshole"
desc = "Open since 2125, Not much has changed since then; the engineers still release the singulo and the damn miners still are more likely to cave your face in that deliver ores."
neon_color = "#FF0000"

/datum/barsign/birdcage
/datum/barsign/skyrat/birdcage
name = "The Bird Cage"
icon_state = "birdcage"
desc = "Caw."
neon_color = "#FFD21E"

/datum/barsign/narsie
/datum/barsign/skyrat/narsie
name = "Narsie Bistro"
icon_state = "narsiebistro"
desc = "The last pub before the World's End."
neon_color = "#FF0000"

/datum/barsign/fallout
/datum/barsign/skyrat/fallout
name = "The Booze Bunker"
icon_state = "boozebunker"
desc = "Never duck for cover without a drink!"
neon_color = "#FCC41B"

/datum/barsign/brokendreams
/datum/barsign/skyrat/brokendreams
name = "The Cafe of Broken Dreams"
icon_state = "brokendreams"
desc = "Try our new dogmeat sliders!"
neon_color = "#E8E8A5"

/datum/barsign/toolboxtavern
/datum/barsign/skyrat/toolboxtavern
name = "Toolbox Tavern"
icon_state = "toolboxtavern"
desc = "Free lodging with every Screwdriver purchased!"
neon_color = ""

/datum/barsign/blueoyster
/datum/barsign/skyrat/blueoyster
name = "The Blue Oyster"
icon_state = "blueoyster"
desc = "The totally heterosexual bar for totally heterosexual men, just come inside and see."
neon_color = ""

/datum/barsign/foreign
/datum/barsign/skyrat/foreign
name = "Foreign Food Sign"
icon_state = "foreign"
desc = "A sign written in some dead language advertising some non-descript foreign food."
neon_color = ""

/datum/barsign/commie
/datum/barsign/skyrat/commie
name = "Prole's Preferred"
icon_state = "commie"
desc = "The only bar you will ever need, comrade!"
neon_color = "#E46F6F"

/datum/barsign/brokenheros
/datum/barsign/skyrat/brokenheros
name = "The Bar of Broken Heros"
icon_state = "brokenheros"
desc = "Do you enjoy hurting other people?"
neon_color = ""

/datum/barsign/sociallubricator
/datum/barsign/skyrat/sociallubricator
name = "The Social Lubricator"
icon_state = "sociallubricator"
desc = "The perfect thing to make you like people you hate."
neon_color = ""

/datum/barsign/chemlab
/datum/barsign/skyrat/chemlab
name = "The Chem Lab"
icon_state = "chemlab"
desc = "Try our new plasma martinis!"
neon_color = ""

/datum/barsign/mime
/datum/barsign/skyrat/mime
name = "Moonshine Mime"
icon_state = "mime"
desc = "Silent, not stirred."
neon_color = ""

/datum/barsign/clown
/datum/barsign/skyrat/clown
name = "Honking Clown"
icon_state = "clown"
desc = "Bananas not included."
neon_color = ""

/datum/barsign/progressive
/datum/barsign/skyrat/progressive
name = "A Modern and Progressive Tavern"
icon_state = "progressive"
desc = "Whatever that means."
neon_color = "#DB9B9A"

/datum/barsign/va11halla
/datum/barsign/skyrat/va11halla
name = "VA-11 HALL-A"
icon_state = "va11halla"
desc = "Not as dangerous as N1-RV Ann-A."
neon_color = "#FB3F7D"

/datum/barsign/squatopia
/datum/barsign/skyrat/squatopia
name = "Squatopia"
icon_state = "squatopia"
desc = "The crystal belonged to my father. He was murdered."
neon_color = "#CC0033"

/datum/barsign/bug
/datum/barsign/skyrat/bug
name = "The Hungry Bug"
icon_state = "hungrybug"
desc = "Stop by and enjoy some of the Hole's famous gyoza!"
neon_color = "#E2B001"

// 96x96 signs

/datum/barsign/skyrat/large/cyberslyph
name = "Cyberslyph"
icon_state = "cyberslyph"
neon_color = "#00FFFF"
Binary file modified modular_skyrat/modules/barsigns/icons/barsigns.dmi
Binary file not shown.
Binary file not shown.
Loading

0 comments on commit 2759fad

Please sign in to comment.