Skip to content

Commit

Permalink
fixes syndie objectives, it ain't pretty but it works (#37424)
Browse files Browse the repository at this point in the history
  • Loading branch information
SonixApache authored Feb 16, 2025
1 parent 47c02f3 commit cfc8ffa
Showing 1 changed file with 34 additions and 29 deletions.
63 changes: 34 additions & 29 deletions code/datums/gamemode/role/syndicate.dm
Original file line number Diff line number Diff line change
Expand Up @@ -50,13 +50,18 @@
if(prob(10))
AppendObjective(/datum/objective/block)

else
var/list/dupecheck
dupecheck.Add(1,2,3,4,5,6,7,8,9,10,11,12,13)
dupecheck = shuffle(dupecheck)
else //generates 2 to 5 objectives, reducing duplicates
var/list/dupecheck[13]
var/it1
for(it1=1, it1<=dupecheck.len, it1++)
dupecheck[it1] = it1
var/objcount = rand(2,5)
var/i
for(i=0; i<=rand(2,5); i++)//generates 2 to 5 objectives, limiting duplicates
switch(dupecheck[i])
for(i=0; i<=objcount; i++)
var/chooseobj = rand(1,dupecheck.len)
var/chosenobj = dupecheck[chooseobj]
dupecheck.Remove(chosenobj)
switch(chosenobj)
if(1 to 2)
AppendObjective(/datum/objective/target/brig)
if(3)
Expand All @@ -75,31 +80,31 @@
AppendObjective(/datum/objective/target/assassinate/delay_medium)
else
AppendObjective(/datum/objective/target/assassinate/orexile)
switch(rand(1,100))
if(1 to 30) // Die glorious death
if(!(locate(/datum/objective/die) in objectives.GetObjectives()) && !(locate(/datum/objective/target/steal) in objectives.GetObjectives()))
AppendObjective(/datum/objective/die)
switch(rand(1,100))
if(1 to 30) // Die glorious death
if(!(locate(/datum/objective/die) in objectives.GetObjectives()) && !(locate(/datum/objective/target/steal) in objectives.GetObjectives()))
AppendObjective(/datum/objective/die)
else
if(prob(85))
if (!(locate(/datum/objective/escape) in objectives.GetObjectives()))
AppendObjective(/datum/objective/escape)
else
if(prob(85))
if (!(locate(/datum/objective/escape) in objectives.GetObjectives()))
AppendObjective(/datum/objective/escape)
if(prob(50))
if (!(locate(/datum/objective/hijack) in objectives.GetObjectives()))
AppendObjective(/datum/objective/hijack)
else
if(prob(50))
if (!(locate(/datum/objective/hijack) in objectives.GetObjectives()))
AppendObjective(/datum/objective/hijack)
else
if (!(locate(/datum/objective/minimize_casualties) in objectives.GetObjectives()))
AppendObjective(/datum/objective/minimize_casualties)
if(31 to 90)
if (!(locate(/datum/objective/escape) in objectives.objectives))
AppendObjective(/datum/objective/escape)
else
if(prob(50))
if (!(locate(/datum/objective/hijack) in objectives.objectives))
AppendObjective(/datum/objective/hijack)
else // Honk
if (!(locate(/datum/objective/minimize_casualties) in objectives.GetObjectives()))
AppendObjective(/datum/objective/minimize_casualties)
if (!(locate(/datum/objective/minimize_casualties) in objectives.GetObjectives()))
AppendObjective(/datum/objective/minimize_casualties)
if(31 to 90)
if (!(locate(/datum/objective/escape) in objectives.objectives))
AppendObjective(/datum/objective/escape)
else
if(prob(50))
if (!(locate(/datum/objective/hijack) in objectives.objectives))
AppendObjective(/datum/objective/hijack)
else // Honk
if (!(locate(/datum/objective/minimize_casualties) in objectives.GetObjectives()))
AppendObjective(/datum/objective/minimize_casualties)

/datum/role/traitor/extraPanelButtons()
var/dat = ""
Expand Down

0 comments on commit cfc8ffa

Please sign in to comment.