mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-07-18 03:26:31 +01:00
896107d239
## About The Pull Request adds more posters <img width="681" height="113" alt="image" src="https://github.com/user-attachments/assets/55b1f611-68a6-4675-a7bf-8816a900685d" /> idea for PRing this and all sprites belong to: https://github.com/PiotrTheTchaikowsky ## Why It's Good For The Game more silly posters = fvn ## Changelog 🆑 image: Added 2 new contraband and 1 new official posters. /🆑
278 lines
10 KiB
Plaintext
278 lines
10 KiB
Plaintext
#define POSTER_MOOD_CAT "poster_mood"
|
|
|
|
/obj/item/poster/quirk
|
|
name = "placeholder quirk poster"
|
|
desc = "Uh oh! You shouldn't have this!"
|
|
icon_state = "rolled_poster_legit"
|
|
/// People from the selected department will gain a mood buff. If no department is specified applies to the entire crew.
|
|
var/quirk_poster_department = NONE
|
|
|
|
/obj/item/poster/quirk/Initialize(mapload, obj/structure/sign/poster/new_poster_structure)
|
|
. = ..()
|
|
|
|
register_context()
|
|
|
|
if(poster_structure)
|
|
var/obj/structure/sign/poster/quirk/department_grab = poster_structure
|
|
department_grab.quirk_poster_department = quirk_poster_department
|
|
|
|
/// You can use any spraypaint can on a quirk poster to turn it into a contraband poster from the traitor objective
|
|
/obj/item/poster/quirk/attackby(obj/item/postertool, mob/user, list/modifiers, list/attack_modifiers)
|
|
if(!user.is_antag() || !HAS_TRAIT(user, TRAIT_POSTERBOY) || !istype(postertool, /obj/item/toy/crayon))
|
|
return ..()
|
|
balloon_alert(user, "converting poster...")
|
|
if(!do_after(user, 5 SECONDS, user))
|
|
balloon_alert(user, "interrupted!")
|
|
return
|
|
var/obj/item/poster/traitor/quirkspawn = new(get_turf(src))
|
|
user.put_in_hands(quirkspawn)
|
|
to_chat(user, span_notice("You have converted one of your posters!"))
|
|
qdel(src)
|
|
|
|
/// Screentip for the above
|
|
|
|
/obj/item/poster/quirk/add_context(atom/source, list/context, obj/item/held_item, mob/user)
|
|
if(!user.is_antag() || !HAS_TRAIT(user, TRAIT_POSTERBOY) || !istype(held_item, /obj/item/toy/crayon))
|
|
return NONE
|
|
context[SCREENTIP_CONTEXT_LMB] = "Turn into Demoralizing Poster"
|
|
return CONTEXTUAL_SCREENTIP_SET
|
|
|
|
/obj/structure/sign/poster/quirk
|
|
name = "quirk poster"
|
|
desc = "A large piece of homemade space-resistant printed paper."
|
|
poster_item_name = "homemade poster"
|
|
poster_item_desc = "A poster made with love, some people will enjoy seeing it."
|
|
poster_item_icon_state = "rolled_legit"
|
|
var/quirk_poster_department = NONE
|
|
var/datum/proximity_monitor/advanced/quirk_posters/mood_buff
|
|
|
|
/obj/structure/sign/poster/quirk/on_placed_poster(mob/user)
|
|
mood_buff = new(_host = src, range = 7, _ignore_if_not_on_turf = TRUE, department = quirk_poster_department)
|
|
return ..()
|
|
|
|
/obj/structure/sign/poster/quirk/attackby(obj/item/I, mob/user, list/modifiers, list/attack_modifiers)
|
|
if (I.tool_behaviour == TOOL_WIRECUTTER)
|
|
QDEL_NULL(mood_buff)
|
|
return ..()
|
|
|
|
/obj/structure/sign/poster/quirk/Destroy()
|
|
QDEL_NULL(mood_buff)
|
|
return ..()
|
|
|
|
/obj/structure/sign/poster/quirk/apply_holiday()
|
|
var/obj/structure/sign/poster/traitor/holiday_data = /obj/structure/sign/poster/quirk/festive
|
|
name = initial(holiday_data.name)
|
|
desc = initial(holiday_data.desc)
|
|
icon_state = initial(holiday_data.icon_state)
|
|
|
|
/*
|
|
* Applies a department-based mood if you can see the parent.
|
|
*
|
|
* - Applies a mood buff to people who are in visible range of the item.
|
|
*/
|
|
/datum/proximity_monitor/advanced/quirk_posters
|
|
/// Defines the specific department that the poster will apply its mood buff to, if the poster has a quirk_poster_department.
|
|
var/department
|
|
|
|
/datum/proximity_monitor/advanced/quirk_posters/New(atom/_host, range, _ignore_if_not_on_turf = TRUE, department)
|
|
. = ..()
|
|
src.department = department
|
|
RegisterSignal(host, COMSIG_ATOM_EXAMINE, PROC_REF(on_examine))
|
|
|
|
/datum/proximity_monitor/advanced/quirk_posters/field_turf_crossed(atom/movable/crossed, turf/old_location, turf/new_location)
|
|
if (!isliving(crossed) || !can_see(crossed, host, current_range))
|
|
return
|
|
on_seen(crossed)
|
|
|
|
/datum/proximity_monitor/advanced/quirk_posters/proc/on_examine(datum/source, mob/examiner)
|
|
SIGNAL_HANDLER
|
|
if (isliving(examiner))
|
|
on_seen(examiner)
|
|
|
|
/datum/proximity_monitor/advanced/quirk_posters/proc/on_seen(mob/living/viewer)
|
|
if (!viewer.mind || !viewer.mob_mood || (viewer.stat != CONSCIOUS) || viewer.is_blind())
|
|
return
|
|
if(!viewer.can_read(host, READING_CHECK_LIGHT, TRUE))
|
|
return
|
|
if (viewer.mob_mood.has_mood_of_category(POSTER_MOOD_CAT))
|
|
return
|
|
var/viewer_department = viewer.mind.assigned_role.paycheck_department
|
|
if(department != NONE && viewer_department != department)
|
|
return
|
|
to_chat(viewer, span_notice("Wow, great poster!"))
|
|
viewer.add_mood_event(POSTER_MOOD_CAT, /datum/mood_event/poster_mood)
|
|
|
|
/datum/mood_event/poster_mood
|
|
description = "That poster is really motivating me!"
|
|
mood_change = 2
|
|
|
|
// random posters
|
|
|
|
/obj/item/poster/quirk/random
|
|
poster_type = /obj/structure/sign/poster/quirk/random
|
|
|
|
/obj/structure/sign/poster/quirk/random
|
|
never_random = TRUE
|
|
random_basetype = /obj/structure/sign/poster/quirk
|
|
|
|
/obj/item/poster/quirk/crew/random
|
|
poster_type = /obj/structure/sign/poster/quirk/crew/random
|
|
|
|
/obj/structure/sign/poster/quirk/crew/random
|
|
never_random = TRUE
|
|
random_basetype = /obj/structure/sign/poster/quirk/crew
|
|
|
|
// actual poster items
|
|
|
|
/obj/structure/sign/poster/quirk/festive
|
|
name = "Together For The Holidays."
|
|
desc = "A poster holding hands and reminding us of the holidays we spend together. \
|
|
When people read this poster they'll feel better!"
|
|
icon_state = "quirk_festive"
|
|
never_random = TRUE
|
|
|
|
/obj/structure/sign/poster/quirk/crew
|
|
poster_item_desc = "A poster made with love, everyone will enjoy seeing it."
|
|
|
|
/obj/structure/sign/poster/quirk/crew/hang
|
|
name = "Hang In There"
|
|
desc = "A poster with a cat hanging on a branch. Just hang in there. \
|
|
When people read this poster they'll feel better!"
|
|
icon_state = "hang_in_there"
|
|
|
|
/obj/structure/sign/poster/quirk/crew/renault
|
|
name = "Captain's Pet"
|
|
desc = "A poster depicting the Captains beloved Renault. He's ok. \
|
|
When people read this poster they'll feel better!"
|
|
icon_state = "renault"
|
|
|
|
/obj/structure/sign/poster/quirk/crew/bike
|
|
name = "Someday..."
|
|
desc = "A poster depicting a bike. Someday it WILL be yours! \
|
|
When people read this poster they'll feel better!"
|
|
icon_state = "bike"
|
|
|
|
// Departmental posters
|
|
|
|
/obj/item/poster/quirk/cargo_logo
|
|
poster_type = /obj/structure/sign/poster/quirk/cargo_logo
|
|
quirk_poster_department = ACCOUNT_CAR
|
|
|
|
/obj/structure/sign/poster/quirk/cargo_logo
|
|
name = "Cargo logo"
|
|
desc = "A poster made with love depicting a box, a banner for Cargonia. \
|
|
When members of the cargo department read this poster they'll feel better!"
|
|
icon_state = "cargo_logo"
|
|
|
|
/obj/item/poster/quirk/cargo_slogan
|
|
poster_type = /obj/structure/sign/poster/quirk/cargo_slogan
|
|
quirk_poster_department = ACCOUNT_CAR
|
|
|
|
/obj/structure/sign/poster/quirk/cargo_slogan
|
|
name = "Cargo Strong"
|
|
desc = "Cargo is Stronger Together! Cargo Workers Unite! \
|
|
When members of the cargo department read this poster they'll feel better!"
|
|
icon_state = "cargo_slogan"
|
|
|
|
/obj/item/poster/quirk/engineering_logo
|
|
poster_type = /obj/structure/sign/poster/quirk/engineering_logo
|
|
quirk_poster_department = ACCOUNT_ENG
|
|
|
|
/obj/structure/sign/poster/quirk/engineering_logo
|
|
name = "Engineering logo"
|
|
desc = "A poster made with love depicting a wrench. \
|
|
When members of the engineering department read this poster they'll feel better!"
|
|
icon_state = "engineering_logo"
|
|
|
|
/obj/item/poster/quirk/engineering_slogan
|
|
poster_type = /obj/structure/sign/poster/quirk/engineering_slogan
|
|
quirk_poster_department = ACCOUNT_ENG
|
|
|
|
/obj/structure/sign/poster/quirk/engineering_slogan
|
|
name = "No Delamination"
|
|
desc = "The engine won't delaminate today! \
|
|
When members of the engineering department read this poster they'll feel better!"
|
|
icon_state = "engineering_slogan"
|
|
|
|
/obj/item/poster/quirk/medical_logo
|
|
poster_type = /obj/structure/sign/poster/quirk/medical_logo
|
|
quirk_poster_department = ACCOUNT_MED
|
|
|
|
/obj/structure/sign/poster/quirk/medical_logo
|
|
name = "Blue Cross"
|
|
desc = "A poster made with love depicting the Blue Cross. \
|
|
When members of the medical department read this poster they'll feel better!"
|
|
icon_state = "medical_logo"
|
|
|
|
/obj/item/poster/quirk/medical_slogan
|
|
poster_type = /obj/structure/sign/poster/quirk/medical_slogan
|
|
quirk_poster_department = ACCOUNT_MED
|
|
|
|
/obj/structure/sign/poster/quirk/medical_slogan
|
|
name = "Heal and Mend"
|
|
desc = "Heal all who ask and Mend all who need. \
|
|
When members of the medical department read this poster they'll feel better!"
|
|
icon_state = "medical_slogan"
|
|
|
|
/obj/item/poster/quirk/science_logo
|
|
poster_type = /obj/structure/sign/poster/quirk/science_logo
|
|
quirk_poster_department = ACCOUNT_SCI
|
|
|
|
/obj/structure/sign/poster/quirk/science_logo
|
|
name = "Science logo"
|
|
desc = "A poster made with love depicting an atom. \
|
|
When members of the science department read this poster they'll feel better!"
|
|
icon_state = "science_logo"
|
|
|
|
/obj/item/poster/quirk/science_slogan
|
|
poster_type = /obj/structure/sign/poster/quirk/science_slogan
|
|
quirk_poster_department = ACCOUNT_SCI
|
|
|
|
/obj/structure/sign/poster/quirk/science_slogan
|
|
name = "Research and Develop"
|
|
desc = "Research the unknown and Develop the impossible! \
|
|
When members of the science department read this poster they'll feel better!"
|
|
icon_state = "science_slogan"
|
|
|
|
/obj/item/poster/quirk/security_logo
|
|
poster_type = /obj/structure/sign/poster/quirk/security_logo
|
|
quirk_poster_department = ACCOUNT_SEC
|
|
|
|
/obj/structure/sign/poster/quirk/security_logo
|
|
name = "Security logo"
|
|
desc = "A poster made with love depicting a shield. \
|
|
When members of the security department read this poster they'll feel better!"
|
|
icon_state = "security_logo"
|
|
|
|
/obj/item/poster/quirk/security_logo
|
|
poster_type = /obj/structure/sign/poster/quirk/security_slogan
|
|
quirk_poster_department = ACCOUNT_SEC
|
|
|
|
/obj/structure/sign/poster/quirk/security_slogan
|
|
name = "Protect and Serve"
|
|
desc = "To protect the innocent crew and serve justice! \
|
|
When members of the security department read this poster they'll feel better!"
|
|
icon_state = "security_slogan"
|
|
|
|
/obj/item/poster/quirk/service_logo
|
|
poster_type = /obj/structure/sign/poster/quirk/service_logo
|
|
quirk_poster_department = ACCOUNT_SRV
|
|
|
|
/obj/structure/sign/poster/quirk/service_logo
|
|
name = "Service corgi"
|
|
desc = "A poster made with love depicting a certain corgi. \
|
|
When members of the service department read this poster they'll feel better!"
|
|
icon_state = "service_logo"
|
|
|
|
/obj/item/poster/quirk/service_slogan
|
|
poster_type = /obj/structure/sign/poster/quirk/service_slogan
|
|
quirk_poster_department = ACCOUNT_SRV
|
|
|
|
/obj/structure/sign/poster/quirk/service_slogan
|
|
name = "Share Joy"
|
|
desc = "Share joy with each action. Bring happiness through creation. \
|
|
When members of the service department read this poster they'll feel better!"
|
|
icon_state = "service_slogan"
|
|
|
|
#undef POSTER_MOOD_CAT
|