diff --git a/python/guilds/arrest.py b/python/guilds/arrest.py index 7b2449611..fa30b8095 100644 --- a/python/guilds/arrest.py +++ b/python/guilds/arrest.py @@ -1,62 +1,26 @@ -import random,Crossfire,CFGuilds,sys,string +""" +This implements a custom trap that is put under doors in guilds to deal with +tailgaters (people without access who follow people with access through doors). + +This used to do some weird cursing, but it's modern times now so this just +sends people to Scorn's jail. +""" + +import Crossfire from CFGuildClearance import CheckClearance -activator=Crossfire.WhoIsActivator() -whoami=Crossfire.WhoAmI() -Crossfire.SetReturnValue(1) +activator = Crossfire.WhoIsActivator() -def find_player(object): - while (object.Type != 1) : #1 is type 'Player' - object = object.Above - if not object: - return 0 - return object +Crossfire.SetReturnValue(1) # don't run the actual trap -x3=1 -y3=8 -Params=Crossfire.ScriptParameters().split() -Approved="Access granted" if activator != None and CheckClearance(Params,activator) else "Access denied" -x= 26 -y=0 -guildname = Params[0] -guild=CFGuilds.CFGuild(guildname) -guildrecord=CFGuilds.CFGuildHouses().info(guildname) -ActionRequired=Params[2] +Params = Crossfire.ScriptParameters().split() +ActionRequired = Params[2] # formerly A for arrest and D for curse, no longer used (always A) -# things which are not a player are ok -if activator == None or activator.Type != Crossfire.Type.PLAYER: - Approved = 'Access granted' - - -if (Approved != 'Access granted'): - if (ActionRequired == "A"): - activator.Teleport(Crossfire.ReadyMap('/scorn/misc/jail'),int(15),random.choice([1,3])) - elif (ActionRequired == "D"): - x4=random.randint(21, 23) - y4=random.randint(22,24) - Corpse = activator.Map.ObjectAt(int (21), int (0)) - Curse = activator.Map.ObjectAt(int(x4),int(y4)) - mymap = activator.Map - Corpse.Name = str("%s's body" %(activator.Name)) - Corpse.Race = str("%s's Curse" %(activator.Name)) - Corpse.Weight = 1 - Curse.Name = str("%s's Curse" %(activator.Name)) - Corpse.Teleport(mymap, activator.X, activator.Y) - Curse.InsertInto(activator) - Curse1=activator.CheckArchInventory("amulet") - #whoami.Say(str(Curse1)) - #whoami.Say(str(Curse)) - Curse1.Applied = 1 - - activator.Teleport(mymap,int(23),int(0)) - - - -# whoami.Say('y') -# whoami.Say(Approved) - #activator.Teleport(mymap,int(x1),int(Y1)) -# else: -# whoami.Say(Approved) - -#else: -# whoami.Say('Say enter to request entry') +if activator is None: + pass +elif activator.Type != Crossfire.Type.PLAYER: + pass +elif CheckClearance(Params, activator): + pass +else: + activator.Teleport(Crossfire.ReadyMap('/scorn/misc/jail'), 15, 1) # 15 minute sentence diff --git a/python/guilds/guild_entry.py b/python/guilds/guild_entry.py index 989de46f2..9166a8c3f 100644 --- a/python/guilds/guild_entry.py +++ b/python/guilds/guild_entry.py @@ -28,10 +28,6 @@ import string activator=Crossfire.WhoIsActivator() activatorname=activator.Name mymap = activator.Map -x=32 -y=16 -x1=36 -y1=20 activatorx=activator.X activatory=activator.Y whoami=Crossfire.WhoAmI() @@ -58,8 +54,7 @@ if text: message = 'Entry granted for %s' %activatorname mymap.TriggerConnected(int(Params[2]),1,activator) else: - message = 'You try my patience %s. BEGONE!' %activatorname - activator.Teleport(mymap,int(x),int(y)) #teleport them + message = "You are not allowed through this door. Access denied." elif text[0].upper() == 'BUY' and whoami.Name=="Guardian": if guildrecord['Status'] == 'inactive':