#define SPAN_VERSION 1.0 class SpanHeader { F64 version; I32 num_masses, num_springs; }; class MyMass:CMass { F64 radius, cost, load_t; CColorROPU32 color; } *cursor_mass; class MySpring:CSpring { F64 compression_strength, tensile_strength, cost; F64 base_compression_strength, base_tensile_strength, base_const, base_cost; CColorROPU32 color; I32 thick; }; CMathODE *ode = NULL; CCtrlBttnState run_bttn, mode_bttn; CColorROPU32 run_colors[2] = {RED, GREEN}; #define MD_MASS 0 #define MD_CONCRETE 1 #define MD_STEEL 2 #define MD_WIRE 3 #define MD_MOVE 4 #define MD_DELETE 5 #define MD_MODES_NUM 6 CColorROPU32 mode_colors[MD_MODES_NUM] = {BROWN, LTGRAY, DKGRAY, RED, PURPLE, RED}; DefineListLoad("ST_SPAN_MODES", "Mass\0Concrete\0Steel\0Wire\0Move\0Delete\0"); class SpanAnimateStruct { U8 *saved_ode; F64 elapsed_t, start_wall_t; } a; extern MyMass *PlaceMass(I64 x, I64 y); extern F64 SpanTime();