mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2025-12-28 02:21:53 +00:00
Adds a golf cart to cargo (#92688)
This commit is contained in:
@@ -475,3 +475,60 @@
|
||||
var/obj/vehicle/ridden/wheelchair/motorized/our_chair = parent
|
||||
if(istype(our_chair) && our_chair.power_cell)
|
||||
our_chair.power_cell.use(our_chair.energy_usage / max(our_chair.power_efficiency, 1) * 0.05)
|
||||
|
||||
/datum/component/riding/vehicle/golfcart
|
||||
ride_check_flags = RIDER_NEEDS_ARMS | UNBUCKLE_DISABLED_RIDER
|
||||
vehicle_move_delay = 1.5
|
||||
keytype = /obj/item/key/golfcart
|
||||
|
||||
/datum/component/riding/vehicle/golfcart/restore_parent_layer_and_offsets()
|
||||
// just don't restore anything.
|
||||
// restoring layers fucks stuff to do with the rear part
|
||||
return
|
||||
|
||||
/datum/component/riding/vehicle/golfcart/driver_move(atom/movable/movable_parent, mob/living/user, direction)
|
||||
if (!istype(parent, /obj/vehicle/ridden/golfcart))
|
||||
return ..()
|
||||
var/obj/vehicle/ridden/golfcart/cart = parent
|
||||
if (!cart.cell && !cart.is_hotrod())
|
||||
return COMPONENT_DRIVER_BLOCK_MOVE
|
||||
if (cart.cell)
|
||||
if (cart.cell.charge <= 0)
|
||||
return COMPONENT_DRIVER_BLOCK_MOVE
|
||||
if (get_turf(cart.child) == get_step(cart, direction))
|
||||
cart.set_movedelay_effect(2)
|
||||
else
|
||||
cart.set_movedelay_effect(1)
|
||||
vehicle_move_delay = cart.movedelay
|
||||
return ..()
|
||||
|
||||
/datum/component/riding/vehicle/golfcart/handle_ride(mob/user, direction)
|
||||
if (!istype(parent, /obj/vehicle/ridden/golfcart))
|
||||
return ..()
|
||||
var/obj/vehicle/ridden/golfcart/cart = parent
|
||||
if (cart.cell)
|
||||
var/charge_to_use = min(cart.charge_per_move, cart.cell.charge)
|
||||
cart.cell.use(charge_to_use)
|
||||
return ..()
|
||||
|
||||
/datum/component/riding/vehicle/golfcart/update_parent_layer_and_offsets(dir, animate)
|
||||
. = ..()
|
||||
if (istype(parent, /obj))
|
||||
var/obj/objectified = parent
|
||||
objectified.update_appearance(UPDATE_ICON)
|
||||
|
||||
/datum/component/riding/vehicle/golfcart/get_rider_offsets_and_layers(pass_index, mob/offsetter)
|
||||
return list(
|
||||
TEXT_NORTH = list(0, -16),
|
||||
TEXT_SOUTH = list(0, 10),
|
||||
TEXT_EAST = list(-8, 2),
|
||||
TEXT_WEST = list(8, 2),
|
||||
)
|
||||
|
||||
/datum/component/riding/vehicle/golfcart/get_parent_offsets_and_layers()
|
||||
return list(
|
||||
TEXT_NORTH = list(0, 0, ABOVE_MOB_LAYER),
|
||||
TEXT_SOUTH = list(0, 0, ABOVE_MOB_LAYER),
|
||||
TEXT_EAST = list(0, 0, VEHICLE_LAYER),
|
||||
TEXT_WEST = list(0, 0, VEHICLE_LAYER),
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user