#include "sfa.h" int main(int argc,char** argv){ sfa_owned file; sfa_frame frame; sfa_animation animation;sfa_direction direction;uint16_t layer;uint8_t palette[768]={0}; uint8_t map[256]; uint32_t pixels[16]; sfa_surface surface={pixels,4,4,4}; unsigned i; sfa_light light={0,0,1,32}; if(argc!=2||sfa_load_file(argv[1],&file)!=SFA_OK)return 1; if(sfa_get_frame(&file.view,0,&frame)!=SFA_OK)return 2; if(sfa_get_animation(&file.view,0,&animation)!=SFA_OK||strcmp(animation.name,"idle"))return 7; if(sfa_get_direction(&file.view,0,&direction)!=SFA_OK||direction.centidegrees!=0)return 8; if(sfa_get_layer_order(&file.view,0,0,&layer)!=SFA_OK||layer!=0)return 9; for(i=0;i<256;i++)map[i]=(uint8_t)i; palette[3]=255; palette[7]=255; palette[11]=255; for(i=0;i<16;i++)pixels[i]=0xff101010u; if(sfa_blit(&file.view,&frame,palette,0,surface,2,3,SFA_BLEND_OPAQUE)!=SFA_OK)return 3; if(pixels[1]!=0xff0000ffu||pixels[2]!=0xff0000ffu)return 4; map[1]=2; if(sfa_blit(&file.view,&frame,palette,map,surface,2,3,SFA_BLEND_ALPHA50)!=SFA_OK)return 5; if(sfa_blit_lit(&file.view,&frame,palette,0,surface,2,3,SFA_BLEND_OPAQUE,light)!=SFA_OK)return 6; sfa_free_file(&file);return 0; }