Commit Graph

81 Commits

Author SHA1 Message Date
AnturK 6fa8e5f02d Adds Abduction Mode 2015-04-13 18:40:15 +02:00
phil235 ffd711c26f Merge branch 'master' of https://github.com/tgstation/-tg-station into SlimeAnimal
Conflicts:
	code/modules/mob/living/carbon/life.dm
	code/modules/mob/living/carbon/slime/slime.dm
	code/modules/mob/living/simple_animal/friendly/corgi.dm
	code/modules/mob/living/simple_animal/slime/say.dm
	code/modules/reagents/Chemistry-Reagents/Consumable-Reagents/Food-Reagents.dm
2015-03-23 16:51:03 +01:00
phil235 aecb365f84 Merge branch 'master' of https://github.com/tgstation/-tg-station into SlimeAnimal
Conflicts:
	code/modules/mob/living/carbon/alien/life.dm
	code/modules/mob/living/carbon/life.dm
	code/modules/mob/living/carbon/slime/slime.dm
	code/modules/mob/living/silicon/robot/life.dm
	code/modules/mob/living/simple_animal/slime/life.dm
2015-03-20 19:32:16 +01:00
Cheridan 7149f0382d Adds Pet Collars!
Map needs update now
2015-03-18 21:27:21 -05:00
phil235 456a64f8fd slime from carbon to simple animal 2015-03-14 23:40:57 +01:00
Remie Richards f6e4c1518d A restructure/removal/cleanup of Ninja Code 2015-03-09 20:43:56 +00:00
dannno 012837a4f5 appease my own 'tism
even numbers are nice
2015-02-11 20:03:54 -05:00
dannno 7d4fb341df no more alternating letters in slurring 2015-02-11 20:01:23 -05:00
dannno 54f1d333d7 Adds a slurring filter, replaces stutter filter where appropriate 2015-02-10 16:39:17 -05:00
phil235 f112f2acbb Fixes two typos in ran_zone() proc. 2015-01-11 15:10:56 +01:00
Razharas 0921aa201f Added datum mutations
Also removed some mob vars like sdisabilities and merged the usability
with disabilities
Removed need for mutations var, they are not handled in dna
Removed blinded var, now its handled by eye_blind being bigger than zero
Ands lots, lots of other shit in files that used mutations
2014-12-12 04:48:11 +03:00
tkdrg 705a264dcf Makes data huds passive. 2014-11-16 01:52:06 -03:00
Miauw 88dad2b5d5 Fixes whisper formatting hopefully maybe. Fixed #5140
Also does a bunch of other stuff.
2014-10-12 14:36:20 +02:00
paprka d61e4ac943 big commit, handcuff overhaul 2014-10-08 13:19:54 -07:00
phil235 537280b4b9 Removing many instances of the no longer used second argument of message_admins() proc.
Replacing "for(var/mob/M in viewers()) M.show_message()" by "visible_message()" or audible_message()" in many places.
Changing a few span classes.
2014-10-05 01:29:30 +02:00
Remie Richards 473bcd1858 Ports Drones from NTstation + New Improvements/Features 2014-09-13 15:02:57 +01:00
Cheridan 7750a2baae Merge pull request #4525 from GunHog/HUDS_For_All
Silicon Medical and Security HUDs!
2014-09-07 20:01:12 -05:00
ikarrus c22a44d676 Fixes Round-End report bugs
- Fixes #4664 New Players won't get the "you did not survive" message
- Shift duration minutes will never neve have more than 2 digits (Same thing has been done for the Round Duration timer in Check-Antags Menu)
2014-09-04 21:05:07 -06:00
GunHog 81e178737d Silicon Medical and Security HUDs!
- The AI can now access both Security and Medical HUDs via a new button
on its UI. The Medical HUD is exactly equal to all others. The AI's
Security HUD cannot detect implants.

- Cyborg HUD modules have been removed in favor of an inbuilt command,
to make it less of a hassle to access them.

- HUD code has been given its own file such that it can be used by any
mob. In addition, HUD users are placed into a list instead of searching
for only humans and checking them for a HUD item. This is to make it
easier to expand.

