Commit Graph

227 Commits

Author SHA1 Message Date
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
skoglol
4a487ca803 Refactors language holder (#48106)
* Language holder refactor

* Ironed out bugs, testing

* adds sourced language, blocking list. more useful helpers.

* Replaced old usage

* Adresses requests

* Autodoc attempt #1

* Fixed monkeyize (again)

* Travis happy

* Language menu updated

* Final pass
2019-12-18 22:22:12 +01:00
spessbandit
d0c84599e5 Humanizing a monkey no longer yeets any buried smuggler's satchels from the tile onto their person. (#47298)
* adds blacklist to humanize equip

* we can use anchored after all what  FUN piece of lsownlelcowert
2019-10-25 08:09:41 +02:00
skoglol
938e66f62c Adds sorting to most input() lists (#47117)
* Adds sorting to most input() lists.

* Sorted some global lists, added more input sorting

* Should now use correct sort everywhere.

* compiles

* Last fixes.
2019-10-22 04:28:42 -07:00
kingofkosmos
280d416d4f Adds missing spans, missing periods and missing span endings. Also changes spans to suit the situation better. 2019-10-12 19:34:11 +03:00
RandolfTheMeh
48fbc073e5 [TMC] Defib Rework, Organ Damage Effects (#45104)
* Brain damage works on organ damage procs, some defib reworks

* Heart and Lung damaging effects and failure, liver damage and failure moved to its organ again

* Cleans up reused global

* Organ damage procs on living and living/carbon

* Changes brain damage procs again

* SR heals all organs on revive, no decay for cybernetic implants, stomach damage and fail effects.

* Damage and failure effects for the appendix, ears, and some touchups on the stomach

* Committing changes so I don't lose them

* Organs now cease decaying in the proper containers

* Organ Fridges

* Reverts map changes

* Adds coronary bypass, lobectomy, trying to deal with organ_stat runtime

* Actually fixes merge conflict

* Smartfridge tweaks

* Think I figured out map merger

* Evidently not

* Still runtiming with glass shards even after I remove the map changes?

* Fixes runtime error with brain_item

* Runtime fix on living/carbon/life

* Cleaning up old PR code

* Brain damage fix, moves defines to actually be in _DEFINES, under DNA since that's where organ slots were

* Wrong math operation used

* Brains in MMIs no longer decay

* Removes redundant variable, and defibs no longer work on heart attacks caused by failing hearts

* Removes misleading comment

* init freezes organs in case organ crates are added, morgue corpses are frozen, removes adjustLiverLoss

* Removes random spaces, scanners check brain damage severity now

* Swaps numbers for defines, fixes brain surgery, rebalances coronary bypass bleed since that was insane last I tested it

* List change

* Runs off of an index instead of using cut

* Brains can be put into organ fridges

* Fixes minor type, hotfix for cloning problem

* Removes pointless check

* Demon hearts no longer decay

* Nightmare hearts no longer decay

* Removes istype() check on process, sets can_decompose instead

* Condenses organ damage report

* Removes organ failure messages

* Less organ damage spam, implements organ threshold messages instead

* Brain damage messages go to owner, not source

* Self-examine shows damaged organs

* Minor code cleanup, adds autodoc comments to the new procs

* Inverts standard organ vars to prevent random organs decaying, adds a few more autodoc comments.

* Merged the booleans into a set of flags

* Healthy living improves organ healing rates

* dunno why this didn't update

* my actions have consequences

* Sets ORGAN_SYNTHETIC for overlooked robotics organs

* Doubles heart decay time

* 3 minute heart decay

* Lobectomy/Coronary_Bypass heal more

* removes hivemind spells from the changes
2019-07-29 02:18:22 -07:00
Garen Crownguard
c69a359f20 ling fixes (#44055)
About The Pull Request

Fixes #37273
Fixes #37507
Changelog

cl Garen7
tweak: Lesser form lings can now toggle augmented vision
fix: You can no longer turn back into human form as a lesser form ling while ventcrawling
fix: Stuns and Reagents are now passed when transforming into a monkey or human
/cl

It didn't seem like augmented vision was meant to only be usable as a human so I made it usable as a monkey, if the original creator wanted it to be only usable as a human they would have assigned the var req_human of the augmented vision ability to TRUE since thats where this behavior is usually handled.
2019-05-27 22:36:08 +12:00
Time-Green
acfd3f8253 [GOONETICS] Chromosomes (#42151)
* adds chromosomes

* Makes the framework nice and functional

* Adds chromosome interaction

* Makes chromosomes work

* removes the double instability update

* Apply suggestions from code review

Co-Authored-By: Time-Green <timkoster1@hotmail.com>

* more review stuff

also fixed some inconsistencies in chromosomes

* unfucks defines

* Fixes saved mutations runtiming with empty pods

* Adds stability to the dna console and advanced health scanner

* removes a random bug i stumbled upon

* Update code/game/machinery/computer/dna_console.dm

Co-Authored-By: Time-Green <timkoster1@hotmail.com>

* makes chromosomes harder to get

fixes double mutations, adds reinforcer and nerfs stabilizer

* fixes edge case where fireballs would be harmless

* cleans up find/replace all mess and 1 in 10 trillion chance of fireball breaking
2019-02-10 20:45:09 -05:00
0d0be32b607ee4ecbc2358f3dd4a27de
00762e4851 [I GUESS THIS MIGHT BE TESTMERGED? I DUNNO] return of the ling action buttons (#41928)
cl 0d0be32, PKPenguin321, Armhulen, epochayur
refactor: Changeling powers are now action buttons rather than verbs.
imageadd: Thanks to epochayur for creating and compiling sprites for every single changeling action button!
imageadd: Thanks to Armhulen for the changeling button background sprite!
/cl

original pr #35394

the two main bugs i saw are fixed. reviving works, monkeyform/humanform works

fixes #41899
2019-01-03 11:33:18 +13:00
Time-Green
29ecfa47bf [READY] Goon Genetics (#41258)
GENETICS

    The random hexadecimal rng game has been replaced with gene sequencing from goon.

    Adds mutation activators and mutators

    You can now store mutations

    Everyone now has their own set of unique mutations

    Limited mutations per person to 8 (including one always being monkey)

    Adds race specific mutations (See fire breathing for lizads)

    You can inspect discovered mutations, undiscovered mutations use an alias to recognize them by

    Adds a sequence analyzer. Can be used to scan someones genes sequence. Useful for determing what mutations they can safely have and or collecting data for very difficult sequences

    Adds mutation combining. It's currently only RADIOACTIVE + STRONG = HULK (So yes you will now need 2 mutations for to get hulk)

    Adds several other mutations. Telepathy, firebreath, glowy, radioactive and strength

cl Time-Green
add: Goon genetics!
add: More mutations! Fire breath for lizards! Radioactive! Telepathy! Glowy! Strength, though its cosmetic and should be combined with radioactivity instead! Fiery sweat!
add: Adds void magnet mutation by @tralezab !
/cl
2018-12-09 23:26:04 +13:00
Qustinnus
b9f5dbac6b Adds a new race: Ethereal (also adds wrappers for nutrition adjustment) (#40995)
cl Qustinnus / Floyd / Ethereal sprites by Space, is that it? / Alerts and food sprites by MrDroppodBringer
add: Adds Ethereal; a race which lives off of electricity and shines bright. If they are healthy they shine a bright green light, and the more damaged they are, the less they shine and the greyer they become. Their punches do burn damage and they are weak to blunt attacks!
They dont need to eat normal food and dont have nutrition, Instead they gain charge by going into borg rechargers, eating ethereal food or doign specific interactions.
refactor: all nutrition changes now go through a proc so we can override behavior
/cl

Adds Ethereal. A race which is essentialy inspired by Zoltan but then with different mechanics to make it fit with SS13 more. I'm trying to stay away from making them actually provide power but the change from nutrition to electricity seemed kind of fun.

They have the following specifications:

    They are walking lights; and shine bright and green if healthy, and get greyer and darker the more damaged they are. When dead they are just a grey unlit corpse.
    They do burn punch damage instead of blunt.
    They are weaker to blunt; especially when low on charge
    They have charge instead of nutrition. Charge is gained by some interactions or by going into a borg charger. or eating new ethereal food.
    They are slightly stronger to shock damage, and gain charge from it a bit; however, it is still deadly to them and thus they aren't free insulated gloves.
2018-11-29 10:09:56 +13:00
AnturK
9306d01f6f Adds old name tracking to player panel, cleans up some name assignments. 2018-10-25 20:39:51 +02:00
ShizCalev
c4064c9dac Fixes syndicate MMI nameswaping, adds better user feedback when inserting a dead brain (#41023) 2018-10-20 11:35:32 -07:00
ShizCalev
f7fcc4e929 Removes tactical suicide borging (#40754)
* Removes tactical suicide borging

* correction
2018-10-15 22:51:22 +03:00
kevinz000
3e7184c975 Combat/Stun (slip) overhaul staging, mobility flags, adds crawling (#39967)
Aiming to implement the framework oranges has detailed in https://tgstation13.org/phpBB/viewtopic.php?f=10&t=19102
Moves canmove to a bitflag in a new variable called mobility_flags, that will allow finer grain control of what someone can do codewise, for example, letting them move but not stand up, or stand up but not move.

Adds Immobilize()d status effect that freezes movement but does not prevent anything else.
Adds Paralyze()d which is oldstun "You can't do anything at all and knock down).
Stun() will now prevent any item/UI usage and movement (which is similar to before).
Knockdown() will now only knockdown without preventing item usage/movement.
People knocked down will be able to crawl at softcrit-speeds
Refactors some /mob variables and procs to /mob/living.
update_canmove() refactored to update_mobility() and will handle mobility_flags instead of the removed canmove

cl
rscadd: Crawling is now possible if you are down but not stunned. Obviously, you will be slower.
/cl
Refactors are done. I'd rather get this merged faster than try to fine tune stuff like slips. The most obvious gameplay effect this pr has will be crawling, and I believe I made tiny tweaks but I can't find it Anything I missed or weird behavior should be reported.
2018-10-11 11:22:21 +13:00
AnturK
abfe09659c Fixes borg names. (#38733)
* Fixes borg names.

* Makes it call the db only once.

* Default cyborg naming scheme.

* Makes cyborgs default to default name instead of random ai one.
2018-06-28 20:32:14 +03:00
CitrusGender
501fd35cba Fixed cyborgs not getting their names at round start (#38675)
* fixed cyborgs not getting their names at round start
fixed cyborgs and A.Is being able to get around appearance bans

* Update job.dm

* Update silicon.dm

* goodbye unneeded config otpion

* Update game_options.txt
2018-06-24 21:55:13 +03:00
ShizCalev
31654bb57c Fixes pocket items being deleted when monkeyizing (#38220) 2018-06-02 14:04:26 -07:00
Emmett Gaines
172a307c5b Count gorilla transforms (#36563) 2018-03-22 00:31:19 -04:00
Ian Turk
fbe5f4a062 Replaced body zone magic strings with defines 2018-03-19 15:44:51 -05:00
Cruix
dedf5f5ed9 Disease antagonist (#35988)
* Virus antagonist initial commit

* Updated disease code

* Sentient virus improvements

* Renamed /mob/living/var/viruses to diseases, and /mob/living/var/resistances to disease_resistances

* Added sentient virus event

* Renamed VIRUS defines to DISEASE defines

* Fixed bugs in rewritten disease code

* Fixed advanced disease Copy()

* Finalized disease antagonist

* Made cooldown buttons stop processing if they are removed from an owner.
Made sentient disease active sneeze and cough not available if the host is unconscious.
Made sentient disease menu refresh when adaptations are ready or hosts are added or removed.
Made sentient disease following use movement signals instead of fastprocess.

* Added better icons to sentient disease abilities
2018-03-05 13:55:10 +01:00
XDTM
9d41e9734d Extensive surgery additions (#35520)
* Extensive surgery additions

* ,

* bioware

* restrict

* implants

* oops my hand slipped

* "i only changed a few lines, surely it's gonna compile, let's just push it and be done with it" --me, once again

* zombie surgery

* Adds brainwashing antag datum

* Antur Reviews

* @Antur part 2

* wow
2018-02-19 14:29:06 +02:00
Kyle Spier-Swenson
074d2d0b34 Fixes ai transform being picky
The fact ai transform even forces them to an ai loc is iffy as the admin might want them to be an ai at their current location, but this is more sane.
2018-02-12 14:34:39 -08:00
ShizCalev
5538a3ead4 Fixes primary AI spawning at incorrect locations 2018-02-07 03:39:32 -05:00
Dax Dupont
f3d99a0c34 Fixes power cell name and makes borgs use a standard high capacity cell. (#35265)
* Fixes name for upgraded power cell

* Harmonizes battery for cyborgs

* Remove duplicate battery code
2018-02-05 02:14:09 -02:00
ShizCalev
34897d8709 Removed tripAI landmark (#35256) 2018-02-04 01:13:40 -05:00
vuonojenmustaturska
5233ec1f6a Finishes the forceMove port (#33519)
* a thing

* thingy 2: electric boogaloo

* Obligatory webeditor commit
2017-12-15 10:39:34 +13:00
AnturK
194bd83435 Adds blob roundend report. (#33463)
* Adds blob roundend report. (Also adminabuse)

* Old comment

* Grammer

* Moves antag to seperate file
2017-12-14 02:38:46 -05:00
Tad Hardesty
ce116b6d96 Correctly set description of nonstandard cells 2017-12-12 03:50:47 -08:00
XDTM
550d71167e Brain Traumas (#31727)
* Reworks Brain Damage

* mechanics

* rebalancing

* hulks in wheelchairs

* yup

* bugsquash

* Adds narcolepsy, phobias and agnosia. Not guaranteed 100% bug-free yet, testmerge at your own risk.

* lizard phobia

* Did you know there's a skeleton inside of you RIGHT NOW?

* Fixes for the new stuff

* The issue with those is that in most rounds you won't see them

I'll keep them available so they can be added manually, for example by events and such

* Goof reviews

* Brainloss is based off brain organ integrity

removes brainloss var

* Replaces some getorganslot with defines

* eyes

* put the traumas in the brainnnn

* text

* args

* Adds godwoken, puts split personality in severe, adds brainwashing

* Bluespace prophet special trauma (untested)

* Some minor stuff

* Monophobia, and tweaks

* More fixes

* fix

* a

* new tail

* Discoordination and Muscle Weakness

* thanks for the review!

* [B]oneless

* agnosia fix

* .

* go away agnosia

* pretend it didn't happen

* Shitcode-free-er

* bitwisdom

* psychotic brawling

* i guess this might be important

* latest reviews

* .

* conflict-free

* addresses it

* surgery fix

* a masterpiece

* fix

* fix again

* config

* damage formula reworked

* who needs to test anyway

* fixes some bugs

* fix 2

* proper spookin

* bluespace prophet fixes and improvements

* no bible healing

* .

* normalizes monophobia chances
2017-12-06 13:04:17 -05:00
AnturK
39394d88d1 Transfers orbiting ghosts on most common transforms 2017-11-18 22:36:01 +01:00
AnturK
70d0357b33 Ling datum antag standarization. (#32183)
* Ling datum standarization.

* Removal of redundant file

* Ok
2017-11-05 20:32:37 -05:00
MoreRobustThanYou
ff2c7e90cc [s] New blob overminds off the station Z level are moved to the station (#32243)
* [s] New blob overminds are now placed at normal blob spawn points

* Update transform_procs.dm
2017-11-02 03:29:33 -06:00
AnturK
8a8a247c21 Cleans up datum traitor minimally. (#31978)
* Removes the /custom traitor subtype nonsense.
Fixes borged/ai'zed traitors getting law 0.

* Not needed anymore
2017-10-22 18:44:43 -04:00
KorPhaeron
7034a22e78 Blob fixes (#31913)
* Blob alarm sounds

* Fixes antag panel and blob report being sent too early

* Assigning fix

* Keeps announcement for use in false alarm
2017-10-21 21:07:55 +02:00
KorPhaeron
be748e3323 Disentangles blob from blob mode/removes blob mode (#31780)
* Disentangles blob from blob mode

* Observer examine

* Fixes runtimes

* Blob now has infinite points in critical mass and will consume the entire station visually

* Different icon

* Blob event more common

* All overminds get to pick their core location

* Blobs block the shuttle

* Not sure when controller would be different from overmind
2017-10-18 21:55:28 -04:00
ShizCalev
3358cbb3b6 Cleans up some antag/event landmark checks (#31129) 2017-09-30 22:32:04 -04: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
pubby
d2290096c5 Gorillas (#29923)
* Add gorillas

* forgot the sound effect

* Fixes

* Split emotes into new file

* Restore perfect knockdown

* oops

* Gorilla hands

* Cyberboss changes
2017-08-20 20:55:35 -04:00
Jordan Brown
af4d9a85c9 Repaths /obj/item/weapon to /obj/item (#29929) 2017-08-16 10:38:51 -03:00
Fox McCloud
2cc3e9c41f Disease Refactor (#29130)
* Vomit Now Contains Viruses

* eh

* typeless memery

* Disease Refactor

* tweaks

* styling

* tweaks

* unecessary comment removal

* whoops

* fix
2017-07-15 11:08:40 -04:00
AnturK
d3bf259d9d Fixes lings losing organs on humanization 2017-06-27 09:18:15 +02:00
Joan Lung
58c054acb5 Stun is now a status effect (#28654)
* Stun is now a status effect

* I'D RATHER NOT

* smart

* very smart

* pideyview

* small fixes

* slight fix
2017-06-22 10:50:46 +10:00
Joan Lung
2672d88800 Renames stun effects and changes stun input values as preliminary work for changing stuns to status effects (#28524) 2017-06-18 23:03:51 -03:00
Joan Lung
1b7c4a63dc Repaths /obj/effect/overlay/temp to /obj/effect/temp_visual (#27344) 2017-05-17 22:54:54 -05:00
QualityVan
58b03f0bbe Fixes seeing the you are a brain! message during monkey transformation 2017-04-28 17:17:21 -04:00
XDTM
f1a570aeb4 Makes the monkey-to-human effect spawn in the correct position 2017-04-17 21:17:33 +02:00
Cyberboss
9e1ef0ffe2 Global variable wrappers (#25325)
* Add the system for managed global variables

* Travis ban old globals

* So you CAN inline proccall, that's neat

* Fix that

* master.dm

* Remove the hack procs

* Move InitGlobals to the proper spot

* configuration.dm

* Fix the missing pre-slash

* clockcult.dm

* This is probably for the best

* Doy

* Fix shit

* Rest of the DEFINES tree

* Fix

* Use global. for access

* Update find_references_in_globals

Always hated that proc

Whoever made it must've bee a r e a l idiot...

* __HELPERS tree

* Move global initialization to master.

Fix the declaration

* database.dm

* Dat newline

* I said DECLARATIVE order!

* Here's something you can chew on @Iamgoofball

* game_modes.dm

* Fix this

* genetics.dm

* flavor_misc.dm

* More stuff

* Do it mso's way. Keep the controllers as global

* Make master actually see it

* Fix

* Finish _globalvars/lists

* Finish the rest of the _globalvars tree

* This is weird

* Migrate the controllers

* SLOTH -> GLOB

* Lighting globals

* round_start_time -> ticker

* PAI card list -> pai SS

* record_id_num -> static

* Diseases list -> SSdisease

* More disease globals to the SS

* More disease stuff

* Emote list

* Better and better

* Bluh

* So much stuff

* Ahh

* Wires

* dview

* station_areas

* Teleportlocs

* blood_splatter_icons

* Stuff and such

* More stuff

* RAD IO

* More stuff and such

* Blob shit

* Changeling stuff

* Add "Balance" to changelogs

* Balance for changelog compiler + Auto Tagging

* Update the PR template

* hivemind_bank

* Bip

* sacrificed

* Good shit

* Better define

* More cult shit

* Devil shit

* Gang shit

* > borers

Fix shit

* Rename the define

* Nuke

* Objectives

* Sandbox

* Multiverse sword

* Announce systems

* Stuff and such

* TC con

* Airlock

* doppllllerrrrrr

* holopads

* Shut up byond you inconsistent fuck

* Sneaky fuck

* Burp

* Bip

* Fixnshit

* Port without regard

* askdlfjs;

* asdfjasoidojfi

* Protected globals and more

* SO MANY

* ajsimkvahsaoisd

* akfdsiaopwimfeoiwafaw

* gsdfigjosidjfgiosdg

* AHHHHHHHHHHHHHHHHHHHHHHH!!!!!

* facerolll

* ASDFASDFASDF

* Removes the unused parts of dmm_suite

* WIP

* Fix quote

* asdfjauwfnkjs

* afwlunhskjfda

* asfjlaiwuefhaf

* SO CLOSE

* wwwweeeeeewwwww

* agdgmoewranwg

* HOLY MOTHER OF FUCK AND THATS JUST HALF THE JOB?!?

* Fix syntax errors

* 100 errors

* Another 100

* So many...

* Ugh

* More shit

* kilme

* Stuuuuuufffff

* ajrgmrlshio;djfa;sdkl

* jkbhkhjbmjvjmh

* soi soi soi

* butt

* TODAY WE LEARNED THAT GLOBAL AND STATIC ARE THE EXACT SAME FUCKING THING

* lllllllllllllllllllllllllllllllllllllllllll

* afsdijfiawhnflnjhnwsdfs

* yugykihlugk,kj

* time to go

* STUFFF!!!

* AAAAAAAAAAAAAAAAAHHHHHHHHHHHHHHHHHHHHHHHHHHH!!!!!!!!!!!!!!!!!!!!!!!

* ngoaijdjlfkamsdlkf

* Break time

* aufjsdklfalsjfi

* CONTROL KAY AND PRAY

* IT COMPILEELEELELAKLJFKLDAFJLKFDJLADKJHFLJKAJGAHIEJALDFJ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

* Goteem

* Fix testing mode

* This does not belong in this PR

* Convert it to a controller

* Eh, fuck this option

* Revert controllerization Ill do it some other time

* Fix

* Working controllerization

* FOR THE LOVE OF CHRIST PROTECT THE LOGS

* Protect admins and deadmins

* Use the inbuilt proc
2017-04-06 23:26:13 -06:00
Cyberboss
7af014de84 Add support for specific sound channels and stopping them (#25455) 2017-03-25 19:54:04 -03:00
GunHog
ac4d69254b Revival of "Allows AIs to deploy to borgs" by Shadowlight213 (#25184)
The AI may now deploy to cyborgs prepared as AI shells. The module to do this may be research in the exosuit fabricator. Simply slot the module into a completed cyborg frame as with an MMI, or into a playerless (with no ckey) cyborg.
2017-03-24 21:42:48 -03:00