Difference for python/IPO/say.py from version 1.10 to 1.11


version 1.10 version 1.11
Line 26
 
Line 26
 # mailscroll <friend> - drops mailscroll to <friend> on the floor  # mailscroll <friend> - drops mailscroll to <friend> on the floor
 # mailwarning <foo>   - drops mailwarning to <foo> on the floor  # mailwarning <foo>   - drops mailwarning to <foo> on the floor
   
 # Constant price values  # Constant price values (all prices in platinum coins)
 priceWritingPen=100  priceWritingPen=100
 priceScrollOfLiteracy=5000  priceScrollOfLiteracy=5000
 priceMailScroll=5  priceMailScroll=5
Line 57
 
Line 57
 text = string.split(Crossfire.WhatIsMessage())  text = string.split(Crossfire.WhatIsMessage())
   
 if text[0] == 'help' or text[0] == 'yes':  if text[0] == 'help' or text[0] == 'yes':
  message = 'How can I help you ? Here is a quick list of commands:\n\n- pen   (%s platinum)\n- literacy    (%s platinum)\n- mailscroll <friend>   (%s platinum)\n- bag <friend>   (%s platinum)\n- package <friend>   (%s platinum)\n- carton <friend>   (%s platinum)\n- send <friend>\n- receive'%(priceWritingPen,priceScrollOfLiteracy,priceMailScroll,priceBag,pricePackage,priceCarton)   # split the help message in two parts to prevent the server from truncating it.
    message = 'How can I help you?\nHere is a quick list of commands I understand:\n\n- pen   (%s platinum)\n- literacy    (%s platinum)\n- mailscroll <friend>   (%s platinum)\n- bag <friend>   (%s platinum)\n- package <friend>   (%s platinum)'%(priceWritingPen, priceScrollOfLiteracy, priceMailScroll, priceBag, pricePackage)
    whoami.Say(message)
   
    message = '- carton <friend>   (%s platinum)\n- send <friend>\n- receive'%(priceCarton)
    if activator.DungeonMaster:
    message += '\n- mailwarning <player>'
  whoami.Say(message)   whoami.Say(message)
                  
   
 elif text[0] == 'pen':  elif text[0] == 'pen':
  if (activator.PayAmount(priceWritingPen*priceFactor)):   if activator.PayAmount(priceWritingPen*priceFactor):
  whoami.Say('Here is your IPO Writing Pen')   whoami.Say('Here is your IPO Writing Pen')
  id = activator.Map.CreateObject('writing pen', x, y)   id = activator.Map.CreateObject('writing pen', x, y)
  id.Name='IPO Writing Pen'   id.Name='IPO Writing Pen'
Line 70
 
Line 76
  else:   else:
  whoami.Say('You need %s platinum for an IPO Writing Pen'%priceWritingPen)   whoami.Say('You need %s platinum for an IPO Writing Pen'%priceWritingPen)
   
   
 elif text[0] == 'literacy':  elif text[0] == 'literacy':
  if (activator.PayAmount(priceScrollOfLiteracy*priceFactor)):   if activator.PayAmount(priceScrollOfLiteracy*priceFactor):
         whoami.Say('Here is your IPO Scroll of Literacy')          whoami.Say('Here is your IPO Scroll of Literacy')
         id = activator.Map.CreateObject('scroll of literacy', x, y)          id = activator.Map.CreateObject('scroll of literacy', x, y)
  id.SetName='IPO Scroll of Literacy'   id.Name = 'IPO Scroll of Literacy'
  id.SetValue=0   id.NamePl = 'IPO Scrolls of Literacy'
    id.Value = 0
  else:   else:
  whoami.Say('You need %s platinum for an IPO Scroll of Literacy'%priceScrollOfLiteracy)   whoami.Say('You need %s platinum for an IPO Scroll of Literacy'%priceScrollOfLiteracy)
   
Line 83
 
Line 91
 elif text[0] == 'mailscroll':  elif text[0] == 'mailscroll':
  if len(text)==2:   if len(text)==2:
  if log.info(text[1]):   if log.info(text[1]):
  if (activator.PayAmount(priceMailScroll*priceFactor)):   if activator.PayAmount(priceMailScroll*priceFactor):
  whoami.Say('Here is your mailscroll')   whoami.Say('Here is your mailscroll')
  id = activator.Map.CreateObject('scroll', x, y)   id = activator.Map.CreateObject('scroll', x, y)
  id.Name='mailscroll T: '+text[1]+' F: '+ activatorname   id.Name='mailscroll T: '+text[1]+' F: '+ activatorname
    id.NamePl = 'mailscrolls T: '+text[1]+' F: '+activatorname
  id.Value=0   id.Value=0
  else:   else:
  whoami.Say('You need %s platinum for a mailscroll'%priceMailScroll)   whoami.Say('You need %s platinum for a mailscroll'%priceMailScroll)
  else:   else:
  whoami.Say('I don\'t know any %s'%text[1])   whoami.Say('I don\'t know %s'%text[1])
   
  else:   else:
  whoami.Say('Usage "mailscroll <friend>"')   whoami.Say('Usage "mailscroll <friend>"')
   
   
 elif text[0] == 'mailwarning':  elif text[0] == 'mailwarning':
  if (activator.IsDungeonMaster):   if activator.DungeonMaster:
  if len(text)==2:   if len(text)==2:
  if log.info(text[1]):   if log.info(text[1]):
  whoami.Say('Here is your mailwarning')   whoami.Say('Here is your mailwarning')
  id = activator.Map.CreateObject('diploma', x, y)   id = activator.Map.CreateObject('diploma', x, y)
  id.Name='mailwarning T: '+text[1]+' F: '+ activatorname   id.Name='mailwarning T: '+text[1]+' F: '+ activatorname
    id.NamePl = 'mailwarnings T: '+text[1]+' F: '+activatorname
  id.Value=0   id.Value=0
  else:   else:
  whoami.Say('I don\'t know any %s'%text[1])   whoami.Say('I don\'t know any %s'%text[1])
   
  else:   else:
  whoami.Say('Usage "mailwarning <foo>"')   whoami.Say('Usage "mailwarning <player>"')
  else:   else:
  whoami.Say('You need to be DM to be able to use this command')   whoami.Say('You need to be DM to be able to use this command')
   
   
 elif text[0] == 'bag' or text[0] == 'package' or text[0] == 'carton':  elif text[0] == 'bag' or text[0] == 'package' or text[0] == 'carton':
  if (len(text) == 2):   if len(text) == 2:
  if log.info(text[1]):   if log.info(text[1]):
  if text[0] == 'bag':   if text[0] == 'bag':
  price = priceBag   price = priceBag