- Security HUD messages can now be received by any mob using a SecHUD.
2014-08-21 22:59:30 -05:00
ikarrus ef6ca38348 Brig cell timers notify SecHUDs when the timer has expired
Helps Wardens keep track of prisoners and hopefully reduces re-arrests of released prisoners

It's all in a new proc, broadcast_hud_message() which handles securitron arrest declarations as well.
2014-08-14 22:34:33 -06:00
Cheridan b02b93ce2a Notifications + Random Stuff
Adds sound notifications for Ninja and Wizard Apprentice spawning -- hopefully means fewer afk antags.

Adds a ghostnotice span class, used in the new notify_ghosts proc. Upon creation, things that require ghostly attention (NarSie, golem runes) give more visible messages to the dead.

Retires the 'moderate' span class, which was only used in tomato throwing? Refactors tomato code (this ended up being the meat of this PR, somehow...)

Reorganizes some item definition/procs.
2014-07-01 23:16:02 -05:00
Aranclanos c65aa2b5a4 Merge pull request #4000 from Cheridan/terribleidea
MONKEY MODE REDUX
2014-06-30 16:27:22 -03:00
CollenN 2aab5fa71c Finalizes Mutantrace Datum Update
https://github.com/tgstation/-tg-station/pull/3609

Squashes the commits from the above pull request. Should hopefully be a
lot less cluttered.
2014-06-19 17:42:14 -04:00
Cheridan 352d5a5627 MONKEY MODE REDUX
AHUAHEUAHUHEGUEHGAUHEGUAEH

monkeys will now possibly transfer all diseases on bite because that's how diseases kinda work
2014-06-14 21:30:25 -05:00
Rockdtben 569d12facf Moved item_heal_robotic out of obj/item and into mob_helpers.dm 2014-06-05 19:25:08 -05:00
Aranclanos d96c418371 returns a sanitized string on the stars() proc 2014-04-15 20:23:20 -03:00
Aranclanos 6936a1a32c the stars() proc will now use the html_decode()
this fixes the html fuck-ups when a human talks and an alien receives weird text in the middle of the "***".
2014-04-02 09:49:45 -03:00
fleure c55ddd9d70 Watertank nozzles no longer delete 2014-03-29 12:35:58 +00:00
Incoming 03464e1f4d Slime Mob Refactor
Death of the istype invasion from slimes, previously every single color of slime was its own kind of mob, and every single one of those slimes also had an adult form which was a different mob.

There is now only one kind of slime, reliant on new var is_adult and old var colour to determine how it looks. All baby slimes functioned identically outside of icon and core, and all adult slimes functioned identically to each other and to the babys save for a bit higher Health and more capacity to break shit.

A nice side effect is that this solves any inheritence issues of baby slimes growing up since it's still the same mob, though it doesn't solve the same issues for adult slimes splitting.

Also fixed a few annoying but rare bugs (like getting ghosted because you got DC'd and your slime self split and you weren't around to get mind transfered)
2014-01-13 19:38:37 -05:00
Cheridan 8006b75307 Merge pull request #2182 from Rockdtben/sayRefactor
Refactored how say deals with masks. As well as derp speech.
2014-01-01 14:46:04 -08:00
fleure 61f2cf9292 Fixed stabbing head with thick suit on 2013-12-31 23:39:30 +00:00
Rockdtben 89faaaf999 Moved Speech Modification via masks to masks. say and whisper now call the speechModification(message) proc in wear_mask.
Moved derpspeech modification to mob_helpers.dm
2013-12-29 12:12:41 -06:00
Giacomand 80f2076bcc * Fixed the party alarm from only working in areas with a certain light level.
* Reduced a lot of duplicated code in the party alarm.

* Added a shield range variable for the anti-breach shield generators.
* Changed the shield range to 4, making them more useful.
* Fixed a bug with the deployed_shields list not being cleared after the shields are down.

