Skip to content

Commit

Permalink
add: a lot of roboquest tweaks. (#5961)
Browse files Browse the repository at this point in the history
* temp

* да

* мусор убираем

* да

* temp

* финале

* >roden is talking

* Надеюсь так пойдет?

* упс

* slightly better

* Async and cleaning.

* новый АПДЕЙТ

* Updated tgui bundle

---------

Co-authored-by: Vladisvell <[email protected]>
Co-authored-by: Daeberdir <[email protected]>
  • Loading branch information
3 people authored Nov 4, 2024
1 parent e1ef02c commit be60700
Show file tree
Hide file tree
Showing 35 changed files with 802 additions and 301 deletions.
13 changes: 13 additions & 0 deletions code/__DEFINES/misc.dm
Original file line number Diff line number Diff line change
Expand Up @@ -523,3 +523,16 @@
/// Disposal: How frequently disposals can make sounds, to prevent huge sound stacking
#define DISPOSAL_SOUND_COOLDOWN (0.1 SECONDS)

/// Mech Subtypes
#define MECH_TYPE_NONE (1<<0)
#define MECH_TYPE_RIPLEY (1<<1)
#define MECH_TYPE_CLARKE (1<<2)
#define MECH_TYPE_ODYSSEUS (1<<3)
#define MECH_TYPE_GYGAX (1<<4)
#define MECH_TYPE_DURAND (1<<5)
#define MECH_TYPE_PHAZON (1<<6)
#define MECH_TYPE_HONKER (1<<7)
#define MECH_TYPE_RETICENCE (1<<8)
#define MECH_TYPE_LOCKER (1<<9)
#define MECH_TYPE_MARAUDER (1<<10)
#define MECH_TYPE_SIDEWINTER (1<<11)
2 changes: 1 addition & 1 deletion code/game/machinery/computer/syndie_cargo.dm
Original file line number Diff line number Diff line change
Expand Up @@ -306,7 +306,7 @@ GLOBAL_LIST_INIT(data_storages, list()) //list of all cargo console data storage
var/turf/T = pick_n_take(spawnTurfs) //turf we will place it in
for(var/obj/machinery/syndiepad/recieving_pad as anything in recievingPads)
recieving_pad.use_power(10000 / recieving_pad.power_efficiency)
flick("sqpad-beam", recieving_pad )
flick("[initial(recieving_pad.icon_state)]-beam", recieving_pad)
playsound(get_turf(recieving_pad), 'sound/weapons/emitter2.ogg', 25, TRUE)

if(!T)
Expand Down
13 changes: 13 additions & 0 deletions code/game/machinery/constructable_frame.dm
Original file line number Diff line number Diff line change
Expand Up @@ -1016,6 +1016,19 @@ to destroy them and players will be able to make replacements.
/obj/item/stack/ore/bluespace_crystal = 5,
/obj/item/stack/cable_coil = 15)

/obj/item/circuitboard/advanced_roboquest_pad
board_name = "Robotics Request Advanced Quantum Pad"
icon_state = "abductor_mod"
build_path = /obj/machinery/roboquest_pad/advanced
board_type = "machine"
origin_tech = "programming=4;engineering=5;plasmatech=5;bluespace=6"
req_components = list(
/obj/item/stack/ore/bluespace_crystal = 5,
/obj/item/stock_parts/capacitor/purple = 1,
/obj/item/stock_parts/manipulator/purple = 1,
/obj/item/stock_parts/scanning_module/purple = 1,
/obj/item/stack/cable_coil = 15)

/obj/item/circuitboard/sleeper
board_name = "Sleeper"
build_path = /obj/machinery/sleeper
Expand Down
8 changes: 4 additions & 4 deletions code/game/machinery/quantum_pad.dm
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
name = "quantum pad"
desc = "A bluespace quantum-linked telepad used for teleporting objects to other quantum pads."
icon = 'icons/obj/telescience.dmi'
icon_state = "qpad-idle"
icon_state = "qpad"
anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 200
Expand Down Expand Up @@ -79,7 +79,7 @@
. = TRUE
if(!I.tool_use_check(user, 0))
return
default_deconstruction_screwdriver(user, "pad-idle-o", "qpad-idle", I)
default_deconstruction_screwdriver(user, "pad-o", initial(icon_state), I)

/obj/machinery/quantumpad/attack_hand(mob/user)
if(panel_open)
Expand Down Expand Up @@ -141,9 +141,9 @@
sparks()
linked_pad.sparks()

flick("qpad-beam", src)
flick("[initial(icon_state)]-beam", src)
playsound(get_turf(src), 'sound/weapons/emitter2.ogg', 25, TRUE)
flick("qpad-beam", linked_pad)
flick("[initial(linked_pad.icon_state)]-beam", linked_pad)
playsound(get_turf(linked_pad), 'sound/weapons/emitter2.ogg', 25, TRUE)
var/tele_success = TRUE
for(var/atom/movable/ROI in get_turf(src))
Expand Down
8 changes: 4 additions & 4 deletions code/game/machinery/syndiepad.dm
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
name = "Syndicate quantum pad"
desc = "Syndicate redspace quantumpads! Can transport goods through galaxies and completely ignores bluespace interference!"
icon = 'icons/obj/telescience.dmi'
icon_state = "sqpad-idle"
icon_state = "sqpad"
anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 200
Expand Down Expand Up @@ -144,7 +144,7 @@
. = TRUE
if(!I.tool_use_check(user, 0))
return
default_deconstruction_screwdriver(user, "pad-idle-o", "sqpad-idle", I)
default_deconstruction_screwdriver(user, "pad-o", initial(icon_state), I)

