Beispiel #1
0
def PackObj(sitem):
    cmeta = ops.loadmeta()
    if sitem.kid == cmeta.kid:
        sitem.metasheetupdater = True
    sitem.updater = True
    localmetas = ops.fetchLocalMetaMetaIDs('Meta',cmeta.metaid)
    for localmeta in localmetas:
        channel.send_message(str(localmeta), ops.jsonify(sitem))
Beispiel #2
0
def MetaEcho(content):
    cmeta = ops.loadmeta()
    pack = Packet()
    localmetas = ops.fetchLocalMetaMetaIDs('Meta',cmeta.metaid)
    sloc = ops.loadcloc()
    formatted = "["+sloc.name+"]<b> " + cmeta.name + "</b>: " + content + " haha"
    for localmeta in localmetas:
        pack.scopename = sloc.name
        pack.type = 'broadcast'
        pack.scope = 'local'
        pack.formatted = formatted
        pack.content = content + " hoho"
        pack.masterid = str(cmeta.masterid)
        pack.name = cmeta.name
        pack.metakind = cmeta.metakind
        pack.metaid = cmeta.metaid
        channel.send_message(str(localmeta), ops.jsonify(pack))
Beispiel #3
0
def PackPacket(packtype,scopename,scope,formatted,content):
    cmeta = ops.loadmeta()
    pack = Packet()
    
    if scope == 'local':
        targetmetas = ops.fetchLocalMetaMetaIDs('Meta',cmeta.metaid)
    elif scope == 'global' or scope == 'system':
        targetmetas = ops.fetchAllMetaMetaIDs()
    
    for targetmeta in targetmetas:
                pack.scopename = scopename
                pack.type = packtype
                pack.scope = scope
                pack.formatted = formatted
                pack.content = content
                pack.masterid = str(cmeta.masterid)
                pack.name = cmeta.name
                pack.metakind = cmeta.metakind
                pack.metaid = cmeta.metaid
                channel.send_message(str(targetmeta), ops.jsonify(pack))
Beispiel #4
0
 def post(self, direction):
     cmeta = ops.loadmeta()
     cmeta.cokind = 'Location' #Not robust
     premove = copy.copy(ops.loadmeta())
     
     
     
     cloc = ops.loadcloc()
     localmetas = ops.fetchLocalMetaMetaIDs('Meta',cmeta.metaid)
     
     pack = Packet()
     pack.scope = 'local'
     pack.type = 'move'
     
     
     for localmeta in localmetas:
         if localmeta == cmeta.metaid:
             pack.content = "You move " + ops.dirFull(direction) + "."
             pack.type = 'usermove'
             channel.send_message(str(localmeta), ops.jsonify(pack))
         else:
             pack.content = cmeta.name + " has moved " + ops.dirFull(direction)
             pack.name = cmeta.name
             pack.destination = ops.dirFull(direction)
             pack.type = 'userleave'
             channel.send_message(str(localmeta), ops.jsonify(pack))
     
     
     
     if direction == 'n':
         cmeta.yloc = str(int(cmeta.yloc)+1)
     elif direction == 's':
         cmeta.yloc = str(int(cmeta.yloc)-1)
     elif direction == 'e':
         cmeta.xloc = str(int(cmeta.xloc)+1)
     elif direction == 'w':
         cmeta.xloc = str(int(cmeta.xloc)-1)
     elif direction == 'u':
         cmeta.zloc = str(int(cmeta.zloc)+1)
     elif direction == 'd':
         cmeta.zloc = str(int(cmeta.zloc)-1)
     elif direction == 'ne':
         cmeta.xloc = str(int(cmeta.xloc)+1)
         cmeta.yloc = str(int(cmeta.yloc)+1)
     elif direction == 'se':
         cmeta.xloc = str(int(cmeta.xloc)+1)
         cmeta.yloc = str(int(cmeta.yloc)-1)
     elif direction == 'sw':
         cmeta.xloc = str(int(cmeta.xloc)-1)
         cmeta.yloc = str(int(cmeta.yloc)-1)
     elif direction == 'nw':
         cmeta.xloc = str(int(cmeta.xloc)-1)
         cmeta.yloc = str(int(cmeta.yloc)+1)
     cmeta.put()
     
     newlocalmetas = ops.fetchLocalMetaMetaIDs('Meta',cmeta.metaid)
     
     for newlocalmeta in newlocalmetas:
         if newlocalmeta == cmeta.metaid:
             pass
         else:
             pack.content = cmeta.name + " has arrived from the " + ops.dirOpp(direction)
             pack.type = 'userenter'
             pack.name = cmeta.name
             pack.destination = ops.dirOpp(direction)
             channel.send_message(str(newlocalmeta), ops.jsonify(pack))
     
     DepthPerception(premove,cmeta)
     #self.response.out.write(cmeta.xloc+cmeta.yloc+cmeta.zloc+cmeta.lattice)
     nLocaMetas = ops.fetchLocalMetas(Meta, cmeta.metaid)
     nloc = Packet()
     nloc.locdata = cloc
     nloc.metashere = nLocaMetas
     self.response.out.write(ops.jsonify(nloc))