* Fixed a runtime with shake_camera()
2013-12-19 22:07:52 +00:00
Giacomand 92480d60b4 Fixes the screen shaking from having your camera get stuck on a turf. 2013-12-11 04:17:46 +00:00
Razharas b7b45881b2 Made abstract a flag and other stuff
Everything that had abstract var now has ABSTRACT flag
Everything that checked abstract var now checks ABSTRACT flag
Fixed some runtimes
Fixed click code and face direction changing while cuffed
Added del to all attack_* of the proboscis in case shit goes real
AStar is still weird so added  a simple sanity check
2013-11-18 03:53:50 +04:00
Robson Richards 1c70008d0c Changes Limbs into Obj's
Reworked all the paths for it
Reworked all the procs for it
2013-10-11 19:11:55 +01:00
supersayu 475042a212 Click code rework
Fixes #646, #579, #863

Completely redoes the click code.  Moves all click related code into code/_onclick for reference.  Also moves hud datum code and all the screen object code I could find into code/_onclick/hud, as it is related.  Item attack(), attackby(), afterattack(), and attack_self() have been moved into item_attack.dm for consistency.

Completely removes dummy objects and adds atom.Adjacent(user).  This proc checks for border items and anything marked with throwpass for determining whether or not you can reach a given square.  A turf helper, ClickCross(), was added to facilitate this.

Removes the monolithic Atom.Click() proc in favor of an overridable click handler attached to mobs.  Click code no longer uses the : path operator as a consequence, and mob/lastDblClick has been moved to Client/next_click.  A few end arounds were necessary (screen objects, buildmode, and spells), but this has been handled by repurposing Atom.Click(); if you have special click code, insert it in the object's Click() function and return 1 to prevent normal processing.

This update adds support for attack_ghost(); the previous "new" click handler had support for it but was never finished.  I have taken the liberty of letting ghosts click portals, the gateway, and the teleporter to jump to the intended target square, and kept the previous default action of examine()ing every damn thing you click.  It is to be suggested that you could do more with this proc when ghost interactions are enabled.

This update also adds support for double clicking.  It is currently only used for ghosts and AIs, because the original (first) click still registers normally.  For both of these, double clicking a square will jump you to it, and double clicking a mob will follow it.  In the case of ghosts, double clicking bots and the singularity will also set you following it; if you double click your own corpse, you will re-enter it; this also works if your body is in a closet, sleeper, DNA scanner, etc.  Default mobs ignore double clicks as normal.

-- NOTE --

There are two flags which were previously unused or misused by click code: USEDELAY and NODELAY.  Ostensibly, USEDELAY would double the normal 1sec delay, and NODELAY would remove it.

Using either of these flags as intended would significantly affect the timing of the game.  In particular, USEDELAY is currently applied to guns and about everything else that acts at range.  I am adding USEDELAY as a half-second increase for now, but I have not put a significant amount of thought into it.  I considered lowering the normal 1sec delay to .8sec to balance it, but the consequences of that on combat involve more calculations than I care to make.

NODELAY seems to never have been used, and I did not implement it, but I could do so trivially.
2013-09-17 18:15:54 -04:00
Cael_Aislinn 286ff34588 moved human helpers out of human.dm to new file human_helpers.dm, added two new mon helpers to check for mutations and mutantraces
Signed-off-by: Cael_Aislinn <cael_aislinn@yahoo.com.au>
2013-09-01 13:37:07 +10:00
Matevž Baloh 6435de1c03 Merge pull request #948 from Giacomand/proj_fix
Changed the projectile code: "accuracy == distance between the target and the shooting location" Fixes #922
2013-07-24 14:15:35 -07:00
Giacomand 7601500650 * Cleaned up the ran_zone proc. 2013-07-24 22:11:49 +01:00
Cheridan c68e73e164 Adds a UI indicator for blob overminds.
This unfortunately necessitated the addition of a mob/camera/blob/Life(), but I think that the added ease-of-use is worth it.
2013-07-12 17:56:54 -05:00
Giacomand e7718541d6 Changed the projectile code to have a lower probability to hit your target area the further away you are, instead of the further the original target was. This is more logical and makes sense. I also changed how it decides which zone to hit instead, if the random check fails.
Fixes #922
2013-07-10 09:35:07 +01:00
carnie f15d583a68 Resolves #830 - ghost_form is only selectable by members.
ghost_form is now saved with other preferences.
Public visibility of memberships is toggable and saved with other preferences.
ooc-colors for admins and members are now sanitized. Bright colours like Yellow, white and baby-blue will be darkened for the sake of legibility.
Related to above - added helper procs to convert between RGB and HSL colour models.
Admins cannot modify var/unlock_content without +DEBUG rights. unlock_content moved from client into prefs.

