int getR8(int xdim, int ydim, char *image, char *pal, int compress) { FILE *fp; int32 length; char *buf; if (!fileOpen()) { noFile(); return FAIL; } if (pal) if (setPal(pal) < 0) /* Error already signalled by setPal */ return FAIL; length = xdim * ydim; buf = (char *) HDmalloc(length); if ((fp = fopen(image, "r")) == NULL) { fprintf(stderr, "Error opening image file: %s.\n", image); return FAIL; } if (fread(buf, (size_t)xdim, (size_t)ydim, fp) < (size_t)ydim) { fprintf(stderr, "Error reading image file: %s.\n", image); return FAIL; } fclose(fp); if (DFR8addimage(he_file, buf, (int32) xdim, (int32) ydim, (uint16) compress) < 0) { HEprint(stderr, 0); return FAIL; } HDfree(buf); if (updateDesc() < 0) return FAIL; return HE_OK; }
System::System(CGEEngine *vm) : Sprite(vm, NULL), _vm(vm) { _funDel = kHeroFun0; setPal(); tick(); }