Merge pull request #4304 from Aurorablade/JustTraitorThings

Crazy Fethas Traitor Emporium of Horrors
This commit is contained in:
Fox McCloud
2016-05-04 01:22:13 -04:00
28 changed files with 552 additions and 116 deletions
+25
View File
@@ -53,6 +53,9 @@
icon_state = "d20"
sides = 20
/obj/item/weapon/dice/d20/e20
var/triggered = 0
/obj/item/weapon/dice/attack_self(mob/user as mob)
diceroll(user)
@@ -84,6 +87,28 @@
H.apply_damage(4,BRUTE,(pick("l_leg", "r_leg")))
H.Weaken(3)
*///ew.
/obj/item/weapon/dice/d20/e20/diceroll(mob/user as mob, thrown)
if(triggered)
return
..()
if(result == 1)
to_chat(user, "<span class='danger'>Rocks fall, you die.</span>")
user.gib()
else
triggered = 1
visible_message("<span class='notice'>You hear a quiet click.</span>")
spawn(40)
var/cap = 0
if(result > MAX_EX_LIGHT_RANGE && result != 20)
cap = 1
result = min(result, MAX_EX_LIGHT_RANGE) //Apply the bombcap
else if(result == 20) //Roll a nat 20, screw the bombcap
result = 24
var/turf/epicenter = get_turf(src)
explosion(epicenter, round(result*0.25), round(result*0.5), round(result), round(result*1.5), 1, cap)
/obj/item/weapon/dice/update_icon()
overlays.Cut()
overlays += "[src.icon_state][src.result]"
@@ -40,4 +40,28 @@
name = "carp delivery grenade"
spawner_type = /mob/living/simple_animal/hostile/carp
deliveryamt = 5
origin_tech = "materials=3;magnets=4;syndicate=4"
origin_tech = "materials=3;magnets=4;syndicate=4"
/obj/item/weapon/grenade/spawnergrenade/feral_cats
name = "feral cat delivery grenade"
desc = "This grenade contains 8 dehydrated feral cats in a similar manner to dehydrated monkeys, which, upon detonation, will be rehydrated by a small reservoir of water contained within the grenade. These cats will then attack anything in sight."
spawner_type = /mob/living/simple_animal/hostile/feral_cat
deliveryamt = 5
origin_tech = "materials=3;magnets=4;syndicate=4"
/obj/item/weapon/grenade/spawnergrenade/feral_cats/prime() //Own proc for this because the regular one would flash people which was dumb.
update_mob()
if(spawner_type && deliveryamt)
var/turf/T = get_turf(src)
playsound(T, 'sound/effects/phasein.ogg', 100, 1)
for(var/i=1, i<=deliveryamt, i++)
var/atom/movable/x = new spawner_type
x.loc = T
if(prob(50))
for(var/j = 1, j <= rand(1, 3), j++)
step(x, pick(NORTH,SOUTH,EAST,WEST))
qdel(src)
return
@@ -172,4 +172,18 @@
new /obj/item/weapon/reagent_containers/syringe/bioterror(src)
new /obj/item/weapon/reagent_containers/syringe/bioterror(src)
new /obj/item/weapon/reagent_containers/syringe/bioterror(src)
return
return
/obj/item/weapon/storage/box/syndie_kit/caneshotgun
name = "cane gun kit"
/obj/item/weapon/storage/box/syndie_kit/caneshotgun/New()
..()
new /obj/item/ammo_casing/shotgun/dart/assassination(src)
new /obj/item/ammo_casing/shotgun/dart/assassination(src)
new /obj/item/ammo_casing/shotgun/dart/assassination(src)
new /obj/item/ammo_casing/shotgun/dart/assassination(src)
new /obj/item/ammo_casing/shotgun/dart/assassination(src)
new /obj/item/ammo_casing/shotgun/dart/assassination(src)
new /obj/item/weapon/gun/projectile/revolver/doublebarrel/improvised/cane(src)
+3 -3
View File
@@ -299,7 +299,7 @@
return ..()
//Putting heads on spears
/obj/item/weapon/organ/head/attackby(var/obj/item/weapon/W, var/mob/living/user, params)
/obj/item/organ/external/head/attackby(var/obj/item/weapon/W, var/mob/living/user, params)
if(istype(W, /obj/item/weapon/twohanded/spear))
to_chat(user, "<span class='notice'>You stick the head onto the spear and stand it upright on the ground.</span>")
var/obj/structure/headspear/HS = new /obj/structure/headspear(user.loc)
@@ -315,7 +315,7 @@
return ..()
/obj/item/weapon/twohanded/spear/attackby(var/obj/item/I, var/mob/living/user)
if(istype(I, /obj/item/weapon/organ/head))
if(istype(I, /obj/item/organ/external/head))
to_chat(user, "<span class='notice'>You stick the head onto the spear and stand it upright on the ground.</span>")
var/obj/structure/headspear/HS = new /obj/structure/headspear(user.loc)
var/matrix/M = matrix()
@@ -339,7 +339,7 @@
/obj/structure/headspear/attack_hand(mob/living/user)
user.visible_message("<span class='warning'>[user] kicks over \the [src]!</span>", "<span class='danger'>You kick down \the [src]!</span>")
new /obj/item/weapon/twohanded/spear(user.loc)
for(var/obj/item/weapon/organ/head/H in src)
for(var/obj/item/organ/external/head/H in src)
H.loc = user.loc
qdel(src)