[MIRROR] Planet time debug uncapping and broken weapon chat output (#9556)

Co-authored-by: Heroman3003 <31296024+Heroman3003@users.noreply.github.com>
This commit is contained in:
CHOMPStation2StaffMirrorBot
2024-11-28 02:02:16 -07:00
committed by GitHub
parent 11d462cdb9
commit 1166e69eb4
2 changed files with 31 additions and 26 deletions

View File

@@ -678,9 +678,11 @@
var/datum/planet/planet = tgui_input_list(usr, "Which planet do you want to modify time on?", "Change Time", SSplanets.planets) var/datum/planet/planet = tgui_input_list(usr, "Which planet do you want to modify time on?", "Change Time", SSplanets.planets)
if(istype(planet)) if(istype(planet))
var/datum/time/current_time_datum = planet.current_time var/datum/time/current_time_datum = planet.current_time
var/new_hour = tgui_input_number(usr, "What hour do you want to change to?", "Change Time", text2num(current_time_datum.show_time("hh")), 23) var/planet_hours = max(round(current_time_datum.seconds_in_day / 36000) - 1, 0)
var/new_hour = tgui_input_number(usr, "What hour do you want to change to?", "Change Time", text2num(current_time_datum.show_time("hh")), planet_hours)
if(!isnull(new_hour)) if(!isnull(new_hour))
var/new_minute = tgui_input_number(usr, "What minute do you want to change to?", "Change Time", text2num(current_time_datum.show_time("mm")), 59) var/planet_minutes = max(round(current_time_datum.seconds_in_hour / 600) - 1, 0)
var/new_minute = tgui_input_number(usr, "What minute do you want to change to?", "Change Time", text2num(current_time_datum.show_time("mm")), planet_minutes)
if(!isnull(new_minute)) if(!isnull(new_minute))
var/type_needed = current_time_datum.type var/type_needed = current_time_datum.type
var/datum/time/new_time = new type_needed() var/datum/time/new_time = new type_needed()

View File

@@ -98,34 +98,37 @@
/obj/item/broken_gun/proc/can_repair_with(obj/item/I, mob/user) /obj/item/broken_gun/proc/can_repair_with(obj/item/I, mob/user)
for(var/path in material_needs) for(var/path in material_needs)
if(ispath(path) && istype(I, path)) if(!ispath(path) || !istype(I, path))
if(material_needs[path] > 0) continue
if(istype(I, /obj/item/stack)) if(material_needs[path] <= 0)
var/obj/item/stack/S = I continue
if(S.can_use(material_needs[path])) if(istype(I, /obj/item/stack))
return TRUE var/obj/item/stack/S = I
else if(S.can_use(material_needs[path]))
to_chat(user, span_notice("You do not have enough [path] to continue repairs.")) return TRUE
else else
return TRUE to_chat(user, span_notice("You do not have enough [I] to continue repairs."))
else
return TRUE
return FALSE return FALSE
/obj/item/broken_gun/proc/repair_with(obj/item/I, mob/user) /obj/item/broken_gun/proc/repair_with(obj/item/I, mob/user)
for(var/path in material_needs) for(var/path in material_needs)
if(ispath(path) && istype(I, path)) if(!ispath(path) || !istype(I, path))
if(material_needs[path] > 0) continue
if(istype(I, /obj/item/stack)) if(material_needs[path] <= 0)
var/obj/item/stack/S = I continue
if(S.can_use(material_needs[path])) if(istype(I, /obj/item/stack))
S.use(material_needs[path]) var/obj/item/stack/S = I
material_needs[path] = 0 if(S.can_use(material_needs[path]))
to_chat(user, span_notice("You repair some damage on \the [src] with \the [S].")) S.use(material_needs[path])
else material_needs[path] = 0
material_needs[path] = max(0, material_needs[path] - 1) to_chat(user, span_notice("You repair some damage on \the [src] with \the [S]."))
user.drop_from_inventory(I) else
to_chat(user, span_notice("You repair some damage on \the [src] with \the [I].")) material_needs[path] = max(0, material_needs[path] - 1)
qdel(I) user.drop_from_inventory(I)
to_chat(user, span_notice("You repair some damage on \the [src] with \the [I]."))
qdel(I)
check_complete_repair(user) check_complete_repair(user)