Grep for space indentation (#54850)

#54604 atomizing
Since a lot of the space indents are in lists ill atomize those later
This commit is contained in:
TiviPlus
2020-11-30 18:48:40 +01:00
committed by GitHub
parent 84796e5372
commit 0eaab0bc54
468 changed files with 7623 additions and 7548 deletions
@@ -407,19 +407,19 @@
info = {"<b>Dissection for Dummies</b><br>
<br>
1.Acquire fresh specimen.<br>
2.Put the specimen on operating table.<br>
3.Apply surgical drapes, preparing for experimental dissection.<br>
4.Apply scalpel to specimen's torso.<br>
5.Clamp bleeders on specimen's torso with a hemostat.<br>
6.Retract skin of specimen's torso with a retractor.<br>
7.Apply scalpel again to specimen's torso.<br>
8.Search through the specimen's torso with your hands to remove any superfluous organs.<br>
9.Insert replacement gland (Retrieve one from gland storage).<br>
10.Consider dressing the specimen back to not disturb the habitat. <br>
11.Put the specimen in the experiment machinery.<br>
12.Choose one of the machine options. The target will be analyzed and teleported to the selected drop-off point.<br>
13.You will receive one supply credit, and the subject will be counted towards your quota.<br>
1.Acquire fresh specimen.<br>
2.Put the specimen on operating table.<br>
3.Apply surgical drapes, preparing for experimental dissection.<br>
4.Apply scalpel to specimen's torso.<br>
5.Clamp bleeders on specimen's torso with a hemostat.<br>
6.Retract skin of specimen's torso with a retractor.<br>
7.Apply scalpel again to specimen's torso.<br>
8.Search through the specimen's torso with your hands to remove any superfluous organs.<br>
9.Insert replacement gland (Retrieve one from gland storage).<br>
10.Consider dressing the specimen back to not disturb the habitat. <br>
11.Put the specimen in the experiment machinery.<br>
12.Choose one of the machine options. The target will be analyzed and teleported to the selected drop-off point.<br>
13.You will receive one supply credit, and the subject will be counted towards your quota.<br>
<br>
Congratulations! You are now trained for invasive xenobiology research!"}
@@ -35,8 +35,8 @@
possible_gear = get_abductor_gear()
/**
* get_abductor_gear: Returns a list of a filtered abductor gear sorted by categories
*/
* get_abductor_gear: Returns a list of a filtered abductor gear sorted by categories
*/
/obj/machinery/abductor/console/proc/get_abductor_gear()
var/list/filtered_modules = list()
for(var/path in GLOB.abductor_gear)
@@ -103,13 +103,13 @@
return TRUE
/**
* experiment: Performs selected experiment on occupant mob, resulting in a point reward on success
*
* Arguments:
* * occupant The mob inside the machine
* * type The type of experiment to be performed
* * user The mob starting the experiment
*/
* experiment: Performs selected experiment on occupant mob, resulting in a point reward on success
*
* Arguments:
* * occupant The mob inside the machine
* * type The type of experiment to be performed
* * user The mob starting the experiment
*/
/obj/machinery/abductor/experiment/proc/experiment(mob/occupant, type, mob/user)
LAZYINITLIST(history)
var/mob/living/carbon/human/H = occupant
@@ -167,11 +167,11 @@
return "Specimen braindead - disposed."
/**
* send_back: Sends a mob back to a selected teleport location if safe
*
* Arguments:
* * H The human mob to be sent back
*/
* send_back: Sends a mob back to a selected teleport location if safe
*
* Arguments:
* * H The human mob to be sent back
*/
/obj/machinery/abductor/experiment/proc/send_back(mob/living/carbon/human/H)
H.Sleeping(160)
H.uncuff()
@@ -11,7 +11,7 @@
var/datum/blobstrain/bts = bt
bts.overmind = overmind
src.blobstrains += bt
typeshare = (0.8 * length(src.blobstrains)) - (length(src.blobstrains)-1) // 1 is 80%, 2 are 60% etc
typeshare = (0.8 * length(src.blobstrains)) - (length(src.blobstrains)-1) // 1 is 80%, 2 are 60% etc
/datum/blobstrain/multiplex/damage_reaction(obj/structure/blob/B, damage, damage_type, damage_flag, coefficient = 1) //when the blob takes damage, do this
for (var/datum/blobstrain/bt in blobstrains)
@@ -37,15 +37,15 @@ the same goes for Remove(). if you override Remove(), call parent or else your p
try_to_sting(user)
/**
*Contrary to the name, this proc isn't just used by changeling stings. It handles the activation of the action and the deducation of its cost.
*The order of the proc chain is:
*can_sting(). Should this fail, the process gets aborted early.
*sting_action(). This proc usually handles the actual effect of the action.
*Should sting_action succeed the following will be done:
*sting_feedback(). Produces feedback on the performed action. Don't ask me why this isn't handled in sting_action()
*The deduction of the cost of this power.
*Returns TRUE on a successful activation.
*/
*Contrary to the name, this proc isn't just used by changeling stings. It handles the activation of the action and the deducation of its cost.
*The order of the proc chain is:
*can_sting(). Should this fail, the process gets aborted early.
*sting_action(). This proc usually handles the actual effect of the action.
*Should sting_action succeed the following will be done:
*sting_feedback(). Produces feedback on the performed action. Don't ask me why this isn't handled in sting_action()
*The deduction of the cost of this power.
*Returns TRUE on a successful activation.
*/
/datum/action/changeling/proc/try_to_sting(mob/user, mob/target)
if(!can_sting(user, target))
return FALSE
+4 -4
View File
@@ -161,7 +161,7 @@
/datum/action/innate/cult/blood_spell/emp/Activate()
owner.whisper(invocation, language = /datum/language/common)
owner.visible_message("<span class='warning'>[owner]'s hand flashes a bright blue!</span>", \
"<span class='cultitalic'>You speak the cursed words, emitting an EMP blast from your hand.</span>")
"<span class='cultitalic'>You speak the cursed words, emitting an EMP blast from your hand.</span>")
empulse(owner, 2, 5)
charges--
if(charges<=0)
@@ -203,7 +203,7 @@
to_chat(owner, "<span class='warning'>A ritual dagger appears in your hand!</span>")
else
owner.visible_message("<span class='warning'>A ritual dagger appears at [owner]'s feet!</span>", \
"<span class='cultitalic'>A ritual dagger materializes at your feet.</span>")
"<span class='cultitalic'>A ritual dagger materializes at your feet.</span>")
SEND_SOUND(owner, sound('sound/effects/magic.ogg', FALSE, 0, 25))
charges--
if(charges <= 0)
@@ -305,7 +305,7 @@
button_icon_state = "back"
else
owner.visible_message("<span class='warning'>A flash of light shines from [owner]'s hand!</span>", \
"<span class='cultitalic'>You invoke the counterspell, revealing nearby runes.</span>")
"<span class='cultitalic'>You invoke the counterspell, revealing nearby runes.</span>")
charges--
owner.whisper(invocation, language = /datum/language/common)
SEND_SOUND(owner, sound('sound/magic/enter_blood.ogg',0,1,25))
@@ -824,7 +824,7 @@
to_chat(user, "<span class='cultitalic'>A [rite.name] appears in your hand!</span>")
else
user.visible_message("<span class='warning'>A [rite.name] appears at [user]'s feet!</span>", \
"<span class='cultitalic'>A [rite.name] materializes at your feet.</span>")
"<span class='cultitalic'>A [rite.name] materializes at your feet.</span>")
if("Blood Bolt Barrage (300)")
if(uses < BLOOD_BARRAGE_COST)
to_chat(user, "<span class='cultitalic'>You need [BLOOD_BARRAGE_COST] charges to perform this rite.</span>")
+1 -1
View File
@@ -58,7 +58,7 @@
user.Paralyze(100)
user.dropItemToGround(src, TRUE)
user.visible_message("<span class='warning'>A powerful force shoves [user] away from [target]!</span>", \
"<span class='cultlarge'>\"You shouldn't play with sharp things. You'll poke someone's eye out.\"</span>")
"<span class='cultlarge'>\"You shouldn't play with sharp things. You'll poke someone's eye out.\"</span>")
if(ishuman(user))
var/mob/living/carbon/human/H = user
H.apply_damage(rand(force/2, force), BRUTE, pick(BODY_ZONE_L_ARM, BODY_ZONE_R_ARM))
+2 -2
View File
@@ -125,7 +125,7 @@ This file contains the cult dagger and rune list code
var/obj/structure/emergency_shield/cult/narsie/N = new(B)
shields += N
user.visible_message("<span class='warning'>[user] [user.blood_volume ? "cuts open [user.p_their()] arm and begins writing in [user.p_their()] own blood":"begins sketching out a strange design"]!</span>", \
"<span class='cult'>You [user.blood_volume ? "slice open your arm and ":""]begin drawing a sigil of the Geometer.</span>")
"<span class='cult'>You [user.blood_volume ? "slice open your arm and ":""]begin drawing a sigil of the Geometer.</span>")
if(user.blood_volume)
user.apply_damage(initial(rune_to_scribe.scribe_damage), BRUTE, pick(BODY_ZONE_L_ARM, BODY_ZONE_R_ARM), wound_bonus = CANT_WOUND) // *cuts arm* *bone explodes* ever have one of those days?
var/scribe_mod = initial(rune_to_scribe.scribe_delay)
@@ -140,7 +140,7 @@ This file contains the cult dagger and rune list code
if(!check_rune_turf(Turf, user))
return
user.visible_message("<span class='warning'>[user] creates a strange circle[user.blood_volume ? " in [user.p_their()] own blood":""].</span>", \
"<span class='cult'>You finish drawing the arcane markings of the Geometer.</span>")
"<span class='cult'>You finish drawing the arcane markings of the Geometer.</span>")
for(var/V in shields)
var/obj/structure/emergency_shield/S = V
if(S && !QDELETED(S))
+4 -4
View File
@@ -244,7 +244,7 @@ structure_check() searches for nearby cultist structures required for the invoca
convertee.adjustFireLoss(-(burndamage * 0.75))
convertee.visible_message("<span class='warning'>[convertee] writhes in pain \
[brutedamage || burndamage ? "even as [convertee.p_their()] wounds heal and close" : "as the markings below [convertee.p_them()] glow a bloody red"]!</span>", \
"<span class='cultlarge'><i>AAAAAAAAAAAAAA-</i></span>")
"<span class='cultlarge'><i>AAAAAAAAAAAAAA-</i></span>")
SSticker.mode.add_cultist(convertee.mind, 1)
new /obj/item/melee/cultblade/dagger(get_turf(src))
convertee.mind.special_role = ROLE_CULTIST
@@ -826,7 +826,7 @@ structure_check() searches for nearby cultist structures required for the invoca
ghosts--
if(new_human)
new_human.visible_message("<span class='warning'>[new_human] suddenly dissolves into bones and ashes.</span>", \
"<span class='cultlarge'>Your link to the world fades. Your form breaks apart.</span>")
"<span class='cultlarge'>Your link to the world fades. Your form breaks apart.</span>")
for(var/obj/I in new_human)
new_human.dropItemToGround(I, TRUE)
new_human.dust()
@@ -834,7 +834,7 @@ structure_check() searches for nearby cultist structures required for the invoca
affecting = user
affecting.add_atom_colour(RUNE_COLOR_DARKRED, ADMIN_COLOUR_PRIORITY)
affecting.visible_message("<span class='warning'>[affecting] freezes statue-still, glowing an unearthly red.</span>", \
"<span class='cult'>You see what lies beyond. All is revealed. In this form you find that your voice booms louder and you can mark targets for the entire cult</span>")
"<span class='cult'>You see what lies beyond. All is revealed. In this form you find that your voice booms louder and you can mark targets for the entire cult</span>")
var/mob/dead/observer/G = affecting.ghostize(1)
var/datum/action/innate/cult/comm/spirit/CM = new
var/datum/action/innate/cult/ghostmark/GM = new
@@ -849,7 +849,7 @@ structure_check() searches for nearby cultist structures required for the invoca
affecting.forceMove(get_turf(src)) //NO ESCAPE :^)
if(affecting.key)
affecting.visible_message("<span class='warning'>[affecting] slowly relaxes, the glow around [affecting.p_them()] dimming.</span>", \
"<span class='danger'>You are re-united with your physical form. [src] releases its hold over you.</span>")
"<span class='danger'>You are re-united with your physical form. [src] releases its hold over you.</span>")
affecting.Paralyze(40)
break
if(affecting.health <= 10)
@@ -107,12 +107,12 @@
pixel_y = -32
/**
* #Reality smash tracker
*
* Stupid fucking list holder, DONT create new ones, it will break the game, this is automnatically created whenever eldritch cultists are created.
*
* Tracks relevant data, generates relevant data, useful tool
*/
* #Reality smash tracker
*
* Stupid fucking list holder, DONT create new ones, it will break the game, this is automnatically created whenever eldritch cultists are created.
*
* Tracks relevant data, generates relevant data, useful tool
*/
/datum/reality_smash_tracker
///list of tracked reality smashes
var/smashes = 0
@@ -125,10 +125,10 @@
return ..()
/**
* Generates a set amount of reality smashes based on the N value
*
* Automatically creates more reality smashes
*/
* Generates a set amount of reality smashes based on the N value
*
* Automatically creates more reality smashes
*/
/datum/reality_smash_tracker/proc/Generate()
targets++
var/number = max(targets * (4-(targets-1)) - smashes,1)
@@ -1,11 +1,11 @@
/**
* #Eldritch Knwoledge
*
* Datum that makes eldritch cultist interesting.
*
* Eldritch knowledge aren't instantiated anywhere roundstart, and are initalized and destroyed as the round goes on.
*/
* #Eldritch Knwoledge
*
* Datum that makes eldritch cultist interesting.
*
* Eldritch knowledge aren't instantiated anywhere roundstart, and are initalized and destroyed as the round goes on.
*/
/datum/eldritch_knowledge
///Name of the knowledge
var/name = "Basic knowledge"
@@ -35,49 +35,49 @@
required_atoms = temp_list
/**
* What happens when this is assigned to an antag datum
*
* This proc is called whenever a new eldritch knowledge is added to an antag datum
*/
* What happens when this is assigned to an antag datum
*
* This proc is called whenever a new eldritch knowledge is added to an antag datum
*/
/datum/eldritch_knowledge/proc/on_gain(mob/user)
to_chat(user, "<span class='warning'>[gain_text]</span>")
return
/**
* What happens when you loose this
*
* This proc is called whenever antagonist looses his antag datum, put cleanup code in here
*/
* What happens when you loose this
*
* This proc is called whenever antagonist looses his antag datum, put cleanup code in here
*/
/datum/eldritch_knowledge/proc/on_lose(mob/user)
return
/**
* What happens every tick
*
* This proc is called on SSprocess in eldritch cultist antag datum. SSprocess happens roughly every second
*/
* What happens every tick
*
* This proc is called on SSprocess in eldritch cultist antag datum. SSprocess happens roughly every second
*/
/datum/eldritch_knowledge/proc/on_life(mob/user)
return
/**
* Special check for recipes
*
* If you are adding a more complex summoning or something that requires a special check that parses through all the atoms in an area override this.
*/
* Special check for recipes
*
* If you are adding a more complex summoning or something that requires a special check that parses through all the atoms in an area override this.
*/
/datum/eldritch_knowledge/proc/recipe_snowflake_check(list/atoms,loc)
return TRUE
/**
* A proc that handles the code when the mob dies
*
* This proc is primarily used to end any soundloops when the heretic dies
*/
* A proc that handles the code when the mob dies
*
* This proc is primarily used to end any soundloops when the heretic dies
*/
/datum/eldritch_knowledge/proc/on_death(mob/user)
return
/**
* What happens once the recipe is succesfully finished
*
* By default this proc creates atoms from result_atoms list. Override this is you want something else to happen.
*/
* What happens once the recipe is succesfully finished
*
* By default this proc creates atoms from result_atoms list. Override this is you want something else to happen.
*/
/datum/eldritch_knowledge/proc/on_finished_recipe(mob/living/user,list/atoms,loc)
if(result_atoms.len == 0)
return FALSE
@@ -88,10 +88,10 @@
return TRUE
/**
* Used atom cleanup
*
* Overide this proc if you dont want ALL ATOMS to be destroyed. useful in many situations.
*/
* Used atom cleanup
*
* Overide this proc if you dont want ALL ATOMS to be destroyed. useful in many situations.
*/
/datum/eldritch_knowledge/proc/cleanup_atoms(list/atoms)
for(var/X in atoms)
var/atom/A = X
@@ -101,27 +101,27 @@
return
/**
* Mansus grasp act
*
* Gives addtional effects to mansus grasp spell
*/
* Mansus grasp act
*
* Gives addtional effects to mansus grasp spell
*/
/datum/eldritch_knowledge/proc/on_mansus_grasp(atom/target, mob/user, proximity_flag, click_parameters)
return FALSE
/**
* Sickly blade act
*
* Gives addtional effects to sickly blade weapon
*/
* Sickly blade act
*
* Gives addtional effects to sickly blade weapon
*/
/datum/eldritch_knowledge/proc/on_eldritch_blade(atom/target,mob/user,proximity_flag,click_parameters)
return
/**
* Sickly blade distant act
*
* Same as [/datum/eldritch_knowledge/proc/on_eldritch_blade] but works on targets that are not in proximity to you.
*/
* Sickly blade distant act
*
* Same as [/datum/eldritch_knowledge/proc/on_eldritch_blade] but works on targets that are not in proximity to you.
*/
/datum/eldritch_knowledge/proc/on_ranged_attack_eldritch_blade(atom/target,mob/user,click_parameters)
return
@@ -153,12 +153,12 @@
human_user.AdjustAllImmobility(-10)
/**
* #Rust spread datum
*
* Simple datum that automatically spreads rust around it
*
* Simple implementation of automatically growing entity
*/
* #Rust spread datum
*
* Simple datum that automatically spreads rust around it
*
* Simple implementation of automatically growing entity
*/
/datum/rust_spread
var/list/edge_turfs = list()
var/list/turfs = list()
@@ -196,10 +196,10 @@
/**
* Compile turfs
*
* Recreates all edge_turfs as well as normal turfs.
*/
* Compile turfs
*
* Recreates all edge_turfs as well as normal turfs.
*/
/datum/rust_spread/proc/compile_turfs()
edge_turfs = list()
var/list/removal_list = list()
+14 -12
View File
@@ -378,7 +378,7 @@
if(!reforming || inert)
return ..()
user.visible_message("<span class='notice'>[user] scatters [src] in all directions.</span>", \
"<span class='notice'>You scatter [src] across the area. The particles slowly fade away.</span>")
"<span class='notice'>You scatter [src] across the area. The particles slowly fade away.</span>")
user.dropItemToGround(src)
scatter()
@@ -470,17 +470,19 @@
/datum/objective/revenant_fluff
/datum/objective/revenant_fluff/New()
var/list/explanationTexts = list("Assist and exacerbate existing threats at critical moments.", \
"Impersonate or be worshipped as a god.", \
"Cause as much chaos and anger as you can without being killed.", \
"Damage and render as much of the station rusted and unusable as possible.", \
"Disable and cause malfunctions in as many machines as possible.", \
"Ensure that any holy weapons are rendered unusable.", \
"Heed and obey the requests of the dead, provided that carrying them out wouldn't be too inconvenient or self-destructive.", \
"Make the crew as miserable as possible.", \
"Make the clown as miserable as possible.", \
"Make the captain as miserable as possible.", \
"Prevent the use of energy weapons where possible.")
var/list/explanationTexts = list(
"Assist and exacerbate existing threats at critical moments.", \
"Impersonate or be worshipped as a god.", \
"Cause as much chaos and anger as you can without being killed.", \
"Damage and render as much of the station rusted and unusable as possible.", \
"Disable and cause malfunctions in as many machines as possible.", \
"Ensure that any holy weapons are rendered unusable.", \
"Heed and obey the requests of the dead, provided that carrying them out wouldn't be too inconvenient or self-destructive.", \
"Make the crew as miserable as possible.", \
"Make the clown as miserable as possible.", \
"Make the captain as miserable as possible.", \
"Prevent the use of energy weapons where possible.",
)
explanation_text = pick(explanationTexts)
..()
@@ -165,7 +165,7 @@
if(M != user)
return ..()
user.visible_message("<span class='warning'>[user] raises [src] to [user.p_their()] mouth and tears into it with [user.p_their()] teeth!</span>", \
"<span class='danger'>An unnatural hunger consumes you. You raise [src] your mouth and devour it!</span>")
"<span class='danger'>An unnatural hunger consumes you. You raise [src] your mouth and devour it!</span>")
playsound(user, 'sound/magic/demon_consume.ogg', 50, TRUE)
for(var/obj/effect/proc_holder/spell/knownspell in user.mind.spell_list)
if(knownspell.type == /obj/effect/proc_holder/spell/bloodcrawl)
@@ -173,7 +173,7 @@
qdel(src)
return
user.visible_message("<span class='warning'>[user]'s eyes flare a deep crimson!</span>", \
"<span class='userdanger'>You feel a strange power seep into your body... you have absorbed the demon's blood-travelling powers!</span>")
"<span class='userdanger'>You feel a strange power seep into your body... you have absorbed the demon's blood-travelling powers!</span>")
user.temporarilyRemoveItemFromInventory(src, TRUE)
src.Insert(user) //Consuming the heart literally replaces your heart with a demon heart. H A R D C O R E
@@ -21,28 +21,28 @@
remove_antag_hud(antag_hud_type, ninja)
/**
* Proc that equips the space ninja outfit on a given individual. By default this is the owner of the antagonist datum.
*
* Proc that equips the space ninja outfit on a given individual. By default this is the owner of the antagonist datum.
* Arguments:
* * ninja - The human to receive the gear
* * Returns a proc call on the given human which will equip them with all the gear.
*/
* Proc that equips the space ninja outfit on a given individual. By default this is the owner of the antagonist datum.
*
* Proc that equips the space ninja outfit on a given individual. By default this is the owner of the antagonist datum.
* Arguments:
* * ninja - The human to receive the gear
* * Returns a proc call on the given human which will equip them with all the gear.
*/
/datum/antagonist/ninja/proc/equip_space_ninja(mob/living/carbon/human/ninja = owner.current)
return ninja.equipOutfit(/datum/outfit/ninja)
/**
* Proc that adds the proper memories to the antag datum
*
* Proc that adds the ninja starting memories to the owner of the antagonist datum.
*/
* Proc that adds the proper memories to the antag datum
*
* Proc that adds the ninja starting memories to the owner of the antagonist datum.
*/
/datum/antagonist/ninja/proc/addMemories()
antag_memory += "I am an elite mercenary of the mighty Spider Clan. A <font color='red'><B>SPACE NINJA</B></font>!<br>"
antag_memory += "Surprise is my weapon. Shadows are my armor. Without them, I am nothing. (//initialize your suit by clicking the initialize UI button, to use abilities like stealth)!<br>"
/datum/objective/cyborg_hijack
explanation_text = "Use your gloves to convert at least one cyborg to aide you in sabotaging the station."
/datum/objective/door_jack
///How many doors that need to be opened using the gloves to pass the objective
var/doors_required = 0
@@ -52,32 +52,32 @@
/datum/objective/security_scramble
explanation_text = "Use your gloves on a security console to set everyone to arrest at least once. Note that the AI will be alerted once you begin!"
/datum/objective/terror_message
explanation_text = "Use your gloves on a communication console in order to bring another threat to the station. Note that the AI will be alerted once you begin!"
/**
* Proc that adds all the ninja's objectives to the antag datum.
*
* Proc that adds all the ninja's objectives to the antag datum. Called when the datum is gained.
*/
* Proc that adds all the ninja's objectives to the antag datum.
*
* Proc that adds all the ninja's objectives to the antag datum. Called when the datum is gained.
*/
/datum/antagonist/ninja/proc/addObjectives()
//Cyborg Hijack: Flag set to complete in the DrainAct in ninjaDrainAct.dm
var/datum/objective/hijack = new /datum/objective/cyborg_hijack()
objectives += hijack
//Research stealing
var/datum/objective/download/research = new /datum/objective/download()
research.owner = owner
research.gen_amount_goal()
objectives += research
//Door jacks, flag will be set to complete on when the last door is hijacked
var/datum/objective/door_jack/doorobjective = new /datum/objective/door_jack()
doorobjective.doors_required = rand(15,40)
doorobjective.explanation_text = "Use your gloves to doorjack [doorobjective.doors_required] airlocks on the station."
objectives += doorobjective
//Explosive plant, the bomb will register its completion on priming
var/datum/objective/plant_explosive/bombobjective = new /datum/objective/plant_explosive()
for(var/sanity in 1 to 100) // 100 checks at most.
@@ -100,7 +100,7 @@ GLOBAL_LIST_INIT(malf_modules, subtypesof(/datum/ai_module))
/// The actual ranged proc holder.
/obj/effect/proc_holder/ranged_ai
/// Appears when the user activates the ability
/// Appears when the user activates the ability
var/enable_text = "<span class='notice'>Hello World!</span>"
/// Appears when the user deactivates the ability
var/disable_text = "<span class='danger'>Goodbye Cruel World!</span>"
@@ -133,7 +133,7 @@ GLOBAL_LIST_INIT(malf_modules, subtypesof(/datum/ai_module))
/// Sound played when an ability is unlocked
var/unlock_sound
/// Applies upgrades
/// Applies upgrades
/datum/ai_module/proc/upgrade(mob/living/silicon/ai/AI)
return
@@ -387,9 +387,9 @@
to_chat(victim, "<span class='notice'>You feel a dark presence from [A.name].</span>")
/obj/item/voodoo/suicide_act(mob/living/carbon/user)
user.visible_message("<span class='suicide'>[user] links the voodoo doll to [user.p_them()]self and sits on it, infinitely crushing [user.p_them()]self! It looks like [user.p_theyre()] trying to commit suicide!</span>")
user.gib()
return(BRUTELOSS)
user.visible_message("<span class='suicide'>[user] links the voodoo doll to [user.p_them()]self and sits on it, infinitely crushing [user.p_them()]self! It looks like [user.p_theyre()] trying to commit suicide!</span>")
user.gib()
return(BRUTELOSS)
/obj/item/voodoo/fire_act(exposed_temperature, exposed_volume)
if(target)
@@ -691,16 +691,16 @@
dat += {"
<head>
<style type="text/css">
body { font-size: 80%; font-family: 'Lucida Grande', Verdana, Arial, Sans-Serif; }
ul#tabs { list-style-type: none; margin: 30px 0 0 0; padding: 0 0 0.3em 0; }
ul#tabs li { display: inline; }
ul#tabs li a { color: #42454a; background-color: #dedbde; border: 1px solid #c9c3ba; border-bottom: none; padding: 0.3em; text-decoration: none; }
ul#tabs li a:hover { background-color: #f1f0ee; }
ul#tabs li a.selected { color: #000; background-color: #f1f0ee; font-weight: bold; padding: 0.7em 0.3em 0.38em 0.3em; }
div.tabContent { border: 1px solid #c9c3ba; padding: 0.5em; background-color: #f1f0ee; }
div.tabContent.hide { display: none; }
</style>
</head>
body { font-size: 80%; font-family: 'Lucida Grande', Verdana, Arial, Sans-Serif; }
ul#tabs { list-style-type: none; margin: 30px 0 0 0; padding: 0 0 0.3em 0; }
ul#tabs li { display: inline; }
ul#tabs li a { color: #42454a; background-color: #dedbde; border: 1px solid #c9c3ba; border-bottom: none; padding: 0.3em; text-decoration: none; }
ul#tabs li a:hover { background-color: #f1f0ee; }
ul#tabs li a.selected { color: #000; background-color: #f1f0ee; font-weight: bold; padding: 0.7em 0.3em 0.38em 0.3em; }
div.tabContent { border: 1px solid #c9c3ba; padding: 0.5em; background-color: #f1f0ee; }
div.tabContent.hide { display: none; }
</style>
</head>
"}
dat += {"[content]</body></html>"}
return dat