Skip to content

Commit

Permalink
add: more objectives for vampires and clings (#6024)
Browse files Browse the repository at this point in the history
* :badguy:

* forge_single_human_objective -> forge_single_objective
  • Loading branch information
Anorak2024 authored Oct 15, 2024
1 parent 5ab9897 commit 9372687
Show file tree
Hide file tree
Showing 5 changed files with 27 additions and 23 deletions.
20 changes: 20 additions & 0 deletions code/modules/antagonists/_common/antag_datum.dm
Original file line number Diff line number Diff line change
Expand Up @@ -445,3 +445,23 @@ GLOBAL_LIST_EMPTY(antagonists)
*/
/datum/antagonist/proc/roundend_report_footer()
return

/**
* Create and assign a single randomized objective.
*/
/datum/antagonist/proc/forge_single_objective()
if(prob(50))
if(length(active_ais()) && prob(100 / length(GLOB.player_list)))
add_objective(/datum/objective/destroy)

else if(prob(5))
add_objective(/datum/objective/debrain)

else if(prob(20))
add_objective(/datum/objective/protect)

else
add_objective(/datum/objective/maroon)

else
add_objective(/datum/objective/steal)
3 changes: 3 additions & 0 deletions code/modules/antagonists/changeling/changeling_datum.dm
Original file line number Diff line number Diff line change
Expand Up @@ -205,6 +205,9 @@ GLOBAL_LIST_INIT(possible_changeling_IDs, list("Alpha","Beta","Gamma","Delta","E
absorb.owner = owner
objectives += absorb

forge_single_objective()
forge_single_objective()

if(prob(60))
add_objective(/datum/objective/steal)
else
Expand Down
2 changes: 1 addition & 1 deletion code/modules/antagonists/space_ninja/ninja_datum.dm
Original file line number Diff line number Diff line change
Expand Up @@ -370,7 +370,7 @@
protect_objective.killers_objectives |= killer_objective

for(var/i in 1 to objective_amount)
traitor_datum.forge_single_human_objective()
traitor_datum.forge_single_objective()

var/list/all_objectives = traitor.get_all_objectives()
var/martyr_compatibility = TRUE
Expand Down
23 changes: 1 addition & 22 deletions code/modules/antagonists/traitor/datum_traitor.dm
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@
return

for(var/i = objective_count, i < objective_amount)
forge_single_human_objective()
forge_single_objective()
i += 1

var/martyr_compatibility = TRUE //You can't succeed in stealing if you're dead.
Expand Down Expand Up @@ -184,27 +184,6 @@
mob.update_icons()


/**
* Create and assign a single randomized traitor objective.
*/
/datum/antagonist/traitor/proc/forge_single_human_objective()
if(prob(50))
if(length(active_ais()) && prob(100 / length(GLOB.player_list)))
add_objective(/datum/objective/destroy)

else if(prob(5))
add_objective(/datum/objective/debrain)

else if(prob(20))
add_objective(/datum/objective/protect)

else
add_objective(/datum/objective/maroon)

else
add_objective(/datum/objective/steal)


/**
* Give traitors their uplink. Play the traitor an alert sound.
*/
Expand Down
2 changes: 2 additions & 0 deletions code/modules/antagonists/vampire/vampire_datum.dm
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,8 @@
add_objective(/datum/objective/blood)
add_objective(/datum/objective/maroon)
add_objective(/datum/objective/steal)
forge_single_objective()
forge_single_objective()

if(prob(20)) // 20% chance of getting survive. 80% chance of getting escape.
add_objective(/datum/objective/survive)
Expand Down

0 comments on commit 9372687

Please sign in to comment.