maps/python/misc/swallow_whole.py

41 lines
1.0 KiB
Python

import Crossfire
import random
#This script allows the purple worm to eat players/monsters
eatmap = '/planes/purpleworm'
eat_x = 6
eat_y = 6
worm = Crossfire.WhoAmI()
me = Crossfire.WhoIsOther()
r = random.random()
if (r <= 0.26):
if (me.__class__ is Crossfire.Player):
isplayer = 1
elif (me.Alive == True):
isplayer = 0
else:
isplayer = 2
if isplayer == 1:
me.Map.Print("\nYou are swallowed whole by the %s!" % (worm.Name))
map = Crossfire.ReadyMap(eatmap)
if map:
me.Teleport(map, eat_x, eat_y)
else:
Crossfire.Log(Crossfire.LogError, "There is no eat map")
elif isplayer == 0:
me.Map.Print("\nThe %s is swallowed whole by the %s!" % (me.Name, worm.Name))
while (me.Inventory is not None):
me.Inventory.InsertInto(worm)
mexists = Crossfire.WhoIsOther()
if mexists:
me.Remove()
else:
worm.Map.Print('doesnt exist')
else:
me.Map.Print("\nThe %s misses the %s" % (worm.Name, me.Name))