Commit Graph

1296 Commits

Author SHA1 Message Date
Heroman3003
d55c465d51 Merge pull request #15172 from Runa-Dacino/event_notify
Adds(feature): Triggerable Landmarks for Event-help
2023-07-30 04:51:45 +10:00
Runa Dacino
6b0adb782f tweak(Event Triggers): Implements requested changes
- Merges Personal, Vis and Aud checks into a single var
- Removes excessive isObserver check
- Permits removing other staff's stuff with an explicit confirmation and request to ask them first
- Removes Invisibility = 100 setting from new()
- Adds check for potential null responses
- Clarifies comment in type definition.
2023-07-29 14:05:59 +02:00
Heroman3003
310a2a3b47 Merge pull request #15182 from Runa-Dacino/entity_narrate_tweak2
perf: replaces references in entity narrate with weakrefs
2023-07-29 20:39:59 +10:00
Runa Dacino
fd584eee32 perf: replaces references in entity narrate with weakrefs
Replaces all direct references held in the /datum with WEAKREF(atom). This should reduce potential lag impacts from stuff getting blown up or dying or becoming invalid.
2023-07-27 13:36:13 +02:00
Runa Dacino
6e087c1328 tweak: Adds ability to add atoms to entity narrate while in buildmode
- Adds "ALT MMB" under "AI MODE" in buildmode to bring up add_mob_for_narration verb
- Updates Hint with new information
- Fixes bad hint for wander toggle (Shift-> CTRL for NOT wander)
2023-07-25 12:08:40 +02:00
Runa Dacino
04778c9e99 tweak(entity_narrate): Enables using ++, __, and || for all atoms
wraps message for non-mob entities in encode_html_emphasis after learning it exists
2023-07-24 17:43:13 +02:00
Runa Dacino
694a5b617b Adds(feature): Triggerable Landmarks for Event-help
- Adds a new verb to staff with FUN permissions under the eventkit tab
     - name: "Manage Event Triggers"
     - Permits creating "Notification" and "Narration" landmarks
     - Permits deleting/teleporting to self-created landmarks at any time
     - Permits deleting other staff's landmarks if DC'd/Inactive
     - Permits teleporting to other staff's landmarks at any time
(the landmark management buttons I couldn't implement without code repetition due to managing others' landmarks needing (imo) admin logging)
 - Adds new landmark subtype: event_trigger
     - Handles notification of staff/team depending on options
     - May autodelete if requested
     - Makes a loud bwoink at the creator if requested
     - Is triggered by the base DM proc /Crossed(var/atom/movable/AM)
     - Ghosts and NPCs don't trigger it.
 - Adds a subtype of event_trigger, auto_narrate
     - Adds functionality to automatically print a normal/red message to player entering the turf with the landmark.
     - Alternatively, allows creating a visible/audible message when the turf is triggered
     - Inherits all behaviours of event_trigger otherwise
  -Adds new global list, "event_triggers"
      - It is an associative list of key:list(element1,element2,element3) form
      - key is the staffmember's ckey, elements are references to event_trigger landmarks they created
2023-07-24 17:38:11 +02:00
Runa Dacino
5579f7f324 tweak(entity narrate): makes non-mob atoms use "The" in narration
Makes it so non-mob atoms with either \improper names, or lowercase names or names without "The" become preceeded by "The" when narrated using loud & talk, loud & emote, not-loud & talk, not-loud & emote.

Preceeding with lower case "the" causes doubling of "the", but that's a general byond issue and is solved by proper capitalization or use of \proper and it causing issues here would cause issues elsewhere anyway.

