From 88aea4acb7a4d171dc1d17ff98820a80b57956ee Mon Sep 17 00:00:00 2001 From: rubenwardy Date: Wed, 30 Mar 2016 01:13:05 +0100 Subject: [PATCH] Add ctf.create_team(name, data) --- ctf/teams.lua | 34 +++++++++++++++++++--------------- ctf_flag/api.lua | 4 ++++ 2 files changed, 23 insertions(+), 15 deletions(-) diff --git a/ctf/teams.lua b/ctf/teams.lua index aa73298..4f7c41c 100644 --- a/ctf/teams.lua +++ b/ctf/teams.lua @@ -9,21 +9,7 @@ function ctf.team(name) return end - ctf.log("team", "Defining team "..name.name) - - ctf.teams[name.name] = { - data = name, - spawn = nil, - players = {} - } - - for i = 1, #ctf.registered_on_new_team do - ctf.registered_on_new_team[i](ctf.teams[name.name]) - end - - ctf.needs_save = true - - return ctf.teams[name.name] + return ctf.create_team(name.name, name) else local team = ctf.teams[name] if team then @@ -41,6 +27,24 @@ function ctf.team(name) end end +function ctf.create_team(name, data) + ctf.log("team", "Creating team " .. name) + + ctf.teams[name] = { + data = data, + spawn = nil, + players = {} + } + + for i = 1, #ctf.registered_on_new_team do + ctf.registered_on_new_team[i](ctf.teams[name]) + end + + ctf.needs_save = true + + return ctf.teams[name] +end + function ctf.remove_team(name) local team = ctf.team(name) if team then diff --git a/ctf_flag/api.lua b/ctf_flag/api.lua index 67653c5..c3483e6 100644 --- a/ctf_flag/api.lua +++ b/ctf_flag/api.lua @@ -218,6 +218,10 @@ function ctf_flag.assert_flags_team(tname) return false end + if not team.flags then + team.flags = {} + end + for i=1, #team.flags do ctf_flag.assert_flag(team.flags[i]) end