<html>
<head>
<meta charset="UTF-8">
<title>Canvas HTML Element Think Think Board Game Tutorial ... RJM Programming ... March 2016 ... thanks to http://stackoverflow.com/questions/9880279/how-do-i-add-a-simple-onclick-event-handler-to-a-canvas-element</title>
<link href='//www.rjmprogramming.com.au/PHP/emboss_h1.css' rel='stylesheet' type='text/css'>
<script src='translate_hear.js?translate_hear=yes' type='text/javascript'></script>
<script language="JavaScript">
var nextexpected = "you'llneverfindthis";
var hint="Click on a button and then the next button that completes a true sentence, which adds a point to your score and waits for you to click again all the way through to just this Hint button remaining.";
var bcnt = 0, ccnt = 0;
var twobits = ["","",""];
var sentenceparts = new Array(
"Think New York",", Think","Seinfeld.",
"Think Sydney",", Think","Sydney Opera House.",
"Think Los Angeles",", Think","Hollywood.",
"Think U.S.A.",", Think","Abraham Lincoln.",
"Think Shanghai",", Think","Yuyuan Garden.",
"Think Japan",", Think","Toyota.",
"Think Tokyo",", Think","Meiji Shinto Shrine.",
"Think Iraq",", Think","Hanging Gardens of Babylon.",
"Think Iran",", Think","Persepolis.",
"Think Lebanon",", Think","Jeita Grotto.",
"Think Uruguay",", Think","Colonia del Sacramento.",
"Think Ecuador",", Think","Galapagos Islands.",
"Think Panama",", Think","Panama Canal.",
"Think Costa Rica",", Think","Monkeys are made of chocolate.",
"Think Mexico",", Think","Aztecs.",
"Think Peru",", Think","Incas.",
"Think Yemen",", Think","Socotra.",
"Think Cappadocia",", Think","Cave Village.",
"Think Belize",", Think","Belize Barrier Reef.",
"Think Estonia",", Think","Arvo Paart.",
"Think Latvia",", Think",".",
"Think Lithuania",", Think","Belize Barrier Reef.",
"Think Belarus",", Think","Belize Barrier Reef.",
"Think Tasmania",", Think","Franklin River.",
"Think Namibia",", Think","Etosha National Park.",
"Think Zambia",", Think","Victoria Falls.",
"Think South Sudan",", Think","Boma National Park",
"Think Cuba",", Think","Fidel Castro.",
"Think Barbados",", Think","Garfield Sobers.",
"Think Manchester",", Think","The Hollies.",
"Think Belfast",", Think","Van Morrison.",
"Think Dublin",", Think","James Joyce.",
"Think Wroclaw",", Think","The Monument Of An Anonymous Passerby.",
"Think Maldives",", Think","Hukuru Miskiy.",
"Think China",", Think","Great Wall of China.",
"Think Egypt",", Think","Pyramids.",
"Think Hawaii",", Think","Barack Obama",
"Think Cairo",", Think","Great Sphinx.",
"Think Morocco",", Think","Fez.",
"Think South Africa",", Think","Nelson Mandela.",
"Think India",", Think","Mahatma Gandhi.",
"Think England",", Think","Shakespeare.",
"Think Ireland",", Think","Trinity College.",
"Think London",", Think","Big Ben.",
"Think Rome",", Think","Colosseum.",
"Think Florence",", Think","Uffizi Gallery.",
"Think Alexandria",", Think","Lighthouse of Alexandria.",
"Think Rio de Janeiro",", Think","Carnival.",
"Think Brazil",", Think","Soccer.",
"Think Germany",", Think","Angela Merkel.",
"Think Munich",", Think","Hofbräuhaus.",
"Think Paris",", Think","Eiffel Tower.",
"Think France",", Think","Champagne.",
"Think Finland",", Think","Sauna.",
"Think Norway",", Think","Fjord.",
"Think Sweden",", Think","Ikea.",
"Think Denmark",", Think","Lego.",
"Think Copenhagen",", Think","Little Mermaid.",
"Think Netherlands",", Think","Rembrandt.",
"Think Spain",", Think","Paella.",
"Think Madrid",", Think","Prado Museum.",
"Think Italy",", Think","Michelangelo.",
"Think Pisa",", Think","Leaning Tower.",
"Think Naples",", Think","Pizza.",
"Think Russia",", Think","Lenin.",
"Think Moscow",", Think","Red Square.",
"Think Saint Petersburg",", Think","Marinsky Theatre.",
"Think Hungary",", Think","Béla Bartók.",
"Think Poland",", Think","Chopin.",
"Think Salzburg",", Think","Sound of Music.",
"Think Krakow",", Think","Rynek Glówny.",
"Think Switzerland",", Think","Roger Federer.",
"Think Austria",", Think","Gustav Mahler.",
"Think Vienna",", Think","Amadeus Mozart.",
"Think Macedonia",", Think","Alexander the Great.",
"Think Czech Republic",", Think","Sigmund Freud.",
"Think Prague",", Think","Prague Astronomical Clock.",
"Think Venus",", Think","Marco Polo.",
"Think Genoa",", Think","Christopher Columbus.",
"Think Portugal",", Think","Ferdinand Magellan.",
"Think Scotland",", Think","Robert Burns.",
"Think Chile",", Think","Valparaíso.",
"Think Greenland",", Think","Northern Lights.",
"Think Argentina",", Think","Astor Piazzolla.",
"Think Liverpool",", Think","The Beatles.",
"Think Memphis",", Think","Elvis Presley.",
"Think Detroit",", Think","Aretha Franklin.",
"Think China",", Think","Mao Zedong.",
"Think Alaska",", Think","Denali National Park.",
"Think Nigeria",", Think","Yankari National Park.",
"Think Bolivia",", Think","Yankari National Park.",
"Think Iceland",", Think","Eyjafjallajökull.",
"Think Mali",", Think","Timbuktu.",
"Think Marrakesh",", Think","Djemaa el-Fna.",
"Think Hong Kong",", Think","Temple Street Night Market.",
"Think Belgium",", Think","Audrey Hepburn.",
"Think Connecticut",", Think","Katherine Hepburn.",
"Think Washington",", Think","Mr Smith Goes to Washington.",
"Think Ukraine",", Think","Carpathian Mountains.",
"Think Kiev",", Think","Mikhail Bulgakov.",
"Think Bali",", Think","Wayang.",
"Think Indonesia",", Think","Batik.",
"Think Thailand",", Think","Silk.",
"Think Singapore",", Think","Buddha's Tooth Relic Temple.",
"Think Malaysia",", Think","Rubber.",
"Think South Korea",", Think","Psy.",
"Think North Korea",", Think","Kim Jong-il.",
"Think Libya",", Think","Leptis Magna.",
"Think Tunisia",", Think","Carthage.",
"Think Algeria",", Think","Ketchaoua Mosque.",
"Think Casablanca",", Think","Hassan II Mosque.",
"Think Bangkok",", Think","Wat Phra Kaew.",
"Think Burma",", Think","Aung San Suu Kyi.",
"Think Calcutta",", Think","Mother Teresa.",
"Think Kazakhstan",", Think","Ascension Cathedral.",
"Think Nepal",", Think","Mount Everest.",
"Think Tibet",", Think","Dalai Lama.",
"Think Israel",", Think","Golda Meir.",
"Think Pakistan",", Think","Benazir Bhutto.",
"Think Sri Lanka",", Think","Anuradhapura.",
"Think Kenya",", Think","Great Rift Valley.",
"Think Tanzania",", Think","Mount Kilimanjaro.",
"Think Java",", Think","Borobudur.",
"Think Northern Ireland",", Think","Giant's Causeway.",
"Think Serbia",", Think","Novak Djokivic.",
"Think Croatia",", Think","Dubrovnik.",
"Think Athens",", Think","Parthenon.",
"Think Greece",", Think","Plato.",
"Think Turkey",", Think","Mustafa Kemal Atatürk.",
"Think Cambodia",", Think","Angkor Wat.",
"Think Vietnam",", Think","Ho Chi Minh.",
"Think Jamaica",", Think","Usain Bolt.",
"Think Manaus",", Think","Meeting of the Waters.",
"Think Venezuela",", Think","Simón Bolívar.",
"Think Colombia",", Think","Gabriel García Márquez",
"Think Canada",", Think","Ice hockey.",
"Think Queensland",", Think","Great Barrier Reef.",
"Think Australia",", Think","Cate Blanchett.",
"Think Turkmenistan",", Think","Saparmurat Niyazov",
"Think Osaka",", Think","Shinto Sumiyoshi-taisha Shrine.",
"Think Northern Territory",", Think","Uluru.",
"Think Mozambique",", Think","Quirimbas Archipelago.",
"Think Bangladesh",", Think","Ganges River.",
"Think Afghanistan",", Think","Kandahar.",
"Think Antarctica",", Think","Penguins.",
"Think playlist",", Think","media.",
"Think rpm",", Think","unit of measure."
);
var ppl = 0;
var oklist = ":";
var pseudo_sentence = "";
var real_sentence = "";
var twothings = ["", ""];
var cderived_sentences = "";
var derived_sentences = [];
var prefix = [];
var midbit= [""];
var midlist = ":";
var suffix = [];
var cprefix = "";
var cmidbit = "";
var csuffix = "";
var ij, jk, kl, bword="", unknownselect = "<select id='unknown'></select>";
var score = 0.0;
var goes = 0.0;
var realgoes = 0;
var maxx = 0.0;
var maxy = 0.0;
var sentencepick = 0;
var threepick = 0;
var offx = 0.0;
var offy = 0.0;
var okay = 1;
var gpx = 30;
var gpy = 30;
var gpttext = "";
var cf = "22px Verdana";
function updatescore() {
var sone=document.getElementById('sone');
var stwo=document.getElementById('stwo');
var omyadot=document.getElementById('myadot');
sone.innerHTML=score.toString();
stwo.innerHTML=goes.toString();
omyadot.href='#'; //'http://www.rjmprogramming.com.au/HTMLCSS/thinkthink_chalkboard.html';
}
function addsome() {
var two="", three="", one=prompt("Enter first of your Think ?, Think ? parts (adjust accordingly)", "Think ");
if (one != "") {
two=prompt("Enter second of your Think ?, Think ? parts (adjust accordingly) that started with " + one, ", Think");
if (two != "") {
three=prompt("Enter third of your Think ?, Think ? parts (adjust accordingly) that started with " + one + " " + two, "?");
if (three != "") {
sentenceparts[sentenceparts.length] = one;
sentenceparts[sentenceparts.length] = two;
sentenceparts[sentenceparts.length] = three;
if (document.getElementById('modesel').value != '') {
var was=document.getElementById('altview').innerHTML;
document.getElementById('altview').innerHTML="<input style='background-color:yellow;' type='button' onclick=' dohuh(this); ' id='b" + eval(1 + ccnt) + "' title='' alt='" + one + " " + two + " " + three + "' value='" + three + "'></input>" + was + "<input style='background-color:pink;' type='button' onclick=' dohuh(this); ' id='b" + eval(2 + ccnt) + "' title='' alt='" + one + " " + two + " " + three + "' value='" + one + " " + two + " '></input>";
ccnt++;
ccnt++;
} else {
onloading();
}
}
}
}
}
function dohuh(ob) {
if (eval(bcnt % 2) == 0) {
nextexpected = ob.alt.replace(ob.value, '');
//alert(' next expected is ' + nextexpected);
document.getElementById(ob.id).style.display='none';
hint=ob.alt;
bcnt++;
if (nextexpected.indexOf("Think ") != -1 && nextexpected.indexOf(", Think") != -1) {
document.title="? " + ob.value;
} else {
document.title=ob.value + " ?";
}
//alert(document.title);
} else if (ob.value == nextexpected) {
bcnt++;
document.getElementById(ob.id).style.display='none';
score++;
goes++;
updatescore();
twobits=(" " + ob.alt).replace(", ", " ").split(" Think ");
document.getElementById('myadot').href='#'; // 'https://www.google.com.au/#q=' + ob.alt.replace(', Think ','').replace('Think ','').replace(' ','+').replace(' ','+').replace(' ','+').replace(' ','+').replace(' ','+').replace(' ','+').replace(' ','+').replace(' ','+').replace(' ','+') + '&gfe_rd=cr';
} else {
goes++;
updatescore();
}
}
function awino() {
if (twobits[1] != "" && twobits[2] != "") {
window.open('https://www.google.com.au/#q=' + encodeURIComponent(twobits[1]) + '&gws_rd=cr', '_blank', 'top=20,left=20,width=400,height=400');
window.open('https://www.google.com.au/#q=' + encodeURIComponent(twobits[2]) + '&gws_rd=cr', '_blank', 'top=50,left=50,width=400,height=400');
twobits[1]="";
twobits[2]="";
} else if (real_sentence != "") {
twobits=(" " + real_sentence).replace(", ", " ").split(" Think ");
window.open('https://www.google.com.au/#q=' + encodeURIComponent(twobits[1]) + '&gws_rd=cr', '_blank', 'top=20,left=20,width=400,height=400');
window.open('https://www.google.com.au/#q=' + encodeURIComponent(twobits[2]) + '&gws_rd=cr', '_blank', 'top=50,left=50,width=400,height=400');
twobits[1]="";
twobits[2]="";
}
}
function onloading() {
oklist = ":";
pseudo_sentence = "";
real_sentence = "";
twothings = ["", ""];
cderived_sentences = "";
derived_sentences = [];
prefix = [];
midbit= [""];
midlist = ":";
suffix = [];
cprefix = "";
cmidbit = "";
csuffix = "";
bword="";
unknownselect = "<select id='unknown'></select>";
var sofar=";-1,1;";
var divh="";
bcnt=0;
sentencepick = 0;
threepick = 0;
for (ij=0; ij<sentenceparts.length; ij+=3) {
threepick = 1;
sentencepick = -1;
while (sofar.indexOf(";" + sentencepick + "," + threepick + ";") != -1) {
threepick = 1;
while (threepick == 1) {
threepick = Math.floor((Math.random()*3)+0);
}
sentencepick = Math.floor((Math.random()*(sentenceparts.length / 3))+0);
}
sofar+=sentencepick + "," + threepick + ";";
bcnt++;
if (threepick == 0) {
divh+="<input style='background-color:pink;' type='button' onclick=' dohuh(this); ' id='b" + bcnt + "' title='' alt='" + sentenceparts[eval(sentencepick * 3) + threepick] + " is " + sentenceparts[eval(sentencepick * 3) + threepick + 2] + "' value='" + sentenceparts[eval(sentencepick * 3) + threepick] + " is '></input>";
} else {
divh+="<input style='background-color:yellow;' type='button' onclick=' dohuh(this); ' id='b" + bcnt + "' title='' alt='" + sentenceparts[eval(sentencepick * 3) + threepick - 2] + " is " + sentenceparts[eval(sentencepick * 3) + threepick] + "' value='" + sentenceparts[eval(sentencepick * 3) + threepick] + "'></input>";
}
threepick = 1;
sentencepick = -1;
while (sofar.indexOf(";" + sentencepick + "," + threepick + ";") != -1) {
threepick = 1;
while (threepick == 1) {
threepick = Math.floor((Math.random()*3)+0);
}
sentencepick = Math.floor((Math.random()*(sentenceparts.length / 3))+0);
}
sofar+=sentencepick + "," + threepick + ";";
bcnt++;
if (threepick == 0) {
divh+="<input style='background-color:pink;' type='button' onclick=' dohuh(this); ' id='b" + bcnt + "' title='' alt='" + sentenceparts[eval(sentencepick * 3) + threepick] + " is " + sentenceparts[eval(sentencepick * 3) + threepick + 2] + "' value='" + sentenceparts[eval(sentencepick * 3) + threepick] + " is '></input>";
} else {
divh+="<input style='background-color:yellow;' type='button' onclick=' dohuh(this); ' id='b" + bcnt + "' title='' alt='" + sentenceparts[eval(sentencepick * 3) + threepick - 2] + " is " + sentenceparts[eval(sentencepick * 3) + threepick] + "' value='" + sentenceparts[eval(sentencepick * 3) + threepick] + "'></input>";
}
}
ccnt=bcnt;
bcnt=0;
divh+="<input style='background-color:orange;' type='button' onclick=' alert(hint); ' value='Hint'></input>";
document.getElementById('altview').innerHTML=divh;
for (ij=0; ij<sentenceparts.length; ij+=3) {
//alert(sentenceparts[eval(ij + 0)]);
if (sentenceparts[eval(ij + 1)].indexOf("[") > -1) {
prefix[prefix.length] = sentenceparts[eval(ij + 0)];
jk = sentenceparts[eval(ij + 1)].indexOf("[");
kl = sentenceparts[eval(ij + 1)].indexOf("]");
bword = sentenceparts[eval(ij + 1)].substring((jk + 1), eval((jk + 1) + kl - jk - 1));
//alert(bword);
sentenceparts[eval(ij + 1)] = sentenceparts[eval(ij + 1)].replace(" [" + bword + "]", "");
if (sentenceparts[eval(ij + 1)].indexOf("/") > -1) {
two_things = sentenceparts[eval(ij + 1)].split("/");
if (midlist.indexOf(":" + two_things[0] + ":") == -1) {
midlist = midlist + two_things[0] + ":";
midbit.push(two_things[0]);
}
derived_sentences[derived_sentences.length] = sentenceparts[eval(ij + 0)] + (" " + two_things[0] + " ").replace(" "," ") + sentenceparts[eval(ij + 2)];
if (midlist.indexOf(":" + two_things[1] + ":") == -1) {
midlist = midlist + two_things[1] + ":";
midbit.push(two_things[1]);
}
csuffix = csuffix + sentenceparts[eval(ij + 2)] + "`";
csuffix = csuffix + sentenceparts[eval(ij + 2)].replace(bword + " ", "") + "`";
suffix = csuffix.split("`");
derived_sentences[derived_sentences.length] = sentenceparts[eval(ij + 0)] + " " + two_things[1] + " " + sentenceparts[eval(ij + 2)];
derived_sentences[derived_sentences.length] = sentenceparts[eval(ij + 0)] + " " + sentenceparts[eval(ij + 2)].replace(bword + " ", "");
} else {
csuffix = csuffix + sentenceparts[eval(ij + 2)] + "`";
csuffix = csuffix + sentenceparts[eval(ij + 2)].replace(bword + " ", "") + "`";
suffix = csuffix.split("`");
derived_sentences[derived_sentences.length] = sentenceparts[eval(ij + 0)] + " " + sentenceparts[eval(ij + 1)] + " " + sentenceparts[eval(ij + 2)];
derived_sentences[derived_sentences.length] = sentenceparts[eval(ij + 0)] + " " + sentenceparts[eval(ij + 2)].replace(bword + " ", "");
}
} else if (sentenceparts[eval(ij + 1)].indexOf("/") > -1) {
prefix[prefix.length] = sentenceparts[eval(ij + 0)];
two_things = sentenceparts[eval(ij + 1)].split("/");
if (midlist.indexOf(":" + two_things[0] + ":") == -1) {
midlist = midlist + two_things[0] + ":";
midbit.push(two_things[0]);
}
csuffix = csuffix + sentenceparts[eval(ij + 2)] + "`";
suffix = csuffix.split("`");
derived_sentences.push(sentenceparts[eval(ij + 0)] + " " + two_things[0] + " " + sentenceparts[eval(ij + 2)]);
if (midlist.indexOf(":" + two_things[1] + ":") == -1) {
midlist = midlist + two_things[1] + ":";
midbit.push(two_things[1]);
}
derived_sentences[derived_sentences.length] = sentenceparts[eval(ij + 0)] + " " + two_things[1] + " " + sentenceparts[eval(ij + 2)];
} else {
prefix[prefix.length] = sentenceparts[eval(ij + 0)];
csuffix = csuffix + sentenceparts[eval(ij + 2)] + "`";
suffix = csuffix.split("`");
if (midlist.indexOf(":" + sentenceparts[eval(ij + 1)] + ":") == -1) {
midlist = midlist + sentenceparts[eval(ij + 1)] + ":";
midbit.push(sentenceparts[eval(ij + 1)]);
}
derived_sentences[derived_sentences.length] = sentenceparts[eval(ij + 0)] + " " + sentenceparts[eval(ij + 1)] + " " + sentenceparts[eval(ij + 2)];
}
}
kl = 0;
for (ij=0; ij<prefix.length; ij++) {
if (prefix[ij] != "") {
prefix[kl] = prefix[ij];
kl = kl + 1;
}
}
kl = 0;
cprefix = "<select id='sfirst' style='display:none; text-align:right;'>";
for (ij=0; ij<prefix.length; ij++) {
if (prefix[ij] != "") {
cprefix = cprefix + "<option value=" + kl + ">" + prefix[ij] + "</option>";
kl = kl + 1;
}
}
prefix[prefix.length] = "";
ppl = kl;
cprefix = cprefix + "<option value=" + kl + "></option>";
cprefix = cprefix + "</select>";
kl = 0;
cmidbit = "<select id='smiddle' style='display:none; text-align:center;'>";
for (ij=0; ij<midbit.length; ij++) {
cmidbit = cmidbit + "<option value=" + kl + ">" + midbit[ij] + "</option>";
kl = kl + 1;
}
cmidbit = cmidbit + "</select>";
kl = 0;
csuffix = "<select id='slast' style='display:none;'>";
for (ij=0; ij<suffix.length; ij++) {
if (suffix[ij] != "") {
csuffix = csuffix + "<option value=" + kl + ">" + suffix[ij] + "</option>";
kl = kl + 1;
}
}
csuffix = csuffix + "</select>";
kl = 0;
cderived_sentences = "<select id='sentences' style='display:none;'>";
for (ij=0; ij<derived_sentences.length; ij++) {
cderived_sentences = cderived_sentences + "<option value=" + kl + ">" + derived_sentences[ij] + "</option>";
kl = kl + 1;
}
cderived_sentences = cderived_sentences + "</select>";
//alert(cprefix);
//alert(cmidbit);
//alert(csuffix);
//alert(cderived_sentences);
document.getElementById('dsentence').innerHTML = document.getElementById('dsentence').innerHTML + cprefix;
document.getElementById('dsentence').innerHTML = document.getElementById('dsentence').innerHTML + cmidbit;
document.getElementById('dsentence').innerHTML = document.getElementById('dsentence').innerHTML + csuffix;
document.getElementById('dsentence').innerHTML = document.getElementById('dsentence').innerHTML + cderived_sentences;
pick_a_sentence();
elem.click();
}
function andthen() {
elem.click();
}
function check_answer(osel) {
if (osel.value != "") {
//alert(oklist);
goes = goes + 1;
if (oklist.indexOf(":" + osel.value + ":") == -1) {
var tds=document.getElementsByTagName('td');
var sels=document.getElementsByTagName('select');
var altans='', found=false;
for (var itd=0; itd<tds.length; itd++) {
if (tds[itd].innerHTML.indexOf('<select ') != -1) {
altans+=sels[0].value;
} else {
altans+=tds[itd].innerHTML;
}
}
for (var iitd=0; iitd<derived_sentences.length; iitd++) {
if (!found) {
if (altans.replace(' ','').replace(' ','').replace(' ','').replace(' ','').replace(' ','').replace(' ','') == derived_sentences[iitd].replace(' ','').replace(' ','').replace(' ','').replace(' ','').replace(' ','').replace(' ','')) {
found=true;
}
}
}
if (found) {
score = score + 1;
updatescore();
twobits=(" " + real_sentence).replace(", ", " ").split(" Think ");
document.getElementById('myadot').href='#'; //'http://www.thefreedictionary.com/' + real_sentence.replace(' ','+').replace(' ','+').replace(' ','+').replace(' ','+').replace(' ','+').replace(' ','+').replace(' ','+').replace(' ','+').replace(' ','+');
real_sentence = "Yay!!!";
placerealtext();
setTimeout(andthen, 2000);
} else {
updatescore();
twobits=(" " + real_sentence).replace(", ", " ").split(" Think ");
document.getElementById('myadot').href='#'; //'http://www.thefreedictionary.com/' + real_sentence.replace(' ','+').replace(' ','+').replace(' ','+').replace(' ','+').replace(' ','+').replace(' ','+').replace(' ','+').replace(' ','+').replace(' ','+');
placerealtext();
setTimeout(andthen, 9000);
}
} else {
score = score + 1;
updatescore();
twobits=(" " + real_sentence).replace(", ", " ").split(" Think ");
document.getElementById('myadot').href='#'; //'http://www.thefreedictionary.com/' + real_sentence.replace(' ','+').replace(' ','+').replace(' ','+').replace(' ','+').replace(' ','+').replace(' ','+').replace(' ','+').replace(' ','+').replace(' ','+');
real_sentence = "Yay!!!";
placerealtext();
setTimeout(andthen, 2000);
}
}
}
function pick_a_sentence() {
var p="", s="", mb="", ii, jj=eval(prefix.length - 1), kk=-1, ll=-1, mm, nn, arrml, iarrml, jarrml;
arrml = midlist.split(":");
pseudo_sentence = " ";
while (pseudo_sentence.replace("...", "").trim().indexOf(" ") == -1) {
oklist = ":";
p="";
s="";
mb="";
jj=eval(prefix.length - 1);
kk=-1;
ll=-1;
sentencepick = Math.floor((Math.random()*kl)+0);
for (ii=0; ii<prefix.length; ii++) {
if (derived_sentences[sentencepick].indexOf(prefix[ii]) != -1 && prefix[ii] != "") jj = ii;
}
for (ii=0; ii<suffix.length; ii++) {
if (ll == -1 && derived_sentences[sentencepick].indexOf(suffix[ii]) != -1 && suffix[ii] != "") {
ll = ii;
mb = derived_sentences[sentencepick].replace(prefix[jj] + " ", "").replace(suffix[ll], "").trim();
}
}
for (ii=0; ii<midbit.length; ii++) {
if (midbit[ii] == mb) kk = ii;
}
//alert(derived_sentences[sentencepick]);
real_sentence = derived_sentences[sentencepick];
threepick = 1;
while (threepick == 1) {
threepick = Math.floor((Math.random()*3)+0);
}
unknownselect = "<select id='unknown'></select>";
if (threepick == 0) {
pseudo_sentence = ("... " + midbit[kk] + " " + suffix[ll]).replace(" ", " ").replace(" ", " ").replace("undefined", "");
s = "<td>" + (" " + midbit[kk] + " " + suffix[ll]).replace(" ", " ") + "</td>";
//unknownselect = "<td>" + cprefix.replace("sfirst", "unknown").replace("none;", "block;").replace("</select>", "<option value='' selected>Please select a sentence prefix above (instead of ... below)</option></select></td>");
unknownselect = "<td>" + cprefix.replace("<select", "<select onchange='check_answer(this);'").replace("sfirst", "unknown").replace("none;", "block;").replace("</select>", "<option value='' selected>... </option></select></td>");
if (jj == eval(prefix.length - 1)) {
//alert(jj);
//alert(prefix);
oklist = oklist + ppl + ":";
} else {
for (mm=0; mm<derived_sentences.length; mm++) {
for (nn=0; nn<prefix.length; nn++) {
if (pseudo_sentence.replace("...", prefix[nn]).replace(" ", " ").replace(" ", " ").trim() == derived_sentences[mm].trim() && oklist.indexOf(":" + nn + ":") == -1) {
oklist = oklist + nn + ":";
//alert("Yes " + pseudo_sentence.replace("...", prefix[nn]).replace(" ", " ").replace(" ", " ").trim() + " Vs " + derived_sentences[mm].trim() + " oklist=" + oklist + " vs " + nn);
} //else {
//alert(midbit[1] + "? " + mb + "? " + kk + "? " + pseudo_sentence.replace("...", prefix[nn]).replace(" ", " ").replace(" ", " ").trim() + " Vs " + derived_sentences[mm].trim() + " oklist=" + oklist + " vs " + nn);
//}
}
}
}
} else if (threepick == 1) {
pseudo_sentence = (prefix[jj] + " ... " + suffix[ll]).replace(" ", " ").replace(" ", " ").replace("undefined", "");
p = "<td>" + prefix[jj] + " " + "</td>";
s = "<td>" + " " + suffix[ll] + "</td>";
//unknownselect = "<td>" + cmidbit.replace("smiddle", "unknown").replace("none;", "block;").replace("</select>", "<option value='' selected>Please select a sentence middle word (or not) above (instead of ... below)</option></select></td>");
unknownselect = "<td>" + cmidbit.replace("<select", "<select onchange='check_answer(this);'").replace("smiddle", "unknown").replace("none;", "block;").replace("</select>", "<option value='' selected> ... </option></select></td>");
for (mm=0; mm<derived_sentences.length; mm++) {
for (nn=0; nn<midbit.length; nn++) {
if (pseudo_sentence.replace("...", midbit[nn]).replace(" ", " ").replace(" ", " ").trim() == derived_sentences[mm].trim() && oklist.indexOf(":" + nn + ":") == -1) oklist = oklist + nn + ":";
}
}
} else {
pseudo_sentence = (prefix[jj] + " " + midbit[kk] + " ...").replace(" ", " ").replace(" ", " ").replace("undefined", "");
p = "<td>" + (prefix[jj] + " " + midbit[kk] + " ").replace(" ", " ") + "</td>";
//unknownselect = "<td>" + csuffix.replace("slast", "unknown").replace("none;", "block;").replace("</select>", "<option value='' selected>Please select a sentence ending above (instead of ... below)</option></select></td>");
unknownselect = "<td>" + csuffix.replace("<select", "<select onchange='check_answer(this);'").replace("slast", "unknown").replace("none;", "block;").replace("</select>", "<option value='' selected> ...</option></select></td>");
for (mm=0; mm<derived_sentences.length; mm++) {
for (nn=0; nn<suffix.length; nn++) {
if (pseudo_sentence.replace("...", suffix[nn]).replace(" ", " ").replace(" ", " ").trim() == derived_sentences[mm].trim() && oklist.indexOf(":" + nn + ":") == -1) oklist = oklist + nn + ":";
}
}
}
if (("*" + pseudo_sentence.trim() + "*").indexOf("...*") != -1 || ("*" + pseudo_sentence.trim() + "*").indexOf("*...") != -1) {
//alert(pseudo_sentence);
jarrml = -1;
for (iarrml=0; iarrml<arrml.length; iarrml++) {
if (jarrml == -1 && arrml[iarrml].trim() != "") {
jarrml = (" " + pseudo_sentence + " ").indexOf(" " + arrml[iarrml] + " ");
//if (jarrml != -1) alert(arrml[iarrml]);
}
}
if (jarrml == -1) pseudo_sentence = " ";
}
//if (pseudo_sentence.replace("...", "").trim().indexOf(" ") != -1) alert(pseudo_sentence);
}
pseudo_sentence = pseudo_sentence.replace("_", " ").replace("_", " ").replace("_", " ").replace("_", " ").replace("_", " ");
document.getElementById('dunknown').innerHTML = "<table><tr>" + p.replace("undefined", "") + unknownselect.replace("<td> undefined", "<td> ").replace("<td>undefined ", "<td> ") + s.replace("undefined", "") + "</tr></table>";
placetext();
}
function gameshowmode(tval) {
if (tval == '') {
location.href='./thinkthink_chalkboard.html';
} else {
document.getElementById('mainview').style.display='none';
elem.style.display='none';
document.getElementById('altview').style.display='block';
}
}
</script>
<link href='//ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/themes/base/jquery-ui.css' rel='stylesheet' type='text/css'>
<style> .ui-dialog .ui-dialog-titlebar-close { display: none; } </style>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://www.rjmprogramming.com.au/Javascript/jQuery/Dialog/Modal/jquery-ui-1.11.1.custom/jquery-ui.js"></script>
<script type='text/javascript' src='dotdotdot.js'></script>
</head>
<body align="center" onload="onloading();">
<h1 align="center">Think ?, Think ? Dot<a title="Add your own Think ?, Think ?" onclick="addsome();" href="#">Dot</a>Dot <select onchange=' gameshowmode(this.value); ' id='modesel'><option value=''>Dropdown</option><option value='Button'>Button</option></select> Game</h1>
<h2 align="center" id="score">Score is <span id=sone>0</span> from <span id=stwo>0</span> goes<a id='myadot' onclick=' awino(); ' href='http://www.rjmprogramming.com.au/HTMLCSS/thinkthink_chalkboard.html' title="Think ?, Think ? ideas ... thanks">.</a><div id='langdiv'></div></h2>
<div id='mainview' style='display:block;'><div align="center" id='dsentence'></div><div align="center" id='dunknown'></div></div>
<div id='altview' style='display:none;'></div>
<canvas style='border: 5px solid green; background-color: black; opacity: 0.3;' title="Click for your nextThink ?, Think ? to solve" id="canvaselement" width="1350" height="700" />
<script language="JavaScript">
var toggle = 0;
var goodx = 200;
var goody = 200;
var inidone = 0;
var curcard = 0;
var suffix = "";
var scoretoget = 20;
var elem = document.getElementById('canvaselement');
var elemLeft = elem.offsetLeft;
var elemTop = elem.offsetTop;
var context = elem.getContext('2d');
var arr=['0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f'];
// Add event listener for `click` events.
elem.addEventListener('click', function(event) {
elem.width = elem.width;
elem.style.backgroundImage = "none";
elem.style.opacity = 1.0;
var x = event.pageX - elemLeft;
var y = event.pageY - elemTop;
x = goodx;
y = goody;
var r = Math.floor((Math.random()*256)+0);
var g = Math.floor((Math.random()*256)+0);
var b = Math.floor((Math.random()*256)+0);
var thiscol ='#' + arr[(r-(r % 16)) / 16] + arr[r % 16] + arr[(g-(g % 16)) / 16] + arr[g % 16] + arr[(b-(b % 16)) / 16] + arr[b % 16];
elem.style.backgroundColor = thiscol;
pick_a_sentence();
}, false);
function placetext() {
context.font = cf;
context.strokeText(pseudo_sentence.replace("ø", "ø"),gpx,gpy);
//gpy = gpy + 50;
}
function placerealtext() {
context.font = cf;
context.strokeText(real_sentence.replace("ø", "ø"),gpx,(gpy + 70));
//gpy = gpy + 50;
}
updatescore();
</script>
</body>
</html>