Revision: | 1.1.1.1 (vendor branch) |
Committed: | Sun Feb 5 00:02:09 2006 UTC (18 years, 5 months ago) by root |
Content type: | text/x-python |
Branch: | UPSTREAM, MAIN |
CVS Tags: | post_fixaltar, last_stable, post_fixaltar2, rel-2_82, rel-2_81, rel-2_80, pre_coinconvert, UPSTREAM_2006_03_15, rel-3_0, rel-2_6, rel-2_7, rel-2_4, rel-2_5, rel-2_2, rel-2_0, rel-2_1, rel-2_72, rel-2_73, rel-2_71, rel-2_76, rel-2_77, rel-2_74, rel-2_75, rel-2_54, rel-2_55, rel-2_56, rel-2_79, UPSTREAM_2006_02_01, rel-2_53, pre_material_cfarch_normalize_run, rel-2_32, pre_fixconverter, post_coinconvert, pre_fixaltar2, pre_map_rename, UPSTREAM_2006_02_22, rel-2_90, rel-2_92, rel-2_93, rel-2_78, post_fixconverter, pre_fixaltar, rel-2_61, rel-2_43, rel-2_42, rel-2_41, HEAD |
Changes since 1.1: | +0 -0 lines |
Log Message: | Initial Import |
# | 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 |