From ed37d85d563b72af8eff841e53c74f15e9ff57f2 Mon Sep 17 00:00:00 2001 From: TiviPlus <57223640+TiviPlus@users.noreply.github.com> Date: Sun, 14 Mar 2021 22:39:08 +0100 Subject: [PATCH] Minor vehicle tidying (#57625) Nothing too interesting just cleanup and making it readable --- code/modules/vehicles/lavaboat.dm | 4 +- code/modules/vehicles/motorized_wheelchair.dm | 97 ++++++++++--------- code/modules/vehicles/pimpin_ride.dm | 14 ++- code/modules/vehicles/ridden.dm | 2 +- 4 files changed, 61 insertions(+), 56 deletions(-) diff --git a/code/modules/vehicles/lavaboat.dm b/code/modules/vehicles/lavaboat.dm index 2019b43af9c..b676f895775 100644 --- a/code/modules/vehicles/lavaboat.dm +++ b/code/modules/vehicles/lavaboat.dm @@ -6,10 +6,10 @@ desc = "A boat used for traversing lava." icon_state = "goliath_boat" icon = 'icons/obj/lavaland/dragonboat.dmi' - var/allowed_turf = /turf/open/lava resistance_flags = LAVA_PROOF | FIRE_PROOF can_buckle = TRUE key_type = /obj/item/oar + var/allowed_turf = /turf/open/lava /obj/vehicle/ridden/lavaboat/Initialize() . = ..() @@ -17,12 +17,12 @@ /obj/item/oar name = "oar" + desc = "Not to be confused with the kind Research hassles you for." icon = 'icons/obj/vehicles.dmi' icon_state = "oar" inhand_icon_state = "oar" lefthand_file = 'icons/mob/inhands/misc/lavaland_lefthand.dmi' righthand_file = 'icons/mob/inhands/misc/lavaland_righthand.dmi' - desc = "Not to be confused with the kind Research hassles you for." force = 12 w_class = WEIGHT_CLASS_NORMAL resistance_flags = LAVA_PROOF | FIRE_PROOF diff --git a/code/modules/vehicles/motorized_wheelchair.dm b/code/modules/vehicles/motorized_wheelchair.dm index 7088a6a6237..104c094f052 100644 --- a/code/modules/vehicles/motorized_wheelchair.dm +++ b/code/modules/vehicles/motorized_wheelchair.dm @@ -3,20 +3,28 @@ desc = "A chair with big wheels. It seems to have a motor in it." foldabletype = null max_integrity = 150 + ///How "fast" the wheelchair goes only affects ramming var/speed = 2 + ///Self explanatory, ratio of how much power we use var/power_efficiency = 1 + ///How much power we use var/power_usage = 100 + ///whether the panel is open so a user can take out the cell var/panel_open = FALSE - var/list/required_parts = list(/obj/item/stock_parts/manipulator, - /obj/item/stock_parts/manipulator, - /obj/item/stock_parts/capacitor) + ///Parts used in building the wheelchair + var/list/required_parts = list( + /obj/item/stock_parts/manipulator, + /obj/item/stock_parts/manipulator, + /obj/item/stock_parts/capacitor, + ) + ///power cell we draw power from var/obj/item/stock_parts/cell/power_cell /obj/vehicle/ridden/wheelchair/motorized/make_ridable() AddElement(/datum/element/ridable, /datum/component/riding/vehicle/wheelchair/motorized) /obj/vehicle/ridden/wheelchair/motorized/CheckParts(list/parts_list) - ..() + . = ..() refresh_parts() /obj/vehicle/ridden/wheelchair/motorized/proc/refresh_parts() @@ -31,8 +39,7 @@ /obj/vehicle/ridden/wheelchair/motorized/obj_destruction(damage_flag) var/turf/T = get_turf(src) - for(var/c in contents) - var/atom/movable/thing = c + for(var/atom/movable/thing as anything in contents) thing.forceMove(T) return ..() @@ -83,35 +90,35 @@ to_chat(user, "You install the [I].") refresh_parts() return - if(istype(I, /obj/item/stock_parts)) - var/obj/item/stock_parts/B = I - var/P - for(var/obj/item/stock_parts/A in contents) - for(var/D in required_parts) - if(ispath(A.type, D)) - P = D - break - if(istype(B, P) && istype(A, P)) - if(B.get_part_rating() > A.get_part_rating()) - B.forceMove(src) - user.put_in_hands(A) - user.visible_message("[user] replaces [A] with [B] in [src].", "You replace [A] with [B].") - break - refresh_parts() - return - return ..() + if(!istype(I, /obj/item/stock_parts)) + return ..() + + var/obj/item/stock_parts/newstockpart = I + for(var/obj/item/stock_parts/oldstockpart in contents) + var/type_to_check + for(var/pathtypes in required_parts) + if(ispath(oldstockpart.type, pathtypes)) + type_to_check = oldstockpart.type + break + if(istype(newstockpart, type_to_check) && istype(oldstockpart, type_to_check)) + if(newstockpart.get_part_rating() > oldstockpart.get_part_rating()) + newstockpart.forceMove(src) + user.put_in_hands(oldstockpart) + user.visible_message("[user] replaces [oldstockpart] with [newstockpart] in [src].", "You replace [oldstockpart] with [newstockpart].") + break + refresh_parts() /obj/vehicle/ridden/wheelchair/motorized/wrench_act(mob/living/user, obj/item/I) to_chat(user, "You begin to detach the wheels...") - if(I.use_tool(src, user, 40, volume=50)) - to_chat(user, "You detach the wheels and deconstruct the chair.") - new /obj/item/stack/rods(drop_location(), 8) - new /obj/item/stack/sheet/iron(drop_location(), 10) - var/turf/T = get_turf(src) - for(var/c in contents) - var/atom/movable/thing = c - thing.forceMove(T) - qdel(src) + if(!I.use_tool(src, user, 40, volume=50)) + return TRUE + to_chat(user, "You detach the wheels and deconstruct the chair.") + new /obj/item/stack/rods(drop_location(), 8) + new /obj/item/stack/sheet/iron(drop_location(), 10) + var/turf/T = get_turf(src) + for(var/atom/movable/thing as anything in contents) + thing.forceMove(T) + qdel(src) return TRUE /obj/vehicle/ridden/wheelchair/motorized/examine(mob/user) @@ -134,21 +141,21 @@ return // If the speed is higher than delay_multiplier throw the person on the wheelchair away if(A.density && speed > delay_multiplier && has_buckled_mobs()) - var/mob/living/H = buckled_mobs[1] - var/atom/throw_target = get_edge_target_turf(H, pick(GLOB.cardinals)) - unbuckle_mob(H) - H.throw_at(throw_target, 2, 3) - H.Knockdown(100) - H.adjustStaminaLoss(40) + var/mob/living/disabled = buckled_mobs[1] + var/atom/throw_target = get_edge_target_turf(disabled, pick(GLOB.cardinals)) + unbuckle_mob(disabled) + disabled.throw_at(throw_target, 2, 3) + disabled.Knockdown(100) + disabled.adjustStaminaLoss(40) if(isliving(A)) - var/mob/living/D = A - throw_target = get_edge_target_turf(D, pick(GLOB.cardinals)) - D.throw_at(throw_target, 2, 3) - D.Knockdown(80) - D.adjustStaminaLoss(35) - visible_message("[src] crashes into [A], sending [H] and [D] flying!") + var/mob/living/ramtarget = A + throw_target = get_edge_target_turf(ramtarget, pick(GLOB.cardinals)) + ramtarget.throw_at(throw_target, 2, 3) + ramtarget.Knockdown(80) + ramtarget.adjustStaminaLoss(35) + visible_message("[src] crashes into [ramtarget], sending [disabled] and [ramtarget] flying!") else - visible_message("[src] crashes into [A], sending [H] flying!") + visible_message("[src] crashes into [A], sending [disabled] flying!") playsound(src, 'sound/effects/bang.ogg', 50, 1) /obj/vehicle/ridden/wheelchair/motorized/emag_act(mob/user) diff --git a/code/modules/vehicles/pimpin_ride.dm b/code/modules/vehicles/pimpin_ride.dm index 6f19d4b99c5..251e7fc8c32 100644 --- a/code/modules/vehicles/pimpin_ride.dm +++ b/code/modules/vehicles/pimpin_ride.dm @@ -17,8 +17,7 @@ /obj/vehicle/ridden/janicart/Destroy() if(mybag) - qdel(mybag) - mybag = null + QDEL_NULL(mybag) return ..() /obj/item/janiupgrade @@ -65,13 +64,12 @@ /obj/vehicle/ridden/janicart/attack_hand(mob/user, list/modifiers) . = ..() - if(.) + if(. || !mybag) return - else if(mybag) - mybag.forceMove(get_turf(user)) - user.put_in_hands(mybag) - mybag = null - update_appearance() + mybag.forceMove(get_turf(user)) + user.put_in_hands(mybag) + mybag = null + update_appearance() /obj/vehicle/ridden/janicart/upgraded floorbuffer = TRUE diff --git a/code/modules/vehicles/ridden.dm b/code/modules/vehicles/ridden.dm index 3286000f882..814964f5929 100644 --- a/code/modules/vehicles/ridden.dm +++ b/code/modules/vehicles/ridden.dm @@ -53,7 +53,7 @@ /obj/vehicle/ridden/user_buckle_mob(mob/living/M, mob/user, check_loc = TRUE) if(!in_range(user, src) || !in_range(M, src)) return FALSE - . = ..(M, user, FALSE) + return ..(M, user, FALSE) /obj/vehicle/ridden/buckle_mob(mob/living/M, force = FALSE, check_loc = TRUE) if(!force && occupant_amount() >= max_occupants)