© opyright ryecatcher Intellectual Property 2021
javascript source code for Burby Score Keeping Program Hitting Functions
//SINGLE FUNCTION ================================================================================
function single_func() {
reset_array = [6, 7, 8];
console.log("reset_array: " + reset_array);
let x = reset_array.length
for (let i = 0; i < x; i++) { reset_array.pop() }
console.log("reset_array popped: " + reset_array);
reset_array.push(9);
console.log("reset_array popped[0]: " + reset_array[0]);
let temp_bases = [];
//external_script();
batter[sequence[0]].single = batter[sequence[0]].single + 1;
console.log("batter: " + batter[sequence[0]].name + " singles: " + batter[sequence[0]].single);
console.log(Object.values(batter[sequence[0]]));
let display = [];
//display.push(batter[sequence[0]].name);
//display.push("single");
//display.push(batter[sequence[0]].name + " to 1st ");
display = [batter[sequence[0]].name, "single", batter[sequence[0]].name + " to 1st "];
let base_sit = [(batter[sequence[0]].name + " on 1st ")];
if (base[0] !== "0") {
display.push(base[0].name + " to 2nd ");
base_sit.push(", " + base[0].name + " on 2nd ");
}
if (base[1] !== "0") {
display.push(base[1].name + " to 3rd ");
base_sit.push(", " + base[1].name + " on 3rd ");
}
if (base[2] !== "0") {
display.push(base[2].name + " SCORES ");
TEAM_SCORE[0] = TEAM_SCORE[0] + 1;
}
undo_TEAM_SCORE.push(TEAM_SCORE[0]);
while (display.length < 6) { display.push("x") };
create_rows(...display);
bic.push(display);
if (sit_base[0] !== "empty") { sit_base[0] = "" };
if (sit_base[0] === "empty") { sit_base[0] = "" };
for (let itemm of base_sit) { sit_base[0] = sit_base[0] + itemm };
console.log("display: " + display);
console.log("base_sit: " + base_sit);
console.log("sit_base: " + sit_base[0]);
console.log(" ");
undo_sit_base.push(sit_base[0]);
if (base[2] !== "0") {
batter[sequence[0]].rbi = batter[sequence[0]].rbi + 1;
base[2].run = base[2].run + 1;
base.unshift(batter[sequence[0]]);
base.pop();
}
else if (base[2] === "0") {
base.unshift(batter[sequence[0]]);
base.pop();
}
for (let i = 0; i < 3; i++) {
if (base[i] === "0") { temp_bases[i] = "0" }
else { temp_bases[i] = String(base[i].name); }
}
undo_bases.push(temp_bases);
console.log("temp_bases: " + temp_bases);
console.log("undo_bases: " + undo_bases);
sequence[0] = (sequence[0]) + 1; // to increment batter counter by one to advance to next batter
if (sequence[0] === batter.length) { sequence[0] = 0 }; // at end resets batter count to return to top of order
undo_outs.push(undo_outs[undo_outs.length - 1]);
console.log("undo_outs: " + undo_outs);
update_interface();
undo_events_func(undo_outs);
update_bat_stats();
//sit_base[0] = "";
return
}
//DOUBLE FUNCTION =========================================================================================
function double_func() {
let temp_bases = [];
batter[sequence[0]].double = batter[sequence[0]].double + 1;
console.log("batter: " + batter[sequence[0]].name + " doubles: " + batter[sequence[0]].double);
display = [batter[sequence[0]].name, "double", (batter[sequence[0]].name + " to 2nd ")];
let base_sit = [(batter[sequence[0]].name + " on 2nd ")];
if (base[0] !== "0") {
display.push(base[0].name + " to 3rd ");
base_sit.push(", " + base[0].name + " on 3rd ");
}
if (base[1] !== "0") {
display.push(base[1].name + " SCORES ");
TEAM_SCORE[0] = TEAM_SCORE[0] + 1;
}
if (base[2] !== "0") {
display.push(base[2].name + " SCORES ");
TEAM_SCORE[0] = TEAM_SCORE[0] + 1;
}
undo_TEAM_SCORE.push(TEAM_SCORE[0]);
while (display.length < 6) { display.push("x") };
create_rows(...display);
bic.push(display);
if (sit_base[0] !== "empty") { sit_base[0] = "" };
if (sit_base[0] === "empty") { sit_base[0] = "" };
for (let itemm of base_sit) { sit_base[0] = sit_base[0] + itemm };
console.log("display: " + display);
console.log("base_sit: " + base_sit);
console.log("sit_base: " + sit_base[0]);
console.log(" ");
undo_sit_base.push(sit_base[0]);
if (base[2] !== "0") {
batter[sequence[0]].rbi = batter[sequence[0]].rbi + 1;
base[2].run = base[2].run + 1;
base[2] = "0";
}
if (base[1] !== "0") {
batter[sequence[0]].rbi = batter[sequence[0]].rbi + 1;
base[1].run = base[1].run + 1;
base[1] = batter[sequence[0]];
}
if (base[0] !== "0") {
base[2] = base[0];
base[0] = "0";
}
if (base[1] === "0") {
base[1] = batter[sequence[0]];
}
for (let i = 0; i < 3; i++) {
if (base[i] === "0") { temp_bases[i] = "0" }
else { temp_bases[i] = String(base[i].name); }
}
undo_bases.push(temp_bases);
console.log("temp_bases: " + temp_bases);
console.log("undo_bases: " + undo_bases);
sequence[0] = (sequence[0]) + 1; // to increment batter counter by one to advance to next batter
if (sequence[0] === batter.length) { sequence[0] = 0 }; // at end resets batter count to return to top of order
undo_outs.push(undo_outs[undo_outs.length - 1]);
console.log("undo_outs: " + undo_outs);
update_interface();
undo_events_func();
update_bat_stats();
//sit_base[0] = "";
return
}
//TRIPLE FUNCTION =====================================================================================
function triple_func() {
let temp_bases = [];
batter[sequence[0]].triple = batter[sequence[0]].triple + 1;
console.log("batter: " + batter[sequence[0]].name + " triples: " + batter[sequence[0]].triple);
display = [batter[sequence[0]].name, "triple", (batter[sequence[0]].name + " to 3rd ")];
let base_sit = [(batter[sequence[0]].name + " on 3rd ")];
if (base[0] !== "0") {
display.push(base[0].name + " SCORES ");
TEAM_SCORE[0] = TEAM_SCORE[0] + 1;
}
if (base[1] !== "0") {
display.push(base[1].name + " SCORES ");
TEAM_SCORE[0] = TEAM_SCORE[0] + 1;
}
if (base[2] !== "0") {
display.push(base[2].name + " SCORES ");
TEAM_SCORE[0] = TEAM_SCORE[0] + 1;
}
undo_TEAM_SCORE.push(TEAM_SCORE[0]);
while (display.length < 6) { display.push("x") };
create_rows(...display);
bic.push(display);
if (sit_base[0] !== "empty") { sit_base[0] = "" };
if (sit_base[0] === "empty") { sit_base[0] = "" };
for (let itemm of base_sit) { sit_base[0] = sit_base[0] + itemm };
console.log("display: " + display);
console.log("base_sit: " + base_sit);
console.log("sit_base: " + sit_base[0]);
console.log(" ");
undo_sit_base.push(sit_base[0]);
if (base[2] !== "0") {
batter[sequence[0]].rbi = batter[sequence[0]].rbi + 1;
base[2].run = base[2].run + 1;
base[2] = batter[sequence[0]];
}
if (base[1] !== "0") {
batter[sequence[0]].rbi = batter[sequence[0]].rbi + 1;
base[1].run = base[1].run + 1;
base[1] = "0";
}
if (base[0] !== "0") {
batter[sequence[0]].rbi = batter[sequence[0]].rbi + 1;
base[0].run = base[0].run + 1;
base[0] = "0";
}
if (base[2] === "0") {
base[2] = batter[sequence[0]];
}
for (let i = 0; i < 3; i++) {
if (base[i] === "0") { temp_bases[i] = "0" }
else { temp_bases[i] = String(base[i].name); }
}
undo_bases.push(temp_bases);
console.log("temp_bases: " + temp_bases);
console.log("undo_bases: " + undo_bases);
sequence[0] = (sequence[0]) + 1; // to increment batter counter by one to advance to next batter
if (sequence[0] === batter.length) { sequence[0] = 0 }; // at end resets batter count to return to top of order
undo_outs.push(undo_outs[undo_outs.length - 1]);
console.log("undo_outs: " + undo_outs);
update_interface();
undo_events_func();
update_bat_stats();
// sit_base[0] = "";
return
}
//HOMER FUNCTION ===================================================================================
function homer_func() {
let temp_bases = [];
batter[sequence[0]].homer = batter[sequence[0]].homer + 1;
batter[sequence[0]].rbi = batter[sequence[0]].rbi + 1;
batter[sequence[0]].run = batter[sequence[0]].run + 1;
console.log("batter: " + batter[sequence[0]].name + " homers: " + batter[sequence[0]].homer);
display = [batter[sequence[0]].name, "homer", (batter[sequence[0]].name + " SCORES ")];
TEAM_SCORE[0] = TEAM_SCORE[0] + 1;
let base_sit = [""];
if (base[0] !== "0") {
display.push(base[0].name + " SCORES ");
TEAM_SCORE[0] = TEAM_SCORE[0] + 1;
}
if (base[1] !== "0") {
display.push(base[1].name + " SCORES ");
TEAM_SCORE[0] = TEAM_SCORE[0] + 1;
}
if (base[2] !== "0") {
display.push(base[2].name + " SCORES ");
TEAM_SCORE[0] = TEAM_SCORE[0] + 1;
}
undo_TEAM_SCORE.push(TEAM_SCORE[0]);
while (display.length < 6) { display.push("x") };
create_rows(...display);
bic.push(display);
if (sit_base[0] !== "empty") { sit_base[0] = "" };
if (sit_base[0] === "empty") { sit_base[0] = "" };
for (let itemm of base_sit) { sit_base[0] = sit_base[0] + itemm };
console.log("display: " + display);
console.log("base_sit: " + base_sit);
console.log("sit_base: " + sit_base[0]);
console.log(" ");
//undo_sit_base.push(sit_base[0]);
if (base[2] !== "0") {
batter[sequence[0]].rbi = batter[sequence[0]].rbi + 1;
base[2].run = base[2].run + 1;
base[2] = "0";
}
if (base[1] !== "0") {
batter[sequence[0]].rbi = batter[sequence[0]].rbi + 1;
base[1].run = base[1].run + 1;
base[1] = "0";
}
if (base[0] !== "0") {
batter[sequence[0]].rbi = batter[sequence[0]].rbi + 1;
base[0].run = base[0].run + 1;
base[0] = "0";
}
for (let i = 0; i < 3; i++) {
if (base[i] === "0") { temp_bases[i] = "0" }
else { temp_bases[i] = String(base[i].name); }
}
undo_bases.push(temp_bases);
console.log("temp_bases: " + temp_bases);
console.log("undo_bases: " + undo_bases);
sequence[0] = (sequence[0]) + 1; // to increment batter counter by one to advance to next batter
if (sequence[0] === batter.length) { sequence[0] = 0 }; // at end resets batter count to return to top of order
//update_interface();
sit_base[0] = "empty";
undo_sit_base.push(sit_base[0]);
undo_outs.push(undo_outs[undo_outs.length - 1]);
console.log("undo_outs: " + undo_outs);
update_interface();
undo_events_func();
update_bat_stats();
return
}
//WALK FUNCTION ===================================================================================
function walk_func() {
let temp_bases = [];
batter[sequence[0]].walk = batter[sequence[0]].walk + 1;
console.log("batter: " + batter[sequence[0]].name + " walks: " + batter[sequence[0]].walk);
display = [batter[sequence[0]].name, "walk", (batter[sequence[0]].name + " to 1st ")];
let base_sit = [(batter[sequence[0]].name + " on 1st ")];
if (base[0] !== "0") {
display.push(base[0].name + " to 2nd ");
base_sit.push(", " + base[0].name + " on 2nd ");
}
if (base[1] !== "0" && base[0] === "0") {
display.push(base[1].name + " to 2nd ");
base_sit.push(", " + base[1].name + " on 2nd ");
}
if (base[1] !== "0" && base[0] !== "0") {
display.push(base[1].name + " to 3rd ");
base_sit.push(", " + base[1].name + " on 3rd ");
}
if (base[2] !== "0" && (base[1] === "0" || base[0] === "0")) {
display.push(base[2].name + " to 3rd ");
base_sit.push(", " + base[2].name + " on 3rd ");
}
if (base[2] !== "0" && base[1] !== "0" && base[0] !== "0") {
display.push(base[2].name + " SCORES ");
TEAM_SCORE[0] = TEAM_SCORE[0] + 1;
}
undo_TEAM_SCORE.push(TEAM_SCORE[0]);
while (display.length < 6) { display.push("x") };
create_rows(...display);
bic.push(display);
if (sit_base[0] !== "empty") { sit_base[0] = "" };
if (sit_base[0] === "empty") { sit_base[0] = "" };
for (let itemm of base_sit) { sit_base[0] = sit_base[0] + itemm };
console.log("display: " + display);
console.log("base_sit: " + base_sit);
console.log("sit_base: " + sit_base[0]);
console.log(" ");
undo_sit_base.push(sit_base[0]);
if (base[2] !== "0" && base[1] !== "0" && base[0] !== "0") {
batter[sequence[0]].rbi = batter[sequence[0]].rbi + 1;
base[2].run = base[2].run + 1;
base[2] = base[1];
base[1] = base[0];
base[0] = batter[sequence[0]];
}
if (base[1] !== "0" && base[0] !== "0" && base[2] === "0") {
base[2] = base[1];
base[1] = base[0];
base[0] = batter[sequence[0]];
}
if (base[0] !== "0" && base[1] === "0") {
base[1] = base[0];
base[0] = batter[sequence[0]];
}
if (base[0] === "0") {
base[0] = batter[sequence[0]];
}
for (let i = 0; i < 3; i++) {
if (base[i] === "0") { temp_bases[i] = "0" }
else { temp_bases[i] = String(base[i].name); }
}
undo_bases.push(temp_bases);
console.log("temp_bases: " + temp_bases);
console.log("undo_bases: " + undo_bases);
sequence[0] = (sequence[0]) + 1; // to increment batter counter by one to advance to next batter
if (sequence[0] === batter.length) { sequence[0] = 0 }; // at end resets batter count to return to top of order
undo_outs.push(undo_outs[undo_outs.length - 1]);
console.log("undo_outs: " + undo_outs);
update_interface();
undo_events_func();
update_bat_stats();
//sit_base[0] = "";
return
}