diff --git a/code/defines/obj/weapon.dm b/code/defines/obj/weapon.dm index 57e37759472..3657bedc5c5 100644 --- a/code/defines/obj/weapon.dm +++ b/code/defines/obj/weapon.dm @@ -105,6 +105,11 @@ origin_tech = "materials=2" m_amt = 30000 g_amt = 15000 + ammo = 10 + +/obj/item/weapon/rcd_ammo/large + name = "Super compressed matter cartridge" + ammo = 30 /obj/item/weapon/spacecash name = "Space Cash" diff --git a/code/game/mecha/equipment/tools/tools.dm b/code/game/mecha/equipment/tools/tools.dm index ff693768d0e..375b6a32980 100644 --- a/code/game/mecha/equipment/tools/tools.dm +++ b/code/game/mecha/equipment/tools/tools.dm @@ -192,7 +192,7 @@ if(do_after_cooldown(target)) if(disabled) return chassis.spark_system.start() - target:ReplaceWithFloor() + target:ReplaceWithPlating() playsound(target, 'Deconstruct.ogg', 50, 1) chassis.give_power(energy_drain) else if (istype(target, /turf/simulated/floor)) @@ -219,7 +219,7 @@ set_ready_state(0) if(do_after_cooldown(target)) if(disabled) return - target:ReplaceWithFloor() + target:ReplaceWithPlating() playsound(target, 'Deconstruct.ogg', 50, 1) chassis.spark_system.start() chassis.use_power(energy_drain*2) diff --git a/code/game/objects/items/robot_items.dm b/code/game/objects/items/robot_items.dm index 667ac47e479..43ddfc7fdcb 100644 --- a/code/game/objects/items/robot_items.dm +++ b/code/game/objects/items/robot_items.dm @@ -232,7 +232,7 @@ if(!cell.use(30)) return user << "Building Floor..." activate() - A:ReplaceWithFloor() + A:ReplaceWithPlating() return if(istype(A, /turf/simulated/floor)) @@ -263,7 +263,7 @@ playsound(src.loc, 'click.ogg', 50, 1) if(do_after(user, 40)) activate() - A:ReplaceWithFloor() + A:ReplaceWithPlating() return if(istype(A, /turf/simulated/wall/r_wall)) diff --git a/code/game/objects/items/weapons/RCD.dm b/code/game/objects/items/weapons/RCD.dm index 7958372d6a3..ecb0b24d9a8 100644 --- a/code/game/objects/items/weapons/RCD.dm +++ b/code/game/objects/items/weapons/RCD.dm @@ -24,10 +24,11 @@ RCD working = 0 mode = 1 disabled = 0 + max_matter = 30 New() - desc = "A RCD. It currently holds [matter]/30 matter-units." + desc = "A RCD. It currently holds [matter]/[max_matter] matter-units." src.spark_system = new /datum/effect/effect/system/spark_spread spark_system.set_up(5, 0, src) spark_system.attach(src) @@ -37,14 +38,15 @@ RCD attackby(obj/item/weapon/W as obj, mob/user as mob) ..() if(istype(W, /obj/item/weapon/rcd_ammo)) - if((matter + 10) > 30) + var/obj/item/weapon/rcd_ammo/R = W + if((matter + R.ammo) > max_matter) user << "The RCD cant hold any more matter." return + matter += R.ammo del(W) - matter += 10 playsound(src.loc, 'click.ogg', 50, 1) - user << "The RCD now holds [matter]/30 matter-units." - desc = "A RCD. It currently holds [matter]/30 matter-units." + user << "The RCD now holds [matter]/[max_matter] matter-units." + desc = "A RCD. It currently holds [matter]/[max_matter] matter-units." return @@ -79,10 +81,10 @@ RCD playsound(src.loc, 'Deconstruct.ogg', 50, 1) spark_system.set_up(5, 0, src) src.spark_system.start() - A:ReplaceWithFloor() + A:ReplaceWithPlating() matter-- - user << "The RCD now holds [matter]/30 matter-units." - desc = "A RCD. It currently holds [matter]/30 matter-units." + user << "The RCD now holds [matter]/[max_matter] matter-units." + desc = "A RCD. It currently holds [matter]/[max_matter] matter-units." return if(istype(A, /turf/simulated/floor) && matter >= 3) user << "Building Wall (3)..." @@ -94,8 +96,8 @@ RCD A:ReplaceWithWall() playsound(src.loc, 'Deconstruct.ogg', 50, 1) matter -= 3 - user << "The RCD now holds [matter]/30 matter-units." - desc = "A RCD. It currently holds [matter]/30 matter-units." + user << "The RCD now holds [matter]/[max_matter] matter-units." + desc = "A RCD. It currently holds [matter]/[max_matter] matter-units." return else if(istype(A, /turf/simulated/floor) && mode == 2 && matter >= 10) user << "Building Airlock (10)..." @@ -113,8 +115,8 @@ RCD playsound(src.loc, 'Deconstruct.ogg', 50, 1) playsound(src.loc, 'sparks2.ogg', 50, 1) matter -= 10 - user << "The RCD now holds [matter]/30 matter-units." - desc = "A RCD. It currently holds [matter]/30 matter-units." + user << "The RCD now holds [matter]/[max_matter] matter-units." + desc = "A RCD. It currently holds [matter]/[max_matter] matter-units." return else if(mode == 3 && (istype(A, /turf) || istype(A, /obj/machinery/door/airlock) ) ) if(istype(A, /turf/simulated/wall) && matter >= 4) @@ -124,11 +126,11 @@ RCD if(!disabled && matter >= 4) spark_system.set_up(5, 0, src) src.spark_system.start() - A:ReplaceWithFloor() + A:ReplaceWithPlating() playsound(src.loc, 'Deconstruct.ogg', 50, 1) matter -= 4 - user << "The RCD now holds [matter]/30 matter-units." - desc = "A RCD. It currently holds [matter]/30 matter-units." + user << "The RCD now holds [matter]/[max_matter] matter-units." + desc = "A RCD. It currently holds [matter]/[max_matter] matter-units." return if(istype(A, /turf/simulated/wall/r_wall)) return @@ -142,8 +144,8 @@ RCD A:ReplaceWithSpace() playsound(src.loc, 'Deconstruct.ogg', 50, 1) matter -= 5 - user << "The RCD now holds [matter]/30 matter-units." - desc = "A RCD. It currently holds [matter]/30 matter-units." + user << "The RCD now holds [matter]/[max_matter] matter-units." + desc = "A RCD. It currently holds [matter]/[max_matter] matter-units." return if(istype(A, /obj/machinery/door/airlock) && matter >= 10) user << "Deconstructing Airlock (10)..." @@ -155,6 +157,13 @@ RCD del(A) playsound(src.loc, 'Deconstruct.ogg', 50, 1) matter -= 10 - user << "The RCD now holds [matter]/30 matter-units." - desc = "A RCD. It currently holds [matter]/30 matter-units." + user << "The RCD now holds [matter]/[max_matter] matter-units." + desc = "A RCD. It currently holds [matter]/[max_matter] matter-units." return +/obj/item/weapon/rcd/industrial + name = "industrial rapid construction device" + max_matter = 60 + + New() + matter = max_matter + return ..()