Line 129
 
Line 140
  max = 100000   max = 100000
  item = 'r_sack'   item = 'r_sack'
   
  if ( activator.PayAmount(price*priceFactor) ):   if activator.PayAmount(price*priceFactor):
  box = activator.Map.CreateObject(item, x, y)   box = activator.CreateObject(item)
  box.Name=sackName + ' T: ' + text[1] + ' F: ' + activatorname   box.Name=sackName + ' T: ' + text[1] + ' F: ' + activatorname
  box.WeightLimit=max   box.WeightLimit=max
  box.Strength=0   box.Str = 0
  whoami.Say(whoami, 'Here is your %s'%text[0])   whoami.Say('Here is your %s'%text[0])
  activator.InsertObject(box)  
  else:   else:
  whoami.Say('You need %s platinum to buy a %s'%( price, text[0] ) )   whoami.Say('You need %s platinum to buy a %s'%( price, text[0] ) )
   
Line 145
 
Line 155
  else:   else:
  whoami.Say('Send a %s to who?'%text[0] )   whoami.Say('Send a %s to who?'%text[0] )
   
   
 elif text[0] == 'send':  elif text[0] == 'send':
  if len(text) == 2:   if len(text) == 2:
    count = 0
  inv = activator.CheckInventory(sackName)   inv = activator.CheckInventory(sackName)
  map = 0  
  if inv != 0:  
  while inv:   while inv:
  next = inv.Below   next = inv.Below
  text2=string.split(inv.Name)   text2=string.split(inv.Name)
  if text2[0]==sackName and text2[1]=='T:' and text2[3]=='F:' and text2[2] == text[1]:   if len(text2) == 5 and text2[0] == sackName and text2[1] == 'T:' and text2[3] == 'F:' and text2[2] == text[1]:
  map = Crossfire.ReadyMap(storage_map)   map = Crossfire.ReadyMap(storage_map)
  if map == 0:   if map:
  whoami.Say('I\'m sorry but the post can\'t send your package now.')   # rename container to prevent sending it multiple times
  else:   inv.Name = sackName+' F: '+text2[4]+' T: '+text2[2]
   
  inv.Teleport(map, storage_x, storage_y)   inv.Teleport(map, storage_x, storage_y)
  whoami.Say('Package sent')   count = count+1
  inv = next  
  else:   else:
    whoami.Say('I\'m sorry but the post can\'t send your package now.')
    inv = next
    if count <= 0:
  whoami.Say('No package to send.')   whoami.Say('No package to send.')
    elif count == 1:
    whoami.Say('Package sent.')
    else:
    whoami.Say('%d packages sent.'%count)
  else:   else:
  whoami.Say('Send packages to who?')   whoami.Say('Send packages to who?')
   
   
 elif text[0] == 'receive':  elif text[0] == 'receive':
  map = Crossfire.ReadyMap(storage_map)   map = Crossfire.ReadyMap(storage_map)
  if ( map != 0 ):   if map:
  item = map.ObjectAt(storage_x, storage_y)  
  count = 0   count = 0
    item = map.ObjectAt(storage_x, storage_y)
  while item:   while item:
  previous = item.Above   previous = item.Above
  text2 = string.split(item.Name)   text2 = string.split(item.Name)
  if ( len(text2) == 5 ) and ( text2[0] == sackName ) and ( text2[2] == activatorname ):   if len(text2) == 5 and text2[0] == sackName and text2[4] == activatorname:
  activator.InsertObjectInside(item)   item.InsertInto(activator)
  count = count + 1   count = count + 1
  item = previous   item = previous
  if ( count == 0 ):   if count <= 0:
  whoami.Say('No package for you, sorry.')   whoami.Say('No package for you, sorry.')
  else:   else:
  whoami.Say('Here you go.')   whoami.Say('Here you go.')
  else:   else:
  whoami.Say('Sorry, our package delivery service is currently in strike. Please come back later.')   whoami.Say('Sorry, our package delivery service is currently in strike. Please come back later.')
   
   
 else:  else:
  whoami.Say('Do you need help?')   whoami.Say('Do you need help?')
 Crossfire.SetReturnValue(1)  Crossfire.SetReturnValue(1)


Legend:
line(s) removed in v.1.10 
line(s) changed
 line(s) added in v.1.11

File made using version 1.96 of cvs2html by leaf at 2006-02-15 17:28