Commit Graph

46 Commits

Author SHA1 Message Date
Cyberboss
7a4f640eec Ports guns to Initialize 2017-05-25 19:51:08 -04:00
Lzimann
5a618297ce Replaces the default output with the to_chat wrapper. 2017-03-10 01:32:05 -03:00
Lzimann
e58ee1724f Refactors logging into a single var for all mobs and adds a wrapper for proper logging. 2017-03-04 13:32:35 -03:00
MrPerson
9dd81f1da8 Puts files in single quotes like they belong
This means they're included into the rsc and sent out althogh almost all of these files were already included elsewhere. Also DM will yell if the file couldn't be found for whatever reason like if someone moves or renames it.

I left out some file types for various reasons
dmis used in overlays: I have another pr I'll do later which will fix all of them and I don't want to conflict with myself
text files: they would get included in the rsc, which is completely unnecessary. However they're small, so they might be worth including anyway
2017-02-12 07:15:18 -08:00
kevinz000
0ced9342b9 [READY]Aimable wizard lightning bolts (#23723)
* ZAP!

* YOU DID NOT SEE THAT

* YOU DI NOT SEE THAT 2

* object orientated pr

* gdi

* protection

* object orientated pr v2

* REEEE

* blacklists

* Update magicarp.dm
2017-02-08 18:31:52 +13:00
TehZombehz
8cc9e6de50 Adds regenerate_organs proc and adds it to relevant regeneration code (#22740)
* Adds regenerate_organs proc to carbon and adds it to relevant regeneration code

I simply took the bit from the admin heal and made it into a proc and
added it to the necessary regeneration-related bits of code.

* Adds regenerate organs back to fully heal

For some reason this didn't get included in the previous commit.

* moves regenerate_organs to organ_internal

As suggested. It fits better here, anyways.
2017-01-07 19:38:29 +13:00
Mervill
c2e2440953 Merge branch 'master' into w_class
Conflicts:
	code/game/objects/items/weapons/twohanded.dm
2016-12-02 21:44:24 -08:00
Mervill
09ea5ad2e5 w_class now uses defines 2016-12-01 21:33:14 -08:00
Mervill
01d4232570 Remove slash from end of type refs/defs 2016-11-30 19:23:15 -08:00
Joan Lung
4cddd81120 Suicide now uses the pronoun helpers (#20973)
* This doesn't actually matter, because you're dead forever once it happens...

* is this entire pr chaff for something else

* you'll do it? nah, fuck that I'll do it
2016-10-18 14:36:38 +13:00
KorPhaeron
9ee67f942a Projectile Dismemberment and Wizard spellblade (#19783)
* Spellblade

* Plasma cutters and onback sprites

* Cleans up dismemberment projectile code

* Runtime fix
2016-08-11 15:43:29 +12:00
nullbear
98ee507de8 Adds noteleport variable
This is mostly a pre-setup for my greater-bag-of-holding stuff.

You can't use bluespace crystals/jaunters/hand teleporters to access bluespace-proofed areas. at the moment, this only applies to shuttles and centcomm.

Teleport beacons placed in bluespace proofed rooms can't be teleported to, except via teleporter station hub.

A little concerned because now 'hijack' antags cant use teleprods to fling everyone out of the shuttle while in transit. q_q could easily just make the shuttle non-bluespace proof though.

Note for mappers: This means you can create ruins that can't be teleported into using bspace crystals by setting the area "noteleport" to 1. This can be used to force players to travel through the ruin the way they're intended to. Or to prevent them from gaining access to areas they shouldnt normally be able to. (ie. the wishgranter ruin)
2016-06-09 20:33:25 +12:00
Incoming5643
2368de554f Healing wand/staff regenerate limbs on use (#17532)
* Fully_heal regenerates limbs

* Working in the browser is such a bad idea

* Seriously not a great idea

* Don't do this at home kids
2016-05-11 19:27:18 -05:00
Incoming
5a77cefe2d humor me here I can't test locally right now 2016-04-27 22:07:14 -04:00
Incoming
55b830f39d buffs the staff/wand of door creation: Doors created start open, it can also be used on airlocks to open them akin to the knock spell. 2016-04-27 21:44:53 -04:00
Robustin
64bd2125fa Slowed recharge 2016-04-16 23:11:25 -04:00
Robustin
bbf573addb Update staff.dm 2016-04-16 20:31:30 -04:00
Robustin
44ff69c799 Honk Bullet (#16788)
Adds honk bullet and staff.
2016-04-16 12:39:04 +02:00
phil235
7e1efca13a Created two new procs to handle reviving mobs more easily:
- can_be_revived(), used so we don't revive a mob who would immediately die again (lack of brain organ for carbons).
- fully_heal(), called by revive when we want to completely heal a mob before trying to ressuscitate it.

I gave some arguments to revive() so the proc can be used by more than just the admin healing code (ai revived by the AI fixer console, drone revived by another drone clicking it, strange reagent ressuscitating you, borg revived by restart circuitboard, changeling using his revive ability, etc)

This fixes borg revival not updating its vision correctly and not updating the diagnostic HUD. Same fix for changeling revival.
2016-02-16 23:27:08 +01:00
Cheridan
10b82ee45b Merge pull request #12304 from Incoming5643/utility_aint_gonna_cut_it
Adding Charge and Staff of Healing to the spellbook + category reshuffle
2015-10-25 05:23:03 -05:00
phil235
d3ee910211 Makes effect system code more OOP.
obj/effect/effect is now renamed obj/effect/particle_effect for better usability.
datum/effect/system and /datum/effect/effect/system are now both /datum/effect_system.
Fixes a bug where wall mounted igniters (and other spark producing objects) didn't produce sparks sometimes.
Moved explosion_particles.dm into the effect_system folder, because it has effect_systems code.
2015-10-21 23:28:29 +02:00
phil235
47909d525f Changes smoke to behave more like foam. Each covered tile has one smoke cloud. This makes smoke clouds much less random, especially in terms of reagent application.
Also smoke reaction now uses the TOUCH method instead of VAPOR, to differentiate smoke and foam. Mob without internals or gas masks also ingests reagents in the smoke.
Moved nanofrost smoke code to effects/effect_system/effects_smoke.dm
2015-10-15 21:52:37 +02:00
Incoming
d7713f21b9 The Staff of Healing is now selectable for a cost of 1 in the spellbook
The spell "Charge" is now selectable for a cost of 2 in the spellbook

The spellbook's category system has been reworked to help deal with the huge scroll bars it previously had and help identify to wizards what needs spells and items serve.

The new categories are:

Offensive:
Fireball
Disintegrate
Blind
Mutate
Flesh to Stone
Lightning Bolt
Curse of the Barnyard
Staff of Change
Staff of Chaos

Defensive:
Magic Missile
Disable Tech
Repulse
Stop Time
Smoke
Forcewall
Bind Soul
Staff of Healing
Scrying Orb
Wand Assortment
Armor Set

Mobility:
Mind Transfer
Blink
Teleport
Ethereal Jaunt
Knock
Staff of Door Creation

Assistance:
Instant Summons
Charge
Staff of Animation
Soul Stone Shards + Artificer
Necromantic Stone
Apprentice Contract
Bottle of Blood

Fixes an unreported bug where targeting your mouth with a staff of healing allowed self healing through suicide.

Adds an easter egg to clever wizards who try to charge the spellbook to get more charges.
2015-10-10 20:35:51 -04:00
Firecage
4688c2c969 Fixes proc arguments 2015-07-15 23:52:35 +02:00
phil235
b0cd6d34b1 Lots of work on acids, smoke, foam, reagents reaction() proc.
- fixed the fraction argument in reaction(...., INGESTED, fraction) so the proper amounts of each reagent react, not all of it.
- slight optimization of datum/reagents/reaction()
- small optimization /datum/reagent/proc/reaction_mob
- the smoke's reagents no longer do direct transfer upon crossed()/move() but uses "reagents.reaction( mob, TOUCH)" only.
- fixes no ingesting smoke if it's in the dark.
- removed block gas smoke effect flag from clown mask and other non "actual" gas mask.
- refactor how protection against touched chems being absorbed is done. get_permeability_protection() to get that protection. No more

simple RNG get touched or not, now the amount that touches you depends on your protection and the volume in question.
- changes acid_act to take volume into account.
- chem_smoke now uses process() just like foam, we remove the reaction from crossed() and Move(), it's only done in process() now.
- optimization of effect/smoke, OOP! And now all smoke effects use objprocessing instead of shitty sleep/spawn
- removed mob var/coughedtime.
- add a volume check to item/acid_act(), there's a threshold to be able to melt and then a probability to melt (acidpwr&volume).
- greatly lowered the amount of reagent in the smoke from dead blobspore (so the volume isn't enough for melting)
- human/acid_act(): damage to limbs depends on acidpwr&volume.
- fixes metalfoam not working.
- smoke powder: only one start() call.
- Amound of smoke objects depends on amount of smoke recipe created.
- Adds an argument to add_reagent() to block automatic call of handle_reaction()
- When using reagents/proc/trans_to(), reactions are now only handled after every reagent is transfered and not before.
- Amount of smoke objects depends on amount of smoke reagent created.
- radius of foam reaction depends on amount of foam reagent created.
- The amount of other reagents inside the smoke/foam decides the life expectancy of the effect.
- The amount of reagents in each small smoke cloud/foam cell depends on the amount of other reagents in the initial reaction but also

how much smoke/foam was created (more smoke means dilution of the reagents).
- smoke/foam's reagent reaction on mob decreases the life expectancy of the effect (to avoid reagent duplication)
- The amount of reagent reacting with atoms is less if the life expectancy is high.(to avoid reagent duplication)
- The amount of movement from the smoke now depends on the number of smoke clouds created.
- removing some useless code in chem_grenade/prime().
- When calling human/acid_act(), item acid melting chance lowers after each each successful melt in the list, some of the acid is

"used" to melt that item so the next items have a lower chance to melt (to make melting every clothing harder).
- remove the banned reagent list from sprays, not needed anymore now that acid is nerfed.
- chem_grenade reaction, if there's no reagent left after reaction (smoke/foam/etc, reagents cleared) you don't get the steam effect

and immediate reaction with all atoms around the grenade explosion. (Fixes foam cleaner grenade deleting bloodstains around it as soon

as the grenade explodes, even if the foam hasn't reached the tile yet).
- melted storage items now drop their content instead of deleting everything.
2015-06-22 00:35:24 +02:00
Cheridan
2aa0247b00 Merge pull request #9701 from Cuboos/SoundsEp2_WizardBoogaloo
Wizard Sounds has the update. Been a bit since i've done a commit, so…
2015-05-31 15:51:59 -05:00
Cuboos
fcc18020a9 Wizard Sounds has the update. Been a bit since i've done a commit, so forgive me if i did this wrong. Also added the third title song, there a lot of agreement on what to do so i'll just add it as is, if a change needs to be made i'll do it later. 2015-05-29 20:29:37 -07:00
xxalpha
aab00c4075 Fixed changeling revival not setting stat to CONSCIOUS.
FIXED IT

Changelog.
2015-05-21 23:51:10 +01:00
kingofkosmos
761d31cea0 More visible.message span classes removed. 2015-04-24 21:24:21 +03:00
MrPerson
651c3e6db5 Merge to master - sole conflicting file was ninja.dm FUCK NINJAS 2014-10-04 01:45:39 -07:00
Menshin
0f3b711629 Tidying presentation 2014-08-27 21:07:52 +02:00
MrPerson
9d9a657acf Change examine() from an atom verb to a mob verb
Just in time for the feature freeze, a big change that will introduce bugs! Yay!
Mob verb is called verb/examinate(target), which just calls target.examine(user) and face_atom(target)
For explanation why, see http://www.byond.com/forum/?post=1326139&page=2#comment8198716
Long story short, mob verbs are much faster than object verbs. The goal is to make right-click menus populate faster.

Also changes a bunch of examine() procs to always, ALWAYS call the parent. Except mobs, but you have 1 guess why I'm not touching them. Mostly this affects obj/item/examine().
And also remove a whole shitload of pointless set src in view(2) kind of crap. Also span classes.
2014-05-01 09:56:39 -07:00
Incoming
c83728bba1 Magic Mania 1.6: Baby's Day Out
*Adds unique sprites for the staves of door creation and chaos
**Item sprites
**Inhands
**Onbacks

*Fixes #3232 in a way that isn't terrible

*Basically this is the part of 1.5 that should have been done back when it was added
*Please raise wizard rates :3
2014-04-17 19:35:42 -04:00
Incoming
e5f0165d0d Merge branch 'master' of https://github.com/tgstation/-tg-station into avoiddrama_codemagic
Conflicts:
	code/datums/spells/charge.dm
	code/modules/projectiles/ammunition/special.dm
	code/modules/projectiles/guns/magic/staff.dm
2014-03-26 13:03:12 -04:00
Mloc-Hibernia
8af8a43d6f Initial pass to convert LF to CRLF
Signed-off-by: Mloc-Hibernia <colmohici@gmail.com>
2014-03-24 08:53:40 +00:00
Incoming
5c3f7777b9 Magic Mania 1.5: Big Trouble in Little Boxstation
---

A Few New Wizard Items

Staff of Chaos: Shoots random magic bolts. Charges faster and can hold more shots than other staves.
Staff of Door Creation: Works the same as the wand of door creation. There is apparently demand for this! Charges faster and can hold more shots than other staves.
Wand Assortment: A belt that comes of one of each useful wand, generated with the highest number of shots possible.

---

Cleaning Up the Spellbook

The spellbook was getting REALLY long, so it's been segmented into pages for spells, items, and one time use spells (aka the fun page). The spellbook also highlights the fact that you can upgrade spells better now.

---

Summon Magic Rebalancing

There's now a new catagory of magic items that are especially potent. These have a very low chance of showing up now and only one can spawn during a casting of summon magic, if one even spawns at all. The person who gets it is not guarenteed to be a surivor either.

In this category: Staff of Animation, Staff of Change, Staff of Chaos, Wand Assortment, Contract of Apprenticeship.

Additionally the staff of door creation is now in the normal pool and the staff of change is no longer in the normal pool.

---

Misc Stuff

Adds Bats and Goats to the staff of change.
Changes the charge spell so if you charge something that can charge on its own there's no chance of degradation.
2014-03-08 17:30:40 -05:00
sirbayer
f4542ee258 Scattershot ho! 2013-12-30 20:43:10 -08:00
sirbayer
d502cc86ea Merge branch 'master' of https://github.com/tgstation/-tg-station into srsbsns-deadlyboolets
Conflicts:
	code/modules/projectiles/guns/magic/wand.dm
2013-12-30 16:39:12 -08:00
sirbayer
a0a73d1ab5 Jesus Christ it compiles 2013-12-30 16:30:36 -08:00
Incoming
45e89b5190 Bugfix: Adds a var to simple animals "player_controlled" to surpress behaviors in simple_animals that have players assigned.
Bugfix: Dead player mice won't be converted to items so they can still be revived.
Bugfix: Players playing chicks won't die by developing into chickens anymore
Bugfix: Fixes an edge case where a poor soul struck by multiple polymorphing shots at once ends up in a state where they can't move.

Feature: Renames the wand of resurrection to the wand of healing to drive home the fact that it does the same things the staff of healing can do

Balancing: Gives the wand of healing more shots. 10, 5, 5, 4 up from 3, 2, 2, 1
2013-12-18 12:28:38 -05:00
Incoming
6efd7d39e0 Adds new and better wand and spellbook sprtes by Neerti
Adds new functionality where wands will look different once they're out of charge for at a glace judgements
Adds a wand of nothing to the hacked item list for the autodrobe, by popular request
2013-12-15 16:55:11 -05:00
Incoming
c9f69869f2 Aranclanos Fix Omnibus
*Removes zapping oneself by attackselfing a wand, leaving clicking yourself while holding the wand the only way to do it because...
*Removes the warnings for zapping yourself with bad wands. Careful with that wand of death, kids!
*Removed some redundant lines
*Adds logging/sounds to zapping yourself
*Removed the change to wizard_continuous_rounds. It will become it's own PR
*Removed some redundant lines
*Uses the mob/living revive() proc to heal/raise people using the wand/staff of animation
2013-12-14 19:40:58 -05:00
Incoming
c396c3ae8a Suggestion implimentation patch!
*Span classes the whole update
*Spellbooks no longer vanish after being used, instead used spellbooks now have various bad effects should they be attempted to learned from again (the original reader won't acidentally fall to this, as they will just say "I've already read this"). Leave em out as traps for people or properly dispose of your trash! Or...
*The charge spell can now attempt to recharge one use spellbooks so someone else can learn the spell. This only has a 20% success rate and will destroy the book should it fail (even if the book was actually unused). You can't attempt this on the wizard's spellbook
*The "staff of nothing" (functional) placeholder now uses the generic staff sprites
*Spellbooks can now be placed in bookshelves just like normal books
*The teleport spell won't yank anchored things anymore, but as a consolation it will warp the entire contents of a tile should it be targeted. The code has been tweeked so this shouldn't effect the server too bad even if large numbers of items are warped to unique locations this way
2013-12-12 00:24:51 -05:00
Incoming
b7b05d53ec Code optimization and copypasta removal:
the teleport wand now uses do_teleport
the polymorph wand now uses wabbajack in both instances

You can now click on yourself while holding a wand to cast it on yourself in addition to clicking on the wand itself.

Changed how guns/magic are given out slightly. Previously no antag could get a gun/magic thing (including survivors made by the spell in the case of multicasting) but now antags who aren't the wizard or an apprentice of the wizard also get one.

Fixed a few bugs on accidentally burning charges by click in places tht wouldn't actually fire the wand/staff
2013-12-10 01:04:16 -05:00
Incoming
51d12a7512 Adds all sprites for all wands, books, and the staff of healing
Fixes an issue where someone spamming a wand might lose charges without actually firing the bolt
Removes a few missed bugtesting lines
Adds a var (variable_charges) to be disabled for wands with assured max charges for future use
2013-12-09 12:46:34 -05:00
Incoming
4ac8a4164c Summon Magic / Charge / Wands&Staffs / One time spellbooks / New Apprentice
---

Summon Magic:

This new wizard spell works much like summon guns except it instead brings the crew magical tools and weapons. There are preexisting artifacts (minus some that would cause huge confusion/balance issues) as well as new spellbooks, wands, and a staff. The chance of survivor antag is the same as summon guns.

---

Charge:

This new spell allows for the recharging of otherwise unrefillable wands, but there's a heavy chance that the total number of charges will decrease with each casting until eventually they're impossible to keep recharging. As a bonus the charge spell can also be used to charge batteries and things that run on batteries (such as energy weapons). This carries the same max charge weardown penalties however. Lastly this spell allows a wizard to charge other wizards with a grab, reseting their spell cooldown. They cannot use it to charge themselves. It has a 60 second cooldown.

The wizard cannot buy this spell himself, it only comes randomly to the crew during Summon Magic and with the new apprentice loadout.

---

Wands&Staffs:

Magic weapons have been overhauled into their own catagory so there won't be any more weirdness with batteries in staves or apparent magic resistance on things that reflect energy weapons.

Wands have been added, these wands come precharged with a number of shots that can be fired off at their leasure but cannot be recharged once emptied (unless the charge spell is used). They come in a varity of exciting flavors:

*Death: Slays instantly but has very few shots (1 to 3)
*Resurrection: Revives and/or heals instantly but has very few shots (1 to 3)
*Polymorph: Same function as the staff of change
*Teleport: Weaponized blink spell that doesn't respect space tiles and can also warp away machinery or items (but not turf)
*Door Creation: Puts easy access wooden doors in walls
*Fireball: Same function (but slightly lower damage) as the fireball spell
*Nothing: Lame and useless

Wands can also be used on the user (unlike staves) by clicking on them. Warning messages have been added to a few wands so people don't accidentally zap themselves with the wand of death unless they really want to.

Wands cannot be aquired by the wizard directly, and are only spawned during castings of summon magic.

There is also a new staff, the staff of healing, which works as a recharging version of the wand of resurrection. The new apprentice starts with one of these, and they can also be found during summon magic. The wizard cannot purchase it directly, and as a stave he could not use it on himself anyways.

---

One time spellbooks:

Found exclusively in summon magic are one time use spellbooks that can teach any player a robeless spell. Once read the book vanishes.

Books come in the following flavors:
*fireball
*smoke
*blind
*mindswap
*forcewall
*knock
*curse of the horsemen
*charge (described above)

---

New apprentice:

A fourth loadout for apprentice wizards has been added. This wizard is intended as a support role and comes with forcewall (for cover) and charge (used to keep him and the wizard well stocked in laser weaponry or to restore the wizard's cooldowns). It also comes equiped with a free Staff of Healing for keeping the wizard alive. Shoot the medic first folks.
2013-12-04 21:00:36 -05:00