mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-08-25 21:19:44 +01:00
Merge pull request #8374 from Baystation12/dev-freeze
Dev freeze into dev
This commit is contained in:
@@ -47,9 +47,8 @@ proc/sql_report_death(var/mob/living/carbon/human/H)
|
||||
if(!H.key || !H.mind)
|
||||
return
|
||||
|
||||
var/turf/T = H.loc
|
||||
var/area/placeofdeath = get_area(T.loc)
|
||||
var/podname = placeofdeath.name
|
||||
var/area/placeofdeath = get_area(H)
|
||||
var/podname = placeofdeath ? placeofdeath.name : "Unknown area"
|
||||
|
||||
var/sqlname = sanitizeSQL(H.real_name)
|
||||
var/sqlkey = sanitizeSQL(H.key)
|
||||
@@ -82,9 +81,8 @@ proc/sql_report_cyborg_death(var/mob/living/silicon/robot/H)
|
||||
if(!H.key || !H.mind)
|
||||
return
|
||||
|
||||
var/turf/T = H.loc
|
||||
var/area/placeofdeath = get_area(T.loc)
|
||||
var/podname = placeofdeath.name
|
||||
var/area/placeofdeath = get_area(H)
|
||||
var/podname = placeofdeath ? placeofdeath.name : "Unknown area"
|
||||
|
||||
var/sqlname = sanitizeSQL(H.real_name)
|
||||
var/sqlkey = sanitizeSQL(H.key)
|
||||
|
||||
@@ -32,6 +32,8 @@ var/engwords = list("travel", "blood", "join", "hell", "destroy", "technology",
|
||||
var/word1
|
||||
var/word2
|
||||
var/word3
|
||||
var/list/converting = list()
|
||||
|
||||
// Places these combos are mentioned: this file - twice in the rune code, once in imbued tome, once in tome's HTML runes.dm - in the imbue rune code. If you change a combination - dont forget to change it everywhere.
|
||||
|
||||
// travel self [word] - Teleport to random [rune with word destination matching]
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
var/list/sacrificed = list()
|
||||
|
||||
/obj/effect/rune
|
||||
|
||||
/////////////////////////////////////////FIRST RUNE
|
||||
proc
|
||||
teleport(var/key)
|
||||
@@ -98,50 +99,82 @@ var/list/sacrificed = list()
|
||||
/////////////////////////////////////////THIRD RUNE
|
||||
|
||||
convert()
|
||||
var/mob/living/carbon/target = null
|
||||
for(var/mob/living/carbon/M in src.loc)
|
||||
if(iscultist(M))
|
||||
continue
|
||||
if(M.stat==2)
|
||||
continue
|
||||
usr.say("Mah[pick("'","`")]weyh pleggh at e'ntrath!")
|
||||
if(!iscultist(M) && M.stat < DEAD && !(M in converting))
|
||||
target = M
|
||||
break
|
||||
|
||||
if(!target) //didn't find any new targets
|
||||
if(!converting.len)
|
||||
fizzle()
|
||||
else
|
||||
usr << "<span class='danger'>You sense that the power of the dark one is already working away at them.</span>"
|
||||
return
|
||||
|
||||
if (M.species && (M.species.flags & NO_PAIN))
|
||||
M.visible_message("\red The markings below [M] glow a bloody red.")
|
||||
else
|
||||
M.visible_message("\red [M] writhes in pain as the markings below \him glow a bloody red.", \
|
||||
"\red AAAAAAHHHH!", \
|
||||
"\red You hear an anguished scream.")
|
||||
if(is_convertable_to_cult(M.mind) && !jobban_isbanned(M, "cultist"))//putting jobban check here because is_convertable uses mind as argument
|
||||
|
||||
// Mostly for the benefit of those who resist, but it makes sense for even those who join to have some.. effect.
|
||||
M.take_overall_damage(0, 10)
|
||||
|
||||
var/choice = alert(M,"Do you want to join the cult?","Submit to Nar'Sie","Resist","Submit")
|
||||
if(choice == "Submit")
|
||||
ticker.mode.add_cultist(M.mind)
|
||||
M.mind.special_role = "Cultist"
|
||||
M << "<font color=\"purple\"><b><i>Your blood pulses. Your head throbs. The world goes red. All at once you are aware of a horrible, horrible truth. The veil of reality has been ripped away and in the festering wound left behind something sinister takes root.</b></i></font>"
|
||||
M << "<font color=\"purple\"><b><i>Assist your new compatriots in their dark dealings. Their goal is yours, and yours is theirs. You serve the Dark One above all else. Bring It back.</b></i></font>"
|
||||
return 1
|
||||
|
||||
else if(choice == "Resist")
|
||||
|
||||
M.take_overall_damage(0, rand(5, 10)) // You dirty resister cannot handle the damage to your mind. Easily.
|
||||
// Resist messages go!
|
||||
var/BurnLoss = M.getFireLoss()
|
||||
if (BurnLoss < 25) M << "<font color=\"red\"><b>Your blood boils as you force yourself to resist the corruption invading every corner of your mind."
|
||||
else if (BurnLoss < 45) M << "<font color=\"red\"><b>Your blood boils and your body burns as the corruption further forces itself into your body and mind."
|
||||
else if (BurnLoss < 75) M << "<font color=\"red\"><b>You begin to hallucinate images of a dark and incomprehensible being and your entire body feels like its engulfed in flame as your mental defenses crumble."
|
||||
else if (BurnLoss < 100) M << "<font color=\"red\"><b>Your mind turns to ash as the burning flames engulf your very soul and images of Nar'Sie begin to bombard the last remnants of mental resistance."
|
||||
else M << "<font color=\"red\"><b>Your entire broken soul and being is engulfed in corruption and flames as your mind shatters away into nothing."
|
||||
return 0
|
||||
else
|
||||
M << "<font color=\"purple\"><b><i>Your blood pulses. Your head throbs. The world goes red. All at once you are aware of a horrible, horrible truth. The veil of reality has been ripped away and in the festering wound left behind something sinister takes root.</b></i></font>"
|
||||
M << "<font color=\"red\"><b>And you were able to force it out of your mind. You now know the truth, there's something horrible out there, stop it and its minions at all costs.</b></font>"
|
||||
usr.say("Mah[pick("'","`")]weyh pleggh at e'ntrath!")
|
||||
|
||||
converting |= target
|
||||
var/list/waiting_for_input = list(target = 0) //need to box this up in order to be able to reset it again from inside spawn, apparently
|
||||
var/initial_message = 0
|
||||
while(target in converting)
|
||||
if(target.loc != src.loc || target.stat == DEAD)
|
||||
converting -= target
|
||||
if(target.getFireLoss() < 100)
|
||||
target.hallucination = min(target.hallucination, 500)
|
||||
return 0
|
||||
return fizzle()
|
||||
|
||||
target.take_overall_damage(0, rand(5, 20)) // You dirty resister cannot handle the damage to your mind. Easily. - even cultists who accept right away should experience some effects
|
||||
// Resist messages go!
|
||||
if(initial_message) //don't do this stuff right away, only if they resist or hesitate.
|
||||
switch(target.getFireLoss())
|
||||
if(0 to 25)
|
||||
target << "<span class='danger'>Your blood boils as you force yourself to resist the corruption invading every corner of your mind.</span>"
|
||||
if(25 to 45)
|
||||
target << "<span class='danger'>Your blood boils and your body burns as the corruption further forces itself into your body and mind.</span>"
|
||||
if(45 to 75)
|
||||
target << "<span class='danger'>You begin to hallucinate images of a dark and incomprehensible being and your entire body feels like its engulfed in flame as your mental defenses crumble.</span>"
|
||||
target.apply_effect(rand(1,10), STUTTER)
|
||||
if(75 to 100)
|
||||
target << "<span class='cult'>Your mind turns to ash as the burning flames engulf your very soul and images of an unspeakable horror begin to bombard the last remnants of mental resistance.</span>"
|
||||
//broken mind - 5000 may seem like a lot I wanted the effect to really stand out for maxiumum losing-your-mind-spooky
|
||||
//hallucination is reduced when the step off as well, provided they haven't hit the last stage...
|
||||
target.hallucination += 5000
|
||||
target.apply_effect(10, STUTTER)
|
||||
target.adjustBrainLoss(1)
|
||||
if(100 to INFINITY)
|
||||
target << "<span class='cult'>Your entire broken soul and being is engulfed in corruption and flames as your mind shatters away into nothing.</span>"
|
||||
target.hallucination += 5000
|
||||
target.apply_effect(15, STUTTER)
|
||||
target.adjustBrainLoss(rand(1,5))
|
||||
|
||||
initial_message = 1
|
||||
if (target.species && (target.species.flags & NO_PAIN))
|
||||
target.visible_message("<span class='warning'>The markings below [target] glow a bloody red.</span>")
|
||||
else
|
||||
target.visible_message("<span class='warning'>[target] writhes in pain as the markings below \him glow a bloody red.</span>", "<span class='danger'>AAAAAAHHHH!</span>", "<span class='warning'>You hear an anguished scream.</span>")
|
||||
|
||||
if(!waiting_for_input[target]) //so we don't spam them with dialogs if they hesitate
|
||||
waiting_for_input[target] = 1
|
||||
|
||||
if(!is_convertable_to_cult(target.mind) || jobban_isbanned(target, "cultist"))//putting jobban check here because is_convertable uses mind as argument
|
||||
//waiting_for_input ensures this is only shown once, so they basically auto-resist from here on out. They still need to find a way to get off the freaking rune if they don't want to burn to death, though.
|
||||
target << "<span class='cult'>Your blood pulses. Your head throbs. The world goes red. All at once you are aware of a horrible, horrible truth. The veil of reality has been ripped away and in the festering wound left behind something sinister takes root.</span>"
|
||||
target << "<span class='danger'>And you were able to force it out of your mind. You now know the truth, there's something horrible out there, stop it and its minions at all costs.</span>"
|
||||
|
||||
else spawn()
|
||||
var/choice = alert(target,"Do you want to join the cult?","Submit to Nar'Sie","Resist","Submit")
|
||||
waiting_for_input[target] = 0
|
||||
if(choice == "Submit") //choosing 'Resist' does nothing of course.
|
||||
ticker.mode.add_cultist(target.mind)
|
||||
target.mind.special_role = "Cultist"
|
||||
target << "<span class='cult'>Your blood pulses. Your head throbs. The world goes red. All at once you are aware of a horrible, horrible truth. The veil of reality has been ripped away and in the festering wound left behind something sinister takes root.</span>"
|
||||
target << "<span class='cult'>Assist your new compatriots in their dark dealings. Their goal is yours, and yours is theirs. You serve the Dark One above all else. Bring It back.</span>"
|
||||
converting -= target
|
||||
target.hallucination = 0 //sudden clarity
|
||||
|
||||
sleep(100) //proc once every 10 seconds
|
||||
return 1
|
||||
|
||||
/////////////////////////////////////////FOURTH RUNE
|
||||
|
||||
|
||||
@@ -158,7 +158,7 @@
|
||||
for(var/mob/living/silicon/ai/O in living_mob_list)
|
||||
if(!O.client) continue
|
||||
if(U.name == "Unknown") O << "<b>[U]</b> holds \a [itemname] up to one of your cameras ..."
|
||||
else O << "<b><a href='byond://?src=\ref[O];track2=\ref[O];track=\ref[U]'>[U]</a></b> holds \a [itemname] up to one of your cameras ..."
|
||||
else O << "<b><a href='byond://?src=\ref[O];track2=\ref[O];track=\ref[U];trackname=[U.name]'>[U]</a></b> holds \a [itemname] up to one of your cameras ..."
|
||||
O << browse(text("<HTML><HEAD><TITLE>[]</TITLE></HEAD><BODY><TT>[]</TT></BODY></HTML>", itemname, info), text("window=[]", itemname))
|
||||
for(var/mob/O in player_list)
|
||||
if (istype(O.machine, /obj/machinery/computer/security))
|
||||
|
||||
@@ -5,26 +5,32 @@
|
||||
icon = 'icons/obj/holosign.dmi'
|
||||
icon_state = "sign_off"
|
||||
layer = 4
|
||||
idle_power_usage = 2
|
||||
var/lit = 0
|
||||
var/id = null
|
||||
var/on_icon = "sign_on"
|
||||
|
||||
proc/toggle()
|
||||
if (stat & (BROKEN|NOPOWER))
|
||||
return
|
||||
lit = !lit
|
||||
update_icon()
|
||||
|
||||
/obj/machinery/holosign/proc/toggle()
|
||||
if (stat & (BROKEN|NOPOWER))
|
||||
return
|
||||
lit = !lit
|
||||
use_power = lit ? 1 : 0
|
||||
update_icon()
|
||||
if (!lit)
|
||||
icon_state = "sign_off"
|
||||
else
|
||||
icon_state = on_icon
|
||||
|
||||
power_change()
|
||||
if (stat & NOPOWER)
|
||||
lit = 0
|
||||
update_icon()
|
||||
/obj/machinery/holosign/process()
|
||||
return
|
||||
|
||||
/obj/machinery/holosign/update_icon()
|
||||
if (!lit)
|
||||
icon_state = "sign_off"
|
||||
else
|
||||
icon_state = on_icon
|
||||
|
||||
/obj/machinery/holosign/power_change()
|
||||
if (stat & NOPOWER)
|
||||
lit = 0
|
||||
use_power = 0
|
||||
update_icon()
|
||||
|
||||
/obj/machinery/holosign/surgery
|
||||
name = "surgery holosign"
|
||||
|
||||
@@ -669,6 +669,17 @@ var/list/admin_verbs_mentor = list(
|
||||
log_admin("[key_name(usr)] used 'kill air'.")
|
||||
message_admins("\blue [key_name_admin(usr)] used 'kill air'.", 1)
|
||||
|
||||
/client/proc/readmin_self()
|
||||
set name = "Re-Admin self"
|
||||
set category = "Admin"
|
||||
|
||||
if(deadmin_holder)
|
||||
deadmin_holder.reassociate()
|
||||
log_admin("[src] re-admined themself.")
|
||||
message_admins("[src] re-admined themself.", 1)
|
||||
src << "<span class='interface'>You now have the keys to control the planet, or atleast a small space station</span>"
|
||||
verbs -= /client/proc/readmin_self
|
||||
|
||||
/client/proc/deadmin_self()
|
||||
set name = "De-admin self"
|
||||
set category = "Admin"
|
||||
@@ -679,6 +690,7 @@ var/list/admin_verbs_mentor = list(
|
||||
message_admins("[src] deadmined themself.", 1)
|
||||
deadmin()
|
||||
src << "<span class='interface'>You are now a normal player.</span>"
|
||||
verbs |= /client/proc/readmin_self
|
||||
feedback_add_details("admin_verb","DAS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
|
||||
/client/proc/toggle_log_hrefs()
|
||||
|
||||
@@ -34,8 +34,16 @@ var/list/admin_datums = list()
|
||||
if(owner)
|
||||
admins -= owner
|
||||
owner.remove_admin_verbs()
|
||||
owner.deadmin_holder = owner.holder
|
||||
owner.holder = null
|
||||
owner = null
|
||||
|
||||
/datum/admins/proc/reassociate()
|
||||
if(owner)
|
||||
admins += owner
|
||||
owner.holder = src
|
||||
owner.deadmin_holder = null
|
||||
owner.add_admin_verbs()
|
||||
|
||||
|
||||
/*
|
||||
checks if usr is an admin with at least ONE of the flags in rights_required. (Note, they don't need all the flags)
|
||||
@@ -82,8 +90,7 @@ you will have to do something like if(client.holder.rights & R_ADMIN) yourself.
|
||||
|
||||
|
||||
/client/proc/deadmin()
|
||||
admin_datums -= ckey
|
||||
if(holder)
|
||||
holder.disassociate()
|
||||
del(holder)
|
||||
//del(holder)
|
||||
return 1
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
//ADMIN THINGS//
|
||||
////////////////
|
||||
var/datum/admins/holder = null
|
||||
var/datum/admins/deadmin_holder = null
|
||||
var/buildmode = 0
|
||||
|
||||
var/last_message = "" //Contains the last message sent by this client - used to protect against copy-paste spamming.
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
EC.process()
|
||||
|
||||
/datum/event_manager/proc/event_complete(var/datum/event/E)
|
||||
if(!E.event_meta) // datum/event is used here and there for random reasons, maintaining "backwards compatibility"
|
||||
if(!E.event_meta || !E.severity) // datum/event is used here and there for random reasons, maintaining "backwards compatibility"
|
||||
log_debug("Event of '[E.type]' with missing meta-data has completed.")
|
||||
return
|
||||
|
||||
|
||||
@@ -109,11 +109,11 @@ Please contact me on #coderbus IRC. ~Carn x
|
||||
#define DAMAGE_LAYER 2
|
||||
#define SURGERY_LEVEL 3 //bs12 specific.
|
||||
#define UNIFORM_LAYER 4
|
||||
#define TAIL_LAYER 5 //bs12 specific. this hack is probably gonna come back to haunt me
|
||||
#define ID_LAYER 6
|
||||
#define SHOES_LAYER 7
|
||||
#define GLOVES_LAYER 8
|
||||
#define SUIT_LAYER 9
|
||||
#define ID_LAYER 5
|
||||
#define SHOES_LAYER 6
|
||||
#define GLOVES_LAYER 7
|
||||
#define SUIT_LAYER 8
|
||||
#define TAIL_LAYER 9 //bs12 specific. this hack is probably gonna come back to haunt me
|
||||
#define GLASSES_LAYER 10
|
||||
#define BELT_LAYER 11 //Possible make this an overlay of somethign required to wear a belt?
|
||||
#define SUIT_STORE_LAYER 12
|
||||
@@ -920,7 +920,7 @@ proc/get_damage_icon_part(damage_state, body_part)
|
||||
/mob/living/carbon/human/update_fire(var/update_icons=1)
|
||||
overlays_standing[FIRE_LAYER] = null
|
||||
if(on_fire)
|
||||
overlays_standing[FIRE_LAYER] = image("icon"='icons/mob/OnFire.dmi', "icon_state"="Standing", "layer"=-FIRE_LAYER)
|
||||
overlays_standing[FIRE_LAYER] = image("icon"='icons/mob/OnFire.dmi', "icon_state"="Standing", "layer"=FIRE_LAYER)
|
||||
|
||||
if(update_icons) update_icons()
|
||||
|
||||
@@ -974,12 +974,12 @@ proc/get_damage_icon_part(damage_state, body_part)
|
||||
#undef DAMAGE_LAYER
|
||||
#undef SURGERY_LEVEL
|
||||
#undef UNIFORM_LAYER
|
||||
#undef TAIL_LAYER
|
||||
#undef ID_LAYER
|
||||
#undef SHOES_LAYER
|
||||
#undef GLOVES_LAYER
|
||||
#undef EARS_LAYER
|
||||
#undef SUIT_LAYER
|
||||
#undef TAIL_LAYER
|
||||
#undef GLASSES_LAYER
|
||||
#undef FACEMASK_LAYER
|
||||
#undef BELT_LAYER
|
||||
|
||||
@@ -858,13 +858,15 @@ note dizziness decrements automatically in the mob's Life() proc.
|
||||
canmove = 1
|
||||
pixel_y = V.mob_offset_y
|
||||
else if(buckled)
|
||||
if(buckled.buckle_lying != -1) lying = buckled.buckle_lying
|
||||
if (!buckled.buckle_movable)
|
||||
anchored = 1
|
||||
canmove = 0
|
||||
else
|
||||
anchored = 0
|
||||
canmove = 1
|
||||
anchored = 1
|
||||
canmove = 0
|
||||
if(istype(buckled))
|
||||
if(buckled.buckle_lying != -1)
|
||||
lying = buckled.buckle_lying
|
||||
if(buckled.buckle_movable)
|
||||
anchored = 0
|
||||
canmove = 1
|
||||
|
||||
else if( stat || weakened || paralysis || resting || sleeping || (status_flags & FAKEDEATH))
|
||||
lying = 1
|
||||
canmove = 0
|
||||
|
||||
@@ -121,7 +121,7 @@
|
||||
var/m_int = null//Living
|
||||
var/m_intent = "run"//Living
|
||||
var/lastKnownIP = null
|
||||
var/obj/structure/bed/buckled = null//Living
|
||||
var/obj/buckled = null//Living
|
||||
var/obj/item/l_hand = null//Living
|
||||
var/obj/item/r_hand = null//Living
|
||||
var/obj/item/weapon/back = null//Human/Monkey
|
||||
|
||||
@@ -392,6 +392,9 @@ nanoui is used to open and update nano browser uis
|
||||
* @return nothing
|
||||
*/
|
||||
/datum/nanoui/proc/open()
|
||||
if(!user.client)
|
||||
return
|
||||
|
||||
var/window_size = ""
|
||||
if (width && height)
|
||||
window_size = "size=[width]x[height];"
|
||||
|
||||
@@ -97,7 +97,7 @@ var/const/BLOOD_VOLUME_SURVIVE = 122
|
||||
if(!pale)
|
||||
pale = 1
|
||||
update_body()
|
||||
eye_blurry += 6
|
||||
eye_blurry = max(eye_blurry,6)
|
||||
if(oxyloss < 50)
|
||||
oxyloss += 10
|
||||
oxyloss += 1
|
||||
@@ -329,4 +329,4 @@ proc/blood_splatter(var/target,var/datum/reagent/blood/source,var/large)
|
||||
if(source.data["virus2"])
|
||||
B.virus2 = virus_copylist(source.data["virus2"])
|
||||
|
||||
return B
|
||||
return B
|
||||
|
||||
@@ -87,7 +87,7 @@
|
||||
|
||||
/obj/item/weapon/gun/projectile/automatic/z8
|
||||
name = "\improper Z8 Bulldog"
|
||||
desc = "An older model bullpup carbine, made by the now defunct Zendai Foundries. Uses armor piercing 5.56mm rounds and has an underslung grenade launcher. Makes you feel like a space marine when you hold it."
|
||||
desc = "An older model bullpup carbine, made by the now defunct Zendai Foundries. Uses armor piercing 5.56mm rounds. Makes you feel like a space marine when you hold it."
|
||||
icon_state = "carbine"
|
||||
item_state = "shotgun"
|
||||
w_class = 4
|
||||
|
||||
@@ -11,16 +11,17 @@ proc/infection_check(var/mob/living/carbon/M, var/vector = "Airborne")
|
||||
if(M.internal)
|
||||
score = 6 //not breathing infected air helps greatly
|
||||
var/obj/item/I = M.wear_mask
|
||||
|
||||
|
||||
//masks provide a small bonus and can replace overall bio protection
|
||||
score = max(score, round(0.06*I.armor["bio"]))
|
||||
if (istype(I, /obj/item/clothing/mask))
|
||||
score += 1 //this should be added after
|
||||
|
||||
if(I)
|
||||
score = max(score, round(0.06*I.armor["bio"]))
|
||||
if (istype(I, /obj/item/clothing/mask))
|
||||
score += 1 //this should be added after
|
||||
|
||||
if("Contact")
|
||||
if(istype(M, /mob/living/carbon/human))
|
||||
var/mob/living/carbon/human/H = M
|
||||
|
||||
|
||||
//gloves provide a larger bonus
|
||||
if (istype(H.gloves, /obj/item/clothing/gloves))
|
||||
score += 2
|
||||
@@ -45,12 +46,12 @@ proc/infection_check(var/mob/living/carbon/M, var/vector = "Airborne")
|
||||
return 0
|
||||
|
||||
var/protection = M.getarmor(null, "bio") //gets the full body bio armour value, weighted by body part coverage.
|
||||
|
||||
|
||||
if (vector == "Airborne")
|
||||
var/obj/item/I = M.wear_mask
|
||||
if (istype(I))
|
||||
protection = max(protection, round(0.06*I.armor["bio"]))
|
||||
|
||||
|
||||
return prob(protection)
|
||||
|
||||
//Checks if table-passing table can reach target (5 tile radius)
|
||||
@@ -134,7 +135,7 @@ proc/airborne_can_reach(turf/source, turf/target)
|
||||
// log_debug("Attempting virus [ID]")
|
||||
var/datum/disease2/disease/V = virus2[ID]
|
||||
if(V.spreadtype != vector) continue
|
||||
|
||||
|
||||
//It's hard to get other people sick if you're in an airtight suit.
|
||||
if(!infection_spreading_check(src, V.spreadtype)) continue
|
||||
|
||||
|
||||
+3
-2
@@ -70,12 +70,13 @@ h1.alert, h2.alert {color: #000000;}
|
||||
.disarm {color: #990000;}
|
||||
.passive {color: #660000;}
|
||||
|
||||
.danger {color: #ff0000; font-weight: bold;}
|
||||
.warning {color: #ff0000; font-style: italic;}
|
||||
.danger {color: #ff0000; font-weight: bold;}
|
||||
.warning {color: #ff0000; font-style: italic;}
|
||||
.rose {color: #ff5050;}
|
||||
.info {color: #0000CC;}
|
||||
.notice {color: #000099;}
|
||||
.alium {color: #00ff00;}
|
||||
.cult {color: #800080; font-weight: bold; font-style: italic;}
|
||||
|
||||
/* Languages */
|
||||
|
||||
|
||||
Reference in New Issue
Block a user