// ---------------------------------------------------------------------- protected void baseInternalLoad(Element xml) { name = xml.get("Name", name); size = xml.getInt("Size", size); if (size < 1) { size = 1; } tile = new GameTile[size][size]; quality = xml.getInt("Quality", quality); Element spriteElement = xml.getChildByName("Sprite"); if (spriteElement != null) { sprite = AssetManager.loadSprite(xml.getChildByName("Sprite")); } if (sprite != null) { sprite.size[0] = size; sprite.size[1] = size; } Element raisedSpriteElement = xml.getChildByName("TilingSprite"); if (raisedSpriteElement != null) { tilingSprite = TilingSprite.load(raisedSpriteElement); } if (tilingSprite != null) { // for (Sprite sprite : tilingSprite.sprites) // { // sprite.size = size; // } } Element lightElement = xml.getChildByName("Light"); if (lightElement != null) { light = Roguelike.Lights.Light.load(lightElement); } Element statElement = xml.getChildByName("Statistics"); if (statElement != null) { Statistic.load(statElement, statistics); HP = getMaxHP(); statistics.put(Statistic.WALK, 1); // statistics.put( Statistic.ENTITY, 1 ); } Element inventoryElement = xml.getChildByName("Inventory"); if (inventoryElement != null) { inventory.load(inventoryElement); } Element immuneElement = xml.getChildByName("Immune"); if (immuneElement != null) { immune = immuneElement.getText().toLowerCase().split(","); } canTakeDamage = xml.getBoolean("CanTakeDamage", canTakeDamage); UID = getClass().getSimpleName() + " " + name + ": ID " + hashCode(); }