Done per request from ResidentCody
2023-07-01 11:22:11 +02:00
Selis
271ff9408f Spell Fixes 2023-06-18 12:47:36 +02:00
Heroman3003
3f0a1a4e69 Merge pull request #14987 from Runa-Dacino/alternatesolution
Alternate to https://github.com/VOREStation/VOREStation/pull/14959 New Admin verb: Report Player Status
2023-06-10 14:05:36 +10:00
Runa Dacino
f46af8ba0d Merge branch 'master' into entity_narration_TGUI 2023-06-09 09:58:35 +02:00
Runa Dacino
a9cbd8fa4f New Admin verb: Report Player Status
* Adds a new verb in the "EventKit" tab
* New verb copies player_list and sorts it into an assoc list of area:(players)
* It then prints out each area's list of players, giving their (x,y) coordinates
* It also notifies of how long since their last action, rounded to nearest minute
* Players who took ABSOLUTELY NO ACTION for 15 minutes are pruned to reduce clutter
* Tracks pruned players, players who are actually in-game as mob/living
* Reports this as well.
2023-06-07 17:11:45 +02:00
Runa Dacino
fd7e89f011 entity_narrate: Minor tweaks
* Removed special protection for mobs with clients
* * Instead, the GM is warned not to abuse this and each use will be logged
* * Added logging everywhere we previously used return or continue to prevent client narration
* * Kept !!!Player!!! typing rather than showing their actual path
* Added prevention of duplicate entity names.
* * Recursively calls the add entity proc until cancelled or a valid name is given
* Only sanitizes the message after it's passed to mob_args() for basic interface, and only for non-mob ones as mob one calls procs that sanitize the input themselves
* Likewise for TGUI, sanitization is only done within the actual narration proc to avoid double sanitization breaking things.
* While at it, I re-introduced [mode] to classic input's instruction string. I had it originally, then removed it while pruning code duplication. I realize I can add it back now.
2023-06-06 17:43:57 +02:00
ItsSelis
10d2178516 More 515 Compatibility 2023-06-05 19:29:40 +02:00
Runa Dacino
ae92270cc2 Extends entity narrate functionality with TGUI
*Adds all the necessary procs for TGUI functionality as backend
*Creates EntityNarrate.tsx
*Extends entity_narrate datum with helper vars for TGUI
*TGUI window now allows:
* * Multi Selection
* * Single Selection
* * It shows details if single
* * It shows how many if multi
* * Allows picking between subtle/loud
* * Allows picking between talk/emote
* * Allows sending messages every 0.5 seconds
* * Uses new textbox feature to make editing and tracking narration easy!
2023-06-05 17:25:14 +02:00
Runa Dacino
d71653c9b6 Adds functionality to buildmode's AI mode to adjust a.i wander behavior
* Works by clicking on ANY object/turf/mob
* MMB + Shift = Wander
* MMB + CTRL = NOT wander
* Adds this info to help button
2023-06-03 18:41:33 +02:00
Runa Dacino
4ab3c8f882 Adds sanitization, reduces code duplication
* Makes entity_narrate() call entity_narrate_args() with input gleaned from user interface
* Sanitizes text input. Multiple times: custom IDs are sanitized on creation
* Interface text input sanitized on input
* Sanitizes arguments of argument based function as well
* Enables multi-line text input when making messages using interface.
* Multiline also works with commandline tool using \n
2023-06-02 16:39:10 +02:00
Runa Dacino
5bcc0a2d5d Extends functionality to include turfs
* Changed type checks to check for /atom for non-mobs
* Changed static typing to use /atom for non-mobs
* Rearranged code logic where relevant so we only check for /atom if mob/living came out invalid
* Added a guard clause against observers on adding a ref. Only added to this as there's hopefully no way to access ghosts with the remaining procs
* Also added "Remove All" as an option for removing refs. It requires confirmation.
2023-06-01 21:31:52 +02:00
Runa Dacino
6c2ee4a4ce Adds a set of new admin verbs for narrating (obj &mob)
*Adds verbs to client: Narrate Entity, ... (Add ref), ... (Remove ref), ... (Interface)
* Adds new Client var to hold reference to entity_narrate datum instance
*Creates entity_narrate datum to hold list of unique/custom entity names, and an assoc list of name:atomref
* All listed client verbs initialize the datum onto the client var for later use when first used
* User is expected to right click mobs within viewrange to add them to ref list
* User is prompted to create a unique identifier to generate the key:value pair
* User may either request an interface to do the narration (interface)
* User may alternatively go narrate-mob "identifier" "speak/emote" "narration" into command line
* In case of argument call, message may be ommited to bring up non-multiline tgui_input_text
* User may remove entities from their personal list at will
* Users adding entities to their personal list are logged
* Users attempting to add players to their personal list are likewise logged
* Users succeeding despite this are logged if they try to speak for them
* If type is mob/living, it uses .say and .custom_emote() procs
* .say uses the mob's languages, stutters and so forth
* if type is obj/, user must specific speech verb when composing narration.
* User may narrate from any range.
* Each proc checks for R_FUN permission and prevents using if lacking rights
2023-06-01 17:41:37 +02:00
Casey
db38041456 Merge pull request #14641 from Heroman3003/admin-perm-fixes-also-sound
Fixes some admin perms not being properly checked
2023-03-09 15:33:21 -05:00
Heroman
5ec9f5ea62 Fixes some admin perms not being properly checked 2023-03-09 14:27:19 +10:00
Seris02
aadd99ba94 more fixed admin hrefs 2023-03-01 11:27:34 +08:00
C.L
5ddab5e959 Removes ability for Retired Admins to see staff chats.
Does exactly what it says on the tin.
2023-02-11 13:47:23 -05:00
Heroman
f2e04e6bdf Adds new admin character spawn method 2023-01-13 15:11:20 +10:00
Heroman
64149a5d5b Adds fireworks and their launchers 2022-12-25 21:15:33 +10:00
Heroman
d5ef5d6a05 Gives borgs access to human emotes 2022-12-19 06:33:30 +10:00
ItsSelis
779b4db5c0 Added missing href tokens 2022-12-14 21:08:49 +01:00
Heroman3003
3537c20742 Merge pull request #14188 from ItsSelis/selis-admin-tokens
Adds admin tokens
2022-12-12 05:40:48 +10:00
ItsSelis
b3b64e49d6 Adds mentor panel 2022-12-11 17:51:21 +01:00
ItsSelis
cc3659c048 More conversions 2022-12-11 14:31:02 +01:00
Heroman
291ba2f736 Adjusts smite list 2022-11-27 08:25:59 +10:00
Selis
4d89cfa28f Update adminhelp.dm 2022-11-05 11:03:18 +01:00
Casey
24f9621eba Merge pull request #13855 from Cameron653/overlay_madness
Upgrades OverlaySS. Fixes #3627
2022-10-09 23:02:01 -04:00
C.L
e85bdb061b Upgrades OverlaySS. Fixes #3627
Tested on my test server and nothing appeared to be broken. Overlays were showing up as expected.

