From f0ebee04678b7b80a0e89fabece6d1321e9bbbc7 Mon Sep 17 00:00:00 2001 From: Rui Neves Carvalho Date: Sat, 1 Aug 2015 08:18:33 +0100 Subject: [PATCH 1/6] Digging gets the same progress bar as minning. Fixes #10854 --- code/modules/mining/mine_items.dm | 1 + code/modules/mining/mine_turfs.dm | 30 +++++++++++-------- html/changelogs/astralenigma - digfix.yml | 36 +++++++++++++++++++++++ 3 files changed, 55 insertions(+), 12 deletions(-) create mode 100644 html/changelogs/astralenigma - digfix.yml diff --git a/code/modules/mining/mine_items.dm b/code/modules/mining/mine_items.dm index ea0886af653..9c4ca620e26 100644 --- a/code/modules/mining/mine_items.dm +++ b/code/modules/mining/mine_items.dm @@ -129,6 +129,7 @@ flags = CONDUCT slot_flags = SLOT_BELT force = 8.0 + var/digspeed = 20 throwforce = 4.0 item_state = "shovel" w_class = 3.0 diff --git a/code/modules/mining/mine_turfs.dm b/code/modules/mining/mine_turfs.dm index 0cf843f2df1..ba25d9bb856 100644 --- a/code/modules/mining/mine_turfs.dm +++ b/code/modules/mining/mine_turfs.dm @@ -550,7 +550,9 @@ var/global/list/rockTurfEdgeCache return 0 if ((istype(W, /obj/item/weapon/shovel))) + var/obj/item/weapon/shovel/S = W var/turf/T = user.loc + if (!( istype(T, /turf) )) return @@ -560,12 +562,14 @@ var/global/list/rockTurfEdgeCache user << "You start digging..." playsound(src, 'sound/effects/shovel_dig.ogg', 50, 1) //FUCK YO RUSTLE I GOT'S THE DIGS SOUND HERE - - sleep(20) - if ((user.loc == T && user.get_active_hand() == W)) - user << "You dig a hole." - gets_dug() - return + + if(do_after(user,S.digspeed, target = src)) + if(istype(src, /turf/simulated/floor/plating/asteroid)) //sanity check against turf being deleted during digspeed delay + user << "You dig a hole." + S.update_icon() + gets_dug() + feedback_add_details("pick_used_mining","[S.name]") + if ((istype(W, /obj/item/weapon/pickaxe))) var/obj/item/weapon/pickaxe/P = W @@ -579,12 +583,14 @@ var/global/list/rockTurfEdgeCache user << "You start digging..." playsound(src, 'sound/effects/shovel_dig.ogg', 50, 1) //FUCK YO RUSTLE I GOT'S THE DIGS SOUND HERE - - sleep(P.digspeed) - if ((user.loc == T && user.get_active_hand() == W)) - user << "You dig a hole." - gets_dug() - return + + if(do_after(user,P.digspeed, target = src)) + if(istype(src, /turf/simulated/floor/plating/asteroid)) //sanity check against turf being deleted during digspeed delay + user << "You dig a hole." + P.update_icon() + gets_dug() + feedback_add_details("pick_used_mining","[P.name]") + if(istype(W,/obj/item/weapon/storage/bag/ore)) var/obj/item/weapon/storage/bag/ore/S = W diff --git a/html/changelogs/astralenigma - digfix.yml b/html/changelogs/astralenigma - digfix.yml new file mode 100644 index 00000000000..45bf3e45bd6 --- /dev/null +++ b/html/changelogs/astralenigma - digfix.yml @@ -0,0 +1,36 @@ +################################ +# 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 +# spellcheck (typo fixes) +# experiment +# tgs (TG-ported fixes?) +################################# + +# Your name. +author: Astralenigma + +# 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, this gets changed to [] after reading. Just remove the brackets when you add new shit. +# Please surround your changes in double quotes ("). It works without them, but if you use certain characters it screws up compiling. The quotes will not show up in the changelog. +changes: + - tweak: "Added a progress bar to digging." From d0c076065324ff47220b727a9890f9485913852e Mon Sep 17 00:00:00 2001 From: Rui Neves Carvalho Date: Sat, 1 Aug 2015 17:41:57 +0100 Subject: [PATCH 2/6] Added L --- code/modules/mining/mine_turfs.dm | 34 +++++++------------------------ 1 file changed, 7 insertions(+), 27 deletions(-) diff --git a/code/modules/mining/mine_turfs.dm b/code/modules/mining/mine_turfs.dm index ba25d9bb856..d43c08ad15e 100644 --- a/code/modules/mining/mine_turfs.dm +++ b/code/modules/mining/mine_turfs.dm @@ -434,7 +434,6 @@ var/global/list/rockTurfEdgeCache if(do_after(user,P.digspeed, target = src)) if(istype(src, /turf/simulated/mineral)) //sanity check against turf being deleted during digspeed delay user << "You finish cutting into the rock." - P.update_icon() gets_drilled(user) feedback_add_details("pick_used_mining","[P.name]") else @@ -548,31 +547,14 @@ var/global/list/rockTurfEdgeCache //note that this proc does not call ..() if(!W || !user) return 0 - + var/digging_speed = 0; if ((istype(W, /obj/item/weapon/shovel))) var/obj/item/weapon/shovel/S = W - var/turf/T = user.loc - - if (!( istype(T, /turf) )) - return - - if (dug) - user << "This area has already been dug!" - return - - user << "You start digging..." - playsound(src, 'sound/effects/shovel_dig.ogg', 50, 1) //FUCK YO RUSTLE I GOT'S THE DIGS SOUND HERE - - if(do_after(user,S.digspeed, target = src)) - if(istype(src, /turf/simulated/floor/plating/asteroid)) //sanity check against turf being deleted during digspeed delay - user << "You dig a hole." - S.update_icon() - gets_dug() - feedback_add_details("pick_used_mining","[S.name]") - - - if ((istype(W, /obj/item/weapon/pickaxe))) + digging_speed = S.digspeed + else if ((istype(W, /obj/item/weapon/pickaxe))) var/obj/item/weapon/pickaxe/P = W + digging_speed = P.digspeed + if (digging_speed) var/turf/T = user.loc if (!( istype(T, /turf) )) return @@ -584,13 +566,11 @@ var/global/list/rockTurfEdgeCache user << "You start digging..." playsound(src, 'sound/effects/shovel_dig.ogg', 50, 1) //FUCK YO RUSTLE I GOT'S THE DIGS SOUND HERE - if(do_after(user,P.digspeed, target = src)) + if(do_after(user,digging_speed, target = src)) if(istype(src, /turf/simulated/floor/plating/asteroid)) //sanity check against turf being deleted during digspeed delay user << "You dig a hole." - P.update_icon() gets_dug() - feedback_add_details("pick_used_mining","[P.name]") - + feedback_add_details("pick_used_mining","[W.name]") if(istype(W,/obj/item/weapon/storage/bag/ore)) var/obj/item/weapon/storage/bag/ore/S = W From 4c0d685d6f43b5ab0291ec1cb9a3e4b055616bd6 Mon Sep 17 00:00:00 2001 From: Rui Neves Carvalho Date: Sat, 1 Aug 2015 17:42:19 +0100 Subject: [PATCH 3/6] Revert "Added L" This reverts commit d0c076065324ff47220b727a9890f9485913852e. --- code/modules/mining/mine_turfs.dm | 34 ++++++++++++++++++++++++------- 1 file changed, 27 insertions(+), 7 deletions(-) diff --git a/code/modules/mining/mine_turfs.dm b/code/modules/mining/mine_turfs.dm index d43c08ad15e..ba25d9bb856 100644 --- a/code/modules/mining/mine_turfs.dm +++ b/code/modules/mining/mine_turfs.dm @@ -434,6 +434,7 @@ var/global/list/rockTurfEdgeCache if(do_after(user,P.digspeed, target = src)) if(istype(src, /turf/simulated/mineral)) //sanity check against turf being deleted during digspeed delay user << "You finish cutting into the rock." + P.update_icon() gets_drilled(user) feedback_add_details("pick_used_mining","[P.name]") else @@ -547,14 +548,31 @@ var/global/list/rockTurfEdgeCache //note that this proc does not call ..() if(!W || !user) return 0 - var/digging_speed = 0; + if ((istype(W, /obj/item/weapon/shovel))) var/obj/item/weapon/shovel/S = W - digging_speed = S.digspeed - else if ((istype(W, /obj/item/weapon/pickaxe))) + var/turf/T = user.loc + + if (!( istype(T, /turf) )) + return + + if (dug) + user << "This area has already been dug!" + return + + user << "You start digging..." + playsound(src, 'sound/effects/shovel_dig.ogg', 50, 1) //FUCK YO RUSTLE I GOT'S THE DIGS SOUND HERE + + if(do_after(user,S.digspeed, target = src)) + if(istype(src, /turf/simulated/floor/plating/asteroid)) //sanity check against turf being deleted during digspeed delay + user << "You dig a hole." + S.update_icon() + gets_dug() + feedback_add_details("pick_used_mining","[S.name]") + + + if ((istype(W, /obj/item/weapon/pickaxe))) var/obj/item/weapon/pickaxe/P = W - digging_speed = P.digspeed - if (digging_speed) var/turf/T = user.loc if (!( istype(T, /turf) )) return @@ -566,11 +584,13 @@ var/global/list/rockTurfEdgeCache user << "You start digging..." playsound(src, 'sound/effects/shovel_dig.ogg', 50, 1) //FUCK YO RUSTLE I GOT'S THE DIGS SOUND HERE - if(do_after(user,digging_speed, target = src)) + if(do_after(user,P.digspeed, target = src)) if(istype(src, /turf/simulated/floor/plating/asteroid)) //sanity check against turf being deleted during digspeed delay user << "You dig a hole." + P.update_icon() gets_dug() - feedback_add_details("pick_used_mining","[W.name]") + feedback_add_details("pick_used_mining","[P.name]") + if(istype(W,/obj/item/weapon/storage/bag/ore)) var/obj/item/weapon/storage/bag/ore/S = W From d686ad3a6924e9c614cb276fb4712b9012efc651 Mon Sep 17 00:00:00 2001 From: Rui Neves Carvalho Date: Sat, 1 Aug 2015 18:02:32 +0100 Subject: [PATCH 4/6] Corrected the copypasta by Phil's wise specifications. --- code/modules/mining/mine_turfs.dm | 34 +++++++------------------------ 1 file changed, 7 insertions(+), 27 deletions(-) diff --git a/code/modules/mining/mine_turfs.dm b/code/modules/mining/mine_turfs.dm index ba25d9bb856..1b561b72edc 100644 --- a/code/modules/mining/mine_turfs.dm +++ b/code/modules/mining/mine_turfs.dm @@ -434,7 +434,6 @@ var/global/list/rockTurfEdgeCache if(do_after(user,P.digspeed, target = src)) if(istype(src, /turf/simulated/mineral)) //sanity check against turf being deleted during digspeed delay user << "You finish cutting into the rock." - P.update_icon() gets_drilled(user) feedback_add_details("pick_used_mining","[P.name]") else @@ -548,31 +547,14 @@ var/global/list/rockTurfEdgeCache //note that this proc does not call ..() if(!W || !user) return 0 - + var/digging_speed = 0; if ((istype(W, /obj/item/weapon/shovel))) var/obj/item/weapon/shovel/S = W - var/turf/T = user.loc - - if (!( istype(T, /turf) )) - return - - if (dug) - user << "This area has already been dug!" - return - - user << "You start digging..." - playsound(src, 'sound/effects/shovel_dig.ogg', 50, 1) //FUCK YO RUSTLE I GOT'S THE DIGS SOUND HERE - - if(do_after(user,S.digspeed, target = src)) - if(istype(src, /turf/simulated/floor/plating/asteroid)) //sanity check against turf being deleted during digspeed delay - user << "You dig a hole." - S.update_icon() - gets_dug() - feedback_add_details("pick_used_mining","[S.name]") - - - if ((istype(W, /obj/item/weapon/pickaxe))) + digging_speed = S.digspeed + else if ((istype(W, /obj/item/weapon/pickaxe))) var/obj/item/weapon/pickaxe/P = W + digging_speed = P.digspeed + if (digging_speed) var/turf/T = user.loc if (!( istype(T, /turf) )) return @@ -584,14 +566,12 @@ var/global/list/rockTurfEdgeCache user << "You start digging..." playsound(src, 'sound/effects/shovel_dig.ogg', 50, 1) //FUCK YO RUSTLE I GOT'S THE DIGS SOUND HERE - if(do_after(user,P.digspeed, target = src)) + if(do_after(user, digging_speed, target = src)) if(istype(src, /turf/simulated/floor/plating/asteroid)) //sanity check against turf being deleted during digspeed delay user << "You dig a hole." - P.update_icon() gets_dug() - feedback_add_details("pick_used_mining","[P.name]") + feedback_add_details("pick_used_mining","[W.name]") - if(istype(W,/obj/item/weapon/storage/bag/ore)) var/obj/item/weapon/storage/bag/ore/S = W if(S.collection_mode == 1) From 738b72702be76e6ec6f3cee76334aca764396255 Mon Sep 17 00:00:00 2001 From: Rui Neves Carvalho Date: Sat, 1 Aug 2015 20:32:46 +0100 Subject: [PATCH 5/6] Phil hates semi-colons and parenthesis and has supreme god bug fixer he requires sacrifices. --- code/modules/mining/mine_turfs.dm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/modules/mining/mine_turfs.dm b/code/modules/mining/mine_turfs.dm index 1b561b72edc..1832d83c9c4 100644 --- a/code/modules/mining/mine_turfs.dm +++ b/code/modules/mining/mine_turfs.dm @@ -547,11 +547,11 @@ var/global/list/rockTurfEdgeCache //note that this proc does not call ..() if(!W || !user) return 0 - var/digging_speed = 0; - if ((istype(W, /obj/item/weapon/shovel))) + var/digging_speed = 0 + if (istype(W, /obj/item/weapon/shovel)) var/obj/item/weapon/shovel/S = W digging_speed = S.digspeed - else if ((istype(W, /obj/item/weapon/pickaxe))) + else if (istype(W, /obj/item/weapon/pickaxe)) var/obj/item/weapon/pickaxe/P = W digging_speed = P.digspeed if (digging_speed) From 91e3ee3658642d4b8e3989d3b9108891d5cb7c2a Mon Sep 17 00:00:00 2001 From: Rui Neves Carvalho Date: Sun, 2 Aug 2015 16:42:07 +0100 Subject: [PATCH 6/6] Everybody hates my code. --- code/modules/mining/mine_turfs.dm | 4 +-- html/changelogs/astralenigma - digfix.yml | 36 ----------------------- 2 files changed, 2 insertions(+), 38 deletions(-) delete mode 100644 html/changelogs/astralenigma - digfix.yml diff --git a/code/modules/mining/mine_turfs.dm b/code/modules/mining/mine_turfs.dm index 1832d83c9c4..894d29cbc5c 100644 --- a/code/modules/mining/mine_turfs.dm +++ b/code/modules/mining/mine_turfs.dm @@ -432,7 +432,7 @@ var/global/list/rockTurfEdgeCache P.playDigSound() if(do_after(user,P.digspeed, target = src)) - if(istype(src, /turf/simulated/mineral)) //sanity check against turf being deleted during digspeed delay + if(istype(src, /turf/simulated/mineral)) user << "You finish cutting into the rock." gets_drilled(user) feedback_add_details("pick_used_mining","[P.name]") @@ -567,7 +567,7 @@ var/global/list/rockTurfEdgeCache playsound(src, 'sound/effects/shovel_dig.ogg', 50, 1) //FUCK YO RUSTLE I GOT'S THE DIGS SOUND HERE if(do_after(user, digging_speed, target = src)) - if(istype(src, /turf/simulated/floor/plating/asteroid)) //sanity check against turf being deleted during digspeed delay + if(istype(src, /turf/simulated/floor/plating/asteroid)) user << "You dig a hole." gets_dug() feedback_add_details("pick_used_mining","[W.name]") diff --git a/html/changelogs/astralenigma - digfix.yml b/html/changelogs/astralenigma - digfix.yml deleted file mode 100644 index 45bf3e45bd6..00000000000 --- a/html/changelogs/astralenigma - digfix.yml +++ /dev/null @@ -1,36 +0,0 @@ -################################ -# 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 -# spellcheck (typo fixes) -# experiment -# tgs (TG-ported fixes?) -################################# - -# Your name. -author: Astralenigma - -# 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, this gets changed to [] after reading. Just remove the brackets when you add new shit. -# Please surround your changes in double quotes ("). It works without them, but if you use certain characters it screws up compiling. The quotes will not show up in the changelog. -changes: - - tweak: "Added a progress bar to digging."