mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-07-20 20:37:34 +01:00
Adding admin verb to load templates(maps) during runtime. (#7674)
This commit is contained in:
committed by
Matt Atlas
parent
f64bddfd64
commit
7b07d8f2e0
@@ -244,10 +244,10 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee
|
||||
name = "Janitorial supplies"
|
||||
contains = list(/obj/item/reagent_containers/glass/bucket,
|
||||
/obj/item/mop,
|
||||
/obj/item/caution,
|
||||
/obj/item/caution,
|
||||
/obj/item/caution,
|
||||
/obj/item/caution,
|
||||
/obj/item/clothing/suit/caution,
|
||||
/obj/item/clothing/suit/caution,
|
||||
/obj/item/clothing/suit/caution,
|
||||
/obj/item/clothing/suit/caution,
|
||||
/obj/item/storage/bag/trash,
|
||||
/obj/item/device/lightreplacer,
|
||||
/obj/item/reagent_containers/spray/cleaner,
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
log_admin("[key_name(usr)] has left build mode.",admin_key=key_name(usr))
|
||||
M.client.buildmode = 0
|
||||
M.client.show_popup_menus = 1
|
||||
M.verbs -= /verb/load_template_verb
|
||||
for(var/obj/effect/bmode/buildholder/H)
|
||||
if(H.cl == M.client)
|
||||
qdel(H)
|
||||
@@ -13,7 +14,7 @@
|
||||
log_admin("[key_name(usr)] has entered build mode.",admin_key=key_name(usr))
|
||||
M.client.buildmode = 1
|
||||
M.client.show_popup_menus = 0
|
||||
|
||||
M.verbs += /verb/load_template_verb
|
||||
var/obj/effect/bmode/buildholder/H = new/obj/effect/bmode/buildholder()
|
||||
var/obj/effect/bmode/builddir/A = new/obj/effect/bmode/builddir(H)
|
||||
A.master = H
|
||||
@@ -23,15 +24,19 @@
|
||||
C.master = H
|
||||
var/obj/effect/bmode/buildquit/D = new/obj/effect/bmode/buildquit(H)
|
||||
D.master = H
|
||||
var/obj/effect/bmode/template/E = new/obj/effect/bmode/template(H)
|
||||
E.master = H
|
||||
|
||||
H.builddir = A
|
||||
H.buildhelp = B
|
||||
H.buildmode = C
|
||||
H.buildquit = D
|
||||
H.load_template = E
|
||||
M.client.screen += A
|
||||
M.client.screen += B
|
||||
M.client.screen += C
|
||||
M.client.screen += D
|
||||
M.client.screen += E
|
||||
H.cl = M.client
|
||||
|
||||
/obj/effect/bmode//Cleaning up the tree a bit
|
||||
@@ -51,67 +56,69 @@
|
||||
/obj/effect/bmode/builddir
|
||||
icon_state = "build"
|
||||
screen_loc = "NORTH,WEST"
|
||||
Click()
|
||||
switch(dir)
|
||||
if(NORTH)
|
||||
set_dir(EAST)
|
||||
if(EAST)
|
||||
set_dir(SOUTH)
|
||||
if(SOUTH)
|
||||
set_dir(WEST)
|
||||
if(WEST)
|
||||
set_dir(NORTHWEST)
|
||||
if(NORTHWEST)
|
||||
set_dir(NORTH)
|
||||
return 1
|
||||
|
||||
/obj/effect/bmode/builddir/Click()
|
||||
switch(dir)
|
||||
if(NORTH)
|
||||
set_dir(EAST)
|
||||
if(EAST)
|
||||
set_dir(SOUTH)
|
||||
if(SOUTH)
|
||||
set_dir(WEST)
|
||||
if(WEST)
|
||||
set_dir(NORTHWEST)
|
||||
if(NORTHWEST)
|
||||
set_dir(NORTH)
|
||||
return 1
|
||||
|
||||
/obj/effect/bmode/buildhelp
|
||||
icon = 'icons/misc/buildmode.dmi'
|
||||
icon_state = "buildhelp"
|
||||
screen_loc = "NORTH,WEST+1"
|
||||
Click()
|
||||
switch(master.cl.buildmode)
|
||||
if(1)
|
||||
to_chat(usr, "<span class='notice'>***********************************************************</span>")
|
||||
to_chat(usr, "<span class='notice'>Left Mouse Button = Construct / Upgrade</span>")
|
||||
to_chat(usr, "<span class='notice'>Right Mouse Button = Deconstruct / Delete / Downgrade</span>")
|
||||
to_chat(usr, "<span class='notice'>Left Mouse Button + ctrl = R-Window</span>")
|
||||
to_chat(usr, "<span class='notice'>Left Mouse Button + alt = Airlock</span>")
|
||||
to_chat(usr, "")
|
||||
to_chat(usr, "<span class='notice'>Use the button in the upper left corner to</span>")
|
||||
to_chat(usr, "<span class='notice'>change the direction of built objects.</span>")
|
||||
to_chat(usr, "<span class='notice'>***********************************************************</span>")
|
||||
if(2)
|
||||
to_chat(usr, "<span class='notice'>***********************************************************</span>")
|
||||
to_chat(usr, "<span class='notice'>Right Mouse Button on buildmode button = Set object type</span>")
|
||||
to_chat(usr, "<span class='notice'>Middle Mouse Button on buildmode button= On/Off object type saying</span>")
|
||||
to_chat(usr, "<span class='notice'>Middle Mouse Button on turf/obj = Capture object type</span>")
|
||||
to_chat(usr, "<span class='notice'>Left Mouse Button on turf/obj = Place objects</span>")
|
||||
to_chat(usr, "<span class='notice'>Right Mouse Button = Delete objects</span>")
|
||||
to_chat(usr, "")
|
||||
to_chat(usr, "<span class='notice'>Use the button in the upper left corner to</span>")
|
||||
to_chat(usr, "<span class='notice'>change the direction of built objects.</span>")
|
||||
to_chat(usr, "<span class='notice'>***********************************************************</span>")
|
||||
if(3)
|
||||
to_chat(usr, "<span class='notice'>***********************************************************</span>")
|
||||
to_chat(usr, "<span class='notice'>Right Mouse Button on buildmode button = Select var(type) & value</span>")
|
||||
to_chat(usr, "<span class='notice'>Left Mouse Button on turf/obj/mob = Set var(type) & value</span>")
|
||||
to_chat(usr, "<span class='notice'>Right Mouse Button on turf/obj/mob = Reset var's value</span>")
|
||||
to_chat(usr, "<span class='notice'>***********************************************************</span>")
|
||||
if(4)
|
||||
to_chat(usr, "<span class='notice'>***********************************************************</span>")
|
||||
to_chat(usr, "<span class='notice'>Left Mouse Button on turf/obj/mob = Select</span>")
|
||||
to_chat(usr, "<span class='notice'>Right Mouse Button on turf/obj/mob = Throw</span>")
|
||||
to_chat(usr, "<span class='notice'>***********************************************************</span>")
|
||||
return 1
|
||||
|
||||
/obj/effect/bmode/buildhelp/Click()
|
||||
switch(master.cl.buildmode)
|
||||
if(1)
|
||||
to_chat(usr, "<span class='notice'>***********************************************************</span>")
|
||||
to_chat(usr, "<span class='notice'>Left Mouse Button = Construct / Upgrade</span>")
|
||||
to_chat(usr, "<span class='notice'>Right Mouse Button = Deconstruct / Delete / Downgrade</span>")
|
||||
to_chat(usr, "<span class='notice'>Left Mouse Button + ctrl = R-Window</span>")
|
||||
to_chat(usr, "<span class='notice'>Left Mouse Button + alt = Airlock</span>")
|
||||
to_chat(usr, "")
|
||||
to_chat(usr, "<span class='notice'>Use the button in the upper left corner to</span>")
|
||||
to_chat(usr, "<span class='notice'>change the direction of built objects.</span>")
|
||||
to_chat(usr, "<span class='notice'>***********************************************************</span>")
|
||||
if(2)
|
||||
to_chat(usr, "<span class='notice'>***********************************************************</span>")
|
||||
to_chat(usr, "<span class='notice'>Right Mouse Button on buildmode button = Set object type</span>")
|
||||
to_chat(usr, "<span class='notice'>Middle Mouse Button on buildmode button= On/Off object type saying</span>")
|
||||
to_chat(usr, "<span class='notice'>Middle Mouse Button on turf/obj = Capture object type</span>")
|
||||
to_chat(usr, "<span class='notice'>Left Mouse Button on turf/obj = Place objects</span>")
|
||||
to_chat(usr, "<span class='notice'>Right Mouse Button = Delete objects</span>")
|
||||
to_chat(usr, "")
|
||||
to_chat(usr, "<span class='notice'>Use the button in the upper left corner to</span>")
|
||||
to_chat(usr, "<span class='notice'>change the direction of built objects.</span>")
|
||||
to_chat(usr, "<span class='notice'>***********************************************************</span>")
|
||||
if(3)
|
||||
to_chat(usr, "<span class='notice'>***********************************************************</span>")
|
||||
to_chat(usr, "<span class='notice'>Right Mouse Button on buildmode button = Select var(type) & value</span>")
|
||||
to_chat(usr, "<span class='notice'>Left Mouse Button on turf/obj/mob = Set var(type) & value</span>")
|
||||
to_chat(usr, "<span class='notice'>Right Mouse Button on turf/obj/mob = Reset var's value</span>")
|
||||
to_chat(usr, "<span class='notice'>***********************************************************</span>")
|
||||
if(4)
|
||||
to_chat(usr, "<span class='notice'>***********************************************************</span>")
|
||||
to_chat(usr, "<span class='notice'>Left Mouse Button on turf/obj/mob = Select</span>")
|
||||
to_chat(usr, "<span class='notice'>Right Mouse Button on turf/obj/mob = Throw</span>")
|
||||
to_chat(usr, "<span class='notice'>***********************************************************</span>")
|
||||
return 1
|
||||
|
||||
/obj/effect/bmode/buildquit
|
||||
icon_state = "buildquit"
|
||||
screen_loc = "NORTH,WEST+3"
|
||||
screen_loc = "NORTH,WEST+4"
|
||||
|
||||
Click()
|
||||
togglebuildmode(master.cl.mob)
|
||||
return 1
|
||||
/obj/effect/bmode/buildquit/Click()
|
||||
togglebuildmode(master.cl.mob)
|
||||
return 1
|
||||
|
||||
/obj/effect/bmode/buildholder
|
||||
density = 0
|
||||
@@ -121,6 +128,7 @@
|
||||
var/obj/effect/bmode/buildhelp/buildhelp = null
|
||||
var/obj/effect/bmode/buildmode/buildmode = null
|
||||
var/obj/effect/bmode/buildquit/buildquit = null
|
||||
var/obj/effect/bmode/template/load_template = null
|
||||
var/atom/movable/throw_atom = null
|
||||
|
||||
/obj/effect/bmode/buildholder/Destroy()
|
||||
@@ -136,70 +144,78 @@
|
||||
cl = null
|
||||
return ..()
|
||||
|
||||
/obj/effect/bmode/template
|
||||
icon_state = "load_template"
|
||||
screen_loc = "NORTH,WEST+2"
|
||||
|
||||
/obj/effect/bmode/template/Click()
|
||||
load_template(usr)
|
||||
return 1
|
||||
|
||||
/obj/effect/bmode/buildmode
|
||||
icon_state = "buildmode1"
|
||||
screen_loc = "NORTH,WEST+2"
|
||||
screen_loc = "NORTH,WEST+3"
|
||||
var/varholder = "name"
|
||||
var/valueholder = "derp"
|
||||
var/objholder = /obj/structure/closet
|
||||
var/objsay = 1
|
||||
|
||||
Click(location, control, params)
|
||||
var/list/pa = params2list(params)
|
||||
/obj/effect/bmode/buildmode/Click(location, control, params)
|
||||
var/list/pa = params2list(params)
|
||||
|
||||
if(pa.Find("middle"))
|
||||
switch(master.cl.buildmode)
|
||||
if(2)
|
||||
objsay=!objsay
|
||||
if(pa.Find("middle"))
|
||||
switch(master.cl.buildmode)
|
||||
if(2)
|
||||
objsay=!objsay
|
||||
|
||||
|
||||
if(pa.Find("left"))
|
||||
switch(master.cl.buildmode)
|
||||
if(1)
|
||||
master.cl.buildmode = 2
|
||||
src.icon_state = "buildmode2"
|
||||
if(2)
|
||||
master.cl.buildmode = 3
|
||||
src.icon_state = "buildmode3"
|
||||
if(3)
|
||||
master.cl.buildmode = 4
|
||||
src.icon_state = "buildmode4"
|
||||
if(4)
|
||||
master.cl.buildmode = 1
|
||||
src.icon_state = "buildmode1"
|
||||
if(pa.Find("left"))
|
||||
switch(master.cl.buildmode)
|
||||
if(1)
|
||||
master.cl.buildmode = 2
|
||||
src.icon_state = "buildmode2"
|
||||
if(2)
|
||||
master.cl.buildmode = 3
|
||||
src.icon_state = "buildmode3"
|
||||
if(3)
|
||||
master.cl.buildmode = 4
|
||||
src.icon_state = "buildmode4"
|
||||
if(4)
|
||||
master.cl.buildmode = 1
|
||||
src.icon_state = "buildmode1"
|
||||
|
||||
else if(pa.Find("right"))
|
||||
switch(master.cl.buildmode)
|
||||
if(1)
|
||||
return 1
|
||||
if(2)
|
||||
objholder = text2path(input(usr,"Enter typepath:" ,"Typepath","/obj/structure/closet"))
|
||||
if(!ispath(objholder))
|
||||
else if(pa.Find("right"))
|
||||
switch(master.cl.buildmode)
|
||||
if(1)
|
||||
return 1
|
||||
if(2)
|
||||
objholder = text2path(input(usr,"Enter typepath:" ,"Typepath","/obj/structure/closet"))
|
||||
if(!ispath(objholder))
|
||||
objholder = /obj/structure/closet
|
||||
alert("That path is not allowed.")
|
||||
else
|
||||
if(ispath(objholder,/mob) && !check_rights(R_DEBUG,0))
|
||||
objholder = /obj/structure/closet
|
||||
alert("That path is not allowed.")
|
||||
else
|
||||
if(ispath(objholder,/mob) && !check_rights(R_DEBUG,0))
|
||||
objholder = /obj/structure/closet
|
||||
if(3)
|
||||
var/list/locked = list("vars", "key", "ckey", "client", "firemut", "ishulk", "xray", "virus", "viruses", "cuffed", "ka", "last_eaten", "urine")
|
||||
if(3)
|
||||
var/list/locked = list("vars", "key", "ckey", "client", "firemut", "ishulk", "xray", "virus", "viruses", "cuffed", "ka", "last_eaten", "urine")
|
||||
|
||||
master.buildmode.varholder = input(usr,"Enter variable name:" ,"Name", "name")
|
||||
if(master.buildmode.varholder in locked && !check_rights(R_DEBUG,0))
|
||||
return 1
|
||||
var/thetype = input(usr,"Select variable type:" ,"Type") in list("text","number","mob-reference","obj-reference","turf-reference")
|
||||
if(!thetype) return 1
|
||||
switch(thetype)
|
||||
if("text")
|
||||
master.buildmode.valueholder = input(usr,"Enter variable value:" ,"Value", "value") as text
|
||||
if("number")
|
||||
master.buildmode.valueholder = input(usr,"Enter variable value:" ,"Value", 123) as num
|
||||
if("mob-reference")
|
||||
master.buildmode.valueholder = input(usr,"Enter variable value:" ,"Value") as mob in mob_list
|
||||
if("obj-reference")
|
||||
master.buildmode.valueholder = input(usr,"Enter variable value:" ,"Value") as obj in world
|
||||
if("turf-reference")
|
||||
master.buildmode.valueholder = input(usr,"Enter variable value:" ,"Value") as turf in world
|
||||
return 1
|
||||
master.buildmode.varholder = input(usr,"Enter variable name:" ,"Name", "name")
|
||||
if(master.buildmode.varholder in locked && !check_rights(R_DEBUG,0))
|
||||
return 1
|
||||
var/thetype = input(usr,"Select variable type:" ,"Type") in list("text","number","mob-reference","obj-reference","turf-reference")
|
||||
if(!thetype) return 1
|
||||
switch(thetype)
|
||||
if("text")
|
||||
master.buildmode.valueholder = input(usr,"Enter variable value:" ,"Value", "value") as text
|
||||
if("number")
|
||||
master.buildmode.valueholder = input(usr,"Enter variable value:" ,"Value", 123) as num
|
||||
if("mob-reference")
|
||||
master.buildmode.valueholder = input(usr,"Enter variable value:" ,"Value") as mob in mob_list
|
||||
if("obj-reference")
|
||||
master.buildmode.valueholder = input(usr,"Enter variable value:" ,"Value") as obj in world
|
||||
if("turf-reference")
|
||||
master.buildmode.valueholder = input(usr,"Enter variable value:" ,"Value") as turf in world
|
||||
return 1
|
||||
|
||||
/proc/build_click(var/mob/user, buildmode, params, var/obj/object)
|
||||
var/obj/effect/bmode/buildholder/holder = null
|
||||
@@ -297,3 +313,42 @@
|
||||
if(holder.throw_atom)
|
||||
holder.throw_atom.throw_at(object, 10, 1)
|
||||
log_admin("[key_name(usr)] threw [holder.throw_atom] at [object]",admin_key=key_name(usr))
|
||||
|
||||
/verb/load_template_verb()
|
||||
set name = "Load Template"
|
||||
set category = "Special Verbs"
|
||||
if(!usr)
|
||||
return
|
||||
load_template(usr)
|
||||
|
||||
/proc/load_template(var/mob/user)
|
||||
if(!user)
|
||||
return
|
||||
|
||||
if(!check_rights(R_SPAWN))
|
||||
return
|
||||
|
||||
var/list/templates
|
||||
try
|
||||
templates = json_decode(return_file_text("config/templates_list.json"))
|
||||
catch(var/exception/ej)
|
||||
log_debug("Warning: Could not load the templates config as templates_list.json is missing - [ej]")
|
||||
return
|
||||
|
||||
if(!templates || !templates["templates_list"] || templates["templates_folder"] == "")
|
||||
return
|
||||
|
||||
var/turf/T = get_turf(user)
|
||||
var/name = input(user, "Which template would you like to load?", "Load Template", null) as null|anything in templates["templates_list"]
|
||||
|
||||
if (!name || !T)
|
||||
return
|
||||
|
||||
var/datum/map_template/maploader = new (templates["templates_folder"] + name, name)
|
||||
if (!maploader)
|
||||
log_debug("Error, unable to load maploader in proc load_template!")
|
||||
return
|
||||
|
||||
var/centered = input(user, "Do you want template to load as center or Edge?", "Load Template", null) as null|anything in list("Center", "Edge")
|
||||
maploader.load(T, centered == "Center" ? TRUE : FALSE)
|
||||
log_and_message_admins("[key_name_admin(user)] has loaded template [name].", user, T)
|
||||
|
||||
@@ -48,8 +48,8 @@
|
||||
SSmachinery.setup_template_powernets(cables)
|
||||
|
||||
/datum/map_template/proc/load_new_z()
|
||||
var/x = round(world.maxx/2)
|
||||
var/y = round(world.maxy/2)
|
||||
var/x = round(world.maxx / 2)
|
||||
var/y = round(world.maxy / 2)
|
||||
|
||||
var/list/bounds = maploader.load_map(file(mappath), x, y, no_changeturf = TRUE)
|
||||
if(!bounds)
|
||||
@@ -60,32 +60,32 @@
|
||||
|
||||
//initialize things that are normally initialized after map load
|
||||
initTemplateBounds(bounds)
|
||||
log_game("Z-level [name] loaded at at [x],[y],[world.maxz]")
|
||||
log_game("Z-level [name] loaded at [x], [y], [world.maxz]")
|
||||
|
||||
/datum/map_template/proc/load(turf/T, centered = FALSE)
|
||||
if(centered)
|
||||
T = locate(T.x - round(width/2) , T.y - round(height/2) , T.z)
|
||||
T = locate(T.x - round(width / 2) , T.y - round(height / 2) , T.z)
|
||||
if(!T)
|
||||
return
|
||||
if(T.x+width > world.maxx)
|
||||
if(T.x + width > world.maxx)
|
||||
return
|
||||
if(T.y+height > world.maxy)
|
||||
if(T.y + height > world.maxy)
|
||||
return
|
||||
|
||||
var/list/bounds = maploader.load_map(file(mappath), T.x, T.y, T.z, cropMap=TRUE)
|
||||
var/list/bounds = maploader.load_map(file(mappath), T.x, T.y, T.z, cropMap=TRUE, no_changeturf = TRUE)
|
||||
if(!bounds)
|
||||
return
|
||||
|
||||
//initialize things that are normally initialized after map load
|
||||
initTemplateBounds(bounds)
|
||||
|
||||
log_game("[name] loaded at at [T.x],[T.y],[T.z]")
|
||||
log_game("[name] loaded at [T.x], [T.y], [T.z]")
|
||||
return TRUE
|
||||
|
||||
/datum/map_template/proc/get_affected_turfs(turf/T, centered = FALSE)
|
||||
var/turf/placement = T
|
||||
if(centered)
|
||||
var/turf/corner = locate(placement.x - round(width/2), placement.y - round(height/2), placement.z)
|
||||
var/turf/corner = locate(placement.x - round(width / 2), placement.y - round(height / 2), placement.z)
|
||||
if(corner)
|
||||
placement = corner
|
||||
return block(placement, locate(placement.x+width-1, placement.y+height-1, placement.z))
|
||||
return block(placement, locate(placement.x + width-1, placement.y + height-1, placement.z))
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"templates_folder": "maps/templates/",
|
||||
"templates_list":
|
||||
[
|
||||
"sol.dmm",
|
||||
"syndicate_base.dmm",
|
||||
"syndicate_shuttle.dmm",
|
||||
"asteroid_outpost.dmm",
|
||||
"pra.dmm"
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
################################
|
||||
# Example Changelog File
|
||||
#
|
||||
# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb.
|
||||
#
|
||||
# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.)
|
||||
# When it is, any changes listed below will disappear.
|
||||
#
|
||||
# Valid Prefixes:
|
||||
# bugfix
|
||||
# wip (For works in progress)
|
||||
# tweak
|
||||
# soundadd
|
||||
# sounddel
|
||||
# rscadd (general adding of nice things)
|
||||
# rscdel (general deleting of nice things)
|
||||
# imageadd
|
||||
# imagedel
|
||||
# maptweak
|
||||
# spellcheck (typo fixes)
|
||||
# experiment
|
||||
# balance
|
||||
# admin
|
||||
# backend
|
||||
# security
|
||||
# refactor
|
||||
#################################
|
||||
|
||||
# Your name.
|
||||
author: PoZe
|
||||
|
||||
# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again.
|
||||
delete-after: True
|
||||
|
||||
# Any changes you've made. See valid prefix list above.
|
||||
# INDENT WITH TWO SPACES. NOT TABS. SPACES.
|
||||
# SCREW THIS UP AND IT WON'T WORK.
|
||||
# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries.
|
||||
# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog.
|
||||
changes:
|
||||
- rscadd: "Added new admin verb inside of Special Verbs called Load Template. It appears when you press Toggle Build Mode. This verb allows admins to load template maps into their current coordinates."
|
||||
- rscadd: "Added button to Build Mode buttons UI for load template."
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.2 KiB |
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,402 @@
|
||||
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
|
||||
"a" = (
|
||||
/turf/simulated/floor,
|
||||
/area/derelict)
|
||||
"b" = (
|
||||
/obj/structure/shuttle/engine/propulsion{
|
||||
icon_state = "propulsion";
|
||||
dir = 8
|
||||
},
|
||||
/turf/simulated/floor,
|
||||
/area/derelict)
|
||||
"c" = (
|
||||
/turf/simulated/wall/shuttle/dark/corner/underlay{
|
||||
icon_state = "wall3";
|
||||
dir = 5
|
||||
},
|
||||
/area/derelict)
|
||||
"d" = (
|
||||
/turf/space,
|
||||
/area/space)
|
||||
"e" = (
|
||||
/turf/simulated/wall/shuttle/dark/cardinal,
|
||||
/area/derelict)
|
||||
"f" = (
|
||||
/turf/simulated/wall/shuttle/dark/corner/underlay{
|
||||
icon_state = "wall3";
|
||||
dir = 9
|
||||
},
|
||||
/area/derelict)
|
||||
"g" = (
|
||||
/turf/simulated/floor/shuttle{
|
||||
icon_state = "floor4"
|
||||
},
|
||||
/turf/simulated/wall/shuttle/dark/cardinal{
|
||||
dir = 4;
|
||||
icon_state = "diagonalWall3"
|
||||
},
|
||||
/turf/simulated/wall/shuttle/dark/corner{
|
||||
icon_state = "wall3";
|
||||
dir = 6
|
||||
},
|
||||
/area/derelict)
|
||||
"h" = (
|
||||
/obj/structure/table/standard,
|
||||
/turf/simulated/floor/shuttle{
|
||||
icon_state = "floor4"
|
||||
},
|
||||
/area/derelict)
|
||||
"i" = (
|
||||
/obj/structure/computerframe,
|
||||
/turf/simulated/floor/shuttle{
|
||||
icon_state = "floor4"
|
||||
},
|
||||
/area/derelict)
|
||||
"j" = (
|
||||
/turf/simulated/floor/shuttle{
|
||||
icon_state = "floor4"
|
||||
},
|
||||
/turf/simulated/wall/shuttle/dark/cardinal{
|
||||
icon_state = "diagonalWall3"
|
||||
},
|
||||
/turf/simulated/wall/shuttle/dark/corner{
|
||||
icon_state = "wall3";
|
||||
dir = 10
|
||||
},
|
||||
/area/derelict)
|
||||
"k" = (
|
||||
/obj/machinery/door/airlock/maintenance_hatch,
|
||||
/turf/simulated/floor,
|
||||
/area/derelict)
|
||||
"l" = (
|
||||
/turf/simulated/floor/shuttle{
|
||||
icon_state = "floor4"
|
||||
},
|
||||
/area/derelict)
|
||||
"m" = (
|
||||
/obj/structure/bed/chair/office/bridge{
|
||||
icon_state = "bridge";
|
||||
dir = 4
|
||||
},
|
||||
/turf/simulated/floor/shuttle{
|
||||
icon_state = "floor4"
|
||||
},
|
||||
/area/derelict)
|
||||
"n" = (
|
||||
/obj/structure/grille,
|
||||
/obj/structure/window/reinforced{
|
||||
dir = 4
|
||||
},
|
||||
/obj/structure/window/reinforced{
|
||||
dir = 8
|
||||
},
|
||||
/obj/structure/window/reinforced{
|
||||
icon_state = "rwindow";
|
||||
dir = 1
|
||||
},
|
||||
/obj/machinery/door/firedoor,
|
||||
/turf/simulated/floor,
|
||||
/area/derelict)
|
||||
"o" = (
|
||||
/obj/machinery/portable_atmospherics/canister/air,
|
||||
/turf/simulated/floor/shuttle{
|
||||
icon_state = "floor4"
|
||||
},
|
||||
/area/derelict)
|
||||
"p" = (
|
||||
/obj/structure/grille,
|
||||
/obj/structure/window/reinforced{
|
||||
dir = 4
|
||||
},
|
||||
/obj/structure/window/reinforced{
|
||||
dir = 8
|
||||
},
|
||||
/turf/simulated/floor,
|
||||
/area/derelict)
|
||||
"q" = (
|
||||
/obj/structure/table/standard,
|
||||
/obj/item/fossil/shell,
|
||||
/turf/simulated/floor/shuttle{
|
||||
icon_state = "floor4"
|
||||
},
|
||||
/area/derelict)
|
||||
"r" = (
|
||||
/obj/machinery/porta_turret/xray,
|
||||
/obj/effect/floor_decal/industrial/hatch/yellow,
|
||||
/obj/effect/floor_decal/industrial/warning/full,
|
||||
/turf/simulated/floor/tiled/dark,
|
||||
/area/derelict)
|
||||
"s" = (
|
||||
/obj/structure/window/reinforced{
|
||||
dir = 8
|
||||
},
|
||||
/obj/structure/grille,
|
||||
/obj/structure/window/reinforced{
|
||||
dir = 4
|
||||
},
|
||||
/turf/simulated/floor,
|
||||
/area/derelict)
|
||||
"t" = (
|
||||
/obj/machinery/floodlight,
|
||||
/turf/simulated/floor/shuttle{
|
||||
icon_state = "floor4"
|
||||
},
|
||||
/area/derelict)
|
||||
"u" = (
|
||||
/obj/structure/grille,
|
||||
/obj/structure/window/reinforced,
|
||||
/obj/structure/window/reinforced{
|
||||
dir = 4
|
||||
},
|
||||
/obj/structure/window/reinforced{
|
||||
dir = 8
|
||||
},
|
||||
/obj/machinery/door/firedoor,
|
||||
/turf/simulated/floor,
|
||||
/area/derelict)
|
||||
"v" = (
|
||||
/turf/simulated/floor,
|
||||
/obj/structure/shuttle/engine/propulsion{
|
||||
icon_state = "propulsion";
|
||||
dir = 8
|
||||
},
|
||||
/turf/simulated/wall/shuttle/dark/cardinal{
|
||||
dir = 8;
|
||||
icon_state = "diagonalWall3"
|
||||
},
|
||||
/area/derelict)
|
||||
"w" = (
|
||||
/turf/simulated/floor/shuttle{
|
||||
icon_state = "floor4"
|
||||
},
|
||||
/turf/simulated/wall/shuttle/dark/cardinal{
|
||||
dir = 6;
|
||||
icon_state = "diagonalWall3"
|
||||
},
|
||||
/turf/simulated/wall/shuttle/dark/corner{
|
||||
icon_state = "wall3";
|
||||
dir = 5
|
||||
},
|
||||
/area/derelict)
|
||||
"x" = (
|
||||
/obj/machinery/constructable_frame,
|
||||
/turf/simulated/floor/shuttle{
|
||||
icon_state = "floor4"
|
||||
},
|
||||
/area/derelict)
|
||||
"y" = (
|
||||
/turf/simulated/floor/shuttle{
|
||||
icon_state = "floor4"
|
||||
},
|
||||
/turf/simulated/wall/shuttle/dark/cardinal{
|
||||
dir = 8;
|
||||
icon_state = "diagonalWall3"
|
||||
},
|
||||
/turf/simulated/wall/shuttle/dark/corner{
|
||||
icon_state = "wall3";
|
||||
dir = 9
|
||||
},
|
||||
/area/derelict)
|
||||
"z" = (
|
||||
/turf/simulated/wall/shuttle/dark/corner/underlay{
|
||||
icon_state = "wall3";
|
||||
dir = 6
|
||||
},
|
||||
/area/derelict)
|
||||
"A" = (
|
||||
/turf/simulated/wall/shuttle/dark/corner/underlay{
|
||||
icon_state = "wall3";
|
||||
dir = 10
|
||||
},
|
||||
/area/derelict)
|
||||
"B" = (
|
||||
/turf/simulated/floor,
|
||||
/obj/structure/shuttle/engine/propulsion{
|
||||
icon_state = "propulsion";
|
||||
dir = 8
|
||||
},
|
||||
/turf/simulated/wall/shuttle/dark/cardinal{
|
||||
icon_state = "diagonalWall3"
|
||||
},
|
||||
/area/derelict)
|
||||
|
||||
(1,1,1) = {"
|
||||
d
|
||||
d
|
||||
d
|
||||
v
|
||||
k
|
||||
e
|
||||
e
|
||||
e
|
||||
e
|
||||
B
|
||||
d
|
||||
d
|
||||
d
|
||||
"}
|
||||
(2,1,1) = {"
|
||||
d
|
||||
d
|
||||
d
|
||||
e
|
||||
a
|
||||
e
|
||||
q
|
||||
h
|
||||
t
|
||||
e
|
||||
d
|
||||
d
|
||||
d
|
||||
"}
|
||||
(3,1,1) = {"
|
||||
d
|
||||
d
|
||||
f
|
||||
e
|
||||
k
|
||||
e
|
||||
h
|
||||
l
|
||||
l
|
||||
e
|
||||
A
|
||||
d
|
||||
d
|
||||
"}
|
||||
(4,1,1) = {"
|
||||
b
|
||||
v
|
||||
e
|
||||
g
|
||||
l
|
||||
o
|
||||
h
|
||||
l
|
||||
l
|
||||
w
|
||||
e
|
||||
B
|
||||
b
|
||||
"}
|
||||
(5,1,1) = {"
|
||||
c
|
||||
e
|
||||
e
|
||||
h
|
||||
l
|
||||
l
|
||||
l
|
||||
l
|
||||
l
|
||||
x
|
||||
e
|
||||
e
|
||||
z
|
||||
"}
|
||||
(6,1,1) = {"
|
||||
d
|
||||
c
|
||||
e
|
||||
h
|
||||
l
|
||||
l
|
||||
l
|
||||
l
|
||||
l
|
||||
x
|
||||
e
|
||||
z
|
||||
d
|
||||
"}
|
||||
(7,1,1) = {"
|
||||
d
|
||||
d
|
||||
e
|
||||
i
|
||||
l
|
||||
l
|
||||
r
|
||||
l
|
||||
l
|
||||
h
|
||||
e
|
||||
d
|
||||
d
|
||||
"}
|
||||
(8,1,1) = {"
|
||||
d
|
||||
d
|
||||
e
|
||||
i
|
||||
l
|
||||
l
|
||||
l
|
||||
l
|
||||
l
|
||||
h
|
||||
e
|
||||
d
|
||||
d
|
||||
"}
|
||||
(9,1,1) = {"
|
||||
d
|
||||
d
|
||||
e
|
||||
j
|
||||
m
|
||||
l
|
||||
l
|
||||
l
|
||||
m
|
||||
y
|
||||
e
|
||||
d
|
||||
d
|
||||
"}
|
||||
(10,1,1) = {"
|
||||
d
|
||||
d
|
||||
c
|
||||
e
|
||||
i
|
||||
l
|
||||
m
|
||||
l
|
||||
i
|
||||
e
|
||||
z
|
||||
d
|
||||
d
|
||||
"}
|
||||
(11,1,1) = {"
|
||||
d
|
||||
d
|
||||
d
|
||||
e
|
||||
h
|
||||
l
|
||||
i
|
||||
l
|
||||
h
|
||||
e
|
||||
d
|
||||
d
|
||||
d
|
||||
"}
|
||||
(12,1,1) = {"
|
||||
d
|
||||
d
|
||||
d
|
||||
c
|
||||
n
|
||||
p
|
||||
p
|
||||
s
|
||||
u
|
||||
z
|
||||
d
|
||||
d
|
||||
d
|
||||
"}
|
||||
@@ -0,0 +1,12 @@
|
||||
@echo off
|
||||
cd ../../maps/templates
|
||||
|
||||
for /R %%f in (*.dmm) do copy "%%f" "%%f.backup"
|
||||
|
||||
cls
|
||||
echo All dmm files in the maps/templates directory have been backed up.
|
||||
echo Now you can make your changes...
|
||||
echo ---
|
||||
echo Remember to run mapmerge.bat just before you commit your changes!
|
||||
echo ---
|
||||
pause
|
||||
@@ -0,0 +1,11 @@
|
||||
cd ../../maps/templates
|
||||
|
||||
for f in *.dmm; do
|
||||
cp -- "$f" "${f%.dmm}.dmm.backup"
|
||||
done
|
||||
|
||||
echo "All dmm files in the maps/templates directory have been backed up."
|
||||
echo "Now you can make your changes."
|
||||
echo "---"
|
||||
echo "Remember to run mapmerge.sh just before you commit your changes!"
|
||||
echo "---"
|
||||
@@ -1,2 +1,2 @@
|
||||
pygit2==0.26.0
|
||||
pygit2==1.0.1
|
||||
bidict==0.13.1
|
||||
|
||||
Reference in New Issue
Block a user