mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-01-13 18:33:22 +00:00
- I renamed some vars of datum/hud to be more selfexplanatory
- Moved all datum/hud mob code into the hud folder.
- fixed alien's zone selection button not using the correct sprites.
- I removed the update_hud() proc (that needed to be removed).
- Fixed a typo in /mob/living/carbon/ContractDisease , using "internals" instead of "internal" (very different things)
- Fixed doTeleport() calling Entered() twice on the destination area.
- To reference a mob's selected zone, you now use a direct mob var ("H.zone_selected" instead of "H.zone_sel.selecting")
- mobs lose certain screen objects var ("healths", "zone_sel", "internals", etc) which are now vars of the mob's datum/hud instead.
- the Blind spell is now done via the blind mutation instead of the blind disabilities.
- Give to mobs a version of forceMove(), so the mob is always properly unbuckled, his pull stopped, his vision updated, etc.
- The "user" var of mob/camera/aiEye/remote is renamed to "eye_user" to avoid confusion.
- reset_view() is replaced by reset_perspective(). Now all changes to client.eye and client.perspective are done with this proc.
- I reworked /obj/machinery/computer/security code, changing camera is instantaneous now, as well as cancelling.
- I reworked /obj/machinery/computer/camera_advanced code as well.
- I changed /obj/item/mecha_parts/mecha_equipment/mining_scanner's meson view to be constant instead of by intermittent.
- Fixes not being able to use /obj/item/device/camera_bug while buckled.
- removed admin_forcemove() proc, admin force moving now uses forceMove() simply.
- Removed the client var "adminobs"
- Added var/vision_correction to glasses.
- Added a thermal_overload() proc for glasses, to remove copypasta in emp_act code.
- Remove the hal_crit mob var
- We no longer delete the mob's hud everytime he logs in.
- Added a stat == dead check in mob's metabolize() so we immediately stop metabolizing if one of the chem kills the mob.
- Being inside disposal bin lowers your vision, like wearing a welding helmet.
- removed the remote_view mob var.
- I changed advanced camera EYE, some fixes, removed unnecessary code when the eye moves, now the mob client eye properly follows the camera mob.
- fixes mob var "machine" not being nullified on logout.
- larva/death() was calling two "living_mob_list -= src"
- I made the Blind screen objects into a global_hud instead of giving one to each mob (like damage overlay).
- I untied tint and eye_blind, TINT_BLIND doesn't give you eye_blind=1.
- gave a visual overlay when inside locker (vimpaired)
- when inside disposal/gas pipes you get sight |= (BLIND|SEE_TURFS)
- glasses toggling updates (atmos meson toggle): DONE
- The new adjust procs serve to properly change eye_blind etc and call vision update procs when needed.
- I added an on_unset_machine() proc to handle perspective reset for camera consoles.
- I moved consequences of eye_check fail inside eye_check() procs themselves.
- I fixed vision updates being fucked by forceMove, especially pipe vision.
- I decided that damage overlay not appearing when dead.
- mob's hud_used is no longer deleted on each login()
- I refactored mob huds a bit, creating subtypes for each mob (/datum/hud/human)
- f12's hud toggling is now available to all mobs
- gave borgs a low_power_mode var so unpowered borg do not use stat= UNCONSCIOUS (which made things weird since you were unconscious but not blind)
- Fixed double Area entering when forced teleporting.
- I fixed larva pulling not being broken when cuffing them, and larva not seeing handcuff alert (and they can resist by clicking it)
- I removed pull updates from life() since it onyl checked for puller's incapacitation.
- I renamed camera/deactivate() to toggle_cam() to be more accurate.
- I fixed mmi brain being immortal (by removing the brain and putting it back)
- I simplified mmi brain emp damage.
218 lines
5.0 KiB
Plaintext
218 lines
5.0 KiB
Plaintext
/obj/screen/ai
|
|
icon = 'icons/mob/screen_ai.dmi'
|
|
|
|
/obj/screen/ai/aicore
|
|
name = "AI core"
|
|
icon_state = "ai_core"
|
|
|
|
/obj/screen/ai/aicore/Click()
|
|
var/mob/living/silicon/ai/AI = usr
|
|
AI.view_core()
|
|
|
|
/obj/screen/ai/camera_list
|
|
name = "Show Camera List"
|
|
icon_state = "camera"
|
|
|
|
/obj/screen/ai/camera_list/Click()
|
|
var/mob/living/silicon/ai/AI = usr
|
|
var/camera = input(AI, "Choose which camera you want to view", "Cameras") as null|anything in AI.get_camera_list()
|
|
AI.ai_camera_list(camera)
|
|
|
|
/obj/screen/ai/camera_track
|
|
name = "Track With Camera"
|
|
icon_state = "track"
|
|
|
|
/obj/screen/ai/camera_track/Click()
|
|
var/mob/living/silicon/ai/AI = usr
|
|
var/target_name = input(AI, "Choose who you want to track", "Tracking") as null|anything in AI.trackable_mobs()
|
|
AI.ai_camera_track(target_name)
|
|
|
|
/obj/screen/ai/camera_light
|
|
name = "Toggle Camera Light"
|
|
icon_state = "camera_light"
|
|
|
|
/obj/screen/ai/camera_light/Click()
|
|
var/mob/living/silicon/ai/AI = usr
|
|
AI.toggle_camera_light()
|
|
|
|
/obj/screen/ai/crew_monitor
|
|
name = "Crew Monitoring Console"
|
|
icon_state = "crew_monitor"
|
|
|
|
/obj/screen/ai/crew_monitor/Click()
|
|
var/mob/living/silicon/ai/AI = usr
|
|
crewmonitor.show(AI)
|
|
|
|
/obj/screen/ai/crew_manifest
|
|
name = "Crew Manifest"
|
|
icon_state = "manifest"
|
|
|
|
/obj/screen/ai/crew_manifest/Click()
|
|
var/mob/living/silicon/ai/AI = usr
|
|
AI.ai_roster()
|
|
|
|
/obj/screen/ai/alerts
|
|
name = "Show Alerts"
|
|
icon_state = "alerts"
|
|
|
|
/obj/screen/ai/alerts/Click()
|
|
var/mob/living/silicon/ai/AI = usr
|
|
AI.ai_alerts()
|
|
|
|
/obj/screen/ai/announcement
|
|
name = "Make Announcement"
|
|
icon_state = "announcement"
|
|
|
|
/obj/screen/ai/announcement/Click()
|
|
var/mob/living/silicon/ai/AI = usr
|
|
AI.announcement()
|
|
|
|
/obj/screen/ai/call_shuttle
|
|
name = "Call Emergency Shuttle"
|
|
icon_state = "call_shuttle"
|
|
|
|
/obj/screen/ai/call_shuttle/Click()
|
|
var/mob/living/silicon/ai/AI = usr
|
|
AI.ai_call_shuttle()
|
|
|
|
/obj/screen/ai/state_laws
|
|
name = "State Laws"
|
|
icon_state = "state_laws"
|
|
|
|
/obj/screen/ai/state_laws/Click()
|
|
var/mob/living/silicon/ai/AI = usr
|
|
AI.checklaws()
|
|
|
|
/obj/screen/ai/pda_msg_send
|
|
name = "PDA - Send Message"
|
|
icon_state = "pda_send"
|
|
|
|
/obj/screen/ai/pda_msg_send/Click()
|
|
var/mob/living/silicon/ai/AI = usr
|
|
AI.cmd_send_pdamesg(usr)
|
|
|
|
/obj/screen/ai/pda_msg_show
|
|
name = "PDA - Show Message Log"
|
|
icon_state = "pda_receive"
|
|
|
|
/obj/screen/ai/pda_msg_show/Click()
|
|
var/mob/living/silicon/ai/AI = usr
|
|
AI.cmd_show_message_log(usr)
|
|
|
|
/obj/screen/ai/image_take
|
|
name = "Take Image"
|
|
icon_state = "take_picture"
|
|
|
|
/obj/screen/ai/image_take/Click()
|
|
if(isAI(usr))
|
|
var/mob/living/silicon/ai/AI = usr
|
|
AI.aicamera.toggle_camera_mode()
|
|
else if(isrobot(usr))
|
|
var/mob/living/silicon/robot/R = usr
|
|
R.aicamera.toggle_camera_mode()
|
|
|
|
/obj/screen/ai/image_view
|
|
name = "View Images"
|
|
icon_state = "view_images"
|
|
|
|
/obj/screen/ai/image_view/Click()
|
|
if(isAI(usr))
|
|
var/mob/living/silicon/ai/AI = usr
|
|
AI.aicamera.viewpictures()
|
|
else if(isrobot(usr))
|
|
var/mob/living/silicon/robot/R = usr
|
|
R.aicamera.viewpictures()
|
|
|
|
/obj/screen/ai/sensors
|
|
name = "Sensor Augmentation"
|
|
icon_state = "ai_sensor"
|
|
|
|
/obj/screen/ai/sensors/Click()
|
|
var/mob/living/silicon/S = usr
|
|
S.sensor_mode()
|
|
|
|
|
|
/datum/hud/ai/New(mob/owner)
|
|
..()
|
|
var/obj/screen/using
|
|
|
|
//AI core
|
|
using = new /obj/screen/ai/aicore()
|
|
using.screen_loc = ui_ai_core
|
|
static_inventory += using
|
|
|
|
//Camera list
|
|
using = new /obj/screen/ai/camera_list()
|
|
using.screen_loc = ui_ai_camera_list
|
|
static_inventory += using
|
|
|
|
//Track
|
|
using = new /obj/screen/ai/camera_track()
|
|
using.screen_loc = ui_ai_track_with_camera
|
|
static_inventory += using
|
|
|
|
//Camera light
|
|
using = new /obj/screen/ai/camera_light()
|
|
using.screen_loc = ui_ai_camera_light
|
|
static_inventory += using
|
|
|
|
//Crew Monitoring
|
|
using = new /obj/screen/ai/crew_monitor()
|
|
using.screen_loc = ui_ai_crew_monitor
|
|
static_inventory += using
|
|
|
|
//Crew Manifest
|
|
using = new /obj/screen/ai/crew_manifest()
|
|
using.screen_loc = ui_ai_crew_manifest
|
|
static_inventory += using
|
|
|
|
//Alerts
|
|
using = new /obj/screen/ai/alerts()
|
|
using.screen_loc = ui_ai_alerts
|
|
static_inventory += using
|
|
|
|
//Announcement
|
|
using = new /obj/screen/ai/announcement()
|
|
using.screen_loc = ui_ai_announcement
|
|
static_inventory += using
|
|
|
|
//Shuttle
|
|
using = new /obj/screen/ai/call_shuttle()
|
|
using.screen_loc = ui_ai_shuttle
|
|
static_inventory += using
|
|
|
|
//Laws
|
|
using = new /obj/screen/ai/state_laws()
|
|
using.screen_loc = ui_ai_state_laws
|
|
static_inventory += using
|
|
|
|
//PDA message
|
|
using = new /obj/screen/ai/pda_msg_send()
|
|
using.screen_loc = ui_ai_pda_send
|
|
static_inventory += using
|
|
|
|
//PDA log
|
|
using = new /obj/screen/ai/pda_msg_show()
|
|
using.screen_loc = ui_ai_pda_log
|
|
static_inventory += using
|
|
|
|
//Take image
|
|
using = new /obj/screen/ai/image_take()
|
|
using.screen_loc = ui_ai_take_picture
|
|
static_inventory += using
|
|
|
|
//View images
|
|
using = new /obj/screen/ai/image_view()
|
|
using.screen_loc = ui_ai_view_images
|
|
static_inventory += using
|
|
|
|
|
|
//Medical/Security sensors
|
|
using = new /obj/screen/ai/sensors()
|
|
using.screen_loc = ui_ai_sensor
|
|
static_inventory += using
|
|
|
|
|
|
/mob/living/silicon/ai/create_mob_hud()
|
|
if(client && !hud_used)
|
|
hud_used = new /datum/hud/ai(src) |