ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/maps/python/guilds/guildjoin.py
Revision: 1.1
Committed: Sun Feb 5 00:02:09 2006 UTC (18 years, 6 months ago) by root
Content type: text/x-python
Branch point for: UPSTREAM, MAIN
Log Message:
Initial revision

File Contents

# User Rev Content
1 root 1.1 # guildjoin.py - operates perilous chair for Hall of Joining in crossfire guilds
2     #
3     # Copyright (C) 2004 Todd Mitchell
4     #
5     # This program is free software; you can redistribute it and/or modify
6     # it under the terms of the GNU General Public License as published by
7     # the Free Software Foundation; either version 2 of the License, or
8     # (at your option) any later version.
9     #
10     # This program is distributed in the hope that it will be useful,
11     # but WITHOUT ANY WARRANTY; without even the implied warranty of
12     # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13     # GNU General Public License for more details.
14     #
15     # You should have received a copy of the GNU General Public License
16     # along with this program; if not, write to the Free Software
17     # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
18     #
19     # The author can be reached via e-mail at temitchell@sourceforge.net
20     #
21    
22     import Crossfire
23     import CFGuilds
24    
25     def find_player(object):
26     while (object.Type != 1) : #1 is type 'Player'
27     object = object.Above
28     if not object:
29     return 0
30     return object
31    
32     activator=Crossfire.WhoIsActivator()
33     activatorname=activator.Name
34     map = activator.Map
35     whoami=Crossfire.WhoAmI()
36    
37     guildname=Crossfire.ScriptParameters() # 1 is 'apply' event
38    
39     if (guildname):
40     guild = CFGuilds.CFGuild(guildname)
41     #find players by coords
42     ob=map.GetFirstObjectOnSquare(9,16)
43     player = find_player(ob)
44     if player: # look for player
45     charname=player.Name
46     in_guild = CFGuilds.SearchGuilds(charname)
47     if in_guild == 0:
48     if guild.info(charname):
49     #already a member
50     message = '%s is already a member.' %charname
51     else:
52     guild.add_member(charname, 'Initiate')
53     message = 'Added %s to the guild' %charname
54     else:
55     message = 'It appears that %s is already a member of the %s guild' %(charname, in_guild)
56     else:
57     message = 'No one is in the chair!'
58     else:
59     print 'Guild Join Error: %s' %(guildname)
60     message = 'Guild Join Error, please notify a DM'
61    
62     whoami.Say(message)
63