Commit Graph

56 Commits

Author SHA1 Message Date
Aronai Sieyes
b3e9960029 Move machines to use default_apply_parts() 2020-04-27 11:57:43 -04:00
ShadowLarkens
54a8a5823d Saycode Overhaul -- Multilingualism (#6956)
* Port ParadiseSS13/Paradise#2100 - Saycode refactor

* Removed unused old carbon slimes code

* Port ParadiseSS13/Paradise#5099 - Saycode part 2

* Ported ParadiseSS13/Paradise#7170's /datum/browser Check Known Languages

* Port ParadiseSS13/Paradise#9240 - Get rid of alt_name in favor of GetAltName()

* Port ParadiseSS13/Paradise#10330 - You can now use multiple languages in one message

* Addressed Atermonera's review.

Translators now print the full message if they find any languages within the
message that the user doesn't understand, minus languages it cannot translate.

Additionally, the combine_message proc has been significantly simplified
by eliminating an ugly tree structure with the help of a little helper
proc.

The removal of the extra span inside each piece doesn't seem to have
visually changed the messages in any other way than changing where the
wordwrap happens, strangely enough. Must be something in IE's code being
picky about invisible elements. On the bright side, it splits *later*
than it did before, thus reducing the lines a message will take up by a
tiny amount.

Also, a bunch of things now have the 'filter_say' class from
PolarisSS13/Polaris#6998. Since span classes with no definition are
totally valid and just don't do anything, this PR does **not** depend on
that PR being merged first.

* Always gotta be one
2020-04-20 01:11:53 -07:00
Aronai Sieyes
715de43f35 VChat: Redone chat output done in Vue.js (#6761)
* Better notifications

* Add buttons to del/move tabs in edit mode

* Add a <span> to emotes

* Fix duplicate IDs in VChat and add more logging

* VChat: Redone chat output in Vue.js

* Ported tg asset cache

* VChat DME Update

* Replace \image macro with bicon()

* NanoUI Subsystem Fixes

Don't do this, the asset subsystem does this for you

* Allow narrate/globalnarrate shenanigans

Allows HTML if your entire thing is HTML

* Disable bicon() icon object cache, and create text tag cache

* Ore Scanner is written incorrectly

Only revealed by vchat

* Fixes 2 VChat bugs

* Underline links in VChat

* Fix LOOC color

* VChat Improvements

Hopefully, anyway.
- Arbitrary font size setting
- Line height setting
- Multiple crush settings
- Rewrote how tabs work hopefully for performance
- Hidden messages are actually put elsewhere
- Attempts to correct chat backlog restore on rejoin

* Surgery steps to use <span>

* Some VChat Tweaks

- Chat remains between client reconnects if your client didn't close (so things like using the reconnect button, or autoreconnects at round end when that feels like working)
- The client doesn't send pings to the server, the server sends pings to the client. This fixes AFK measurements for AFK kick purposes.
- Turn latency indicator into a green/red indicator to show if you're connected, and when clicked will perform a one-time ping (and block doing it again for 10 seconds). It will display '?ms' if it never got a reply, or '999ms' if it did, but it was over 1s.

* Include date in filename for VChat log save

* Merge pull request #6767 from Cyantime/patch-2

Change chat export naming scheme

* Adds VChat tab saving

Saves every time you enter/exit edit mode. Persists between rounds, VChat reloads via verb, etc.

* Fix chat exporting when someone has used unicode

Only affects clients still using 512

* Use CLIENT_FROM_VAR for ease of code reading

* Update code/modules/client/asset_cache.dm

Co-Authored-By: Novacat <35587478+Novacat@users.noreply.github.com>

* Fix runtime when client disconnects before vchat loads

* Fix polaris version of command reports

* Fix LOOC color in oldchat

* Put some styles in various adminpm messages

* Round info and advanced who spans

* Fix missing tag-end

* Maybe fix images for linux and statpanel but also doom everyone

Co-authored-by: ShadowLarkens <ShadowLarkens@users.noreply.github.com>
Co-authored-by: Novacat <35587478+Novacat@users.noreply.github.com>
2020-03-27 14:07:28 -07:00
Atermonera
95ac99c514 Merge pull request #6882 from VOREStation/vplk-machinery-use-power
Machinery: Always use update_use_power()
2020-03-23 20:20:41 -07:00
Leshana
938384cb1b In fact lets use the constants instead of bare numbers for use_power everywhere. 2020-03-21 19:41:01 -04:00
Leshana
767e6227f5 Replace all direct setting of mob.stat with mob.set_stat() 2020-03-20 23:45:29 -04:00
Arokha Sieyes
5b15917d32 to_chat replacing stream operator 2020-02-17 13:14:08 -05:00
Atermonera
de65c3c643 NanoUI now processes again 2018-08-25 21:13:16 -07:00
Anewbe
c2794c571d Hopefully fixes some tool-conversion things 2018-08-03 15:13:29 -05:00
Anewbe
729ce71aa0 Converts most istype(thing,tool) procs into an appropriate thing.is_tool() format 2018-08-02 21:45:15 -05:00
Anewbe
6446328d09 Slimes should no longer /list you. 2018-02-20 01:58:49 -06:00
Abbie Fland
78a1781c8f Fixes rare empty gene_mask
Gene masks (like for plant genes) used unpadded num2hex on a random
number 0-255. This had the (technically ok) result of masks for values
1-15 being a single character but also had the (not ok) result of the
mask for value 0 being the empty string. This only happened to 1/256 of
genes, so was easy to miss.

This change pads all of them to 2 characters so this issue won't happen
and to line things up nice.
2018-01-21 23:59:37 +00:00
Neerti
afd7b15442 Adds the Lost Drone 2017-09-22 01:17:53 -04:00
Neerti
4bfcec55f2 work 2017-09-04 21:52:47 -04:00
Datraen
97e7e10bc2 Fixes mutate() in xenobio2 to produce a unique traits datum
Recently brought to me, so I'm fixing it.
2017-05-05 12:23:00 -04:00
Neerti
ea6128f986 Adds Modifier System, Changes Some Ling Stuff
Adds a fairly simple system that allows adjusting various numbers like max health, incoming damage, outgoing melee damage, etc.  The nice part is that changing certain variables this way (like max health) is a lot safer than manually setting the max health var directly.
Changes a lot of short lines of code to point towards a variable's getter or setter helper instead of reading the var directly so the modifiers can work.
Endoarmor, delayed toxin sting, Enfeebling sting, and recursive adrenaline overdose now use the modifier system.
Enfeebling sting now only lasts two minutes, from five minutes, however it now also reduces the victim's melee damage by 25%/50%, and increases the damage they suffer by 10%/35%, for normal and recursive respectively.
Delayed Toxin Sting's effects are now felt all at once instead of over the course of a few minutes.
2017-04-18 21:23:59 -04:00
Dankman
a2e09a2f10 Fixing one slight issue.
I'm an idiot, forgot about garbage collecting. This fixes a slight issue
in my previous PR that would have eventually resulted in a call of DEL
if nobody rebuilt the console.
2017-03-01 16:59:13 -05:00
Dankman
60002d04cc Fixing runtimes, making things functional for the Xenobiology Console
The old build path pointed towards a circuitboard instead of towards the
machine, meaning when you screwdrivered the frame twice, it would cause
frame.dm to runtime, and then not delete the frame, meaning you could
spam click the console with a screwdriver and spawn infinite boards, and
still be stuck with a non functional machine.

injector.computer = null was causing a runtime because it was attempting
to edit something that no longer existed on destruction.
2017-03-01 16:26:42 -05:00
Anewbe
c71007fa58 Xenotaser should work now 2017-01-18 17:47:38 -06:00
Anewbe
72ece31fa9 Xenobio fixes 2017-01-15 14:59:33 -06:00
MagmaRam
2c231333e6 Fixes xenobio chem stuff properly this time 2016-11-17 07:10:59 -06:00
MagmaRam
568b1eacfe Slimes will now dump reagents they can't process.
They won't throw up a runtime and then refuse to process more stuff.
2016-11-14 15:51:17 -06:00
Anewbe
771d8b9e4b Adds a smaller device cell for use in non-weapon devices 2016-10-08 15:34:18 -05:00
Anewbe
0f51fda83a Energy weapons can be reloaded 2016-10-06 21:30:52 -05:00
Neerti
828dacf485 Centralizes weight class definitions
A lot of new defines are now in inventory_sizes.dm, which contains;
All the size identifiers (the thing that tells the game if something is bulky, or w/e).
Storage costs for all the sizes, which are exponents of two, as previously.
A few constants for inventory size.

Also changes all storage item's capacity definitions by basing it off of how many 'normal slots' exist for it.  This allows one to change the definition for all of the defines in the file, and everything will follow along without needing to change 500 files.  In testing, I made all ITEMSIZE_COST_* defines doubled, and nothing had broke.

The benefit of doing all of this is that it makes adding new weight classes in the future much simpler, and makes knowing how much space a container has easier, as seeing ITEMSIZE_COST_NORMAL * 7 means it can hold seven normal items.
2016-09-22 00:51:51 -04:00
SinTwo
045c393683 Revert "Revert "Frame Cleanup""
This reverts commit 82722ba42f.
2016-08-13 19:55:57 -04:00
Yoshax
82722ba42f Revert "Frame Cleanup" 2016-08-06 00:27:03 +01:00
SinTwo
07b4eb2d95 final fixes, tweaks, and cleanups 2016-08-03 14:09:12 -04:00
SinTwo
66c3a007a9 frame cleanup fixes 2016-07-23 23:45:24 -04:00
Neerti
8a61641479 Some more work + prep for drydocking. 2016-07-08 20:38:34 -04:00
Neerti
20a3bd5b26 Merge branch 'master' of https://github.com/PolarisSS13/Polaris into 12/16/2015_newwizard 2016-06-26 20:14:29 -04:00
Datraen
78e63a00a4 Xenobio2 Update #7 (#1910)
* Ensures cores, slimes cannot be used twice in their machines.

* Fixes xenos appearing friendly, simple_mob death problems.

Simple mobs that were dead and not of the hostile subtype wouldn't call walk(src,0), which prevents corpses from following their target.

* Cleans up trait data when a xeno or xeno product is removed.

* Slimes more likely to have amutationtoxin, consumes virusfood.

* Fixes some issues.

* Adds changelog
2016-06-10 19:28:59 +01:00
Datraen
8e40ad6f49 Fixes #1899, changes name references to [src]. 2016-06-09 09:05:33 -04:00
Datraen
7670ab1ad0 Fixes #1896 2016-06-09 09:03:07 -04:00
Datraen
05caade93e Ensures slimes will have identically different trait datums when the cores are created.
This does not account for VV modifications.
2016-06-02 18:09:27 -04:00
Datraen
e6a90dbe6b Tweaks scanner, trait acquisiton for slimes, trait application for all xenos. 2016-06-02 12:34:31 -04:00
Datraen
c75512aa75 Xenobio2 Update #3 (#1832)
* Adds growth inspection to the trait scanner, lowers mutation and growth levels.

* Adds NutriMaxes to Xenobiology, for feeding the slimes.

* Fixes a typo
2016-05-31 18:30:52 +01:00
Datraen
c1c3110496 Xenobio2 Update
Adds the trait scanner, which I had thought was previously added.
Fixes the smartfridge not believing that it had the cores in it's inventory.
Fixes an inverted check.
2016-05-30 23:44:53 -04:00
Yoshax
722c099847 Merge pull request #1788 from Datraen/Xenobio2_Tweaks
Xenobio2 tweaks
2016-05-29 03:56:39 +01:00
Yoshax
5d3dbb8b6f Fixes chromatic slime laser reflection and adjusts a span class 2016-05-29 01:33:48 +01:00
Datraen
1e6ecb0c88 Xenobio2 Tweaks
Adds nameVar to products, sets it to products/xenos when they are created from the proper machinery.
Adds the manual injector to the machinery that can take beakers, preventing them from spilling onto the machine when inserted.
Tweaks the NanoUI to properly display percent mutated, adds a proper check to see if it is not a xeno occupant.
2016-05-28 20:06:51 -04:00
Yoshax
df0135ac2b Merge branch 'master' of https://github.com/PolarisSS13/Polaris into attackcall 2016-05-29 01:00:50 +01:00
Datraen
a4e2b803f5 Adds a map http://i.imgur.com/ZI1gKc1.png
Also updates slime storage to handle all xenobio products.
Also adds a missing component_parts = list().
2016-05-28 15:01:22 -04:00
Datraen
698e44275d Removes map/New()s, adds changelog. 2016-05-28 00:31:25 -04:00
Datraen
85f3dc84e4 Adds component requirements, adds tech levels, fixes copy error. 2016-05-25 14:40:55 -04:00
Datraen
9e09720be5 Final Initial Implementation of Xenobio2 System.
Kinks worked out, everything is functioning as it should.
2016-05-25 14:11:37 -04:00
Datraen
79e22d58e5 Semi-final stage of Xenobio2 Initial Implementation
Adds UIs to Core Extractor, Slime Replicator
Adds Slimified Monkey Cubes as separate item type
Adds Docility Toxin
Replaces amutationtoxin references with docilitytoxin references
Adds resistances to simple_mob damage handling, to allow for simple mobs to have resistances to different kinds of damage
Moves a return to it's proper position to allow for hostile mobs to properly handle targets.
2016-05-25 03:50:23 -04:00
SinTwo
ba4fa36984 Adds UI and a few fixes 2016-05-23 17:59:41 -04:00
Datraen
ce6b574d67 Status as of 05-18-2016 2016-05-19 15:16:48 -04:00
Datraen
a92d860aef Adds slime cores, replicator, extractor.
Replicator and extractor circuits currently need to be adjusted, as they require origin tech and components. This commit is being added simply to save any headaches that may occur do to data loss.
2016-05-13 14:54:19 -04:00