Go to the documentation of this file.
23 from time
import localtime, strftime, time
25 from CFDataFile
import CFDataFile, CFData
28 GuildList = os.path.join(Crossfire.DataDirectory(),Crossfire.MapDirectory(),
'templates',
'guild',
'GuildList')
30 guildfile =
open(GuildList,
'r')
31 guildlisting = guildfile.read().
split(
'\n')
35 Crossfire.Log(Crossfire.LogError,
'No GuildList file. Please check %s' %GuildList)
37 Crossfire.Log(Crossfire.LogDebug,
'%s' %guildlisting)
38 for guild
in guildlisting:
41 Crossfire.Log(Crossfire.LogInfo,
'New Guild: %s' %guild)
45 for guild
in guildlist:
46 memberlist =
CFGuild(guild).list_members()
47 for member
in memberlist:
53 '''Inter-Guild management class - loads guild from GuildList'''
56 guildhousesheader= [
'Founded_Date',
'Points',
'Status',
'Quest_points']
57 self.
status=[
'active',
'suspended',
'probation',
'inactive']
74 ,
'Founded_Date' :
'never'
76 ,
'Status' :
'inactive'
86 record = self.
info(name)
87 date = strftime(
"%a, %d %b %Y", localtime(time()))
89 record[
'Founded_Date'] = date
90 record[
'Status'] =
'active'
97 record = self.
info(name)
100 record[
'Status'] = status
109 record = self.
info(name)
111 temp =
int(record[
'Quest_points'])
112 if temp + number >= self.
qpcap:
116 record[
'Quest_points'] = temp
123 record = self.
info(name)
125 temp =
int(record[
'Points'])
130 record[
'Points'] = temp
140 guildheader = [
'Join_date',
'Rank',
'Status',
'Dues',
'Demerits',
'Quest_points']
141 self.
ranks=[
'Initiate',
'Novice',
'Guildman',
'Journeyman',
'Master',
'GuildMaster']
142 self.
status=[
'suspended',
'probation',
'good']
150 date = strftime(
"%a, %d %b %Y", localtime(time()))
187 record = self.
info(name)
189 temp =
int(record[
'Demerits'])
194 record[
'Demerits'] = temp
201 record = self.
info(name)
203 temp =
int(record[
'Demerits'])
204 if temp - number <=0:
208 record[
'Demerits'] = temp
215 record = self.
info(name)
217 temp =
int(record[
'Quest_points'])
218 if temp + number >= self.
qpcap:
222 record[
'Quest_points'] = temp
229 record = self.
info(name)
231 temp =
int(record[
'Dues'])
232 if temp + number >= self.
duescap:
236 record[
'Dues'] = temp
245 record = self.
info(name)
254 record = self.
info(name)
257 record[
'Status'] = status
266 record = self.
info(name)
268 currentrank = record[
'Rank']
269 if currentrank !=
'GuildMaster':
272 record[
'Rank'] = self.
ranks[newrank]
281 record = self.
info(name)
283 currentrank = record[
'Rank']
284 if currentrank !=
'Initiate':
286 Crossfire.Log(Crossfire.LogDebug,
"ranknum = %d"%ranknum)
288 record[
'Rank'] = self.
ranks[newrank]
def clear_dues(self, name, number)
def promote_member(self, name)
def add_member(self, name, rank)
def remove_demerits(self, name, number)
def change_status(self, name, status)
def change_status(self, name, status)
def add_guild(self, name)
def update_points(self, name, number)
def remove_member(self, name)
def establish(self, name)
def pay_dues(self, name, number)
def add_questpoints(self, name, number)
def demote_member(self, name)
def __init__(self, guildname)
static std::vector< std::string > split(const std::string &field, const std::string &by)
def add_demerits(self, name, number)
def add_questpoints(self, name, number)