diff --git a/code/game/gamemodes/nations/flagprocs.dm b/code/game/gamemodes/nations/flagprocs.dm
index eb4e204d9a1..161831183ad 100644
--- a/code/game/gamemodes/nations/flagprocs.dm
+++ b/code/game/gamemodes/nations/flagprocs.dm
@@ -36,7 +36,7 @@
/obj/item/flag/nation/attack_hand(mob/user as mob)
if(user.mind)
if(user.mind.nation)
- if(user.mind.nation == nation) //Same team as flag
+ if(user.mind.nation.type == nation) //Same team as flag
if(loc != startloc)
loc = startloc
user.visible_message("[user] sends [src] back to base!", "You return [src] to your base!")
@@ -49,7 +49,7 @@
if(captured && Adjacent(F.startloc))
user << "This flag has already been captured by your team!"
return
- if(liege == F.liege)
+ if(liege && liege == F.liege)
user << "You can't steal your liege's flags!"
return
else if(..())
@@ -82,10 +82,10 @@
//Announce capture/vassalage here.
for(var/mob/living/carbon/human/H in player_list)
if(H.mind && H.mind.nation)
- if(H.mind.nation == F.nation)
+ if(H.mind.nation.type == F.nation)
H << "You have just vassalized [nation.name]! They must now obey any memebrs of your nation!"
continue
- else if(H.mind.nation == nation)
+ else if(H.mind.nation.type == nation)
H << "You are now vassals of [liege.name]! You must now obey the orders of any of their members!"
continue
//Check for Victory
diff --git a/code/game/gamemodes/nations/nations.dm b/code/game/gamemodes/nations/nations.dm
index e5d084dfdc2..b6bbe97aa27 100644
--- a/code/game/gamemodes/nations/nations.dm
+++ b/code/game/gamemodes/nations/nations.dm
@@ -149,6 +149,9 @@ datum/game_mode/nations
if (!( ticker ))
usr << "\blue The round hasn't started!"
return
+ if(stat!=2)
+ usr << "\blue You must be dead to respawn."
+ return
if (ticker.mode.name != "nations")
usr << "\blue Respawn is disabled."
return
@@ -179,7 +182,7 @@ datum/game_mode/nations
var/deathtimeseconds = round((deathtime - deathtimeminutes * 600) / 10,1)
usr << "You have been dead for[pluralcheck] [deathtimeseconds] seconds."
if (deathtime < 9000)
- usr << "You must wait 10 minutes to respawn!"
+ usr << "You must wait 15 minutes to respawn!"
return
else
@@ -187,7 +190,7 @@ datum/game_mode/nations
var/mob/living/carbon/human/new_character = new(pick(latejoin))//The mob being spawned.
var/datum/data/record/record_found //Referenced to later to either randomize or not randomize the character.
- if(mind && !mind.active) //mind isn't currently in use by someone/something
+ if(mind) //mind isn't currently in use by someone/something
/*Try and locate a record for the person being respawned through data_core.
This isn't an exact science but it does the trick more often than not.*/
var/id = md5("[real_name][mind.assigned_role]")
@@ -214,7 +217,7 @@ datum/game_mode/nations
new_character.real_name = capitalize(pick(first_names_female)) + " " + capitalize(pick(last_names))
new_character.name = new_character.real_name
- if(mind && !mind.active)
+ if(mind)
mind.transfer_to(new_character) //be careful when doing stuff like this! I've already checked the mind isn't in use
new_character.mind.special_verbs = list()
else