Skip to content

Commit 93e272a

Browse files
authored
Merge pull request #5216 from MistakeNot4892/port/quads
Porting quadbikes from Polaris.
2 parents e067271 + c1c4c4f commit 93e272a

File tree

28 files changed

+642
-229
lines changed

28 files changed

+642
-229
lines changed
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
/datum/composite_sound/vehicle_engine
2+
start_sound = 'sound/machines/vehicle/engine_start.ogg'
3+
start_length = 2
4+
mid_sounds = list('sound/machines/vehicle/engine_mid.ogg'=1)
5+
mid_length = 6
6+
end_sound = 'sound/machines/vehicle/engine_end.ogg'
7+
play_volume = 20

code/datums/supplypacks/operations.dm

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,13 @@
33

44
/decl/hierarchy/supply_pack/operations/cargotrain
55
name = "Equipment - Cargo Train Tug"
6-
contains = list(/obj/vehicle/train/cargo/engine)
6+
contains = list(/obj/vehicle/train/engine)
77
containertype = /obj/structure/largecrate
88
containername = "cargo train tug crate"
99

1010
/decl/hierarchy/supply_pack/operations/cargotrailer
1111
name = "Equipment - Cargo Train Trolley"
12-
contains = list(/obj/vehicle/train/cargo/trolley)
12+
contains = list(/obj/vehicle/train/trolley)
1313
containertype = /obj/structure/largecrate
1414
containername = "cargo train trolley crate"
1515

code/game/turfs/flooring/_flooring.dm

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -394,3 +394,6 @@ var/global/list/flooring_cache = list()
394394
/// contaminant is, optionally, the material of the coating that wants to be added.
395395
/decl/flooring/proc/can_show_coating_footprints(turf/target, decl/material/contaminant)
396396
return TRUE
397+
398+
/decl/flooring/proc/get_vehicle_transit_delay(obj/vehicle/vehicle)
399+
return vehicle::base_speed

code/game/turfs/flooring/flooring_grass.dm

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,9 @@
5050
return TRUE
5151
return ..()
5252

53+
/decl/flooring/grass/get_vehicle_transit_delay(obj/vehicle/vehicle)
54+
return 1
55+
5356
/decl/flooring/grass/fake
5457
desc = "Do they smoke grass out in space, Bowie? Or do they smoke AstroTurf?"
5558
icon = 'icons/turf/flooring/fakegrass.dmi'
@@ -58,3 +61,6 @@
5861
build_type = /obj/item/stack/tile/grass
5962
force_material = /decl/material/solid/organic/plastic
6063
uid = "floor_grass_fake"
64+
65+
/decl/flooring/grass/fake/get_vehicle_transit_delay(obj/vehicle/vehicle)
66+
return vehicle::base_speed

code/game/turfs/flooring/flooring_mud.dm

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,9 @@
3434
return FALSE
3535
return ..()
3636

37+
/decl/flooring/mud/get_vehicle_transit_delay(obj/vehicle/vehicle)
38+
return vehicle.vehicle_transit_type == vehicle::VEHICLE_SNOWMOBILE ? 1.4 : 1.5
39+
3740
/decl/flooring/dry_mud
3841
name = "dry mud"
3942
desc = "This was once mud, but forgot to keep hydrated."
@@ -48,6 +51,9 @@
4851
force_material = /decl/material/solid/soil
4952
uid = "floor_dry_mud"
5053

54+
/decl/flooring/dry_mud/get_vehicle_transit_delay(obj/vehicle/vehicle)
55+
return 1
56+
5157
/decl/flooring/dry_mud/fluid_act(turf/floor/target, datum/reagents/fluids)
5258
if(target.get_topmost_flooring() == src)
5359
target.set_flooring(/decl/flooring/mud)
@@ -80,3 +86,6 @@
8086
target.set_base_flooring(/decl/flooring/mud)
8187
. = TRUE
8288
return . || ..()
89+
90+
/decl/flooring/dirt/get_vehicle_transit_delay(obj/vehicle/vehicle)
91+
return 1

code/game/turfs/flooring/flooring_natural.dm

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,9 @@
7373
force_material = /decl/material/solid/ice
7474
uid = "floor_ice"
7575

76+
/decl/flooring/ice/get_vehicle_transit_delay(obj/vehicle/vehicle)
77+
return vehicle.vehicle_transit_type == vehicle::VEHICLE_SNOWMOBILE ? 0.8 : ..()
78+
7679
/decl/flooring/ice/update_turf_icon(turf/floor/target)
7780
. = ..()
7881
if(istype(target))

code/game/turfs/flooring/flooring_rock.dm

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,3 +15,6 @@
1515
ASSERT(turf_material?.adjective_name)
1616
target.SetName("[turf_material.adjective_name] [name]")
1717
target.desc = "An expanse of bare [turf_material.solid_name]."
18+
19+
/decl/flooring/rock/get_vehicle_transit_delay(obj/vehicle/vehicle)
20+
return vehicle.vehicle_transit_type == vehicle::VEHICLE_SNOWMOBILE ? 1.5 : ..()

code/game/turfs/flooring/flooring_snow.dm

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,9 @@
4848
return FALSE
4949
return ..()
5050

51+
/decl/flooring/snow/get_vehicle_transit_delay(obj/vehicle/vehicle)
52+
return vehicle.vehicle_transit_type == vehicle::VEHICLE_SNOWMOBILE ? 0.8 : 1.7
53+
5154
/decl/flooring/permafrost
5255
name = "permafrost"
5356
desc = "A stretch of frozen soil that hasn't seen a thaw for many seasons."
@@ -56,8 +59,16 @@
5659
force_material = /decl/material/solid/ice
5760
uid = "floor_permafrost"
5861

62+
/decl/flooring/permafrost/get_vehicle_transit_delay(obj/vehicle/vehicle)
63+
if(holographic)
64+
return vehicle::base_speed
65+
if(vehicle.vehicle_transit_type == vehicle::VEHICLE_SNOWMOBILE)
66+
return 0.8
67+
return ..()
68+
5969
/decl/flooring/snow/fake
6070
name = "holosnow"
6171
desc = "Not quite the same as snow on an entertainment terminal, but close."
6272
holographic = TRUE
6373
uid = "floor_snow_fake"
74+

code/game/turfs/floors/_floor.dm

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -199,3 +199,9 @@
199199

200200
/turf/floor/can_show_coating_footprints(decl/material/contaminant = null)
201201
return ..() && get_topmost_flooring()?.can_show_coating_footprints(src, contaminant)
202+
203+
/turf/floor/proc/get_vehicle_transit_delay(obj/vehicle/vehicle)
204+
var/decl/flooring/terrain = get_topmost_flooring()
205+
if(!istype(vehicle) || QDELETED(vehicle) || !istype(terrain) || vehicle.vehicle_transit_type == vehicle::VEHICLE_GENERIC)
206+
return vehicle::base_speed
207+
return terrain.get_vehicle_transit_delay(vehicle)

code/modules/mob/mob.dm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -713,7 +713,7 @@ var/global/const/ACTION_DANGER_ALL = 2
713713
return TRUE
714714
if(!anchored && istype(over, /obj/vehicle/train))
715715
var/obj/vehicle/train/beep = over
716-
if(!beep.load(src))
716+
if(!beep.load_onto_vehicle(src))
717717
to_chat(user, SPAN_WARNING("You were unable to load \the [src] onto \the [over]."))
718718
return TRUE
719719
. = ..()

0 commit comments

Comments
 (0)