dmolony-DiskBrowser/src/com/bytezone/diskbrowser/wizardry/Wiz4Monsters.java

58 lines
1.8 KiB
Java
Raw Normal View History

2016-09-18 10:06:26 +00:00
package com.bytezone.diskbrowser.wizardry;
import java.util.ArrayList;
import java.util.List;
import com.bytezone.diskbrowser.applefile.AbstractFile;
import com.bytezone.diskbrowser.utilities.HexFormatter;
2020-02-11 07:29:55 +00:00
// -----------------------------------------------------------------------------------//
2016-09-18 10:06:26 +00:00
public class Wiz4Monsters extends AbstractFile
2020-02-11 07:29:55 +00:00
// -----------------------------------------------------------------------------------//
2016-09-18 10:06:26 +00:00
{
2020-02-02 10:17:49 +00:00
final List<Wiz4Image> images = new ArrayList<> ();
final List<Integer> blocks = new ArrayList<> ();
2016-09-18 10:06:26 +00:00
2020-02-11 07:29:55 +00:00
// ---------------------------------------------------------------------------------//
2016-09-18 10:06:26 +00:00
public Wiz4Monsters (String name, byte[] buffer)
2020-02-11 07:29:55 +00:00
// ---------------------------------------------------------------------------------//
2016-09-18 10:06:26 +00:00
{
super (name, buffer);
int count = 0;
for (int block = 0; block < 24; block++)
{
int ptr = block * 512;
for (int pic = 0; pic < 2; pic++)
{
byte[] data = new byte[240];
System.arraycopy (buffer, ptr + pic * 256, data, 0, data.length);
2016-09-19 05:18:10 +00:00
Wiz4Image image = new Wiz4Image ("Image " + count++, data, 5, 6);
2016-09-18 10:06:26 +00:00
images.add (image);
blocks.add (block);
}
}
}
2020-02-11 07:29:55 +00:00
// ---------------------------------------------------------------------------------//
2016-09-18 10:06:26 +00:00
@Override
public String getText ()
2020-02-11 07:29:55 +00:00
// ---------------------------------------------------------------------------------//
2016-09-18 10:06:26 +00:00
{
StringBuilder text = new StringBuilder ();
int count = 1;
for (int block = 0; block < 24; block++)
{
int ptr = block * 512;
for (int pic = 0; pic < 2; pic++)
{
text.append (String.format ("%3d : %s%n", count,
HexFormatter.getHexString (buffer, ptr + pic * 256, 240)));
count++;
}
}
return text.toString ();
}
}