mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-07-09 22:26:23 +01:00
5926589c16
* removes var/ inside all procs * . * ugh
58 lines
2.3 KiB
Plaintext
58 lines
2.3 KiB
Plaintext
/datum/persistent/graffiti
|
|
name = "graffiti"
|
|
entries_expire_at = 4 // This previously was at 50 rounds??? Over 10 days.
|
|
has_admin_data = TRUE
|
|
|
|
/datum/persistent/graffiti/CheckTokenSanity(list/token)
|
|
token["pixel_x"] = istext(token["pixel_x"]) ? text2num(token["pixel_x"]) : token["pixel_x"]
|
|
token["pixel_y"] = istext(token["pixel_y"]) ? text2num(token["pixel_y"]) : token["pixel_y"]
|
|
return ..() && isnum(token["pixel_x"]) && isnum(token["pixel_y"])
|
|
|
|
/datum/persistent/graffiti/GetValidTurf(turf/T, list/token)
|
|
var/turf/checking_turf = ..()
|
|
if(istype(checking_turf) && checking_turf.can_engrave())
|
|
return checking_turf
|
|
|
|
/datum/persistent/graffiti/CheckTurfContents(turf/T, list/token)
|
|
var/too_much_graffiti = 0
|
|
for(var/obj/effect/decal/writing/W in .)
|
|
too_much_graffiti++
|
|
if(too_much_graffiti >= 5)
|
|
return FALSE
|
|
return TRUE
|
|
|
|
/datum/persistent/graffiti/CreateEntryInstance(turf/creating, list/token)
|
|
var/obj/effect/decal/writing/inst = new /obj/effect/decal/writing(creating, token["age"]+1, token["message"], token["author"])
|
|
if(token["icon_state"])
|
|
inst.icon_state = token["icon_state"]
|
|
if(token["pixel_x"])
|
|
inst.pixel_x = token["pixel_x"]
|
|
if(token["pixel_y"])
|
|
inst.pixel_y = token["pixel_y"]
|
|
|
|
/datum/persistent/graffiti/IsValidEntry(atom/entry)
|
|
. = ..()
|
|
if(.)
|
|
var/turf/T = entry.loc
|
|
. = T.can_engrave()
|
|
|
|
/datum/persistent/graffiti/GetEntryAge(atom/entry)
|
|
var/obj/effect/decal/writing/save_graffiti = entry
|
|
return save_graffiti.graffiti_age
|
|
|
|
/datum/persistent/graffiti/CompileEntry(atom/entry, write_file)
|
|
. = ..()
|
|
var/obj/effect/decal/writing/save_graffiti = entry
|
|
LAZYADDASSOC(., "author", "[save_graffiti.author ? save_graffiti.author : "unknown"]")
|
|
LAZYADDASSOC(., "message", "[save_graffiti.message]")
|
|
LAZYADDASSOC(., "icon_state", "[save_graffiti.icon_state]")
|
|
LAZYADDASSOC(., "pixel_x", "[save_graffiti.pixel_x]")
|
|
LAZYADDASSOC(., "pixel_y", "[save_graffiti.pixel_y]")
|
|
|
|
/datum/persistent/graffiti/GetAdminDataStringFor(thing, can_modify, mob/user)
|
|
var/obj/effect/decal/writing/save_graffiti = thing
|
|
if(can_modify)
|
|
. = "<td colspan = 2>[save_graffiti.message]</td><td>[save_graffiti.author]</td><td><a href='byond://?src=\ref[src];[HrefToken()];caller=\ref[user];remove_entry=\ref[thing]'>Destroy</a></td>"
|
|
else
|
|
. = "<td colspan = 3>[save_graffiti.message]</td><td>[save_graffiti.author]</td>"
|