jsuarez/extra/embyr_deprecated/embyr/modules.py [24:95]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
   def __init__(self, realm, textures, 
         canvasSize, tileSz, mipLevels, iso, **kwargs):
      super().__init__(canvasSize, **kwargs)
      self.realm, self.textures, self.iso = realm, textures, iso
      self.tileSz, self.mipLevels  = tileSz, mipLevels

   def render(self, trans):
      self.reset()
      envCrop, txSz = embyr.mapCrop(self, 
            self.realm.world.env.inds(), self.tileSz, trans)
      txSz = embyr.mipKey(txSz, self.mipLevels)
      embyr.renderMap(self, envCrop, txSz, self.textures.material[txSz], self.iso)
      self.flip()  
      return self.surf

   def refresh(self, trans, iso):
      self.iso = iso
      return self.render(trans)

class SpriteGroup:
   def __init__(self, tex, fonts):
      self.tex, self.fonts = tex, fonts
      self.sprites = []

   def add(self, ent):
      sprite = Sprite(ent)
      self.sprites.append(sprite)

   def remove(self, ent):
      self.sprites.remove(ent)

   def update(self):
      for e in self.sprites:
         e.update()

   def render(self, screen, offsets, txSz, iso):
      for e in self.sprites:
         #crop
         e.render(screen, offsets, self.tex, self.fonts, txSz, iso)

class Sprite:
   def __init__(self, ent):
      self.ent = ent
      self.frame = 0
 
      #self.pos = ent.lastPos
      #self.newPos = ent.pos

      self.lastPos = ent.lastPos
      if not ent.alive:
         self.lastPos = ent.pos
      r, c = self.lastPos
      self.posAnim = self.lastPos
      rNew, cNew = self.ent.pos

      self.rOff, self.cOff = np.sign(rNew-r), np.sign(cNew-c)
      #self.targ = ent.attack.args
      nNames = len(names)
      self.entName = names[int(ent.entID)%nNames]
      self.nameColor = Neon.color12()[int(ent.entID) % 12]
       
   def update(self):
      self.frame += 1.0/NANIM
      
      r, c = self.lastPos
      rAnim = r + self.frame * self.rOff
      cAnim = c + self.frame * self.cOff
      self.posAnim = (rAnim, cAnim)

   def render(self, screen, offsets, tex, fonts, txSz, iso):
      self.targ = self.ent.targ
      render.renderSprite(screen, self, offsets, tex, fonts, txSz, iso) 
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



jsuarez/extra/embyr_deprecated/embyr2d/modules.py [21:92]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
   def __init__(self, realm, textures, 
         canvasSize, tileSz, mipLevels, iso, **kwargs):
      super().__init__(canvasSize, **kwargs)
      self.realm, self.textures, self.iso = realm, textures, iso
      self.tileSz, self.mipLevels  = tileSz, mipLevels

   def render(self, trans):
      self.reset()
      envCrop, txSz = embyr.mapCrop(self, 
            self.realm.world.env.inds(), self.tileSz, trans)
      txSz = embyr.mipKey(txSz, self.mipLevels)
      embyr.renderMap(self, envCrop, txSz, self.textures.material[txSz], self.iso)
      self.flip()  
      return self.surf

   def refresh(self, trans, iso):
      self.iso = iso
      return self.render(trans)

class SpriteGroup:
   def __init__(self, tex, fonts):
      self.tex, self.fonts = tex, fonts
      self.sprites = []

   def add(self, ent):
      sprite = Sprite(ent)
      self.sprites.append(sprite)

   def remove(self, ent):
      self.sprites.remove(ent)

   def update(self):
      for e in self.sprites:
         e.update()

   def render(self, screen, offsets, txSz, iso):
      for e in self.sprites:
         #crop
         e.render(screen, offsets, self.tex, self.fonts, txSz, iso)

class Sprite:
   def __init__(self, ent):
      self.ent = ent
      self.frame = 0
 
      #self.pos = ent.lastPos
      #self.newPos = ent.pos

      self.lastPos = ent.lastPos
      if not ent.alive:
         self.lastPos = ent.pos
      r, c = self.lastPos
      self.posAnim = self.lastPos
      rNew, cNew = self.ent.pos

      self.rOff, self.cOff = np.sign(rNew-r), np.sign(cNew-c)
      #self.targ = ent.attack.args
      nNames = len(names)
      self.entName = names[int(ent.entID)%nNames]
      self.nameColor = Neon.color12()[int(ent.entID) % 12]
       
   def update(self):
      self.frame += 1.0/NANIM
      
      r, c = self.lastPos
      rAnim = r + self.frame * self.rOff
      cAnim = c + self.frame * self.cOff
      self.posAnim = (rAnim, cAnim)

   def render(self, screen, offsets, tex, fonts, txSz, iso):
      self.targ = self.ent.targ
      render.renderSprite(screen, self, offsets, tex, fonts, txSz, iso) 
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



