Commit Graph

245 Commits

Author SHA1 Message Date
vuonojenmustaturska
40657c9ccd removes a bunch of unused/bad helpers (#48969)
* a commit

* Update code/controllers/subsystem/persistence.dm

Co-Authored-By: Emmett Gaines <ninjanomnom@gmail.com>

* Update code/__HELPERS/text.dm

Co-Authored-By: Emmett Gaines <ninjanomnom@gmail.com>

* Update advance.dm

* Update security_officer.dm

* Update text.dm

* Update unsorted.dm

Co-authored-by: Emmett Gaines <ninjanomnom@gmail.com>
2020-01-28 16:22:20 +01:00
MrPerson
f7eb2c905b Unicode awareness Part 2 -- copytext() (#48512)
* Unicode support Part 2 -- copytext()

This is the transition of all copytext() calls to be unicode aware and also some nearby calls in the same functions. Most things are just replacing copytext() with copytext_char() as a terrible character limiter but a few others were slightly more involved.

I replaced a ton of
````
var/something = sanitize(input())
something = copytext(something, 1, MAX_MESSAGE_LEN)
````

with a single stripped_input() call. stripped_input() already calls html_encode(), trim(), and some other sanitization so there shouldn't be any major issues there.

This is still VERY rough btw; DNA is a mess, the status displays are complete ass, there's a copytext() in code\datums\shuttles.dm that I'm not sure what to do with, and I didn't touch anything in the tools folder. I haven't tested this much at all yet, I only got it to compile earlier this morning. There's also likely to be weird bugs until I get around to fixing length(), findtext(), and the rest of the string procs.

* Makes the code functional

* Assume color hex strings are always # followed by ascii.
Properly encodes and decodes the stuff in mob_helpers.dm which fixes some issues there.

* Removes ninjaspeak since it's unused
2020-01-18 13:07:22 +13:00
Rob Bailey
2029163d33 playsound vary boolean define conversion (#46254)
About The Pull Request

Converts every single usage of playsound's vary parameter to use the boolean define instead of 1 or 0. I'm tired of people copypasting the incorrect usage.
Also changes a couple of places where a list was picked from instead of using get_sfx internal calls

This was done via regex:
(playsound\(.+,.+,.+, ?)1( ?\)| ?,.+\)) to match 1
(playsound\(.+,.+,.+, ?)0( ?\)| ?,.+\)) to match 0
full sed commands:
/(playsound\(.+,.+,.+, ?)1( ?\)| ?,.+\))/\1TRUE\2/ 1 to TRUE
/(playsound\(.+,.+,.+, ?)0( ?\)| ?,.+\))/\1FALSE\2/ 0 to FALSE

I'm not very good with regex and these could probably be optimized, but they worked.
Why It's Good For The Game

