Swapping over variables from a sub routine? You mean parameter passing? Just DIMension some SHARED variables. If ever function is just flingin' around the same data, why not? Making a TYPE for the wrestlers (the t* and o* parameters) might also help.
Less strings would always help. You can always encode things numerically, like making referees just an enumerated CONSTant integer instead of a string, and whenever you need to PRINT their name, just reference an string table array. Or load it out from else where.
Code: Select all
CONST REF_HEBNER = 0
CONST REF_ROBINSON = 1
CONST REF_FOLEY = 2
CONST REF_MAX = 2 ' update value with every new referee
DIM SHARED REF_NAMES(REF_MAX) AS STRING
REF_NAMES(REF_HEBNER) = "Earl Hebner"
' ... and so forth
At least those are the kind of shenanigans I often see and do in C code. Integral $$$ even process faster than string ones. Strings are bad, hm'kay?
As for the restart, I would guess that is just a coding issue. It seems some sort of loop should be able to be done, and once the match is done, whatever routine can be broken from (EXIT SUB or LOOP, depending on the situation) and the sequence could just start again. Wouldn't be able to just call the start menu SUB again from there, obviously, and that is quite a bit of stack space you would be eating up.
I tried using the auto-booker, but it killed my QB. It just started flashing a bunch of screens and didn't stop. You should probably find a way to make it compute things about wrestlers without PRINTing out their data screens, like passing in some sort of verbose boolean. Not PRINTing stuff would be a big cycle saver.