mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-13 19:52:40 +00:00
@@ -23,5 +23,5 @@
|
|||||||
/datum/antagonist/proc/place_mob(var/mob/living/mob)
|
/datum/antagonist/proc/place_mob(var/mob/living/mob)
|
||||||
if(!starting_locations || !starting_locations.len)
|
if(!starting_locations || !starting_locations.len)
|
||||||
return
|
return
|
||||||
var/turf/T = pick_mobless_turf_if_exists(mob)
|
var/turf/T = pick_mobless_turf_if_exists(starting_locations)
|
||||||
mob.forceMove(T)
|
mob.forceMove(T)
|
||||||
|
|||||||
@@ -4,7 +4,6 @@
|
|||||||
extended_round_description = "Life always finds a way. However, life can sometimes take a more disturbing route. Humanity's extensive knowledge of xeno-biological specimens has made them confident and arrogant. Yet something slipped past their eyes. Something dangerous. Something alive. Most frightening of all, however, is that this something is someone. An unknown alien specimen has incorporated itself into the crew of the NSS Exodus. Its unique biology allows it to manipulate its own or anyone else's DNA. With the ability to copy faces, voices, animals, but also change the chemical make up of your own body, its existence is a threat to not only your personal safety but the lives of everyone on board. No one knows where it came from. No one knows who it is or what it wants. One thing is for certain though... there is never just one of them. Good luck."
|
extended_round_description = "Life always finds a way. However, life can sometimes take a more disturbing route. Humanity's extensive knowledge of xeno-biological specimens has made them confident and arrogant. Yet something slipped past their eyes. Something dangerous. Something alive. Most frightening of all, however, is that this something is someone. An unknown alien specimen has incorporated itself into the crew of the NSS Exodus. Its unique biology allows it to manipulate its own or anyone else's DNA. With the ability to copy faces, voices, animals, but also change the chemical make up of your own body, its existence is a threat to not only your personal safety but the lives of everyone on board. No one knows where it came from. No one knows who it is or what it wants. One thing is for certain though... there is never just one of them. Good luck."
|
||||||
config_tag = "changeling"
|
config_tag = "changeling"
|
||||||
required_players = 2
|
required_players = 2
|
||||||
required_players_secret = 10
|
|
||||||
required_enemies = 1
|
required_enemies = 1
|
||||||
end_on_antag_death = 1
|
end_on_antag_death = 1
|
||||||
antag_scaling_coeff = 10
|
antag_scaling_coeff = 10
|
||||||
|
|||||||
@@ -4,7 +4,6 @@
|
|||||||
extended_round_description = "The station has been infiltrated by a fanatical group of death-cultists! They will use powers from beyond your comprehension to subvert you to their cause and ultimately please their gods through sacrificial summons and physical immolation! Try to survive!"
|
extended_round_description = "The station has been infiltrated by a fanatical group of death-cultists! They will use powers from beyond your comprehension to subvert you to their cause and ultimately please their gods through sacrificial summons and physical immolation! Try to survive!"
|
||||||
config_tag = "cult"
|
config_tag = "cult"
|
||||||
required_players = 5
|
required_players = 5
|
||||||
required_players_secret = 15
|
|
||||||
required_enemies = 3
|
required_enemies = 3
|
||||||
end_on_antag_death = 1
|
end_on_antag_death = 1
|
||||||
antag_tags = list(MODE_CULTIST)
|
antag_tags = list(MODE_CULTIST)
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
name = "epidemic"
|
name = "epidemic"
|
||||||
config_tag = "epidemic"
|
config_tag = "epidemic"
|
||||||
required_players = 1
|
required_players = 1
|
||||||
required_players_secret = 15
|
|
||||||
round_description = "A deadly epidemic is spreading on the station. Find a cure as fast as possible, and keep your distance to anyone who speaks in a hoarse voice!"
|
round_description = "A deadly epidemic is spreading on the station. Find a cure as fast as possible, and keep your distance to anyone who speaks in a hoarse voice!"
|
||||||
|
|
||||||
var/cruiser_arrival
|
var/cruiser_arrival
|
||||||
|
|||||||
@@ -10,7 +10,6 @@ var/global/list/additional_antag_types = list()
|
|||||||
var/probability = 0
|
var/probability = 0
|
||||||
|
|
||||||
var/required_players = 0 // Minimum players for round to start if voted in.
|
var/required_players = 0 // Minimum players for round to start if voted in.
|
||||||
var/required_players_secret = 0 // Minimum number of players for that game mode to be chose in Secret
|
|
||||||
var/required_enemies = 0 // Minimum antagonists for round to start.
|
var/required_enemies = 0 // Minimum antagonists for round to start.
|
||||||
var/newscaster_announcements = null
|
var/newscaster_announcements = null
|
||||||
var/end_on_antag_death = 0 // Round will end when all antagonists are dead.
|
var/end_on_antag_death = 0 // Round will end when all antagonists are dead.
|
||||||
@@ -147,10 +146,6 @@ var/global/list/additional_antag_types = list()
|
|||||||
if((player.client)&&(player.ready))
|
if((player.client)&&(player.ready))
|
||||||
playerC++
|
playerC++
|
||||||
|
|
||||||
if(master_mode=="secret")
|
|
||||||
if(playerC < required_players_secret)
|
|
||||||
return 0
|
|
||||||
else
|
|
||||||
if(playerC < required_players)
|
if(playerC < required_players)
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
|
|||||||
@@ -8,7 +8,6 @@ var/global/list/obj/cortical_stacks = list() //Stacks for 'leave nobody behind'
|
|||||||
name = "heist"
|
name = "heist"
|
||||||
config_tag = "heist"
|
config_tag = "heist"
|
||||||
required_players = 15
|
required_players = 15
|
||||||
required_players_secret = 25
|
|
||||||
required_enemies = 4
|
required_enemies = 4
|
||||||
round_description = "An unidentified bluespace signature has slipped past the Icarus and is approaching the station!"
|
round_description = "An unidentified bluespace signature has slipped past the Icarus and is approaching the station!"
|
||||||
end_on_antag_death = 1
|
end_on_antag_death = 1
|
||||||
|
|||||||
@@ -4,7 +4,6 @@
|
|||||||
extended_round_description = "The AI will attempt to hack the APCs around the station in order to gain as much control as possible."
|
extended_round_description = "The AI will attempt to hack the APCs around the station in order to gain as much control as possible."
|
||||||
config_tag = "malfunction"
|
config_tag = "malfunction"
|
||||||
required_players = 2
|
required_players = 2
|
||||||
required_players_secret = 7
|
|
||||||
required_enemies = 1
|
required_enemies = 1
|
||||||
end_on_antag_death = 0
|
end_on_antag_death = 0
|
||||||
auto_recall_shuttle = 0
|
auto_recall_shuttle = 0
|
||||||
|
|||||||
@@ -6,7 +6,6 @@
|
|||||||
name = "Memetic Anomaly"
|
name = "Memetic Anomaly"
|
||||||
config_tag = "meme"
|
config_tag = "meme"
|
||||||
required_players = 3
|
required_players = 3
|
||||||
required_players_secret = 10
|
|
||||||
restricted_jobs = list("AI", "Cyborg")
|
restricted_jobs = list("AI", "Cyborg")
|
||||||
recommended_enemies = 2 // need at least a meme and a host
|
recommended_enemies = 2 // need at least a meme and a host
|
||||||
votable = 0 // temporarily disable this mode for voting
|
votable = 0 // temporarily disable this mode for voting
|
||||||
|
|||||||
@@ -4,7 +4,6 @@
|
|||||||
extended_round_description = "What was that?! Was that a person or did your eyes just play tricks on you? You have no idea. That slim-suited, cryptic individual is an enigma to you and all of your knowledge. Their purpose is unknown. Their mission is unknown. How they arrived to this secure and isolated section of the galaxy, you don't know. What you do know is that there is a silent shadow-stalker piercing through the defenses of Nanotrasen with technological capabilities eons ahead of your time. They can avoid the omniscience of the AI and rival the most hardened weapons your station is capable of. Tread lightly and only hope this unknown assassin isn't here for you."
|
extended_round_description = "What was that?! Was that a person or did your eyes just play tricks on you? You have no idea. That slim-suited, cryptic individual is an enigma to you and all of your knowledge. Their purpose is unknown. Their mission is unknown. How they arrived to this secure and isolated section of the galaxy, you don't know. What you do know is that there is a silent shadow-stalker piercing through the defenses of Nanotrasen with technological capabilities eons ahead of your time. They can avoid the omniscience of the AI and rival the most hardened weapons your station is capable of. Tread lightly and only hope this unknown assassin isn't here for you."
|
||||||
config_tag = "ninja"
|
config_tag = "ninja"
|
||||||
required_players = 1
|
required_players = 1
|
||||||
required_players_secret = 10
|
|
||||||
required_enemies = 1
|
required_enemies = 1
|
||||||
end_on_antag_death = 1
|
end_on_antag_death = 1
|
||||||
antag_tags = list(MODE_NINJA)
|
antag_tags = list(MODE_NINJA)
|
||||||
|
|||||||
@@ -9,7 +9,6 @@ var/list/nuke_disks = list()
|
|||||||
round_description = "A mercenary strike force is approaching the station!"
|
round_description = "A mercenary strike force is approaching the station!"
|
||||||
config_tag = "mercenary"
|
config_tag = "mercenary"
|
||||||
required_players = 15
|
required_players = 15
|
||||||
required_players_secret = 25 // 25 players - 5 players to be the nuke ops = 20 players remaining
|
|
||||||
required_enemies = 1
|
required_enemies = 1
|
||||||
end_on_antag_death = 1
|
end_on_antag_death = 1
|
||||||
var/nuke_off_station = 0 //Used for tracking if the syndies actually haul the nuke to the station
|
var/nuke_off_station = 0 //Used for tracking if the syndies actually haul the nuke to the station
|
||||||
|
|||||||
@@ -4,7 +4,6 @@
|
|||||||
round_description = "Some crewmembers are attempting to start a revolution!"
|
round_description = "Some crewmembers are attempting to start a revolution!"
|
||||||
extended_round_description = "Revolutionaries - Remove the heads of staff from power. Convert other crewmembers to your cause using the 'Convert Bourgeoise' verb. Protect your leaders."
|
extended_round_description = "Revolutionaries - Remove the heads of staff from power. Convert other crewmembers to your cause using the 'Convert Bourgeoise' verb. Protect your leaders."
|
||||||
required_players = 4
|
required_players = 4
|
||||||
required_players_secret = 15
|
|
||||||
required_enemies = 3
|
required_enemies = 3
|
||||||
auto_recall_shuttle = 1
|
auto_recall_shuttle = 1
|
||||||
end_on_antag_death = 1
|
end_on_antag_death = 1
|
||||||
|
|||||||
@@ -4,7 +4,6 @@
|
|||||||
extended_round_description = "A powerful entity capable of manipulating the elements around him, most commonly referred to as a 'wizard', has infiltrated the station. They have a wide variety of powers and spells available to them that makes your own simple moral self tremble with fear and excitement. Ultimately, their purpose is unknown. However, it is up to you and your crew to decide if their powers can be used for good or if their arrival foreshadows the destruction of the entire station."
|
extended_round_description = "A powerful entity capable of manipulating the elements around him, most commonly referred to as a 'wizard', has infiltrated the station. They have a wide variety of powers and spells available to them that makes your own simple moral self tremble with fear and excitement. Ultimately, their purpose is unknown. However, it is up to you and your crew to decide if their powers can be used for good or if their arrival foreshadows the destruction of the entire station."
|
||||||
config_tag = "wizard"
|
config_tag = "wizard"
|
||||||
required_players = 1
|
required_players = 1
|
||||||
required_players_secret = 10
|
|
||||||
required_enemies = 1
|
required_enemies = 1
|
||||||
end_on_antag_death = 1
|
end_on_antag_death = 1
|
||||||
antag_tags = list(MODE_WIZARD)
|
antag_tags = list(MODE_WIZARD)
|
||||||
|
|||||||
@@ -137,6 +137,7 @@
|
|||||||
if (istype(O, /obj/item/stack))
|
if (istype(O, /obj/item/stack))
|
||||||
var/obj/item/stack/S = O
|
var/obj/item/stack/S = O
|
||||||
S.amount = produced
|
S.amount = produced
|
||||||
|
S.add_to_stacks(user)
|
||||||
|
|
||||||
if (istype(O, /obj/item/weapon/storage)) //BubbleWrap - so newly formed boxes are empty
|
if (istype(O, /obj/item/weapon/storage)) //BubbleWrap - so newly formed boxes are empty
|
||||||
for (var/obj/item/I in O)
|
for (var/obj/item/I in O)
|
||||||
@@ -284,13 +285,13 @@
|
|||||||
return
|
return
|
||||||
return max_amount
|
return max_amount
|
||||||
|
|
||||||
/obj/item/stack/proc/add_to_stacks(mob/usr as mob)
|
/obj/item/stack/proc/add_to_stacks(mob/user as mob)
|
||||||
for (var/obj/item/stack/item in usr.loc)
|
for (var/obj/item/stack/item in user.loc)
|
||||||
if (item==src)
|
if (item==src)
|
||||||
continue
|
continue
|
||||||
var/transfer = src.transfer_to(item)
|
var/transfer = src.transfer_to(item)
|
||||||
if (transfer)
|
if (transfer)
|
||||||
usr << "You add a new [item.singular_name] to the stack. It now contains [item.amount] [item.singular_name]\s."
|
user << "<span class='notice'>You add a new [item.singular_name] to the stack. It now contains [item.amount] [item.singular_name]\s.</span>"
|
||||||
if(!amount)
|
if(!amount)
|
||||||
break
|
break
|
||||||
|
|
||||||
|
|||||||
@@ -65,9 +65,10 @@
|
|||||||
var/obj/item/stack/material/M = S
|
var/obj/item/stack/material/M = S
|
||||||
if(!istype(M) || material.name != M.material.name)
|
if(!istype(M) || material.name != M.material.name)
|
||||||
return 0
|
return 0
|
||||||
..(S,tamount,1)
|
var/transfer = ..(S,tamount,1)
|
||||||
if(src) update_strings()
|
if(src) update_strings()
|
||||||
if(M) M.update_strings()
|
if(M) M.update_strings()
|
||||||
|
return transfer
|
||||||
|
|
||||||
/obj/item/stack/material/attack_self(var/mob/user)
|
/obj/item/stack/material/attack_self(var/mob/user)
|
||||||
if(!material.build_windows(user, src))
|
if(!material.build_windows(user, src))
|
||||||
|
|||||||
@@ -127,8 +127,6 @@ var/list/name_to_material
|
|||||||
var/obj/item/stack/S = new rod_product(get_turf(user))
|
var/obj/item/stack/S = new rod_product(get_turf(user))
|
||||||
S.add_fingerprint(user)
|
S.add_fingerprint(user)
|
||||||
S.add_to_stacks(user)
|
S.add_to_stacks(user)
|
||||||
if(!(user.l_hand && user.r_hand))
|
|
||||||
user.put_in_hands(S)
|
|
||||||
|
|
||||||
/material/proc/build_wired_product(var/mob/user, var/obj/item/stack/used_stack, var/obj/item/stack/target_stack)
|
/material/proc/build_wired_product(var/mob/user, var/obj/item/stack/used_stack, var/obj/item/stack/target_stack)
|
||||||
if(!wire_product)
|
if(!wire_product)
|
||||||
|
|||||||
@@ -149,7 +149,7 @@ Works together with spawning an observer, noted above.
|
|||||||
if(key)
|
if(key)
|
||||||
var/mob/dead/observer/ghost = new(src) //Transfer safety to observer spawning proc.
|
var/mob/dead/observer/ghost = new(src) //Transfer safety to observer spawning proc.
|
||||||
ghost.can_reenter_corpse = can_reenter_corpse
|
ghost.can_reenter_corpse = can_reenter_corpse
|
||||||
ghost.timeofdeath = src.timeofdeath //BS12 EDIT
|
ghost.timeofdeath = src.stat == DEAD ? src.timeofdeath : world.time
|
||||||
ghost.key = key
|
ghost.key = key
|
||||||
if(ghost.client && !ghost.client.holder && !config.antag_hud_allowed) // For new ghosts we remove the verb from even showing up if it's not allowed.
|
if(ghost.client && !ghost.client.holder && !config.antag_hud_allowed) // For new ghosts we remove the verb from even showing up if it's not allowed.
|
||||||
ghost.verbs -= /mob/dead/observer/verb/toggle_antagHUD // Poor guys, don't know what they are missing!
|
ghost.verbs -= /mob/dead/observer/verb/toggle_antagHUD // Poor guys, don't know what they are missing!
|
||||||
|
|||||||
@@ -1290,11 +1290,10 @@
|
|||||||
if(C.body_parts_covered & FEET)
|
if(C.body_parts_covered & FEET)
|
||||||
feet_exposed = 0
|
feet_exposed = 0
|
||||||
|
|
||||||
flavor_text = flavor_texts["general"]
|
flavor_text = ""
|
||||||
flavor_text += "\n\n"
|
|
||||||
for (var/T in flavor_texts)
|
for (var/T in flavor_texts)
|
||||||
if(flavor_texts[T] && flavor_texts[T] != "")
|
if(flavor_texts[T] && flavor_texts[T] != "")
|
||||||
if((T == "head" && head_exposed) || (T == "face" && face_exposed) || (T == "eyes" && eyes_exposed) || (T == "torso" && torso_exposed) || (T == "arms" && arms_exposed) || (T == "hands" && hands_exposed) || (T == "legs" && legs_exposed) || (T == "feet" && feet_exposed))
|
if((T == "general") || (T == "head" && head_exposed) || (T == "face" && face_exposed) || (T == "eyes" && eyes_exposed) || (T == "torso" && torso_exposed) || (T == "arms" && arms_exposed) || (T == "hands" && hands_exposed) || (T == "legs" && legs_exposed) || (T == "feet" && feet_exposed))
|
||||||
flavor_text += flavor_texts[T]
|
flavor_text += flavor_texts[T]
|
||||||
flavor_text += "\n\n"
|
flavor_text += "\n\n"
|
||||||
if(!shrink)
|
if(!shrink)
|
||||||
|
|||||||
@@ -56,6 +56,19 @@
|
|||||||
|
|
||||||
-->
|
-->
|
||||||
<div class="commit sansserif">
|
<div class="commit sansserif">
|
||||||
|
<h2 class="date">14 October 2015</h2>
|
||||||
|
<h3 class="author">Hubblenaut updated:</h3>
|
||||||
|
<ul class="changes bgimages16">
|
||||||
|
<li class="bugfix">Airlock backup power test light properly offline when backup power down.</li>
|
||||||
|
<li class="bugfix">Empty flavor texts no longer draw an empty line on examination.</li>
|
||||||
|
<li class="bugfix">Material stacks now properly merge upon creation.</li>
|
||||||
|
<li class="bugfix">Messages for adding to existing stack appear again.</li>
|
||||||
|
</ul>
|
||||||
|
<h3 class="author">TheWelp updated:</h3>
|
||||||
|
<ul class="changes bgimages16">
|
||||||
|
<li class="rscdel">Removed higher Secret player requirements.</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
<h2 class="date">10 October 2015</h2>
|
<h2 class="date">10 October 2015</h2>
|
||||||
<h3 class="author">HarpyEagle updated:</h3>
|
<h3 class="author">HarpyEagle updated:</h3>
|
||||||
<ul class="changes bgimages16">
|
<ul class="changes bgimages16">
|
||||||
|
|||||||
@@ -2134,3 +2134,11 @@ DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py.
|
|||||||
than they were supposed to.
|
than they were supposed to.
|
||||||
- bugfix: Merc bombs are now appropriately explosive again. Same goes for bombs
|
- bugfix: Merc bombs are now appropriately explosive again. Same goes for bombs
|
||||||
made by toxins.
|
made by toxins.
|
||||||
|
2015-10-14:
|
||||||
|
Hubblenaut:
|
||||||
|
- bugfix: Airlock backup power test light properly offline when backup power down.
|
||||||
|
- bugfix: Empty flavor texts no longer draw an empty line on examination.
|
||||||
|
- bugfix: Material stacks now properly merge upon creation.
|
||||||
|
- bugfix: Messages for adding to existing stack appear again.
|
||||||
|
TheWelp:
|
||||||
|
- rscdel: Removed higher Secret player requirements.
|
||||||
|
|||||||
Reference in New Issue
Block a user