It bothered me that there was no hotkey for emote that wasn't on the
function row. Y is now me. Activate-held-item is now only Z instead of Z
and Y.
The hotkeys-help verb in OOC tab is changed to include the changes
above, and the previously unmentioned function row hotkeys that are
pertinent to players. (Admin verbs are unmentioned)
Now indicator will disappear if for 30 seconds contents of chatbar didn't change.
Moved all relevant vars to the typing_indicator.dm
Added 'typing' var, as 'if(!(typing_indicator in overlays))' didn't work and overlays kept being added forever.
Fixed preference toggle feedback being backwards.
Fixed wrong verb called in hotkeys mode.
It's toggleable as client preference.
Displays dots(codersprite) near the mob when he starts typing a message.
Detects chatline me and say via checking contents.
Detects shortcut input me an say via hacky wrapper that's called now instead of direct say/me verbs.
-Changed the broadcast function using a precreated human. The human would still be existing and a new one was created for every use of the broadcast. Garbage collecting it was almost impossible and deleting it everytime a broadcast is made would be laggy so I modified the broadcast code to not need a mob reference.
-Added some checks in the events.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5477 316c924e-a436-60f5-8080-3fe189b3f50e
They include such procs as sanitize_integer(num, min, max, default) which will check num is a number, round num to make it an integer, then check if it is between min and max (inclusive). If it fails the bound-checks it will return default. There are others, have a look.
PERSISTENT PREFERENCES: Every ckey which connects to the game gets its own persistent /datum/preferences datum.
It is archived in var/list/preferences_datums = list("ckey" = datum)
At connect it is automatically associated with the client defines.dm (or a new one is created if it can't find an archived prefs datum). This means clients will ALWAYS have a var/datum/preferences/prefs which references this datum. So you can use it without checking if(client.prefs)
This has simplified only a few bits of code. It will however, allow us to make preferences like see_deadchat ghost_ears etc, persistent. So they will not reset when you DC.
SAVEFILES: Changed the player savefile code a lot. Hopefully I've not fucked it up too much. Every single variable loaded from saves is now sanity checked using the new sanity procs. This should help prevent savefiles becomming obsolete by sanitizing input to meet current requirements, without deleting all the ok variables and making you start from scratch >_> NOTE: I still need to sort out the savefile version stuff. I'll probably figure it out before the server updates anyway. It sees to be fine without it.
You can no longer choose your blood type. It is randomised (with each bloodtype having a realistic probability of occuring). This is to make blood analysis (detective/medical) less pointless. It is chosen as soon as you connect. It remains persistent throughout each round so you won't be able to change it by logging in/out over and over.
Replaces some copypasta code with is_afk() (still a fair bit to do)
There are new hyperlink shortcut things. _src_=vars will direct your hyperlink to viewvars. _src_=prefs to your preferences datum. (These are the only way to access those bits of code via links). This means that the overall amount of operations in almost every Topic has pretty much halved and is much prettier.
Replaced and removed adminplayervars from datum/admins/Topic. It was superfluous. They now all point directly to the viewvars code using _src_=vars
Removed the changelog popup at round start. Instead a button on your game-window will glow white if there are new updates. To peruse at your convenience. This will speed up connect times.
Removed the AFK_THRESHOLD define. It is integrated into is_afk() now.
TODO: remove the prefs stuff from mobs and clients and update code to use client.prefs to access that info.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5121 316c924e-a436-60f5-8080-3fe189b3f50e
Replaced usr references with mob
This means it can be called as a proc for any mob to use that code. Updated the click-procs to use this as they were using slightly different code.
Fixed an issue with AIs using the intent hotkeys
Added more sanity checks to it.
Insert key uses the same code as other hotkeys.
Commented out some unused hud-code from when we had separate intent buttons.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4766 316c924e-a436-60f5-8080-3fe189b3f50e
Added a activate held item hotkey
Added intent hotkeys to 1 2 3 and 4 keys.
hotkeys-help for details.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4759 316c924e-a436-60f5-8080-3fe189b3f50e
Hotkey-Mode: (hotkey-mode must be on)
TAB = toggle hotkey-mode
a = left
s = down
d = east
w = up
q = drop
e = equip
r = throw
t = say
x = swap-hand
f = cycle-intents-left
g = cycle-intents-right
Normal-Mode: (hotkey doesn't need to be on)
Ctrl+a = left
Ctrl+s = down
Ctrl+d = east
Ctrl+w = up
Ctrl+q = drop
Ctrl+e = equip
Ctrl+r = throw
Ctrl+x = swap-hand
Ctrl+f = cycle-intents-left
Ctrl+g = cycle-intents-right
Admin:
F5 = toggle-admin-observe (WIP)
F6 = player-panel-new
F7 = admin-pm
F8 = (WIP)
Regular controls aren't affected.
There's an additional option to press the TAB key to switch into a hotkey-mode. It's a toggle, so it stays on until you press it again. It switches focus between the map and input-bar for you. This mode defaults to off so you won't even notice it unless you decide to toggle it on with the TAB key. Whilst using this hotkey mode you get additional options like pressing "T" to say something.
The mode switching (TAB key) is completely client-sided.
http://nanotrasen.com/phpBB3/viewtopic.php?f=15&t=10024
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4686 316c924e-a436-60f5-8080-3fe189b3f50e
- Renamed the obj/hud show_otherinventory var to inventory_shown
- Added the F12 hotkey which hides most of the UI except for the intent switcher, hands, health indicator, damage indicators and the other pop-in indicators on the right. The proc is called /mob/verb/button_pressed_F12(), the verb abbreviation is "F12" and it's hidden, so it won't show in the info panel. This currently only works for human mobs.
Screenshot:
http://www.kamletos.si/minimal%20UI.png
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3926 316c924e-a436-60f5-8080-3fe189b3f50e
Rules verb moved to the interface to make it more visible (so new players may actually -read- it occasionally).
Minor changes to investigate singulo based on feedback. Entries are now timestamped and the "time \ref[src] (location)" bit is in a smaller font. Collectors note how much fuel they are loaded with.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3687 316c924e-a436-60f5-8080-3fe189b3f50e
- New hotkeys: Delete is the 'stop dragging' button and insert cycles through intents.
- Added some user feedback messages to the drop, throw, stop-dragging and cycle-intents hotkeys.
- Added the hotkeys thing to the changelog.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3631 316c924e-a436-60f5-8080-3fe189b3f50e
Set the urls within config.txt. Both buttons do nothing by default, you have to set the urls yourself.
Removed two unused txt files that I forgot to remove.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3502 316c924e-a436-60f5-8080-3fe189b3f50e
▫ Signals can now be rejected by Subspace broadcasters through a specific data[] parameter.
▫ Improved the log browser.
▫ Log browsers and telecommunication monitors no longer require access to use. You do need access to delete logs, however.
▫ Intercoms need power to work. They don't drain power, they just need a constant flow of equipment power. As such, that offline intercom sprite's now finally being put to use.
Scripting language:
▫ Sorry about all the files; they're all necessary! It's important to notice that the basic structure of the scripting language code is not mine; I cannibalized the base structure from some obscure BYOND project. It's pretty well documented, and I'd say easier to browse through than atmos. Here's the basic deal:
A compiler datum manages the relationships between the three main subsystems of a scripting language: the Scanner, the Parser, and the Interpreter. The Scanner splits raw text into token datums that the Parser can read. The Parser transforms the otherwise random bits and strings into ordered AST Trees and nodes for the Interpreter to read. The interpreter actually executes the code and handles scope/functions/code blocks.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3193 316c924e-a436-60f5-8080-3fe189b3f50e
Pretty sure everyone who cares knows about this already, but the low down is that shit is more responsive and potentially prettier.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2529 316c924e-a436-60f5-8080-3fe189b3f50e
Added a sprite for welded vents. (Original courtesy of Cheridan)
Added an overlay for connected canisters. (Thanks to ruarai)
Updated one of the AI statuses to be animated.
Fixed the original style hotkeys.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2409 316c924e-a436-60f5-8080-3fe189b3f50e
The new list of hotkeys is as follows: (Valid as of 21.10.2011)
Numpad with Num Lock enabled = movement in wanted direction.
Numpad with Num Lock disabled = as it was before. movement north-south-east-west and throw, drop, swap hands, use item on itself.
Page up (also numpad 9 with num lock disabled) = swap hands
Page down (also numpad 3 with num lock disabled) = drop
home (also numpad 7 with num lock disabled) = throw
end (also numpad 1 with num lock disabled) = use item in hand on itself
CTRL + A = throw
CTRL + S = swap hands
CTRL + D = drop
CTRL + W = use item in hand on itself
Numpad divide (/) = throw
Numpad multiply (*) = swap hands
Numpad subtract (-) = drop
Numpad add (+) = use item in hand on itself
In short, use Num Lock to swap between the two layouts.
Changelog updated with the change above.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2407 316c924e-a436-60f5-8080-3fe189b3f50e
CTRL + A = throw
CTRL + S = swap hands
CTRL + D = drop
CTRL + W = use item in hand on itself
Numpad divide (/) = throw
Numpad multiply (*) = swap hands
Numpad subtract (-) = drop
Numpad add (+) = use item in hand on itself
Changelog updated with this information.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2387 316c924e-a436-60f5-8080-3fe189b3f50e
The upper right panel, where the verbs usually are now has two functions, verbs and the browser. This feature has been added to hopefully reduce the number or pop-ups that appear. Currently only request consoles and vending machines use this feature. I'll wait for feedback and then update the rest, if feedback is positive.
Also removed the redcoat spawn pack... The redcoat suit is MINE.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2170 316c924e-a436-60f5-8080-3fe189b3f50e
Implemented CTRL+DIRECTION KEY to face a direction.
Tweaked some drink icons.
Added in two new icon_states to genetics.dmi. It doesn't do anything yet, but I might toy with them later on.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@1954 316c924e-a436-60f5-8080-3fe189b3f50e
Luminosity
Admins editing the luminosity var now properly uses sd_SetLuminosity().
Britcup
A cup spawns for Kingston in hydroponics.
Taser guns
New sprites, courtesy of Arcalane. Now with an actual 4-shot gauge!
Interface
16x16 mode re-enabled for shits and giggles.
Mining
Reverted the uranium ore sprite.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@1507 316c924e-a436-60f5-8080-3fe189b3f50e