Vehicle balance

Went ahead and toned down the speed of a lot of vehicles, along with making a new variable that unbuckles a player if their size is too small/big. Additionally buffed some holo sign projectors.
This commit is contained in:
Chemlight
2021-05-17 22:51:50 -07:00
parent 943782d9e9
commit 895341277d
9 changed files with 26 additions and 11 deletions
+1 -1
View File
@@ -1,7 +1,7 @@
/datum/component/riding
var/last_vehicle_move = 0 //used for move delays
var/last_move_diagonal = FALSE
var/vehicle_move_delay = 2 //tick delay between movements, lower = faster, higher = slower
var/vehicle_move_delay = 3 //tick delay between movements, lower = faster, higher = slower
var/keytype
var/slowed = FALSE
+3 -3
View File
@@ -65,7 +65,7 @@
desc = "A holographic projector that creates holographic security barriers."
icon_state = "signmaker_sec"
holosign_type = /obj/structure/holosign/barrier
creation_time = 30
creation_time = 0
max_signs = 6
/obj/item/holosign_creator/engineering
@@ -73,7 +73,7 @@
desc = "A holographic projector that creates holographic engineering barriers."
icon_state = "signmaker_engi"
holosign_type = /obj/structure/holosign/barrier/engineering
creation_time = 30
creation_time = 0
max_signs = 6
/obj/item/holosign_creator/atmos
@@ -97,7 +97,7 @@
desc = "A holographic projector that creates PENLITE holobarriers. Useful during quarantines since they halt those with malicious diseases."
icon_state = "signmaker_med"
holosign_type = /obj/structure/holosign/barrier/medical
creation_time = 30
creation_time = 10
max_signs = 3
/obj/item/holosign_creator/cyborg
+1 -1
View File
@@ -9,7 +9,7 @@
/obj/vehicle/ridden/atv/Initialize()
. = ..()
var/datum/component/riding/D = LoadComponent(/datum/component/riding)
D.vehicle_move_delay = 1.5
D.vehicle_move_delay = 2.25
D.set_riding_offsets(RIDING_OFFSET_ALL, list(TEXT_NORTH = list(0, 4), TEXT_SOUTH = list(0, 4), TEXT_EAST = list(0, 4), TEXT_WEST = list( 0, 4)))
D.set_vehicle_dir_layer(SOUTH, ABOVE_MOB_LAYER)
D.set_vehicle_dir_layer(NORTH, OBJ_LAYER)
+2 -1
View File
@@ -2,6 +2,7 @@
name = "bicycle"
desc = "Keep away from electricity."
icon_state = "bicycle"
size_sensitive = FALSE
var/easter_egg_chance = 1
var/static/list/bike_music = list('sound/misc/bike1.mid',
@@ -12,7 +13,7 @@
. = ..()
var/datum/component/riding/D = LoadComponent(/datum/component/riding)
D.set_riding_offsets(RIDING_OFFSET_ALL, list(TEXT_NORTH = list(0, 4), TEXT_SOUTH = list(0, 4), TEXT_EAST = list(0, 4), TEXT_WEST = list( 0, 4)))
D.vehicle_move_delay = 1.5
D.vehicle_move_delay = 2
/obj/vehicle/ridden/bicycle/buckle_mob(mob/living/M, force = 0, check_loc = 1)
if(prob(easter_egg_chance) || (SSevents.holidays && SSevents.holidays[APRIL_FOOLS]))
+10
View File
@@ -6,6 +6,9 @@
default_driver_move = FALSE
var/legs_required = 1
var/arms_required = 0 //why not?
var/max_size = 1.50
var/min_size = 0.75
var/size_sensitive = TRUE
/obj/vehicle/ridden/Initialize()
. = ..()
@@ -34,6 +37,13 @@
if(M.get_num_legs() < legs_required)
to_chat(M, "<span class='warning'>You don't have enough legs to operate the pedals!</span>")
unbuckle_mob(M)
else if (size_sensitive)
if(M.size_multiplier < min_size)
to_chat(M, "<span class='warning'>You are too small to operate something like this!</span>")
unbuckle_mob(M)
else if(M.size_multiplier > max_size)
to_chat(M, "<span class='warning'>You are too big to operate something like this!</span>")
unbuckle_mob(M)
return ..()
/obj/vehicle/ridden/attackby(obj/item/I, mob/user, params)
+4 -3
View File
@@ -97,11 +97,11 @@
. = ..()
var/datum/component/riding/R = src.GetComponent(/datum/component/riding)
if (!adjusted_speed)
R.vehicle_move_delay = 1.5
R.vehicle_move_delay = 2
to_chat(user, "<span class='notice'>You adjust the wheels on [src] to make it go faster.</span>")
adjusted_speed = TRUE
else
R.vehicle_move_delay = 2
R.vehicle_move_delay = 2.5
to_chat(user, "<span class='notice'>You adjust the wheels on [src] to make it go slower.</span>")
adjusted_speed = FALSE
return TRUE
@@ -172,11 +172,12 @@
desc = "Uses patented retractable wheel technology. Never sacrifice speed for style - not that this provides much of either."
icon = null
density = FALSE
size_sensitive = FALSE
/obj/vehicle/ridden/scooter/wheelys/Initialize()
. = ..()
var/datum/component/riding/D = LoadComponent(/datum/component/riding)
D.vehicle_move_delay = 2
D.vehicle_move_delay = 2.5
D.set_vehicle_dir_layer(SOUTH, ABOVE_MOB_LAYER)
D.set_vehicle_dir_layer(NORTH, OBJ_LAYER)
D.set_vehicle_dir_layer(EAST, OBJ_LAYER)
+1 -1
View File
@@ -8,5 +8,5 @@
/obj/vehicle/ridden/secway/Initialize()
. = ..()
var/datum/component/riding/D = LoadComponent(/datum/component/riding)
D.vehicle_move_delay = 1.75
D.vehicle_move_delay = 2.5
D.set_riding_offsets(RIDING_OFFSET_ALL, list(TEXT_NORTH = list(0, 4), TEXT_SOUTH = list(0, 4), TEXT_EAST = list(0, 4), TEXT_WEST = list( 0, 4)))
+2
View File
@@ -14,6 +14,7 @@
layer = LYING_MOB_LAYER
var/overlay_state = "cover_blue"
var/mutable_appearance/overlay
size_sensitive = FALSE
/obj/vehicle/ridden/space/speedbike/Initialize()
. = ..()
@@ -46,6 +47,7 @@
layer = LYING_MOB_LAYER
var/static/mutable_appearance/overlay = mutable_appearance(icon, "speedwagon_cover", ABOVE_MOB_LAYER)
max_buckled_mobs = 4
size_sensitive = FALSE
var/crash_all = FALSE //CHAOS
pixel_y = -48
pixel_x = -48
+2 -1
View File
@@ -11,11 +11,12 @@
density = FALSE //Thought I couldn't fix this one easily, phew
// Run speed delay is multiplied with this for vehicle move delay.
var/delay_multiplier = 6.7
size_sensitive = FALSE
/obj/vehicle/ridden/wheelchair/Initialize()
. = ..()
var/datum/component/riding/D = LoadComponent(/datum/component/riding)
D.vehicle_move_delay = 1
D.vehicle_move_delay = 3
D.set_vehicle_dir_layer(SOUTH, OBJ_LAYER)
D.set_vehicle_dir_layer(NORTH, ABOVE_MOB_LAYER)
D.set_vehicle_dir_layer(EAST, OBJ_LAYER)