-
Notifications
You must be signed in to change notification settings - Fork 275
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Commit * Syndiekit * Update cloning.dm * Adds experimental and normal clonepods to science fab, and dna scanner. I forgot to bring this over from my last PR. * Fix
- Loading branch information
1 parent
e45f445
commit c0a0e64
Showing
10 changed files
with
263 additions
and
6 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
23 changes: 23 additions & 0 deletions
23
monkestation/code/modules/antagonists/evil_clone/evil_clone.dm
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
/datum/antagonist/evil_clone | ||
name = "\improper Evil Clone" | ||
show_in_antagpanel = TRUE | ||
roundend_category = "evil clones" | ||
antagpanel_category = "Evil Clones" | ||
show_name_in_check_antagonists = TRUE | ||
show_to_ghosts = TRUE | ||
|
||
/datum/antagonist/evil_clone/greet() | ||
. = ..() | ||
owner.announce_objectives() | ||
owner.current.playsound_local(get_turf(owner.current), 'sound/ambience/antag/revolutionary_tide.ogg', 100, FALSE, pressure_affected = FALSE, use_reverb = FALSE) | ||
|
||
/datum/antagonist/evil_clone/apply_innate_effects(mob/living/mob_override) | ||
. = ..() | ||
var/mob/living/current = owner.current | ||
current.AddElement(/datum/element/cult_eyes, initial_delay = 0 SECONDS) | ||
|
||
/datum/antagonist/evil_clone/remove_innate_effects(mob/living/mob_override) | ||
. = ..() | ||
var/mob/living/current = owner.current | ||
if (HAS_TRAIT(current, TRAIT_UNNATURAL_RED_GLOWY_EYES)) | ||
current.RemoveElement(/datum/element/cult_eyes) |
38 changes: 38 additions & 0 deletions
38
monkestation/code/modules/antagonists/evil_clone/evil_clone_objective.dm
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
/datum/objective/evil_clone/murder // The existance of the murderbone objective makes evil clones properly feared, so even when they aren't murderboning they will still be shunned and persecuted. | ||
name = "clone supremacy" | ||
explanation_text = "Make sure clones of yourself are the only ones alive. Do not spare the original." | ||
|
||
/datum/objective/evil_clone/sole | ||
name = "real one" | ||
explanation_text = "All other versions of you are imposters, eliminate them." | ||
|
||
/datum/objective/evil_clone/rule | ||
name = "rightful rule" | ||
explanation_text = "You and your fellow clones of yourself are the rightful rulers of the station, take control." | ||
|
||
/datum/objective/evil_clone/minion | ||
name = "minion" | ||
explanation_text = "Find the most evil being you can, and become their minion." | ||
|
||
/datum/objective/evil_clone/dud // Relies on more destructive objectives, to create conflict from crew hating evil clones because they MIGHT have a more evil objective. | ||
name = "peaceful clone" | ||
explanation_text = "You find it really mean that some people don't like you because of your red eyes." | ||
|
||
/datum/objective/evil_clone/tide | ||
name = "tider" | ||
explanation_text = "Crime is your religion, commit as much crime as possible. Only seriously injure people if they try to stop crime." | ||
|
||
/datum/objective/evil_clone/fake_cult | ||
name = "fake cultist" | ||
explanation_text = "Praise" | ||
|
||
/datum/objective/evil_clone/fake_cult/New() | ||
var/god = pick(list("Rat'var", "Nar'sie")) //So clones with different gods will fight eachother. | ||
explanation_text+=" [god]! They haven't answered your prayers yet, but surely if you pray enough and make elaborate enough rituals they will inevitably come. Make sure no heretical religions prosper." | ||
|
||
/datum/objective/evil_clone/territorial | ||
name = "territorial" | ||
explanation_text = "The clonepod which created you is a holy site only you and your fellow clones of yourself are worthy to be in the presence of. Secure the area around the clonepod and ensure no non-clones threaten it." | ||
|
||
/datum/objective/evil_clone/check_completion() | ||
return TRUE |
19 changes: 19 additions & 0 deletions
19
monkestation/code/modules/antagonists/evil_clone/evil_event.dm
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
/datum/round_event_control/cloner_corruption | ||
name = "Experimental Cloner Corruption" | ||
typepath = /datum/round_event/cloner_corruption | ||
max_occurrences = 1 | ||
weight = 3 | ||
category = EVENT_CATEGORY_ENTITIES //Kinda, evil clones ARE entities. | ||
track = EVENT_TRACK_MODERATE | ||
tags = list(TAG_COMBAT) // Clones will likely start a fight, but will usually not cause wanton destruction. | ||
earliest_start = 35 MINUTES //This requires an experimental cloner to be made, so should wait until later to fire when there's better chance one has been set up. | ||
|
||
/datum/round_event/cloner_corruption/start() | ||
var/found = FALSE | ||
for(var/obj/machinery/clonepod/experimental/cloner in GLOB.machines) | ||
if(!cloner.locked) | ||
cloner.evil_objective = pick(subtypesof(/datum/objective/evil_clone)) | ||
cloner.RefreshParts() | ||
found = TRUE | ||
if(!found) // Refund if no experimental cloners are found. | ||
control.occurrences-- |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters