From d3a8caddbf2c659a4c60850a2051db0aef42c1e4 Mon Sep 17 00:00:00 2001 From: ZomgPonies Date: Thu, 7 May 2015 18:04:12 -0400 Subject: [PATCH] Makes Owlman's belt reload every 60 seconds --- .../objects/items/weapons/storage/belt.dm | 60 +++++++++++++++---- 1 file changed, 48 insertions(+), 12 deletions(-) diff --git a/code/game/objects/items/weapons/storage/belt.dm b/code/game/objects/items/weapons/storage/belt.dm index db68c73ee56..f499f14d2b7 100644 --- a/code/game/objects/items/weapons/storage/belt.dm +++ b/code/game/objects/items/weapons/storage/belt.dm @@ -346,22 +346,56 @@ desc = "Sometimes people choose justice. Sometimes, justice chooses you..." icon_state = "securitybelt" item_state = "security" - storage_slots = 14 + storage_slots = 6 max_w_class = 3 - max_combined_w_class = 28 // = 14 * 2 + max_combined_w_class = 18 origin_tech = "bluespace=4;syndicate=2" allow_quick_empty = 1 - can_hold = list() - flags = NODROP - New() - ..() - new /obj/item/weapon/grenade/smokebomb(src) - new /obj/item/weapon/grenade/smokebomb(src) - new /obj/item/weapon/grenade/smokebomb(src) - new /obj/item/weapon/grenade/smokebomb(src) - new /obj/item/weapon/legcuffs/bolas(src) - new /obj/item/weapon/legcuffs/bolas(src) + can_hold = list( + "/obj/item/weapon/grenade/smokebomb", + "/obj/item/weapon/legcuffs/bolas" + ) + flags = NODROP + var/smokecount = 0 + var/bolacount = 0 + var/cooldown = 0 + +/obj/item/weapon/storage/belt/bluespace/owlman/New() + ..() + new /obj/item/weapon/grenade/smokebomb(src) + new /obj/item/weapon/grenade/smokebomb(src) + new /obj/item/weapon/grenade/smokebomb(src) + new /obj/item/weapon/grenade/smokebomb(src) + new /obj/item/weapon/legcuffs/bolas(src) + new /obj/item/weapon/legcuffs/bolas(src) + processing_objects.Add(src) + cooldown = world.time + +/obj/item/weapon/storage/belt/bluespace/owlman/process() + if(cooldown < world.time - 600) + smokecount = 0 + var/obj/item/weapon/grenade/smokebomb/S + for(S in src) + smokecount++ + bolacount = 0 + var/obj/item/weapon/legcuffs/bolas/B + for(B in src) + bolacount++ + if(smokecount < 4) + while(smokecount < 4) + new /obj/item/weapon/grenade/smokebomb(src) + smokecount++ + if(bolacount < 2) + while(bolacount < 2) + new /obj/item/weapon/legcuffs/bolas(src) + bolacount++ + cooldown = world.time + update_icon() + + + +/* DEPRECATED DUE TO SUPERHERO CODE AND NODROP // As a last resort, the belt can be used as a plastic explosive with a fixed timer (15 seconds). Naturally, you'll lose all your gear... // Of course, it could be worse. It could spawn a singularity! /obj/item/weapon/storage/belt/bluespace/owlman/afterattack(atom/target as obj|turf, mob/user as mob, flag) @@ -400,6 +434,8 @@ del(target) if (src) del(src) +*/ + /obj/item/weapon/storage/belt/bluespace/attack(mob/M as mob, mob/user as mob, def_zone) return