public void ctick(int dt) {
   int dt2 = dt + initdelay;
   initdelay = 0;
   for (GAttrib a : attr.values()) {
     if (a instanceof Drawable) a.ctick(dt2);
     else a.ctick(dt);
   }
   for (Iterator<Overlay> i = ols.iterator(); i.hasNext(); ) {
     Overlay ol = i.next();
     if (ol.spr == null) {
       if (((getattr(Drawable.class) == null) || (getneg() != null)) && (ol.res.get() != null))
         ol.spr = Sprite.create(this, ol.res.get(), ol.sdt);
     } else {
       boolean done = ol.spr.tick(dt);
       if ((!ol.delign || (ol.spr instanceof Overlay.CDel)) && done) i.remove();
     }
   }
 }
 public void tick() {
   for (GAttrib a : attr.values()) a.tick();
 }
 public void setattr(GAttrib a) {
   Class<? extends GAttrib> ac = attrclass(a.getClass());
   attr.put(ac, a);
 }