mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-27 05:57:24 +01:00
Merge branch 'master' into findnreplace
This commit is contained in:
@@ -13,7 +13,7 @@
|
||||
var/mob/living/carbon/M = AM
|
||||
M.slip("soap", 4, 2)
|
||||
|
||||
/obj/item/weapon/soap/afterattack(atom/target, mob/user as mob, proximity)
|
||||
/obj/item/weapon/soap/afterattack(atom/target, mob/user, proximity)
|
||||
if(!proximity) return
|
||||
//I couldn't feasibly fix the overlay bugs caused by cleaning items we are wearing.
|
||||
//So this is a workaround. This also makes more sense from an IC standpoint. ~Carn
|
||||
@@ -37,6 +37,9 @@
|
||||
var/obj/effect/decal/cleanable/C = locate() in target
|
||||
qdel(C)
|
||||
target.clean_blood()
|
||||
if(istype(target, /turf/simulated))
|
||||
var/turf/simulated/T = target
|
||||
T.dirt = 0
|
||||
return
|
||||
|
||||
/obj/item/weapon/soap/attack(mob/target as mob, mob/user as mob)
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
desc = "A rod of pure obsidian, its very presence disrupts and dampens the powers of Nar-Sie's followers."
|
||||
icon_state = "nullrod"
|
||||
item_state = "nullrod"
|
||||
force = 18
|
||||
force = 15
|
||||
throw_speed = 3
|
||||
throw_range = 4
|
||||
throwforce = 10
|
||||
@@ -197,7 +197,7 @@
|
||||
item_state = "hfrequency1"
|
||||
desc = "Bad references are the DNA of the soul."
|
||||
attack_verb = list("chopped", "sliced", "cut", "zandatsu'd")
|
||||
|
||||
|
||||
/obj/item/weapon/nullrod/scythe/spellblade
|
||||
icon_state = "spellblade"
|
||||
item_state = "spellblade"
|
||||
@@ -328,7 +328,7 @@
|
||||
icon = 'icons/obj/toy.dmi'
|
||||
icon_state = "carpplushie"
|
||||
item_state = "carp_plushie"
|
||||
force = 15
|
||||
force = 13
|
||||
attack_verb = list("bitten", "eaten", "fin slapped")
|
||||
hitsound = 'sound/weapons/bite.ogg'
|
||||
var/used_blessing = FALSE
|
||||
@@ -346,7 +346,7 @@
|
||||
name = "monk's staff"
|
||||
desc = "A long, tall staff made of polished wood. Traditionally used in ancient old-Earth martial arts, now used to harass the clown."
|
||||
w_class = 4
|
||||
force = 15
|
||||
force = 13
|
||||
block_chance = 40
|
||||
slot_flags = SLOT_BACK
|
||||
sharp = 0
|
||||
|
||||
@@ -28,6 +28,7 @@
|
||||
/obj/item/weapon/mop/proc/clean(turf/simulated/A)
|
||||
if(reagents.has_reagent("water", 1) || reagents.has_reagent("cleaner", 1) || reagents.has_reagent("holywater", 1))
|
||||
A.clean_blood()
|
||||
A.dirt = 0
|
||||
for(var/obj/effect/O in A)
|
||||
if(is_cleanable(O))
|
||||
qdel(O)
|
||||
|
||||
@@ -35,6 +35,24 @@
|
||||
else
|
||||
..()
|
||||
|
||||
/obj/item/weapon/shard/afterattack(atom/movable/AM, mob/user, proximity)
|
||||
if(!proximity || !(src in user))
|
||||
return
|
||||
if(isturf(AM))
|
||||
return
|
||||
if(istype(AM, /obj/item/weapon/storage))
|
||||
return
|
||||
if(ishuman(user))
|
||||
var/mob/living/carbon/human/H = user
|
||||
if(!H.gloves)
|
||||
var/obj/item/organ/external/affecting = H.get_organ("[user.hand ? "l" : "r" ]_hand")
|
||||
if(affecting.status & ORGAN_ROBOT)
|
||||
return
|
||||
to_chat(H, "<span class='warning'>[src] cuts into your hand!</span>")
|
||||
if(affecting.take_damage(force*0.5))
|
||||
H.UpdateDamageIcon()
|
||||
H.updatehealth()
|
||||
|
||||
/obj/item/weapon/shard/attackby(obj/item/I, mob/user, params)
|
||||
if(istype(I, /obj/item/weapon/weldingtool))
|
||||
var/obj/item/weapon/weldingtool/WT = I
|
||||
|
||||
@@ -28,12 +28,12 @@
|
||||
origin_tech = "materials=1;engineering=1"
|
||||
attack_verb = list("bashed", "battered", "bludgeoned", "whacked")
|
||||
toolspeed = 1
|
||||
|
||||
|
||||
/obj/item/weapon/wrench/suicide_act(mob/user)
|
||||
user.visible_message("<span class='suicide'>[user] is beating themself to death with [src]! It looks like they're trying to commit suicide!</span>")
|
||||
user.visible_message("<span class='suicide'>[user] is beating themselves to death with [src]! It looks like they're trying to commit suicide!</span>")
|
||||
playsound(loc, 'sound/weapons/genhit.ogg', 50, 1, -1)
|
||||
return (BRUTELOSS)
|
||||
|
||||
|
||||
/obj/item/weapon/wrench/cyborg
|
||||
name = "automatic wrench"
|
||||
desc = "An advanced robotic wrench. Can be found in construction cyborgs."
|
||||
@@ -44,7 +44,7 @@
|
||||
desc = "A brass wrench. It's faintly warm to the touch."
|
||||
icon_state = "wrench_brass"
|
||||
toolspeed = 0.5
|
||||
|
||||
|
||||
/obj/item/weapon/wrench/abductor
|
||||
name = "alien wrench"
|
||||
desc = "A polarized wrench. It causes anything placed between the jaws to turn."
|
||||
@@ -55,7 +55,7 @@
|
||||
origin_tech = "materials=5;engineering=5;abductor=3"
|
||||
|
||||
/obj/item/weapon/wrench/power
|
||||
name = "Hand Drill"
|
||||
name = "hand drill"
|
||||
desc = "A simple powered drill with a bolt bit."
|
||||
icon_state = "drill_bolt"
|
||||
item_state = "drill"
|
||||
@@ -162,7 +162,7 @@
|
||||
if((CLUMSY in user.mutations) && prob(50))
|
||||
M = user
|
||||
return eyestab(M,user)
|
||||
|
||||
|
||||
/obj/item/weapon/screwdriver/brass
|
||||
name = "brass screwdriver"
|
||||
desc = "A screwdriver made of brass. The handle feels freezing cold."
|
||||
@@ -178,7 +178,7 @@
|
||||
toolspeed = 0.1
|
||||
|
||||
/obj/item/weapon/screwdriver/power
|
||||
name = "Hand Drill"
|
||||
name = "hand drill"
|
||||
desc = "A simple hand drill with a screwdriver bit attached."
|
||||
icon_state = "drill_screw"
|
||||
item_state = "drill"
|
||||
@@ -249,7 +249,7 @@
|
||||
return
|
||||
else
|
||||
..()
|
||||
|
||||
|
||||
/obj/item/weapon/wirecutters/suicide_act(mob/user)
|
||||
user.visible_message("<span class='suicide'>[user] is cutting at their arteries with [src]! It looks like they're trying to commit suicide!</span>")
|
||||
playsound(loc, usesound, 50, 1, -1)
|
||||
@@ -275,12 +275,12 @@
|
||||
toolspeed = 0.5
|
||||
|
||||
/obj/item/weapon/wirecutters/power
|
||||
name = "Jaws of Life"
|
||||
name = "jaws of life"
|
||||
desc = "A set of jaws of life, the magic of science has managed to fit it down into a device small enough to fit in a tool belt. It's fitted with a cutting head."
|
||||
icon_state = "jaws_cutter"
|
||||
item_state = "jawsoflife"
|
||||
origin_tech = "materials=2;engineering=2"
|
||||
materials = list(MAT_METAL=150,MAT_SILVER=50,MAT_TITANIUM=25)
|
||||
materials = list(MAT_METAL=150,MAT_SILVER=50,MAT_GOLD=25)
|
||||
usesound = 'sound/items/jaws_cut.ogg'
|
||||
toolspeed = 0.25
|
||||
|
||||
@@ -388,7 +388,7 @@
|
||||
location = get_turf(M)
|
||||
if(isturf(location))
|
||||
location.hotspot_expose(700, 5)
|
||||
|
||||
|
||||
/obj/item/weapon/weldingtool/attackby(obj/item/I, mob/user, params)
|
||||
if(isscrewdriver(I))
|
||||
flamethrower_screwdriver(I, user)
|
||||
@@ -495,7 +495,7 @@
|
||||
//Switches the welder on
|
||||
/obj/item/weapon/weldingtool/proc/switched_on(mob/user)
|
||||
if(!status)
|
||||
to_chat(user, "span class='warning'>[src] can't be turned on while unsecured!</span>")
|
||||
to_chat(user, "<span class='warning'>[src] can't be turned on while unsecured!</span>")
|
||||
return
|
||||
welding = !welding
|
||||
if(welding)
|
||||
@@ -578,7 +578,7 @@
|
||||
|
||||
/obj/item/weapon/weldingtool/mini/flamethrower_screwdriver()
|
||||
return
|
||||
|
||||
|
||||
/obj/item/weapon/weldingtool/abductor
|
||||
name = "alien welding tool"
|
||||
desc = "An alien welding tool. Whatever fuel it uses, it never runs out."
|
||||
@@ -589,7 +589,7 @@
|
||||
change_icons = 0
|
||||
origin_tech = "plasmatech=5;engineering=5;abductor=3"
|
||||
can_off_process = 1
|
||||
|
||||
|
||||
/obj/item/weapon/weldingtool/abductor/process()
|
||||
if(get_fuel() <= max_fuel)
|
||||
reagents.add_reagent("fuel", 1)
|
||||
@@ -617,7 +617,7 @@
|
||||
light_intensity = 1
|
||||
toolspeed = 0.5
|
||||
var/last_gen = 0
|
||||
|
||||
|
||||
/obj/item/weapon/weldingtool/experimental/brass
|
||||
name = "brass welding tool"
|
||||
desc = "A brass welder that seems to constantly refuel itself. It is faintly warm to the touch."
|
||||
@@ -651,12 +651,14 @@ obj/item/weapon/weldingtool/experimental/process()
|
||||
|
||||
/obj/item/weapon/crowbar/red
|
||||
icon_state = "crowbar_red"
|
||||
item_state = "crowbar_red"
|
||||
force = 8
|
||||
|
||||
|
||||
/obj/item/weapon/crowbar/brass
|
||||
name = "brass crowbar"
|
||||
desc = "A brass crowbar. It feels faintly warm to the touch."
|
||||
icon_state = "crowbar_brass"
|
||||
item_state = "crowbar_brass"
|
||||
toolspeed = 0.5
|
||||
|
||||
/obj/item/weapon/crowbar/abductor
|
||||
@@ -670,16 +672,16 @@ obj/item/weapon/weldingtool/experimental/process()
|
||||
|
||||
/obj/item/weapon/crowbar/large
|
||||
name = "crowbar"
|
||||
desc = "It's a big crowbar. It doesn't fit in your pockets, because it's big."
|
||||
desc = "It's a big crowbar. It doesn't fit in your pockets, because its too big."
|
||||
force = 12
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
throw_speed = 3
|
||||
throw_range = 3
|
||||
materials = list(MAT_METAL=70)
|
||||
icon_state = "crowbar_large"
|
||||
item_state = "crowbar"
|
||||
item_state = "crowbar_large"
|
||||
toolspeed = 0.5
|
||||
|
||||
|
||||
/obj/item/weapon/crowbar/cyborg
|
||||
name = "hydraulic crowbar"
|
||||
desc = "A hydraulic prying tool, compact but powerful. Designed to replace crowbar in construction cyborgs."
|
||||
@@ -688,11 +690,11 @@ obj/item/weapon/weldingtool/experimental/process()
|
||||
toolspeed = 0.5
|
||||
|
||||
/obj/item/weapon/crowbar/power
|
||||
name = "Jaws of Life"
|
||||
desc = "A set of jaws of life, the magic of science has managed to fit it down into a device small enough to fit in a tool belt. It's fitted with a prying head"
|
||||
name = "jaws of life"
|
||||
desc = "A set of jaws of life, the magic of science has managed to fit it down into a device small enough to fit in a tool belt. It's fitted with a prying head."
|
||||
icon_state = "jaws_pry"
|
||||
item_state = "jawsoflife"
|
||||
materials = list(MAT_METAL=150,MAT_SILVER=50,MAT_TITANIUM=25)
|
||||
materials = list(MAT_METAL=150,MAT_SILVER=50,MAT_DIAMOND=25)
|
||||
origin_tech = "materials=2;engineering=2"
|
||||
usesound = 'sound/items/jaws_pry.ogg'
|
||||
force = 15
|
||||
@@ -714,7 +716,7 @@ obj/item/weapon/weldingtool/experimental/process()
|
||||
// Conversion kit
|
||||
/obj/item/weapon/conversion_kit
|
||||
name = "\improper Revolver Conversion Kit"
|
||||
desc = "A professional conversion kit used to convert any knock off revolver into the real deal capable of shooting lethal .357 rounds without the possibility of catastrophic failure"
|
||||
desc = "A professional conversion kit used to convert any knock off revolver into the real deal capable of shooting lethal .357 rounds without the possibility of catastrophic failure."
|
||||
icon = 'icons/obj/weapons.dmi'
|
||||
icon_state = "kit"
|
||||
flags = CONDUCT
|
||||
|
||||
@@ -138,4 +138,67 @@ obj/item/weapon/wirerod/attackby(obj/item/I, mob/user, params)
|
||||
icon_state = "kidanspear"
|
||||
item_state = "kidanspear"
|
||||
force = 10
|
||||
throwforce = 15
|
||||
throwforce = 15
|
||||
|
||||
/obj/item/weapon/melee/baseball_bat
|
||||
name = "baseball bat"
|
||||
desc = "There ain't a skull in the league that can withstand a swatter."
|
||||
icon = 'icons/obj/items.dmi'
|
||||
icon_state = "baseball_bat"
|
||||
item_state = "baseball_bat"
|
||||
force = 10
|
||||
throwforce = 12
|
||||
attack_verb = list("beat", "smacked")
|
||||
w_class = WEIGHT_CLASS_HUGE
|
||||
var/homerun_ready = 0
|
||||
var/homerun_able = 0
|
||||
|
||||
/obj/item/weapon/melee/baseball_bat/homerun
|
||||
name = "home run bat"
|
||||
desc = "This thing looks dangerous... Dangerously good at baseball, that is."
|
||||
homerun_able = 1
|
||||
|
||||
/obj/item/weapon/melee/baseball_bat/attack_self(mob/user)
|
||||
if(!homerun_able)
|
||||
..()
|
||||
return
|
||||
if(homerun_ready)
|
||||
to_chat(user, "<span class='notice'>You're already ready to do a home run!</span>")
|
||||
..()
|
||||
return
|
||||
to_chat(user, "<span class='warning'>You begin gathering strength...</span>")
|
||||
playsound(get_turf(src), 'sound/magic/lightning_chargeup.ogg', 65, 1)
|
||||
if(do_after(user, 90, target = src))
|
||||
to_chat(user, "<span class='userdanger'>You gather power! Time for a home run!</span>")
|
||||
homerun_ready = 1
|
||||
..()
|
||||
|
||||
/obj/item/weapon/melee/baseball_bat/attack(mob/living/target, mob/living/user)
|
||||
. = ..()
|
||||
var/atom/throw_target = get_edge_target_turf(target, user.dir)
|
||||
if(homerun_ready)
|
||||
user.visible_message("<span class='userdanger'>It's a home run!</span>")
|
||||
target.throw_at(throw_target, rand(8,10), 14, user)
|
||||
target.ex_act(2)
|
||||
playsound(get_turf(src), 'sound/weapons/HOMERUN.ogg', 100, 1)
|
||||
homerun_ready = 0
|
||||
return
|
||||
else
|
||||
target.throw_at(throw_target, rand(1,2), 7, user)
|
||||
|
||||
/obj/item/weapon/melee/baseball_bat/ablative
|
||||
name = "metal baseball bat"
|
||||
desc = "This bat is made of highly reflective, highly armored material."
|
||||
icon_state = "baseball_bat_metal"
|
||||
item_state = "baseball_bat_metal"
|
||||
force = 12
|
||||
throwforce = 15
|
||||
|
||||
/obj/item/weapon/melee/baseball_bat/ablative/IsReflect()//some day this will reflect thrown items instead of lasers
|
||||
var/picksound = rand(1,2)
|
||||
var/turf = get_turf(src)
|
||||
if(picksound == 1)
|
||||
playsound(turf, 'sound/weapons/effects/batreflect1.ogg', 50, 1)
|
||||
if(picksound == 2)
|
||||
playsound(turf, 'sound/weapons/effects/batreflect2.ogg', 50, 1)
|
||||
return 1
|
||||
|
||||
Reference in New Issue
Block a user