Merge pull request #5027 from Citadel-Station-13/upstream-merge-34756
[MIRROR] Adds transform helpers to atom vv
This commit is contained in:
@@ -897,6 +897,35 @@
|
||||
src.cmd_admin_emp(A)
|
||||
href_list["datumrefresh"] = href_list["emp"]
|
||||
|
||||
else if(href_list["modtransform"])
|
||||
if(!check_rights(R_DEBUG))
|
||||
return
|
||||
|
||||
var/atom/A = locate(href_list["modtransform"])
|
||||
if(!istype(A))
|
||||
to_chat(usr, "This can only be done to atoms.")
|
||||
return
|
||||
|
||||
var/result = input(usr, "Choose the transformation to apply","Transform Mod") as null|anything in list("Scale","Translate","Rotate")
|
||||
var/matrix/M = A.transform
|
||||
switch(result)
|
||||
if("Scale")
|
||||
var/x = input(usr, "Choose x mod","Transform Mod") as null|num
|
||||
var/y = input(usr, "Choose y mod","Transform Mod") as null|num
|
||||
if(!isnull(x) && !isnull(y))
|
||||
A.transform = M.Scale(x,y)
|
||||
if("Translate")
|
||||
var/x = input(usr, "Choose x mod","Transform Mod") as null|num
|
||||
var/y = input(usr, "Choose y mod","Transform Mod") as null|num
|
||||
if(!isnull(x) && !isnull(y))
|
||||
A.transform = M.Translate(x,y)
|
||||
if("Rotate")
|
||||
var/angle = input(usr, "Choose angle to rotate","Transform Mod") as null|num
|
||||
if(!isnull(angle))
|
||||
A.transform = M.Turn(angle)
|
||||
|
||||
href_list["datumrefresh"] = href_list["modtransform"]
|
||||
|
||||
else if(href_list["rotatedatum"])
|
||||
if(!check_rights(0))
|
||||
return
|
||||
|
||||
@@ -511,6 +511,7 @@
|
||||
var/turf/curturf = get_turf(src)
|
||||
if (curturf)
|
||||
.["Jump to"] = "?_src_=holder;[HrefToken()];adminplayerobservecoodjump=1;X=[curturf.x];Y=[curturf.y];Z=[curturf.z]"
|
||||
.["Modify Transform"] = "?_src_=vars;[HrefToken()];modtransform=[REF(src)]"
|
||||
.["Add reagent"] = "?_src_=vars;[HrefToken()];addreagent=[REF(src)]"
|
||||
.["Trigger EM pulse"] = "?_src_=vars;[HrefToken()];emp=[REF(src)]"
|
||||
.["Trigger explosion"] = "?_src_=vars;[HrefToken()];explode=[REF(src)]"
|
||||
|
||||
Reference in New Issue
Block a user