Player savefile version number updated - this will trigger savefile updates, no data should be lost.
2013-06-24 05:35:39 +01:00
Ikarrus 26becb3937 Traitor Panel Improvements
-Added logging for admins editing objectives
-Added logging for admins adding new antagonists
-Changed the antag role assignment buttons to something more appropriate for the game modes. Will now tell you if someone is loyal (implanted).
-Added a isloyal() proc to check if a mob is loyalty implanted.
-Made the headrev message more noticeable
2013-06-17 22:39:32 -06:00
carnie 043028db83 Resolves #283
DNA modification uses normally distributed random numbers. Radiation strength dictates the standard deviation of the change in the hex character which is hit (higher output means greater chance for a large change) . Similarly, radiation duration dictates how likely we are to hit the hex-character we clicked on (longer duration means more likely to hit). Irradiation is strength*duration. All balancing is done via multiplier defines so you can rebalance it easily.

DNA blocks and structuring all use defines. Making modification/expansion easier. I'll likely expand this into a datum-based system to allow more interesting features, reduce code further and allow admins to interact with the way dna strings behave.

DNA strings can be spliced together using merge_text().
 e.g. string 1: "Hello World"
 string 2: "Seeya______"
 result: "Seeya World"
 This isn't used except for admin-spawnable SE injectors at the moment.

r_hair, g_hair, b_hair, r_facial, g_facial, b_facial, r_eyes, g_eyes, b_eyes were removed and made into 3 short hex-colors.

Skin tones now support colours other than shades of brown. I've had to restrict it heavily until other stuff is done. Skin tones include Albino Caucasian, Oriental, Mediterranean, etc.

Data disks and DNA injectors were reworked to use associative lists so transferring data is just a matter of doing list.Copy()

var/dna is now defined at /mob/living/carbon level. Only monkeys and humans may have dna currently. Support is there for all carbon-based lifeforms to have dna.

DNA modifier console has almost all controls on one screen.

UIs and UEs can be injected separately (appearance and name, respectively)

dna helper procs like ready_dna() and such were changed to make them more versatile. There is now a hardset_dna() proc as an alternative to ready_dna which can initialize dna with properties passed into it or update an existing dna string (useful for cloning and antag spawning)

Every block of SEs are in randomised positions.

Disabled automatic logging of world.log, as it produced undesirable behaviour.

Mr Muggles and God Emperor of Mankind disks removed.

Floor() removed. (it was completely uneccesary, that is what round() is).

Fixed spelling mistakes in modularchangling.dm (thanks tenebrosity)

Tanning removed from beaches (again)

Experimental: monkeys and humans do not have dna until first attempt to read dna (using check_dna_integrity(mob))
This is mainly due to the way everything is hardcoded into New().

Changelog.html updated
Signed-off-by: carnie <elly1989@rocketmail.com>
2013-04-24 09:37:30 +01:00
carnie 2819651811 Very minor optimization to MrPerson's changes.
Replaced some ifs with a switch statement.
Replaced an uneeded loop through a list (list.Remove() does this anyway)

Signed-off-by: carnie <elly1989@rocketmail.com>
2013-03-18 03:15:31 +00:00
MrPerson 8448fc0104 Remove that annoying ass "is_special_character used on an unknown silicon" debug message. 2013-03-17 16:34:49 -07:00
MrPerson eb95e92d78 Err... ok so now is_special_character() is good. Sorry. 2013-03-11 11:59:18 -07:00
MrPerson 520a9cfdcd Tweaked is_special_character() to be meaner, leaner, and less buggy
Not that those bugs matter, they only effect traitor cyborgs.
2013-03-11 10:10:19 -07:00
MrPerson a88b30ab31 Removed mind.original
All usage of it on silicons is replaced by is_special_character()
is_special_character moved from admin.dm to mob_helpers.dm
Also fixed a runtime having to do with objectives.
2013-03-11 05:40:21 -07:00