mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-21 03:55:05 +01:00
Revert "Merge pull request #16520 from SabreML/fix-bundle-4"
This reverts commit9a62622fbc, reversing changes made to841ad0f1fd.
This commit is contained in:
@@ -726,7 +726,9 @@
|
||||
/turf/simulated/floor/plating/airless,
|
||||
/area/ruin/onehalf/hallway)
|
||||
"bK" = (
|
||||
/obj/machinery/vending/coffee,
|
||||
/obj/machinery/vending/coffee{
|
||||
name = "\improper Solar's Best Hot Drinks"
|
||||
},
|
||||
/obj/effect/landmark/damageturf,
|
||||
/turf/simulated/floor/plasteel/airless,
|
||||
/area/ruin/onehalf/hallway)
|
||||
|
||||
+10
-10
@@ -1926,23 +1926,23 @@ GLOBAL_DATUM_INIT(dview_mob, /mob/dview, new)
|
||||
|
||||
return pois
|
||||
|
||||
/proc/flash_color(mob_or_client, flash_color = "#960000", flash_time = 2 SECONDS)
|
||||
var/mob/M
|
||||
/proc/flash_color(mob_or_client, flash_color="#960000", flash_time=20)
|
||||
var/client/C
|
||||
if(ismob(mob_or_client))
|
||||
M = mob_or_client
|
||||
if(!M.client)
|
||||
if(istype(mob_or_client, /mob))
|
||||
var/mob/M = mob_or_client
|
||||
if(M.client)
|
||||
C = M.client
|
||||
else
|
||||
return
|
||||
C = M.client
|
||||
else if(isclient(mob_or_client))
|
||||
else if(istype(mob_or_client, /client))
|
||||
C = mob_or_client
|
||||
M = C.mob
|
||||
|
||||
if(!istype(C) || !istype(M))
|
||||
if(!istype(C))
|
||||
return
|
||||
|
||||
C.color = flash_color
|
||||
INVOKE_ASYNC(C, /client/.proc/colour_transition, M.get_screen_colour(), flash_time)
|
||||
spawn(0)
|
||||
animate(C, color = initial(C.color), time = flash_time)
|
||||
|
||||
#define RANDOM_COLOUR (rgb(rand(0,255),rand(0,255),rand(0,255)))
|
||||
|
||||
|
||||
@@ -287,7 +287,7 @@ SUBSYSTEM_DEF(ticker)
|
||||
else
|
||||
log_debug("Playercount: [playercount] versus trigger: [highpop_trigger] - keeping standard job config")
|
||||
|
||||
SSnightshift.check_nightshift(TRUE)
|
||||
SSnightshift.check_nightshift()
|
||||
|
||||
#ifdef UNIT_TESTS
|
||||
RunUnitTests()
|
||||
|
||||
@@ -14,9 +14,9 @@
|
||||
EXCEPTION("Invalid target given")
|
||||
if(goal_number)
|
||||
goal = goal_number
|
||||
bar = image('icons/effects/progessbar.dmi', target, "prog_bar_0", ABOVE_HUD_LAYER)
|
||||
bar = image('icons/effects/progessbar.dmi', target, "prog_bar_0", HUD_LAYER)
|
||||
bar.alpha = 0
|
||||
bar.plane = ABOVE_HUD_PLANE
|
||||
bar.plane = HUD_PLANE
|
||||
bar.appearance_flags = APPEARANCE_UI_IGNORE_ALPHA
|
||||
user = User
|
||||
if(user)
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
else
|
||||
to_chat(user, "<span class='notice'>Adrenaline rushes through us.</span>")
|
||||
user.SetSleeping(0)
|
||||
user.WakeUp()
|
||||
user.stat = 0
|
||||
user.SetParalysis(0)
|
||||
user.SetStunned(0)
|
||||
user.SetWeakened(0)
|
||||
|
||||
@@ -231,23 +231,20 @@ to destroy them and players will be able to make replacements.
|
||||
build_path = /obj/machinery/vending/boozeomat
|
||||
req_components = list(/obj/item/vending_refill/boozeomat = 1)
|
||||
|
||||
var/static/list/vending_names_paths = list( // This should really get refactored at some point
|
||||
var/static/list/vending_names_paths = list(
|
||||
"Booze-O-Mat" = /obj/machinery/vending/boozeomat,
|
||||
"Hot Drinks machine" = /obj/machinery/vending/coffee,
|
||||
"Solar's Best Hot Drinks" = /obj/machinery/vending/coffee,
|
||||
"Getmore Chocolate Corp" = /obj/machinery/vending/snack,
|
||||
"Mr. Chang" = /obj/machinery/vending/chinese,
|
||||
"Robust Softdrinks" = /obj/machinery/vending/cola,
|
||||
"cigarette machine" = /obj/machinery/vending/cigarette,
|
||||
"ShadyCigs Ultra" = /obj/machinery/vending/cigarette/beach,
|
||||
"ShadyCigs Deluxe" = /obj/machinery/vending/cigarette,
|
||||
"Hatlord 9000" = /obj/machinery/vending/hatdispenser,
|
||||
"Suitlord 9000" = /obj/machinery/vending/suitdispenser,
|
||||
"Shoelord 9000" = /obj/machinery/vending/shoedispenser,
|
||||
"AutoDrobe" = /obj/machinery/vending/autodrobe,
|
||||
"ClothesMate" = /obj/machinery/vending/clothing,
|
||||
"NanoMed" = /obj/machinery/vending/wallmed,
|
||||
"Emergency NanoMed" = /obj/machinery/vending/wallmed,
|
||||
"NanoMed Plus" = /obj/machinery/vending/medical,
|
||||
"SyndiMed Plus" = /obj/machinery/vending/medical/syndicate_access,
|
||||
"NanoMed" = /obj/machinery/vending/wallmed,
|
||||
"Vendomat" = /obj/machinery/vending/assist,
|
||||
"YouTool" = /obj/machinery/vending/tool,
|
||||
"Engi-Vend" = /obj/machinery/vending/engivend,
|
||||
@@ -273,9 +270,6 @@ to destroy them and players will be able to make replacements.
|
||||
|
||||
/obj/item/circuitboard/vendor/proc/set_type(type)
|
||||
var/obj/machinery/vending/typepath = vending_names_paths[type]
|
||||
if(!typepath)
|
||||
stack_trace("set_type() called with an invalid type variable. type: [type]")
|
||||
|
||||
build_path = typepath
|
||||
board_name = "[type] Vendor"
|
||||
format_board_name()
|
||||
|
||||
@@ -1646,7 +1646,7 @@
|
||||
|
||||
//don't forget to change the refill size if you change the machine's contents!
|
||||
/obj/machinery/vending/clothing
|
||||
name = "\improper ClothesMate" //renamed to make the slogan rhyme
|
||||
name = "\improper ClothesMate" //renamed to make the slogan rhyme
|
||||
desc = "A vending machine for clothing."
|
||||
icon_state = "clothes"
|
||||
slogan_list = list("Dress for success!","Prepare to look swagalicious!","Look at all this free swag!","Why leave style up to fate? Use the ClothesMate!")
|
||||
|
||||
@@ -266,10 +266,9 @@
|
||||
|
||||
possessed = TRUE
|
||||
|
||||
var/list/mob/dead/observer/candidates = SSghost_spawns.poll_candidates("Do you want to play as the spirit of [user.real_name]'s blade?", ROLE_PAI, FALSE, 10 SECONDS, source = src, role_cleanname = "Possessed Blade")
|
||||
var/list/mob/dead/observer/candidates = SSghost_spawns.poll_candidates("Do you want to play as the spirit of [user.real_name]'s blade?", ROLE_PAI, FALSE, 10 SECONDS, source = src)
|
||||
var/mob/dead/observer/theghost = null
|
||||
if(QDELETED(src))
|
||||
return
|
||||
|
||||
if(length(candidates))
|
||||
theghost = pick(candidates)
|
||||
var/mob/living/simple_animal/shade/sword/S = new(src)
|
||||
|
||||
@@ -1,15 +1,18 @@
|
||||
/obj/structure/sign
|
||||
icon = 'icons/obj/decals.dmi'
|
||||
anchored = TRUE
|
||||
layer = NOT_HIGH_OBJ_LAYER
|
||||
anchored = 1
|
||||
opacity = 0
|
||||
density = 0
|
||||
layer = 3.5
|
||||
max_integrity = 100
|
||||
armor = list("melee" = 50, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 50)
|
||||
flags_2 = RAD_PROTECT_CONTENTS_2 | RAD_NO_CONTAMINATE_2
|
||||
|
||||
/obj/structure/sign/play_attack_sound(damage_amount, damage_type = BRUTE, damage_flag = 0)
|
||||
switch(damage_type)
|
||||
if(BRUTE)
|
||||
if(damage_amount)
|
||||
playsound(loc, 'sound/weapons/slash.ogg', 80, TRUE)
|
||||
playsound(src.loc, 'sound/weapons/slash.ogg', 80, TRUE)
|
||||
else
|
||||
playsound(loc, 'sound/weapons/tap.ogg', 50, TRUE)
|
||||
if(BURN)
|
||||
@@ -22,41 +25,50 @@
|
||||
if(!I.use_tool(src, user, 0, volume = I.tool_volume))
|
||||
return
|
||||
to_chat(user, "You unfasten the sign with [I].")
|
||||
var/obj/item/sign/S = new(get_turf(user)) // This is bad
|
||||
var/obj/item/sign/S = new(src.loc)
|
||||
S.name = name
|
||||
S.desc = desc
|
||||
S.icon_state = icon_state
|
||||
//var/icon/I = icon('icons/obj/decals.dmi', icon_state)
|
||||
//S.icon = I.Scale(24, 24)
|
||||
S.sign_state = icon_state
|
||||
qdel(src)
|
||||
|
||||
|
||||
/obj/item/sign
|
||||
name = "sign"
|
||||
desc = ""
|
||||
icon = 'icons/obj/decals.dmi'
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
resistance_flags = FLAMMABLE
|
||||
var/sign_state = ""
|
||||
|
||||
/obj/item/sign/screwdriver_act(mob/living/user, obj/item/I)
|
||||
. = TRUE
|
||||
var/direction = input("In which direction?", "Select direction.") as null|anything in list("North", "South", "East", "West")
|
||||
if(!direction || QDELETED(src) || !in_range(src, user))
|
||||
return
|
||||
if(!I.use_tool(src, user, 0, volume = I.tool_volume))
|
||||
return
|
||||
var/obj/structure/sign/S = new(get_turf(src)) // This is also bad
|
||||
switch(direction)
|
||||
if("North")
|
||||
S.pixel_y = 32
|
||||
if("South")
|
||||
S.pixel_y = -32
|
||||
if("East")
|
||||
S.pixel_x = 32
|
||||
if("West")
|
||||
S.pixel_x = -32
|
||||
S.name = name
|
||||
S.desc = desc
|
||||
S.icon_state = icon_state
|
||||
to_chat(user, "<span class='notice'>You fasten [src] with [I].</span>")
|
||||
qdel(src)
|
||||
/obj/item/sign/attackby(obj/item/tool as obj, mob/user as mob) //construction
|
||||
if(istype(tool, /obj/item/screwdriver) && isturf(user.loc))
|
||||
var/direction = input("In which direction?", "Select direction.") in list("North", "East", "South", "West", "Cancel")
|
||||
if(direction == "Cancel")
|
||||
return
|
||||
if(QDELETED(src))
|
||||
return
|
||||
var/obj/structure/sign/S = new(user.loc)
|
||||
switch(direction)
|
||||
if("North")
|
||||
S.pixel_y = 32
|
||||
if("East")
|
||||
S.pixel_x = 32
|
||||
if("South")
|
||||
S.pixel_y = -32
|
||||
if("West")
|
||||
S.pixel_x = -32
|
||||
else
|
||||
return
|
||||
S.name = name
|
||||
S.desc = desc
|
||||
S.icon_state = sign_state
|
||||
to_chat(user, "You fasten \the [S] with your [tool].")
|
||||
qdel(src)
|
||||
else
|
||||
return ..()
|
||||
|
||||
/obj/structure/sign/double/map
|
||||
name = "station map"
|
||||
|
||||
@@ -43,7 +43,7 @@
|
||||
/obj/item/card/id/away/old/apc
|
||||
name = "APC Access ID"
|
||||
desc = "A special ID card that allows access to APC terminals."
|
||||
icon_state = "guest_invalid"
|
||||
icon_state = "centcom_old"
|
||||
access = list(ACCESS_ENGINE_EQUIP)
|
||||
|
||||
/obj/item/storage/backpack/old
|
||||
|
||||
@@ -27,7 +27,6 @@
|
||||
var/mob/living/simple_animal/mouse/blobinfected/B = new(vent.loc)
|
||||
var/mob/M = pick(candidates)
|
||||
B.key = M.key
|
||||
B.mind.special_role = SPECIAL_ROLE_BLOB
|
||||
SSticker.mode.update_blob_icons_added(B.mind)
|
||||
|
||||
to_chat(B, "<span class='userdanger'>You are now a mouse, infected with blob spores. Find somewhere isolated... before you burst and become the blob! Use ventcrawl (alt-click on vents) to move around.</span>")
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
else if(prob(50))
|
||||
msg = "Contact has been lost with a combat drone wing operating out of the NSV Icarus. If any are sighted in the area, approach with caution."
|
||||
else
|
||||
msg = "Unidentified hackers have targeted a combat drone wing deployed from the NSV Icarus. If any are sighted in the area, approach with caution."
|
||||
msg = "Unidentified hackers have targetted a combat drone wing deployed from the NSV Icarus. If any are sighted in the area, approach with caution."
|
||||
GLOB.event_announcement.Announce(msg, "Rogue drone alert")
|
||||
|
||||
/datum/event/rogue_drone/tick()
|
||||
|
||||
@@ -132,7 +132,6 @@
|
||||
filling_color = "#7D5F46"
|
||||
bitesize = 3
|
||||
junkiness = 25
|
||||
antable = FALSE
|
||||
list_reagents = list("nutriment" = 1, "chocolate" = 1)
|
||||
tastes = list("chocolate" = 1)
|
||||
|
||||
|
||||
@@ -58,7 +58,6 @@
|
||||
desc = "What is in this anyways?"
|
||||
icon_state = "chinese1"
|
||||
junkiness = 25
|
||||
antable = FALSE
|
||||
list_reagents = list("nutriment" = 1, "beans" = 3, "msg" = 4, "sugar" = 2)
|
||||
tastes = list("noodle" = 1, "vegetables" = 1)
|
||||
|
||||
|
||||
@@ -11,7 +11,6 @@
|
||||
trash = /obj/item/trash/chips
|
||||
filling_color = "#E8C31E"
|
||||
junkiness = 20
|
||||
antable = FALSE
|
||||
list_reagents = list("nutriment" = 1, "sodiumchloride" = 1, "sugar" = 3)
|
||||
tastes = list("crisps" = 1)
|
||||
|
||||
@@ -22,7 +21,6 @@
|
||||
trash = /obj/item/trash/sosjerky
|
||||
filling_color = "#631212"
|
||||
junkiness = 25
|
||||
antable = FALSE
|
||||
list_reagents = list("protein" = 1, "sugar" = 3)
|
||||
tastes = list("chewy beef" = 1)
|
||||
|
||||
@@ -33,7 +31,6 @@
|
||||
trash = /obj/item/trash/pistachios
|
||||
filling_color = "#BAD145"
|
||||
junkiness = 20
|
||||
antable = FALSE
|
||||
list_reagents = list("plantmatter" = 2, "sodiumchloride" = 1, "sugar" = 4)
|
||||
tastes = list("pistachios" = 1)
|
||||
|
||||
@@ -44,7 +41,6 @@
|
||||
trash = /obj/item/trash/raisins
|
||||
filling_color = "#343834"
|
||||
junkiness = 25
|
||||
antable = FALSE
|
||||
list_reagents = list("plantmatter" = 2, "sugar" = 4)
|
||||
tastes = list("dried raisins" = 1)
|
||||
|
||||
@@ -65,7 +61,6 @@
|
||||
trash = /obj/item/trash/cheesie
|
||||
filling_color = "#FFA305"
|
||||
junkiness = 25
|
||||
antable = FALSE
|
||||
list_reagents = list("nutriment" = 1, "fake_cheese" = 2, "sugar" = 3)
|
||||
tastes = list("cheese" = 1, "crisps" = 2)
|
||||
|
||||
@@ -76,7 +71,6 @@
|
||||
filling_color = "#FF5D05"
|
||||
trash = /obj/item/trash/syndi_cakes
|
||||
bitesize = 3
|
||||
antable = FALSE
|
||||
list_reagents = list("nutriment" = 4, "salglu_solution" = 5)
|
||||
tastes = list("sweetness" = 3, "cake" = 1)
|
||||
|
||||
@@ -87,7 +81,6 @@
|
||||
trash = /obj/item/trash/tastybread
|
||||
filling_color = "#A66829"
|
||||
junkiness = 20
|
||||
antable = FALSE
|
||||
list_reagents = list("nutriment" = 2, "sugar" = 4)
|
||||
tastes = list("bread" = 1)
|
||||
|
||||
|
||||
@@ -24,23 +24,6 @@
|
||||
idle_power_usage = 2
|
||||
active_power_usage = 500
|
||||
|
||||
/obj/machinery/gibber/Initialize(mapload)
|
||||
. = ..()
|
||||
overlays += image('icons/obj/kitchen.dmi', "grjam")
|
||||
component_parts = list()
|
||||
component_parts += new /obj/item/circuitboard/gibber(null)
|
||||
component_parts += new /obj/item/stock_parts/matter_bin(null)
|
||||
component_parts += new /obj/item/stock_parts/manipulator(null)
|
||||
RefreshParts()
|
||||
|
||||
/obj/machinery/gibber/Destroy()
|
||||
if(contents.len)
|
||||
for(var/atom/movable/A in contents)
|
||||
A.loc = get_turf(src)
|
||||
if(occupant)
|
||||
occupant = null
|
||||
return ..()
|
||||
|
||||
/obj/machinery/gibber/suicide_act(mob/user)
|
||||
if(occupant || locked)
|
||||
return FALSE
|
||||
@@ -53,6 +36,21 @@
|
||||
addtimer(CALLBACK(src, .proc/startgibbing, user), 33)
|
||||
return OBLITERATION
|
||||
|
||||
/obj/machinery/gibber/Destroy()
|
||||
if(contents.len)
|
||||
for(var/atom/movable/A in contents)
|
||||
A.loc = get_turf(src)
|
||||
if(occupant)
|
||||
occupant = null
|
||||
return ..()
|
||||
|
||||
/obj/machinery/gibber/RefreshParts() //If you want to make the machine upgradable, this is where you would change any vars basd on its stock parts.
|
||||
return
|
||||
|
||||
/obj/machinery/gibber/New()
|
||||
..()
|
||||
overlays += image('icons/obj/kitchen.dmi', "grjam")
|
||||
|
||||
/obj/machinery/gibber/update_icon()
|
||||
overlays.Cut()
|
||||
|
||||
|
||||
@@ -31,6 +31,10 @@
|
||||
update_static_data(owner, ui)
|
||||
. = TRUE
|
||||
|
||||
/datum/orbit_menu/ui_data(mob/user)
|
||||
var/list/data = list()
|
||||
return data
|
||||
|
||||
/datum/orbit_menu/ui_static_data(mob/user)
|
||||
var/list/data = list()
|
||||
|
||||
@@ -92,7 +96,6 @@
|
||||
)
|
||||
if(SSticker && SSticker.mode)
|
||||
other_antags += list(
|
||||
"Blob" = (mind.special_role == SPECIAL_ROLE_BLOB),
|
||||
"Cultist" = (mind in SSticker.mode.cult),
|
||||
"Wizard" = (mind in SSticker.mode.wizards),
|
||||
"Wizard's Apprentice" = (mind in SSticker.mode.apprentices),
|
||||
@@ -118,10 +121,6 @@
|
||||
var/list/antag_serialized = serialized.Copy()
|
||||
antag_serialized["antag"] = "Terror Spider"
|
||||
antagonists += list(antag_serialized)
|
||||
else if(istype(M, /mob/living/simple_animal/revenant))
|
||||
var/list/antag_serialized = serialized.Copy()
|
||||
antag_serialized["antag"] = "Revenant"
|
||||
antagonists += list(antag_serialized)
|
||||
else
|
||||
misc += list(serialized)
|
||||
|
||||
|
||||
@@ -272,8 +272,6 @@
|
||||
* * target - The mob who is currently on fire
|
||||
*/
|
||||
/mob/living/carbon/proc/pat_out(mob/living/target)
|
||||
if(target == src)
|
||||
return // Probably shouldn't be able to pat yourself out.
|
||||
var/self_message = "<span class='warning'>You try to extinguish [target]!</span>"
|
||||
if(prob(30) && ishuman(src)) // 30% chance of burning your hands
|
||||
var/mob/living/carbon/human/H = src
|
||||
|
||||
@@ -170,13 +170,9 @@
|
||||
|
||||
if("growl", "growls")
|
||||
var/M = handle_emote_param(param)
|
||||
if(miming)
|
||||
message = "<B>[src]</B> acts out a growl[M ? " at [M]" : ""]!"
|
||||
m_type = 1
|
||||
else
|
||||
message = "<B>[src]</B> growls[M ? " at [M]" : ""]!"
|
||||
playsound(loc, "growls", 80, 1, frequency = get_age_pitch())
|
||||
m_type = 2
|
||||
message = "<B>[src]</B> growls[M ? " at [M]" : ""]."
|
||||
playsound(loc, "growls", 80, 1, frequency = get_age_pitch())
|
||||
m_type = 2
|
||||
|
||||
if("ping", "pings")
|
||||
var/M = handle_emote_param(param)
|
||||
|
||||
@@ -13,7 +13,6 @@
|
||||
return 0
|
||||
|
||||
/mob/proc/get_screen_colour()
|
||||
return
|
||||
|
||||
/mob/proc/update_client_colour(time = 10) //Update the mob's client.color with an animation the specified time in length.
|
||||
if(!client) //No client_colour without client. If the player logs back in they'll be back through here anyway.
|
||||
|
||||
@@ -97,10 +97,12 @@
|
||||
A.emp_act(severity)
|
||||
|
||||
/obj/item/smallDelivery/attack_self(mob/user as mob)
|
||||
if(wrapped?.loc == src) //sometimes items can disappear. For example, bombs. --rastaf0
|
||||
wrapped.forceMove(get_turf(src))
|
||||
if(wrapped && wrapped.loc) //sometimes items can disappear. For example, bombs. --rastaf0
|
||||
wrapped.loc = user.loc
|
||||
if(ishuman(user))
|
||||
user.put_in_hands(wrapped)
|
||||
else
|
||||
wrapped.loc = get_turf(src)
|
||||
playsound(src.loc, 'sound/items/poster_ripped.ogg', 50, 1)
|
||||
qdel(src)
|
||||
|
||||
@@ -161,8 +163,6 @@
|
||||
|
||||
if(is_type_in_list(target, no_wrap))
|
||||
return
|
||||
if(is_type_in_list(A.loc, list(/obj/item/smallDelivery, /obj/structure/bigDelivery)))
|
||||
return
|
||||
if(target.anchored)
|
||||
return
|
||||
if(target in user)
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 18 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 337 KiB After Width: | Height: | Size: 337 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 54 KiB After Width: | Height: | Size: 54 KiB |
Reference in New Issue
Block a user