mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-24 12:37:26 +01:00
Modsuits. Ready for review, sorry for the ammount of files changed 👉 👈 (#21147)
* biting off more than I can chew, but I feel like hurting myself * more shit * progress continues, moral stays sameish * bite of 2587 * mod_theme down, but probably broken * 385 errors, 16 warnings, zero tgui interactions * 292 19 * final strech to buggy mess, break time * it compiles. It almost fucking certainly doesnt work, but it compiles * fudhsciffubgsbgpgb actions not working as should for modules * fuck it we'll just open the pr as we work on it * icons work now * tgui stuff * more progress * JUDGEMENT * IT LIVES. TGUI LIVES. Special thanks to Sirryan and my brother. * jetpacks, gps, and go do what exo-suits yourself * almost ready * sorry to whoever has to review this * should work™️ * should be good now * pushing changes so I can do reviews next * Apply suggestions from code review Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com> * lore™️ Adds illegals level to modsuit parts from syndicate. * early returns * and these illegals * no uplink reference idiot * mod inhands are a good idea * this is needed for inhands nerd * Bomb detector working, modsutis cover ears. skin things * overslotting removal, cyborg charging, ert loadout for gamma * duplicated signal * modsuit themes, removes broken mister / bad base type module, 2 cores in robotics. * tether module, orb module, holster stuff * built in no slip, cheaper 87 * removes modules already installed, engineer ert get jetpack, equip into modsuit storage * comments spaces and duplicate flags * Some adjustments and thoughts on armor, heads get guns because they are cool like that / looting command members armor * Apply suggestions from code review Co-authored-by: Ryan <80364400+Sirryan2002@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: Ryan <80364400+Sirryan2002@users.noreply.github.com> * Compile TGUI, slowdown adjustment, Modsuit to MODsuit * sonar, do after, more equipment, acid handling * overlay bugs / ERT / DS suits autodeploy * middle click action buttons * traders, sec modsuit energy nerf * surplus weighting * Kinesis module. * Pathfinder module, kinesis balance, blueprint for pathfinder and kinesis * more power / unused module removed * name, ds fix, pre equipped to cc suit * depot / grammer * ok should be good™️ * overslot, dupe gun, missing suit storage * stealth nerf, new kit * gun stuff / ds theme * bio armor is gone * let me push changes please thank you * makes shocks work right * copies over some changes TG made to module prices after porting * Merge remote-tracking branch 'upstream/master' into Because-I-hate-myself-and-someone-has-to-try-it- * sirryans changes Co-authored-by: Ryan <80364400+Sirryan2002@users.noreply.github.com> * Update code/modules/telesci/gps.dm Co-authored-by: Ryan <80364400+Sirryan2002@users.noreply.github.com> * Update code/modules/telesci/gps.dm Co-authored-by: Ryan <80364400+Sirryan2002@users.noreply.github.com> * Control define, ERT / DS have gloves / boots again. * Apply suggestions from code review Co-authored-by: Ryan <80364400+Sirryan2002@users.noreply.github.com> * More changes * god I hate tgui. Why do all the bundles live underground, instead of in my basement? * she updates my master till I testmerge * modsuits can recharge again * fixes a lot of shit * Ready for TM probably * sure fuck it whatever that makes sense I guess * the pinpointer works better™️ * Another storage module bug fix * hair and medical stuff * fuck fuck fuck * fixes sonar * Bag exploit fixes / plasma runtimes / ear nerf * dna lock improvement / cryostorage * whoops * Ball form second cooldown wasn't helping, no more infinite cores * she springs my lock till I ***SNAP*** * plasmaman no longer die * fixes modsuit emp issues * atmos no longer fucking dies * Fixes, module printing, and a restriction on newly constructed modsuits * Inventory code my hated * WOOO PREFERENCE CODE WOOOOO * icons my hated * fix for mods / spaceproof shit * holy shit whhhyyyyy * backpack first * Update mod_theme.dm * prevent infinite gun arms / infinite modsuit cores / syndicate modules * fixes tm error * scream loudly if species sprites break. They shouldn't, but, you know. * deconflicted with luck * converts to refit for species * fix pathfinder * fixes modsuits being funky power wise * lockboxes :gatto: , as well as DN-MP shield lock, and slight nerf to atmos modsuit * nerfs the atmos modsuit * magboots for ds / CC modsuit * downside of autosave: typing in wrong window saves bad stuff * Gamma ERT have internal cameras again. * spellcheck when * ah fuck * yes delete the null that works * whoops * fixes error / description * un vulps your cannon * fixes tails disapeering on base modsuits * space to underscore * tgui fix / tajaran * springlock buff, cryopod fix * u helps * WHO PUTS A GUN IN ITEMS * tgui moment * mining modsuit nerf / hidden holster module * PAIN * UNATHI TIDE STATION WIDE * I love special code * slightly dense * shark jumpscare * fixes ghost item, fixes springlock being bad * YIPPEEEE IT WORKED * she decons my flict * pain * ebbas days are numbered :^) * hidden * r-r-r-ebuild * fixes more bugs * qwerty, you are dense * fixes gps * fix mulebot crate * level fix * adds back icon * moving storage, fix bug, modules activate / deactivate message * yeah * yeah * yeah™️ * steels requests * windoors no longer make pathfinder module explode * chat spam * oil slicks + modsuits * whoops * bag check * ofc * Update code/modules/mod/mod_control.dm Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com> * Update code/datums/uplink_items/uplink_nuclear.dm Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com> * Update code/modules/mod/mod_control.dm Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com> * Update code/modules/mod/modules/module_pathfinder.dm Co-authored-by: S34N <12197162+S34NW@users.noreply.github.com> --------- Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com> Co-authored-by: Ryan <80364400+Sirryan2002@users.noreply.github.com> Co-authored-by: SteelSlayer <42044220+SteelSlayer@users.noreply.github.com> Co-authored-by: S34N <12197162+S34NW@users.noreply.github.com>
This commit is contained in:
co-authored by
Henri215
Ryan
S34N
SteelSlayer
parent
9108007709
commit
76a845d380
@@ -0,0 +1,127 @@
|
||||
/datum/action/item_action/mod
|
||||
background_icon_state = "bg_mod"
|
||||
button_icon_state = "bg_mod_border"
|
||||
icon_icon = 'icons/mob/actions/actions_mod.dmi'
|
||||
button_icon = 'icons/mob/actions/actions_mod.dmi'
|
||||
check_flags = AB_CHECK_CONSCIOUS
|
||||
use_itemicon = FALSE
|
||||
|
||||
/datum/action/item_action/mod/New(Target, custom_icon, custom_icon_state)
|
||||
..()
|
||||
if(!ismodcontrol(Target))
|
||||
qdel(src)
|
||||
|
||||
/datum/action/item_action/mod/Trigger(left_click, attack_self)
|
||||
if(!IsAvailable())
|
||||
return FALSE
|
||||
var/obj/item/mod/control/mod = target
|
||||
if(mod.malfunctioning && prob(75))
|
||||
to_chat(usr, "<span class='warning'>The module fails to activate!</span>")
|
||||
return FALSE
|
||||
return TRUE
|
||||
|
||||
/datum/action/item_action/mod/deploy
|
||||
name = "Deploy MODsuit"
|
||||
desc = "LMB: Deploy/Undeploy full suit. MMB: Deploy/Undeploy part."
|
||||
button_icon_state = "deploy"
|
||||
|
||||
/datum/action/item_action/mod/deploy/Trigger(left_click, attack_self)
|
||||
. = ..()
|
||||
if(!.)
|
||||
return
|
||||
var/obj/item/mod/control/mod = target
|
||||
if(left_click)
|
||||
mod.quick_deploy(usr)
|
||||
else
|
||||
mod.choose_deploy(usr)
|
||||
|
||||
/datum/action/item_action/mod/activate
|
||||
name = "Activate MODsuit"
|
||||
desc = "LMB: Activate/Deactivate suit with prompt. MMB: Activate/Deactivate suit skipping prompt."
|
||||
button_icon_state = "activate"
|
||||
/// First time clicking this will set it to TRUE, second time will activate it.
|
||||
var/ready = FALSE
|
||||
|
||||
/datum/action/item_action/mod/activate/Trigger(left_click, attack_self)
|
||||
. = ..()
|
||||
if(!.)
|
||||
return
|
||||
if(!ready && left_click)
|
||||
ready = TRUE
|
||||
button_icon_state = "activate-ready"
|
||||
addtimer(CALLBACK(src, PROC_REF(reset_ready)), 3 SECONDS)
|
||||
return
|
||||
var/obj/item/mod/control/mod = target
|
||||
reset_ready()
|
||||
mod.toggle_activate(usr)
|
||||
|
||||
/// Resets the state requiring to be doubleclicked again.
|
||||
/datum/action/item_action/mod/activate/proc/reset_ready()
|
||||
ready = FALSE
|
||||
button_icon_state = initial(button_icon_state)
|
||||
|
||||
/datum/action/item_action/mod/module
|
||||
name = "Toggle Module"
|
||||
desc = "Toggle a MODsuit module."
|
||||
button_icon_state = "module"
|
||||
|
||||
/datum/action/item_action/mod/module/Trigger(left_click, attack_self)
|
||||
. = ..()
|
||||
if(!.)
|
||||
return
|
||||
var/obj/item/mod/control/mod = target
|
||||
mod.quick_module(usr)
|
||||
|
||||
/datum/action/item_action/mod/panel
|
||||
name = "MODsuit Panel"
|
||||
desc = "Open the MODsuit's panel."
|
||||
button_icon_state = "panel"
|
||||
|
||||
/datum/action/item_action/mod/panel/Trigger(left_click, attack_self)
|
||||
. = ..()
|
||||
if(!.)
|
||||
return
|
||||
var/obj/item/mod/control/mod = target
|
||||
mod.ui_interact(usr)
|
||||
|
||||
/datum/action/item_action/mod/pinned_module
|
||||
desc = "Activate the module."
|
||||
icon_icon = 'icons/obj/clothing/modsuit/mod_modules.dmi'
|
||||
button_icon = 'icons/mob/actions/actions_mod.dmi'
|
||||
button_icon_state = "module"
|
||||
/// Module we are linked to.
|
||||
var/obj/item/mod/module/module
|
||||
/// A ref to the mob we are pinned to.
|
||||
var/pinner_uid
|
||||
|
||||
/datum/action/item_action/mod/pinned_module/New(Target, custom_icon, custom_icon_state, obj/item/mod/module/linked_module, mob/user)
|
||||
name = "Activate [capitalize(linked_module.name)]"
|
||||
desc = "Quickly activate [linked_module]."
|
||||
..()
|
||||
module = linked_module
|
||||
button_icon_state = module.icon_state
|
||||
if(linked_module.allow_flags & MODULE_ALLOW_INCAPACITATED)
|
||||
// clears check hands
|
||||
check_flags = AB_CHECK_CONSCIOUS
|
||||
Grant(user)
|
||||
|
||||
/datum/action/item_action/mod/pinned_module/Destroy()
|
||||
UnregisterSignal(module, list(COMSIG_MODULE_ACTIVATED, COMSIG_MODULE_DEACTIVATED, COMSIG_MODULE_USED))
|
||||
module.pinned_to -= pinner_uid
|
||||
module = null
|
||||
return ..()
|
||||
|
||||
/datum/action/item_action/mod/pinned_module/Grant(mob/user)
|
||||
var/user_uid = UID(user)
|
||||
if(!pinner_uid)
|
||||
pinner_uid = user_uid
|
||||
module.pinned_to[pinner_uid] = src
|
||||
else if(pinner_uid != user_uid)
|
||||
return
|
||||
return ..()
|
||||
|
||||
/datum/action/item_action/mod/pinned_module/Trigger(left_click, attack_self)
|
||||
. = ..()
|
||||
if(!.)
|
||||
return
|
||||
module.on_select()
|
||||
Reference in New Issue
Block a user