Code usability
2019-08-30 18:45:20 +12:00
XDTM
86f184a802 Quantum teleportation makes rainbow sparks (#44664)
About The Pull Request

Happy pride month

Jokes aside, since its addition quantum teleportation has always had a rapidly-changing-rainbow motif, i thought that making the sparks behave in the same way would be cool now that we have teleport flags.
Side change: non-bluespace teleportation no longer makes sparks by default.
Changelog

cl
tweak: Quantum teleportation now makes pretty rainbow sparks instead of the normal ones.
fix: Non-bluespace teleportation (spells etc.) no longer makes sparks.
/cl
2019-06-24 10:50:33 +12:00
XDTM
0db7ebc745 Fixes teleportation deleting mob spawners (#44602) 2019-06-18 23:12:12 -04:00
vuonojenmustaturska
b2c848bac8 Removes /datum/topic_input, a helper datum for assoc lists (#43970)
* oh no

* henk
2019-05-16 14:47:47 +02:00
vuonojenmustaturska
fb45b7a017 Turns trait accessors into defines, fixes some bugs (#43820)
It's free performance.
2019-05-06 19:44:05 -04:00
Tad Hardesty
6fe3cd6da3 Fix server startup not actually logging testmerge commits (#43372) 2019-03-28 01:55:12 -04:00
4dplanner
87ba21090c Megafauna cannot teleport (#42479)
Megafauna cannot teleport
2019-01-25 10:17:54 -05:00
Jordan Brown
f1d22a017e Fix TGS stuff (#41806)
Closes #41794
2018-12-10 14:50:48 +13:00
monster860
376a6eddc6 Makes teleports use forceMove by default 2018-12-09 15:29:31 -05:00
nichlas0010
d21931aafa Fix wizards being unable to teleport (#41738) 2018-11-30 13:46:54 -08:00
Jordie
df18d96902 Adds author and ttitle to testmerged prs feedback (#41651)
* readds testmerge feedback call

* typo

* adds author and title to testmerged prs feedback
2018-11-28 23:07:03 -05:00
XDTM
01f794a153 Teleportation standardization, channels, and interception (#41371)
cl XDTM
add: Spraying holy water on tiles will now prevent cult-based teleportation from using them as a destination point.
tweak: Quantum, wormhole and magic teleportation is no longer disrupted by bags of holding.
/cl

Refactors some teleportation code so it uses do_teleport instead of directly forceMove.
do_teleport now has a channel argument, to specify the type of teleportation used. This will affect what can and cannot interfere with teleportation. For example, BoHs interfere with bluespace teleportation but not wormhole, quantum or magic teleportation.
do_teleport now sends a COMSIG_ATOM_INTERCEPT_TELEPORT signal, allowing the target turf (or anything placing a signal on said turf) to react appropriately. As a proof of concept, blessed tiles use it to prevent teleportation from the cult channel.

Intercepting teleportation can have interesting potential uses, from teleport denial fields, to teleport scramblers (teleports you somewhere else instead), telefraggers that gib anyone unlucky enough to teleport in their area of effect, teleport anchors that shunt all teleportations in a wide area to themselves, and so on.
2018-11-29 10:33:55 +13:00
nichlas0010
4b2db8fae2 do_teleport now also checks the destination 2018-11-26 15:24:59 +01:00
Jordie
b611f0ce43 Readds testmerge feedback call (#41616) 2018-11-22 15:47:07 -08:00
ninjanomnom
304c64f2af Prevents wisps from being deleted by teleports 2018-10-14 21:09:48 -04:00
Jordan Brown
f41af44f05 Buff getrev with byond version (#40391) 2018-09-22 19:53:28 -07:00
Tad Hardesty
43b2aa8fa3 Improve organization of revision messages 2018-09-07 23:44:32 -07:00
Tad Hardesty
cdb6293bb7 Invoke rustg for revision information 2018-09-07 23:44:29 -07:00
Jordan Brown
d5f77001fe Fix getrev runtime for the billionth time (#39845) 2018-08-22 18:19:08 -07:00
Jordan Brown
9da0ad78f7 Fix getrev when TGS is present (#39777)
TGS4 doesn't copy .git. This fixes the runtime by using the API to get better
data.
2018-08-19 15:06:00 -07:00
YPOQ
5b3ae28c5d Fixes uncalibrated teleporters not turning humans into flies (#39678) 2018-08-13 02:39:07 -04:00
Patrick Chieppe
2c8248575a Logging system refactor and improvement (#39521)
* Refactor several log lines to use datum_info_line and atom_loc_line

* Add default return strings from datum_info_line and atom_loc_line

* Add parentheses around atom_loc_line data

* Change more logs to use atom_loc_line

* Add check in atom_loc_line for turfs to avoid calling get_turf on them

* Re-add removed 'at'

* Replace datum_info_line with key_name and atom_loc_line with loc_name

* Refactor logging functions

* Avoid double-logging self-interactions

* Fallback to simple stringification if all else fails in key_name()

* Rewrite muscle spasm logging to use log_message

* Standardize logging of martial arts

* Tweak individual logging panel look

* Fix individual logging panel source

* When I typed || I really meant &&

* Fix Telecomms logging always showing client logs in the panel

* Reverts addition of buggy ownership log to panel

* Remove colon

* Fix missing log_directed_talk tag

* Add warning for missing type in log_direted_talk

* Change warnings to stack_traces

* Add square brackets around fallthrough key_name() case to help parsing

* Allow atom arguments/src in log_*() functions

* Change log_combat call with null argument to log_message

* Change mecha types' log_message() arguments to match atom and mob version

* Add key_name() case for atoms

* Fix resist_grab() unsetting pulledby before log_combat gets a chance to use it

* Fix log_globally logic

* Add logging for hitting objects with items

* Move log_combat() to atoms.dm

* Use utility functions for object stringification in log_combat()

* Use utility functions for object stringification in log_combat()

* Add missing logs for interacting with display cases

* Rewrite log_combat() comment

* Add missing space in log_combat()

* Add logging for hitting grilles barehanded

* Add missing ..()
2018-08-12 21:41:09 +02:00
kevinz000
5f4b418eaa Movespeed Modification System (#39181)
In preparation of pixel movement, I want to refactor our slowdown system to something more modular, and something that doesn't require /quite/ as many proccalls/calculations a tick. The way this works is intended to only have things recalculate when it's necessary, rather than calling it every move.
However, I've left movement_delay() in, as without completely redoing a lot of code it's not /quite/ ready at this point to tear it out completely, but I'm hoping everything can be transitioned over to this system later.
2018-08-09 16:55:15 -04:00
Jordan Brown
2462ed3820 Makes getrev not smoothbrain when there's no .git folder (#39016) 2018-07-10 13:23:59 +03:00
oranges
bc272c89fa Add logging to teleport and the teleporter destination setting (#38645)
Helps with some admin issues
2018-06-22 00:33:36 -07:00
Tad Hardesty
6e021b54b2 [s] Fix launchpads creating way too many sparks 2018-06-13 23:08:54 -07:00
ShizCalev
c41d6ac965 Standardizes and cleans up some admin messages & logging (#38128)
* Improved logging

* Fixes & emitter logging

* ded
2018-05-30 21:57:06 -07:00
vuonojenmustaturska
4f210f49f5 Disallow effects from being scanned by the chameleon projector (#38017)
* henk

* iseffect
2018-05-25 14:36:56 +02:00
Jordan Brown
4cb7ed1574 Fixes incorrect test merge feedback (#37899)
* Fixes incorrect test merge feedback

* The guy who updated the tgs api is an idiot
2018-05-17 13:55:22 -04:00
Jordan Brown
575d098944 Update DMAPI to version 3.2.1.0 (#37429)
This is primarily a compatibility layer that enables both forward and backward compatibility for all past and future APIs based on the detected running TGS version. It also bundles all it's includes to make future upgrades not have to modify the dme, heck, could even use a submodule if it wanted (not happening). No other changes necessary.

There's an upcoming event system and new chat management functions. Check them out here: 303448457e/DMAPI/tgs.dm

Also added /datum/proc/CanProcCall()
2018-05-09 14:33:07 +12:00
Tad Hardesty
cb0024e806 Lengthen commit hashes in Show Server Revision 2018-05-02 23:41:47 -07:00
vuonojenmustaturska
6fe4274455 Stops ghosts from being able to start plasma fires 2018-04-15 12:39:10 -05:00
ACCount
18ed878cc4 Refactors construction datums into components (#35894) 2018-03-04 17:51:38 -06:00
ACCount12
1a65c7336a Refactors mech construction datums 2018-02-13 00:46:09 +03:00
ACCount
6de835a629 Adds tool_behaviour support to crafting, door wires, surgeries and mech construction (#35384)
* Adds tool_behaviour support to construction datums (mech construction)

* Adds tool_behaviour support to wire datums

* Adds tool_behavior support to surgeries

* Adds tool_behavior support to crafting

* New proc, to be used for checking tool qualities in hands

* Improves tool quality support on wires
2018-02-12 20:52:11 +01:00
kevinz000
a29994cbb1 Fixes Jaunters 2018-01-15 12:04:57 -06:00
Tad Hardesty
827c4b3f99 Replace hardcoded z-level numbers with a trait system (#34090)
* Add basic structure of z-level traits

* Restore space transitions and add z-level debug verb

* Restore proper ruin spawning and transit level creation

* Replace station_z_levels and related checks with traits

* Eliminate more uses of ZLEVEL_{STATION_PRIMARY,LAVALAND}
2018-01-12 09:05:49 +13:00
Cyberboss
ab727e7b0c Fixes getrev with no log file for master 2018-01-09 14:04:32 -05:00
Jordan Brown
ec461dbf04 Adds round ID to Show Server Revision (#33723) 2017-12-22 11:43:02 -05:00
ShizCalev
ec4455aa76 Cancels camera view on teleport 2017-11-26 13:14:57 -05:00
Jordie
8b19b490d1 JSON feedback (#32188)
* wip

* wip2

* makes code actually compile on 511 + fixes

* versioning

* s

* adds python conversion script, schema change and removes 'force ' from item_used_for_combat

* fix to compile

* forgot to actually commit this
2017-11-17 02:43:12 -05:00
Jordan Brown
fa77b793c0 Adds some server tools info to getrev (#32692) 2017-11-14 15:36:38 -06:00
Emmett Gaines
026cab1ffd removes search_contents_for proc (#32411) 2017-11-05 03:06:42 -05:00
ShizCalev
721df8dacf Cleans up some istypes not using helpers 2017-10-16 15:30:30 -04:00
duncathan salt
454d16fe32 Minor refactor of how gas IDs are handled (#31528)
* gas IDs -> gas datum paths

* updates parse_gas_string() to handle both paths and IDs

* fixes compile errors

* fixes parse_gas_string() ignoring amounts of gas

* fixes roundstart jetpack runtimes

* fixes filters

* fixes map-edited filters

* fixes empty canister runtimes on initialization
2017-10-11 15:04:12 -04:00
Jordan Brown
62f788fbc6 Server tools API v3.1 (#31000)
* New API for service communication

* Safer this way

* Gives the game the ability to kill itself

* tick_lag

* Sanity check

* Updates comment

* Formalization of the server tools API

* Fixes, finishes, and cleanup

* Remove unecessary scoping

* Compile fixes

* Didn't Ctrl+S

* Reimplement chat commands

* Fixup

* Required parameters

* Fax

* Testing

* Fix ON_TOPIC

* The more defines the more better

* That's bass ackwards

* Fix tgs2

* Fuck it, call him pichael

* Do this

* No, we only use the modern methods now

* Remove tgs2 relay support

* Remove kebab

* Kill kill kill

* This is back baby

* Missed a GLOB

* Remove DownloadPRDetails()

* Cache custom commands by name

* Adds "notify" chat command

* Use the official API

* Fix API misuse

* Readme licensing memes

* Fix API

* Moves chat new game announcement to when the API is confirmed compatible

* Add TGS3.json

* Fix the input options

* Removes notify command
2017-09-29 16:19:50 +13:00
Jordan Brown
4178c209f1 Configuration datum refactor (#30763)
* Configuration datum refactor

* More WIP

* New easier on the eyes format

* More WIP

* Finished config.txt

* Fucktons more WIP

* The end of conversion draws near...

* Add all this shit

* Done converting entries finally

* Hunting down compile errors

* More WIP

* MORE CONVERSIONS

* More WIP

* More WIP

* Oh shit only 90 errors this time!

* IT COMPILES!!!

* Fixes world start runtimes
2017-09-29 15:36:51 +13:00
GLACoding
e632dee0de Adds installing cells as part of mech construction and fixes some mech construction bugs. (#30942)
* spawn_mecha_result() code

Function that places the cell from construction from the holder into the new mech, and check and applies scanning module/capacitor upgrades for combat mechs

* New holder icons

No change made to the new sprites as of current.

* New ripley construction code

* New gygax construction code

* New fireripley construction code

* New honker construction code

* New durand construction code

* New phazon construction code

* New odysseus construction code

* Cyberboss Requested Fixes #1

* Cyberboss Requested Fixes #2

Turns result in mecha_construction_paths to types, also removes result in phazon_chassis as it has no purpose.
changes qdel to QDEL_NULL

* Removes old cell from add_cell() in the Initialize()

* Move CheckParts to obj/mecha and move cell check to CheckParts
2017-09-27 11:13:46 +02:00