414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
|
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
|
-
+
|
#define PushFlowControl() do{ flowblock[flowptr]=ofs+2+(op[1]<<1)+(op[2]<<9); if(++flowptr==64) fatal("Too many nested flow controls\n"); len+=2; ind+=2; }while(0)
static void class_codes(FILE*fp,const unsigned char*op,int ofs,const unsigned char*lbl,int nlbl,const unsigned char*subs,int nsubs,unsigned char*vars) {
static const char*const stdvars[256]={
[0]="Class","Temperature","Shape",
[4]="Xloc","Yloc","Dir","Image","Inertia","Misc1","Misc2","Misc3","Misc4","Misc5","Misc6","Misc7",
[16]="Arrived","Departed","Arrivals","Departures",
[32]="Busy","Invisible","UserSignal","UserState","KeyCleared","IsPlayer","Destroyed","Stealthy","VisualOnly",
[32]="Busy","Invisible","UserSignal","UserState","KeyCleared","Player","Destroyed","Stealthy","VisualOnly",
[48]="Msg","From","Arg1","Arg2",
[64]="Density","Volume","Strength","Weight","Distance","Height","Climb",
[72]="Hard","Hard","Hard","Hard","Sharp","Sharp","Sharp","Sharp","ShapeDir","ShapeDir","ShapeDir","ShapeDir",
[84]="Shovable",
};
static const char*const direction[16]={"E","NE","N","NW","W","SW","S","SE","F","LF","L","LB","B","RB","R","RF"};
int flowblock[64];
|