Changed atom's bullet_act to call the projectile's on_hit, and changed
most bullet_acts to call on_hit as well. Removed some now-unnecessary
snowflake code.
These changes will make projectiles which should effect non-mobs, such
as the gyrojet and the ion rifle, work properly. Inanimate objects can
now be empulsed with the ion rifle, whose projectiles used to dissipate
on hitting anything but a mob. Gyrojets now explode on most objects, as
opposed to just on walls and mobs, and the snowflake code that made them
work on walls is no longer necessary. The code for pulse rifles'
breaking walls has been moved from a check in turf to a check in pulse
beams, and has been expanded to include structures, allowing them to
(slowly) break girders. For coders, it means that on_hit is a reliable
proc for the effect of a bullet's hitting an object.
Moves /obj/effect/alien/acid to /obj/effect/acid. Adds a new sprite for acid.
Standardises and updates text styling in code/game/objects/effects/aliens.dm.
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>
-Spraybottle chempuffs will now pass over tables.
-Further reorganization of chemistry reagents. Organizes toxic chems into subtypes. This cuts down on copied code and allows us to do fun things in the future, like machines that filter poisons and such.
Fixes the bug with effects/glowshroom not glowing when placed.
They don't spread infinitely: The odds of a shroom spreading decreases with each generation. Because they're sane now and not virally-spreading fungal horrors, they've been changed to spread on normal station floors and not just the asteroid.
The spreading glowshrooms acquire the parent's stats, with some mutations.
The delay variable is now based off of production, and goes DOWN with better stats instead of GOING UP.
-Removes unnecessary (copy-pasted) code bits in walking mushroom/killer tomato code in grown.dm
The main goal was to remove all the pointless shit in the UI style dmis, but this commit actually goes a bit deeper than that.
Formally renames the "hurt" intent to "harm", in line with everything else in the world.
Removes the old screen1_... .dmis. They've been replaced with screen_... .dmis. They function much the same.
screen_gen.dmi is used for things which apply to multiple UI styles, such as storage slot sprites, or the intent selector. (These can still be overridden in HUD code, though.)
Item action buttons have been changed to use a template from the UI style, and the icon_state of the item.
var/icon_action_button has been removed- varvar/action_button_name must be used instead to add action buttons for items.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5826 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
- Moved some fingerprint procs to detective_work.dm.
- Removed some unnecessary del() usage in the detective code.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5800 316c924e-a436-60f5-8080-3fe189b3f50e
- Fixed a bug with C4 not causing an explosion around a target, which is a mob.
- Fixed not being able to put para/sleepy pens on your ear.
- Added a delete proc for reagents (the container) which will garbage collect it.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5772 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
- 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
Fixes issue 1172. Janicarts disappear in foam
Foam is now TURF_LAYER + 0.1
Fixes issue 1248. Wirecuterrs disappearing (with gift wrap)
Gift wrap is now applied on top of an already wrapped package, to make it pretty.
Standardised sortingmachinery.dm.
Commented out some areas from the the_station_areas list which are no longer present on the station.
Added the energetic flux (revamped blackhole event) and mass hallucination event. Both are pretty mild.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5611 316c924e-a436-60f5-8080-3fe189b3f50e
- Moved explosion capping to explosion code, overridable by setting a proc parameter, which defaults to off, obviously.
- Reduced r-walls' explosion resistance from 25 to 15. They can now be destroyed by strong bombs.
- Added liquid processing to the sun part of the MC
- Added additional calls to atmos processing to the MC. You can enable this by (manually, with the debug controller verb) enabling the fast_atmos_1 .. 3 variables in the configuration datum. The intent of this is to enable it in a few rounds to see if it is possible to make atmos calls more common.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5607 316c924e-a436-60f5-8080-3fe189b3f50e
Moved some unticked files into code/unused.
/code/datums/organs/pain.dm
/code/datums/diseases/alien_embryo.dm
/code/game/objects/effects/biomass_rift.dm
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5604 316c924e-a436-60f5-8080-3fe189b3f50e
- Made the singularity not move stuff while contained, should help and make it easier to work with; such as fixing the field generator.
- Added logging for gold slime extracts.
- Removed unneeded deletion of signals in telecomms code.
- Added a debug verb which will record pointers of signals that weren't garbage collected.
- Removed the need to create a mob to compare it in telecomms code.
- The spider infestation is more likely going to spawn nurses.
- Runtime fix with spells.
- Reverse list actually does something now. Bots never needed it so I removed it. (Thanks carn)
- Added an ON_BORDER flag for border firedoors.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5601 316c924e-a436-60f5-8080-3fe189b3f50e
They also added extra checks to
-Everytime a mob attacked (checking for super strength and electric hands)
-Every time a mob was attacked (checking for dermal armour)
-Every time a human was shot (checking for reflex)
-Every time a human breathed (checking for rebreather)
-Every tick of human life (checking for regen)
-Every hud update (checking for radar)
Not to mention just cluttered mob code in general. I know there won't be any noticeable performance increase from this but seeing as they were never going to be finished (I asked Doohl beforehand) and mob code is messy enough as is, I think only good can come of removing the code.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5587 316c924e-a436-60f5-8080-3fe189b3f50e
- Fix for retaliating hostile mobs to not attack itself.
- Grammar fix for goats and cows.
- Fix for malfunction and continuous rounds; which doesn't stop the count down timer when the AI dies.
- Spiderlings won't grow inside vents and spiderlings are much easier to kill, can be shot with a projectile and display a message after dying.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5548 316c924e-a436-60f5-8080-3fe189b3f50e
Added a new syndicate bundle option, the smooth operator. Includes a pistol, silencer, clean up gear, and the ever essential suit and new formal shoes, with sprites by Flashkirby.
Currently the shoes are only used by smooth operators, but I'm gonna ask Ikarrus to put some on the latest map when he's done with it.
Changed the 9mm casing to use midbullet2, as weakbullet is just pathetic.
Removed /obj/item/weapon/glass, on account of it being awful and unused.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5543 316c924e-a436-60f5-8080-3fe189b3f50e
= Giant Spiders =
- Nurses spin webs which impede progress, bundle items and mobs up in cocoons, lay eggs to create spiderlings
- Nurses are slow and weak, but their bite has a chance to paralyse the victim
- Spiderlings skitter about and eventually grow into giant spiders.
- Spiderlings will ventcrawl, so they can spread over the station pretty fast.
- Hunters are fast, have decent health and the most effective poison
- Guards are medium speed but the health and direct damage
- The poison of hunters and guards can cause hallucinations if they bite you
= Farm animals =
- Cows can be milked or butchered for a large supply of meat. Sadists can also tip them over (with intent_help).
- Goats can also be milked, but have a nasty temperament.
- Chicks grow up to be chickens, who lay eggs and continue the cycle. But where did it start? (they're very noisy).
- All three are orderable via QM.
My changes:
- Added a spider infestation event.
- Optimized code with spiders and simple_animals.
- Made a /hostile/retaliate type which will only fight back when hurt. Based on Cael's code.
- Added some farm animals on the map.
- Changed events, added a setup() proc which can let you setup variables or the event. Made the event only kill itself when it has called, announce(), start() and end().
- Brainrot will only need alkysine as a cure.
- Communication blackout will always be silent.
- Changed some admin buttons to use the new event system.
- Added a forceEvent proc which you can use when you enable debug verbs.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5525 316c924e-a436-60f5-8080-3fe189b3f50e
Owl mask is now a gasmask.
Adds the missing icons for the arrest statuses of Parolled and Released, as well as a little blinking icon for chemical implants to hud.dmi
And adds them to hud.dm so they show in game also.
Updated the changelog.
Path change:
/obj/item/clothing/mask/owl_mask > /obj/item/clothing/mask/gas/owl_mask
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5501 316c924e-a436-60f5-8080-3fe189b3f50e
- Xenos suit and helm (completely obscuring, and almost indistinguishable from drones) (admin spawned only for now).
- Facehuggers now have different icon states for being thrown and after impregnation.
- New death, unconscious and sleeping icons for aliens.
- New icon (and projectile type) for neuroxotin.
- New infection overlay images for telling aliens about pregnant humans (3 icons, showing the progression of the infestation).
- New system for handling alien impregnation (alien embryos are an object inside the mob, instead of a disease).
- Players can be operated surgically to remove the alien embryos (targetting the chest: scalpel, surgical saw, hemostat, retractors. If the embryo is nearly fully developed, it might come out alive though.
- Corgis can now get impregnated.
- There is a short animated overlay of a chestburster when it comes time to burst chests.
- Alien larva now have three different icon sets, depending on their growth (25% they are bloody and pale, 25% - 75% they are pale, 75% onwards they are deep red).
Fixed up table smashing, and added rack smashing in the same way.
Added new north/south facing for the large alien queen.
Updated the changelog.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5493 316c924e-a436-60f5-8080-3fe189b3f50e
-Removed an unneeded fingerprint proc.
-Fixed some of the blood/vomit/gibs spills not correctly processing.
-Reduced the life of a virus with no mob host.
-You can now tell how a virus spreads by the Pandemic.
-Made making vaccines quicker and making blood virals quicker too.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5232 316c924e-a436-60f5-8080-3fe189b3f50e
Moved the modified wish granter and meat grinder from Brotemis' away mission map (wildwest) into wildwest.dm in the random z-level folder. This way if we get to rotating through different maps, we wont have leftover unused code laying around.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5118 316c924e-a436-60f5-8080-3fe189b3f50e