>update_mutantrace() is no more, it is now part of update_body()
>Moved a lot of stuff into update_base_icon_state(), this will allow making mutantraces modular.
Almost all icon operations are now removed from human overlays (obviously some are still required for recolouring hair and eyes). Any remaining dynamically generated overlay icons are applied individually. This will allow byond to cache them better. This will also eliminate the bug where humans are initially invisible/unclickable when you first encounter them (due to network latency where the icons are being downloaded).
>UpdateDamageIcons() renamed to update_damage_overlays(), so it has the same sort of name as the other procs
>update_icons=true or false arguments removed from human overaly-update procs, no longer required. (i.e. the update_body() update_inv_whatever etc procs do not call update_icons() - see documentation for details)
>mutantrace icon_states moved into human.dmi
>skeletons are now a mutantrace, not a mutation.
>update_icons system should now be even more efficient (thanks partly to aranclanos)
>documentation rewritten
>copypasted code moved into helper procs - super tidy code :3
Other:
>Removed compile error where the core code was reliant on compiling away mission code. >:[
>s_tone renamed to skin_tone
Modified code/modules/mob/living/carbon/human/update_icons.dm
Modified code/__DEFINES.dm
Modified code/datums/datumvars.dm
Modified code/datums/limbs.dm
Modified code/game/dna.dm
Modified code/game/gamemodes/changeling/changeling_powers.dm
Modified code/game/gamemodes/cult/cult_items.dm
Modified code/game/gamemodes/cult/runes.dm
Modified code/game/machinery/doors/airlock.dm
Modified code/game/machinery/portable_turret.dm
Modified code/game/machinery/teleporter.dm
Modified code/game/mecha/combat/combat.dm
Modified code/game/objects/items.dm
Modified code/game/objects/items/stacks/medical.dm
Modified code/game/objects/items/stacks/sheets/glass.dm
Modified code/game/objects/items/weapons/storage/bible.dm
Modified code/modules/assembly/mousetrap.dm
Modified code/modules/hydroponics/hydroitemcode.dm
Modified code/modules/mob/living/carbon/carbon.dm
Modified code/modules/mob/living/carbon/human/death.dm
Modified code/modules/mob/living/carbon/human/human.dm
Modified code/modules/mob/living/carbon/human/human_damage.dm
Modified code/modules/mob/living/carbon/human/human_defines.dm
Modified code/modules/mob/living/living.dm
Modified code/modules/mob/living/simple_animal/friendly/slime.dm
Modified code/modules/mob/mob_grab.dm
Modified code/modules/power/lighting.dm
Modified code/modules/reagents/Chemistry-Reagents.dm
Modified code/unused/_debug.dm
Modified icons/effects/genetics.dmi
Modified icons/mob/human.dmi
Modified maps/RandomZLevels/wildwest.dm
Modified tgstation.dme
Signed-off-by: carnie <elly1989@rocketmail.com>
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>
This updates everything that used equip_e, particularly the strip panel, but also DNA injectors and CPR.
Removed unused mob vars:
var/obj/effect/organstructure/organStructure
var/other
var/proc_holder_list[]
Removed unused alien suit and head slots.
Removed var/obj/item/weapon/card/id/wear_id from monkeys, and updated ed209s to not use :
Renamed HUMAN_STRIP_DELAY to STRIP_DELAY.
Muddled Topics() around so that mobs are now a bit more OO. Also updated quite a few misc inventory procs to various degrees.
Updated monkey and aliens huds a little bit.
Random movement when confused now happens half the time.
Fixed monkey breathmask onmobs.
Added a .unconscious text style, for that nice bold blue text you get when you're unconscious. Only CPR uses it at the moment.
This has been tested fairly extensively, and everything seems to work fine.
-Merged commits ~carnie
Signed-off-by: carnie <elly1989@rocketmail.com>
-Removes stungloves and all related code.
-Makeshift stun batons can be made in their stead, along with spears. Spears can be thrown or used one or two-handed.
-Major stun baton revamp. They now accept batteries, which can be removed and replaced.
-Fixes the bug where you could use TK to make a dualsaber from a single saber.
-Adds monstrous housefly mutation.
-Teleporter malfunctions have been changed to something more !FUN! than random spacing. Instead, you get irradiated and horribly mutated. To prevent this, one should Test Fire to ensure the teleporter is properly calibrated. Recalibrations will be necessary with frequent teleporter use.
-Capsaicin can be turned into Condensed Capsaicin via chemistry.
-Alters the effect of pepper spray slightly. Changes it from a paralyze(KO) to weaken(stun like batons, etc), and adds slight lingering confuse effect.
-Adds teargas grenades(pepper spray smoke chem grenades), currently obtainable in Weapons crates and Riot crates.
Supplypacks:
-Adds a roll of film to the bureaucracy crate, and made it a little cheaper.
-Removes the beanbag crate entirely, it redundant. Just print out the beanbag shells at the autolathe.
-The previously-overpacked Riot gear crate comes with 1 less set of equipment, but with more handcuffs. Made cheaper to compensate.
-Updates some of the icons used by SecHuds; namely security/hos, medical doctor, and loyalty implants.
-Also repaths the shield barrier crate, which had the same path as another supply pack. Not making a separate pull for a 1-line change~
* Added datums for uplink items. This allows you to easily add items to the uplink in a maintainable manner.
* This fixes the href exploit which allowed traitors to spawn any item they wish.
* Made the uplink interface still show unbuyable items, but grayed out.
* After unlocking your PDA, it will return to the main menu; this will help stop metagamers.
* Your password will be trimmed, meaning that entering "213 Alpha " will be correct and won't set it as your ringtone.
* Replaced all the old uplink code, which is useless now.
* Changed all the feedback procs to instead use the uplink datum's name. This is important if you are keeping track of stats.
* Moved the bundle uplink item to the "Badass" category.
Removes the old tgstation database. It has been merged into the newer feedback database.
All mentions of the old database have been replaced with the new one.
This includes updating tgstation_schema.sql and dbconfig.txt.
Removes README feedback.txt as it is now covered by the new schema.
Removes the unused forum DB stuff, including forumdbconfig.txt.
Updates the config, including both config.txt and game_options.txt. Many options have been moved into the latter.
Updates configuration.dm to reflect these changes.
Removes the config var/feature_object_spell_system as it did nothing.
You can now change the link to your github project by modifying config/git_host.txt
Removed config/svndir.txt, as it is no longer needed.
Signed-off-by: carnie <elly1989@rocketmail.com>
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.
-Dualsabers now come in the alternate colors, sprites courtesy of mjrseph.
-Adds the Vealrender, a harmless and goofy version of the veilrender, courtesy of supersayu. You can possibly find it in mining asteroid surprise rooms.
-*flap and *aflap are gender sensitive now, whoa!
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5834 316c924e-a436-60f5-8080-3fe189b3f50e
- Restructured viruses in the reagent container to be more maintainable. Should also fix some issues with vaccines.
- Restructured some code in the PANDEMIC.
- You can now mix vaccines together, it will combine the list of viruses it will vaccine against.
- Fixed Carp stunning Cyborgs.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5817 316c924e-a436-60f5-8080-3fe189b3f50e
Wizard staffs, SAW, combat shotgun still don't
Added the Mjollnir and Singularity Hammer. Just silly melee weapons I coded/sprited for fun. Both are using the Mjollnir's sprites currently though I didn't have it in me to make a billion more inhands for the Singularity Hammer.
Mjollnir shocks the target and hurls them away/spews lightning around.
Singularity Hammer pulls everything nearby in towards the target.
Don't really have plans to balance them or make them obtainable in game but I thought as long as I'd coded them some admin or another may enjoy trading them to antags/giving them to the chaplain etc.
Lowered fireballs cooldown and decreased its explosion size (so wizards can use it without killing themselves by causing hull breaches)
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5805 316c924e-a436-60f5-8080-3fe189b3f50e
- Greatly decreased the goat attack damage. Fixes Issue 1310.
- Changed how the suffixes are assigned for mulebots. Fixes Issue 1204.
- Added some checks for occupants in sleepers/cryo/cloner pod, stops an exploit of being able to have a friend teleport you to the sleeper when you're in danger.
- Re-added advance proc call for debug flag.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5796 316c924e-a436-60f5-8080-3fe189b3f50e
-Replaced some notice spans with a more appropriate danger span
-Reduced resistance of visionloss symptom and added a check to stop spamming you with "You are blinded!" notices
-Added a check to the reagent symptoms so you don't get ridiculously high volumes in your body if you wait long enough
-Added more coins around the station
-Moved message monitor decryption key to CE's office since the RD can't even access it any more (and is not relevent to his duties)
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5766 316c924e-a436-60f5-8080-3fe189b3f50e
- Facehuggers will now let you open the bag even if you're wearing facehugger proof gear.
- Added some sanitizing to signal().
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5756 316c924e-a436-60f5-8080-3fe189b3f50e
Fixes issue 1309. Kitchen Vendomat vends "weapon"
Removes the cautery step from debraining, as it was pretty pointless and needlessly confusing.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5754 316c924e-a436-60f5-8080-3fe189b3f50e
- Added a new area proc, mob_activate, which is called by a living mob's Life(). You can use it to have mobs react differently to different areas.dm
- Used the above change to make transit areas push mobs backwards.
- Fixed the server room air alarm from freaking out.
- Reverted my change to singularities, they will now pull correctly.
- Made the wire interface screen bigger to accommodate for different fonts.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5749 316c924e-a436-60f5-8080-3fe189b3f50e
The AI has been moved to Research Division, and Telecoms has been moved into the former AI chamber. Affected areas: Telecoms Satellite, Research Division South & Command Sector.
-Reduced tech levels of subspace equipment
-Removed CE's teleporter access (No longer needed to access tcomms)
-Reduced grey space suit slowdown
-Increased voidsuit slowdown
-Engineering and mining hardsuits hold different equipment now
-Updated Changelog
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5734 316c924e-a436-60f5-8080-3fe189b3f50e
var/obj/item/weapon/back
var/obj/item/clothing/mask/wear_mask
var/obj/item/weapon/tank/internal
from /mob to /mob/living/carbon.
/mob/proc/abiotic() no longer does any extra checks even if full_body == 1.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5722 316c924e-a436-60f5-8080-3fe189b3f50e
http://forums.nanotrasen.com/viewtopic.php?f=16&t=12245#p189186
Ported all the random events to Pete/Gia's event system:
>Event system now supports weighting. default is 10. a weight of 5 is half as likely as default, 20 twice as likely....etc.
>Increased the frequency of events (dust happens over 60% of the time though)
>tidied up some ninja code: ninjas now get ~5 objectives. So they are hardmode.
>made the gravity toggle into a random event
>event system now supports round-start events
>event system now supports holiday events
>event system now supports events which can only happen after the round has lasted a certain number of ticks
>event system now supports max_occurrences for events. Setting any event's max_occurrences to 0 will stop it randomly occurring
>events now support being fed associative lists inside new(). This allows you to override their variables easily.
>wormhole events no longer cause loads of lag. They are extremely deadly. wormholes should be avoided
Other:
>replaced the procs for fetching candidates for ninjas and aliums with /proc/get_candidates(be_special_flag), it returns a list of active clients with that be_special preference enabled.
>minor fixes to minds
>your memories are displayed to you at Login()
>removed aliens_allowed
>removed ninjas_allowed
>pick_n_take() is now more efficient (uses Cut() rather than Remove()
Things I added:
- Made the pandemic call ..() instead of doing the checks itself.
- Made the staff of animation use more charge.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5720 316c924e-a436-60f5-8080-3fe189b3f50e
- Added some garbage collecting procs for NTSL.
- APCs now have its missing status text, for the wire interface.
- Clicking on a hand HUD slot, while the hand is actively selected, will make the item being held call attack_self().
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5715 316c924e-a436-60f5-8080-3fe189b3f50e
- Improvements to alien eggs so that they didn't bug and freak out, causing infinite loops. You can also destroy eggs if you keep hitting them after they burst.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5712 316c924e-a436-60f5-8080-3fe189b3f50e