Ghosts no longer became space/stairs/stole someone's tail
2022-10-05 11:16:58 -04:00
ItsSelis
fb27bd83e2 fallback proc now calls parent 2022-10-03 23:10:36 +02:00
ItsSelis
28e3a264b5 Updated bundle 2022-10-03 23:05:38 +02:00
ItsSelis
6159825d83 AdminTicketPanel 2022-10-02 23:33:57 +02:00
Casey
420957ffec Merge pull request #13828 from Cameron653/BUILDABLE_SHUTTLES
Blueprint Revamp.
2022-10-02 13:59:10 -04:00
Casey
73d3802786 Merge pull request #13825 from Cameron653/rcon_sanitization
Sanitization
2022-10-02 13:58:21 -04:00
C.L
0f7f886ae1 Adds innate ability for people to create small areas
With paper.
Also adds two Southern Cross areas to the lists.
Also makes some global procs for ultra-quick area generation that anything can use and badmins can call.
https://i.imgur.com/wnm3joF.png
Removes a debug message
2022-10-01 23:27:49 -04:00
C.L
29e354c55e Fixes buildmode.
- Allows for the creation of areas via build mode.
- If an area is made via buildmode, the area will be fully lit. This is the only compromise I could do it as space areas worked fine when turned into new areas, but preexisting areas bugged out massively and were full dark (just like it currently is on live)
2022-10-01 01:43:55 -04:00
C.L
6236a13194 Sanitization and better TGUI utilization
- Sanitizes some more things so you can't put HTML into it.
- Utilizes TGUI better to show the user the max they can post.
- Limits some things like circuits so you can't insert 50000 characters.
2022-09-29 23:02:23 -04:00
C.L
c4c1388186 Get those debug comments outta here! 2022-09-28 23:56:33 -04:00
C.L
fac651dee9 Fixes build mode and makes it not terrible.
- Makes Basic build mode warn you before you delete the ground and space everyone
- Makes Basic build mode turn the turf you deleted into the base turf for the area. If area is not available, it goes with the base turf of the Z level.
- Makes Advanced build mode start with Null. No more spawning lockers and qdel()ing players!
- Fixes a longstanding bug where if you cancelled selection in build mode and then tried to select something from the list, it defaulted to a locker. Instead, if you cancel it, it defaults back to null and lists work like normal.
2022-09-28 23:54:07 -04:00
Novacat
607d730743 Merge pull request #13738 from Heroman3003/admin-runtimes
Fixes some adminverb runtimes
2022-09-15 09:51:15 -04:00
Heroman
11f3b1752a Fixes max_z_changed call 2022-09-15 15:39:07 +10:00
Heroman
0c9cd7a7ff Fixes some adminverb runtimes 2022-09-15 15:37:12 +10:00
Heroman
93c2ce978a Fixes runtime with weather 2022-09-15 15:01:48 +10:00
Heroman
889b7eca8d Fixes runtime with admin spice 2022-09-13 18:41:26 +10:00
Heroman
348f184abb Fixes a pair more things 2022-09-07 17:12:37 +10:00