From ab48a6fa162304cc0c5c3ccdaf8e6ebf32204d4e Mon Sep 17 00:00:00 2001
From: Kraseo
Date: Sun, 1 Mar 2020 19:14:05 +0100
Subject: [PATCH] part 3: do people even read commit logs
---
code/game/gamemodes/objective.dm | 5 +-
code/game/objects/items/melee/misc.dm | 151 +++++++++++++++---
.../game/objects/items/storage/uplink_kits.dm | 14 +-
.../antagonists/traitor/datum_traitor.dm | 20 ++-
code/modules/cargo/supplypod.dm | 4 +
.../uplink/uplink_items/uplink_bundles.dm | 2 +-
icons/mob/inhands/weapons/melee_lefthand.dmi | Bin 5132 -> 2761 bytes
icons/mob/inhands/weapons/melee_righthand.dmi | Bin 6274 -> 2806 bytes
icons/obj/items_and_weapons.dmi | Bin 133100 -> 133534 bytes
9 files changed, 162 insertions(+), 34 deletions(-)
diff --git a/code/game/gamemodes/objective.dm b/code/game/gamemodes/objective.dm
index e7083cacea..4acd2ac6c0 100644
--- a/code/game/gamemodes/objective.dm
+++ b/code/game/gamemodes/objective.dm
@@ -86,7 +86,7 @@ GLOBAL_LIST_EMPTY(objectives)
if(M)
. += M
-/datum/objective/proc/find_target()
+/datum/objective/proc/find_target(blacklist)
var/list/datum/mind/owners = get_owners()
var/list/possible_targets = list()
var/try_target_late_joiners = FALSE
@@ -96,7 +96,8 @@ GLOBAL_LIST_EMPTY(objectives)
try_target_late_joiners = TRUE
for(var/datum/mind/possible_target in get_crewmember_minds())
if(!(possible_target in owners) && ishuman(possible_target.current) && (possible_target.current.stat != DEAD) && is_unique_objective(possible_target))
- possible_targets += possible_target
+ if(!(possible_target in blacklist))
+ possible_targets += possible_target
if(try_target_late_joiners)
var/list/all_possible_targets = possible_targets.Copy()
for(var/I in all_possible_targets)
diff --git a/code/game/objects/items/melee/misc.dm b/code/game/objects/items/melee/misc.dm
index 9c544a34ef..2f8b562cca 100644
--- a/code/game/objects/items/melee/misc.dm
+++ b/code/game/objects/items/melee/misc.dm
@@ -180,13 +180,60 @@
slot_flags = ITEM_SLOT_BELT
force = 12 //9 hit crit
w_class = WEIGHT_CLASS_NORMAL
- var/cooldown = 13
- var/on = TRUE
- var/last_hit = 0
var/stun_stam_cost_coeff = 1.25
- var/hardstun_ds = 1
+ var/hardstun_ds = TRUE
var/softstun_ds = 0
var/stam_dmg = 30
+ var/cooldown_check = 0 // Used internally, you don't want to modify
+ var/cooldown = 13 // Default wait time until can stun again.
+ var/stun_time_silicon = 60 // How long it stuns silicons for - 6 seconds.
+ var/affect_silicon = FALSE // Does it stun silicons.
+ var/on_sound // "On" sound, played when switching between able to stun or not.
+ var/on_stun_sound = "sound/effects/woodhit.ogg" // Default path to sound for when we stun.
+ var/stun_animation = FALSE // Do we animate the "hit" when stunning.
+ var/on = TRUE // Are we on or off
+ var/on_icon_state // What is our sprite when turned on
+ var/off_icon_state // What is our sprite when turned off
+ var/on_item_state // What is our in-hand sprite when turned on
+ var/force_on // Damage when on - not stunning
+ var/force_off // Damage when off - not stunning
+ var/weight_class_on // What is the new size class when turned on
+
+/obj/item/melee/classic_baton/Initialize()
+ . = ..()
+
+// Description for trying to stun when still on cooldown.
+/obj/item/melee/classic_baton/proc/get_wait_description()
+ return
+
+// Description for when turning their baton "on"
+/obj/item/melee/classic_baton/proc/get_on_description()
+ . = list()
+ .["local_on"] = "You extend the baton."
+ .["local_off"] = "You collapse the baton."
+ return .
+
+// Default message for stunning mob.
+/obj/item/melee/classic_baton/proc/get_stun_description(mob/living/target, mob/living/user)
+ . = list()
+ .["visible"] = "[user] has knocked down [target] with [src]!"
+ .["local"] = "[user] has knocked down [target] with [src]!"
+ return .
+
+// Default message for stunning a silicon.
+/obj/item/melee/classic_baton/proc/get_silicon_stun_description(mob/living/target, mob/living/user)
+ . = list()
+ .["visible"] = "[user] pulses [target]'s sensors with the baton!"
+ .["local"] = "You pulse [target]'s sensors with the baton!"
+ return .
+
+// Are we applying any special effects when we stun to carbon
+/obj/item/melee/classic_baton/proc/additional_effects_carbon(mob/living/target, mob/living/user)
+ return
+
+// Are we applying any special effects when we stun to silicon
+/obj/item/melee/classic_baton/proc/additional_effects_silicon(mob/living/target, mob/living/user)
+ return
/obj/item/melee/classic_baton/attack(mob/living/target, mob/living/user)
if(!on)
@@ -207,15 +254,28 @@
user.take_bodypart_damage(2*force)
return
if(iscyborg(target))
- ..()
+ if(user.a_intent != INTENT_HARM) // We don't stun if we're on harm.
+ if(affect_silicon)
+ var/list/desc = get_silicon_stun_description(target, user)
+ target.flash_act(affect_silicon = TRUE)
+ target.Stun(stun_time_silicon)
+ additional_effects_silicon(target, user)
+ user.visible_message(desc["visible"], desc["local"])
+ playsound(get_turf(src), on_stun_sound, 100, TRUE, -1)
+ if(stun_animation)
+ user.do_attack_animation(target)
+ else
+ ..()
+ else
+ ..()
return
if(!isliving(target))
return
- if (user.a_intent == INTENT_HARM)
+ if(user.a_intent == INTENT_HARM)
if(!..() || !iscyborg(target))
return
else
- if(last_hit < world.time)
+ if(cooldown_check < world.time)
if(target.check_shields(src, 0, "[user]'s [name]", MELEE_ATTACK))
playsound(target, 'sound/weapons/genhit.ogg', 50, 1)
return
@@ -223,18 +283,25 @@
var/mob/living/carbon/human/H = target
if(check_martial_counter(H, user))
return
- playsound(get_turf(src), 'sound/effects/woodhit.ogg', 75, 1, -1)
+ var/list/desc = get_stun_description(target, user)
+ if(stun_animation)
+ user.do_attack_animation(target)
+ playsound(get_turf(src), on_stun_sound, 75, 1, -1)
target.Knockdown(softstun_ds, TRUE, FALSE, hardstun_ds, stam_dmg)
+ additional_effects_carbon(target, user)
log_combat(user, target, "stunned", src)
- src.add_fingerprint(user)
- target.visible_message("[user] has knocked down [target] with [src]!", \
- "[user] has knocked down [target] with [src]!")
+ add_fingerprint(user)
+ target.visible_message(desc["visible"], desc["local"])
if(!iscarbon(user))
target.LAssailant = null
else
target.LAssailant = user
- last_hit = world.time + cooldown
+ cooldown_check = world.time + cooldown
user.adjustStaminaLossBuffered(getweight())//CIT CHANGE - makes swinging batons cost stamina
+ else
+ var/wait_desc = get_wait_description()
+ if(wait_desc)
+ to_chat(user, wait_desc)
/obj/item/melee/classic_baton/telescopic
name = "telescopic baton"
@@ -249,6 +316,13 @@
item_flags = NONE
force = 0
on = FALSE
+ on_sound = 'sound/weapons/batonextend.ogg'
+ on_icon_state = "telebaton_1"
+ off_icon_state = "telebaton_0"
+ on_item_state = "nullrod"
+ force_on = 10
+ force_off = 0
+ weight_class_on = WEIGHT_CLASS_BULKY
total_mass = TOTAL_MASS_NORMAL_ITEM
/obj/item/melee/classic_baton/telescopic/suicide_act(mob/user)
@@ -259,7 +333,7 @@
if(!on)
src.attack_self(user)
else
- playsound(loc, 'sound/weapons/batonextend.ogg', 50, 1)
+ playsound(loc, on_sound, 50, 1)
add_fingerprint(user)
sleep(3)
if (H && !QDELETED(H))
@@ -272,24 +346,57 @@
/obj/item/melee/classic_baton/telescopic/attack_self(mob/user)
on = !on
if(on)
- to_chat(user, "You extend the baton.")
- icon_state = "telebaton_1"
- item_state = "nullrod"
- w_class = WEIGHT_CLASS_BULKY //doesnt fit in backpack when its on for balance
- force = 10 //stunbaton damage
+ to_chat(user, desc["local_on"])
+ icon_state = on_icon_state
+ item_state = on_item_state
+ w_class = weight_class_on
+ force = force_on
attack_verb = list("smacked", "struck", "cracked", "beaten")
else
- to_chat(user, "You collapse the baton.")
- icon_state = "telebaton_0"
+ to_chat(user, desc["local_off"])
+ icon_state = off_icon_state
item_state = null //no sprite for concealment even when in hand
slot_flags = ITEM_SLOT_BELT
w_class = WEIGHT_CLASS_SMALL
- force = 0 //not so robust now
+ force = force_off
attack_verb = list("hit", "poked")
- playsound(src.loc, 'sound/weapons/batonextend.ogg', 50, 1)
+ playsound(src.loc, on_sound, 50, 1)
add_fingerprint(user)
+/obj/item/melee/classic_baton/telescopic/contractor_baton
+ name = "contractor baton"
+ desc = "A compact, specialised baton assigned to Syndicate contractors. Applies light electrical shocks to targets."
+ icon = 'icons/obj/items_and_weapons.dmi'
+ icon_state = "contractor_baton_0"
+ lefthand_file = 'icons/mob/inhands/weapons/melee_lefthand.dmi'
+ righthand_file = 'icons/mob/inhands/weapons/melee_righthand.dmi'
+ item_state = null
+ slot_flags = ITEM_SLOT_BELT
+ w_class = WEIGHT_CLASS_SMALL
+ item_flags = NONE
+ force = 5
+ cooldown = 30
+ stam_dmg = 45 //3 hit stamcrit
+ affect_silicon = TRUE
+ on_sound = 'sound/weapons/contractorbatonextend.ogg'
+ on_stun_sound = 'sound/effects/contractorbatonhit.ogg'
+ stun_animation = TRUE
+ on_icon_state = "contractor_baton_1"
+ off_icon_state = "contractor_baton_0"
+ on_item_state = "contractor_baton"
+ force_on = 16
+ force_off = 5
+ weight_class_on = WEIGHT_CLASS_NORMAL
+
+/obj/item/melee/classic_baton/telescopic/contractor_baton/get_wait_description()
+ return "The baton is still charging!"
+
+/obj/item/melee/classic_baton/telescopic/contractor_baton/additional_effects_carbon(mob/living/target, mob/living/user)
+ target.Jitter(20)
+ target.apply_effect(EFFECT_STUTTER, 20)
+ target.apply_status_effect(/datum/status_effect/electrostaff, 30) //knockdown, disarm, and slowdown, the unholy triumvirate of stam combat
+
/obj/item/melee/supermatter_sword
name = "supermatter sword"
desc = "In a station full of bad ideas, this might just be the worst."
diff --git a/code/game/objects/items/storage/uplink_kits.dm b/code/game/objects/items/storage/uplink_kits.dm
index 9abf5c6337..43b69676eb 100644
--- a/code/game/objects/items/storage/uplink_kits.dm
+++ b/code/game/objects/items/storage/uplink_kits.dm
@@ -426,21 +426,24 @@
Here, you can accept a contract, and redeem your TC payments from completed contracts.
The payment number shown in brackets is the bonus you'll recieve when bringing your target alive. You recieve the
other number regardless of if they were alive or dead.
+ Contracts are completed by bringing the target to designated dropoff, calling for extraction, and putting them
+ inside the pod.
Be careful when accepting a contract. While you'll be able to see the location of the dropoff point, cancelling will make it
unavailable to take on again.
- The tablet can be recharged at any cell charger.
+ The tablet can also be recharged at any cell charger.
Extracting
- Make sure both yourself and your target are at the dropoff.
- - Call the extraction. Stand back from the drop point - it'll be coming down hard.
+ - Call the extraction, and stand back from the drop point
- If it fails, make sure your target is inside, and there's a free space for the pod to land.
- - Drag your target into the pod.
+ - Grab your target, and drag them into the pod.
Ransoms
We need your target for our own reasons, but we ransom them back to your mission area once their use is served. They will return back
- from where you sent them off from in several minutes time. Don't worry agent, we give you a cut of what we get paid. We pay this into whatever
- ID card you have equipped, on top of the TC payment we give.
"}
+ from where you sent them off from in several minutes time. You will be paid in TC for your services.
+
+ Good luck agent.
"}
return ..()
@@ -456,6 +459,7 @@
/obj/item/storage/box/syndie_kit/contract_kit/PopulateContents()
new /obj/item/modular_computer/tablet/syndicate_contract_uplink/preset/uplink(src)
new /obj/item/storage/box/syndicate/contractor_loadout(src)
+ new /obj/item/melee/classic_baton/telescopic/contractor_baton(src)
var/list/item_list = list( // All 4 TC or less - some nukeops only items, but fit nicely to the theme.
/obj/item/storage/backpack/duffelbag/syndie/x4,
/obj/item/storage/box/syndie_kit/throwing_weapons,
diff --git a/code/modules/antagonists/traitor/datum_traitor.dm b/code/modules/antagonists/traitor/datum_traitor.dm
index 791724d162..d05d1e383d 100644
--- a/code/modules/antagonists/traitor/datum_traitor.dm
+++ b/code/modules/antagonists/traitor/datum_traitor.dm
@@ -31,14 +31,26 @@
..()
/datum/antagonist/traitor/proc/create_contracts()
- var/contract_generation_quantity = 6
- var/lowest_TC_threshold = 28 // We don't want the sum of all the payouts to be under this amount
+ // 6 contracts
+ var/list/to_generate = list(
+ CONTRACT_PAYOUT_LARGE,
+ CONTRACT_PAYOUT_MEDIUM,
+ CONTRACT_PAYOUT_SMALL,
+ CONTRACT_PAYOUT_SMALL,
+ CONTRACT_PAYOUT_SMALL,
+ CONTRACT_PAYOUT_SMALL
+ )
+ var/lowest_TC_threshold = 30 // We don't want the sum of all the payouts to be under this amount
var/total = 0
var/lowest_paying_sum = 0
var/datum/syndicate_contract/lowest_paying_contract
- for(var/i = 1; i <= contract_generation_quantity; i++)
- var/datum/syndicate_contract/contract_to_add = new(owner)
+
+ to_generate = shuffle(to_generate) // Randomise order, so we don't have contracts always in payout order.
+ var/list/assigned_targets = list()
+ for (var/i = 1; i <= to_generate.len; i++) // Generate contracts, and find the lowest paying.
+ var/datum/syndicate_contract/contract_to_add = new(owner, to_generate[i], assigned_targets)
var/contract_payout_total = contract_to_add.contract.payout + contract_to_add.contract.payout_bonus
+ assigned_targets.Add(contract_to_add.contract.target)
if(!lowest_paying_contract || (contract_payout_total < lowest_paying_sum))
lowest_paying_sum = contract_payout_total
lowest_paying_contract = contract_to_add
diff --git a/code/modules/cargo/supplypod.dm b/code/modules/cargo/supplypod.dm
index d31b18e1d7..e82a2141eb 100644
--- a/code/modules/cargo/supplypod.dm
+++ b/code/modules/cargo/supplypod.dm
@@ -233,6 +233,10 @@
handleReturningClose(holder, TRUE)
/obj/structure/closet/supplypod/extractionpod/close(atom/movable/holder) //handles closing, and returns pod - deletes itself when returned
+ . = ..()
+ return
+
+/obj/structure/closet/supplypod/extractionpod/proc/send_up(atom/movable/holder)
if(!holder)
holder = src
if(leavingSound)
diff --git a/code/modules/uplink/uplink_items/uplink_bundles.dm b/code/modules/uplink/uplink_items/uplink_bundles.dm
index 2a0a7f947a..039a29a69d 100644
--- a/code/modules/uplink/uplink_items/uplink_bundles.dm
+++ b/code/modules/uplink/uplink_items/uplink_bundles.dm
@@ -35,7 +35,7 @@
desc = "The Syndicate have offered you the chance to become a contractor, take on kidnapping contracts for TC and cash payouts. Upon purchase, \
you'll be granted your own contract uplink embedded within the supplied tablet computer. Additionally, you'll be granted \
standard contractor gear to help with your mission - comes supplied with the tablet, specialised space suit, chameleon jumpsuit and mask, \
- agent card, and three randomly selected low cost items. Includes potentially otherwise unobtainable items."
+ specialised contractor baton, and three randomly selected low cost items. Can include otherwise unobtainable items."
item = /obj/item/storage/box/syndie_kit/contract_kit
cost = 20
player_minimum = 20
diff --git a/icons/mob/inhands/weapons/melee_lefthand.dmi b/icons/mob/inhands/weapons/melee_lefthand.dmi
index bb4289a86007238caa8c58cf64e6c42a1d90fe04..bd038883a0eb61c03d8e5b7bf94feb497c7d54af 100644
GIT binary patch
literal 2761
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
literal 5132
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
diff --git a/icons/mob/inhands/weapons/melee_righthand.dmi b/icons/mob/inhands/weapons/melee_righthand.dmi
index 4e9f5266b2d5c9b8d25d1204469b6ed856a21259..7284f43e6046c2ede773573532f498c1aba31cef 100644
GIT binary patch
literal 2806
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
gaH{QL*sAigO5LNK5||s
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
bbDFThW*s+dN{thMKDTe()&8ty^XmTr&${-j
delta 9807
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