From 3ea7696c385aaebdc8068c9924fb69e718efee13 Mon Sep 17 00:00:00 2001 From: Aronai Sieyes Date: Thu, 16 Apr 2020 12:40:30 -0400 Subject: [PATCH] Adds autosaving --- code/__defines/admin_vr.dm | 1 + code/modules/admin/verbs/smite_vr.dm | 46 +++++++++++++++++++++++++-- icons/obj/discs_vr.dmi | Bin 1867 -> 4350 bytes 3 files changed, 45 insertions(+), 2 deletions(-) diff --git a/code/__defines/admin_vr.dm b/code/__defines/admin_vr.dm index 6e5e8c1a9b..bd3cdd9fd8 100644 --- a/code/__defines/admin_vr.dm +++ b/code/__defines/admin_vr.dm @@ -1,3 +1,4 @@ #define SMITE_SHADEKIN_ATTACK "Shadekin (Attack)" #define SMITE_SHADEKIN_NOMF "Shadekin (Devour)" #define SMITE_REDSPACE_ABDUCT "Redspace Abduction" +#define SMITE_AUTOSAVE "10 Second Autosave" diff --git a/code/modules/admin/verbs/smite_vr.dm b/code/modules/admin/verbs/smite_vr.dm index b0d4b8aa8c..71fc821b1d 100644 --- a/code/modules/admin/verbs/smite_vr.dm +++ b/code/modules/admin/verbs/smite_vr.dm @@ -8,7 +8,7 @@ if(!istype(target)) return - var/list/smite_types = list(SMITE_SHADEKIN_ATTACK,SMITE_SHADEKIN_NOMF,SMITE_REDSPACE_ABDUCT) + var/list/smite_types = list(SMITE_SHADEKIN_ATTACK,SMITE_SHADEKIN_NOMF,SMITE_REDSPACE_ABDUCT,SMITE_AUTOSAVE) var/smite_choice = input("Select the type of SMITE for [target]","SMITE Type Choice") as null|anything in smite_types if(!smite_choice) @@ -50,7 +50,7 @@ shadekin.death() if(SMITE_SHADEKIN_NOMF) - var/list/kin_types = list( + var/static/list/kin_types = list( "Red Eyes (Dark)" = /mob/living/simple_mob/shadekin/red/dark, "Red Eyes (Light)" = /mob/living/simple_mob/shadekin/red/white, "Red Eyes (Brown)" = /mob/living/simple_mob/shadekin/red/brown, @@ -122,6 +122,9 @@ if(SMITE_REDSPACE_ABDUCT) redspace_abduction(target, src) + if(SMITE_AUTOSAVE) + fake_autosave(target, src) + else return //Injection? Don't print any messages. @@ -211,3 +214,42 @@ var/redspace_abduction_z to_chat(user,"The mob has been moved. ([admin_jump_link(target,usr.client.holder)])") target.transforming = FALSE + +/proc/fake_autosave(mob/living/target, user) + if(!istype(target) || !target.client) + to_chat(user, "Not a living mob or no client, so no point!") + return + + target.move_delay = 99999999 + + to_chat(target, "Autosaving your progress, please wait...") + target << 'sound/effects/ding.ogg' + + var/static/list/bad_tips = list( + "Did you know that black shoes protect you from electrocution while hacking?", + "Did you know that airlocks always have a wire that disables ID checks?", + "You can always find at least 3 pairs of glowing purple gloves in maint!", + "Phoron is not toxic if you've had a soda within 30 seconds of exposure!", + "Space Mountain Wind makes you immune to damage from space for 30 seconds!", + "A mask and air tank are all you need to be safe in space!", + "When exploring maintenance, wearing no shoes makes you move faster!", + "Did you know that the bartender's shotgun is loaded with harmless ammo?", + "Did you know that the tesla and singulo only need containment for 5 minutes?") + + var/tip = pick(bad_tips) + to_chat(target, "Tip of the day:
[tip]") + + var/obj/screen/loader = new(target) + loader.name = "Autosaving..." + loader.desc = "A disc icon that represents your game autosaving. Please wait." + loader.icon = 'icons/obj/discs_vr.dmi' + loader.icon_state = "quicksave" + loader.screen_loc = "NORTH-1, EAST-1" + target.client.screen += loader + + spawn(10 SECONDS) + if(target) + target.move_delay = 0 + to_chat(target, "Autosave complete!") + if(target.client) + target.client.screen -= loader diff --git a/icons/obj/discs_vr.dmi b/icons/obj/discs_vr.dmi index 7e9eb8a4ca45bbce2ee7236b71c1365b1d9bc968..f2d511fc496de74ad075b97c5daeb1d0b3e06ce6 100644 GIT binary patch literal 4350 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 WvUu}3DHi;%0hkz==~rKIj{6t%IZVa? literal 1867 zcmZ8d2{haJ8cnqsAsAFkEseI;QqtBkr9>>XwPJ~F7*UEU4T6fLG=D8sGt&-1TGE7i z6BBEd+LzF#dDe`r9b$X7YHX9(*Oz+l%$)bm`M&$z?|kQXe)rxqM+a+hQF&1i2qbQ6 zW9clI6M}Aq92MYs3}r?zq8+cJty)`Kmwwinp8K-hX^I=_S$Q*>GmHQLVA$b1il#$O z`8&UJx^AQ{Pq!v({n$1sE}w2_h{uc%$#zqxhwdk0%@6Y;VLYnZFF>W=Dfd{K){hGX9pLM+3cr40hfqF zdqi0VMEc``!=r-3upkgVFN?@2J+)iCo>YK(K|Am>ESw^I( z!$k;=+=%p7%QZ@KsO&ZVdO%E(;SSj-Ig{pr7<^i6>?%GM=nkwU(-jlAJXIUdAmR*g zQ=qy@TrhfkKNG&v#y0#U83r_t!H1{^e%L; zc42Dt;V(l1hH+z%4hfkeC98GT>dzkLSMHANC}S|zw-a<>sb|aR^6|&1e{Abr-1(P& zI`u>EVlK?Q_)RlekF%ZgXPrfGB3GUrpw(CyB}Yt?^N{@Ts+FFR!7I z_E~Pw7ATrs(XJQ%mgAAF);^>$pgOAL8Wc-3Gf6w)Kkcyy*#zH%>KN(GHHKk+vZ zYfwNCo^g5io1T?J(m3(_%*ck480-IQ;B68VC_8pA6$l=E8|KO0K=~9{se7ydvFao~ z5TNeC`wv8`d+>o^b<)?B6?R}?RCJ$pX#5Z!9CULL;Vn1255^#rmZsNr`k1QOn4ttV zNq2u=xVcq(B$StMuIqr~RMY*dhJhzj9$S;Nzd1i}uTy^M-cA!mV)0%{zCKKEHofJy zFr-dzr2VrC73!?hZVMt$HI$Gc1S!HNs~B_a!Qo^F^iUhd{mh^%ZhqZH)@~ z!bgN8)-E!jFDJokThxn~RiMg7Av*0&>TIdSPFeDiy00~yA3w!T(!x7}`6c%=j*U*M zW`Z;CnvXx3z%El%8Mo$#X^`xPYWUkPlE)b9w$feX!al~jmo#UQJG|#;Tm&&PjuZc@`Xkiwr@NzU}FBct+OsQN|yIU7}B9^&jjs*dqT*m7}&q3NcoYBQ~_VF4m!5 zO=An$FOBszCxCt+>6mAfcs;wZZFu8k8YZ*FV!Sf-!my1Oy z!!pLx1vz!ZYE%SA5hi0LmC?v6l-kQ7QAm>*>-A_tEvMT`z&Dh52Y^$j(g5z`5sEA> z)eraa3}p@{T+I<_Y=O<&pIm)SbopWV!~E)|4zv;V^uur2A?37s3ms_6hWjy^^+vCD zrE-(WeNEt^P!8md(2xWiT%shY<-16=H@YoCw`YIfhDb_Vm&=efVY2wAEpUJN1g(gB z@bzPCo7RU3ucnuX8&fAyz)9N?!3@1v97N5X5QGIkKV!wJ{?L=I*N62jAb%&+r{Zx z)0Jj&i5hj=+w@K=!usBfcl@3e;3OmqVM4rBihiOL2vo~x3RD|=6fhG?7b1ST^0&~< zZ#ZivdkHscn}b4^mSCSFC-(`j>lzjcdJPo}C#sodC-QCu!KNc|{PYYDfT z5Mr$CODX+0A71sKI$39a;;!!REWU6lryk1v^glLAwq9fv6fw8VdqeYY*Z=jOr?&B=#Zx-&5dOej<3 R!u7bXyRDUjWtq7z@NdtBe^CGc