/obj/machinery/syndiepad/proc/pad_sync()
for(var/obj/machinery/syndiepad/S in GLOB.machines)
Expand Down Expand Up @@ -235,9 +235,9 @@
use_power(10000 / power_efficiency)
sparks()
linked_pad.sparks()
flick("sqpad-beam", src)
flick("[initial(icon_state)]-beam", src)
playsound(get_turf(src), 'sound/weapons/emitter2.ogg', 25, TRUE)
flick("sqpad-beam", linked_pad)
flick("[initial(linked_pad.icon_state)]-beam", linked_pad)
playsound(get_turf(linked_pad), 'sound/weapons/emitter2.ogg', 25, TRUE)
var/tele_success = FALSE

Expand Down
2 changes: 2 additions & 0 deletions code/game/mecha/combat/durand.dm
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@
force = 40
wreckage = /obj/structure/mecha_wreckage/durand

mech_type = MECH_TYPE_DURAND

/obj/mecha/combat/durand/GrantActions(mob/living/user, human_occupant = 0)
..()
defense_action.Grant(user, src)
Expand Down
2 changes: 2 additions & 0 deletions code/game/mecha/combat/gygax.dm
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@
step_energy_drain = 3
normal_step_energy_drain = 3

mech_type = MECH_TYPE_GYGAX

/obj/mecha/combat/gygax/GrantActions(mob/living/user, human_occupant = 0)
..()
overload_action.Grant(user, src)
Expand Down
2 changes: 2 additions & 0 deletions code/game/mecha/combat/honker.dm
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@
starting_voice = /obj/item/mecha_modkit/voice/honk
var/squeak = 0

mech_type = MECH_TYPE_HONKER

/obj/mecha/combat/honker/loaded/New()
..()
var/obj/item/mecha_parts/mecha_equipment/ME = new /obj/item/mecha_parts/mecha_equipment/weapon/honker
Expand Down
2 changes: 2 additions & 0 deletions code/game/mecha/combat/marauder.dm
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@
destruction_sleep_duration = 2 SECONDS
strafe_allowed = TRUE

mech_type = MECH_TYPE_MARAUDER

/obj/mecha/combat/marauder/GrantActions(mob/living/user, human_occupant = 0)
. = ..()
thrusters_action.Grant(user, src)
Expand Down
2 changes: 2 additions & 0 deletions code/game/mecha/combat/phazon.dm
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@
phase_state = "phazon-phase"
max_equip = 3

mech_type = MECH_TYPE_PHAZON

/obj/mecha/combat/phazon/GrantActions(mob/living/user, human_occupant = 0)
..()
phasing_action.Grant(user, src)
Expand Down
2 changes: 2 additions & 0 deletions code/game/mecha/combat/reticence.dm
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,8 @@
turnsound = null
starting_voice = /obj/item/mecha_modkit/voice/silent

mech_type = MECH_TYPE_RETICENCE

/obj/mecha/combat/reticence/loaded/New()
..()
var/obj/item/mecha_parts/mecha_equipment/ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/carbine/silenced
Expand Down
2 changes: 2 additions & 0 deletions code/game/mecha/combat/sidewinder.dm
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@
max_equip = 40 //а хули вы хотели, 60 тонн!
starting_voice = /obj/item/mecha_modkit/voice/nanotrasen

mech_type = MECH_TYPE_SIDEWINTER

/obj/mecha/combat/sidewinder/add_cell()
cell = new /obj/item/stock_parts/cell/infinite/abductor(src)

Expand Down
2 changes: 2 additions & 0 deletions code/game/mecha/makeshift/lockermech.dm
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@

cargo_capacity = 5 // you can fit a few things in this locker but not much.

mech_type = MECH_TYPE_LOCKER


/obj/mecha/makeshift/Destroy()
new /obj/structure/closet(loc)
Expand Down
12 changes: 6 additions & 6 deletions code/game/mecha/mecha.dm
Original file line number Diff line number Diff line change
Expand Up @@ -121,6 +121,9 @@
///Is mecha strafing currently
var/strafe = FALSE

///Mech subtype. Currently used in paintkits.
var/mech_type = MECH_TYPE_NONE

hud_possible = list (DIAG_STAT_HUD, DIAG_BATT_HUD, DIAG_MECH_HUD, DIAG_TRACK_HUD)

/obj/mecha/Initialize()
Expand Down Expand Up @@ -913,15 +916,12 @@
if(occupant)
to_chat(user, span_warning("You can't customize a mech while someone is piloting it - that would be unsafe!"))
return ATTACK_CHAIN_PROCEED

var/obj/item/paintkit/paintkit = I
var/found = FALSE
for(var/type in paintkit.allowed_types)
if(type == initial_icon)
found = TRUE
break
if(!found)
if(!(paintkit.allowed_types & mech_type))
to_chat(user, span_warning("This paintkit isn't meant for use on this class of exosuit."))
return ATTACK_CHAIN_PROCEED

if(!user.drop_transfer_item_to_loc(paintkit, src))
return ..()
user.visible_message(span_notice("[user] opens [paintkit] and spends some quality time customising [name]."))
Expand Down
2 changes: 2 additions & 0 deletions code/game/mecha/medical/odysseus.dm
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@
normal_step_energy_drain = 6
var/builtin_hud_user = 0

mech_type = MECH_TYPE_ODYSSEUS

/obj/mecha/medical/odysseus/moved_inside(var/mob/living/carbon/human/H)
. = ..()
if(. && ishuman(H))
Expand Down
Loading

0 comments on commit be60700

Please sign in to comment.