| version 1.1 | | version 1.2 |
|---|
| | |
| import CFPython | | import Crossfire |
| import CFGuilds | | import CFGuilds |
| | | |
| whoami=CFPython.WhoAmI() | | whoami=Crossfire.WhoAmI() |
| guildname=CFPython.GetEventOptions(whoami,1) # 1 is 'apply' event | | guildname=Crossfire.ScriptParameters() # 1 is 'apply' event |
| | | |
| def find_player(object): | | def find_player(object): |
| while (CFPython.GetType(object) != 1) : #1 is type 'Player' | | while (object.Type != 1) : #1 is type 'Player' |
| object = CFPython.GetPreviousObject(object) | | object = object.Above |
| if not object: | | if not object: |
| return 0 | | return 0 |
| return object | | return object |
| | | |
| activator=CFPython.WhoIsActivator() | | activator=Crossfire.WhoIsActivator() |
| map = CFPython.GetMap(activator) | | map = activator.Map |
| | | |
| players = [] | | players = [] |
| names = [] | | names = [] |
| | | |
| if (guildname): | | if (guildname): |
| #find players by coords | | #find players by coords |
| ob1=CFPython.GetObjectAt(map,33,24) | | ob1=map.GetObjectAt(33,24) |
| ob2=CFPython.GetObjectAt(map,33,26) | | ob2=map.GetObjectAt(33,26) |
| objects = [ob1, ob2] | | objects = [ob1, ob2] |
| for object in objects: | | for object in objects: |
| temp = find_player(object) | | temp = find_player(object) |
| | |
| players.append(activator) | | players.append(activator) |
| | | |
| for player in players: | | for player in players: |
| names.append(CFPython.GetName(player)) | | names.append(player.Name) |
| | | |
| if len(players) == 3: | | if len(players) == 3: |
| print '%s,%s and %s found guild %s' %(names[0], names[1], names[2], guildname) | | print '%s,%s and %s found guild %s' %(names[0], names[1], names[2], guildname) |
| | |
| for player, name in zip(players, names): | | for player, name in zip(players, names): |
| CFGuilds.CFGuild(guildname).add_member(name, 'GuildMaster') | | CFGuilds.CFGuild(guildname).add_member(name, 'GuildMaster') |
| guildmarker = CFPython.CreateInvisibleObjectInside(player, guildname) | | guildmarker = CFPython.CreateInvisibleObjectInside(player, guildname) |
| CFPython.SetName(guildmarker, guildname) | | guildmarker.Name=guildname |
| CFPython.SetSlaying(guildmarker, 'GuildMaster') | | guildmarker.Slaying='GuildMaster' |
| | | |
| #teleport them | | #teleport them |
| CFPython.Teleport(player,map,int(11),int(16)) | | player.Teleport(map,int(11),int(16)) |
| message = "You have purchased the %s guild. Rule it wisely. (I would type 'save' right about now...)" | | message = "You have purchased the %s guild. Rule it wisely. (I would type 'save' right about now...)" |
| | | |
| else: | | else: |
| | |
| print 'Guild Purchase Error: %s, %s' %(guildname, activatorname) | | print 'Guild Purchase Error: %s, %s' %(guildname, activatorname) |
| message = 'Guild Purchase Error, please notify a DM' | | message = 'Guild Purchase Error, please notify a DM' |
| | | |
| CFPython.Write(message,whoami) | | whoami.Write(message) |
| | | |