From b51dd7dc7073fef76fcc16f48384726d5d113194 Mon Sep 17 00:00:00 2001
From: Timothy Teakettle <59849408+timothyteakettle@users.noreply.github.com>
Date: Sat, 28 Mar 2020 22:24:47 +0000
Subject: [PATCH 1/8] make the new holodeck an option
---
code/game/area/areas/holodeck.dm | 3 +++
1 file changed, 3 insertions(+)
diff --git a/code/game/area/areas/holodeck.dm b/code/game/area/areas/holodeck.dm
index 10e3249d64..d32091f98b 100644
--- a/code/game/area/areas/holodeck.dm
+++ b/code/game/area/areas/holodeck.dm
@@ -99,6 +99,9 @@
/area/holodeck/rec_center/winterwonderland
name = "Holodeck - Winter Wonderland"
+/area/holodeck/rec_center/wrestlingarena
+ name = "Holodeck - Wrestling Arena"
+
// Bad programs
/area/holodeck/rec_center/burn
From 818d7b2ebfbeaf8f712484a0deb5c6b0ff4795a0 Mon Sep 17 00:00:00 2001
From: Timothy Teakettle <59849408+timothyteakettle@users.noreply.github.com>
Date: Sat, 28 Mar 2020 23:13:24 +0000
Subject: [PATCH 2/8] initial wrestling arena
---
_maps/map_files/generic/CentCom.dmm | 176 +++++++++++++++-------------
1 file changed, 92 insertions(+), 84 deletions(-)
diff --git a/_maps/map_files/generic/CentCom.dmm b/_maps/map_files/generic/CentCom.dmm
index f9c3653b35..cf6d2f8821 100644
--- a/_maps/map_files/generic/CentCom.dmm
+++ b/_maps/map_files/generic/CentCom.dmm
@@ -17820,7 +17820,6 @@
dir = 4
},
/obj/structure/window/reinforced/tinted{
- icon_state = "twindow";
dir = 1
},
/turf/open/floor/plasteel/white,
@@ -17897,7 +17896,6 @@
dir = 8
},
/obj/structure/window/reinforced/tinted{
- icon_state = "twindow";
dir = 1
},
/obj/machinery/washing_machine,
@@ -18204,6 +18202,9 @@
/obj/structure/window/reinforced/tinted,
/turf/open/floor/plasteel/freezer,
/area/syndicate_mothership)
+"Vk" = (
+/turf/open/floor/holofloor/wood,
+/area/holodeck)
"Vt" = (
/obj/item/paper/fluff/stations/centcom/disk_memo,
/obj/structure/noticeboard{
@@ -18368,6 +18369,10 @@
},
/turf/open/indestructible/hotelwood,
/area/centcom/holding)
+"Wx" = (
+/obj/item/storage/belt/champion/wrestling,
+/turf/open/floor/holofloor/wood,
+/area/holodeck/rec_center/wrestlingarena)
"Wz" = (
/obj/structure/table,
/obj/item/storage/backpack/duffelbag/med/surgery,
@@ -18750,6 +18755,9 @@
/obj/machinery/door/airlock/titanium,
/turf/open/floor/mineral/titanium,
/area/centcom/evac)
+"YC" = (
+/turf/open/floor/holofloor/wood,
+/area/holodeck/rec_center/wrestlingarena)
"YJ" = (
/obj/item/reagent_containers/food/condiment/enzyme,
/obj/item/reagent_containers/food/drinks/shaker,
@@ -71951,18 +71959,18 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+ab
+ag
+ag
+ag
+ag
+ag
+ag
+ag
+ag
+ag
+ag
+ab
aa
aa
aa
@@ -72208,18 +72216,18 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+bj
+YC
+YC
+YC
+YC
+YC
+YC
+YC
+YC
+YC
+YC
+fx
aa
aa
aa
@@ -72465,18 +72473,18 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+bj
+YC
+YC
+YC
+YC
+YC
+YC
+YC
+YC
+YC
+YC
+fx
aa
aa
aa
@@ -72722,18 +72730,18 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+bj
+YC
+Wx
+Vk
+YC
+YC
+YC
+YC
+YC
+Wx
+YC
+fx
aa
aa
aa
@@ -72979,18 +72987,18 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+bj
+YC
+YC
+YC
+YC
+YC
+YC
+YC
+YC
+YC
+YC
+fx
aa
aa
aa
@@ -73236,18 +73244,18 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+bj
+YC
+YC
+YC
+YC
+YC
+YC
+YC
+YC
+YC
+YC
+fx
aa
aa
aa
@@ -73494,16 +73502,16 @@ ae
ae
ae
ab
-ae
-ae
-ae
-ae
-ae
-ae
-ae
-ae
-ae
-ae
+ag
+ag
+ag
+ag
+ag
+ag
+ag
+ag
+ag
+ag
ab
aa
aa
From 5afe5aab3f8bcb6a4b3e47c519bfac6507ad9664 Mon Sep 17 00:00:00 2001
From: timothyteakettle <59849408+timothyteakettle@users.noreply.github.com>
Date: Sun, 29 Mar 2020 00:46:18 +0000
Subject: [PATCH 3/8] fixes the map, adds subtype of martial art
---
_maps/map_files/generic/CentCom.dmm | 22 ++++++++++------------
code/datums/martial/wrestling.dm | 7 +++++++
2 files changed, 17 insertions(+), 12 deletions(-)
diff --git a/_maps/map_files/generic/CentCom.dmm b/_maps/map_files/generic/CentCom.dmm
index cf6d2f8821..ee76a0fe70 100644
--- a/_maps/map_files/generic/CentCom.dmm
+++ b/_maps/map_files/generic/CentCom.dmm
@@ -18203,8 +18203,10 @@
/turf/open/floor/plasteel/freezer,
/area/syndicate_mothership)
"Vk" = (
+/obj/structure/table,
+/obj/item/storage/belt/champion/wrestling/holodeck,
/turf/open/floor/holofloor/wood,
-/area/holodeck)
+/area/holodeck/rec_center/wrestlingarena)
"Vt" = (
/obj/item/paper/fluff/stations/centcom/disk_memo,
/obj/structure/noticeboard{
@@ -18369,10 +18371,6 @@
},
/turf/open/indestructible/hotelwood,
/area/centcom/holding)
-"Wx" = (
-/obj/item/storage/belt/champion/wrestling,
-/turf/open/floor/holofloor/wood,
-/area/holodeck/rec_center/wrestlingarena)
"Wz" = (
/obj/structure/table,
/obj/item/storage/backpack/duffelbag/med/surgery,
@@ -72474,6 +72472,7 @@ aa
aa
aa
bj
+Vk
YC
YC
YC
@@ -72482,8 +72481,7 @@ YC
YC
YC
YC
-YC
-YC
+Vk
fx
aa
aa
@@ -72731,16 +72729,16 @@ aa
aa
aa
bj
-YC
-Wx
Vk
YC
YC
YC
YC
YC
-Wx
YC
+YC
+YC
+Vk
fx
aa
aa
@@ -72988,6 +72986,7 @@ aa
aa
aa
bj
+Vk
YC
YC
YC
@@ -72996,8 +72995,7 @@ YC
YC
YC
YC
-YC
-YC
+Vk
fx
aa
aa
diff --git a/code/datums/martial/wrestling.dm b/code/datums/martial/wrestling.dm
index 6ed2245dfd..cacf3c03c1 100644
--- a/code/datums/martial/wrestling.dm
+++ b/code/datums/martial/wrestling.dm
@@ -446,6 +446,9 @@
..()
/datum/martial_art/wrestling/grab_act(mob/living/carbon/human/A, mob/living/carbon/human/D)
+ if(A.mind.martial_art == /datum/martial_art/wrestling/holodeck && D.mind.martial_art != /datum/martial_art/wrestling/holodeck)
+ A.visible_message("You cannot put someone into a cinch unless they are wearing a wrestling belt!")
+ return FALSE
if(check_streak(A,D))
return 1
if(A.pulling == D || A == D) // don't stun grab yoursel
@@ -461,6 +464,10 @@
name = "Wrestling Belt"
var/datum/martial_art/wrestling/style = new
+/obj/item/storage/belt/champion/wrestling/holodeck
+ name = "Holodeck Wrestling Belt"
+ var/datum/martial_art/wrestling/holodeck/style = new
+
/obj/item/storage/belt/champion/wrestling/equipped(mob/user, slot)
if(!ishuman(user))
return
From b89a6b03984c7bc2a8173a7a8e1131bac757bfa8 Mon Sep 17 00:00:00 2001
From: timothyteakettle <59849408+timothyteakettle@users.noreply.github.com>
Date: Sun, 29 Mar 2020 02:44:44 +0100
Subject: [PATCH 4/8] makes everything work
---
_maps/map_files/generic/CentCom.dmm | 31 +++++++++++++++++++++++++----
code/datums/martial/wrestling.dm | 22 +++++++++++++-------
2 files changed, 42 insertions(+), 11 deletions(-)
diff --git a/_maps/map_files/generic/CentCom.dmm b/_maps/map_files/generic/CentCom.dmm
index ee76a0fe70..324c944733 100644
--- a/_maps/map_files/generic/CentCom.dmm
+++ b/_maps/map_files/generic/CentCom.dmm
@@ -17960,6 +17960,11 @@
},
/turf/open/indestructible/hotelwood,
/area/centcom/holding)
+"Ui" = (
+/obj/structure/table,
+/obj/item/clothing/mask/luchador/tecnicos,
+/turf/open/floor/holofloor/wood,
+/area/holodeck/rec_center/wrestlingarena)
"Uj" = (
/obj/machinery/door/airlock/centcom{
name = "Restroom";
@@ -18371,6 +18376,11 @@
},
/turf/open/indestructible/hotelwood,
/area/centcom/holding)
+"Wx" = (
+/obj/structure/table,
+/obj/item/clothing/mask/luchador,
+/turf/open/floor/holofloor/wood,
+/area/holodeck/rec_center/wrestlingarena)
"Wz" = (
/obj/structure/table,
/obj/item/storage/backpack/duffelbag/med/surgery,
@@ -18744,6 +18754,11 @@
},
/turf/open/floor/plasteel/cafeteria,
/area/centcom/holding)
+"Yv" = (
+/obj/structure/table,
+/obj/item/clothing/mask/luchador/rudos,
+/turf/open/floor/holofloor/wood,
+/area/holodeck/rec_center/wrestlingarena)
"Yw" = (
/turf/closed/indestructible/fakedoor{
name = "External Access"
@@ -18828,6 +18843,14 @@
},
/turf/open/floor/plasteel,
/area/centcom/supplypod)
+"Zl" = (
+/obj/structure/table,
+/obj/item/clothing/gloves/boxing,
+/obj/item/clothing/gloves/boxing/blue,
+/obj/item/clothing/gloves/boxing/green,
+/obj/item/clothing/gloves/boxing/yellow,
+/turf/open/floor/holofloor/wood,
+/area/holodeck/rec_center/wrestlingarena)
"Zr" = (
/obj/machinery/light,
/turf/open/floor/plasteel/dark,
@@ -73246,10 +73269,10 @@ bj
YC
YC
YC
-YC
-YC
-YC
-YC
+Wx
+Yv
+Ui
+Zl
YC
YC
YC
diff --git a/code/datums/martial/wrestling.dm b/code/datums/martial/wrestling.dm
index cacf3c03c1..fc87660de2 100644
--- a/code/datums/martial/wrestling.dm
+++ b/code/datums/martial/wrestling.dm
@@ -446,9 +446,6 @@
..()
/datum/martial_art/wrestling/grab_act(mob/living/carbon/human/A, mob/living/carbon/human/D)
- if(A.mind.martial_art == /datum/martial_art/wrestling/holodeck && D.mind.martial_art != /datum/martial_art/wrestling/holodeck)
- A.visible_message("You cannot put someone into a cinch unless they are wearing a wrestling belt!")
- return FALSE
if(check_streak(A,D))
return 1
if(A.pulling == D || A == D) // don't stun grab yoursel
@@ -464,10 +461,6 @@
name = "Wrestling Belt"
var/datum/martial_art/wrestling/style = new
-/obj/item/storage/belt/champion/wrestling/holodeck
- name = "Holodeck Wrestling Belt"
- var/datum/martial_art/wrestling/holodeck/style = new
-
/obj/item/storage/belt/champion/wrestling/equipped(mob/user, slot)
if(!ishuman(user))
return
@@ -483,3 +476,18 @@
if(H.get_item_by_slot(SLOT_BELT) == src)
style.remove(H)
return
+
+//Subtype of wrestling, reserved for the wrestling belts found in the holodeck
+/datum/martial_art/wrestling/holodeck
+ name = "Holodeck Wrestling"
+
+/obj/item/storage/belt/champion/wrestling/holodeck
+ name = "Holodeck Wrestling Belt"
+ style = new /datum/martial_art/wrestling/holodeck
+
+/datum/martial_art/wrestling/holodeck/grab_act(mob/living/carbon/human/A, mob/living/carbon/human/D)
+ if(istype(D.mind?.martial_art, /datum/martial_art/wrestling/holodeck))
+ ..()
+ else
+ A.visible_message("You can't put people into a cinch unless they are wearing the holodeck wrestling belt!")
+
From a68ce82060616abb57173ec772b161d3b0909809 Mon Sep 17 00:00:00 2001
From: Timothy Teakettle <59849408+timothyteakettle@users.noreply.github.com>
Date: Sun, 29 Mar 2020 14:13:16 +0100
Subject: [PATCH 5/8] woops
---
code/datums/martial/wrestling.dm | 32 ++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)
diff --git a/code/datums/martial/wrestling.dm b/code/datums/martial/wrestling.dm
index fc87660de2..67baf04973 100644
--- a/code/datums/martial/wrestling.dm
+++ b/code/datums/martial/wrestling.dm
@@ -485,9 +485,41 @@
name = "Holodeck Wrestling Belt"
style = new /datum/martial_art/wrestling/holodeck
+//Make sure that moves can only be used on people wearing the holodeck belt
/datum/martial_art/wrestling/holodeck/grab_act(mob/living/carbon/human/A, mob/living/carbon/human/D)
if(istype(D.mind?.martial_art, /datum/martial_art/wrestling/holodeck))
..()
else
A.visible_message("You can't put people into a cinch unless they are wearing the holodeck wrestling belt!")
+/datum/martial_art/wrestling/holodeck/proc/drop(mob/living/carbon/human/A, mob/living/carbon/human/D)
+ if(istype(D.mind?.martial_art, /datum/martial_art/wrestling/holodeck))
+ ..()
+ else
+ A.visible_message("You feel it unwise to do such a thing on someone not wearing a holodeck wrestling belt.")
+
+/datum/martial_art/wrestling/holodeck/proc/kick(mob/living/carbon/human/A, mob/living/carbon/human/D)
+ if(istype(D.mind?.martial_art, /datum/martial_art/wrestling/holodeck))
+ ..()
+ else
+ A.visible_message("You feel it unwise to do such a thing on someone not wearing a holodeck wrestling belt.")
+
+/datum/martial_art/wrestling/holodeck/proc/strike(mob/living/carbon/human/A, mob/living/carbon/human/D)
+ if(istype(D.mind?.martial_art, /datum/martial_art/wrestling/holodeck))
+ ..()
+ else
+ A.visible_message("You feel it unwise to do such a thing on someone not wearing a holodeck wrestling belt.")
+
+/datum/martial_art/wrestling/holodeck/proc/slam(mob/living/carbon/human/A, mob/living/carbon/human/D)
+ if(istype(D.mind?.martial_art, /datum/martial_art/wrestling/holodeck))
+ ..()
+ else
+ A.visible_message("You feel it unwise to do such a thing on someone not wearing a holodeck wrestling belt.")
+
+/datum/martial_art/wrestling/holodeck/proc/throw_wrassle(mob/living/carbon/human/A, mob/living/carbon/human/D)
+ if(istype(D.mind?.martial_art, /datum/martial_art/wrestling/holodeck))
+ ..()
+ else
+ A.visible_message("You feel it unwise to do such a thing on someone not wearing a holodeck wrestling belt.")
+
+
From 2caeaba8dc46eb4800d1f4d9e146076e2558b093 Mon Sep 17 00:00:00 2001
From: Timothy Teakettle <59849408+timothyteakettle@users.noreply.github.com>
Date: Sun, 29 Mar 2020 14:17:00 +0100
Subject: [PATCH 6/8] moves two tables
---
_maps/map_files/generic/CentCom.dmm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/_maps/map_files/generic/CentCom.dmm b/_maps/map_files/generic/CentCom.dmm
index 324c944733..b02dcf0aa4 100644
--- a/_maps/map_files/generic/CentCom.dmm
+++ b/_maps/map_files/generic/CentCom.dmm
@@ -73268,12 +73268,12 @@ aa
bj
YC
YC
-YC
Wx
+YC
Yv
Ui
-Zl
YC
+Zl
YC
YC
fx
From c6163e2349d414b4c6892a01250792b96486fb84 Mon Sep 17 00:00:00 2001
From: Timothy Teakettle <59849408+timothyteakettle@users.noreply.github.com>
Date: Sun, 29 Mar 2020 15:02:36 +0100
Subject: [PATCH 7/8] this time it will work, right?
---
code/datums/martial/wrestling.dm | 67 +++++++++++++++-----------------
1 file changed, 31 insertions(+), 36 deletions(-)
diff --git a/code/datums/martial/wrestling.dm b/code/datums/martial/wrestling.dm
index 67baf04973..a38330807d 100644
--- a/code/datums/martial/wrestling.dm
+++ b/code/datums/martial/wrestling.dm
@@ -17,7 +17,12 @@
var/datum/action/strike/strike = new/datum/action/strike()
var/datum/action/drop/drop = new/datum/action/drop()
-/datum/martial_art/wrestling/proc/check_streak(var/mob/living/carbon/human/A, var/mob/living/carbon/human/D)
+/datum/martial_art/wrestling/proc/check_streak(var/mob/living/carbon/human/A, var/mob/living/carbon/human/D, holodeck_mode)
+ //Stop people using holodeck wrestling on those not wearing the holodeck wrestling belt
+ if(holodeck_mode == 1)
+ if(!(istype(D.mind?.martial_art, /datum/martial_art/wrestling/holodeck)))
+ streak = ""
+ return 0
switch(streak)
if("drop")
streak = ""
@@ -135,7 +140,7 @@
strike.Remove(H)
/datum/martial_art/wrestling/harm_act(mob/living/carbon/human/A, mob/living/carbon/human/D)
- if(check_streak(A,D))
+ if(check_streak(A,D,0))
return 1
log_combat(A, D, "punched with wrestling")
..()
@@ -440,13 +445,13 @@
return
/datum/martial_art/wrestling/disarm_act(mob/living/carbon/human/A, mob/living/carbon/human/D)
- if(check_streak(A,D))
+ if(check_streak(A,D,0))
return 1
log_combat(A, D, "wrestling-disarmed")
..()
/datum/martial_art/wrestling/grab_act(mob/living/carbon/human/A, mob/living/carbon/human/D)
- if(check_streak(A,D))
+ if(check_streak(A,D,0))
return 1
if(A.pulling == D || A == D) // don't stun grab yoursel
return FALSE
@@ -487,39 +492,29 @@
//Make sure that moves can only be used on people wearing the holodeck belt
/datum/martial_art/wrestling/holodeck/grab_act(mob/living/carbon/human/A, mob/living/carbon/human/D)
- if(istype(D.mind?.martial_art, /datum/martial_art/wrestling/holodeck))
- ..()
- else
- A.visible_message("You can't put people into a cinch unless they are wearing the holodeck wrestling belt!")
+ if(check_streak(A,D,1))
+ return 1
+ if(!(istype(D.mind?.martial_art, /datum/martial_art/wrestling/holodeck)))
+ return FALSE
+ if(A.pulling == D || A == D) // don't stun grab yoursel
+ return FALSE
+ A.start_pulling(D)
+ D.visible_message("[A] gets [D] in a cinch!", \
+ "[A] gets [D] in a cinch!")
+ D.Stun(rand(60,100))
+ log_combat(A, D, "cinched")
+ return 1
-/datum/martial_art/wrestling/holodeck/proc/drop(mob/living/carbon/human/A, mob/living/carbon/human/D)
- if(istype(D.mind?.martial_art, /datum/martial_art/wrestling/holodeck))
- ..()
- else
- A.visible_message("You feel it unwise to do such a thing on someone not wearing a holodeck wrestling belt.")
+/datum/martial_art/wrestling/holodeck/harm_act(mob/living/carbon/human/A, mob/living/carbon/human/D)
+ if(check_streak(A,D,1))
+ return 1
+ log_combat(A, D, "punched with wrestling")
+ ..()
-/datum/martial_art/wrestling/holodeck/proc/kick(mob/living/carbon/human/A, mob/living/carbon/human/D)
- if(istype(D.mind?.martial_art, /datum/martial_art/wrestling/holodeck))
- ..()
- else
- A.visible_message("You feel it unwise to do such a thing on someone not wearing a holodeck wrestling belt.")
-
-/datum/martial_art/wrestling/holodeck/proc/strike(mob/living/carbon/human/A, mob/living/carbon/human/D)
- if(istype(D.mind?.martial_art, /datum/martial_art/wrestling/holodeck))
- ..()
- else
- A.visible_message("You feel it unwise to do such a thing on someone not wearing a holodeck wrestling belt.")
-
-/datum/martial_art/wrestling/holodeck/proc/slam(mob/living/carbon/human/A, mob/living/carbon/human/D)
- if(istype(D.mind?.martial_art, /datum/martial_art/wrestling/holodeck))
- ..()
- else
- A.visible_message("You feel it unwise to do such a thing on someone not wearing a holodeck wrestling belt.")
-
-/datum/martial_art/wrestling/holodeck/proc/throw_wrassle(mob/living/carbon/human/A, mob/living/carbon/human/D)
- if(istype(D.mind?.martial_art, /datum/martial_art/wrestling/holodeck))
- ..()
- else
- A.visible_message("You feel it unwise to do such a thing on someone not wearing a holodeck wrestling belt.")
+/datum/martial_art/wrestling/holodeck/disarm_act(mob/living/carbon/human/A, mob/living/carbon/human/D)
+ if(check_streak(A,D,1))
+ return 1
+ log_combat(A, D, "wrestling-disarmed")
+ ..()
From e2d02beedfa54bc24979a50347b6ab13cb36bdd7 Mon Sep 17 00:00:00 2001
From: timothyteakettle <59849408+timothyteakettle@users.noreply.github.com>
Date: Tue, 31 Mar 2020 00:20:44 +0100
Subject: [PATCH 8/8] refactors the code to be less awful
i was told my code was bad so maybe its less bad now
---
code/datums/martial/wrestling.dm | 46 +++++++++-----------------------
1 file changed, 12 insertions(+), 34 deletions(-)
diff --git a/code/datums/martial/wrestling.dm b/code/datums/martial/wrestling.dm
index a38330807d..349efdd342 100644
--- a/code/datums/martial/wrestling.dm
+++ b/code/datums/martial/wrestling.dm
@@ -17,12 +17,9 @@
var/datum/action/strike/strike = new/datum/action/strike()
var/datum/action/drop/drop = new/datum/action/drop()
-/datum/martial_art/wrestling/proc/check_streak(var/mob/living/carbon/human/A, var/mob/living/carbon/human/D, holodeck_mode)
- //Stop people using holodeck wrestling on those not wearing the holodeck wrestling belt
- if(holodeck_mode == 1)
- if(!(istype(D.mind?.martial_art, /datum/martial_art/wrestling/holodeck)))
- streak = ""
- return 0
+/datum/martial_art/wrestling/proc/check_streak(var/mob/living/carbon/human/A, var/mob/living/carbon/human/D)
+ if(!can_use(A, D))
+ return 0
switch(streak)
if("drop")
streak = ""
@@ -140,7 +137,7 @@
strike.Remove(H)
/datum/martial_art/wrestling/harm_act(mob/living/carbon/human/A, mob/living/carbon/human/D)
- if(check_streak(A,D,0))
+ if(check_streak(A,D))
return 1
log_combat(A, D, "punched with wrestling")
..()
@@ -445,14 +442,16 @@
return
/datum/martial_art/wrestling/disarm_act(mob/living/carbon/human/A, mob/living/carbon/human/D)
- if(check_streak(A,D,0))
+ if(check_streak(A,D))
return 1
log_combat(A, D, "wrestling-disarmed")
..()
/datum/martial_art/wrestling/grab_act(mob/living/carbon/human/A, mob/living/carbon/human/D)
- if(check_streak(A,D,0))
+ if(check_streak(A,D))
return 1
+ if(!can_use(A,D))
+ return ..()
if(A.pulling == D || A == D) // don't stun grab yoursel
return FALSE
A.start_pulling(D)
@@ -491,30 +490,9 @@
style = new /datum/martial_art/wrestling/holodeck
//Make sure that moves can only be used on people wearing the holodeck belt
-/datum/martial_art/wrestling/holodeck/grab_act(mob/living/carbon/human/A, mob/living/carbon/human/D)
- if(check_streak(A,D,1))
- return 1
+/datum/martial_art/wrestling/holodeck/can_use(var/mob/living/carbon/human/A, var/mob/living/carbon/human/D)
if(!(istype(D.mind?.martial_art, /datum/martial_art/wrestling/holodeck)))
- return FALSE
- if(A.pulling == D || A == D) // don't stun grab yoursel
- return FALSE
- A.start_pulling(D)
- D.visible_message("[A] gets [D] in a cinch!", \
- "[A] gets [D] in a cinch!")
- D.Stun(rand(60,100))
- log_combat(A, D, "cinched")
- return 1
-
-/datum/martial_art/wrestling/holodeck/harm_act(mob/living/carbon/human/A, mob/living/carbon/human/D)
- if(check_streak(A,D,1))
- return 1
- log_combat(A, D, "punched with wrestling")
- ..()
-
-/datum/martial_art/wrestling/holodeck/disarm_act(mob/living/carbon/human/A, mob/living/carbon/human/D)
- if(check_streak(A,D,1))
- return 1
- log_combat(A, D, "wrestling-disarmed")
- ..()
-
+ return 0
+ else
+ return ..()